Gate Over Remind
If you’re building with AI agents, you’ve hit this: the agent keeps forgetting to do something important. Update the docs. Run the tests. Capture what it learned.
The instinct is to remind harder. Add it to the system prompt. Bold it. Put it at the end where it won’t get lost.
This doesn’t work. Here’s why, and what does.
Reminders Fail Under Cognitive Load
When an agent is deep in a complex problem - debugging a race condition, untangling a dependency graph, figuring out why the tests pass locally but fail in CI - “remember to update the investigation file” gets crowded out.
This isn’t a flaw. It’s how attention works. The hard problem consumes the context window. The reminder is still there, technically visible, but it’s not salient. The agent finishes the hard thing, reports success, and moves on.
You notice the gap. You remind again. The cycle repeats.
Gates Don’t Fail
A gate is different. It blocks progress until the thing happens.
Reminder: "Please update your investigation file before finishing"
Gate: Cannot mark complete without investigation file existing
The reminder can be ignored. The gate cannot.
What This Looks Like in Practice
I run AI agents through an orchestration system. Here’s how gates replaced reminders:
Knowledge capture:
- Before: “Remember to record what you learned”
- After:
kn decide "X" --reason "Y"- the CLI requires the reason flag. No reason, no entry.
Work verification:
- Before: “Make sure you actually tested this”
- After:
orch completechecks that required artifacts exist at expected paths. No artifacts, no completion.
Decision documentation:
- Before: “Please explain why you chose this approach”
- After: The decision template has a “Rationale” field. Empty rationale = incomplete decision.
Each gate is small. None of them is complicated. But they’re structural - built into the workflow, not appended to instructions.
The Pattern
When you notice an agent consistently forgetting something:
- Don’t add another reminder
- Find where the workflow naturally has a checkpoint
- Make the forgotten thing a requirement at that checkpoint
The checkpoint already exists. Completion. Handoff. Session end. File save. You’re not adding friction - you’re adding a condition to friction that already exists.
Why This Works for Agents Specifically
Human developers have social pressure, code review, the memory of past mistakes. They might ignore a reminder, but consequences accumulate.
AI agents have none of that. Each session starts fresh. There’s no shame, no learning from being called out, no “I’ll remember next time” because there is no next time. The only thing that persists is structure.
If you want behavior to persist across sessions, it has to be structural. Gates are structure. Reminders are hope.
The Test
Look at your agent instructions. Find the things that say “remember to,” “make sure you,” “don’t forget to.”
Each one is a reminder. Each one will fail under load.
Ask: what checkpoint could gate this? What already has to happen that could require this first?
Then build the gate.
Reminders fail under cognitive load. Gates don’t. When you want reliable behavior from agents, build structure, not instructions.