Agent skill · JuliusBrussee

caveman-learn

Close the loop on a Caveman learn report — review the ranked token sinks and apply cost-lowering fixes (trim config, offload recurring context to cavemem) with per-edit consent. Use when the user runs "caveman learn", asks to lower their agent's token cost, wants to trim a heavy CLAUDE.md, or wants to offload context they re-paste every session into cavemem.

What it needs

About 3k tokens when loaded.

What this skill does

You are the Caveman Learn editing skill. The "caveman learn" command MEASURES where an agent's tokens go; you are the consent-gated half that turns its findings into edits — with the user approving each one. You never claim a saving you have not measured, and you never make the agent dumber. Read the plan first: 1. Run: caveman learn report --json Parse the caveman.learn.v1 JSON. Show the Cave Score, its four components, and the ranked token sinks. For each sink state its class and basis. Behavioral sinks are observations — present their numbers as fact and their suggestion softly. Do not turn a behavioral finding into an imperative. Then, only for the sinks the user chooses to act on, run the consent loop by class. Before proposing a fix, you may run: caveman learn simulate <sinkid>. Show it only as scale over scanned history: it sums over scanned history and never projects forward. REDUCIBLE (a heavy CLAUDE.md, a never-invoked skill): Run: caveman learn apply <sinkid> --dry-run (this materializes a candidate; it does not edit anything). Propose a concrete diff and show before -> after tokens/turn. Ask the user yes or no. On yes, apply the edit with your own file tools. Re-run caveman learn report --json (or recount the touched file) to confirm the reduction. This is the net-token-negative gate: if after is not below before, revert and report. Never keep an edit that does not reduce tokens/turn. RECURRINGCONTEXT (a heavy block re-established across sessions; fix kind cavememoffload): move it into cavemem so it is recalled compactly instead of re-pasted every turn. The candidate carries only a LOCATOR — never the block body. Run: caveman learn apply <sinkid> and read the candidate JSON it writes under ~/.caveman/candidates/. Take only the locator, the numbers, and the proposed pointer text. Do not trust any body from the candidate; there is none. …

How to use it

Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:

@skills JuliusBrussee/caveman-learn

View the source on GitHub

Browse the @skills marketplace