Help us shape the future of Go! Take the 2026 Go Developer Survey

pentestswarm

package module
v0.2.31 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 29, 2026 License: AGPL-3.0 Imports: 2 Imported by: 0

README ΒΆ

The open-source XBOW alternative β€”
an autonomous API & web-app pentester.

Dozens of AI agents don't just scan β€” they exploit. They chain attacks (BOLA/IDOR, JWT forgery, mass assignment, SSRF, injection), build and score attack paths, and prove real vulnerabilities at machine speed.

Built for pentesters Β· bug bounty hunters Β· red teamers Β· security researchers

πŸ“– Documentation Β· Quick Start Β· vs. XBOW Β· Swarm vs. Multi-Agent Β· How It Works Β· Roadmap

Discord Stars Go License AI Status

Hack at machine speed.

πŸ“– New here? Start with the documentation β€” quickstart, provider setup, CLI reference, and troubleshooting. (Or run pentestswarm docs to open it.)

XBOW proved a point: AI can top the bug-bounty leaderboards. But XBOW is a closed, hosted SaaS β€” one agent, on their cloud, on their model, at their price. We think the future of offense is open, self-hosted, and a swarm β€” so we built it.

Pentest Swarm vs. XBOW

Pentest Swarm AI XBOW
Open source βœ… AGPL, fork it ❌ closed
Self-hosted βœ… your infra, your model, $0 floor ❌ their cloud, their bill
A real swarm βœ… dozens of agents, concurrent ❌ single agent

Three structural wins β€” and the swarm is the one that compounds. This isn't a single planner LLM walking recon β†’ classify β†’ exploit β†’ report down a fixed line. Dozens of agents work your surface at once, coordinating through a shared stigmergic blackboard: the instant a finding lands it wakes whichever agent it's relevant to, so a 1,000-subdomain target gets hit in parallel β€” attacking at machine speed. And unlike a scanner that spits out unverified "maybes," the swarm exploits what it finds, proves it with captured evidence, then writes the report.

Who it's for: pentesters covering a whole scope overnight Β· bug bounty hunters racing to first-blood on a fresh target Β· red teamers who need breadth fast Β· researchers pushing autonomous offense.

