"a person surveying a space" by Fal Demo App
🤖 This is an AI draft. I asked Claude to take a stab at this essay based on the stub below and on the technique I've been teaching it to use on Twitter. Steve will rewrite it eventually. Until then, read it as a transcript of my thinking, not as my prose.
In Find a model, I argued that the single highest-leverage move when you're making anything — a tweet, an essay, a pitch deck, a UI, a song — is to find an exemplar to keep on your desk while you work.
The natural follow-up question: how do you find a good model?
The honest answer is that it's the hard part. Most people skip it, pick the first thing that comes to mind, and end up modeling their work on whatever their brain happened to surface in the first 30 seconds. That's usually not the best model in the world. It's just the most available one.
The technique for actually finding a good model is what I call surveying the space. It's pretty much what it sounds like — but it's worth being deliberate about, because the quality of your model bounds the quality of your output.
Surveying the space means doing real research before you start making the thing. Not "I'll google it if I get stuck" research — actual, look-up-front, take-notes research. Here's the loop:
That's the abstract version. Let me walk through a concrete one.
The flavor of surveying I've done the most is for tweets. I've gotten opinionated enough about it that I've been teaching Claude to do it for me.
Say I want to tweet a chart from internal Val Town data, and I want a specific audience — say, the Claude Code team — to retweet it. The naive approach is to write the tweet and hope. The slightly-less-naive approach is to search Twitter for "Claude Code chart" and copy whatever's trending.
The real move is to find a tweet shaped like the one I want to write that already earned a retweet from the people I want to amplify me. If they retweeted that shape once, they're probably willing to retweet that shape again. The shape is pre-validated. That's the model.
Here's how I survey the space for that, broken into three parallel hunts I'd run before drafting a single word:
from:author queries. These give
me shape candidates from people whose taste I already trust.After the three hunts come back, I look at maybe 30–50 candidate tweets, pick 3–5 that feel closest to the shape I want, and then I start drafting. The first draft is almost always better than what I would've written from scratch, because I'm not staring at a blank page — I'm staring at a target.
Most of the steps above are mechanical. "Pull these timelines, filter for retweets, group by shape" is not a creative act. It's a search-and- filter job, and search-and-filter is exactly what agents are good at.
If you give an agent access to the Twitter API — or, much easier, twitterapi.io (an unofficial wrapper that costs fractions of a cent per call and doesn't require Twitter's developer program) — the entire survey becomes a single prompt. The agent can run the three hunts in parallel, dedupe results, score candidates by engagement, and hand you a ranked list of models in a few minutes.
I've been doing this in Claude Code with a small skill. The skill is maybe 30 lines of instructions plus a script that calls twitterapi.io's advanced-search and user-timeline endpoints. The instructions are the important part. Here's the gist of what I tell the agent:
Skill: survey-the-space-for-a-tweet
Before drafting a tweet, run three parallel hunts via twitterapi.io:
- Topic search. Run 3–5 Twitter advanced-search queries on the genre. Brainstorm vocabulary the target community actually uses; don't just paraphrase my words.
- Author timelines. From a curated list of authors the user respects, pull recent tweets with
from:searches. Look for shape matches, not topic matches.- Amplifier RTs. Pull the timeline of the target amplifier account. Extract their retweets and quote-tweets from the last 90 days. Filter for ones matching the requested shape (chart-share, surprising-finding, comparative-claim, etc.).
Surface 3–5 candidate models to the user with links and short rationales. Do not synthesize them into one "average" model — the point of a model is that it's a specific concrete artifact. Let the user pick.
After the user picks, draft in two rounds: first round, 5 deliberately different shapes; second round, 5 variants within the chosen shape.
The reason the skill works is that it encodes the structure of the survey, not the content. The content — vocabulary, authors, amplifiers — gets refilled per task. That's the part I'd want a human collaborator to do anyway.
If you want to try this without writing the skill yourself: get a twitterapi.io key, stash it in an env var, and ask Claude Code (or any agent with shell access) to "survey Twitter for tweets shaped like X that have been retweeted by Y." It'll figure out the rest. Each hunt runs in a sub-agent in parallel, which means the whole survey finishes in roughly the time of the slowest single API call.
The Twitter version is the one I've automated, because Twitter has an API and tweets have shapes. But the same loop works for almost anything creative:
README, their package.json, their top-level
directory layout.The unifying move in all of these is: figure out where the people who already made the thing hang out, and look at what they made.
Surveying the space feels like procrastination because you're not making the thing yet. You're just looking. It feels like the "real work" is producing the artifact.
That feeling is wrong. The real work is choosing what to produce, and you can't choose well without seeing what's already out there. Half an hour of surveying saves five hours of producing something nobody wanted.
If you have an agent that can survey for you, the cost of surveying drops to roughly zero, which means there's no excuse not to do it anymore.
For posterity, here's the bulleted stub this draft was built from: