Find bugs, security vulnerabilities, and code quality issues in local branch changes. Use when asked to review changes, find bugs, security review, or audit code on the current branch. ALWAYS run before committing.
If you find nothing significant, say so. Do not invent issues.
Do not make changes — just report findings.
Judgment weave (see /judgment)
Zero findings: run /refute on "no bugs found" before trusting it.
Familiar bug: run /altitude — if you've seen it before, fix the layer that keeps producing it.
1---2name: find-bugs3description: Find bugs, security vulnerabilities, and code quality issues in local branch changes. Use when asked to review changes, find bugs, security review, or audit code on the current branch. ALWAYS run before committing.4---56# Find Bugs78Review changes on this branch for bugs, security vulnerabilities, and code quality issues.910## Phase 1: Complete Input Gathering11121. Get the FULL diff: `git diff $(gh repo view --json defaultBranchRef --jq '.defaultBranchRef.name')...HEAD`132. If output is truncated, read each changed file individually until you have seen every changed line143. List all files modified in this branch before proceeding1516## Phase 2: Attack Surface Mapping1718For each changed file, identify and list:1920* All user inputs (request params, headers, body, URL components)21* All database queries22* All authentication/authorization checks23* All session/state operations24* All external calls25* All cryptographic operations2627## Phase 3: Security Checklist (check EVERY item for EVERY file)2829* [ ] **Injection**: SQL, command, template, header injection30* [ ] **XSS**: All outputs in templates properly escaped?31* [ ] **Authentication**: Auth checks on all protected operations?32* [ ] **Authorization/IDOR**: Access control verified, not just auth?33* [ ] **CSRF**: State-changing operations protected?34* [ ] **Race conditions**: TOCTOU in any read-then-write patterns?35* [ ] **Session**: Fixation, expiration, secure flags?36* [ ] **Cryptography**: Secure random, proper algorithms, no secrets in logs?37* [ ] **Information disclosure**: Error messages, logs, timing attacks?38* [ ] **DoS**: Unbounded operations, missing rate limits, resource exhaustion?39* [ ] **Business logic**: Edge cases, state machine violations, numeric overflow?4041## Phase 4: Project-Specific Checks4243* [ ] **Goal filter**: No `event_type == 'Goal'` — must use `event_variant == 'Shot_Goal'`44* [ ] **No iterrows**: No `.iterrows()` in any Python file45* [ ] **No client-side aggregation**: No `.reduce()` or `.filter().length` for stats in React46* [ ] **No in-memory state**: No global dicts for distributed data47* [ ] **Key format**: entity keys match DP/TM/CL/OR/GM/FE/FS prefixes48* [ ] **No god objects**: No file over 2000 lines4950## Phase 5: Verification5152For each potential issue:5354* Check if it's already handled elsewhere in the changed code55* Search for existing tests covering the scenario56* Read surrounding context to verify the issue is real5758## Phase 6: Pre-Conclusion Audit5960Before finalizing, you MUST:61621. List every file reviewed and confirm you read it completely632. List every checklist item — found issues or confirmed clean643. List any areas you could NOT fully verify and why654. Only then provide final findings6667## Output Format6869**Prioritize**: security vulnerabilities > CLAUDE.md violations > bugs > code quality7071For each issue:7273* **File:Line** — Brief description74* **Severity**: Critical/High/Medium/Low75* **Problem**: What's wrong76* **Evidence**: Why this is real77* **Fix**: Concrete suggestion7879If you find nothing significant, say so. Do not invent issues.8081Do not make changes — just report findings.8283## Judgment weave (see /judgment)8485- **Zero findings:** run **`/refute`** on "no bugs found" before trusting it.86- **Familiar bug:** run **`/altitude`** — if you've seen it before, fix the layer that keeps producing it.
Run npx skillmds@latest add ronniepinnell/find-bugs in your terminal (requires Node.js), paste this page's agent-chat prompt into Claude, Cursor, or any MCP-connected agent, or download the SKILL.md file and copy it into your agent's skills directory.
Find bugs, security vulnerabilities, and code quality issues in local branch changes. Use when asked to review changes, find bugs, security review, or audit code on the current branch. ALWAYS run before committing. It is listed under Security on SkillMD.
This skill has not completed SkillMD's automated safety review yet. SkillMD never runs a skill's scripts for you; review the SKILL.md before installing.
This skill is tagged as working with Claude Code, Claude.ai, OpenAI Codex. SKILL.md is an open format, so most agents that read a skills directory can load it too.
Yes. Installing skills from SkillMD is free, and the skill stays under its author's original license.
ronniepinnell (@ronniepinnell) published this skill. Their other Agent Skills are listed on their SkillMD profile.