Semi-automated workflows
A task can carry a process: an ordered set of stages with their own state, so long-running work is visible as stages rather than a single status.
What a workflow is
Work that takes more than one sitting does not fit a checkbox. A workflow attaches that shape to a task: the stages it goes through, which one it is in, and what has to happen before it moves on.
"Semi-automated" is the honest description. The transitions are explicit and reviewable; the agent does the work inside a stage, but you decide when the stage is done. The automations pane is where workflows are listed and adjusted.
The coding workflow
Coding tasks are the reference implementation, and the one used to build the app itself. Its stages:
- Interview — the agent asks what the work actually is, before anything is written.
- Spec — those answers become a written spec on the task, so the plan outlives the conversation.
- Implement — an agent works the spec in a checkout, with the files and diffs visible in the app.
- Review — the change is reviewed before it is allowed to move on.
- Merge — the finished change lands.
The point of making it a workflow rather than a prompt is that each stage has a state you can look at. You can leave a task in review overnight and pick it up knowing exactly where it stopped.
Running one
You start a workflow by asking for it — "take this task through the coding workflow" — and the agent moves it stage by stage. A run can use a real checkout, which is what lets the coding stages produce actual diffs instead of a description of one.
Recipes are built from three kinds of steps: actions that become ordinary tasks, timed waits that hold a step until its moment, and events that wait for an outside signal or for you. Later steps only appear once their prerequisites are met, so a run stays a short live checklist instead of the whole plan at once. The automations pane lists recipes, starts runs, advances steps, fires events, and cancels runs.
Where it lives
Workflow definitions and run state live in the storage layer, next to the tasks they belong to, and the data model has its own specs — the v2 simplification supersedes the v1 model, and the coding run has a spec of its own. The spec table lists them with their status, and Integrations covers the git-backed side.