Skip to main content

CLI Reference

The BlackRainbow CLI is available as br or blackrainbow.

Global Options

br --version    # Print version and exit
br --help # Print help and exit

br init

Create a new engagement config from a template.

br init [OPTIONS]
OptionTypeDefaultDescription
--templateChoicenetworkTemplate to use
--outputStringblackrainbow.yamlOutput file path

Templates

TemplateTarget TypeUse Case
networknetwork-serviceInfrastructure assessment
webappweb-applicationWeb application testing
adactive-directoryActive Directory assessment
aiai-systemAI/ML system red teaming

Examples

# Default network assessment template
br init

# Web application template
br init --template webapp

# Custom output path
br init --template ad --output engagements/corp-ad.yaml

Will not overwrite an existing file. Exits with error if the output path already exists.


br run

Execute an engagement.

br run [OPTIONS]
OptionTypeDefaultDescription
--configStringblackrainbow.yamlConfig file path
--pluginsStringfrom configOverride plugins (comma-separated)
--targetStringfrom configOverride target host
--dry-runFlagfalsePreview without executing
--max-attemptsInteger5Max iterations per plugin
--start-stageString--Start from a specific kill chain stage
--resolve-depsFlagfalseResolve upstream dependencies

Examples

# Run with default config
br run

# Dry run to preview attack plan
br run --dry-run

# Override target
br run --target 192.168.1.50

# Override plugins
br run --plugins recon,credential-access

# Custom config
br run --config engagements/webapp.yaml

# Start from a specific kill chain stage
br run --start-stage credential-access

# Combine overrides
br run --config corp.yaml --target 192.168.1.50 --plugins recon --dry-run

Execution Flow

  1. Load and validate YAML config
  2. Apply CLI overrides
  3. Initialize plugins, strategies, and target
  4. Connect to target (skipped in dry-run)
  5. Generate attack sequences
  6. Apply strategies (transform)
  7. Execute sequences (skipped in dry-run)
  8. Grade results
  9. Print summary

br report

Generate an engagement report from results.

br report [OPTIONS]
OptionTypeDefaultDescription
--configStringblackrainbow.yamlConfig file (for output settings)
--formatChoicefrom configOverride output format
--outputStringfrom configOverride output directory

Formats

FormatDescription
markdownMarkdown with embedded code blocks
jsonStructured JSON
htmlStandalone HTML
pdfPDF for stakeholder delivery

Examples

# Generate report using config settings
br report

# Override format
br report --format pdf

# Override output directory
br report --output ./deliverables/

br plugins

Manage and list plugins.

br plugins [SUBCOMMAND]

br plugins list

List all registered plugins.

br plugins list
        Registered Plugins
┏━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━┓
┃ ID ┃ Description ┃ Category ┃
┡━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━┩
│ recon │ Network and service enumeration │ recon │
│ credential-access │ Password attacks and hash extraction │ credential│
│ web-exploit │ Web application attack sequences │ web │
│ ad-enum │ Active Directory enumeration │ ad-attack │
│ privesc │ Privilege escalation checks │ privesc │
└───────────────────┴─────────────────────────────────────────┴───────────┘

br plugins info

Show details for a specific plugin.

br plugins info recon
Plugin: recon
Description: Network and service enumeration, OSINT, target profiling
Category: recon
Severity: medium
Targets: network-service, web-application
ATT&CK: T1046, T1595.002

br ui

Launch the web dashboard.

br ui [OPTIONS]
OptionTypeDefaultDescription
--portInteger8080Dashboard port
--hostString127.0.0.1Bind address

Examples

# Launch on default port
br ui

# Custom port
br ui --port 9090

Opens a browser-based dashboard showing engagement results, findings, and reports.


br status

Show framework status.

br status
BlackRainbow
Plugins: 12 registered
Strategies: 3 registered
Targets: 5 registered
Model: connected (ollama @ localhost:11434)

Exit Codes

CodeMeaning
0Success
1Config not found or invalid
2Target unreachable
3Plugin error
4Execution error

Environment Variables

VariableDescriptionDefault
BR_CONFIGDefault config file pathblackrainbow.yaml
BR_MODEL_HOSTModel provider endpointhttp://localhost:11434
BR_OUTPUT_DIRDefault output directory./reports/
BR_LOG_LEVELLogging verbosityinfo
# Use environment variables
export BR_CONFIG=engagements/default.yaml
export BR_LOG_LEVEL=debug
br run