@tallshort/pi-todo-write-overlay
Persistent top-right todo_write overlay for Pi, with full and compact modes.
Package details
Install @tallshort/pi-todo-write-overlay from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:@tallshort/pi-todo-write-overlay- Package
@tallshort/pi-todo-write-overlay- Version
0.4.0- Published
- Sep 12, 2026
- Downloads
- 176/mo · 176/wk
- Author
- tallshort
- License
- MIT
- Types
- extension
- Size
- 83.2 KB
- Dependencies
- 0 dependencies · 4 peers
Pi manifest JSON
{
"extensions": [
"./index.ts"
],
"image": "https://raw.githubusercontent.com/tallshort/pi-todo-write-overlay/main/assets/todo-overlay-progress.png"
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
@tallshort/pi-todo-write-overlay
A persistent, passive todo_write overlay for pi. It renders session tasks in the top-right corner without taking keyboard focus.
Forked from Jonghakseo/pi-extension: packages/todo-write-overlay. This fork adds zero-margin placement, persistent full/compact display modes, a configurable title, and refined task colours.


Installation
pi install npm:@tallshort/pi-todo-write-overlay
Do not install this extension together with another extension that registers the todo_write tool.
Features
- Registers the
todo_writetool with session-scoped state restoration. - Shows a non-capturing overlay anchored at the top-right corner with no margin.
- Supports persistent
fullandcompactdisplay modes. - Toggles display mode with
Ctrl+Shift+T. - Supports
/todo-overlay full,/todo-overlay compact,/todo-overlay hide, and/todo-overlay hide-once. - Uses an accent-coloured icon with normal output text for in-progress tasks.
- Uses muted styling for pending tasks.
- Shows a compact progress counter such as
1/4 done. - Shows a dim, indented
notesline for the in-progress task in full mode when capacity permits.
Display modes
Full
Shows the title (when configured), progress count, and task rows inside a framed overlay. By default it shows at most eight rows: when completed tasks are folded, their ✓ N completed summary reserves one row; the active task is retained, its notes line uses one row when present, and pending tasks fill the remaining space.
Compact
Keeps the frame and progress count, but displays one task row only:
- The in-progress task, if present.
- Otherwise, the first pending task.
- Otherwise,
✓ all done.
Configuration
Display settings are persisted in ~/.pi/agent/todo-write-overlay.json.
{
"displayMode": "full",
"title": "TODO",
"maxVisibleTasks": 8
}
- On first startup, the extension creates this file with the default title
TODOandmaxVisibleTasksof8. - If an existing settings file omits
title, or sets it to an empty string, the full-mode frame has no title. Set one with/todo-overlay title "My TODO"or/todo-overlay title 'My TODO'; clear it withtitle ""ortitle ''. Non-empty titles use the active theme accent colour. maxVisibleTasksis a positive integer that limits full-mode display rows, including the active task's note. When completed tasks are folded, their summary reserves one row; the active task is retained, its note is next in priority, and pending tasks take the remaining rows. Set it in the TUI with/todo-overlay max-visible <positive integer>.fullandcompactpersist the selected display mode;hidekeeps the overlay hidden for the current session;hide-oncerestores it whentodo_writenext changes the task list.
Commands and shortcut
/todo-overlay full
/todo-overlay compact
/todo-overlay hide
/todo-overlay hide-once
/todo-overlay max-visible <positive integer>
/todo-overlay title "My TODO"
/todo-overlay title 'My TODO'
/todo-overlay title "" # or title ''
Use Ctrl+Shift+T to toggle between full and compact.
Development
npm install
npm test
npm run typecheck
npm run build
build is a type-check because pi loads the TypeScript extension source directly.
Contributing
Read CONTRIBUTING.md for setup, change, and verification guidance. Repository-specific instructions for coding agents are in AGENTS.md; planned work is tracked in TODO.md.
License and attribution
MIT. Copyright (c) 2026 Jonghakseo and tallshort.
