Regenerate plugins/*/skills/ from plugins/*/.apm/ after the previous four commits, via scripts/sync-plugin-content.sh --all. The mirror is generated output (ADR-0017) that check-plugin-content-sync's pre-push hook diffs against .apm/; nothing here is hand-edited. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EeH8SCbcrCAQrtymkNuhKP
caveman
Ultra-compressed output mode: drop articles, filler and pleasantries, keep the technical substance exact.
What it does
Switches the agent into a terse register — no articles, no hedging, no pleasantries, fragments allowed, arrows for causality — while leaving technical terms, code blocks and quoted error strings untouched. The mode is sticky: once turned on it stays on for every subsequent response until the user says "stop caveman" or "normal mode", rather than decaying back to normal prose after a few turns.
It carries one built-in escape hatch. Security warnings, confirmations for irreversible actions, multi-step sequences where fragment order could be misread, and any request to clarify are answered in normal prose, then the compressed register resumes.
Hand-invoked only
SKILL.md sets disable-model-invocation: true. This is the single most important thing to know about this skill: the model cannot route to it. No other skill can hand off to it, and no phrasing in a user's request will cause it to be selected automatically. The only way in is the human typing /caveman.
That is deliberate — output style is the user's choice, not an inference the router should make on their behalf. It is also why the description reads as one plain human-facing sentence rather than carrying the trigger phrasing and boundary clause a routable skill needs.
Usage
/caveman
Then keep working normally. To leave the mode, say "stop caveman" or "normal mode".
Files
| File | Purpose |
|---|---|
SKILL.md |
The whole skill — persistence rule, compression rules, worked examples, and the auto-clarity exception |