Every tool in the workbench.
Grouped the way Burp groups its own: what captures traffic, what works on one request by hand, and what reasons about the whole capture. Each row says what the tool does and where it stops. The page ends with what is not built — a feature list without that section is a sales page.
Capture
The traffic side. All of it runs on loopback, and the certificate authority is generated on your machine and never installed for you.
| Tool | What it does | State |
|---|---|---|
| Proxy | Listens on 127.0.0.1:9090 from the moment the window opens. Forward requests, CONNECT tunnelling, and HTTPS interception through a local CA with a per-host leaf certificate. |
built |
| Intercept | Hold a request before it leaves, edit the raw bytes, forward or drop it. Rules decide what is held rather than holding everything. | built |
| HTTP history | Every exchange, with the raw bytes on both sides, the session that carried it, an Inspector, and per-exchange notes. Agentic requests carry a mark and the account they ran as. | built |
| WebSockets | Bidirectional frame capture with a viewer. Editing a frame in flight is not built. | capture only |
| Sessions | Requests grouped by the credential set that carried them, with a role and an organisation per account. Names are recorded; values never are. | built |
| Target | The application as a tree, scope rules, and what has and has not been looked at. | built |
| Match & Replace | Operator rules that rewrite each proxied request in flight, on both the HTTP and HTTPS paths, persisted between launches. Response-side rewriting is not built. | requests only |
Manual tools
One request at a time, by hand. This is where a finding gets confirmed, and it runs the same comparison code the scanner does.
| Tool | What it does | State |
|---|---|---|
| Repeater | Tabbed and persisted across launches. HTTP/1.1 and HTTP/2 per tab, per-tab send history, and Send as another account, which swaps the whole credential set — cookies, auth headers, body tokens and all three anti-forgery carriers. | built |
| Compare bench | Two responses, judged by jo_analysis::compare — the engine’s own routine. A confirmation made by hand and a verdict reached by the scanner cannot disagree, because there is one rule and not two. |
built |
| Intruder | Sniper, battering ram, pitchfork and cluster bomb. List and number-range payloads, payload processing, grep-match columns, outlier highlighting, hard caps and scope gating. | built |
| Decoder | The usual encodings, chained, with the original bytes kept beside the decoded view. | built |
| Comparer | A byte and word diff between any two captured items. | built |
| Discovery | Endpoints, URLs and parameters mined out of captured JavaScript, collected into a wordlist. It reads what was already captured; it does not crawl on its own. | built |
Analysis
The part that decides. Cross-account authorization testing is the centre of it: replay what you did as every other account, and decide by evidence rather than by resemblance.
Four engines sit under the findings. Measurement makes every number carry its threshold and the source of that threshold. Volatility learns the size-gap bar from an endpoint’s own replies. Triage sorts by what to do — dig, candidate, not applicable, merged — and never by a severity score. Coverage reports per class what was not measured, so a gap cannot be read as a pass.
Identifiers are extracted from the path, the query, cookies, the body, JWT claims and GraphQL variables. The credential swap goes through one send function, which is also the only thing that can send.
| Tool | What it does | State |
|---|---|---|
| Issues | Findings worst-first, each with the measurement that settled it, triage buckets, and a coverage ledger. | built |
| Vault | Identifiers and masked secrets, shared against owned, enumerable leads, one click to an IDOR rule. | built |
| Rules | IDOR rules over extracted identifiers, with both the raw and decoded form kept and re-wrapped on send. | built |
| Reflected XSS | A passive pass over captured replies. Reachability candidates, never a confirmed finding, and no payload is ever sent. | passive |
| Business logic | A passive lead pass. Leads only — the kind of thing a human should look at, stated as such. | leads |
The agentic layer
Optional, off by default, and bounded by the Rust engine rather than by a prompt. A model picks what to look at and writes up what came back; it does not build requests and it does not decide verdicts.
| Tool | What it does | State |
|---|---|---|
| Agentic pentest | Configure accounts, choose a brain — the deterministic engine, Claude Code, a local OpenAI-compatible model, or a hosted one — and run. It logs each account in through the proxy, crawls their features in a visible or headless browser, then runs the cross-account scan and the passive passes, streaming a live log and a per-account result table. | built |
| Browser control | The model drives a real Chrome click by click over MCP — open, survey, navigate, click, type — by role and accessible name. It never reads a field’s value. Destructive controls are refused by policy. | built |
| Assistant | Explains a response or a difference and drafts a write-up, on bytes redacted before they leave. It never writes a request and never decides a verdict. | built |
| MCP server | The engine’s tool catalogue, so an external agent can read the capture and ask the engine questions. Names only, redacted views, one gate. | built |
| Harness | The system prompt is an editable tree of files, one source for every driver. The boundary clauses are not in that tree and cannot be edited out — they are compiled in, and a drift alarm fails the build if a driver loses one. | built |
The rest of the window.
Four things that are not a tool but are part of using one: where a run is summarised, where long work is watched, where the knobs live, and the file all of it is kept in.
.jo file you can switch between while the application is running. Captured traffic lives in that file and nowhere else.
What is not built.
Four of these are deferred features and two are release engineering. None of them is hidden in a footnote elsewhere.
Phases 1 to 5 of the specification are built and gate-green on this machine. Phase 7, which is signing, checksums and an SBOM, is the work between here and a tagged release.