Speck 0.3.0
The whole OpenSpec circle runs from the app, a project opens on an overview
rather than a file, and changes link to their pull requests.
Workflows run in your terminal
This replaces how 0.2.0 worked. That version ran sessions inside the app,
streaming their activity into a panel. Running headless meant no step could be
approved as it happened, which is the wrong trade for an agent editing your
repository — and archive is worse than that: its workflow asks how to merge
delta specs into your main specs, and headless there is nobody to ask.
So a workflow now opens a Claude session in your terminal, in the project root,
where you approve each step. The activity panel and the permission choice are
both gone; there is nothing left to configure.
A change's dashboard carries Apply, Verify and Archive, and +
beside Active changes proposes one. Emphasis follows the work: Apply leads while
tasks remain, Verify once they are ticked, Archive stays quiet because it
rewrites your main specs.
A project opens on an overview
Three counts — active changes, open specs, archived — and then the project's own
words about itself, taken from the context block in openspec/config.yaml.
That prose exists to brief an agent on stack, conventions and domain, and it
introduces the project to a person just as well.
config.yaml used to open by default, which was an accident of being first in
the reading order rather than a decision.
Pull requests
OpenSpec records none — no field for one, nothing in the CLI that knows about
branches. So changes are matched to pull requests by inference, and the
dashboard says which strategy found them: a branch named after the change, or
pull requests containing commits that touched the change's own files. All
matches are shown, because a change is usually touched by several — proposing,
applying, archiving it. The repository itself is linked in the top bar.
Fixes
- Opening a change's dashboard crashed. On a serde enum,
rename_all
renames the variants and leaves the fields alone, so Rust sent
pull_requestswhile the app readpullRequests. The same mistake was
silently blanking the model, duration and cost on session events. - A malformed stylesheet. A bad edit had duplicated ~270 lines into the
middle of a media query, splitting a selector list. Browsers skip malformed
rules, so it rendered and shipped unnoticed. - One unrenderable view no longer takes the window down.
- The expand caret was 12px and flush against the window edge.
- The
schema spec-drivenandread by openspecreadouts are gone; a degraded
read now says so in words, above whichever view you are in.
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.