From 11381485432f66176d86e89cb5e9a946c16cd3e9 Mon Sep 17 00:00:00 2001 From: Jason Woltje Date: Thu, 19 Mar 2026 20:10:45 -0500 Subject: [PATCH] docs: add TASKS.md agent-column schema to AGENTS.md (canonical reference) --- AGENTS.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/AGENTS.md b/AGENTS.md index 47e49e7..d864846 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -53,3 +53,28 @@ pnpm typecheck && pnpm lint && pnpm format:check # Quality gates - ESM everywhere (`"type": "module"`, `.js` extensions in imports) - NodeNext module resolution in all tsconfigs - Scratchpads are mandatory for non-trivial tasks + +## docs/TASKS.md — Schema (CANONICAL) + +The `agent` column specifies the required model for each task. **This is set at task creation by the orchestrator and must not be changed by workers.** + +| Value | When to use | Budget | +| -------- | ----------------------------------------------------------- | -------------------------- | +| `codex` | All coding tasks (default for implementation) | OpenAI credits — preferred | +| `glm-5` | Cost-sensitive coding where Codex is unavailable | Z.ai credits | +| `haiku` | Review gates, verify tasks, status checks, docs-only | Cheapest Claude tier | +| `sonnet` | Complex planning, multi-file reasoning, architecture review | Claude quota | +| `opus` | Major cross-cutting architecture decisions ONLY | Most expensive — minimize | +| `—` | No preference / auto-select cheapest capable | Pipeline decides | + +Pipeline crons read this column and spawn accordingly. Workers never modify `docs/TASKS.md` — only the orchestrator writes it. + +**Full schema:** + +``` +| id | status | description | issue | agent | repo | branch | depends_on | estimate | notes | +``` + +- `status`: `not-started` | `in-progress` | `done` | `failed` | `blocked` | `needs-qa` +- `agent`: model value from table above (set before spawning) +- `estimate`: token budget e.g. `8K`, `25K`