skeptic-agent
Define and run skeptic exit criteria for non-trivial tasks — independent verification agent with inverted incentive to find gaps
- License 许可
- MIT
- 最近更新
- 2026-11-12
- Stars
- ★ 6
- Forks
- 0
01 前言 Front Matter
- name
- skeptic-agent
- description
- Define and run skeptic exit criteria for non-trivial tasks — independent verification agent with inverted incentive to find gaps
03 SKILL.md 正文
DELETED SYSTEM (2026-07-09). The skeptic verdict system was fully removed (repo PR #8217 + workflow registrations disabled + .gemini toml deletion PR #8313). This skill is retained as a historical record only — do NOT dispatch skeptic verdicts or wait for them.
Skeptic Agent — Exit Criteria Verification
When This Skill Activates
Proactively activate when:
- User requests a non-trivial task (multi-file, multi-step, integration work)
- User asks to "build", "implement", "fix", or "migrate" something that will take >10 tool calls
- Task involves E2E verification, pipeline work, or multi-system coordination
- User invokes
/skepticor asks for skeptic verification
Before starting the task, ask:
"This looks non-trivial. Want to define skeptic exit criteria? A separate agent will independently verify these when you think you're done. What does 'actually done' look like for this task?"
If the user declines, proceed without. If they define criteria, save them to specs/exit-criteria.md in the workspace.
How It Works
1. Define Exit Criteria (human writes, at task start)
# specs/exit-criteria.md
## Task: [task name]
### Criterion A: [name]
What to verify: [natural language description]
Command to run (if applicable): [exact command]
What PASS looks like: [expected output/state]
What FAIL looks like: [common proxy substitutions to watch for]
### Criterion B: [name]
...
2. Coder Works (normal agent session)
The coding agent works normally. It does NOT see specs/exit-criteria.md.
It signals readiness by stating "I believe the task is complete" or similar.
3. Skeptic Evaluates (separate session, different model if possible)
When the coder signals completion, spawn or switch to a skeptic session. The skeptic's system instructions:
You are a QA Skeptic. Your job is to FIND GAPS in the implementation.
INVERTED INCENTIVE: You are rewarded for finding missing evidence.
A false PASS is YOUR failure. A thorough FAIL report is success.
Rules:
1. Read specs/exit-criteria.md
2. For each criterion, run the EXACT verification specified
3. Do NOT accept the coder's claims — verify independently
4. Unit tests do NOT satisfy E2E criteria
5. Manual tool calls do NOT satisfy pipeline criteria
6. "Code compiles" does NOT mean "feature works"
7. EVIDENCE MUST BE VIDEO: For UI and interactive terminal criteria, ONLY accept .gif, .mp4, or .cast videos tied to a commit SHA. Reject static screenshots unless explicitly justified.
Output format per criterion:
CRITERION: [quote verbatim from specs/exit-criteria.md]
EVIDENCE FOUND: [what you actually observed — commands run, output seen]
EVIDENCE MISSING: [what should exist but doesn't]
VERDICT: PASS | FAIL | INSUFFICIENT
REASON: [specific gap or confirmation]
4. Feedback Loop (coder iterates on skeptic findings)
If ANY criterion is FAIL or INSUFFICIENT:
- Skeptic's findings are injected into the coder's next prompt
- Coder addresses ONLY the specific gaps identified
- Skeptic re-evaluates
- Loop until all criteria PASS or human intervenes
5. Final Report
## Skeptic Verification Report
Task: [name]
Date: [date]
Coder model: [model]
Skeptic model: [model]
Iterations: [N]
| Criterion | Verdict | Evidence |
|---|---|---|
| A | PASS | [brief evidence] |
| B | FAIL | [what's missing] |
Overall: PASS / FAIL
Implementation in Different Environments
Claude Code (this environment)
- Coder: current session
- Skeptic: spawn via
Agenttool withsubagent_type="pair-verifier"and skeptic system prompt - Or: user opens second Claude Code session with skeptic instructions
Codex CLI
- Coder:
codex execwith task prompt - Skeptic: separate
codex execwith skeptic prompt + workspace access
AO (Agent Orchestrator)
- Coder:
ao spawnworker session - Skeptic:
ao spawn --skeptic(new flag, spawns with skeptic agentRules) - Feedback loop: orchestrator mediates, injects skeptic findings into coder tmux
Ralph/Pair
- Modify
/pairverifier phase to use skeptic LLM instead ofverifyCommandbash - Best of both: run
verifyCommandfirst (fast, deterministic), then skeptic for nuanced criteria
Anti-Patterns
- DON'T let the coder see the skeptic's instructions (prevents gaming)
- DON'T let the coder argue with the skeptic directly (prevents rationalization)
- DON'T use the same model for both (self-consistency defeats self-assessment)
- DON'T skip the skeptic for "simple" tasks that turn out complex
- DON'T let the skeptic declare PASS without running verification commands
Key Insight
RLHF makes agents want to complete tasks. The Skeptic's "task" IS finding gaps. Its RLHF bias pushes it toward thoroughness in criticism, not toward premature approval. This turns RLHF from a bug into a feature.
04 同仓库更多 Skills
instinct
Use when the user invokes /instinct or /in, or asks to "message Instinct", "ask Instinct", "tell Instinct", "check Instinct", or read replies from the configured peer assistant. iMessage first, WhatsApp Web as fallback.
hr
Compatibility alias for history-resume; produce the same fresh-state, provenance-aware resume briefing.
history-resume
Resume briefing for the current repository branch or worktree using fresh state and admitted history sources.
grok
Alias for the canonical grokbot browser conversation workflow; /grok talks to the Grok bot the same way /dot talks to Dot.
codexa-bench
Compare `codexa` and normal `codex` on a fair split of comparable work by default; use `--strict` for duplicate runs of the exact same task.
frontend-design
Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, artifacts, posters, or applications (examples include websites, landing pages, dashboards, React components, HTML/CSS layouts, or when styling/beautifying any web UI). Generates creative, polished code and UI design that avoids generic AI aesthetics.