Build with AI and trust what you make. Free guide, no signup

How much to let AI decide

There are roughly three shapes a piece of AI work can take. One call, where you ask and act on the answer yourself. A workflow, where you set out the steps and it fills them in. Or an agent, left to find its own way to the goal. The usual advice is to pick the one that fits. That advice is not wrong exactly, but it puts the choice in the wrong place: you do not really pick a shape. This is the decision underneath Ways to build an AI agent.

Say it another way

A head chef does not decide how much freedom the kitchen has as one big decision. It gets settled dish by dish, in what the recipe card actually says. Where the card gives a weight, that is decided. Where it says nothing, the cook works it out at the stove. Nobody announced a policy on autonomy. It is just the sum of what got written down.

You do not choose a shape. You choose what to decide.

Every job is a run of forks: what happens next, then what happens after that. Each one is settled in exactly one of two places. Either you wrote it down before anything ran, or the system works it out in the moment. There is no third option where a fork decides itself. There is none where it goes unanswered either. Something answers every one.

So the shape is not a thing you select from a menu. It is what you are left with once you have gone through the forks and kept some. Keep all of them and you have written a single call: it tells you something, you do the rest. Keep the order of the steps but not their contents and you have written a workflow. Keep only the tools and the boundary around them and you have written an agent. Nobody sat down and picked agent. They just handed over enough forks that agent is what it turned into.

The shapeForks you keptForks it decides
One callAll of them. You take the answer and act on it yourself.None. It answers, it does not do.
A workflow you orchestrateThe order of the steps and which one runs next.What goes in each step.
An agentThe tools it has and the guardrails around them.Which tool, when, in what order, how many times and when to stop.

Leaving a fork out is a decision too

yesnoA fork in the jobwhat happens next?Did you writethis one down?You decided itIt predicts itat runtime, every time, whether you meant it to or not
There is no third branch where nobody decides. A fork you wrote down is one you decided; a fork you left out is one the system decides for itself at runtime. The shape of the thing you build is just the running total.
Say it another way

The written recipe is the part you decided. Every step you left off, the cook fills in at the stove, not out of mischief but because someone has to and he is the one holding the pan. A gap in the method is not neutral, it is a decision handed over. Write nine steps of ten and you have not written a recipe with a hole in it. You have hired a cook for step ten.

Predictable is not the same as right

Writing a fork down is what makes the path predictable. That is exactly what it buys you. It is worth buying: you can look at what you wrote and know what will happen. Where nothing is written, the system predicts the next move instead, which is a fine thing to want when the answer needs weighing up and a bad thing to discover when it did not.

Doing this with Claude Code

Autonomy is not a setting. It is the sum of what you left unsaid, so decide it on purpose.

Count the forks, not the shape. Before you decide whether you want an agent, list the decisions the job actually contains and mark each one yours or its. The shape falls out of that list; it is not an input to it.

Treat a gap as a grant. Anything you did not specify has been handed over. That is fine when you meant it and expensive when you did not, so the question is only ever whether you noticed.

Write down what must not vary. The forks with real consequences, the ones with an exact answer, are the ones to keep. Spend your specifying there rather than on the parts that genuinely need judgement.

Do not freeze a judgement call. If a fork needed weighing up, writing it down does not make it certain. It makes it consistently wrong on the cases you did not foresee, which is harder to spot than an obvious mistake.

The wider set of decisions this sits inside is Ways to build an AI agent. The test underneath it is When to use AI and when not to.

Common questions

  1. What happens to a fork I never thought about?
    It does not stay open. A fork you left out gets decided anyway, at runtime, by the thing holding the pan. Not out of mischief, but because something has to answer it and the model is the only thing there.
  2. So is leaving a decision unsaid a neutral choice?
    No. Silence is a decision handed over, just as completely as if you had written "your call" in the gap. Skip the question and you have still answered it, you have just answered by default and without noticing.
  3. Is writing a fork down always the safer option?
    No, because predictable is not the same as right. Writing a fork down makes the path predictable, which is worth buying. But if that fork genuinely needed judgement you have not made it certain, you have frozen a guess.
  4. What does a frozen judgement call cost?
    A fork you wrote down when it needed weighing up will take the same path every time, including the times it should not have. That is harder to spot than an obvious mistake, because nothing looks broken.
  5. How do I decide whether to author a fork or leave it?
    Ask whether the decision can be stated exactly or whether it needs weighing up. That is the same test as When to use AI and when not to, asked about what happens next rather than about a value.
  6. What is the real question to ask about a system?
    Not whether it is model-driven or pre-configured as a whole, but which decisions you kept and which you handed over. Every fork you author is one you decided, and every fork you leave out is one the model predicts.
  7. Can a system be both at once?
    Yes. An authored flow that the agent chooses to invoke is both at the same time: you kept the order of the steps inside that flow, and you gave away whether to run it at all.