TODO.md had reached 1050 lines and 72 open items across 28 sections, read mostly on a phone. It is now a directory: todo/<theme>/<item>.md, one card per file, with frontmatter carrying id, status, created date and order, and the prose body copied across verbatim. TODO.md becomes a generated index (bun run todo:index). Dates: where an item's prose stated one it is used; otherwise its old section's; otherwise 2026-08-20, floored at the day before the split rather than invented. date_source records which. Shaped for a two-way Kanban board, filed as todo/tooling — a card is a file, id is the identity, frontmatter is the machine's half and the body is the owner's. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
1.8 KiB
id, title, theme, status, created, date_source, order
| id | title | theme | status | created | date_source | order |
|---|---|---|---|---|---|---|
| mobile-apps/the-mobile-recorder-app-and-the-dispatcher | The mobile recorder app, and the dispatcher agent behind it | mobile-apps | open | 2026-08-21 | stated | 2 |
The mobile recorder app, and the dispatcher agent behind it. Wanted 2026-08-21. The owner is building a recorder for the phone. Every audio lands in one central place — one inbox, not a folder per purpose — and a dispatcher agent decides where each one goes.
Routing has two modes and both are wanted:
- Told. The recording opens with the destination — "send this to my todo guy", or just "todo" — and the dispatcher obeys. An explicit address always wins.
- Inferred. Nothing is named, and the dispatcher works it out from the content. This is the one that makes the app worth using: the ideal is that most notes need no prefix at all.
What this implies: destinations must be addressable and speakable. "My todo guy" is a name for
a standing agent session, so the dispatcher needs a registry of destinations with names a person
would actually say. Command HQ is already most of that registry — command_hq_sessions names
commanders and keys them on Claude's own transcript uuid. Delivery into a session exists too; see
"Speaking into a session from the backend".
Fits with the rest rather than duplicating it: the File watchers split applies unchanged — a script transcribes on arrival, the dispatcher is the agent stage — and the iPhone Action Button item is how a recording starts without unlocking the phone.
Open: whether the dispatcher is one long-lived session or spawned per note; what it does when inference is uncertain (ask back, or file into an inbox for review); and whether a routing rule is a prompt from the prompt library.