The End of the Script Kiddie: Unpacking shuvonsec/claude-bug-bounty
How a Python harness, strict logic gates, and persistent memory turned Claude Code into an autonomous security researcher.

Claude Bug Bounty is an agent harness — not just scripts. It reasons about what to test, validates findings before you waste time writing them up, remembers what worked across targets, and generates reports that actually get paid.
- A rigorous 7-Question Gate prevents the LLM from hallucinating vulnerabilities by forcing strict validation before reporting.
- Persistent memory using advisory file locks allows the agent to build and retain 'hacker intuition' across multiple targets.
- Model Context Protocol (MCP) integrations turn the AI into a cyborg brain that orchestrates external Go-based security tools.
- Built-in circuit breakers and scope checkers provide necessary guardrails to prevent autonomous agents from taking down production servers.
The Hallucination Firewall
The fundamental flaw of using large language models for offensive security is their inherent desire to please. If you ask an LLM to find a vulnerability, it will often invent one. The creators of claude-bug-bounty solved this by actively distrusting the model. Before any finding is logged, the system forces the AI through a rigorous validation loop.
Instead of reporting every medium-severity finding, the AI must explicitly answer a "PASS / KILL / DOWNGRADE" gate. It must definitively answer seven architectural questions regarding impact and reproducibility. If the logic fails, the phantom bug is discarded. This is the difference between a noisy scanner and a precision instrument.
Codifying Hacker Intuition
Traditional scanners like Nuclei are entirely stateless. They run a template, emit an alert, and forget everything. Bug bounty hunting, however, requires intuition. You notice a weird routing behavior on one subdomain and apply that knowledge to another. The /memory module in this repository attempts to digitize that process.
By utilizing audit.jsonl and pattern_db.py with advisory file locking via fcntl.flock(), the framework builds persistent context across long-running, multi-target hunts.
The Cyborg Architecture
The system acts as a brain orchestrating external Go-based and Python tools. By leveraging LangGraph for the reasoning loop and the Model Context Protocol (MCP), the agent plugs directly into Burp Suite to observe live traffic and HackerOne to read policy scopes.
| Feature | Traditional Scanners (e.g., Nuclei) | Stateful Agents (claude-bug-bounty) |
|---|---|---|
| Execution Pattern | Linear scripts | ReAct (Reason + Act) loop |
| State | Ephemeral (forgets after run) | Persistent (JSONL memory layers) |
| False Positive Handling | Human manual review | Automated 7-Question Gate |
| Payload Generation | Static YAML templates | Dynamic LLM-generated chaining |
Guardrails for the Autonomous Hunter
Giving an AI the ability to send live payloads requires extreme caution. The project includes a CircuitBreaker that trips on repeated 403 or 500 errors to prevent accidental denial-of-service attacks, and strict scope enforcement that keeps the bot strictly on target. It is a mature approach to automated liability mitigation.