HomeCaveman: make your AI coding agent stop rambling (and cut output tokens ~65%)

Caveman: make your AI coding agent stop rambling (and cut output tokens ~65%)

By · Node.js & JavaScript developer
Published July 6, 2026

AI coding agents are wonderful and also exhausting. Ask one to fix a middleware bug and you get three paragraphs of preamble, a numbered plan, the fix, and a closing summary that repeats the plan. You pay for every one of those output tokens, and you read past most of them to get to the code. Caveman is a delightfully blunt fix: a small skill that installs into your agent and tells it to talk like a caveman — drop the filler, keep the facts. The project benchmarks it at a ~65% average reduction in output tokens (range 22–87%) while keeping technical accuracy intact.

It's free, MIT-licensed, needs only Node ≥18, and works with Claude Code, Codex, Gemini, Cursor, Windsurf, Cline, Copilot and 30+ other agents. Let's look at what it actually does.

The core idea: fragments over filler

Caveman doesn't touch your model or your code. It's a prompt-level skill plus a couple of local hooks that instruct the agent to answer in dense, telegraphic fragments. Same information, a fraction of the words. The classic before/after from the project:

Normal:  Wrap the object in `useMemo`, since a new reference
         is created on every render.

Caveman: New ref each render. Wrap object in `useMemo`.

Notice what survives: the identifier useMemo, the actual advice, the reason. What's gone is the connective tissue ("since", "is created", "on every") that costs tokens and adds nothing you didn't already infer.

Install in ~30 seconds

There's a universal installer that finds every agent you have installed locally and adds the skill to each:

# macOS / Linux / WSL / Git Bash
curl -fsSL https://raw.githubusercontent.com/JuliusBrussee/caveman/main/install.sh | bash

# Windows PowerShell
irm https://raw.githubusercontent.com/JuliusBrussee/caveman/main/install.ps1 | iex

Prefer to wire it into a single agent? The skills CLI does per-agent installs — no global changes:

npx skills add JuliusBrussee/caveman -a cursor

As the usual caution with any curl | bash: read the script first if you're careful about what runs on your machine — the repo documents its install-time fetches in SECURITY.md, and after install there are zero network calls (see below).

Turning it on and picking a level

On Claude Code, Codex, and Gemini it's enabled by default after install; elsewhere you flip it on with /caveman or literally by saying "talk like caveman". Say "normal mode" to switch back. There are four compression levels, dialed with /caveman [level]:

  • lite — moderate condensing; trims filler but keeps full sentences.
  • full (default) — standard caveman-speak; fragments over prose.
  • ultra — aggressive; strips down to near-keyword density.
  • wenyan — renders answers in classical Chinese (文言文) for maximum token density, since it packs the most meaning per token.

The numbers

The project publishes per-task benchmarks measuring output tokens for the same question answered normally vs. in caveman mode. A representative slice:

Task                          Normal   Caveman   Reduction
React re-render explanation    1,180       159        87%
Auth middleware fix              704       121        83%
Docker multi-stage build       1,042       290        72%
Git rebase vs merge              702       292        58%

Two honest caveats the author calls out, which is refreshing: the skill itself adds ~1–1.5k input tokens per turn (the instructions have to live in context), and real-session savings are smaller than the output-only figures because reasoning tokens aren't compressed. So the headline 65% is an output-token number, not a whole-bill number — but on verbose, chatty workloads it's a real and immediate win.

It never touches your code

This is the part that makes it safe to leave on. Caveman only compresses natural-language exposition. Code blocks, shell commands, error messages, URLs, and file paths are preserved byte-for-byte. It also keeps your original human language (the one exception being wenyan mode, which deliberately switches to classical Chinese). So you get terser explanations wrapped around exactly the same code the agent would have written otherwise.

The specialized commands are the sleeper feature

Beyond the global mode, caveman ships focused slash commands that apply the same brevity discipline to specific tasks:

  • /caveman-commit — writes a conventional-commit message ≤50 characters that emphasizes the why. Great for killing the "update stuff" commit habit.
  • /caveman-review — one-line PR comments, each with a location and an issue type. No essay per nit.
  • /caveman-stats — reads your local session logs and reports real token usage and lifetime savings (even in USD). Zero telemetry; it's all local.
  • /caveman-compress <file> — rewrites a memory/context file in place. The project measures a sustained ~46% input-token reduction on that file across future sessions — an actual dent in input tokens, not just output.

That last one is the clever bit: caveman-compress attacks the cost that the always-loaded skill instructions add, by permanently shrinking the context files you carry into every session.

No phone home

Privacy is a first-class design goal. There are no accounts and no telemetry; after installation the skill makes zero network calls and operates purely as local prompts and hooks. /caveman-stats works entirely off local session logs. For a tool that sits inside your coding agent all day, "it's just prompts and it never phones home" is exactly the property you want.

Should you use it?

If you run an AI coding agent daily and you're tired of scrolling past preamble to reach the answer — or you're watching an output-token bill climb — caveman is close to a free win. It's one command to install, trivially reversible ("normal mode"), and it can't corrupt your code because it never edits code. Start on full, try /caveman-commit and /caveman-review for a day, and check /caveman-stats to see what you actually saved. Worst case you turn it off; best case your agent finally gets to the point.

Sources & further reading

About Code with Node.js

This is a personal blog and reference point of a Node.js developer.

I write and explain how different Node and JavaScript aspects work, as well as research popular and cool packages, and of course fail time to time.