pi-native-todo
Native task planning and state tracking for Pi with branch replay and a live TUI widget
Package details
Install pi-native-todo from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:pi-native-todo- Package
pi-native-todo- Version
0.2.0- Published
- Aug 10, 2026
- Downloads
- 469/mo · 168/wk
- Author
- youngjurry
- License
- MIT
- Types
- extension
- Size
- 14.3 KB
- Dependencies
- 0 dependencies · 4 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-native-todo
Native task planning and state tracking for Pi. Array-based, branch-replayable, and displayed in a live widget above the editor.
Philosophy
- One tool —
todoto read or replace the full task list - No IDs — no numbering, no
nextId, noblockedBy - No action verbs — no
create/update/delete. Pass the completetasksarray to set the list. Omit a task to remove it. - No background processes — no polling, no watchers, no timers
- No files — state lives in
toolResult.details, survives via session branch replay - Live widget — shows the current todo list above the editor with a progress bar
Install
pi install npm:pi-native-todo
Then restart pi or run /reload.
Usage
Read current todo list:
todo({})
Replace the full todo list:
todo({
"tasks": [
{ "content": "Do something", "status": "in_progress" },
{ "content": "Do something else", "status": "pending" }
]
})
Clear all tasks:
todo({ "tasks": [] })
Statuses
pending— not startedin_progress— actively workingcompleted— finished
Prompt guidelines
The tool injects guidelines that ask the agent to:
- Use todos only for non-trivial, multi-phase, dependent, or ambiguous work.
- Keep steps short, concrete, ordered, and easy to verify.
- Maintain exactly one
in_progresstask at a time. - Move tasks through
pending→in_progress→completedwithout skipping states. - Update the plan immediately when the task structure changes.
- Finish with every task completed or explicitly removed.
Development
npm install
npm run check
Changelog
0.2.0
- Optimized the widget UI: progress bar with percentage, overflow indicator, and long-line truncation
- Refined task rendering (strikethrough for completed, accent for in_progress)
- Compact tool call and result display
0.1.1
- Bug fixes and stability improvements
0.1.0
- Initial release
License
MIT