Best for
- A diff is ready for review and correctness is the risk
- /review-changes dispatches its "bug" slice to this skill
- /do-and-judge or /judge is invoked on a non-trivial code change
event4u-app/agent-config/src/skills/judge-bug-hunter/SKILL.md
Use when a diff needs correctness review — null-safety, edge cases, off-by-one, races, error handling — dispatched by /review-changes, /do-and-judge, /judge, even without 'judge'.
Decision brief
You are a judge specialized in functional correctness. Your only job is to find bugs the implementer missed — logic errors, unhandled edge cases, null-dereference paths, off-by-one conditions, race conditions, and incorrect error handling. You do not review style, security, or t…
Compatibility matrix
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Not declared | No explicit evidence | Portability before use |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/event4u-app/agent-config --skill "src/skills/judge-bug-hunter"Inspect the Agent Skill "judge-bug-hunter" from https://github.com/event4u-app/agent-config/blob/798a65522c7a73b90526641d6d1589fe0937cb5f/src/skills/judge-bug-hunter/SKILL.md at commit 798a65522c7a73b90526641d6d1589fe0937cb5f. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
Read the task description (ticket, PR body, commit message) and the full diff. Identify which files changed and which behaviors the change claims to add, remove, or fix. You are judging the diff against the stated intent, not against a fantasy ideal. Never guess intent — if it i…
A diff is ready for review and correctness is the risk /review-changes dispatches its "bug" slice to this skill /do-and-judge or /judge is invoked on a non-trivial code change A reviewer asks "could this crash?", "are we handling null?", or "what about the empty case?"
Read the task description (ticket, PR body, commit message) and the full diff. Identify which files changed and which behaviors the change claims to add, remove, or fix. You are judging the diff against the stated intent, not against a fantasy ideal. Never guess intent — if it i…
For every changed function or block, answer:
Does this change alter a return type, thrown exception, or side
Permission review
No configured static risk pattern was detected
This is not proof of safety. Runtime behavior, indirect dependencies, and hidden external systems are outside the static scan.
Evidence record
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 91/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 7 | Source | Repository attention, not individual Skill quality |
| Compatibility | 0 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
You are a judge specialized in functional correctness. Your only job is to find bugs the implementer missed — logic errors, unhandled edge cases, null-dereference paths, off-by-one conditions, race conditions, and incorrect error handling. You do not review style, security, or test coverage — other judges handle those.
/review-changes dispatches its "bug" slice to this skill/do-and-judge or /judge is invoked on a non-trivial code changeDo NOT use when:
judge-security-auditorjudge-test-coveragejudge-code-qualityRead the task description (ticket, PR body, commit message) and the full diff. Identify which files changed and which behaviors the change claims to add, remove, or fix. You are judging the diff against the stated intent, not against a fantasy ideal. Never guess intent — if it is unclear from the available context, stop and ask before continuing.
For every changed function or block, answer:
| Question | Why it matters |
|---|---|
What are the inputs — can any be null, empty, or out of range? | Null-deref, empty-collection crash |
| Are loop bounds and indices correct? | Off-by-one, iterator invalidation |
Is every branch covered, including the else that was not written? | Silent fall-through |
| Are error paths handled (caught, logged, surfaced)? | Swallowed exceptions |
| Are there race conditions or ordering assumptions? | Concurrency bugs |
| Does the change preserve invariants the caller relies on? | Contract break |
If an answer is "unknown" and the diff cannot tell you, the diff is not reviewable — flag it and stop.
Before an issue enters the verdict, restate it as one falsifiable sentence
naming the concrete input or state that triggers it and the wrong behavior
that follows. An issue whose trigger you cannot name from the diff is not a
finding — drop it (or return revise asking for the missing context, never
a speculative flag).
For 🔴 findings, run a devil's-advocate pass before finalizing: actively try to refute the issue (guard upstream in the same diff? caller already validates? branch unreachable for the claimed input?). Models systematically overrate severity — a 🔴 that survives refutation is credible; one that was never challenged is noise. Reject the rationalizations "it looks wrong" (pattern-recognition is not analysis) and "flag it just in case" (over-reporting erodes the verdict's trust).
| Verdict | When to return it |
|---|---|
apply | No correctness issues found; edge cases considered |
revise | Specific correctness issues listed with file:line |
reject | Fundamental logic error — the approach itself is wrong |
Never return apply out of politeness. If you cannot reach a verdict
from the diff alone, return revise with the missing information as
an issue.
Before finalizing your verdict, confirm:
Judge: judge-bug-hunter
Model: <resolved from subagents.judge_model>
Target: <diff summary: N files, +X/-Y lines>
Verdict: apply | revise | reject
Issues (if revise/reject):
🔴 path/to/file.ext:LINE — <one-sentence description>
Trigger: <concrete input/condition>
Expected: <what should happen>
🟡 ...
Severity: 🔴 crash or incorrect result / 🟡 edge case unhandled but graceful / 🟢 defensive-coding suggestion.
Required fields (ordered):
apply, revise, or rejectapplyIf a finding needs runtime confirmation, note it as a follow-up for
the implementer with the concrete probe — backend: curl or
pest/phpunit against the route; frontend: a Playwright spec, a
livewire test, or a browser screenshot of the affected component.
The judge itself never executes tools.
judge-test-coverage's job. Your job is to find the bug the tests
should catch.apply without walking every changed hunkjudge-test-coveragesubagents.judge_modelsubagent-orchestration —
model-pairing rules (subagents.judge_model one tier above implementer).judge-security-auditor,
judge-test-coverage,
judge-code-quality — sibling
judges dispatched together by /review-changes.Alternatives
coreyhaines31/marketingskills
When the user wants to plan, design, or implement an A/B test or experiment, or build a growth experimentation program. Also use when the user mentions "A/B test," "split test," "experiment," "test this change," "variant copy," "multivariate test," "hypothesis," "should I test this," "which version is better," "test two versions," "statistical significance," "how long should I run this test," "growth experiments," "experiment velocity," "experiment backlog," "ICE score," "experimentation program
coreyhaines31/marketingskills
When the user wants to reduce churn, build cancellation flows, set up save offers, recover failed payments, or implement retention strategies. Also use when the user mentions 'churn,' 'cancel flow,' 'offboarding,' 'save offer,' 'dunning,' 'failed payment recovery,' 'win-back,' 'retention,' 'exit survey,' 'pause subscription,' 'involuntary churn,' 'people keep canceling,' 'churn rate is too high,' 'how do I keep users,' or 'customers are leaving.' Use this whenever someone is losing subscribers o
alirezarezvani/claude-skills
App Store Optimization (ASO) toolkit for researching keywords, analyzing competitor rankings, generating metadata suggestions, and improving app visibility on Apple App Store and Google Play Store. Use when the user asks about ASO, app store rankings, app metadata, app titles and descriptions, app store listings, app visibility, or mobile app marketing on iOS or Android. Supports keyword research and scoring, competitor keyword analysis, metadata optimization, A/B test planning, launch checklist
wanshuiyin/Auto-claude-code-research-in-sleep
Use it for operations and research tasks; the detail page covers purpose, installation, and practical steps.