Skip to content

todo — agent-managed task list

todo gives the agent a structured place to track multi-step plans. The list is per-session and (optionally) persisted to disk. Use it when a task spans many tool calls and the model needs to keep its place across compactions.

ArgTypeRequiredDescription
actionstringyesadd, complete, or list.
taskstringfor add / completeTask description (add) or task ID (complete).
FlagDefaultDescription
cwdNoneProject root (controls where the persistence file goes).
persistFalseWrite the list to <cwd>/.chimera/todos.json.
event_busNoneEmit todo-change events for telemetry.
session_id""Namespace key on the persistence file.
{"action": "add", "task": "Write tests for the cancellation path"}
{"action": "list"}
{"action": "complete", "task": "1"}
from chimera.tools.todo import TodoTool
tool = TodoTool(cwd=".", persist=True)
tool.execute({"action": "add", "task": "Refactor the loop"}, env=None)
tool.execute({"action": "add", "task": "Update docs"}, env=None)
print(tool.execute({"action": "list"}, env=None).output)
1. [ ] Refactor the loop
2. [ ] Update docs

After completion:

1. [x] Refactor the loop
2. [ ] Update docs
  • think — record one-off reasoning.
  • dmail — rewind context to a saved checkpoint.