Speck 0.2.0
Speck stops being only a reader. It can now run a change, show you the state of
one, and let you tick a task off.
Run a change
Apply on a change, and + beside Active changes, run OpenSpec's agent
workflows — /opsx:apply and /opsx:propose. Neither is a plain CLI command:
openspec instructions apply --json produces a brief, and an agent carries it
out.
The session runs inside Speck and streams what it is doing into a panel: the
files it reads and edits, the commands it runs, what it says, how it ended. You
can stop it at any point, and the panel says the run was stopped rather than
implying it finished. Progress also arrives on its own — the agent ticks boxes
in tasks.md, the watcher notices, and Tasks 3/14 climbs while you read.
Authority is chosen at the button, described by what it does:
| Choice | Effect |
|---|---|
| Edits only (default) | Files edited without asking. Commands refused, and the refusals listed when the run ends. |
| Edits and commands | Nothing asked, nothing refused. Needed when a change's tasks build or test. |
Refusals are reported rather than swallowed: a denied command is usually why an
apply stalled halfway. One session per project — two agents editing one
repository would each work from a tree the other is changing underneath it.
The same confirmation can hand off to your own terminal instead, if approvals
belong in the Claude Code UI.
A change's dashboard
Clicking a change's name opens a page about it; the caret beside the name shows
or hides its documents. The sidebar can say 5/14; the dashboard says which
nine are still open — which is what you want before deciding whether to apply
it. Alongside: each artifact's state and files, and the progress bar.
Tick a task off
The checkboxes are clickable, in the dashboard and in any tasks.md view. This
is the only thing Speck writes into a project, and it is the smallest write
available: one character on one line.
A task is addressed by its text, never by line number — an agent may have
rewritten the file since it was read, and a line number would tick a different
task with nothing to reveal it. The rest of the file comes back byte for byte,
and the write is renamed over the original so an interruption cannot truncate
your task list. Anything but a change's own tasks.md is refused by path.
Also
- A completion rule that matches how the work actually goes: a step is settled
only once work has moved past it, so a written proposal is not "done" until
the specs begin. The last step waits on its own checklist. - The progress stepper is one compact bar.
- Fixed: the file watcher could go deaf after a reload, leaving the reader
showing a stale tree — the one failure it exists to prevent. - Fixed: one unrenderable document no longer takes the window with it.
Install
Download the .dmg, drag Speck to Applications. Signed with a Developer ID and
notarised. Apple Silicon only.
Running an earlier version? Speck will offer this one on launch.