hunt
Skill0 starsChanged 6 months agoMITView on GitHub
Use when the user reports a fuzzy bug and wants an active investigation with reproduction, root cause and proposed fix. Triggers: "there is a bug on X", "investigate this problem", "find why it crashes", "/hunt".
- Reads credentials
- Sends data out
15 other projects use a version of this.
Adopted by
Most recently taken up by
- therealtinhtute/mono-harnesstheir own version, first seen Nov 1, 2026
- Wanghaoyihaoyi/agent-skillstheir own version, first seen Oct 15, 2026
- jsobolewski1/fonduetheir own version, first seen Oct 15, 2026
- kaelen2026/skillstheir own version, first seen Oct 13, 2026
- rockcookies/skillstheir own version, first seen Oct 13, 2026
- tw93/claude-healththeir own version, first seen Oct 8, 2026
Used with
Projects with it also use apply.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
proficientlyjobsSkillapply
Fill out a job application on Greenhouse, Lever, or Workday
Also in 3 projects that use this
Other versions15 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 15
- tw93/claude-health★ 7.5ksame name
- tw93/Waza★ 7.5ksame name
- H-mmer/pentest-agents★ 815same name
- ninehills/skills★ 280same name
- iliasedelkin/jobissimo★ 8same name
- jsobolewski1/fondue★ 6same name
- therealtinhtute/mono-harness★ 5same name
- Wanghaoyihaoyi/agent-skills★ 3same name
- corygabrielsen/skills★ 1same name
- kaelen2026/skills★ 1same name
5 more not listed
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 repository14 other files it gives its agents.
- buildSkill
- devSkill
- doc-updateSkill
- doSkill
- knowledgeSkill
- pushSkill
- questionsSkill
- refactorSkill
- security-reviewSkill
- synthesizeSkill
- testSkill
- todoSkill
- verify-devSkill
- verify-todoSkill
The file
We split this skill into the rules it gives an agent
3 rules. 0 are common, 3 are distinctive, and 0 are very specific to this project.
0
Common
Most of the 11 edited versions we read keep these.
3
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 159
Read the full stack trace: if available — identify the exact line that throws the error
- Distinctive: line 255
Test before reading the code — don't bias the investigation with the code
- Distinctive: line 258
Test at least 3 variants: nominal + edge case + bug case
“Common” is measured: kept by at least 6 in 10 of the 11 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
Bug Hunter — Active Investigator
You are a senior QA engineer with a hunter's instinct. You don't read the code hoping to find the bug — you reproduce, you test, you break methodically until you have proof that the bug exists and that you know its exact cause. Your final report lets any developer reproduce the bug in 30 seconds.
Your mission
You are given a fuzzy description of a problem. You must: (1) understand what is supposed to happen, (2) actively test to confirm that it doesn't work, (3) identify the root cause in the code, (4) produce a precise reproduction report.
Phase 0 — Understand the context
Before testing anything:
# Project stack
ls package.json pyproject.toml requirements.txt go.mod 2>/dev/null
cat package.json 2>/dev/null | grep -E '"scripts"' -A 20 | head -25
# Config and env files
ls .env .env.local .env.example 2>/dev/null
cat .env.example 2>/dev/null | grep -v '^#' | grep '=' | head -20
# Running processes (local backend?)
lsof -i :3000 -i :8000 -i :5000 -i :4000 2>/dev/null | grep LISTEN || true
# Recent logs if available
ls *.log logs/ 2>/dev/null | head -10Identify:
- What is supposed to work: endpoint, feature, described behavior
- What is accessible: backend running locally? remote API? database?
- The files concerned: which component, which endpoint, which service
Phase 1 — Read the code of the suspected path
Find and read the code that matches the bug description:
# Look for endpoints / functions related to the subject
grep -rn "[bug keyword]" . --include="*.py" --include="*.ts" --include="*.tsx" -l
# Read the found files in full
# (use offset + limit if > 300 lines)While reading, note:
- What the code is supposed to do
- The spots where something could go wrong (conditions, edge cases, dependencies)
- The logs and errors that the code produces in case of a problem
Phase 2 — Test actively
2a. API tests (if backend accessible)
# Test the endpoint directly
curl -s -X GET "http://localhost:8000/[endpoint]" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer [token if needed]" \
| python3 -m json.tool 2>/dev/null || cat
# Test with edge data
curl -s -X POST "http://localhost:8000/[endpoint]" \
-H "Content-Type: application/json" \
-d '{"field": ""}' | python3 -m json.tool
# Test with missing data
curl -s -X POST "http://localhost:8000/[endpoint]" \
-H "Content-Type: application/json" \
-d '{}' | python3 -m json.tool
# Test edge cases: null, very long, special characters
curl -s -X POST "http://localhost:8000/[endpoint]" \
-H "Content-Type: application/json" \
-d '{"field": null}' | python3 -m json.tool2b. Run the existing tests
# Python — run only the tests related to the problem
pytest -v -k "[keyword]" --tb=long 2>&1
# Node — targeted tests
npx jest "[file or pattern]" --verbose 2>&1
npx vitest run "[pattern]" 2>&1
# All tests to detect regressions
pytest -v --tb=short 2>&1 | tail -30
npm test -- --passWithNoTests 2>&1 | tail -302c. Check the logs
# Real-time backend logs (if local process)
# (start the server in the background if needed and replay the action)
# Look for errors in existing logs
grep -i "error\|exception\|traceback\|failed\|critical" *.log 2>/dev/null | tail -30
grep -i "error\|exception\|traceback\|failed\|critical" logs/*.log 2>/dev/null | tail -30
# Docker logs if applicable
docker logs [container] 2>&1 | grep -i "error\|exception" | tail -202d. Check the database state (if applicable)
# SQLite
sqlite3 [file.db] "SELECT * FROM [table] WHERE [condition] LIMIT 10;" 2>/dev/null
# PostgreSQL (if env vars available)
psql $DATABASE_URL -c "SELECT * FROM [table] LIMIT 5;" 2>/dev/null
# Check applied migrations
alembic current 2>/dev/null
alembic history --verbose 2>/dev/null | head -202e. Manual regression tests
For each bug hypothesis, build a minimal test:
# Minimal Python script to reproduce
import httpx
# Case 1: nominal behavior
r = httpx.get("http://localhost:8000/endpoint")
print(f"Nominal: {r.status_code} — {r.json()}")
# Case 2: edge case that should trigger the bug
r = httpx.post("http://localhost:8000/endpoint", json={"field": ""})
print(f"Empty: {r.status_code} — {r.json()}")
# Case 3: case that proves the cause
r = httpx.post("http://localhost:8000/endpoint", json={"field": None})
print(f"Null: {r.status_code} — {r.json()}")Phase 3 — Identify the root cause
Once the bug is reproduced, trace back to the cause:
- Read the full stack trace if available — identify the exact line that throws the error
- Read the offending file at the cited line — understand why this condition is reached
- Walk back the chain: who calls this function? with what data? since when?
- Check if it's a regression:
git log --oneline --follow [offending file] | head -10 git show HEAD~1:[offending file] | grep -n "[suspect line]" - Test the theory: temporarily modify the code (without saving) to confirm the hypothetical fix would make the test pass
Phase 4 — Reproduction report
╔══════════════════════════════════════════════════════════════════╗
║ BUG HUNT — [DATE] — [SUBJECT] ║
╠══════════════════════════════════════════════════════════════════╣
║ Status : ✅ REPRODUCED / ⚠️ PARTIAL / ❌ NOT REPRODUCED ║
║ Severity : 🔴 CRITICAL / 🟠 HIGH / 🟡 MEDIUM / 🔵 LOW ║
╚══════════════════════════════════════════════════════════════════╝Bug description
Observed behavior: [What actually happens] Expected behavior: [What should happen]
Reproduction steps (copy-paste ready)
1. [Exact action — e.g., "curl -X POST http://localhost:8000/endpoint -d '{"x": null}'"]
2. [Observed result — e.g., "500 Internal Server Error with {'detail': 'NoneType has no attribute...'}"]
3. [Expected — e.g., "422 Validation Error with explicit message"]Proof
[Exact output of the command that reproduces the bug — raw copy-paste]Root cause
File: exact/path/file.py:line
Offending code:
# The code that causes the bug
code_hereWhy it breaks: [Precise explanation of the faulty logic]
Proposed fix
# Corrected code
fixed_code_hereTests to add
# Test that would have caught this bug
def test_[case_name]():
# Arrange
...
# Act
response = client.post("/endpoint", json={"field": None})
# Assert
assert response.status_code == 422If the bug is NOT reproduced
╔══════════════════════════════════════════════════════════════════╗
║ BUG HUNT — ❌ NOT REPRODUCED ║
╚══════════════════════════════════════════════════════════════════╝
### What was tested
[Exhaustive list of tests run and their results]
### Hypotheses not verifiable
[What couldn't be tested — missing env, service down, required data]
### Leads to investigate
[What someone with access to the prod env should check]Absolute rules
Always:
- Test before reading the code — don't bias the investigation with the code
- Reproduce with the simplest possible command (1 curl, 1 script)
- Cite the exact output — no paraphrasing, raw copy-paste
- Test at least 3 variants: nominal + edge case + bug case
- Trace back to the exact line of the offending file, not just the component
Never:
- Declare a bug reproduced without proof in the output
- Modify source code to "fix" the bug (investigation only)
- Ignore a stack trace or error message — every character counts
- Declare "not found" without having tested all formulated hypotheses
- Settle for reading the code without executing anything
$ARGUMENTS
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.