Run it on any model β€” Claude, anything OpenAI-compatible (incl. Together AI's hosted Llama/Qwen/DeepSeek), the new security-tuned open models (Pentest-R1 and the wave behind it), or fully local Ollama / LM Studio. We don't compete with those models β€” we're the harness that gives them hands: real tools, swarm coordination, scope safety, and evidence-backed reports. Air-gapped, zero API cost, and not one byte of your data leaving your box.

For authorized testing only β€” see the disclaimer below.


Credits & Inspiration

This project stands on the shoulders of giants. We credit and thank these projects for pioneering AI-powered offensive security:

  • PentestGPT β€” the OG that proved LLMs can pentest
  • PentAGI β€” fully autonomous agent architecture
  • Strix β€” AI hackers that find and fix vulns
  • CAI β€” cybersecurity AI framework, 3600x faster than humans
  • HackingBuddyGPT β€” LLM hacking in 50 lines of code
  • Shannon β€” white-box AI pentester
  • BlacksmithAI β€” multi-agent pentest framework
  • PentestAgent β€” black-box AI security testing

Their open-source contributions made tools like this possible.

Legal Disclaimer: Pentest Swarm AI is designed exclusively for authorized security testing, bug bounty programs, CTF competitions, and educational research. You must obtain explicit written permission from the target system owner before running any scan. Unauthorized access to computer systems is illegal under the Computer Fraud and Abuse Act (CFAA), the Computer Misuse Act, and equivalent laws worldwide. The authors and contributors of this project accept no liability for misuse, damage, or any illegal activity conducted with this tool. By using this software, you agree that you are solely responsible for ensuring your use complies with all applicable laws and regulations. Do not use this tool against systems you do not own or have explicit authorization to test.


What makes this a swarm?

Most "multi-agent" pentesting tools are a single planner LLM dispatching to specialist agents in a fixed order β€” recon β†’ classify β†’ exploit β†’ report. That's a pipeline, not a swarm.

Pentest Swarm AI is built around three swarm-intelligence primitives:

  • Stigmergy β€” agents coordinate by reading and writing findings on a shared blackboard, not by a central planner telling them what to do. A finding's pheromone weight biases other agents toward it and decays over time, so stale paths die naturally.
  • Emergence β€” attack chains appear that no single agent planned. A recon finding wakes the classifier; a high-severity classification wakes the exploit agent; exploit results feed back into the board and wake the report agent. Order isn't prescribed β€” it emerges from the blackboard state.
  • Decentralization β€” each agent runs its own trigger predicate. Add a new agent with its own predicate and it joins the swarm without anyone rewriting the orchestrator.

Why it wins: a pipeline is sequential (one stage at a time), can't fold a mid-run discovery back into recon, and is bounded by its slowest stage. A swarm works your surface concurrently, reacts to every new finding, lets attack chains emerge instead of scripting them, and lets stale paths decay and die. The payoff on stage is breadth β€” a long list of proven findings, because many agents chew on the surface at once.

πŸ“– Full write-up: Architecture β€” Swarm vs. Pipeline (the blackboard, pheromone decay, emergent chains, and why concurrency stays cheap). Diagrams also live in docs/.

We built this because the category was empty. Every tool marketed as "swarm" was actually a pipeline. If you find a counter-example, open an issue β€” we'll add them to the comparison table.


Quick Start

One command to install. One command to run. No API key, no cloud, no bill to start.

1 Β· Install (pick one)

npm install -g @armurai/pentestswarm                                       # npm (Node β‰₯16)
curl -fsSL https://raw.githubusercontent.com/Armur-Ai/Pentest-Swarm-AI/main/scripts/install.sh | sh   # any macOS/Linux
brew install Armur-Ai/tap/pentestswarm                                     # Homebrew
go install github.com/Armur-Ai/Pentest-Swarm-AI/cmd/pentestswarm@latest    # Go toolchain
docker run --rm ghcr.io/armur-ai/pentestswarm:latest --help                # Docker

2 Β· Run it

pentestswarm run

That's it. run opens the interactive TUI launcher β€” no flags to memorize:

  • Pick your AI provider and paste a key right in the UI β€” Together AI (hosted Llama / Qwen / DeepSeek), Claude, OpenAI, Gemini, or fully local Ollama / LM Studio (no key at all).
  • Point it at a target β€” a URL, or a bundled vulnerable lab (crAPI, Juice Shop, VAmPI, DVGA) that spins up, gets attacked, and tears down after. Legal, safe, zero setup.
  • Choose your live view β€” a web dashboard on localhost:7777 and a full-screen terminal TUI with live charts, a swarm-topology diagram, and a graded findings stream. Both, by default.
  • Then launch and watch the swarm work at machine speed.

A readiness check runs right in the launcher (Go, Docker, tools, provider) β€” it never blocks; anything missing is shown as a note you can fix or ignore.

Prefer flags? (scripting / CI)

run just wraps scan, so everything is scriptable too:

# watch it find a real vuln in ~2 min β€” bundled lab, local model, no key
pentestswarm scan --lab --lab-target crapi --provider ollama --swarm --tui

# a real target, cloud model for max quality
export PENTESTSWARM_ORCHESTRATOR_API_KEY=your-key-here
pentestswarm scan <authorized-target> --scope <target> --swarm --follow

New here? pentestswarm demo plays the whole campaign offline β€” that's the GIF above. Running inside GitHub Actions? See deploy/github-action/example-workflow.yml.


How the swarm works

Key behaviours:

  1. Agents are independent. Any one of them can be removed, replaced, or added without rewiring the others.
  2. Pheromones decay per-finding-type. A PORT_OPEN stays hot for hours; a SESSION for minutes. Config-driven half-lives.
  3. Scope is enforced at the tool layer and again at the executor. Defence in depth β€” --scope is not bypassable.
  4. Cleanup is always registered before execution. SIGINT, crashes, and budget exhaustion all trigger reverse-order cleanup. See internal/pipeline/cleanup_memory.go and cleanup.go.
  5. Prompt caching on Claude cuts cost and latency on repeated system prompts (enabled by default for recon + classifier).


Comparison

How we position vs. the rest of the ecosystem. We'll ship real benchmark numbers in a future release (see the benchmarks roadmap).

Tool Open / self-host Architecture Executes vs. suggests Memory Tools wired MCP Swarm?
Pentest Swarm AI βœ… open, self-hosted Stigmergic blackboard Executes pgvector + pheromones 8 ProjectDiscovery + nmap; sqlmap / Burp MCP / Metasploit in roadmap Yes βœ… real
XBOW ❌ closed SaaS Autonomous agent (hosted) Executes Hosted Managed No public API No
PentestGPT βœ… open Single-agent ReAct Suggests None None native No No
HackingBuddyGPT βœ… open Single-agent Executes Run logs Shell passthrough No No
PentAGI βœ… open 4 agents + planner Executes pgvector 40+ via MCP/shell Partial Pipeline
Shannon βœ… open White-box + browser Executes Session state Browser DOM No Pipeline
HexStrike βœ… open MCP tool wrapper Delegates to client LLM None (stateless) 150+ via MCP Yes No
Pentest-R1 βœ… open (model) RL-tuned LLM Executes Trajectory CTF-scope No No

If any entry here is wrong or out of date, please open a PR β€” we want this table to stay honest.


Feature status

Honesty labels: stable means shipped + tested, beta means works but rough edges, alpha means experimental, planned means in the roadmap.

Feature Status Notes
Sequential 5-phase runner stable Default mode; battle-tested core
Stigmergic swarm scheduler alpha --swarm flag; memory-backed blackboard wired
ProjectDiscovery toolchain stable subfinder, httpx, nuclei, naabu, katana, dnsx, gau
nmap adapter stable XML parsed; scope-validated
Cleanup registry stable Always runs on SIGINT / exit / budget-cancel
Claude prompt caching stable Enabled for recon + classifier by default
--strict LLM mode stable Promotes LLM errors to fatal
CVSS v3.1 scoring stable FIRST spec
Jev false-positive filter beta --jev; optional second-opinion pass via TypeSafe's Jev β€” off by default, fails open. Docs
Jev adaptive attack-path scoring beta --jev-adaptive; the swarm scores its candidate attack strategies with Jev in real time and pursues the best first (graded pheromone). Off by default, fails open.
Exploit chains beta chain run/list/update; a growing library of named, CVE-tied exploit chains (SSRFβ†’RCE, auth-bypassβ†’RCE…) β€” fingerprint + safe verify + report. Lean binary + on-demand updates. Docs
Chain Forge beta chain forge; draft a new exploit chain from an advisory using any configured reasoning model (Ollama/Together/Claude/Muse Spark…) β€” safe verification, validated, human-reviewed before it ships.
Postgres blackboard backend beta Migration shipped; runner uses memory-board for now
MCP server beta pentestswarm mcp serve
VS Code extension beta deploy/vscode/
GitHub Action beta deploy/github-action/action.yml with SARIF
Swarm playbooks (5) beta playbooks/{bug-bounty,external-asm,ci-cd,internal-network,ctf-solver}.yaml
Live dashboard alpha web/; UI built, wiring to live campaigns in progress
Burp MCP bridge planned Wave 2
Metasploit / ZAP / sqlmap adapters planned Wave 2
Fine-tuned Pentest-Swarm model planned Wave 3 (Pentest-R1 recipe)
Cybench / AutoPenBench benchmarks planned Wave 3

CLI

pentestswarm run                                        # ⭐ Interactive TUI β€” pick options + target, no flags
pentestswarm scan <target> --scope <scope> --swarm      # Scriptable: stigmergic swarm scheduler
pentestswarm scan <target> --scope <scope> --tui        # Full-screen live TUI (charts + swarm topology)
pentestswarm scan --lab --lab-target crapi              # Attack a bundled vulnerable lab, no setup
pentestswarm playbook run <name> --target <t>           # Run a community playbook
pentestswarm doctor                                     # System health check
pentestswarm install-tools                              # Fetch the recon/exploit toolchain
pentestswarm mcp serve                                  # MCP server for Claude/Cursor
pentestswarm serve                                      # Start API server + dashboard

pentestswarm run is the front door β€” an interactive launcher (provider + key entry, target or bundled lab, live-view choice, readiness checks) so you never have to remember flags. The scan form stays fully scriptable for CI.


LLM Providers

All agents inherit from a single provider config. Set one key, the entire swarm works.

Bring your own model β€” we're the harness, not the model. A new wave of open models is topping the cyber-offense benchmarks β€” GLM (5.3), Qwen (3.x), DeepSeek, and security-tuned fine-tunes like Pentest-R1. Pentest Swarm turns any of them β€” or a frontier model, or a fully-local one β€” into an operating pentester: real tools, swarm coordination, scope enforcement, and evidence-backed reports. The model does the reasoning; the swarm does the work.

Together AI is first-class β€” pick together (in pentestswarm run or --provider together) and just add your key; the endpoint is handled for you. Any other OpenAI-API-compatible endpoint (OpenAI, DeepSeek, Groq, …) works via openai + a base-URL, plus first-party Gemini. The only hard requirement is native tool/function calling, which GLM, Qwen, and DeepSeek all support.

Provider provider: Setup Privacy Best for
Claude (default) claude export PENTESTSWARM_ORCHESTRATOR_API_KEY=... Cloud Best quality, zero setup, prompt caching
Together AI together Just set the key β€” endpoint auto-configured Cloud Open cyber-benchmark leaders: GLM zai-org/GLM-5.3, Qwen Qwen/..., DeepSeek, Kimi
OpenAI-compatible openai Set key + the vendor's /v1 endpoint Cloud OpenAI, DeepSeek, Groq, or any Chat-Completions API
Gemini gemini export PENTESTSWARM_ORCHESTRATOR_API_KEY=AIza... Cloud Large context, free tier
Ollama ollama Install Ollama + pull models 100% local Full privacy, air-gapped (GLM / Qwen builds available)
LM Studio lmstudio Load model, enable server 100% local GUI model management
OrcaRouter orcarouter export PENTESTSWARM_ORCHESTRATOR_API_KEY=sk-orca-... Cloud One endpoint for Claude/GPT + other frontier models, gateway-level security

Together AI example β€” run the whole swarm on GLM 5.3:

orchestrator:
  provider: "together"             # first-class β€” endpoint defaults to Together's API
  model: "zai-org/GLM-5.3"        # or Qwen/..., deepseek-ai/..., etc. β€” see together.ai/models
  api_key: ""                      # or export PENTESTSWARM_ORCHESTRATOR_API_KEY
  context_window: 128000

Tech Stack

Component Technology Why
Platform Go 1.24 Single binary, goroutine concurrency, native security tools
CLI Cobra + bubbletea Beautiful TUI with multi-panel agent view
LLM Claude / Together AI (GLM Β· Qwen Β· DeepSeek) / Gemini / OrcaRouter / Ollama / LM Studio Best quality cloud + open cyber-bench leaders + full privacy local
Security Tools subfinder Β· httpx Β· nuclei Β· naabu Β· katana Β· dnsx Β· gau Β· nmap ProjectDiscovery Go libs + nmap subprocess
Blackboard Postgres 16 + pgvector Transactional writes, vector similarity, pheromone decay in SQL
Cache Redis 7 Rate limiting, session state
Dashboard Next.js 15 + shadcn/ui + tremor Dark-first, chart-heavy
MCP JSON-RPC stdio Claude Desktop + Cursor integration

Development

git clone https://github.com/Armur-Ai/Pentest-Swarm-AI.git
cd Pentest-Swarm-AI
./scripts/setup.sh    # Install tools, start Postgres/Redis/Ollama
make build            # Compile binary
make test             # Run tests
make dev              # Hot-reload development

Regenerate the demo GIF after any CLI change:

brew install vhs      # one-off
vhs docs/demo-flashy.tape

Roadmap

  • Wave 1 (in flight): real swarm architecture (done), dashboard wire-up, Burp MCP
  • Wave 2: sqlmap / Metasploit / ZAP adapters, bug-bounty + ASM + CI/CD playbook polish, official GitHub Action in Marketplace
  • Wave 3: fine-tuned Pentest-Swarm model (Pentest-R1 recipe), Cybench / AutoPenBench / CVE-Bench numbers, agent-memory poisoning hardening (MINJA / MemoryGraft defences)

🧠 The Adaptive Swarm β€” headline releases

Today the swarm reacts to findings and runs verified attack playbooks (BOLA/IDOR, mass assignment, NoSQL injection, excessive data exposure) end-to-end. Next, we make it think β€” three major capabilities, each shipping as its own release:

  • β‘  Runtime reaction to discoveries (planned) β€” stigmergic emergence: the swarm mines every response for object references (ids, UUIDs, emails), writes them to the blackboard, and other agents react by probing those objects across endpoints. Find one leaked id and the swarm turns it into cross-user BOLA/IDOR attacks nobody scripted.
  • β‘‘ Self-correcting attacks (planned) β€” closed-loop replanning: a failed step (401/403/415, an odd response body) feeds back into the planner, which adjusts the request and retries. Attacks heal themselves instead of dead-ending.
  • β‘’ On-demand specialist sub-agents (planned) β€” the swarm spawns purpose-built agents at runtime (an auth agent to hold a session, a fuzzing agent for a discovered parameter, a chain-builder for a specific API) and tears them down when done.

Together these turn a reactive swarm into an adaptive one β€” attack surface it has never seen, handled without anyone writing a plan. Generalization beyond curated targets and full LLM-driven chaining ride on top of these.

Follow the GitHub Project board for live status.


Why "Swarm"?

Single agents are tools. Pipelines dressed up as agents are slightly fancier tools. A swarm is different: agents share an environment, each agent's writes influence other agents' behaviour, and the useful work is emergent rather than prescribed. That's what lets a swarm handle a 1,000-subdomain target without anyone writing a plan for it.

One agent is a tool. A swarm is a platform.


Community

Join the swarm on Discord β†’ 🐝

We're building the first real open-source pentest swarm in the open β€” come build it with us. In Discord you can share findings, request a tool adapter, argue about stigmergy and pheromone decay, get help running your first scan, or grab a good first issue and ship a PR. Researchers, red-teamers, and the AI-security-curious all welcome.

⭐ If a real open-source swarm is something you want to exist, drop a star. Star velocity is the fuel that keeps this shipping β€” it's the single biggest thing you can do in ten seconds.


Who's using Pentest Swarm?

Running Pentest Swarm β€” internally, on client engagements, in CI, or embedded in your own workflow? Add your org to ADOPTERS.md with a quick PR β€” it helps others trust the project and helps us prioritize what to build. Not ready to be listed publicly? A hello in Discord still helps.


Community vs Enterprise

Pentest Swarm AI is free and open source (AGPL-3.0), and always will be β€” and we don't hold the good stuff back. The community edition is a fully capable autonomous API/web-app pentester: it exploits and chains attacks (BOLA/IDOR, JWT, SSRF, SQLi, GraphQL, BFLA…), builds and scores attack paths, and ships a large, growing library of attack-path + CVE chains.

The Enterprise edition β€” from Armur AI, the team behind the project β€” adds what teams need to run it at scale, in production, and always current:

Community (free, self-host) Enterprise
Exploit classes (BOLA Β· JWT Β· SSRF Β· SQLi Β· GraphQL Β· BFLA …) βœ… all βœ… all
Attack-path / CVE-chain library βœ… large, updated each release βœ… live feed β€” new critical-CVE chains within hours, verified
Adaptive intelligence βœ… swarm + adaptive attack-path scoring βœ… cross-engagement learning, deeper agent coordination, premium models
Team & platform single user, CLI/TUI + local dashboard βœ… multi-user, RBAC, SSO, hosted/managed, scheduling, audit, compliance reports
Integrations local reports (SARIF) βœ… Jira/ServiceNow, SIEM/SOAR, Burp, CI/CD, cloud, API + webhooks
Support community / Discord βœ… SLA support, onboarding, custom chains, managed pentest service

Enterprise services in detail:

  • Managed deployment β€” cloud, on-prem, or fully air-gapped (no data leaves your environment).
  • Integration & customization β€” wire it into your SIEM, ticketing, and CI, or build custom tools, playbooks, and attack chains for your stack.
  • Priority support & SLAs β€” a direct line to the maintainers.
  • Training & onboarding β€” get your security team productive fast.

Some Enterprise capabilities are available today and others are on the near-term roadmap β€” tell us what you need and we'll tell you exactly where it stands.

πŸ“§ akhil@armur.ai β€” tell us your setup and what you're trying to do, and we'll get you set up.


License

GNU Affero General Public License v3.0 (AGPL-3.0) β€” see LICENSE.

What this means for you

Use case Allowed?
Run Pentest Swarm on your own infrastructure (CI, laptop, internal red team) βœ… yes, no obligations
Use it on authorized bug-bounty programs / pentests βœ… yes, no obligations
Fork it for your own private experiments βœ… yes, no obligations
Distribute a modified binary βœ… yes β€” must share your modifications under AGPL
Run a modified version as a paid SaaS or network service βœ… yes β€” must share your modifications under AGPL

The AGPL exists specifically to prevent the SaaS-fork loophole: anyone who improves Pentest Swarm and offers it commercially must share their improvements with the community. We made it open source; we want it to stay open source even as it scales.

If you have a use case the table doesn't cover, open an issue and ask.

Built by Armur AI.

Documentation ΒΆ

Overview ΒΆ

Package pentestswarm (the module root) exists to embed repo assets into the compiled binary so distributed installs (npm, Homebrew, go install, Docker) ship the bundled playbooks without needing a repo checkout on disk. A playbook present in ./playbooks always overrides its embedded copy.

Index ΒΆ

Constants ΒΆ

This section is empty.

Variables ΒΆ

This section is empty.

Functions ΒΆ

func BundledChains ΒΆ added in v0.2.26

func BundledChains() fs.FS

BundledChains returns the embedded exploit-chain library rooted so entries are addressed as "<id>.yaml". This is the small curated default set shipped in the binary; the rest of the library is fetched on demand (pentestswarm chains update) so a fresh chain can ship the day a CVE drops, without a new binary release.

func BundledPlaybooks ΒΆ

func BundledPlaybooks() fs.FS

BundledPlaybooks returns the embedded playbooks tree rooted so that entries are addressed as "<name>.yaml" (e.g. "bug-bounty.yaml").

Types ΒΆ

This section is empty.

Directories ΒΆ

Path Synopsis
cli
ui
cmd
pentestswarm command
deploy
metrics command
internal
agent/prompts
Package prompts provides offensive-security prompt scaffolding for the swarm β€” curated system-prompt templates, a few-shot example library, and a refusal-detector + retry/fallback wrapper around llm.Provider.
Package prompts provides offensive-security prompt scaffolding for the swarm β€” curated system-prompt templates, a few-shot example library, and a refusal-detector + retry/fallback wrapper around llm.Provider.
agent/report/bounty
Package bounty estimates a dollar range for a finding based on its severity and (optionally) the target program's published bounty stats.
Package bounty estimates a dollar range for a finding based on its severity and (optionally) the target program's published bounty stats.
agent/report/dedup
Package dedup detects likely duplicate submissions by comparing a new finding's title (+ optional target) against a corpus of prior reports.
Package dedup detects likely duplicate submissions by comparing a new finding's title (+ optional target) against a corpus of prior reports.
agent/report/evidence
Package evidence captures report-ready artifacts from a finding's Reproduction block:
Package evidence captures report-ready artifacts from a finding's Reproduction block:
agent/report/qualitygate
Package qualitygate runs a generated submission draft through a second LLM call that grades it on clarity, impact framing, and reproducibility.
Package qualitygate runs a generated submission draft through a second LLM call that grades it on clarity, impact framing, and reproducibility.
agent/report/roi
Package roi computes the return-on-investment footer that lands at the bottom of every campaign report: expected bounty value vs.
Package roi computes the return-on-investment footer that lands at the bottom of every campaign report: expected bounty value vs.
api
asm
attackgraph
Package attackgraph models a target as a typed graph the swarm reasons over β€” "BloodHound for the app/cloud layer." Nodes are things an attacker moves through (assets, endpoints, identities, tokens, secrets, object references, capabilities); edges are the transitions between them (reach one, leak a secret, authenticate as an identity, escalate to a capability), each weighted by how reliably it can be exploited.
Package attackgraph models a target as a typed graph the swarm reasons over β€” "BloodHound for the app/cloud layer." Nodes are things an attacker moves through (assets, endpoints, identities, tokens, secrets, object references, capabilities); edges are the transitions between them (reach one, leak a secret, authenticate as an identity, escalate to a capability), each weighted by how reliably it can be exploited.
chains
Package chains defines exploit chains: named, versioned, CVE-tied attacks where one vulnerability enables the next (e.g.
Package chains defines exploit chains: named, versioned, CVE-tied attacks where one vulnerability enables the next (e.g.
compliance
Package compliance maps a finding's already-resolved standard labels (its OWASP Top 10 2021 category, with CWE as a refinement) onto the specific governance-framework controls it touches: PCI DSS v4.0, SOC 2 (AICPA Trust Services Criteria), ISO/IEC 27001:2022 Annex A, and NIST CSF 2.0.
Package compliance maps a finding's already-resolved standard labels (its OWASP Top 10 2021 category, with CWE as a refinement) onto the specific governance-framework controls it touches: PCI DSS v4.0, SOC 2 (AICPA Trust Services Criteria), ISO/IEC 27001:2022 Annex A, and NIST CSF 2.0.
ctf
dashboard
Package dashboard serves a live, self-contained web view of a running swarm campaign.
Package dashboard serves a live, self-contained web view of a running swarm campaign.
db
integrations/burp
Package burp is a thin MCP client that talks to PortSwigger's Burp Suite MCP server.
Package burp is a thin MCP client that talks to PortSwigger's Burp Suite MCP server.
integrations/jira
Package jira sends pentest findings to Atlassian Jira as issues.
Package jira sends pentest findings to Atlassian Jira as issues.
integrations/metasploit
Package metasploit is a thin HTTP/JSON client for msfrpcd, the daemon that ships with Metasploit.
Package metasploit is a thin HTTP/JSON client for msfrpcd, the daemon that ships with Metasploit.
integrations/slack
Package slack posts findings + campaign events to Slack.
Package slack posts findings + campaign events to Slack.
integrations/webhook
Package webhook dispatches campaign events to a customer-configured endpoint with HMAC-SHA256 request signing and exponential-backoff retry.
Package webhook dispatches campaign events to a customer-configured endpoint with HMAC-SHA256 request signing and exponential-backoff retry.
integrations/zap
Package zap is a minimal REST client for OWASP ZAP.
Package zap is a minimal REST client for OWASP ZAP.
jev
Package jev is a tiny client for TypeSafe's Jev "System One" model (https://typesafe.ai).
Package jev is a tiny client for TypeSafe's Jev "System One" model (https://typesafe.ai).
keychain
Package keychain stores secrets in the operating system's native secret store (macOS Keychain, linux-secret-service, Windows Credential Manager).
Package keychain stores secrets in the operating system's native secret store (macOS Keychain, linux-secret-service, Windows Credential Manager).
llm
mcp
osint
Package osint holds passive intelligence clients β€” Shodan, Censys, GitHub code search, etc.
Package osint holds passive intelligence clients β€” Shodan, Censys, GitHub code search, etc.
pipeline/fpcache
Package fpcache persists a researcher's "this was a false positive" marks so future scans can suppress the same pattern automatically.
Package fpcache persists a researcher's "this was a false positive" marks so future scans can suppress the same pattern automatically.
pipeline/nvdcheck
Package nvdcheck cross-references the classifier's CVSS score against NVD's canonical score for the same CVE.
Package nvdcheck cross-references the classifier's CVSS score against NVD's canonical score for the same CVE.
poc
Package poc generates β€” and optionally self-verifies β€” proof-of-concept scripts that PROVE a finding, the difference between "this looks vulnerable" and "run this and watch it prove it."
Package poc generates β€” and optionally self-verifies β€” proof-of-concept scripts that PROVE a finding, the difference between "this looks vulnerable" and "run this and watch it prove it."
scope/importer
Package importer adapts bug-bounty platform APIs into our scope.yaml shape.
Package importer adapts bug-bounty platform APIs into our scope.yaml shape.
scope/importer/bugcrowd
Package bugcrowd imports scope from Bugcrowd programs via the v4 API.
Package bugcrowd imports scope from Bugcrowd programs via the v4 API.
scope/importer/hackerone
Package hackerone imports scope from HackerOne programs.
Package hackerone imports scope from HackerOne programs.
scope/importer/intigriti
Package intigriti imports scope from Intigriti programs via the external researcher API (https://api.intigriti.com/external/researcher/v1).
Package intigriti imports scope from Intigriti programs via the external researcher API (https://api.intigriti.com/external/researcher/v1).
scope/programterms
Package programterms parses a bug-bounty program's rules-of-engagement text and extracts machine-readable constraints (rate limits, banned paths, required headers, prohibited techniques).
Package programterms parses a bug-bounty program's rules-of-engagement text and extracts machine-readable constraints (rate limits, banned paths, required headers, prohibited techniques).
shellsafe
Package shellsafe provides a quote-aware command parser that rejects shell metacharacters outside of quoted regions.
Package shellsafe provides a quote-aware command parser that rejects shell metacharacters outside of quoted regions.
swarm
Package swarm contains the scheduler and agent contract that together replace the sequential 5-phase runner with a stigmergic swarm.
Package swarm contains the scheduler and agent contract that together replace the sequential 5-phase runner with a stigmergic swarm.
swarm/agents
Package agents contains the swarm adapters that bridge the existing specialist agents (recon, classifier, exploit, report) into the blackboard + scheduler model.
Package agents contains the swarm adapters that bridge the existing specialist agents (recon, classifier, exploit, report) into the blackboard + scheduler model.
swarm/blackboard
Package blackboard implements the stigmergic shared state for the swarm.
Package blackboard implements the stigmergic shared state for the swarm.
swarm/memorygraft
Package memorygraft scans the blackboard for patterns characteristic of memory-graft attacks (MemoryGraft, arXiv:2512.16962).
Package memorygraft scans the blackboard for patterns characteristic of memory-graft attacks (MemoryGraft, arXiv:2512.16962).
swarm/provenance
Package provenance signs blackboard findings with an Ed25519 keypair per agent so that any read can detect tampering.
Package provenance signs blackboard findings with an Ed25519 keypair per agent so that any read can detect tampering.
swarm/quality
Package quality guards a heterogeneous swarm against context poisoning.
Package quality guards a heterogeneous swarm against context poisoning.
swarm/ratelimit
Package ratelimit caps the rate at which an agent processes findings off the blackboard.
Package ratelimit caps the rate at which an agent processes findings off the blackboard.
swarm/tuning
Package tuning loads per-finding-type pheromone settings (base weight + half-life) from YAML and applies a global exploration-bias multiplier.
Package tuning loads per-finding-type pheromone settings (base weight + half-life) from YAML and applies a global exploration-bias multiplier.
swarm/verify
Package verify adds an active corroboration layer at the boundary where one agent's judgment is passed to a stronger downstream agent β€” without eroding the cost win that makes a heterogeneous swarm worthwhile.
Package verify adds an active corroboration layer at the boundary where one agent's judgment is passed to a stronger downstream agent β€” without eroding the cost win that makes a heterogeneous swarm worthwhile.
taxonomy
Package taxonomy maps a finding's (free-form) attack category and title onto the industry-standard labels security teams triage by: an OWASP Top 10 (2021) category and a CWE id.
Package taxonomy maps a finding's (free-form) attack category and title onto the industry-standard labels security teams triage by: an OWASP Top 10 (2021) category and a CWE id.
toolpath
Package toolpath makes pentestswarm self-sufficient at finding the external security binaries it shells out to (httpx, nuclei, ffuf, ...) without requiring the user to add GOPATH/bin (or anything else) to their shell PATH.
Package toolpath makes pentestswarm self-sufficient at finding the external security binaries it shells out to (httpx, nuclei, ffuf, ...) without requiring the user to add GOPATH/bin (or anything else) to their shell PATH.
toolprobe
Package toolprobe reports which external security tools are installed on the current host.
Package toolprobe reports which external security tools are installed on the current host.
tests
bench/cybench
Package cybench is the harness for running Pentest Swarm AI against the Cybench benchmark (arXiv:2408.08926) β€” 40 CTF-style challenges covering web, crypto, pwn, forensics.
Package cybench is the harness for running Pentest Swarm AI against the Cybench benchmark (arXiv:2408.08926) β€” 40 CTF-style challenges covering web, crypto, pwn, forensics.
bench/speed
Package speed is the harness for Pentest Swarm AI's most on-brand, easiest-to-produce benchmark: swarm mode vs.
Package speed is the harness for Pentest Swarm AI's most on-brand, easiest-to-produce benchmark: swarm mode vs.
llm_eval
Package llm_eval holds the evaluation harness for classifier / recon / exploit agent prompts.
Package llm_eval holds the evaluation harness for classifier / recon / exploit agent prompts.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL