Self-Eval Bias
SkillAI & modelsThis skill keeps an AI from rubber-stamping its own work. It detects the moment an agent starts confidently praising what it just produced and interrupts the pattern, so the work gets a real critique instead of easy approval. The result is output that has actually been questioned before it reaches you.
Available today. Use it from your connected AI after setup.
No other account needed.
Add the skill and run your AI on a task that ends with it judging its own output. Watch how that review step changes.
Then ask your AI: use the Self-Eval Bias skill
What your AI can do with it
- Detect when the agent praises its own work instead of reviewing it
- Interrupt self-approval before it becomes the final answer
- Push the agent into a critical pass over output it just produced
- Flag grading done in the same context as the work as a warning sign
- Turn confident self-praise into a closer look for real problems
What this skill tells your AI
The instructions your AI receives, as published by archive228/loopkit in skills/self-eval-bias/SKILL.md and read by ahel’s review.
An agent that just produced a plan, a diff, or a report cannot fairly grade it in the same context. The reasoning that justified writing it is still loaded — every doubt was already resolved in favor of shipping. Asked to review, the same context reliably returns "looks good, ship it." This is not review. It is rationalization wearing a review's uniform.
The pattern shows up hardest in planner/generator/evaluator architectures where the evaluator drifts toward leniency over long runs — the prompts it reads fill up with the generator's reasoning, and skepticism erodes. (See Prithvi's March 2026 post on the three-agent harness: https://blog.anthropic.com/three-agent-harness-march-2026.)
When to apply
- You just wrote code, a plan, or a claim, and the next step is "confirm it's correct".
- A reviewer verdict comes back positive with no cited line numbers, no failing case explored, no counter-example attempted.
- You're about to mark a feature
passes: true, close an issue, or hand off to the next session. - The evaluator persona in a multi-agent loop has agreed with the last N generator outputs in a row.
Procedure
- Notice the same-context tell. If the review verdict lands in under three sentences and contains "looks correct", "this should work", or "no issues found" without a cited artifact — treat the verdict as unwritten.
- Force a fresh persona. Drop the generation context. Open a new subagent, or at minimum re-prompt with only the artifact (diff, plan, output) and the acceptance criteria — no reasoning trail, no self-justification.
- Demand concrete evidence, not verdicts. The reviewer must cite: the file:line it inspected, the input it ran, the observed output, and the criterion it matched against. "LGTM" without these is a null review — discard it.
- Adversarially probe. Ask the reviewer for the strongest case where the artifact fails. If it can't produce one, the review didn't happen — the reviewer just agreed.
- Run the artifact. For code, exercise it end-to-end (see [[broken-window-check]]). For a plan, walk the first two steps concretely. Same-context confidence collapses fast against a runtime.
- Rotate the reviewer periodically. In long multi-agent loops, re-prompt the evaluator from scratch every ~5 sprints — leniency drift compounds silently.
Anti-patterns
- Self-review in the same turn. "Let me double-check my work" followed by immediate approval. The doubt has to cost something to be real.
- Praise as evidence. "This is a clean, well-structured implementation" is a vibe, not a finding. Findings cite lines.
- Positive verdict, empty failure_scenario. If the reviewer can't describe what a failure would look like, they didn't look for one.
- Rubber-stamping across a run. N consecutive "approved" verdicts from the same evaluator without a single rejection is a red flag, not a track record.
- Fixing the criterion instead of the artifact. Reviewer notices a gap, then edits the spec to say the gap is out of scope. The gap is in the artifact. Fix that.
When NOT to apply
- The output is trivial and cheap to redo if wrong (a one-line rename, a config toggle).
- A separate reviewer with a fresh context already ran and cited concrete evidence — the check has been done, don't loop on it.
Related
- [[broken-window-check]] — the runtime-driven version of "don't trust the last claim".
- [[adversarial-verify]] — the structural form of "find the strongest failure case".
- [[shift-notes]] — where you record what the fresh-persona review actually found.
Signals
- GitHub stars
- 755
- Forks
- 125
- Last commit
- Jul 2026
Advanced
- Catalog kind
- skill
- Gateway key
self-eval-bias- Source
- github.com/archive228/loopkit