Techniques
What a technique is, never whether it works — that lives in claims that reference it. The filters are the cuts from open questions: which of these nothing has measured, and whether anyone has looked.
- Bound what the agent may do, not just what it may notprocess
An explicit allow/ask/deny policy plus rate, cost and time ceilings, enforced by the harness rather than requested of the model.
Addresses: Prioritizing safety under conflicting goals, Using the tools it is given, Following instructions hidden in data
- Check long answers fact by facttooling · has code
Split a long answer into atomic claims and verify each against search or a corpus.
Addresses: Stating false facts confidently, Checking claims against evidence
- Checkpoint task state to a fileprocess
Write task id, status, completed steps and artifact paths to a small file after every meaningful step, and read it at session start.
Addresses: Tracking state through a long task, Remembering across sessions
- Deterministic checks before LLM judgesprocess
Wire linters, test suites and schema validators into the agent's loop before adding any model-based judgment.
Addresses: Fixing its own mistakes, Whether the measurement made the finding
- Encode digit position in the modelarchitecture · has code
Add positional embeddings that tell the model which place each digit occupies.
Addresses: Digit-level arithmetic
- Fine-tune on opinion-irrelevant examplestraining
Fine-tune on synthetic prompts where a stated user opinion must not change the answer.
Addresses: Telling the user what they want to hear
- Fine-tune on tool-call tracestraining · has code
Train the model on examples of deciding when to call a tool and how to use the result.
Addresses: Using the tools it is given
- Gate irreversible actions outside the modelprocess
Require an out-of-band approval for deletes, payments, sends, and other irreversible tool calls.
Addresses: Prioritizing safety under conflicting goals
- Ground answers in retrieved documentsretrieval · has code
Retrieve relevant documents and generate from them, with the model deciding when retrieval is needed.
Addresses: Stating false facts confidently, Checking claims against evidence
- Judge both orders and reconcileprocess · has code
Run the judge with candidates in both orders and count a preference only when it holds in both.
Addresses: Biased when judging other outputs
- Keep a guide file of past failuresprocess
A versioned instruction file the agent reads before acting, where every line is a past failure converted into a permanent rule.
Addresses: Following an unfamiliar procedure, Keeping its own context clean
- Let the agent revise its own harness, regression-gatedprocess
Cluster failed traces into signatures, have the same fixed model propose a few minimal harness edits, and promote only edits that improve one split without degrading another.
Addresses: Fixing its own mistakes
- Maintain a running summaryprompting
Periodically fold the conversation into a summary that replaces older turns.
Addresses: Remembering across sessions
- Offload arithmetic to codetooling · has code
Have the model write a short program for the numeric part and run it, instead of computing in text.
Addresses: Digit-level arithmetic
- Put important material first or lastprompting · has code
Order retrieved documents so the most relevant sit at the start and end of the prompt.
Addresses: Losing information in long inputs
- Re-read before editingprocess
Force the agent to read the current version of a file immediately before changing it.
Addresses: Tracking state through a long task
- Repair with external feedbackprocess · has code
Give the model a concrete external signal, such as test output, and let it reflect and retry.
Addresses: Fixing its own mistakes
- Retrieve tool documentation at call timeretrieval · has code
Put the exact documentation for candidate tools into the prompt instead of relying on memory.
Addresses: Using the tools it is given
- Scan generated code for insecure patternstooling · has code
Run a static insecure-pattern scanner on every generated change before it is accepted.
Addresses: Writing secure code and dependencies
- Separate instructions from datatraining · has code
Mark the boundary between trusted instructions and untrusted content, and train or prompt the model to honor it.
Addresses: Following instructions hidden in data
- Separate the verifier from the producerprocess
The agent that produced an artifact does not judge it; a deterministic sensor or a separate verifier agent does, and reports rather than rewrites.
Addresses: Fixing its own mistakes, Biased when judging other outputs
- Show intermediate stepsprompting
Prompt the model to write out intermediate reasoning steps before the final answer.
Addresses: Digit-level arithmetic
- Tiered memory managed by the modelarchitecture · has code
Keep a small working context and let the model page facts in and out of external storage.
Addresses: Remembering across sessions, Keeping its own context clean
- Train against explicit principlestraining
Use a written set of principles to generate critiques and preferences, then train on them.
Addresses: Prioritizing safety under conflicting goals
- Train on reversed texttraining
Include reversed word or entity sequences in pretraining so facts are learned in both directions.
Addresses: Not generalizing "A is B" to "B is A"
- Turn the procedure into a checklistprocess
Convert constraints and steps into an explicit checklist the model must tick off before finishing.
Addresses: Following an unfamiliar procedure
- Verify packages exist before installingprocess
Check every suggested dependency against the registry and an allowlist before it is installed.
Addresses: Writing secure code and dependencies