drako scan analyzes your project using Python AST — fully offline, no network calls, no signup required. It generates a governance score, an Agent BOM, and actionable findings across security, compliance, and determinism categories.
Usage
PATH defaults to . (current directory).
Options
Output format.
terminal renders a Rich report in the console. json emits a structured JSON object. sarif emits a SARIF 2.1 document suitable for upload to GitHub Code Scanning.Upload results to Drako for a shareable URL and score badge. Anonymous uploads expire after 7 days. Pass
--api-key or set DRAKO_API_KEY for authenticated uploads.API key for authenticated upload. Can also be set via the
DRAKO_API_KEY environment variable.Backend endpoint used when
--upload is set. Override with the DRAKO_ENDPOINT environment variable.Comma-separated list of frameworks to detect (e.g.
crewai,langgraph). When omitted, all supported frameworks are auto-detected.Print a shareable score card and pre-redacted social posts after the scan.
Show impact analysis and attack scenarios for each finding.
Save current findings as the baseline. Future scans will only show findings that are new since this baseline.
Ignore the saved baseline and show every finding regardless of prior acknowledgement.
Compare your governance score against anonymized benchmark data for your framework.
Filter output to show only determinism findings (
DET-* rules).Exit with code
1 if the determinism score is below this value. Used for CI gating on determinism.Exit with code
1 if any finding at this severity or above is detected. Use for CI gating.Only report findings in files changed since the given git ref (e.g.
HEAD~1, origin/main). Requires git to be installed.Output formats
- terminal
- json
- sarif
Default. Rich-formatted console output with score, grade, Agent BOM summary, and a findings table with severity colours.
Exit codes
| Code | Condition |
|---|---|
0 | Scan completed with no CRITICAL findings and no CI gate triggered. |
1 | One or more CRITICAL findings detected (always). |
1 | --fail-on threshold met — at least one finding at the specified severity or above. |
1 | --threshold-det set and the determinism score fell below the threshold. |
1 | --diff was set but git is not installed, or git diff failed. |
CRITICAL findings always trigger exit code
1 regardless of other flags. This behaviour cannot be disabled.