caveman-compress
Skill2 starsChanged 5 months agoMITView on GitHub
Compress a memory file such as CLAUDE.md or a todo list into caveman format to save input tokens, keeping a readable backup. Sends the file's text to the configured model provider. Trigger: /caveman-compress.
- Reads credentials
51 other projects use a version of this, 48 of them edited.
Adopted by
Most recently taken up by
- sudeepgupta90/my-ai-marketplaceedited, first seen Nov 8, 2026
- mjlueck-hash/cavemanedited, first seen Nov 8, 2026
- dhruvsaxena1998/skillsword for word, first seen Nov 8, 2026
- MMACABRE/SKILLSedited, first seen Nov 8, 2026
- gopalparashar421/agent-skillsedited, first seen Nov 8, 2026
- tardigrde/obsidian-agentic-chatedited, first seen Nov 8, 2026
Used with
Projects with it also use caveman-evidence-review, caveman-learn and 8 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
JuliusBrusseeSkillcaveman-evidence-review
Read-only review of Caveman Cloud evidence: cost, Cave Score, workflows, traces, latency, errors, routing, savings. Use when asked what Caveman found or where LLM spend goes.
Also in 6 projects that use this
JuliusBrusseeSkillcaveman-learn
Act on a Caveman learn report - review the ranked token sinks, apply cost-lowering fixes with per-edit consent, and report what those fixes returned. Use when asked to lower an agent's token cost, what caveman has saved, to trim a heavy CLAUDE.md, or to offload re-pasted context into cavemem.
Also in 6 projects that use this
- +8 more from JuliusBrussee
Other versions51 projects use a version of this.
Word for word · 3
- PanPanFR/oh-my-openkilo★ 9100% same
- dhruvsaxena1998/skills★ 1100% same
- matheus-rib1108/meu-kit-claude-code★ 0100% same
Edited · 48
- JuliusBrussee/caveman★ 118k96% same
- HoangNguyen0403/agent-skills-standard★ 56587% same
- dbt-labs/docs.getdbt.com★ 22091% same
- goern/forgejo-mcp★ 15298% same
- kubestellar/console★ 15191% same
- rawsun007/claude-notch★ 6691% same
- vobase/vobase★ 6087% same
- Namma-Flutter/namma_wallet★ 5991% same
- nitingupta220/riperflow★ 1991% same
- chinkan/RustFox★ 1193% same
38 more not listed
Wrote their own version · 0
None found.
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository31 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- auto-pushSkill
- brand-name-checkerSkill
- cavecrewSkill
- caveman-commitSkill
- caveman-helpSkill
- caveman-reviewSkill
- cavemanSkill
- caveman-statsSkill
- code-optimizerSkill
- code-reviewSkill
- context-hubSkill
- docs-generatorSkill
- grillingSkill
- grill-meSkill
- handoffSkill
- hermes-configSkill
- idea-validatorSkill
- multi-agent-orchestratorSkill
- oss-readySkill
- prd-generatorSkill
- quick-healthy-recipesSkill
- release-managerSkill
- rtkSkill
- security-setupSkill
- seo-ai-optimizerSkill
- tasks-generatorSkill
- teachSkill
- usability-reviewSkill
- writing-great-skillsSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
16 rules. 16 are common, 0 are distinctive, and 0 are very specific to this project.
16
Common
Most of the 45 edited versions we read keep these.
0
Distinctive
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- could be automatic: a setting could enforce it
- Common: line 33
call Claude to compress
- Common: line 35
if errors: cherry-pick fix with Claude (targeted fixes only, no recompression)
- Common: line 37
if still failing after 2 retries: report error to user, leave original file untouched
- Common: line 63
All markdown headings (keep exact heading text, compress body below)
- Common: line 70
Use short synonyms: "big" not "extensive", "fix" not "implement a solution for", "use" not "utilize"
- Common: line 74
Keep one example where multiple examples show the same pattern
- Common: line 86
Do not modify anything inside backticks.
- Common: line 88
If file contains code blocks:
- Common: line 89
Treat code blocks as read-only regions
- Common: line 90
Only compress text outside them
- Common: line 91
Do not merge sections around code
- Common: line 109
ONLY compress natural language files (.md, .txt, .typ, .typst, .tex, extensionless)
- Common: line 110
NEVER modify: .py, .js, .ts, .json, .yaml, .yml, .toml, .env, .lock, .css, .html, .xml, .sql, .sh
- Common: line 111
If file has mixed content (prose + code), compress ONLY the prose sections
- Common: line 112
If unsure whether something is code or prose, leave it unchanged
- Common: line 114
Never compress FILE.original.md (skip it)
“Common” is measured: kept by at least 6 in 10 of the 45 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Caveman Compress
Purpose
Data leaves the machine. Compression sends the file's full text to the model provider that
scripts/compress.pyis configured for: theclaudeCLI, the Anthropic API, or an OpenAI-compatible endpoint. Files whose names look like secrets (.env,credentials,secrets,.netrc, …) are refused before they are read. Don't compress a file the provider shouldn't see.
Compress natural language files (CLAUDE.md, todos, preferences) into caveman-speak to reduce input tokens. Compressed version overwrites original. Human-readable backup saved as <filename>.original.md, but NOT beside the source file — it lives in an out-of-tree data dir ($XDG_DATA_HOME/caveman-compress/backups/<parent-dir-name>/, or %LOCALAPPDATA%\caveman-compress\backups\<parent-dir-name>\ on Windows) so skill auto-loaders don't re-ingest it as a live file.
Trigger
/caveman-compress <filepath> or when user asks to compress a memory file.
Requires an explicit filepath. If the user pastes raw text instead of naming a file, do NOT improvise an inline compression — ask them for the filepath to compress, or offer to save the pasted text to a file first. Writing your own reasoning/commentary about the request into the compressed output (e.g. "User passed text directly, not a filepath...") is the exact failure this guards against — never let that leak into a saved file.
Process
- The compression scripts live in
scripts/(adjacent to this SKILL.md). If the path is not immediately available, search forscripts/__main__.pynext to this SKILL.md. - From the directory containing this SKILL.md, run:
python3 -m scripts <absolute_filepath>
- The CLI will:
- detect file type (no tokens)
- call Claude to compress
- validate output (no tokens)
- if errors: cherry-pick fix with Claude (targeted fixes only, no recompression)
- retry up to 2 times
- if still failing after 2 retries: report error to user, leave original file untouched
- Return result to user
Compression Rules
Remove
- Articles: a, an, the
- Filler: just, really, basically, actually, simply, essentially, generally
- Pleasantries: "sure", "certainly", "of course", "happy to", "I'd recommend"
- Hedging: "it might be worth", "you could consider", "it would be good to"
- Redundant phrasing: "in order to" → "to", "make sure to" → "ensure", "the reason is because" → "because"
- Connective fluff: "however", "furthermore", "additionally", "in addition"
Preserve EXACTLY (never modify)
- Code blocks (fenced ``` and indented)
- Inline code (
backtick content) - URLs and links (full URLs, markdown links)
- File paths (
/src/components/...,./config.yaml) - Commands (
npm install,git commit,docker build) - Technical terms (library names, API names, protocols, algorithms)
- Proper nouns (project names, people, companies)
- Dates, version numbers, numeric values
- Environment variables (
$HOME,NODE_ENV)
Preserve Structure
- All markdown headings (keep exact heading text, compress body below)
- Bullet point hierarchy (keep nesting level)
- Numbered lists (keep numbering)
- Tables (compress cell text, keep structure)
- Frontmatter/YAML headers in markdown files
Compress
- Use short synonyms: "big" not "extensive", "fix" not "implement a solution for", "use" not "utilize"
- Fragments OK: "Run tests before commit" not "You should always run tests before committing"
- Drop "you should", "make sure to", "remember to" — just state the action
- Merge redundant bullets that say the same thing differently
- Keep one example where multiple examples show the same pattern
CRITICAL RULE:
Anything inside ... must be copied EXACTLY.
Do not:
- remove comments
- remove spacing
- reorder lines
- shorten commands
- simplify anything
Inline code (...) must be preserved EXACTLY.
Do not modify anything inside backticks.
If file contains code blocks:
- Treat code blocks as read-only regions
- Only compress text outside them
- Do not merge sections around code
Pattern
Original:
You should always make sure to run the test suite before pushing any changes to the main branch. This is important because it helps catch bugs early and prevents broken builds from being deployed to production.
Compressed:
Run tests before push to main. Catch bugs early, prevent broken prod deploys.
Original:
The application uses a microservices architecture with the following components. The API gateway handles all incoming requests and routes them to the appropriate service. The authentication service is responsible for managing user sessions and JWT tokens.
Compressed:
Microservices architecture. API gateway route all requests to services. Auth service manage user sessions + JWT tokens.
Boundaries
- ONLY compress natural language files (.md, .txt, .typ, .typst, .tex, extensionless)
- NEVER modify: .py, .js, .ts, .json, .yaml, .yml, .toml, .env, .lock, .css, .html, .xml, .sql, .sh
- If file has mixed content (prose + code), compress ONLY the prose sections
- If unsure whether something is code or prose, leave it unchanged
- Original file is backed up as FILE.original.md before overwriting — in the out-of-tree backup data dir (see Purpose), not beside the source file
- Never compress FILE.original.md (skip it)
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

