Skip to content

Back to the catalog

Cyberful
github.comrepo

Cyberful

Cyberful is an AI red-team CLI that orchestrates 316 cybersecurity tools (203 CLI apps/commands including Nmap, Metasploit, Nuclei, plus ZAP and Ghidra) through a multi-agent system: hypothesis workers map attack surfaces and test exploit paths, while a deterministic control plane enforces engagement scope, preserves evidence, and only surfaces independently reproduced vulnerabilities. Built for authorized penetration testing, code audits, and bug bounty hunting; ships a hardened agent-controlled browser, Docker-based runtime, offline MITRE ATT&CK snapshot, and CVE dictionary.

TL;DR AI multi-agent red-team CLI orchestrating Nmap, Metasploit, Nuclei, ZAP, and Ghidra for authorized pentests and bug bounty work.
Document

What it is

Cyberful, an npm-installed AI red-team framework (cyberful). The summary covers what it does; what it can't carry is the operational footprint — install steps, hard resource requirements, and the sequencing of its pre-run safety checks — which is what an engineer deciding whether to stand it up actually needs.

Preconditions

Runtime host needs Docker with a running Linux-container engine, Node.js 18+ with npm, one configured model provider, ≥100 GB free disk before the first runtime build, and ≥10 GB RAM dedicated to Docker. Docker Compose is not required. Source development is a different, heavier set: Bun 1.3.14, Node.js 24, Python 3.10+, Docker.

The first local engagement prepares the release-pinned CVE Dictionary in the foreground. Release 2026.08.05 downloads ~5.18 GiB (only if no verified local candidate exists), expands to ~24.47 GiB, and needs ~31 GiB additional free space during install. Later startups reuse the local snapshot with no network check.

What to do

Install and initialize:

npm install --global cyberful
mkdir cyberful-lab
cd cyberful-lab
cyberful auth login
cyberful

Create settings.yaml from example.settings.yaml before auth. Credentials live in Cyberful's protected store or named env vars, not in settings.yaml.

Headless run and session control:

cyberful run --workflow bug-bounty --workarea <name> "<objective>"
cyberful session inspect
cyberful session watch
cyberful run --continue
cyberful run --session <id>

Add --format json for the redacted versioned agent stream.

Do not commit anything under work/<name>/ or logs/session-logs/ — workareas, transcripts, browser profiles, ZAP/Ghidra state, reports, credentials, tokens. They hold live engagement evidence.

How the pre-run gate sequences

Before a live-target AgentRun, the safety checks run in a fixed order — this is the part the summary flattens:

flowchart TD
    A[Ephemeral private-network HTTPS canary] -->|verifies curl/OpenSSL, Git, pip, Node, Ruby traverse ZAP proxy w/ attested CA| B[Install + attest host-scoped rate limit & mandatory public headers in ZAP]
    B --> C[Numbered target-profile preflight]
    C --> D[AgentRun]
    D --> E{Web engagement?}
    E -->|yes| F[Best-effort passive ZAP checkpoint, filtered to authorized origins]
    E -->|no| G[No checkpoint call, no wait]

The canary never contacts the target or Internet. Checkpoint collection never blocks handoff.

Caveats

Source builds (make run) never download ATT&CK data; they reuse the snapshot from the last successful make build and report DATASET_UNAVAILABLE if none exists. The passive ZAP checkpoint is explicitly "best-effort" and only covers observed origins whose hostname the finalized policy authorizes. Full session lifecycle, steering, approvals, and cleanup are only in the docs at cyberful.ai/open-docs, not on this page.

Technologies named here