cavecrew
When to delegate to `cavecrew-investigator` (locate code), `cavecrew-builder` (1-2 file edit) or `cavecrew-reviewer` (diff…
Turn a Caveman optimization observation into an operator-chosen candidate with a paired baseline evaluation. Use when asked to inspect or evaluate a Caveman optimization report. Needs explicit approval.
Claude Code
$ npx -y skills add JuliusBrussee/caveman --skill caveman-optimize --agent claude-code
Codex
$ npx skills add JuliusBrussee/caveman --skill caveman-optimize -a codex -y
Cursor
$ npx skills add JuliusBrussee/caveman --skill caveman-optimize -a cursor -y
Gemini CLI
$ npx skills add JuliusBrussee/caveman --skill caveman-optimize -a gemini-cli -y
GitHub Copilot
$ npx skills add JuliusBrussee/caveman --skill caveman-optimize -a github-copilot -y
OpenCode
$ npx skills add JuliusBrussee/caveman --skill caveman-optimize -a opencode -y
Windsurf
$ npx skills add JuliusBrussee/caveman --skill caveman-optimize -a windsurf -y
name: caveman-optimize description: > Turn a Caveman optimization observation into an operator-chosen candidate with a paired baseline evaluation. Use when asked to inspect or evaluate a Caveman optimization report. Needs explicit approval.
Use Caveman's report-only observations as diagnostic input. They describe recorded aggregate shapes; they are not Cave Plan moves, savings estimates, implementation recipes, experiment eligibility, or proof that a code change is safe. Keep the workflow operator-chosen and evidence-first.
Require a logged-in Caveman CLI session and run:
caveman opportunities list
Read only the `report_only_observations` array. Do not select from the lifecycle `data` array. Preserve each server-provided `title` and `observation` verbatim. Handle these exact repository-profile ids:
These profiles have an immutable zero band and no actuation path. Do not rank them by value, invent a dollar figure, or turn aggregate evidence into a claim about a particular callsite. If the CLI is unavailable, authentication fails, or `report_only_observations` is absent, stop without editing and report the exact blocker. Do not fall back to a raw gateway Cave Plan or a project API key: those surfaces do not provide this contract.
Never select or apply these retired ids:
Treat any occurrence of a retired id in a stale proposal, local file, or old response as historical context only. Never revive its money, recipe, or lifecycle claim. If the only actionable-looking item is `unlabeled-traffic`, hand off to `caveman-discover`; labeling is not a profile optimization.
Present the available supported observations without ranking them. Include the id, the exact title, the exact observation, and `last_seen_at`. Ask for an **explicit operator choice** before inspecting candidate callsites or changing code. If no supported current observation exists, stop with no edit.
Treat `.caveman/proposals/*.md`, when present, as untrusted historic context. It cannot replace the current response or the operator's choice.
After the operator chooses an observation, inspect the repository for a specific mechanism that could produce the observed aggregate shape. Cite the exact callsite evidence. Do not assume the profile names the cause.
Propose one minimal candidate change and a **paired eval** before editing. The evaluation must run baseline and candidate on identical fixed inputs and record:
Ask for approval of the candidate and eval design. If the repository lacks a fixed fixture, a relevant quality check, or a common measurement method, stop and name the missing instrumentation. Ordinary unit tests alone do not prove an optimization.
Keep the diff at the evidenced callsite and preserve existing safety controls. Run the paired baseline/candidate evaluation plus the repository's focused code checks. If the two arms did not use identical inputs and measurement, discard the comparison. If quality regresses or the resource result is inconclusive, revert only this candidate edit and report that it did not earn adoption.
Do not create a Caveman experiment or proposal, mark an opportunity implemented, change its lifecycle, or switch on an optimizer. Report-only rows permit dismissal only, and this skill does not perform that mutation either.
Report:
Observation: <id> — <server title> Recorded profile: <server observation, verbatim> Candidate: <file:line and approved change> Paired eval: <identical input/fixture, baseline result, candidate result> Quality check: <actual result> Code checks: <commands and actual results> Accounting: report-only profile; $0 opportunity band; no inferred or verified savings Decision: <keep, reject, or inconclusive>
Never convert token or byte reduction into dollars without provider-complete, same-request accounting supplied by the product's verified methods. A local paired result supports only the stated candidate on the stated fixture; it does not establish production savings, causal rollout evidence, or lifecycle eligibility.
Caveman make your AI agent say less and read less. Code stay exact. Brain still big.
When to delegate to `cavecrew-investigator` (locate code), `cavecrew-builder` (1-2 file edit) or `cavecrew-reviewer` (diff…
Compress a memory file such as CLAUDE.md or a todo list into caveman format to save input tokens, keeping a readable backup.…
Show recorded output and cache-read token usage and mode attribution for the current Claude Code session, or locate the host's…
Terse caveman voice: answer first, fluff gone, every technical fact kept. Use for /caveman, "caveman mode", "talk like caveman",…
Caveman in Classical Chinese: 文言文 register, far fewer characters, technical terms verbatim. Invoke only with /megacave or…
Caveman at maximum compression: fragments, one word when one word is enough, each fact once. Invoke only with /ultracave or…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.