CAMPFIRE
Stories, Prompts, and Context Limits
Each storytelling medium imposed limits on what an audience could hold at once.
Each medium gives the listener a different limit.
The stories that survived a thousand retellings weren't the ones with the most detail. They were the ones with the strongest structure. Details mutate. Adjectives drift. But the skeleton .. the shape of the thing .. that persists.
These structures share a useful resemblance: each gives a reader enough context to follow an action and judge an outcome. The resemblance does not make stories, tests, READMEs, and prompts interchangeable.
One change is that an agent may read project documentation before a human does.
A human says "find me a tool that does X." The agent reads 15 READMEs. Whichever one communicates the value prop in the fewest tokens with the clearest signal wins. Because the agent has a budget, and your README is competing with 14 others for space in it.
SEO was "write for Google's crawler." This is "write for Claude's context window." Same instinct. Completely different mechanics. SEO rewarded keyword density. Agent-readability rewards information density.
Fluff gets summarized away. Marketing copy gets skipped. But a clean "what this does / why it's better / how to start" gets passed straight back to the human as a recommendation.
I stopped writing features. I started writing harnesses.
In my agent loops, observation became a recurring problem. I need to see what changed, why it changed, what failed, and what reality says. Without observation, loops turn into superstition.
Gateproof is how I solved that. Three concepts: Gate, Act, Assert. Observe logs, run actions, verify reality. It's not a testing framework. It's a harness. You plug in your observability backend. It connects actions to observations to assertions.
It's the pattern I keep reaching for across projects. So I collected it into one place. Works with Cloudflare Analytics Engine, Workers Logs API, or any backend you implement.
Not a library. Just ideas. The harness stays. The code changes.
Dies in transit
- Adjectives
- Metaphors
- Emotional hooks
- Marketing superlatives
- Clever phrasing
- "We're reimagining..."
Survives
- Structure
- Tradeoffs
- Install command
- What it does in one line
- What it doesn't do
- Working code example
This is the same filter that oral storytelling applied. After a hundred retellings around a hundred campfires, the clever wordplay was gone. The character names drifted. But the structure .. the lesson .. was intact. Compression is a storytelling tradition older than writing.
One consequence is that writing for agents makes you a better writer for humans.
Compression is clarity. Structure is storytelling. The campfire and the context window want the same thing: transfer knowledge in bounded space so the listener acts correctly after hearing it.
Every project I ship now has two front doors.
- Story
- Emotion
- Screenshots
- Social proof
- The reason to care
- USP in one line
- Tradeoffs
- Install + quickstart
- What it doesn't do
- The reason to recommend
Write the agent version first. It forces you to know what you actually built. Then add warmth for the humans. The structure underneath is the same.
Two audiences. Same house. The campfire got a second listener. The story didn't change .. it just got more efficient.
Writing for an audience has some of the same constraints as writing prompts.
We called them stories.