@xaccefy/pi-xtodo

Simplified todo extension for tracking multi-step progress in Pi Agent

Packages

Package details

extension

Install @xaccefy/pi-xtodo from npm and Pi will load the resources declared by the package manifest.

$ pi install npm:@xaccefy/pi-xtodo
Package
@xaccefy/pi-xtodo
Version
0.5.4
Published
Jul 18, 2026
Downloads
3,113/mo · 672/wk
Author
xaccefy
License
MIT
Types
extension
Size
39.9 KB
Dependencies
1 dependency · 3 peers
Pi manifest JSON
{
  "extensions": [
    "./index.ts"
  ]
}

Security note

Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.

README

pi-xtodo

Task list for step-by-step agent work: blockedBy links (a DAG), TUI overlay, replay from history or save to disk.

Install

pi install npm:@xaccefy/pi-xtodo

Tool: todo

Action Purpose
create New task (subject needed); optional blockedBy, description, owner
update Change fields / status / links (id needed)
list Filter by status; includeDeleted for tombstones
get Full detail including blockedBy / blocks
delete Soft-delete (kept as a tombstone)
clear Clear all tasks

Status lifecycle

pending ↔ in_progress → completed → deleted
                ↘ deleted
  • completed → pending is not allowed (make a new task to reopen).
  • Ids must be whole positive numbers ("1" works; "2.7" / "1e2" are rejected).

Dependencies

  • blockedBy / addBlockedBy / removeBlockedBy form a DAG; cycles are rejected.
  • Deleting a task (or update status: deleted) pulls its id out of every other task’s blockedBy, so dependents don’t hang on a tombstone.

Persistence

  • Main copy: the session’s tool-result history (replay on session_start / compact / tree).
  • If that’s empty, use the disk file ~/.pi/xtodo/<safe-session-id>.json.
  • Session ids are cleaned so they can’t escape the folder.

Command

  • /todos — grouped summary (interactive mode)

Development

bun test packages/pi-xtodo
bun run typecheck