polylinedb
polylinedbv0.5.2MIT
Polyline database: project memory and task tracking for local tools and cloud agents
Install
npm install polylinedbpolylinedb is a personal issue store for local tools and cloud agents, and its command is pd.
The CLI uses one SQLite file outside your working repository, or an authenticated cloud connection.
The Cloudflare Worker offers the same operations over HTTP and remote MCP, with D1 as its database.
These are independent stores, and polylinedb does not synchronize them.
A local agent can record facts and open work, and a cloud agent can read both through MCP and continue.
Features
Section titled “Features”- Field versions.
pd showreturns a version for each field.pd update ISSUE_ID --status deferred --expect status=1fails as a whole when another writer changed that field first, and polylinedb never retries with the newer version on its own. - Ownership claims.
pd claim acquire,pd claim renew, andpd claim releasegive one agent session an issue. Settingin_progressrequires a current--claim-proof, unless the issue is an epic. - Project memory.
pd memory create,pd memory search, andpd memory context --project NAMEkeep knowledge that stays useful after an issue closes. - Prerequisites and worklists.
pd dependency add --dependent ID --blocker IDrecords which issue blocks which.pd readylists open issues with no active blocker, andpd blockedlists the others. - A change feed.
pd changes --since 0lists issue changes in commit order.pd wait --since SEQ --timeout SECONDSreturns when a matching event arrives, so an agent can follow other agents’ work without rereading every issue. - JSON output and safe retries. Every command prints JSON, and
--humanprints plain text forshow,list, andsearch. Acreateretried with the same--request-id UUIDreturns the existing issue instead of a second one.
How an agent uses it
Section titled “How an agent uses it”The package ships two skills, polylinedb and polylinedb-queue, which you copy into each agent host’s skill directory.
- The agent runs
pd contextto see the selected connection and project, then reads project memory withpd memory context --project PROJECT. - It selects work, claims it, and reads the field versions with
pd showbefore each write. - When a write conflicts, it reads again and decides whether the edit still applies.
- It saves confirmed facts as memory and its results as comments, so a later local or cloud session can continue from the store.
The polylinedb-queue skill enqueues finished commits on a shared queue branch. The owner lands queue onto main, and agents do not push main.
Getting started
Section titled “Getting started”polylinedb needs Node.js 24.20 or later in the 24.x line, or 26.7 or later, and Git on PATH.
npm install --global polylinedbpd init --tool compiler --project parser --actor local:ownerpd --actor local:owner create --tool compiler --project parser --body 'Handle empty input'pd listWorks with
Section titled “Works with”polylinedb runs its read queries with solarsql, on SQLite and on D1.