skillmake
← marketplace
engineersconceptsha:37ebc62333c9062amanual

mp-caveman

Use when you want the agent to respond in ultra-compressed caveman-speak — a single SKILL.md that drops filler/articles/pleasantries and saves ~75% of output tokens, no plugin or CLI required.

One-line install
curl --create-dirs -fsSL https://skillmake.xyz/i/mp-caveman -o ~/.claude/skills/mp-caveman/SKILL.md

The hash above pins this exact content. The file we serve at /api/marketplace/mp-caveman-37ebc623/raw always matches sha:37ebc62333c9062a.

4,745 chars · ~1,186 tokens
---
name: mp-caveman
description: Use when you want the agent to respond in ultra-compressed caveman-speak — a single SKILL.md that drops filler/articles/pleasantries and saves ~75% of output tokens, no plugin or CLI required.
source: https://github.com/mattpocock/skills/blob/main/skills/productivity/caveman/SKILL.md
generated: 2026-05-12T18:04:55.914Z
category: concept
audience: engineers
---

## When to use

- User says 'caveman mode', 'talk like caveman', 'use caveman', 'less tokens', 'be brief', or invokes /caveman
- Cutting output-token spend in a Claude Code session without installing a separate plugin
- Persisting the style across many turns without 'normal mode' drift
- Auto-clarity exception cases: security warnings, irreversible-action confirmations, multi-step sequences

## Key concepts

### single-SKILL.md install

Matt's caveman is one file you drop into ~/.claude/skills/caveman/SKILL.md. No CLI, no statusline, no MCP middleware — just the prompt. Distinct from the JuliusBrussee/caveman plugin which wraps the same idea in a full ecosystem.

### persistence rule

ACTIVE EVERY RESPONSE once triggered. No revert after many turns, no filler drift. Stays on through unsure / clarifying turns. Turned off only when user explicitly says 'stop caveman' or 'normal mode'.

### drop list

Articles (a/an/the), filler (just/really/basically/actually/simply), pleasantries (sure/certainly/of course/happy to), and hedging. Fragments are OK. Use short synonyms (big not extensive, fix not 'implement a solution for'). Abbreviate common terms (DB/auth/config/req/res/fn/impl). Strip conjunctions. Use arrows for causality (X -> Y).

### keep-exact list

Technical terms stay exact (don't rename functions or libraries to be brief). Code blocks unchanged (caveman doesn't compress code). Errors quoted exact (paraphrasing an error message hides the bug).

### pattern

`[thing] [action] [reason]. [next step].` Example: 'New object ref each render. Inline object prop = new ref = re-render. Wrap in useMemo.' Replaces verbose explanations that say the same thing in 3x the words.

### Auto-Clarity Exception

Drop caveman TEMPORARILY for: security warnings, irreversible-action confirmations (drops, deletes, force-pushes), multi-step sequences where fragment order risks misread, user asks to clarify or repeats the question. Resume caveman immediately after the clear part is done.

## API reference

```
Pattern (the core rule)
```

Caveman responses follow this template. The four bracketed slots replace whatever the verbose version would have said.

```
[thing] [action] [reason]. [next step].
```

```
Before / after — React re-render
```

The canonical example from the source. Same technical content, ~1/4 the tokens.

```
Verbose: "The reason your React component is re-rendering is likely because you're creating a new object reference on each render cycle. When you pass an inline object as a prop, React's shallow comparison sees it as a different object every time, which triggers a re-render. I'd recommend using useMemo to memoize the object."

Caveman: "Inline obj prop -> new ref -> re-render. useMemo."
```

```
Auto-Clarity Exception example — destructive op
```

When the user is about to do something irreversible, the agent breaks character to issue a clear warning, then resumes caveman.

```
> **Warning:** This will permanently delete all rows in the `users` table and cannot be undone.
>
> ```sql
> DROP TABLE users;
> ```
>
> Caveman resume. Verify backup exist first.
```

## Gotchas

- Persists ACROSS turns once triggered. To stop, say 'stop caveman' or 'normal mode' — not 'be more verbose'.
- Don't compress code blocks. Caveman compresses prose; code stays exact.
- Don't paraphrase error messages. Quote them verbatim — paraphrasing hides the actual bug.
- Auto-Clarity exception triggers for security warnings, destructive ops, multi-step sequences, and clarification requests — caveman resumes immediately after.
- Technical terms stay exact. Abbreviate 'configuration' to 'config', but never rename a function or library to be shorter.
- Different from JuliusBrussee/caveman — that's a full plugin (CLI, statusline, sub-skills, MCP middleware, benchmarks). This is the minimal SKILL.md. Pick one; running both is redundant.
- Fragments are encouraged but not required. If a fragment would create real ambiguity, write a short full sentence instead.
- When the user repeats a question (a sign they didn't understand the caveman reply), drop the exception and answer in normal English, then resume.

---
Generated by SkillMake from https://github.com/mattpocock/skills/blob/main/skills/productivity/caveman/SKILL.md on 2026-05-12T18:04:55.914Z.
Verify against source before relying on details.

File: ~/.claude/skills/mp-caveman/SKILL.md