{
  "markdown": "> **Status: frozen (August 2026).** cavekit is no longer in active development.\n> Everything below still installs and works, but expect no new features or\n> fixes. Active development of the family lives in\n> [caveman](https://github.com/JuliusBrussee/caveman) and\n> [caveman-browse](https://github.com/JuliusBrussee/caveman-browse).\n\n<h1 align=\"center\">cavekit</h1>\n\n<p align=\"center\">\n  <strong>compressed spec-driven development for claude code</strong><br/>\n  <sub>one file · one loop · zero sub-agents</sub>\n</p>\n\n---\n\n## what this is\n\nPlan-then-execute forgets. SDD remembers — but most SDD frameworks bury\nthat value under agent swarms, dashboards, and ceremony that costs more\ntokens than it saves.\n\nCavekit is the simplest full loop: **grill → spec → research → review →\nbuild**, over one `SPEC.md` file, no sub-agents. Three commands you run\nevery time; four more you reach for only when the change earns it.\n\nThe spine is three properties that earn their tokens:\n\n- **durable spec** — `SPEC.md` at repo root survives context resets. It is\n  the agent's long-term memory: lose the window, reload the spec, keep going.\n- **caveman encoding** — ~75% fewer tokens than prose. Symbols, fragments,\n  pipe tables. All nine skill descriptions cost ~1.1k context — 16× lighter\n  than spec-kit's 18.6k. That is the whole point.\n- **backprop reflex** — every test failure becomes a `§B` entry; classes\n  of bug become `§V` invariants the spec never forgets.\n\nAnd one rule that keeps it from bloating into the frameworks it replaces:\n**right-size**. A one-line fix is just `/build`. The full chain is for\ngenuinely uncertain or high-blast-radius work — never for a typo.\n\n## commands\n\n**the loop** — run these every time:\n\n| cmd | job |\n|---|---|\n| `/ck:spec` | create / amend / backprop `SPEC.md`. Sole mutator. |\n| `/ck:build` | native plan → execute against spec. Names which test proves each `§V`. Auto-backprops on failure. |\n| `/ck:check` | read-only drift report. Lists §V / §I / §T violations. The drift detector. |\n\n**reach for these** — only when the change earns the ceremony:\n\n| cmd | job |\n|---|---|\n| `/ck:grill` | interrogate a fuzzy idea into a sharp `§G`/`§C`, one question at a time, before you spec. |\n| `/ck:research` | gather external knowledge into `§R` so build grounds in facts, not hallucinations. Every finding cites a source. |\n| `/ck:review` | adversarial senior review of the spec *before* build. Refutes, hardens `§V`, ends in a go/no-go gate. |\n| `/ck:deepen` | spare-budget design pass — make one shallow module deep. Behavior held, tests green before & after. |\n\n## install\n\nOne line, via the `skills` CLI:\n\n```bash\nnpx skills add JuliusBrussee/cavekit\n```\n\nInstalls nine skills into `~/.claude/skills/`: `spec`, `build`, `check`\n(the loop), `grill`, `research`, `review`, `deepen` (reach-for), plus\n`caveman` and `backprop` (the utilities). Claude activates each when its\ntrigger context matches — e.g. \"write a spec for…\" invokes `spec`, a fuzzy\nidea invokes `grill`, a risky change before build invokes `review`. Claude\nCode picks them up on next launch.\n\nOr via the Claude Code marketplace (also adds the `/ck:spec`, `/ck:build`,\n`/ck:check`, `/ck:grill`, `/ck:research`, `/ck:review`, `/ck:deepen` slash\ncommands):\n\n```bash\n/plugin marketplace add juliusbrussee/cavekit\n/plugin install ck@cavekit\n```\n\nOr clone directly:\n\n```bash\ngit clone https://github.com/juliusbrussee/cavekit.git ~/.claude/plugins/cavekit\n```\n\n## format\n\nSee [`FORMAT.md`](./FORMAT.md). Sections: §G goal, §C constraints, §I\ninterfaces, §R research (optional, pipe table), §V invariants, §T tasks\n(pipe table), §B bugs (pipe table). Each verb owns specific sections —\nno verb rewrites a section it does not own.\n\n## files\n\n```\nFORMAT.md             spec schema + caveman encoding + sectioned ownership\ncommands/             seven thin slash-command entry points → the skills (loop + reach-for)\nskills/spec           spec mutator — sole writer\nskills/build          plan-execute, verification contract\nskills/check          drift report\nskills/grill          sharpen a fuzzy idea → §G/§C before spec\nskills/research       external knowledge → §R, every finding sourced\nskills/review         adversarial senior review of the spec → hardens §V\nskills/deepen         spare-budget design pass — make one module deep\nskills/caveman        encoding utility\nskills/backprop       bug → spec protocol (six steps)\n```\n\n## non-goals\n\n- no sub-agents. Main Claude does the work.\n- no dashboards. `cat SPEC.md` is the dashboard.\n- no parallel workers. One thread, one spec, one diff.\n- no JSON / YAML spec bodies. Markdown + pipe tables.\n- no hooks, no orchestration binaries, no TypeScript helpers.\n\n---\n\n## older cavekit (the Hunt lifecycle, v3.1.0 and earlier)\n\nThe previous generation is **not deprecated** — it is frozen at tag\n[`v3.1.0`](https://github.com/juliusbrussee/cavekit/tree/v3.1.0) and\nremains a fully working plugin.\n\n**What it is**:\n\n> Spec-driven AI development with an autonomous execution loop. Four-command\n> Hunt lifecycle (`/ck:sketch` → `/ck:map` → `/ck:make` → `/ck:check`),\n> plus `/ck:ship`, `/ck:review`, `/ck:revise`, `/ck:status`, `/ck:design`,\n> `/ck:research`, `/ck:init`, `/ck:config`, `/ck:resume`, `/ck:help` — 16\n> slash commands total. 12 named sub-agents. Per-task token budgets,\n> stop-hook state machine, model-tier routing, auto-backpropagation from\n> test failures, tool-result caching, Codex peer review, Karpathy\n> behavioral guardrails, caveman token compression, knowledge-graph\n> integration, and design-system enforcement. Parallel wave execution and\n> team mode.\n\n**Pick v3.1.0** if you want the full autonomous loop, parallel agents,\npeer review, or design-system workflow. **Pick v4** if you want the\ndistilled loop — one spec, no orchestration, right-sized ceremony.\n\n### install the older version\n\nMarketplace:\n\n```bash\n/plugin marketplace add juliusbrussee/cavekit@v3.1.0\n/plugin install ck@cavekit\n```\n\nGit:\n\n```bash\ngit clone -b v3.1.0 https://github.com/juliusbrussee/cavekit.git\n```\n\nFull docs live at the tag — `git checkout v3.1.0` and read the README\nthere for command reference, skill catalog, and the Hunt lifecycle guide.\n\n### choosing, or moving\n\nSee [`UPGRADE.md`](./UPGRADE.md). Honest framing:\n- Stay on v3.1.0 if your project has active `context/kits/` investment.\n- Move to v4 if you want fewer moving parts and smaller token bills.\n- It is a **two-way door** — `SPEC.md` is plain markdown; nothing traps\n  you in either direction.\n\n## ecosystem\n\nCavekit is one rock in the caveman family:\n\n| repo | what | status |\n|---|---|---|\n| [caveman](https://github.com/JuliusBrussee/caveman) | output compression skill + engine — *why use many token when few do trick* | live |\n| [caveman-browse](https://github.com/JuliusBrussee/caveman-browse) | token-efficient browser automation | live |\n| [cavegemma](https://github.com/JuliusBrussee/cavegemma) | Gemma 4 31B fine-tuned on caveman pairs — *why prompt every turn when weight remember* | labs |\n| [cavemem](https://github.com/JuliusBrussee/cavemem) | cross-agent persistent memory — *why agent forget when agent can remember* | frozen |\n| **cavekit** *(you here)* | spec-driven build loop — *why agent guess when agent can know* | frozen |\n\n## philosophy\n\n> The spec is the only artifact that earns its tokens. Everything else\n> that costs tokens must either save more tokens later, or the user's\n> attention, or it gets cut.\n\nSee [`CHANGELOG.md`](./CHANGELOG.md) for the full v3 → v4 break.\n\n## license\n\nMIT.\n",
  "bytes": 7521,
  "sha": "f04a1f39caa9c2e4b37f06f0a073ad89b2404cf3ae2e7d4799d9ab457f692552",
  "repo_slug": "juliusbrussee/cavekit",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/skl_juliusbrussee_cavekit_caveman_e7e56815/readme"
}