Agent Specification
ruvnet/ruflo
Agent skill for specification - invoke with $agent-specification
Cavekit specification-driven development methodology — the Hunt lifecycle (Draft → Architect → Build → Inspect → Monitor) and how to apply it.
$ npx skills add JuliusBrussee/caveman-code --skill cavekit-methodology -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install JuliusBrussee/caveman-code cavekit-methodology --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/JuliusBrussee/caveman-code.git skills-src && mkdir -p .claude/skills && cp -r skills-src/packages/coding-agent/skills/cavekit-methodology .claude/skills/cavekit-methodology && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "cavekit-methodology" agent skill from https://github.com/JuliusBrussee/caveman-code/tree/main/packages/coding-agent/skills/cavekit-methodology into .claude/skills/cavekit-methodology/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cavekit-methodology", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/JuliusBrussee/caveman-code/tree/main/packages/coding-agent/skills/cavekit-methodologyType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add JuliusBrussee/caveman-code --skill cavekit-methodology -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install JuliusBrussee/caveman-code cavekit-methodology --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/JuliusBrussee/caveman-code.git skills-src && mkdir -p .agents/skills && cp -r skills-src/packages/coding-agent/skills/cavekit-methodology .agents/skills/cavekit-methodology && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "cavekit-methodology" agent skill from https://github.com/JuliusBrussee/caveman-code/tree/main/packages/coding-agent/skills/cavekit-methodology into .agents/skills/cavekit-methodology/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cavekit-methodology", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add JuliusBrussee/caveman-code --skill cavekit-methodology -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install JuliusBrussee/caveman-code cavekit-methodology --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/JuliusBrussee/caveman-code.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/packages/coding-agent/skills/cavekit-methodology .cursor/skills/cavekit-methodology && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "cavekit-methodology" agent skill from https://github.com/JuliusBrussee/caveman-code/tree/main/packages/coding-agent/skills/cavekit-methodology into .cursor/skills/cavekit-methodology/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cavekit-methodology", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/JuliusBrussee/caveman-code.git --path packages/coding-agent/skills/cavekit-methodology--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add JuliusBrussee/caveman-code --skill cavekit-methodology -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install JuliusBrussee/caveman-code cavekit-methodology --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/JuliusBrussee/caveman-code.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/packages/coding-agent/skills/cavekit-methodology .gemini/skills/cavekit-methodology && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "cavekit-methodology" agent skill from https://github.com/JuliusBrussee/caveman-code/tree/main/packages/coding-agent/skills/cavekit-methodology into .gemini/skills/cavekit-methodology/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cavekit-methodology", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install JuliusBrussee/caveman-code cavekit-methodologyInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add JuliusBrussee/caveman-code --skill cavekit-methodology -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/JuliusBrussee/caveman-code.git skills-src && mkdir -p .github/skills && cp -r skills-src/packages/coding-agent/skills/cavekit-methodology .github/skills/cavekit-methodology && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "cavekit-methodology" agent skill from https://github.com/JuliusBrussee/caveman-code/tree/main/packages/coding-agent/skills/cavekit-methodology into .github/skills/cavekit-methodology/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cavekit-methodology", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add JuliusBrussee/caveman-code --skill cavekit-methodology -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install JuliusBrussee/caveman-code cavekit-methodology --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/JuliusBrussee/caveman-code.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/packages/coding-agent/skills/cavekit-methodology .opencode/skills/cavekit-methodology && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "cavekit-methodology" agent skill from https://github.com/JuliusBrussee/caveman-code/tree/main/packages/coding-agent/skills/cavekit-methodology into .opencode/skills/cavekit-methodology/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cavekit-methodology", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
cavekit-methodologyCavekit specification-driven development methodology — the Hunt lifecycle (Draft → Architect → Build → Inspect → Monitor) and how to apply it.
Cavekit Methodology is an agent skill from JuliusBrussee/caveman-code. Cavekit specification-driven development methodology — the Hunt lifecycle (Draft → Architect → Build → Inspect → Monitor) and how to apply it. Use when starting a Cavekit project, structuring an existing codebase as kits/plans, or routing between sub-skills.
Its SKILL.md is about 3.3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
The repository describes itself as: Frozen — terminal coding agent measured at 1.93× fewer tokens than Codex CLI. Still works; active development moved to JuliusBrussee/caveman (caveman wrap). The licence is MIT.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 3a21be1. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
readgrepFrom allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Cavekit Methodology loads about 3.3k tokens when it runs. Until then it costs about 70 tokens; SKILL.md has 1,526 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from JuliusBrussee/caveman-code at commit 3a21be1, republished under its MIT licence (© JuliusBrussee). 1,526 words, ~3,331 tokens.
.claude/skills/cavekit-methodology/SKILL.md (or your agent's skills folder).Always define what you want before telling agents how to build it. Go through a cavekit stage — never jump straight from raw requirements to implementation.
Cavekit is a methodology for building software with AI coding agents that puts kits at the center of the development process — code is derived from them, not the other way around. Whether starting from scratch or modernizing an existing system, the principle is the same:
In both cases, the kits become a living contract that agents consume to continuously build, validate, and refine the application.
| Property | Benefit |
|---|---|
| Structured | Organized as a navigable tree, enabling agents to load only what they need |
| Human-legible | Engineers can audit requirements at a higher level than code |
| Stack-independent | Decoupled from any single framework or language |
| Independently evolvable | Kits can be refined without touching implementation |
| Verifiable | Every requirement includes acceptance criteria agents can check |
Key Insight: Well-written kits with strong validation make your application reproducible — any agent can rebuild it from the kits alone. Think of it as continuous regeneration.
LLMs are inherently non-deterministic — like running an experiment, each individual call may yield different results. But through the right methodology — clear hypotheses, controlled conditions, and repeated trials — we extract reliable, reproducible outcomes from a stochastic process.
Cavekit applies the scientific method to software construction — hypothesize, test, observe, refine.
| Layer | Analogy | What It Does |
|---|---|---|
| LLM calls | Individual experiments | Each run may produce different results; no single output is authoritative |
| Kits | Hypotheses | Define what you expect to observe — the predicted behavior |
| Validation gates | Controlled conditions | Ensure reproducibility by constraining what counts as a valid outcome |
| Convergence loops | Repeated trials | Build statistical confidence through successive passes |
| Implementation tracking | Lab notebook | Record what was tried, what worked, and what failed |
| Revision | Revising the hypothesis | When results contradict expectations, update the theory upstream |
The outcome: a disciplined, repeatable engineering process layered on top of probabilistic generation.
The Hunt is the four-phase lifecycle: Sketch, Map, Make, Check. Each phase has dedicated prompts that drive it.
| Phase | Input | Output | AI Role | Human Role |
|---|---|---|---|---|
| Draft | Source materials, domain knowledge, existing systems | Implementation-agnostic kits | Extract requirements, structure knowledge | Verify kits capture intent accurately |
| Architect | Kits + framework research | Framework-specific implementation plans | Design architecture, break down work, order steps | Approve architectural choices |
| Build | Plans + kits | Working code + tests + tracking docs | Write code, run tests, check against kits | Watch for drift and blockers |
| Inspect | Failed validations, gaps, manual fixes | Updated kits/plans via revision | Identify root causes, propagate fixes upstream | Evaluate outcomes, set priorities |
| Monitor | Running application, git history | Issues, anomalies, progress reports | Scan for regressions, surface metrics | Interpret reports, guide next steps |
Each phase has gate conditions that must be met before moving to the next:
The Inspect phase is where the human serves as reviewer and decision-maker, not hands-on coder. You monitor the process, request changes as needed, and make systemic improvements to kits and prompts.
For the full Hunt phase reference, see
references/hunt-phases.md.
Use when the project has significant scope, evolving requirements, or needs autonomous agent execution.
| Indicator | Threshold |
|---|---|
| Codebase size | 50+ source files |
| Requirements | Evolving, multi-domain |
| Agent coordination | Multi-agent or multi-prompt pipelines |
| Environment | Production, security-sensitive, brownfield |
| Team structure | Multi-team or cross-team |
| Execution mode | Long-running autonomous work (overnight, unattended) |
What you get: Full Hunt lifecycle, context directory with kits/plans/impl tracking, prompt pipeline, convergence loops, revision, validation gates.
Use when scope is moderate — too complex for ad-hoc but not worth a full pipeline.
| Indicator | Threshold |
|---|---|
| Codebase size | 5-50 files |
| Requirements | Mostly clear, focused |
| Agent coordination | Single agent, possibly with sub-agents |
| Execution mode | Interactive with occasional iteration loops |
What you do:
context/kits/cavekit-task.md capturing requirementscontext/plans/plan-task.md sequencing the implementationThis is the "Cavekit floor" — most of the benefit without the overhead of a full multi-phase pipeline.
Use when the task is trivially small.
| Indicator | Threshold |
|---|---|
| Codebase size | Less than 5 files |
| Task type | One-off tools, simple bug fixes, exploratory prototypes |
| Implementation | Fits comfortably in one agent session without needing external references |
Heuristic: If the whole task fits in one context window with room to spare, full Cavekit adds more overhead than value.
Start with lightweight Cavekit even if the project is small. If the scope expands, you already have the structure in place to scale up. It is much harder to retrofit kits onto a large codebase than to grow a cavekit directory from the beginning.
Cavekit mirrors a build pipeline — each stage transforms input into validated output, with feedback loops that propagate corrections upstream:
Traditional CI/CD:
Code → Build → Test → Deploy
Cavekit AI Pipeline:
Cavekit Change
→ Generate Plans (iteration loop)
→ Generate Implementation (iteration loop)
→ Validate (Tests + Review)
→ Human Audit (Monitor & Steer)
→ [Gap Found]
→ Revise
→ Cavekit Change (cycle repeats)Every stage can run as an iteration loop — the same prompt executed repeatedly until output stabilizes. The iteration loop is what transforms nondeterministic LLM output into predictable, validated software.
The iteration loop is the fundamental execution unit in Cavekit. Execute the same prompt against the same codebase multiple times until the delta between runs approaches zero.
Mechanics:
Convergence signal: A shrinking volume of modifications across successive passes — the diff gets smaller each time until only cosmetic changes remain. You are looking for diminishing returns, not absolute zero.
When the loop isn't stabilizing, the problem is upstream — fix the inputs (specs, validation, coordination), not the iteration count.
If the diff is not shrinking between runs:
Cavekit is composed of techniques that work together. This methodology skill is the index — each sub-skill below is self-contained but cross-references others.
| Skill | Purpose | When to Use |
|---|---|---|
ck:cavekit-writing | Write implementation-agnostic kits with testable acceptance criteria | Draft phase — always the first step |
ck:context-architecture | Organize context for progressive disclosure | Project setup and ongoing maintenance |
ck:impl-tracking | Track implementation progress, dead ends, test health | Build and Inspect phases |
ck:validation-first | Design validation gates agents can execute | All phases — validation is continuous |
| Skill | Purpose | When to Use |
|---|---|---|
ck:prompt-pipeline | Design numbered prompt pipelines for the Hunt | Setting up automation |
ck:revision | Trace bugs back to kits and fix at the source | Inspect phase — after finding gaps |
cavekit:brownfield-adoption | Adopt Cavekit on existing codebases | Starting Cavekit on legacy projects |
| Skill | Purpose | When to Use |
|---|---|---|
ck:peer-review | Use a second agent to challenge the first | Quality gates, architecture review |
cavekit:speculative-pipeline | Stagger pipeline stages for parallelism | Optimizing long pipelines |
ck:convergence-monitoring | Detect convergence vs ceiling | Monitoring iteration loops |
cavekit:documentation-inversion | Turn documentation into agent-consumable skills | Library/module documentation |
Cavekit works with existing skills, not as a replacement:
| Existing Skill | Cavekit Integration |
|---|---|
superpowers:brainstorming | Use during cavekit generation to explore requirements |
superpowers:writing-plans | Use during plan generation for structured planning |
superpowers:test-driven-development | TDD-within-Cavekit: cavekit acceptance criteria become failing tests |
superpowers:verification-before-completion | Use for gate validation in every phase |
superpowers:executing-plans | Use during implementation phase |
superpowers:dispatching-parallel-agents | Use for agent team coordination |
Set up context directory:
context/
├── refs/ # Source materials (PRDs, language specs, research)
├── kits/ # Implementation-agnostic kits
├── plans/ # Framework-specific implementation plans
├── impl/ # Living implementation tracking
└── prompts/ # Hunt pipeline promptsWrite kits from your reference materials (see ck:cavekit-writing)
Generate plans from kits (see ck:prompt-pipeline)
Implement with validation gates (see ck:validation-first)
Track progress in implementation documents (see ck:impl-tracking)
Iterate — when gaps are found, revise kits (see ck:revision)
cavekit:brownfield-adoption)Cavekit is not a tool — it is a methodology. The core loop is simple:
Agents become more capable the more precisely you constrain them — clear kits, automated validation, and structured iteration loops let them operate with increasing autonomy. None of this eliminates the need for software engineers. Your judgment on architecture, your ability to write precise kits, and your instinct for what "done" looks like are the inputs that make the whole system function. Cavekit is a force multiplier: one engineer's clarity of thought, scaled across an entire implementation pipeline.
© JuliusBrussee, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in packages/coding-agent/skills/cavekit-methodology of JuliusBrussee/caveman-code.
Open the folder on GitHubat commit 3a21be1
Cavekit Methodology next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Cavekit Methodology this skillJuliusBrussee/caveman-code | 942 | — | ~3.3k | Automated safety check: Pass | MIT | |
| Agent Specificationruvnet/ruflo | 74k | 2 repos | ~1.8k | Automated safety check: Pass | MIT | |
| Sparc Methodologyruvnet/ruflo | 74k | — | ~262 | Automated safety check: Pass | MIT | |
| Hunt Fintech Graphqlsickn33/agentic-awesome-skills | 47k | 1 repos | ~3.9k | Automated safety check: Pass | MIT | |
| Specificity Managementthedaviddias/Front-End-Checklist | 74k | — | ~477 | Automated safety check: Pass | MIT | |
| Methodologyhashgraph-online/awesome-codex-plugins | 1.3k | — | ~3.4k | Automated safety check: Pass | Apache-2.0 |
ruvnet/ruflo
Agent skill for specification - invoke with $agent-specification
ruvnet/ruflo
SPARC development workflow (Specification, Pseudocode, Architecture, Refinement, Completion).
sickn33/agentic-awesome-skills
Hunt fintech-specific GraphQL vulnerabilities. An agent skill from sickn33/agentic-awesome-skills.
thedaviddias/Front-End-Checklist
A skill your agent uses when reviewing stylesheets, component styles, and responsive behavior related to Keep CSS specificity low and flat.
hashgraph-online/awesome-codex-plugins
Core Cavekit methodology — the master skill that teaches the Hunt lifecycle and routes to all sub-skills.
affaan-m/ECC
Score a scoped competitor set into comparable profile cards: nine weighted dimensions (positioning, voice, visual craft, offer packaging, evidence, enterprise-readiness, thought leadership, pricing…
JuliusBrussee/caveman-code
How to write and maintain DESIGN.md as the visual specification layer for Cavekit projects.
JuliusBrussee/caveman-code
Trace bugs and manual fixes back to kits and prompts; fix at the source so the iteration loop can reproduce the fix autonomously.
JuliusBrussee/caveman-code
Validation-first design for Cavekit — every kit requirement must be automatically verifiable.
JuliusBrussee/caveman-code
Rewrites a memory file such as CLAUDE.md or a todo list in terse caveman-style text to cut input tokens, saving a readable backup outside the project tree.
JuliusBrussee/caveman-code
Scaffold a complete cave plugin bundle — generates .cave-plugin/plugin.json manifest and the standard directory structure (commands/, skills/, agents/, themes/, hooks/).
Cavekit specification-driven development methodology — the Hunt lifecycle (Draft → Architect → Build → Inspect → Monitor) and how to apply it. Cavekit Methodology is an agent skill from JuliusBrussee/caveman-code. Cavekit specification-driven development methodology — the Hunt lifecycle (Draft → Architect → Build → Inspect → Monitor) and how to apply it.
Cavekit Methodology fits situations like: starting a Cavekit project; structuring an existing codebase as kits/plans; routing between sub-skills.
Run `npx skills add JuliusBrussee/caveman-code --skill cavekit-methodology -a claude-code`. Or copy the skill folder (packages/coding-agent/skills/cavekit-methodology in JuliusBrussee/caveman-code) into .claude/skills/cavekit-methodology in your project. Claude Code loads it when a task matches its description.
Run `npx skills add JuliusBrussee/caveman-code --skill cavekit-methodology -a codex`. Or copy the skill folder (packages/coding-agent/skills/cavekit-methodology in JuliusBrussee/caveman-code) into .agents/skills/cavekit-methodology in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add JuliusBrussee/caveman-code --skill cavekit-methodology -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/cavekit-methodology, .gemini/skills/cavekit-methodology, .github/skills/cavekit-methodology and .opencode/skills/cavekit-methodology in your project.
SKILL.md names no scripts, command-line tools or credentials: Cavekit Methodology is instructions for the agent only. Its frontmatter pre-approves these tools: read, grep.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Cavekit Methodology is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.3k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Cavekit Methodology: Agent Specification (ruvnet/ruflo, 74k stars), Sparc Methodology (ruvnet/ruflo, 74k stars), Hunt Fintech Graphql (sickn33/agentic-awesome-skills, 47k stars) and Specificity Management (thedaviddias/Front-End-Checklist, 74k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
JuliusBrussee (a GitHub user) maintains it in JuliusBrussee/caveman-code, which has 942 GitHub stars. The repository holds 6 skills in this directory. The repository was last updated on August 14, 2026.
Source: JuliusBrussee/caveman-code on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.