28 March 2026
Talk to your AI agent like a caveman
Most people write to AI agents the way they write to a colleague they don't know well: "Hi! I was wondering if you could possibly help me take a look at something — I think there might be an issue with the login flow, when you get a chance?" Forty words. The agent needed six: "Login flow broken. Find the bug."
There are real mechanics underneath this, and they all point the same way.
Why padding actively hurts
Your fluff competes with your facts. A model's attention over a long prompt isn't uniform: the well-documented lost-in-the-middle effect shows accuracy dropping for information buried in the middle of the context. Every "I was wondering if perhaps" is ballast that your actual constraint has to compete with. Short prompts keep the signal where the model can't miss it.
Verbosity also correlates with being wrong, in both directions. A study with a title I love, Verbosity ≠ Veracity, documents what it calls verbosity compensation: models pad their answers when they're uncertain, and longer responses come with worse performance. Padding in, padding out. When you write tight, you're implicitly demanding tight back.
The vendors say the same thing. Anthropic's own prompt-engineering guidance leads with being clear and direct, and practitioner guides converge on "as short as possible, as long as necessary". Nobody who measures this stuff recommends warming up with pleasantries.
And there's the bill. Tokens are charged both ways, and in an agent loop your message gets re-read on every tool-call hop. A polite preamble on a five-hop task is paid for five times.
Caveman mode
Matt Pocock ships this as an actual skill in his open-source skills repo. It's called caveman, and the self-description is the whole philosophy:
"Respond terse like smart caveman. All technical substance stay. Only fluff die."
The mechanics: drop articles, filler ("just", "really", "basically"), pleasantries and hedging; keep every technical term exact; quote errors verbatim; code blocks unchanged. Claimed effect: ~75% fewer tokens with full technical accuracy intact. The example from the skill file says more than I could:
Not: "Sure! I'd be happy to help you with that. The issue you're experiencing is likely caused by..." Yes: "Bug in auth middleware. Token expiry check use
<not<=. Fix:"
I adopted the underlying style guide for my own AppMaker project. The detail that convinced me was the auto-clarity exception: caveman explicitly switches itself off for security warnings, irreversible-action confirmations and step sequences where a fragment could be misread. Terse where terseness is free, full sentences where ambiguity costs. Someone thought carefully about where terseness stops being free.
What this looks like in practice
My messages to agents have converged on a pattern: fact, constraint, ask.
- "Tests fail after vitest 4 bump. Error:
<paste>. Don't touch the configs in /infra. Fix." - "Need invoice status for claimant M. from FreeAgent. Read-only."
No apology, no "could you", no recap of what the agent already knows. Errors pasted exact, never paraphrased, because the error text is the highest-density information you own. Constraints named explicitly, because the model can't respect a boundary it never saw.
There's a side effect I didn't expect. Stripping a request down to fact-constraint-ask forces you to know what you actually want before you ask for it. Half the time I catch my own confusion before the agent ever sees it.