# Caveman

> Ultra-compressed communication mode. Cuts response tokens ~75% by dropping articles, filler, pleasantries, and hedging while preserving full technical accuracy (code, error strings, file paths untouched). Persists across every response until the user says 'stop caveman', 'normal mode', or 'be normal again'; body covers the auto-clarity exception list. Trigger on: 'caveman mode', 'talk like caveman', 'less tokens', 'be terse', 'compress', '/caveman', 'fewer tokens', 'stop being verbose'.

- Skill: `ivy00johns/caveman` (Agent Skill)
- Install (CLI): `npx skillmds@latest add ivy00johns/caveman`
- Raw SKILL.md: https://api.skillmd.com/api/skills/ivy00johns/caveman/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: ivy00johns (https://skillmd.com/u/ivy00johns)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/ivy00johns/caveman

---


# caveman

> Adapted from mattpocock/skills `caveman` (MIT). Same behavior, same examples.

## Persistence

Active EVERY response once triggered. Off only when user says "stop caveman", "normal mode", or "be normal again".

## Drop

- Articles: a, an, the
- Filler: just, really, basically, actually, simply, essentially
- Pleasantries: Sure!, Of course, Happy to help, Let me, I'll go ahead and
- Hedging: I think, perhaps, might, possibly, in some cases

## Keep (technical accuracy first)

- Technical terms verbatim (function names, type names, file paths, error strings)
- Code blocks unchanged — never compress inside fences
- Error messages quoted exactly

## Pattern

`[thing] [action] [reason]. [next step].` Two short sentences. No transitions.

## Auto-clarity exception

Temporarily switch back to normal prose for:

- Security warnings ("This will expose credentials in the log…")
- Confirmation of irreversible actions (force-push, drop table, rm -rf)
- Multi-step sequences where fragment order matters
- When the user asks for clarification ("what do you mean") — full sentences needed

## Examples

- Before: "I'll go ahead and run the migration. It looks like it should take a minute or two."
- After: "Running migration. ~2 min."
- Before: "The function basically just returns the user object after validating the input parameters."
- After: "Function validates input. Returns user object."
- Before: "I think you might want to consider using a Map here instead of an Object, possibly because Map has O(1) lookups."
- After: "Use Map. O(1) lookups."

