Confirm the testbench is up
finbot (a fictional banking assistant for “CineFlow
Productions”) in the next step.Set your LLM API key
The swarm needs an LLM provider to drive the Commander, Attacker, and
Evaluator roles. Gemini 2.5 Flash is the cheapest path — a
--mode fast
scan costs roughly $0.01.Run the scan
src/agent_guardian/cli.py:--endpoint— hosted HTTP target URL.--model gemini:gemini-2.5-flash— LLM spec for Commander / Attacker / Evaluator roles.--mode fast— CI-gate smoke profile; caps each agent at 3 probes / 4 turns.--budget-usd 0.20— hard USD cap; the swarm soft-stops new attack turns at 80%.
Expected output
The full live region is several hundred lines; here is a redacted slice showing the dashboard banner, mid-scan progress, and the final summary:The summary line, field by field
AIVSS=23— inverse-risk 0–100; lower is more vulnerable.band=CRITICAL—band_for_scorecutoff: any score < 40 is CRITICAL.tier=T1— auto-detected target tier (T1 = tools + memory + PII; the testbench advertises a tool surface so the swarm picks the strictest tier).findings=14— how many planted vulnerabilities the swarm confirmed.report=scan.json— the default emitter; the canonical, signed copy also lands at~/.agentguardian/scans/<scan_id>/scan.json.
Compare against the clean control
Now point the same scan atclean_control — a control agent built with
no planted vulnerabilities — to verify the scanner is not generating
false positives.
You have now run AgentGuardian against both a vulnerable agent and a
clean control. The 73-point AIVSS gap (96 → 23) is the scanner doing
its job.
Next step
Understanding Your First Report
Read every field of the
scan.json — findings, evidence, AIVSS breakdown, fix-it commands.Scan a REST API Agent
Now point the scanner at your own HTTP-shaped agent.
How AgentGuardian Works
The four-phase swarm: Recon → Decompose → Parallel attack → Finalise.
Attack Library
All 96 probes across 10 OWASP ASI categories.