{"id":"paseo-agent-todos","repo":"abhi-wan-kenobi/paseo-agent-todos","url":"https://github.com/abhi-wan-kenobi/paseo-agent-todos","package":"paseo-agent-todos","npm":{"package":"paseo-agent-todos","version":"0.1.1","integrity":"sha512-BgTo06mKnDSclA4AN5ZWTtbIXve+VW7Q9makmya7plqc0DEWEndggDUO/8mKC7XG3DcPP7XWE4ohcsz9GiOb6A==","publishedAt":"2026-10-06T09:18:16.985Z","downloadsLast30Days":0},"name":"paseo-agent-todos","description":"Agent Todos for Paseo: a todo list that launches coding agents per task, in the project you choose, tracks nested subtasks, and marks work done when the agent delivers.","categories":["orchestration","productivity"],"platforms":[],"caveats":["Completion tracking needs the agent to write the TODO-STATUS lines from the launch prompt; if it doesn't, the run stays \"Waiting for you\".","Google Tasks sync is optional and needs an existing Google OAuth credentials file with the Tasks scope.","Subtasks are not synced to Google Tasks.","Agent permission mode is fixed at launch and cannot be changed afterwards."],"images":[],"themes":[],"health":{"manifestValid":true,"hasReadme":true,"hasLicense":true,"hasTests":false,"hasTypecheckScript":true,"updatedRecently":true},"scannedAt":"2026-10-07T18:38:21.569Z","addedAt":"2026-10-07T20:03:23+05:00","npmSecurity":{"status":"passed","blockingFindings":0,"advisoryFindings":0,"scannedAt":"2026-10-07T18:37:41.832Z","version":"0.1.1","integrity":"sha512-BgTo06mKnDSclA4AN5ZWTtbIXve+VW7Q9makmya7plqc0DEWEndggDUO/8mKC7XG3DcPP7XWE4ohcsz9GiOb6A=="},"version":"0.1.1","security":{"status":"passed","blockingFindings":0,"advisoryFindings":0,"scannedAt":"2026-10-07T18:37:41.832Z","commit":"456471681144e2b37711fdf03239ff8491b92908"},"author":"abhi-wan-kenobi","license":"MIT","paseoVersionRequirement":">=0.10.2","descriptionNodes":[{"type":"text","text":"Agent Todos for Paseo: a todo list that launches coding agents per task, in the project you choose, tracks nested subtasks, and marks work done when the agent delivers."}],"caveatNodes":[[{"type":"text","text":"Completion tracking needs the agent to write the TODO-STATUS lines from the launch prompt; if it doesn't, the run stays \"Waiting for you\"."}],[{"type":"text","text":"Google Tasks sync is optional and needs an existing Google OAuth credentials file with the Tasks scope."}],[{"type":"text","text":"Subtasks are not synced to Google Tasks."}],[{"type":"text","text":"Agent permission mode is fixed at launch and cannot be changed afterwards."}]],"manifest":{"id":"paseo-agent-todos","description":"Todo list that launches a coding agent per task in the project you choose, tracks nested subtasks, and marks work done when the agent delivers. Optional Google Tasks sync.","requirements":{"paseo":">=0.10.2"}},"repoMeta":{"stars":0,"defaultBranch":"main","pushedAt":"2026-10-06T09:15:49Z"},"owner":{"login":"abhi-wan-kenobi","avatarUrl":"https://avatars.githubusercontent.com/u/183943363?v=4"},"installNotesHtml":"<p>Requires Paseo 0.10.2 or later with plugins enabled (<strong>Settings → Plugins → Enable plugins</strong>).</p>\n<pre><code class=\"language-bash\">paseo plugin install npm:paseo-agent-todos\n</code></pre>\n<p>Or from GitHub:</p>\n<pre><code class=\"language-bash\">paseo plugin install github:abhi-wan-kenobi/paseo-agent-todos\n</code></pre>","limitationsNotesHtml":"<ul>\n<li>Status detection depends on the agent writing the marker lines; an agent that ignores them leaves the run at \"Waiting for you\".</li>\n<li>Permission mode is fixed when an agent starts (some providers cannot change it later).</li>\n<li>Google Tasks sync covers title, notes, due date and completion; subtasks stay local.</li>\n<li>Timeline status cards live in the daemon's memory and disappear after a daemon restart; todo state does not.</li>\n</ul>","readmeText":"# Agent Todos for Paseo\n\nA todo list inside [Paseo](https://paseo.sh) that hands each task to a coding agent, in the project you choose, and marks it done when the agent delivers.\n\n- **Launch an agent per todo.** Pick a launch preset (provider, model, permission mode) and a Paseo project; the agent starts in that project's workspace, so its branch and commits show up there.\n- **Brief first, then go.** By default the agent reads what the task depends on, replies with its understanding and open questions, and waits for your context before changing anything.\n- **Nested subtasks.** Add subtasks yourself, or let the agent add them as requirements change. A todo completes only when every subtask is done.\n- **Automatic status.** The agent ends its delivery with `TODO-STATUS: DONE` or `TODO-STATUS: BLOCKED: <reason>`; the todo, its run history, and a status card in the agent timeline update on their own.\n- **Resume anything.** Reopen a closed or archived agent's session from the todo.\n- **Jira-aware.** Jira keys in a todo are detected; the agent is told to read the ticket before working.\n- **Optional Google Tasks sync**, both directions.\n\n## Install\n\nRequires Paseo 0.10.2 or later with plugins enabled (**Settings → Plugins → Enable plugins**).\n\n```bash\npaseo plugin install npm:paseo-agent-todos\n```\n\nOr from GitHub:\n\n```bash\npaseo plugin install github:abhi-wan-kenobi/paseo-agent-todos\n```\n\n## Getting started\n\n1. Open **Agent Todos** from the sidebar, then its settings (gear icon).\n2. Add a **launch preset**: provider, model, default permission mode, and a default directory (absolute path) used when a todo has no project.\n3. Optional: set the **Jira browse URL** (for example `https://your-company.atlassian.net/browse/`) so Jira keys become links.\n4. Add a todo, choose its project, and press **Launch agent**.\n\n### How the agent reports back\n\nThe launch prompt teaches the agent these lines; the plugin reads them when each turn ends:\n\n| Line | Effect |\n|---|---|\n| `TODO-STATUS: DONE` | Marks the todo done, or \"delivered, subtasks open\" while subtasks remain |\n| `TODO-STATUS: BLOCKED: <what it needs>` | Shows the reason on the todo |\n| `TODO-SUBTASK: <title>` | Adds a subtask (a new subtask reopens a finished todo) |\n| `TODO-SUBTASK-DONE: <title>` | Completes a subtask |\n\nPrompt templates are editable in settings. `{{title}}`, `{{notes}}`, `{{jira}}`, `{{due}}` and `{{jiraReview}}` are filled in; the subtask list and protocol are always appended.\n\n### Google Tasks sync\n\nSync reuses an OAuth authorized-user file that contains `refresh_token`, `client_id` and `client_secret` with the `https://www.googleapis.com/auth/tasks` scope. By default it looks for the single file under `~/.google_workspace_mcp/credentials/` (written by [google_workspace_mcp](https://github.com/taylorwilsdon/google_workspace_mcp)); you can point it at another file in settings, then pick a task list.\n\n## Data\n\nTodos are stored on the daemon host in `~/.paseo/plugin-data/paseo-agent-todos/todos.json` (or under `$PASEO_HOME`). Nothing leaves the machine except Google Tasks calls when sync is on.\n\n## Limitations\n\n- Status detection depends on the agent writing the marker lines; an agent that ignores them leaves the run at \"Waiting for you\".\n- Permission mode is fixed when an agent starts (some providers cannot change it later).\n- Google Tasks sync covers title, notes, due date and completion; subtasks stay local.\n- Timeline status cards live in the daemon's memory and disappear after a daemon restart; todo state does not.\n\n## License\n\nMIT\n"}