
Caveman Internal
Shrink machine-to-machine agent handoffs and Cavekit artifacts so the next agent in the loop reads fewer tokens without touching user-facing replies.
Install
npx skills add https://github.com/juliusbrussee/cavekit --skill caveman-internalWhat is this skill?
- Compresses only IN-scope M2M prose: artifact summaries, context bundles, review notes, state.md notes, loop-log, status-
- Explicit OUT-of-scope list: source code, commits, kits, human-action errors, security warnings, structured P0–P3 tables
- Three intensities—lite, full, ultra—with automatic selection under budget pressure
- Distinct from user-facing /caveman skill that compresses assistant replies to humans
- Used by task-builder, builder, inspector, verifier, convergence-monitor, and stop-hook status injection
Adoption & trust: 5 installs on skills.sh; 1k GitHub stars; 3/3 security scanners passed (skills.sh audits).
Recommended Skills
Journey fit
First appears in build/agent-tooling because it optimizes internal agent artifacts (.cavekit paths, state.md) rather than end-user product features. Agent-tooling is where compression protocols, context bundles, and stop-hook status blocks live in multi-agent pipelines.
Common Questions / FAQ
Is Caveman Internal safe to install?
skills.sh reports 3 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.
SKILL.md
READMESKILL.md - Caveman Internal
# Caveman Internal Protocol ## Scope ### IN-scope (compress) - Artifact summaries written to `.cavekit/artifacts/` - Context bundles between tasks (`.cavekit/context-bundles/`) - Review notes and gap lists (non-user-facing) - `state.md` `notes:` field and `loop-log.md` entries - Status-block body (dashboard injected by the stop hook) - Inter-agent handoff memos ### OUT-of-scope (never compress) - Source code (any language, any file) - Git commit messages and PR descriptions - Kits (specs), build sites, DESIGN.md - Error messages that a human will act on - Security warnings and deprecation notices - Structured findings tables (P0/P1/P2/P3, coverage matrices) - Regression test names and assertion messages Compressing out-of-scope content is a bug. If a reader cannot act on a compressed artifact, regenerate it verbose and log a caveman fallback — see "Fallback protocol" below. ## Intensity levels ### Lite — trim the fat (~20% savings) Professional tone. Grammar intact. Drop filler, pleasantries, hedging. Keep articles and full sentences. > Rate-limit middleware passes unit tests. Integration failed on 429 header > case sensitivity. Fix in progress. ### Full — default (~40% savings) Classic caveman. Drop articles, filler, pleasantries. Fragments fine. Technical terms stay exact. Pattern: `[thing] [action] [reason]. [next].` > Rate-limit mw pass unit. Integration fail on 429 header case. Fixing. ### Ultra — maximum grunt (~65% savings) Telegraphic. Abbreviate common terms (DB, auth, config, req, res, fn, impl, mw, mcp). Arrow notation for causality. One-word answers when enough. > mw ok, int fail header case → fix ## Automatic intensity selection Consult the session budget ledger before writing an internal artifact: | Budget remaining | Intensity | |------------------|-----------| | > 50 % | lite | | 20 – 50 % | full | | < 20 % | ultra | Override rules: - `depth = thorough` tasks clamp to **lite** regardless of pressure (accuracy matters more than tokens when the stakes are high). - `phase = inspecting` clamps to **lite** for the gap-analysis output. - Security-sensitive artifacts clamp to **lite**. - If the caller sets `caveman_intensity` explicitly in the artifact envelope, use that and skip auto-selection. See `references/budget-thresholds.md` for the detailed decision table. ## Fallback protocol If a downstream reader cannot reconstruct intent from a compressed artifact: 1. Regenerate the artifact in **full prose** (no compression). 2. Append a one-line entry to `state.md`'s "Caveman fallbacks" section: ``` - 2026-04-17T12:34Z T-017 verifier fallback: artifact summary re-expanded ``` 3. If the same artifact category fails 3+ times in one session, clamp that category to `lite` for the rest of the session and log to `state.md`. ## Envelope Every compressed artifact carries a tiny header: ``` <!-- caveman: intensity=full version=1 --> ``` Readers that see this header know the body is compressed and apply the reverse-expansion grammar (re-add articles, re-expand abbreviations) when rendering for a human. ## Examples | Verbose | Full | Ultra | |-------------------------------------------------------------------------|-----------------------------------------