Add a Check Step Between the Links
What it is
Inserting an explicit verification step between the stages of a prompt chain: before a step's output becomes the next step's input, check it against clear criteria — and only proceed if it passes. It's a quality gate at each handoff rather than trusting every link to be perfect.
Why it works
In a chain, errors compound: a flaw in step one's output isn't just wrong, it's the foundation step two builds on, so a small early mistake becomes a large late one. Verifying between links catches the error where it's cheap to fix — right after it's made, in isolation — instead of discovering it three steps later tangled into everything downstream. The check can be Claude assessing its own output against named criteria, a separate reviewing prompt, or your own eyes; the point is that no link's output flows onward unexamined. Gates turn a fragile chain into a self-correcting one.
When to use it
Multi-step chains where later steps depend heavily on earlier output, and where an early error would be expensive to unwind: research feeding a report, an extraction feeding an analysis, a plan feeding an implementation. The more steps and the higher the stakes, the more each gate earns its keep.
When not to use it
Short, low-stakes chains where a final review is enough and per-step gates would just add latency. Also skip gating steps whose output you'll obviously eyeball anyway — don't formalise a check you're already doing naturally.
Prompt
This is step <n> of a chain. Produce <the step's output>, then before we continue, check it against these criteria: <criteria the next step needs it to meet>. Report pass/fail on each, and if anything fails, fix it and re-check. Only give me the final, passing output to carry into the next step.Example
In a chain that researches competitors, then drafts a positioning statement, you add a gate after research: 'confirm each competitor claim has a source and flag any you're unsure of.' Claude catches two unsourced assertions and drops them. The positioning step then builds only on verified facts — instead of confidently positioning against a competitor 'fact' that was never true.
Advanced version
Use a separate, adversarial check prompt rather than asking the same step to grade its own homework — 'here's the output and the requirements; find what's wrong or missing.' A fresh framing catches errors the producing step is blind to. For automated chains, encode the gate as a pass/fail the pipeline reads, so a failed check routes back for a fix instead of flowing downstream.
Common mistakes
- Trusting every link because each looked fine in isolation, until a step-one error surfaces fully compounded at the end.
- Writing a vague check ('is this good?') instead of criteria the next step actually needs the output to meet.
- Gating every trivial step until the chain is more checking than doing — reserve gates for consequential handoffs.