#791 by GitHub stars
JuliusBrussee/cavekit
Frozen — compressed spec-driven development plugin for Claude Code. Still works; active development moved to JuliusBrussee/caveman.
History
Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.
View weekly changes
skills/backprop/SKILL.md
Week of Oct 26, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
7421e87d5b51 → 7421e87d5b51
skills/build/SKILL.md
Week of Oct 26, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
7421e87d5b51 → 7421e87d5b51
skills/caveman/SKILL.md
Week of Oct 26, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
7421e87d5b51 → 7421e87d5b51
skills/check/SKILL.md
Week of Oct 26, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
7421e87d5b51 → 7421e87d5b51
skills/deepen/SKILL.md
Week of Oct 26, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
7421e87d5b51 → 7421e87d5b51
skills/grill/SKILL.md
Week of Oct 26, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
7421e87d5b51 → 7421e87d5b51
skills/research/SKILL.md
Week of Oct 26, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
7421e87d5b51 → 7421e87d5b51
skills/review/SKILL.md
Week of Oct 26, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
7421e87d5b51 → 7421e87d5b51
skills/spec/SKILL.md
Week of Oct 26, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
7421e87d5b51 → 7421e87d5b51
Verified commit 7421e87d5b517c415c519ddf58a3dd10ba842530
git clone --filter=blob:none --no-checkout https://github.com/JuliusBrussee/cavekit.git .hotskills/juliusbrussee-cavekit && git -C .hotskills/juliusbrussee-cavekit checkout --detach 7421e87d5b517c415c519ddf58a3dd10ba842530
# Copy each selected skill directory from .hotskills/juliusbrussee-cavekit into .claude/skills/<skill-name>/Heat
2.7- Star growth, last 7 daysAhead of 65% of tracked repositories
- Star growth, last 24 hoursAhead of 3% of tracked repositories
- Rank movement, last 7 daysAhead of 11% of tracked repositories
- Commits, last 30 daysAhead of 0% of tracked repositories
- Accounts asking about it through MCP, last 7 daysNot available
- Hot votes this weekAhead of 0% of tracked repositories
Heat never changes the order by stars, and sponsorship never touches it. How heat works
Stars over time
Individual skills in this repository
How it works
backprop
When your agent uses it
Bug → spec protocol. When a bug is found or a test fails, trace the cause, decide whether a new §V invariant would catch recurrence, append to §B. This is the one non-obvious thing SDD does that plan-then-execute doesn't. Triggers on test failure, bug report, post-mortem, or explicit user ask.
What it loads into context
Frontmatter
85 tokensAlways available to the agent
SKILL.md
730 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- WHEN TO BACKPROP
- SIX STEPS
- WHAT MAKES A GOOD INVARIANT
- WHEN NOT TO ADD §V
- OUTPUT SHAPE
Files
../../.claude-plugin/marketplace.jsonasset486 bytes../../.claude-plugin/plugin.jsonasset467 bytesSKILL.mdcore2,658 bytes
Read SKILL.md
# backprop — bug → spec
Plan-then-execute fixes the code & forgets.
SDD fixes the code AND edits spec so recurrence is impossible.
That edit is backprop.
## WHEN TO BACKPROP
- Test failed at `/build` verification.
- User reports bug.
- Post-mortem after production incident.
- `/check` flags VIOLATE with root cause found.
## SIX STEPSView the complete source on GitHubbuild
When your agent uses it
Plan-then-execute implementation against SPEC.md. Native single-thread loop, no sub-agents. On test or build failure, auto-invokes the backprop skill before retrying — a failed verification always considers whether a new §V invariant would prevent recurrence. Triggers when the user asks to build, implement, execute the spec, or tackle a specific §T task (`build §T.3`, `build --next`, `implement next task`, `run the build`). Expects SPEC.md to exist; if not, defers to the spec skill.
What it loads into context
Frontmatter
134 tokensAlways available to the agent
SKILL.md
826 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- LOAD
- PLAN
- EXECUTE
- FAIL → BACKPROP
- WRITE POLICY
- VERIFICATION
- NON-GOALS
Files
SKILL.mdcore3,177 bytes
Read SKILL.md
# build — implement spec
Single-thread native plan→execute. You are main Claude. No swarm.
## LOAD
1. Read `SPEC.md`. If missing → tell user to invoke the spec skill first. Stop.
2. Read `FORMAT.md` once if not loaded.
3. Read §R if present — external facts the build must honor, ⊥ re-derive or contradict.
4. Parse invocation args:
- `§T.n` → that task only
- `--next` → lowest-numbered row with status `.` or `~`
- `--all` or empty → every `.` row in §T order
View the complete source on GitHubcaveman
When your agent uses it
Caveman encoding for SPEC.md and spec-adjacent writes. Loaded by /spec, /build, /check. Cuts tokens ~75% vs prose while staying precise. Triggers on any write to SPEC.md or when user says "caveman", "compress this", "be brief".
What it loads into context
Frontmatter
72 tokensAlways available to the agent
SKILL.md
819 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- GRAMMAR
- SYMBOLS
- PRESERVE VERBATIM
- SHAPES
- EXAMPLES
- BOUNDARIES
- WHEN UNSURE
Files
SKILL.mdcore2,941 bytes
Read SKILL.md
# caveman — spec encoding
Applies to SPEC.md writes, spec-referencing prose, backprop entries.
Does NOT apply to code, error strings, commit messages, PR descriptions.
## GRAMMAR
- Drop articles (a, an, the).
- Drop filler (just, really, basically, simply, actually).
- Drop aux verbs where fragment works (is, are, was, were, being).
- Drop pleasantries.
- No hedging (skip "might", "perhaps", "could be worth").
- Fragments fine.
- Short synonyms: fix > implement, big > extensive, run > execute.View the complete source on GitHubcheck
When your agent uses it
Read-only drift detector. Diffs SPEC.md against current code and reports violations grouped by severity. Writes nothing — suggests remedies via the spec or build skills but never invokes them. Triggers when the user asks to check drift, audit the spec, verify invariants, or ask whether code still matches the spec. Phrasings: "check drift", "audit the spec", "does the code still match §V", "check invariants", "spec vs code".
What it loads into context
Frontmatter
112 tokensAlways available to the agent
SKILL.md
771 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- LOAD
- CHECK §V — invariants
- CHECK §I — interfaces
- CHECK §T — tasks
- REPORT
- REMEDY HINTS (not actions)
- NON-GOALS
Files
SKILL.mdcore2,720 bytes
Read SKILL.md
# check — drift report
Pure diagnostic. Reports violations. Writes nothing. User decides remedy.
Spec drifting silently from code is the #1 SDD failure mode. check is the
detector. Run it after each `/build` and before each ship — drift caught here is
a diff; drift caught in prod is a §B.
## LOAD
1. Read `SPEC.md`. If missing → "no spec, nothing to check." Stop.
2. Parse invocation args:
- `§V` → check invariants only (default)
- `§I` → check interfacesView the complete source on GitHubdeepen
When your agent uses it
Optional design-improvement pass for when you have spare usage to drain. Finds the shallowest modules in the code the spec touches, researches a deeper design, and proposes refactors that shrink interfaces and hide decisions — behavior held constant, tests green before and after. Proposes §I/§V/§T edits, never silent rewrites. Triggers when the user says "deepen this", "improve the design", "this module feels shallow", "pull complexity down", "use spare budget on the codebase", or invokes /ck:deepen. Leans on the codebase-design skill's deep-module vocabulary when present.
What it loads into context
Frontmatter
149 tokensAlways available to the agent
SKILL.md
975 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- WHEN TO DEEPEN
- FIVE STEPS
- WHEN TO STOP
- BOUNDARIES
Files
SKILL.mdcore4,072 bytes
Read SKILL.md
# deepen — make modules deep
**Behavior is sacred: tests green before AND after. Every change shrinks an interface or hides a decision — deepen, don't churn.**
A **deep module** hides a lot behind a small interface; a **shallow** one's
interface costs as much to use as writing the code yourself. Complexity =
dependencies + obscurity, and it compounds. Deepen spends spare usage paying
that down *before* it becomes a §B. Run it when the build is green & you have
budget to drain — not under deadline.
## WHEN TO DEEPEN
- Build is green, tests pass, & you have token budget spare.
- A module's interface feels as complex as its implementation (shallow smell).View the complete source on GitHubgrill
When your agent uses it
Calibrated interrogation of a fuzzy idea before it becomes a spec. Asks one question at a time, recommends an answer, and lands each answer in §G (goal) or §C (constraints) — unknowns parked as `?` items, never guessed. The cheapest place to kill a bad idea is before §T exists. Triggers when the user has a vague idea, says "grill me", "stress-test this", "challenge my plan", "interview me before I spec", or invokes /ck:grill. Defers the actual write to the spec skill.
What it loads into context
Frontmatter
139 tokensAlways available to the agent
SKILL.md
870 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- WHEN TO GRILL
- CALIBRATE FIRST
- QUESTION LADDER
- ANSWER FORMAT
- HANDOFF
- WHEN TO STOP
- BOUNDARIES
Files
SKILL.mdcore3,322 bytes
Read SKILL.md
# grill — sharpen idea before spec
**One question at a time. Every answer lands in a § or gets parked `?`. Never guess a constraint into existence.**
Plan-then-execute guesses the fuzzy parts & builds the wrong thing.
Grill drags the fuzz into §G/§C *before* a single §T row exists.
A bad assumption caught here costs one question. Caught in §B it costs a bug.
## WHEN TO GRILL
- Idea is one sentence & you can feel the holes.
- Multiple readings of the goal exist & you are about to pick one silently.
- Before `/spec new` on anything non-trivial.
- User asks to be challenged / stress-tested.View the complete source on GitHubresearch
When your agent uses it
Gather external knowledge the spec needs and distill it into §R — the durable research log — so build grounds in facts instead of hallucinating library behavior. Each finding cites a source; unsourced claims are flagged, never written as fact. Triggers when a spec decision hinges on a library/API/best practice the agent is unsure of, when the user says "research this", "what's the best lib for…", "check current best practice", or invokes /ck:research. Defers the §R write to the spec skill.
What it loads into context
Frontmatter
128 tokensAlways available to the agent
SKILL.md
804 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- WHEN TO RESEARCH
- FOUR STEPS
- SOURCE DISCIPLINE
- WHEN TO STOP
- BOUNDARIES
Files
SKILL.mdcore3,178 bytesSKILL.mdcore3,178 bytes
Read SKILL.md
# research — external knowledge → §R
**Every finding cites a source. No source → flag it `?`, never write a guess as fact.**
"Process without library context gives you well-organized hallucinations."
Build invents a plausible-but-wrong API & §B fills with avoidable bugs.
Research is the external oracle: pull the real fact once, log it caveman, never re-derive.
## WHEN TO RESEARCH
- A §C/§I/§V decision hinges on a lib, API, version, or pattern you are unsure of.
- You are about to assume how an external dependency behaves.
- The idea touches a domain with real prior art (auth, payments, crypto, rate-limit).
- `/grill` parked a `?` that the outside world must answer.View the complete source on GitHubreview
When your agent uses it
Adversarial senior review of the spec before any code is written. Constructs a skeptical reviewer whose authority comes from the codebase, §R research, and live best-practice — then tries to REFUTE the spec, not rubber-stamp it. Every finding cites evidence (file:line or source); unverifiable ones are flagged. Survivors harden §V; the run ends in an explicit go / no-go gate. Triggers before building anything high-blast-radius, when the user says "review the spec", "red-team this", "is this plan sound", "senior review", or invokes /ck:review.
What it loads into context
Frontmatter
149 tokensAlways available to the agent
SKILL.md
1,032 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- WHEN TO REVIEW
- PHASE 0 — CAPTURE
- PHASE 1 — CONSTRUCT THE SENIOR
- PHASE 2 — REFUTE
- PHASE 3 — CLASSIFY
- PHASE 4 — HARDEN §V & GATE
- BOUNDARIES
Files
SKILL.mdcore3,934 bytes
Read SKILL.md
# review — refute the spec before build
**Every finding cites evidence — file:line or a source. No evidence → flag `[unverified]`. Default to refuted: a flaw you cannot prove is a flaw you note, not one you wave through.**
An LLM cannot self-correct on its own judgment — left alone it drifts or
degrades. Review fixes that the only way that works: a *separate* skeptic
anchored to an *external oracle* — the code, §R, the test suite, the docs.
"Looks good" is not a review. A refutation attempt is.
## WHEN TO REVIEW
- Before `/build` on a high-blast-radius change (shared module, auth, data, money, public API).
- Spec touched §I or §V that other code depends on.
- Right-sizing says the cost of a wrong build > the cost of one review pass.View the complete source on GitHubspec
When your agent uses it
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.
What it loads into context
Frontmatter
161 tokensAlways available to the agent
SKILL.md
978 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- DISPATCH
- INPUTS — spec is the sole mutator
- NEW — idea → spec
- DISTILL — code → spec
- BACKPROP — bug → §B + §V
- AMEND — targeted edit
- OUTPUT RULES
- NON-GOALS
Files
SKILL.mdcore3,499 bytes
Read SKILL.md
# 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
View the complete source on GitHubSkills included
- backprop
- build
- caveman
- check
- deepen
- grill
- research
- review
- spec
Repository facts
- License
- MIT
- Created
- Mar 14, 2026
- Last pushed
- Aug 14, 2026
- Forks
- 89
- Open issues
- 12
- Project activity
- Slowing
Rank over the last 12 weeks
Now #791 · best #507 · down 159 in 30 days
- #778 on Oct 31
- #779 on Nov 1
- #780 on Nov 2
- #787 on Nov 3
- #790 from Nov 4 to Nov 5
- #791 since Nov 6
33 earlier periods
- #546 on Aug 1
- #505 on Aug 7
- #521 on Aug 11
- #519 on Aug 12
- #507 on Aug 15
- #520 on Aug 17
- #538 on Aug 21
- #521 on Aug 22
- #562 on Aug 28
- #571 on Sep 9
- #569 on Sep 11
- #569 on Sep 13
- #592 from Sep 16 to Sep 17
- #579 on Sep 19
- #595 on Sep 21
- #606 on Sep 22
- #577 on Sep 25
- #628 on Sep 30
- #616 on Oct 4
- #622 on Oct 5
- #632 on Oct 7
- #665 on Oct 8
- #649 on Oct 9
- #671 on Oct 14
- #672 on Oct 16
- #648 on Oct 17
- #686 on Oct 20
- #695 on Oct 21
- #675 on Oct 23
- #756 on Oct 25
- #769 on Oct 28
- #771 on Oct 29
- #773 on Oct 30
Before you install
Instructions onlyAutomated signals, not a guarantee
Checked Nov 3, 2026
Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.
Show 1 note
skills/research/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzed
- No broad tool permissions
- No dangerous shell commands
- 2 network referencesin 1 file: .claude-plugin/marketplace.json:1
- No hidden or obfuscated text
- No instruction overrides
- No executable scripts
- 1 reference to secretsin 1 file: caveman/SKILL.md:86
- No requests to vote in Hot
Show all 3 signals by file
.claude-plugin/marketplace.json
skills/caveman/SKILL.md
- Access to secretsline 86
[Credential-related source omitted]
How the signals fit together
Facts from a static read of the files at the pinned commit. They describe what the code does, not why.
Some files could not be read; the facts below still hold.
No combined signals at this commit.
Works with
| Agent | Status | Evidence | Install to |
|---|---|---|---|
| Claude Code | Native | Manifest .claude-plugin/marketplace.json | .claude/skills/<skill-name>/ |
| Codex | Compatible | Standard SKILL.md skills/backprop/SKILL.md | .agents/skills/<skill-name>/ |
| Cursor | Compatible | Standard SKILL.md skills/backprop/SKILL.md | .cursor/skills/<skill-name>/ |
| Gemini CLI | Compatible | Standard SKILL.md skills/backprop/SKILL.md | .gemini/skills/<skill-name>/ |
| GitHub Copilot | Compatible | Standard SKILL.md skills/backprop/SKILL.md | .github/skills/<skill-name>/ |
| OpenCode | Compatible | Standard SKILL.md skills/backprop/SKILL.md | .opencode/skills/<skill-name>/ |
- Native The repository ships a manifest, folder or frontmatter field for this agent.
- Compatible A standard SKILL.md that this agent can read.
- Unknown No evidence either way.
Derived automatically from paths, manifests and frontmatter. Not tested on each agent.
Explore alternatives and comparisons
Add this badge to your README
It updates every night and links to this page.
[](https://hotskills.dev/skill/juliusbrussee-cavekit/)