spec
Create, amend, or backprop bugs into SPEC.md at repo root.
Skill by JuliusBrussee
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/juliusbrussee-spec
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: writing
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/spec
What's inside
- Skill name
spec- Description
- Create, amend, or backprop bugs into SPEC.md at repo root. Sole mutator of the project spec. Triggers when the user asks to write a spec, start a new spec, distill a spec from existing code, add invariants, amend sections (§G, §C, §I, §V, §T, §B), or record a bug via backprop. Common phrasings: "write the spec for...", "new spec", "bug: ...", "amend §V.3", "distill spec from code", "spec this idea". Reads and follows FORMAT.md for the caveman encoding rules and pipe-table shape of §T and §B.
- License
- MIT
- Instructions
- 84 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# spec — spec mutator Read `FORMAT.md` at repo root if not already loaded. Caveman skill applies to all writes here. ## DISPATCH Inspect user request and project state: 1. No `SPEC.md` at repo root AND args describe idea → **NEW** 2. No `SPEC.md` AND `from-code` in args → **DISTILL** 3. `SPEC.md` exists AND args start `bug:` → **BACKPROP** 4. `SPEC.md` exists AND args start `amend` → **AMEND** 5. `SPEC.md` exists, no args → ask user which mode ## INPUTS — spec is the sole mutator The other verbs produce material; spec writes it. Ingest their handoff blocks into the right section, show a diff, write on OK: - **grill** → sharpened §G + §C - **research** → §R rows (add the §R section if absent) - **review** → drafted §V lines + the risk verdict - **deepen** → §I/§V/§T amendments ⊥ rewrite a section the handoff did not name. Sectioned ownership (see FORMAT.md). ## NEW — idea → spec Input: user idea. If it arrived fuzzy, prefer running **grill** first. Steps: 1. Extract goal (1 line, caveman). → §G. 2. List constraints user stated or implied. → §C. 3. List external surfaces user named. → §I. 4. §R only if **research** ran — else omit the section (right-size). 5. Propose initial invariants. → §V (numbered V1…). 6. Break goal into ordered tasks. → §T pipe table, all status `.`, ids T1… 7. §B section with header row only (`id|date|cause|fix`). Write to `SPEC.md`. Show user full file. Ask: "spec OK? `/review` if high-blast-radius, else `/build`." ## DISTILL — code → spec Walk repo. Produce §G (infer from README/package.json/main entry), §C (infer from stack), §I (enumerate public APIs/CLIs/configs), §V (derive from tests and assertions), §T (one task per known TODO or missing test), §B (empty). Caveman everywhere. Flag uncertain items with `?` in text so user can confirm. ## BACKPROP — bug → §B + §V Input: `bug: <description>`. Steps: 1. Parse bug description. 2. Find root cause (read relevant code). 3. Decide: would a new invariant catch recurrence? If yes → draft `V<next>`. 4. Append §B row: `B<next>|<date>|<cause>|V<N>`. 5. Append new invariant to §V. 6. If fix also changes behavior → add/update §T rows. 7. Show diff. Apply only on user OK. Rule: every bug gets a §B entry. Invariant optional but preferred. ## AMEND — targeted edit Input: `amend §V.3` or `amend §T` etc. Read that section. Show current. Ask user what changes. Write. Show diff. Never silently rewrite sections user did not name. ## OUTPUT RULES - Caveman format per `FORMAT.md`. - Preserve identifiers, paths, code verbatim. - Numbering monotonic — never reuse §V.N or §B.N. - §T row `cites` column ! list §V/§I deps: `T5|.|impl auth mw|V2,I.api`. ## NON-GOALS - No sub-agents. Main thread writes. - No dashboards, no logs, no state files beyond SPEC.md itself. - No auto-build after spec. User invokes build explicitly.
From JuliusBrussee/cavekit, MIT.
More from JuliusBrussee/cavekit
- 0.719score
review
JuliusBrussee
Adversarial senior review of the spec before any code is written.
SkillCFreshness: C★ 1.2KClaude Code +9 - 0.719score
grill
JuliusBrussee
Calibrated interrogation of a fuzzy idea before it becomes a spec.
SkillCFreshness: C★ 1.2KClaude Code +9 - 0.719score
research
JuliusBrussee
Gather external knowledge the spec needs and distill it into §R — the durable research log — so build grounds in facts instead of hallucinating library…
SkillCFreshness: C★ 1.2KClaude Code +9 - 0.719score
deepen
JuliusBrussee
Optional design-improvement pass for when you have spare usage to drain.
SkillCFreshness: C★ 1.2KClaude Code +9 - 0.719score
build
JuliusBrussee
Plan-then-execute implementation against SPEC.md.
SkillCFreshness: C★ 1.2KClaude Code +9 - 0.719score
check
JuliusBrussee
Read-only drift detector.
SkillCFreshness: C★ 1.2KClaude Code +9 - 0.644score
backprop
JuliusBrussee
Bug → spec protocol.
SkillDFreshness: D★ 1.2KClaude Code +9 - 0.644score
caveman
JuliusBrussee
Caveman encoding for SPEC.md and spec-adjacent writes.
SkillDFreshness: D★ 1.2KClaude Code +9
Signals
- Stars
- 1,157
- Forks
- 89
- Open issues
- 12
- Last commit (this folder)
- Jun 18, 2026 (4 months ago)
- Last release
- Apr 18, 2026 (6 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/JuliusBrussee/cavekit
- Website
- caveman.so/
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from JuliusBrussee
- 0.888score
caveman-compress
JuliusBrussee
Compress a memory file such as CLAUDE.md or a todo list into caveman format to save input tokens, keeping a readable backup.
SkillAFreshness: A★ 114.8KClaude Code +9 - 0.885score
caveman-learn
JuliusBrussee
Act on a Caveman learn report - review the ranked token sinks, apply cost-lowering fixes with per-edit consent, and report what those fixes returned.
SkillAFreshness: A★ 114.8KClaude Code +9 - 0.885score
caveman-manage
JuliusBrussee
Inspect Caveman Cloud's experiment lifecycle and block unsafe execution.
SkillAFreshness: A★ 114.8KClaude Code +9 - 0.885score
caveman-optimize
JuliusBrussee
Turn a Caveman optimization observation into an operator-chosen candidate with a paired baseline evaluation.
SkillAFreshness: A★ 114.8KClaude Code +9 - 0.885score
caveman-evidence-review
JuliusBrussee
Read-only review of Caveman Cloud evidence: cost, Cave Score, workflows, traces, latency, errors, routing, savings.
SkillAFreshness: A★ 114.8KClaude Code +9 - 0.882score
cavecrew
JuliusBrussee
When to delegate to `cavecrew-investigator` (locate code), `cavecrew-builder` (1-2 file edit) or `cavecrew-reviewer` (diff review) instead of working inline…
SkillAFreshness: A★ 114.8KClaude Code +9
Cite this page
spec skill. Agent Mart. https://agentmart.dev/skills/juliusbrussee-spec (last updated 2026-10-24)