Drop in for a virtual coffee, Wednesdays at 5:30pm

Which to reach for

It takes two questions, not one. The first is whether the rule must hold every time, or whether the odd miss is survivable. A slightly clumsy summary is cheap to fix, so an instruction is the right amount of effort. Moving money is not cheap to fix, so it is not.

The second question is the one people skip: can the rule actually be written down? Code cannot hold a vague rule. Do not refund above five hundred pounds is mechanical, so it can be enforced exactly. Do not refund when the customer is being unreasonable may matter just as much, but there is no condition you can write for unreasonable, so no amount of wanting it makes it enforceable.

That second answer is where escalation comes from. It is worth sitting with. A rule that matters but cannot be stated exactly is not a gap in your design. It is the definition of the work that needs a person. Escalation is not a fallback for when things break; it is where the rules live that only judgement can apply.

noyesyesnoA rule the job depends onMust it holdevery time?A prompt is enoughCan it be writtendown exactly?Enforce it in codecertain, instant, free to runA person decidesit matters, but no condition can capture it
Two questions, not one. A rule that can survive the odd miss is fine as an instruction. A rule that must always hold can only be enforced where it can be stated exactly. The rules that matter but cannot be written down are not a gap in the design; they are the work that needs a person.
Say it another way

“Probably seasoned right” is fine. You taste it and you adjust, so nothing is lost by the first attempt being close rather than exact. “Probably nut-free” is not a sentence anyone in a kitchen gets to say. Some outcomes have no acceptable failure rate at all. For those the answer is never a good habit or a well-briefed cook however reliable he has been for ten years. It is a separate board, a sealed tub, a written check. You are not being more careful. You are removing the chance.

And it is not either/or. Put the rule in the prompt and enforce it in code. The prompt means Claude usually does the right thing and does not waste calls on actions that will be refused anyway. The code means it cannot get through on the occasions it does not. Prompt for the tendency, code for the floor.

Doing this with Claude Code

Before you word the ask, decide whether it should be an ask at all.

Sort the job into judgement and rules. Anything with one right answer, a format, a threshold, a lookup, is cheaper, faster and certain as code. Spend Claude on the parts that genuinely need weighing up, because that is the work only it can do.

Ask both questions, not one. Must this hold every time? Can it be written down exactly? Only when both are yes is it something you can enforce. One yes on its own is not enough.

Treat the unwritable rules as escalation. When something must hold but cannot be stated as a condition, that is not a hole in the design, it is the work that needs a person. Route it deliberately rather than hoping the prompt covers it.

Notice what the asking costs. A rule in the prompt is charged in tokens and in time on every run, where the same rule in code is paid for once. At any volume that gap stops being academic.

Part of When to use AI and when not to.