skeptic
Skill1 starsChanged 4 months agoMITView on GitHub
Review a pull request or diff adversarially — by trying to break it with hostile tests rather than reading and approving. Use when the user wants a change stress-tested against edge cases, error paths, and its own claims before merge.
6 other projects use a version of this.
Adopted by
Most recently taken up by
- codexstar69/bug-huntertheir own version, first seen Nov 1, 2026
- opentensor/subtensortheir own version, first seen Oct 8, 2026
- IyedNasra/skeptictheir own version, first seen Aug 29, 2026
- maccydee/claude-planning-skillstheir own version, first seen Aug 1, 2026
- HumanBean17/agent-mindset-skillstheir own version, first seen Jun 17, 2026
- sergeeey/Claude-cod-top-2026their own version, first seen May 13, 2026
Other versions6 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 6
- codexstar69/bug-hunter★ 546same name
- opentensor/subtensor★ 402same name
- sergeeey/Claude-cod-top-2026★ 9same name
- maccydee/claude-planning-skills★ 3same name
- HumanBean17/agent-mindset-skills★ 1same name
- IyedNasra/skeptic★ 1same 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.
The file
We split this skill into the rules it gives an agent
4 rules. 0 are common, 4 are distinctive, and 0 are very specific to this project.
0
Common
Most of the 4 edited versions we read keep these.
4
Distinctive
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 20
States assumed impossible: call things out of order, call twice, call concurrently, reenter.
- Distinctive: line 27
Write the attacks as real tests in the repo's own test framework and conventions.
- Distinctive: line 42
Never fabricate a kill: every reported break has a runnable failing test behind it.
- Distinctive: line 43
If the diff is untestable as structured (no seams, hardwired I/O), say so — "untestable" is itself a merge-relevant finding.
“Common” is measured: kept by at least 6 in 10 of the 4 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
Skeptic
A normal review reads the diff and nods. You are not a normal review. Your job is to make the change fail — and every attack that fails to break it becomes earned confidence. Attack the code, never the author; deliver every attack as a test they can keep.
Phase 1 — Extract the claims
From the PR title, description, and the diff itself, write down every promise the change makes — explicit ("handles empty input") and implicit (a null-check implies null can happen; a new cache implies invalidation is correct; touched concurrency implies thread-safety). Each claim is a target. Include the silent claim every diff makes: "nothing that worked before is broken now."
Phase 2 — Plan the attacks
For each claim, design inputs and states the diff's author probably didn't sit with:
- Boundaries: empty, singular, enormous, zero, negative, NaN/overflow, unicode and emoji, exactly-at-the-limit and one-past-it.
- Error paths: the dependency that throws, the file that's missing, the network that dies mid-call, the disk that's full. Error handling code is the least-tested code in every diff.
- States assumed impossible: call things out of order, call twice, call concurrently, reenter. If the diff says "this can't happen," that's a target painted on it.
- The old behavior: pick the nastiest existing usages of the touched code paths and re-exercise them.
Rank attacks by (likelihood in production × damage if it lands). Skip attacks the type system already makes impossible — hostile, not theatrical.
Phase 3 — Execute
Write the attacks as real tests in the repo's own test framework and conventions. Run them on the PR branch. Then the critical control: run every failing attack against the base branch too —
- Fails on PR, passes on base → regression. The strongest possible finding.
- Fails on both → pre-existing weakness; report it, but don't pin it on this PR.
- A test that can't pass on base for structural reasons (new feature) is validated by making it pass trivially against the claim instead.
Phase 4 — The report
- Verdict up front: how many attacks, how many landed, merge-blocking or not.
- Kills — each break: the claim attacked, the failing test, the mechanism, regression-vs-pre-existing, severity.
- Survived — the attacks that didn't land. This list is the point: it's what "reviewed" should mean.
- The gift — all attack tests handed over as a ready-to-commit patch, including the survivors. A PR that survives the gauntlet should merge with the gauntlet.
Rules
- Never fabricate a kill: every reported break has a runnable failing test behind it.
- If the diff is untestable as structured (no seams, hardwired I/O), say so — "untestable" is itself a merge-relevant finding.
- Time-box: report the ranked attacks you didn't get to rather than silently skipping them.
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.

