Overview
IronBullet can run configurations headlessly from the terminal using CLI mode. This is useful for automation, CI/CD pipelines, and server environments.CLI Mode Detection
IronBullet automatically switches to CLI mode when any of these flags are present:--configor-c--helpor-h
main.rs:182-184
Basic Usage
Required Arguments
Path to the configuration file. Supports multiple formats:
.rfx- IronBullet native format.svb- SilverBullet format.opk- OpenBullet format.loli- LoliCode format.json- JSON format
-cExample:Path to the wordlist or combo file to process.Alias:
-wExample:Optional Arguments
Number of concurrent threads to use. Overrides the thread count specified in the config file.Alias:
-tDefault: Uses value from config fileExample:Path to proxy list file. Each proxy should be on a separate line.Alias:
-pDefault: No proxies (direct connection)Example:Output directory for saving hits and results.Alias:
-oDefault: results/Example:Skip the first N lines from the wordlist. Useful for resuming interrupted runs.Default:
0Example:Process only N lines from the wordlist. Use Combined with —skip:
0 to process all lines.Default: 0 (process all)Example:Enable debug mode. Prints each block result to stderr for troubleshooting.Alias:
-dDefault: falseExample:Display help message with usage information and exit.Alias:
-hExample:Complete Examples
Basic Run
High-Performance Run with Proxies
Resume from Line 5000
Test First 100 Lines
Import and Run SilverBullet Config
Exit Codes
| Code | Meaning |
|---|---|
0 | Success - run completed without errors |
1 | Error - invalid arguments, config load failure, or runtime error |
Output Format
Status Line (Updates Every 3 Seconds)
- processed/total: Lines processed out of total wordlist size
- hits: Number of successful hits
- fails: Number of failed checks
- errors: Number of runtime errors (network, parsing, etc.)
- cpm: Checks per minute (throughput)
- threads: Active worker threads
Hit Output
- data_line: Original line from wordlist
- captures: Key-value pairs of captured variables (if any)
Debug Output (—debug flag)
Configuration Overrides
CLI arguments override config file settings in this order:- Threads:
--threadsoverridespipeline.runner_settings.threads - Skip:
--skipoverridespipeline.runner_settings.skip - Take:
--takeoverridespipeline.runner_settings.take - Output:
--outfileoverridespipeline.output_settings.output_directory
cli.rs:147-165
Error Messages
Missing Required Argument
Invalid Argument
Invalid Thread Count
Config Load Failure
Wordlist Load Failure
Platform-Specific Notes
Windows Console Attachment
On Windows, IronBullet automatically attaches to the parent console process to display CLI output. This is required because the application is compiled with#![windows_subsystem = "windows"] to hide the console in GUI mode.
Source: main.rs:186-198
Linux/macOS
No special console handling is required on Unix-like systems.Performance Tips
See Also
- CLI Options Reference - Detailed flag documentation
- Pipeline API - Pipeline structure and configuration
- Config Format - .rfx file format specification