/spec
Turn a canvas or issue into a structured spec. Names the What, the Why, and the acceptance list. Downstream skills read the spec as source-of-truth.
/specType it bare, or paste it with loose context after — Claude figures out the rest.
Canvases sketch a product. Tickets ask for features. The bridge to code doesn't exist.
One spec that names the What and the Why and the acceptance list. Downstream skills read it.
Takes in
- A canvas path or issue ref or scope description
Returns
- Spec doc at specs/YYYY-MM-DD-slug.md
- Acceptance list
- Reference block
What it does
Bridge the gap between product thinking (canvases) and engineering work (GitHub Issues).
Read every relevant ADR in architecture/decisions/ before confirming scope. If your scope deviates from any ADR's decision or constraints, surface the deviation as the first agenda item — operator decides amend-ADR vs. revise-scope.
Read the full skill
The complete instructions live at .claude/skills/spec/SKILL.md in your repo after bassclef-sync. Open with your editor for phases, rules, and worked examples.
Where in the SDLC
Also relevant in: Build.
Why this phase: Structured spec from canvas or issue — bridges Design to Build.
Related
- Skills catalog — browse all skills grouped by lifecycle phase
- Tier system — what each tier gives you
FAQ
Terms from bassclef vocabulary that appear on this page.
- load-bearing
- A part of the system that other parts depend on — remove it and downstream things break. Bassclef uses the word for artifacts that other artifacts read: a canvas is load-bearing when a spec cites it, a spec is load-bearing when Builder uses it. Plain equivalent: 'actually used' or 'counted on'.
- rule
- A markdown file auto-loaded into every session's context. Rules pin discipline the agent applies to every response (plain-English writing, blocked-items protocol, temperance gates). Different from a hook — rules are steering; hooks are enforcement.
- skill
- A user-invocable command (like `/kiss` or `/temperance`) that runs a specific bassclef workflow. Every skill lives at `.claude/skills/<name>/SKILL.md` with frontmatter + procedure. Adopters type the slash command; Claude Code loads the skill and runs it.
- bassclef-upstream
- The private repo where bassclef substrate is authored. Ships to a public `bassclef` npm package + a public `bassclef-web` docs site. Adopters read the public tier; the operator maintains upstream.
Shipped by @kingofrock · Read the essays
/riff
Produce 2 or 3 clickable mock variants. Each pins a luminary lens. Three modes — full, local, scratch. Full uses git, gh, and screenshots. Local writes to disk only. Scratch uses a tmp dir with no git.
/stage
Turn an idea into clickable mock variants on a deployed subdomain. Two sizes: quick (~30 min, 2 variants) and light (~2h, 3 variants plus an Anthropic baseline). Operator picks a direction from phone before committing to build work.