{"_id":"@catdaemon/pi-agent-todos","_rev":"5-212cc9b9cdeb94fd4f779e995aaed7ff","name":"@catdaemon/pi-agent-todos","dist-tags":{"latest":"0.1.4"},"versions":{"0.1.0":{"name":"@catdaemon/pi-agent-todos","version":"0.1.0","keywords":["pi-package","pi","todos","agent-tools"],"license":"MIT","_id":"@catdaemon/pi-agent-todos@0.1.0","maintainers":[{"name":"catdaemon","email":"carl@cdownie.co.uk"}],"homepage":"https://github.com/Catdaemon/pi-extensions/tree/main/packages/todos#readme","bugs":{"url":"https://github.com/Catdaemon/pi-extensions/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"ffbb712faacb8ef6cd1762f778a4bfd7a48625cc","tarball":"https://registry.npmjs.org/@catdaemon/pi-agent-todos/-/pi-agent-todos-0.1.0.tgz","fileCount":7,"integrity":"sha512-4/P9qTbPkouvbKHG96HAcCMySmLuAa9pwGTwkWMcREYZvp7jPXF42r4lHOrg5xHYnI809aqu0+TK5xUzCsHYNA==","signatures":[{"sig":"MEYCIQCtN9tFJxdcLLXEbEkm3wpttvQkr5jviSHKTFX4UKYHIAIhAKX9gq3GlcthrbH9Hx6nVNhP8Pv+5skvie2Gps6dib7J","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":21996},"type":"module","gitHead":"12cb2298959a66ea8ad66efce2a9e8b50fa233ce","scripts":{"test":"node --import tsx --test src/tests/*.test.ts","prepack":"npm run typecheck && npm test","typecheck":"tsc --noEmit","pack:dry-run":"npm pack --dry-run --ignore-scripts"},"_npmUser":{"name":"catdaemon","email":"carl@cdownie.co.uk"},"repository":{"url":"git+https://github.com/Catdaemon/pi-extensions.git","type":"git","directory":"packages/todos"},"_npmVersion":"10.9.2","description":"Conversation todo tools, prompt guidance, and status sidebar for Pi.","directories":{},"_nodeVersion":"22.14.0","dependencies":{"@catdaemon/pi-sidebar":"workspace:*"},"_hasShrinkwrap":false,"peerDependencies":{"typebox":"*","@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-agent-todos_0.1.0_1778427624440_0.327932049530107","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@catdaemon/pi-agent-todos","version":"0.1.1","keywords":["pi-package","pi","todos","agent-tools"],"license":"MIT","_id":"@catdaemon/pi-agent-todos@0.1.1","maintainers":[{"name":"catdaemon","email":"carl@cdownie.co.uk"}],"homepage":"https://github.com/Catdaemon/pi-extensions/tree/main/packages/todos#readme","bugs":{"url":"https://github.com/Catdaemon/pi-extensions/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"1b5df82835e62a300d7820f53b943b9ecda9e352","tarball":"https://registry.npmjs.org/@catdaemon/pi-agent-todos/-/pi-agent-todos-0.1.1.tgz","fileCount":7,"integrity":"sha512-KRD7/nSCxJcROmcGqfBz8iuh1JfDFeYJSeH9yKElJVH5elUbuvirjL7+1Ha0gvqzKmQwu+G5u+VqO9cpEQ/9yA==","signatures":[{"sig":"MEUCIQC3xDE0G3ep9Q1rH5agC/golOpKYos3Pd8emjuIVZrjVgIgOSHGu3Own3yCBJXtK+OsDH7kq1B3/JXy7K3pEuL0THA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@catdaemon%2fpi-agent-todos@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":21996},"type":"module","gitHead":"77ba7a501750a0b69e7f5c947644b4881c875b77","scripts":{"test":"node --import tsx --test src/tests/*.test.ts","prepack":"npm run typecheck && npm test","typecheck":"tsc --noEmit","pack:dry-run":"npm pack --dry-run --ignore-scripts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:265f4918-d11e-4b97-932b-ba5ec068fa3b"}},"repository":{"url":"git+https://github.com/Catdaemon/pi-extensions.git","type":"git","directory":"packages/todos"},"_npmVersion":"11.5.1","description":"Conversation todo tools, prompt guidance, and status sidebar for Pi.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"@catdaemon/pi-sidebar":"workspace:*"},"_hasShrinkwrap":false,"peerDependencies":{"typebox":"*","@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-agent-todos_0.1.1_1778428211634_0.054592014486391394","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@catdaemon/pi-agent-todos","version":"0.1.2","keywords":["pi-package","pi","todos","agent-tools"],"license":"MIT","_id":"@catdaemon/pi-agent-todos@0.1.2","maintainers":[{"name":"catdaemon","email":"carl@cdownie.co.uk"}],"homepage":"https://github.com/Catdaemon/pi-extensions/tree/main/packages/todos#readme","bugs":{"url":"https://github.com/Catdaemon/pi-extensions/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"81d2af4bc36bb7359f24a5ff8ba0155857e7439b","tarball":"https://registry.npmjs.org/@catdaemon/pi-agent-todos/-/pi-agent-todos-0.1.2.tgz","fileCount":7,"integrity":"sha512-3TIVOGZ3WXtVMtSK2Vbok9NtNjehBLUg8NkVLSq5E9FJFpXnseNJUZ8h05fXSUo/Njw8CVO6KoRlNx3a1Z5WtQ==","signatures":[{"sig":"MEQCIDRYrYjENrLqKNjA7SZ1rZSG/pblfGeF+OZw5/Z7e2c1AiBjPpt6Unzd+pNyjsFaPLbvWqiikvDXQW0IeZaMSGER9g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@catdaemon%2fpi-agent-todos@0.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":21991},"type":"module","gitHead":"468fc21dc93cf1d6c8ba556057a844d86a2eaf91","scripts":{"test":"node --import tsx --test src/tests/*.test.ts","prepack":"npm run typecheck && npm test","typecheck":"tsc --noEmit","pack:dry-run":"npm pack --dry-run --ignore-scripts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:265f4918-d11e-4b97-932b-ba5ec068fa3b"}},"repository":{"url":"git+https://github.com/Catdaemon/pi-extensions.git","type":"git","directory":"packages/todos"},"_npmVersion":"11.5.1","description":"Conversation todo tools, prompt guidance, and status sidebar for Pi.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"@catdaemon/pi-sidebar":"^0.1.1"},"_hasShrinkwrap":false,"peerDependencies":{"typebox":"*","@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-agent-todos_0.1.2_1778428418185_0.6879781226939559","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@catdaemon/pi-agent-todos","version":"0.1.3","keywords":["pi-package","pi","todos","agent-tools"],"license":"MIT","_id":"@catdaemon/pi-agent-todos@0.1.3","maintainers":[{"name":"catdaemon","email":"carl@cdownie.co.uk"}],"homepage":"https://github.com/Catdaemon/pi-extensions/tree/main/packages/todos#readme","bugs":{"url":"https://github.com/Catdaemon/pi-extensions/issues"},"pi":{"extensions":["./dist/index.ts"]},"dist":{"shasum":"0c2a20b3b7e7fca8cbf0ef711bf4301b026975ee","tarball":"https://registry.npmjs.org/@catdaemon/pi-agent-todos/-/pi-agent-todos-0.1.3.tgz","fileCount":8,"integrity":"sha512-bew9Ldi6L/fVQ3rl54QSYZHSFcfjhxVzVvt4cthq9ILcKpzulrtlFXWTsz2YbKzELKHXYwkU13AVfew/fRn0/Q==","signatures":[{"sig":"MEQCIHL2/6henQsgnOS3c0M72nujqz63TWgA6uFWsv83cIVfAiAlEvr9HsU+EqLpqsk8l9D7aB85S0dQ+AxLpQ0UhNmMog==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@catdaemon%2fpi-agent-todos@0.1.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":25499},"type":"module","gitHead":"6405448932eb1395c894b39b7b8b1a0f256577f1","scripts":{"test":"node --import tsx --test src/tests/*.test.ts","build":"node ../../scripts/build-package.mjs","prepack":"npm run typecheck && npm test && npm run build","typecheck":"tsc --noEmit","pack:dry-run":"npm run build && npm pack --dry-run --ignore-scripts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:265f4918-d11e-4b97-932b-ba5ec068fa3b"}},"repository":{"url":"git+https://github.com/Catdaemon/pi-extensions.git","type":"git","directory":"packages/todos"},"_npmVersion":"11.5.1","description":"Conversation todo tools, prompt guidance, and status sidebar for Pi.","directories":{},"_nodeVersion":"22.22.2","dependencies":{},"_hasShrinkwrap":false,"peerDependencies":{"typebox":"*","@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-agent-todos_0.1.3_1778428792206_0.8684480183883201","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@catdaemon/pi-agent-todos","version":"0.1.4","description":"Conversation todo tools, prompt guidance, and status sidebar for Pi.","type":"module","keywords":["pi-package","pi","todos","agent-tools"],"license":"MIT","repository":{"type":"git","url":"git+https://github.com/Catdaemon/pi-extensions.git","directory":"packages/todos"},"homepage":"https://github.com/Catdaemon/pi-extensions/tree/main/packages/todos#readme","bugs":{"url":"https://github.com/Catdaemon/pi-extensions/issues"},"pi":{"extensions":["./dist/index.ts"]},"scripts":{"build":"node ../../scripts/build-package.mjs","typecheck":"tsc --noEmit","test":"node --import tsx --test src/tests/*.test.ts","pack:dry-run":"npm run build && npm pack --dry-run --ignore-scripts","prepack":"npm run typecheck && npm test && npm run build"},"dependencies":{},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-coding-agent":"*","@earendil-works/pi-tui":"*","typebox":"*"},"_id":"@catdaemon/pi-agent-todos@0.1.4","gitHead":"88d2e1698608eed225afde2c5b33450b91822029","_nodeVersion":"22.22.2","_npmVersion":"11.5.1","dist":{"integrity":"sha512-t9mK5BUC1o5zGw4r6T61IzJ5sylTP6NidxUdU63j9DDqK36h2/HElGdDCDZsd2iEM3iee+M+sk90fqrfab1uQA==","shasum":"0157e7da39a2a27d3df77a4dbce1ef47ff3487c1","tarball":"https://registry.npmjs.org/@catdaemon/pi-agent-todos/-/pi-agent-todos-0.1.4.tgz","fileCount":8,"unpackedSize":26425,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@catdaemon%2fpi-agent-todos@0.1.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCkG0r9Jbb2PTzEf8y8Ivduds+4G9WSJUtrYupXclm3zwIhAOPfMQSjmdTsn/noqFw8SFwpt4TKz79Ov0vliQOQAzk8"}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:265f4918-d11e-4b97-932b-ba5ec068fa3b"}},"directories":{},"maintainers":[{"name":"catdaemon","email":"carl@cdownie.co.uk"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/pi-agent-todos_0.1.4_1778453019252_0.17105501446494875"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-10T15:40:24.315Z","modified":"2026-05-10T22:43:39.682Z","0.1.0":"2026-05-10T15:40:24.674Z","0.1.1":"2026-05-10T15:50:11.768Z","0.1.2":"2026-05-10T15:53:38.324Z","0.1.3":"2026-05-10T15:59:52.336Z","0.1.4":"2026-05-10T22:43:39.414Z"},"bugs":{"url":"https://github.com/Catdaemon/pi-extensions/issues"},"license":"MIT","homepage":"https://github.com/Catdaemon/pi-extensions/tree/main/packages/todos#readme","keywords":["pi-package","pi","todos","agent-tools"],"repository":{"type":"git","url":"git+https://github.com/Catdaemon/pi-extensions.git","directory":"packages/todos"},"description":"Conversation todo tools, prompt guidance, and status sidebar for Pi.","maintainers":[{"name":"catdaemon","email":"carl@cdownie.co.uk"}],"readme":"# pi-agent-todos\n\nConversation todo tools, prompt guidance, and status sidebar for Pi.\n\n## Why\n\nLonger agent tasks are easier to follow when the agent keeps a small visible plan and updates it as work progresses. Without explicit todo state, multi-step work can drift, finished work may not be marked, and the user has less visibility into what the agent is doing next.\n\n`pi-agent-todos` gives Pi persistent per-session todo tools plus a compact status card. It encourages the agent to create short, actionable todo lists for non-trivial requests and keep them current throughout the turn.\n\nThis is especially useful for:\n\n- Making multi-step agent work visible\n- Tracking progress across tool calls and edits\n- Keeping at most one current task in progress\n- Showing todo progress in the shared status sidebar\n\n## What it does\n\nThis Pi package adds todo state management to Pi:\n\n- **`todo_write`**: creates or replaces the current conversation todo list.\n- **`todo_read`**: reads the current conversation todo list.\n- **Prompt guidance**: reminds agents to maintain todos for non-trivial work.\n- **Session restoration**: reconstructs todo state from the active session branch.\n- **Status card**: shows compact todo progress in the shared sidebar.\n- **Slash commands**: `/todos`, `/todos-clear`, and `/toggle-sidebar` expose todo and sidebar controls.\n\n## Install from npm\n\n```bash\npi install npm:@catdaemon/pi-agent-todos\n```\n\nThen reload Pi:\n\n```text\n/reload\n/todos\n```\n\n## Runtime dependencies\n\nThis package is self-contained. Its published package vendors the shared sidebar helper so users do not need to install `@catdaemon/pi-sidebar` separately.\n\nIt shares status-card overlay state with other packages that use the same `pi.agent.statusCards.state` global registry key.\n","readmeFilename":"README.md"}