The Spec Cockpit is the control panel for one change: the one whose document is open in the active editor. Open a different change’s file and the Cockpit follows. With no change document open it says Open a spec or task file to see the cockpit.
Live
Header
- Change name and a status chip: Draft (no proposal yet), Spec (proposed, nothing run), Plan (tasks exist), Running, Review, Complete (all tasks done), Archived.
- Worktree row: the branch (⎇), main tree or worktree, and — while a worktree exists — Commit, Merge with a Choose branch… dropdown. A note appears if the worktree has uncommitted changes.
- Actions for the whole change, depending on state:
- ▷ Run Next Step and ▷▷ Run All — see Running tasks.
- Stop while a run is live; Cancel Auto-Run while a chain is queued.
- Refine Spec — revise the documents from your comments (Authoring a change).
- Sync / Sync and archive ▾ — Finishing a change.
- Open log — the change’s Agent Log.
- Comments (n) — jumps to the Comments tab.
Steps
One row per ## section of tasks.md — state icon, number, title, and for a done task its duration and file count. The row’s actions appear on hover, in a fixed order so your hand learns where they are:
- rerun / refine — the chooser with Refine Code · Refine Plan and Code · Rollback Code and Refine Plan;
- rollback — on the last completed task only;
- ▷ run — Run this step or Run all steps up to this step.
A queued row says Queued and offers Cancel from here. A done row whose section text has changed since carries the outdated warning.
Diff
Under the list: the files changed by the run under review, with line counts, as a tree. Whole run | Step N switches between the change’s cumulative diff and the last task’s. Double-click a file for the diff viewer; Display Options groups by directory or module, or shows the list flat. The same panel shows document diffs for a proposal or refine.
Docs
The change’s documents, grouped:
- Change artifacts —
proposal.md,design.md,tasks.md. - Delta specs — each
specs/<capability>/spec.mdin the change, tagged with the main spec it targets (→ openspec/specs/<capability>) or new capability. - Main specs — every capability in
openspec/specs/, so the current truth is one click away while you read a delta.
Click to open. The list is live — a propose in progress fills it in.
Comments
All pending inline comments of the change, as cards: file, line range, the quoted text, your comment. Click one to jump to it. Comments stay here until a refine sends them to the agent (or you delete them); once sent, they move into the revision’s record in History.
History
Every run of the change, newest first: propose, each task, each refine, sync, archive, and the git operations — when, how long, and whether it completed, failed or was interrupted. Select a run to see:
- the documents it changed, diffed against their state before the run — or This run changed no documents;
- the comments that were sent with a refine;
- Open agent log for that run’s session.
History survives archiving and IDE restarts — it lives outside the repository, under ~/.specbuddy/. Clear Revision History in the tab’s menu deletes it for the change; the code and documents are not affected.
Which surface when
The Cockpit is one of three places that show the same state; they are consistent, so use whichever is under your hand:
- reading
tasks.md— the banner and the task cards have run/review right there; - looking at what changed — the Cockpit;
- watching the agent or talking to it — the Agent Log;
- with several changes at once — the Spec Explorer icons tell you which one needs you.