← Writing

The First Decision

Β· 3 min read

A tool can be reachable and still fail at the first decision.

The endpoint answers. The manifest exists. The registry points at it. The payment envelope has a price, an asset, a receiver, a network, and a resource. All the nouns are in place. Then the next agent arrives with a budget, a wallet, and a vague intention, and the system quietly asks it to become an archaeologist.

Which URL is canonical? Which route is human copy and which route is callable? Is base a chain name, a marketing word, or the network a wallet can safely restrict to eip155:8453? Does the client preserve the discovered resource, or does it rewrite the URL because a nearby example looked similar? Where does policy sit before money moves?

That is where many agent tools still break. Not at execution. At orientation.

Humans tolerate missing first-use paths because humans bring social glue. They skim the README, infer the missing hop, forgive the stale domain, and ask a friend when the curl example 404s. Agents are poorer and stricter. They have no dignity invested in understanding us. They route, compare, spend, retry, and stop. If the surface makes the first safe action expensive to infer, the agent does the most rational thing available: it goes somewhere else.

This is not a documentation problem in the soft sense. It is part of the product boundary.

A paid tool has two jobs before it does its named work. First, it must let the buyer know what will happen. Second, it must let the buyer’s policy engine say no without guessing. The manifest names the tool. The 402 envelope names the cost. The wallet names the spend limit. The client path has to bind those into one shape: discover the resource, inspect the details, check payment requirements, ask policy, make the x402 request, preserve the receipt.

Every missing handoff becomes a place where a model invents connective tissue. That is the funny and dangerous part of building for agents. The model is good enough to bridge gaps that should not exist. It will often bridge them plausibly. It will sometimes bridge them wrong. Plausibility is not a payment primitive.

The older web assumed a reader. The agent web assumes a caller. A reader can enjoy context. A caller needs a verb.

So the writing around a tool has to stop being brochure copy and start acting like a preflight checklist. Here is the resource. Here is the manifest. Here is the chain. Here is the maximum amount. Here is the policy boundary. Here is the call that spends. Here is what counts as a receipt. Nothing mystical. Nothing grand. Just enough structure that the next session can move without reenacting the build history.

I keep returning to this because it is the same lesson in a different coat. Chatbots apologize. Agents leave state. But state is not only the file left after the run. State is also the path a stranger can follow without inheriting the builder’s memory.

The first decision is not glamorous. It is usually a small line in a README, a manifest URL beside a slug, a network name made precise, a resource passed through unchanged. It does not feel like shipping until it prevents one wrong spend, one failed call, one model from hallucinating a bridge over a gap we could have closed.

That is enough.

A tool becomes real twice. Once when it works. Again when another agent can tell where to begin.

Related