- Home
- Skills
- Testing & Debugging
- prooffix
Works with the AI Agents you already use
prooffix
Stop guessing on bug fixes. Forces your AI agent to prove the bug fails first, ship a minimal patch, audit diff hygiene, and deliver command-backed proof.
$19
prooffix
Example session with this skill installed
Fix the bug where the calculate_total function in orders.py returns None instead of 0 for empty carts. Use pytest for the reproduction.
- Read your context and instructions
- Compiled the prooffix
I have reproduced the defect where an empty cart caused a TypeError due to an unexpected None return. I implemented a surgical fix and verified it with a new regression test and the existing suite.
Verification Report
| Metric | Details |
|---|---|
| Status | Fixed and verified |
| Defect | calculate_total returns None for empty input |
| Reproduction | tests/reproduce_issue.py (Failed with TypeError) |
| Fix | Initialized total to 0 at function start |
| Hygiene | 0 debug statements found; 0 tests skipped |
Regression Test Output (Before Fix)
$ pytest tests/reproduce_issue.py
FAILED tests/reproduce_issue.py::test_empty_cart_returns_zero - TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'
Verification Output (After Fix)
$ pytest tests/reproduce_issue.py tests/test_orders.py
tests/reproduce_issue.py . [ 50%]
tests/test_orders.py .... [100%]
PASSED [5/5 tests]
Implementation Diff
def calculate_total(items):
- if not items:
- return None
+ total = 0
for item in items:
total += item.price
return total
Next steps
- Review the
tests/reproduce_issue.pyfile to decide if it should be merged into the main suite. - Run the full integration suite to ensure no side effects in the checkout flow.
- Delete the temporary reproduction script before pushing.
Connects securely to your tools. The creator never sees your data.
About this skill
What it does
ProofFix turns your AI coding agent into a disciplined, evidence-first debugging engineer. Instead of rushing to edit code and claiming "fixed," the agent must follow a strict 6-step protocol backed by three local verification scripts:
- Understand & Isolate: Reads repository rules, manifests, and failing paths before modifying a single line.
- Baseline First: Detects the repository's native test runner (
scripts/detect_test_runner.py) and runs the narrowest existing check to separate pre-existing failures from new regressions. - Prove Failure Before Fixing (Red): Writes a deterministic regression test targeting observable behavior and executes it against the unfixed code to prove it fails for the exact reported defect.
- Minimal Root-Cause Fix (Green): Implements the smallest contract-preserving change at the authoritative boundary — blocking broad exception-swallowing fallbacks, falsy-value bugs, or unrelated refactoring.
- Before-and-After Verification: Re-runs the regression test, module suite, and relevant lint/typecheck/build commands, clearly distinguishing verified checks from unrun ones.
- Diff Hygiene & Report Validation: Runs
scripts/verify_diff_hygiene.pyto catch newly added.skip/.only/@pytest.mark.skip, leftoverdebugger/breakpoint()/console.log, or lockfile churn, then validates the final report withscripts/check_report.py.
Why use this skill
Standard AI prompts frequently produce plausible patches with weak assertions, mocked-out bugs, or unexecuted claims. ProofFix enforces hard non-negotiable rules: no claimed verification without observed commands, no test weakening, no fabricated output, and explicit disclosure of unrun checks and remaining risks.
What's inside (prooffix.zip)
SKILL.md— Trigger-tuned workflow instructions compatible across Claude Code, Cursor, Codex CLI, Gemini CLI, GitHub Copilot, Windsurf, OpenClaw, and 20+SKILL.mdagents.agents/openai.yaml— Codex CLI display metadata.scripts/detect_test_runner.py— Zero-dependency detector for JS/TS (npm/pnpm/yarn/bun, Vitest, Jest, Mocha, Playwright,node --test), Python (pytest/unittest), Go, Rust, and Java/JVM (Maven/Gradle).scripts/verify_diff_hygiene.py— Read-only git diff & untracked file scanner blocking skipped tests, debug leftovers, and unexpected lockfile changes.scripts/check_report.py— Schema validator ensuring every final verification report includes valid Status, Root Cause, Changes, Verification Evidence, Checks Not Run, and Remaining Risk.references/debugging-playbooks.md— Targeted reproduction tactics for JS/TS, Python, Go, Java/JVM, Rust, intermittent/concurrency issues, and performance benchmarks.references/anti-patterns-and-guardrails.md— Concrete AI shortcut traps vs. ProofFix standards.references/verification-report-template.md— Structured report template.examples/— Real executed Python (pytest) and JavaScript (node --test) walkthroughs with actual terminal outputs.
Find more skills like this on the Claude Skills Marketplace, the Codex Skills Marketplace and the Gemini Skills Marketplace, or browse Claude Skills for Testing & Debugging.
Requires an existing local test runner. Cannot verify fixes if the environment or dependencies prevent execution. Skips UI visual-only guesses without DOM/E2E tools.
How to use
- 1
Connect your agent to the Agensi MCP
Copy the prompt and paste it into Claude, ChatGPT, Cursor or any agent that supports MCP. It sets up the connection for you. Manual setup
- 2
Sign in to Agensi
Your agent shows a sign-in link. Sign in and click Allow.
- 3
Ask for what you need
Your agent loads this skill and uses it on your task. It always asks before buying a skill.
Reviews
No reviews yet
Be one of the first to try it. Every listed skill goes through the trust checks below.
Security scanned
Checked by our 8-point scan before listing
Fresh listing
Recently published to Agensi
Money-back guarantee
Doesn't do what its page promises? You get your money back.
Trust & safety
Security scan
Security scan passed today
- Software
- vitest
Node.jsjestPlaywright
Pythonmocha