What shipped, and when.
Straight from the GitHub Releases feed — newest first. Each version is one static binary with checksummed archives for six platforms.
Features
c66dc0d feat(attest): sign the corpus export bytes to the pipeline on merge5d6fd9a feat(cli): sporo publish pre-flight — refuse an unsealed or gate-failing recipea70d4c6 feat(publish): make publish kind-polymorphic — recipes AND seedsb91a081 feat(publish): open a corpus PR from a verified recipe — gh or git-fallback350913b feat(seed): human-first seed genre 1.1.0 — usage orientatione0080d9 feat(seed): the canonical sporo seed — sealed, exported, mirroredb0456cd feat(seed): the sporo-seed authoring skill, installed alongside sporo-recipea66f7a7 feat(web): attest seeds too — the attested mark on the seed page9fcfb5b feat(web): hero + verification-panel polish9c51942 feat(web): rework seed setup surface + pre-launch SEO/copy polishc45f4ae feat(web): the earned attested provenance mark, fail-closedd90b3bf feat(web): the seeds listing states its exported bytes are attestede6745b7 feat(web): the setup surface — seed-first hero, header popover, two-genre menu
Fixes
10c2dab fix(cli): count meta-docs apart from instances in both lint summaries826d021 fix(cli): surface the freshness hint on sporo --version too1f40a1c fix(web): the seed twin serves the export, not the source
Other changes
e12702c build(check): drift-gate the seed web mirrorc748353 test(recipekit): pin current ledger rows with inline key literals
Features
96faa2e feat(cli): the sporo seed namespace — scaffold, lint, seal, export, list8846833 feat(recipe): version the summary-bearing genrec287676 feat(recipekit): per-shape neutrality policy — target exemption, genre 1.0.1f5af9ee feat(seed): the seed genre — constitutional spec, shape, ledger, corpus homeb3e0546 feat(web): "Ask an agent" affordance + visible recipe breadcrumbb3beaa6 feat(web): /security page + verify block on docs, footer link804a8f4 feat(web): SEO/GEO pass — entity graph, recipe rich data, agent corpus583e6b1 feat(web): seeds join the site — nested routes, twins, corpus, trust chrome4e8d848 feat(web): surface release trust — signed/provenance/SBOM + verify commands8712a15 feat(web): unify page agent actions and tracking
Fixes
a923b7a fix(recipe): kind-guard the finished-but-unsealed sweep (AUD-S3-01)c4815fd fix(web): center the mobile boundary rule with air, stop label overlapping the card7b91dcd fix(web): copy recipe in Safari via Promise-valued ClipboardItemd275424 fix(web): invert the core boundary rule on mobile — horizontal, not verticald54cbea fix(web): serve the export form from the recipe .md mirror6657b46 fix(web): stack the core flow vertically on mobile — down arrows, not sideways
Other changes
e777a05 Extract pkg/recipekit from internal/recipe (#8)555908d chore(deps): bump github.com/spf13/pflag in the go-dependencies group (#2)b3b3f2b chore(deps-web): bump astro in /web in the web-dependencies group (#3)9f1769b chore(deps-web): bump marked 14 → 184fcadfe ci(deps): bump the github-actions group across 1 directory with 6 updates (#7)36951bf ci(pages): rebuild daily to refresh build-time download tally93d116c refactor(recipekit,recipe): parameterize the entity shape and add kind to the seal ledger1e0ed1c refactor(web,cli): generate the recipe .md mirror from the binary, gate its drift
Features
2f0f4c8 feat(ci): harden the Go module — lint, coverage gate, security scans, deps (#1)6cdcbdb feat(security,web): verifiable releases, SHA-pinned CI, SECURITY.md, SEO/AI crawlers (#6)
Fixes
49657cd fix(web): underline the recipe-page breadcrumb link
Other changes
23761b6 chore(repo): classify CLAUDE.md as private harnesse0310d6 chore(repo): move harness + docs out of the public tree, guard the boundary
Features
b118a86 feat(cli): sporo recipes --adopted and --allb2b38fc feat(web): a "how these are verified" explainer on the recipes paged70f4d5 feat(web): add Google Analytics with copy/download eventse3b9b4f feat(web): show the GitHub release download count on the home page3e0c8e7 feat(web): track the verify-seal click
Other changes
2a00038 ci: trigger the site redeploy via workflow_run, not the release event
Features
cb656bf feat(recipe): record sealed_at in the seal registryc0df6dd feat(web): make the sealed badge independently verifiablebb2c822 feat(web): show provenance and the seal date on a recipe
Fixes
1d7f8e0 fix(web): the seal proof panel sat open by default
Other changes
4f9f44a ci: redeploy the site on a published release, not just on push
Features
e042fc8 feat(recipe): seal the shipped corpus and enforce all-sealed in the gatec72fc18 feat(web): a data-driven, hash-verified sealed badge
Fixes
f3b04a5 fix(web): anchor the recipe-bar spore per open state
Other changes
5d54f96 ci: run the seal-coherence gate on every push
Features
435663d feat(cli): add sporo recipes, a fleet-wide recipe index4c1abca feat(recipes): publish the russian-legal recipe to the corpusf3b093b feat(recipes): record the recipe id in the seal registry38ba376 feat(web): add a recipe listing with per-recipe detail pagesbb2e043 feat(web): recipe action bar with a derived preview panel9e91006 feat(web): recipe date, publisher, sealed badge, adoption protocol, agent marks7167a84 feat(web): recipe-detail & chrome polish
Fixes
38a2cb8 fix(web): changelog categorization and short commit-hash chipsac8b72b fix(web): strip the recipe's own H1 from the intro (it printed the title twice)c60c03f fix(web): the badge claims only what lint verifies, not "sealed"
Other changes
c1859f0 docs: sync site & skill copy with id and the file-writing export
Features
dbc4c4e feat(cli): sporo docs — the command surface as SSOT, gated against driftc30a765 feat(recipes): give recipes a stable ULID id and make export deliver a file9f2f53c feat(recipes): replace the report recipe with derived-progress-report9d85f74 feat(web): a real recipe, rendered — the /example pageb2cdb5b feat(web): comparison/FAQ and changelog pages, wired into the sitece344a2 feat(web): copy buttons on the docs verb cards8497005 feat(web): lead the home page with the core idea section6f5c1ae feat(web): light/dark theme toggle in the header92f81e4 feat(web): llms-full.txt — the whole corpus in one fetcha407cf2 feat(web): new OG image, declared at the standard 1200x630d6c3ab0 feat(web): per-page OG cards in the 1b style17d8569 feat(web): rebuild the site on Astro, with a docs page generated from the CLIa867299 feat(web): unify site chrome, promote the tagline, show cross-provider marks
Fixes
a3800eb fix(install): find the asset id in GitHub's pretty-printed release JSON1f4b949 fix(recipe): tag Sources for JSON so the harvest contract stays snake_case93151eb fix(web): collapse the nav to a hamburger on mobile32d5133 fix(web): name the sporo-recipe skill instead of "agent does the rest"8c2cd85 fix(web): singular "1 verb" in the docs group header5adce7b fix(web): underline the docs github link so it is not color-only
Other changes
990d137 chore(mate): pull harness v0.88.0a8ea637 chore(mate): pull harness v0.88.0 -> v0.90.0892f6f2 chore(mate): pull v0.87.0 — machine-readable reportsa234b71 docs(rules): run the source, never a snapshot7ceed91 refactor(web): make the reading column the single inner-page layout standard90e4c07 refactor(web): one page frame so widths stop dancingf217bec test(e2e): add a testscript scenario matrix over every verb
Features
3d618bc feat(recipe): adopt and pull — the reader-side ledger and staleness check1cab49f feat(web): deploy the landing to GitHub Pages + vanity import page8b387ee feat(web): landing v2 — denser, AI-readable, MVP posture57f501d feat(web): the designed site — Archivo/Plex Mono, motion, self-hosted0b3db36 feat(web): the temporary landing — static, zero-JS, SEO-complete
Fixes
36d101e fix(install): stop warning about a private repo that is now publicdac0fc8 fix(recipe): a stranger's file does not get to choose where it is written
Other changes
3354138 build(dist): homebrew cask, wired to ydnikolaev/homebrew-tap85a11ec build(release): disable brew cask until HOMEBREW_TAP_TOKEN is set8b32af3 docs(web): the repository is public — drop the private-phase caveatsba9930c legal: Apache-2.0
Features
6fd8c76 feat(cli): sporo upgrade [--check], and the hint after every command924c601 feat(upgrade): binary self-update and the passive version hint
Other changes
9fc023c build(dist): stable checksums.txt — self-update validates by one name
Features
5345581 feat(cli): sporo conform — the reader's half of Binding: exact2aa8ba7 feat(recipe): the conform layer — exact contracts become executable
Other changes
f4d950a chore(skill): fixtures at authoring time, conform at reading time0c3b1eb test(e2e): conform against the export alone, and the ADR-005 no-op
Features
c0b77b1 feat(recipe): contract bindings — exact is somebody else's parser
Other changes
552906d chore(skill): the binding question, asked at authoring time049c83c docs(recipes): bindings in the genre, outcomes agreed at adoption48da747 test(e2e): the fleet rule end to end
Features
d2aab0b feat(cli): sporo new, and lint that reports the drafts it skipse13c866 feat(recipe): close the authoring pains — drafts, scaffold, bare paths
Fixes
3b7f5f8 fix(review): close the two ambiguities the first live run surfaced
Other changes
eeb03c8 build(dist): answer 'which file is mine?' in every release headere8da0e4 chore(mate): pull v0.86.0 and add the codex provider surface695323b chore(skill): teach the scaffold-first authoring flow2535038 test(e2e): the scaffold flow — coached, gate-exempt, unable to ship
Features
96bde45 feat(cli): wire the full verb surfaceb287234 feat(install): init/update provider surface with no-clobber sync91ea173 feat(recipe): feedback channel, review packs, bundle composition3b4bbb8 feat(recipe): require versioned recipes and seal them in a registry2f77365 feat: extract the recipe engine into a standalone CLI
Other changes
4bfda88 build(dist): goreleaser release train, CI, and installere7ccebb chore(harness): adopt mate v0.85.0 as the dev harness6ae08f4 docs(recipes): proofread the genre spec, add the scale ruleea36d00 test(e2e): drive the built binary through the whole loop in isolation
Older releases and the full download tables live on GitHub. Install the latest with curl -fsSL sporo.dev/install.sh | sh.