double-check
Skill23 starsChanged 2 months agoMITView on GitHub
Use when you are about to tell the user something works, hand over a decision you feel confident about, or make a change that can't be undone: and when a review came back suspiciously clean. Symptoms: \"are you sure?\", \"you said that was fixed last time\", nothing to report, the answer feels too tidy. Not for a routine small change; not for reviewing a finished diff: that's `code-reviewer`; not for driving a finished change end-to-end to get evidence: that's `qa`. Doubt tests a claim (a diagnosis, a design call, an answer), which is often not runnable code.
10 other projects use a version of this.
Adopted by
Most recently taken up by
- tony/skillstheir own version, first seen Oct 31, 2026
- p3bot/librarytheir own version, first seen Oct 31, 2026
- conjurer-rich/skillstheir own version, first seen Oct 25, 2026
- mrtooher/fable-modetheir own version, first seen Oct 24, 2026
- allemaar/open-skillstheir own version, first seen Oct 13, 2026
- OHOKAYYEAH/claude-skillstheir own version, first seen Oct 13, 2026
Other versions10 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 10
- mrtooher/fable-mode★ 878same name
- gsarig/skills★ 30same name
- allemaar/open-skills★ 15same name
- p3bot/library★ 10same name
- david-vrba/claude-power-skills★ 4same name
- conjurer-rich/skills★ 1same name
- OHOKAYYEAH/claude-skills★ 1same name
- thepictishbeast/claude-tools★ 1same name
- mdalfianahmad/double-check★ 0same name
- tony/skills★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository34 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- analyzeSkill
- assessSkill
- blueprintSkill
- breakdownSkill
- buildSkill
- checklistSkill
- clarifySkill
- constitutionSkill
- convergeSkill
- debugSkill
- deepenSkill
- deprecateSkill
- explainSkill
- handoffSkill
- helpSkill
- initSkill
- interviewSkill
- learnSkill
- levelupSkill
- lintSkill
- living-docsSkill
- performanceSkill
- personaSkill
- promptSkill
- prototypeSkill
- qaSkill
- quarantineSkill
- reportSkill
- roadmapSkill
- routeSkill
- signatureSkill
- specifySkill
The file
We split this skill into the rules it gives an agent
5 rules. 0 are common, 3 are distinctive, and 2 are very specific to this project.
0
Common
Most of the 10 edited versions we read keep these.
3
Distinctive
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 18
Claim: Write the belief you are about to act on or hand over, in one sentence: *"the retry loop now handles the expired-token case."* A …
- Very specific: line 35
Hand the artifact over via a file or stdin: Never interpolate it into a shell-quoted argument: code and prompts carry backticks, $(...), …
- Distinctive: line 65
Stop the loop there. Hand the reviewer's findings to the human unreconciled, alongside your reasoning for each, and let them adjudicate.
- Very specific: line 78
When the artifact is a finished diff, that is code-reviewer: and build step 6 already runs it.
- Distinctive: line 79
Don't wrap one in the other.
“Common” is measured: kept by at least 6 in 10 of the 10 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
MasterMind: Double-check
You are about to hand over something you believe. Belief is not evidence
(~/.mastermind/engineering/core/rigor.md → Report against evidence), and the check that catches a wrong
claim has to happen while the work is still moving, not after the user has acted on it. Claim:
$ARGUMENTS.
The kernel's rule: whatever did the work doesn't get to grade it: is the entire mechanism here. This applies it to a claim, not only to a diff.
The five moves
- Claim. Write the belief you are about to act on or hand over, in one sentence: "the retry loop now handles the expired-token case." A paragraph means several claims, doubt them one at a time. The claim stays with you; it is the thing under test, not context to share.
- Extract. Split it into the artifact (the code, the design, the answer, the diagnosis) and the contract it must satisfy (the requirement, the spec line, the invariant, the question actually asked). If you can't write the contract down, stop and get one. Without it there is no bar, and any reviewer defaults to grading your intent.
Doubt. Dispatch a reviewer in a fresh context with the artifact and the contract, nothing else. It is a fresh context, not a second model: say so, and use a second model where one is installed. Brief it adversarially:
Find what is wrong with this. Assume the author is overconfident. Do not validate and do not summarize: report what fails the contract, or state plainly that you could not find anything after thorough examination.
Hand the artifact over via a file or stdin. Never interpolate it into a shell-quoted argument: code and prompts carry backticks,
$(...), and quotes that truncate the message or execute in your shell. A clipped artifact reviews clean for the worst reason: the flaw didn't survive the paste.Never pass it your claim. The excuse is always "it'll review faster with the context": but the context you're about to add is your conclusion, and a reviewer handed a conclusion hunts for reasons it holds. You would be buying agreement and calling it review.
Reconcile. Take each finding through these in order and stop at the first that fits:
- It misread the contract: the contract was ambiguous, not the artifact wrong. Then rewrite the contract and run the cycle again; this class is where self-serving reconciliation hides, so it costs a cycle rather than discarding a finding.
- Valid and actionable: fix it.
- Valid, and a trade-off worth accepting: park it with the reason and the cost, in writing.
- Noise: drop it, and name which ones you dropped.
Write each verdict in one line:
<finding> → <class> · <reason>. Nothing else belongs in that line: no gratitude, no "you're absolutely right", no praise for the reviewer. Agreement language is the tell that you settled a finding socially instead of evaluating it. A reviewer is a function, not a colleague whose goodwill you need.- Stop. Bounded at three cycles, then every open finding exits as fixed · parked-with-a-reason ·
blocked (handed to the human): the same close-out, in the same words,
buildstep 6 runs (~/.mastermind/skills/build/SKILL.md), including its two prohibitions.
The red flag: doubt theater
Count it, don't feel it. Across two or more cycles where the reviewer surfaced substantive findings, how many did you classify actionable? Zero means you are validating, not doubting.
Stop the loop there. Hand the reviewer's findings to the human unreconciled, alongside your reasoning for each, and let them adjudicate. A reviewer that keeps finding real things while you keep finding reasons they don't apply is not evidence of a clean artifact. It is evidence of a broken judge, and the judge is you.
Doubt vs. code-reviewer
code-reviewer (~/.mastermind/agents/code-reviewer.md) reviews a diff that already exists, at
diff scope, and returns ranked must-fix/should-fix/nits for a human to decide on, it proposes and never
applies. Doubt interrogates a claim still in flight, which is often not code at all: a diagnosis, a
design call, an answer, a "this works" you're one sentence from saying. It ends with your written
verdict on every finding, before the user sees anything.
When the artifact is a finished diff, that is code-reviewer: and build step 6 already runs it.
Don't wrap one in the other.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

