workflow: project-driven agent workflow (docs-first, TODO/ROADMAP tracking, verify-before-done)
- system prompt gains a Project workflow block when the repo tracks its own progress (TODO.md/ROADMAP.md/docs): read the task list first and keep it current, spec-first for non-trivial work, complete unit tests, verify before declaring done - TODO.md + ROADMAP.md loaded as 'Project tracker' instruction blocks, capped tighter than AGENTS.md so the agent sees the shape without drowning in it - one soft nudge per session when a turn writes files without touching the task list; suppressed when todo_write was called; never a gate - /workflow command + panel showing TODO/ROADMAP/docs presence, line/file counts, nudge state - config: workflow.enabled (default true), workflow.docsDir (default docs) - prompt-cache version key extended with wf: so toggling the workflow busts the cached system prompt - docs: docs/workflow.md, configuration table row, ROADMAP + TODO entries - tests: test/workflow.test.ts (9 tests) 830 tests pass, typecheck clean, build green, live headless demo verified
This commit is contained in:
@@ -37,6 +37,15 @@ step boundary by its own budget, complementing the session ceiling.
|
||||
**`/fork`** — clone the session at the last turn boundary into a new saved session;
|
||||
trying a different approach no longer costs the original.
|
||||
|
||||
**Project-driven workflow** — when a repo tracks its own progress (TODO.md,
|
||||
ROADMAP.md, docs/), the agent carries a workflow policy in its system prompt:
|
||||
read the task list first and keep it current, spec-first for non-trivial work,
|
||||
complete unit tests, verify before done. TODO.md/ROADMAP.md ride along as
|
||||
`Project tracker` instruction blocks. A soft once-per-session nudge reminds an
|
||||
agent that edited files without updating the task list. `/workflow` shows the
|
||||
state; `workflow.enabled` / `workflow.docsDir` configure it. See
|
||||
[docs/workflow.md](docs/workflow.md).
|
||||
|
||||
### 0.1.0-beta.1
|
||||
|
||||
**Core loop** — `streamText` with tool approvals suspended and resumed through the SDK's
|
||||
|
||||
Reference in New Issue
Block a user