# sporo — command reference

> Generated from the sporo binary (`sporo docs --json`). Every verb the CLI carries, grouped. Read the authoring rules with `sporo genre`.

The `sporo-recipe` skill (installed by `sporo init`) drives an agent through the cycle: harvest → draft → lint → seal → export.

## Authoring

### `sporo export <slug>`

Print one recipe (or, with --bundle, a composed set) as a single self-contained file

- `--bundle=false` — treat <slug> as a bundle manifest and compose its members into one document
- `--root=.` — project root (searched for this repo's own recipes before the official corpus)

### `sporo feedback`

File and list report-backs — the channel a recipe's next version comes from

- `sporo feedback add <slug> <report.md>` — Validate a reader's report-back against the protocol and file it (`-` reads stdin)
- `sporo feedback list [slug]` — List the filed report-backs, per recipe

### `sporo harvest`

Gather a recipe's raw material from a revision range of the project's own record

- `--out` — write the harvest here (default: stdout)
- `--root=.` — repository to harvest
- `--since` — starting revision, exclusive (a tag: the release before the work)
- `--until=HEAD` — ending revision, inclusive

### `sporo lint [dir]`

Check a recipe corpus against the genre — shape, acceptance, scars, and neutrality

- `--root=.` — project root (its config names the recipes home and the forbidden product vocabulary)

### `sporo list`

List the recipes available here — this project's own, and the official corpus

- `--root=.` — project root (its own recipes are listed alongside the official corpus)

### `sporo new <slug>`

Scaffold a draft recipe — coached section stubs, optionally pre-seeded from a harvest

- `--from-harvest` — a `sporo harvest --out` file; its scar candidates pre-seed the scars section
- `--root=.` — project root (the draft lands in its recipes home)
- `--title` — the recipe's title (defaults to a TODO)

### `sporo review <slug>`

Build a self-contained review pack for any agent, and verify the verdicts it returns

- `--root=.` — project root

- `sporo review verify <slug> <verdict.json>...` — Validate returned verdicts and record the tally beside the recipe's seal

### `sporo seal <slug>`

Record a recipe's version and content hash in the registry — a sealed recipe never silently mutates

- `--root=.` — project root (its registry records the seal)

## Handover

### `sporo adopt <exported-recipe.md>`

Record a handed-over recipe this repository builds from — the reader-side seal

- `--root=.` — repository that adopts the recipe
- `--source` — where pull re-fetches this recipe from later — a path or an http(s) URL (default: the file argument)

### `sporo conform <slug|recipe.md> <output-file>`

Check an output file against a recipe's exact-bound contracts

- `--contract=0` — check against one exact contract by its index (default: all)
- `--root=.` — project root (searched for the recipe when a slug is given)

### `sporo pull [slug]`

Check adopted recipes against their sources — loud when an exact contract moved

- `--apply=false` — refresh the stored copy and record for each update (default: report only)
- `--root=.` — repository whose adopted recipes are checked

## Install surface

### `sporo docs`

Print this binary's command surface — the source the docs page is built from

- `--json=false` — emit the surface as JSON (what the docs page consumes)
- `--out` — write the JSON snapshot to this file (used by `go generate`)

### `sporo genre`

Print the recipe genre spec — the authoring rules this binary enforces

### `sporo init`

Install the recipe-authoring surface into this repository (skill, AGENTS.md block, seeds)

- `--root=.` — repository to initialize

### `sporo projects`

List the repositories on this machine that sporo was installed into

### `sporo update`

Re-sync the managed authoring surface from this binary — never clobbering your edits

- `--root=.` — repository to update

## Binary

### `sporo upgrade`

Update this binary to the latest release — then run `sporo update` in each repo

- `--check=false` — report the latest release and its notes; change nothing

---

generated from sporo 0.6.0 · https://github.com/ydnikolaev/sporo
