Overview
Enable non-interactive mode with the--non-interactive or -n flag:
Behavior
In non-interactive mode:No TUI
- No text-based user interface is displayed
- Output is printed directly to stdout/stderr
- Suitable for terminal sessions without advanced features
Automatic Exit
- Process exits automatically when scan completes
- No manual intervention required
- Returns appropriate exit codes
Vulnerability Display
- Vulnerabilities are printed to stdout in real-time as they’re found
- Each vulnerability is displayed in a formatted panel
- Full details are also saved to output directory
Progress Indicators
- Live status panel shows scan progress
- Updates every 2 seconds
- Shows statistics: duration, agents, tools, vulnerabilities
Exit Codes
Non-interactive mode uses exit codes to indicate scan results:Success - No vulnerabilities foundThe scan completed successfully and no security issues were discovered.
Error during executionAn error occurred that prevented the scan from completing:
- LLM connection failure
- Docker error
- Configuration error
- Unhandled exception
Success - Vulnerabilities foundThe scan completed successfully and security vulnerabilities were discovered.This allows CI/CD pipelines to fail builds when vulnerabilities are found.
Output Format
Startup Banner
When starting, you’ll see:Progress Updates
During the scan, a live status panel updates:Vulnerability Notifications
When a vulnerability is found, it’s immediately printed:Completion Summary
When the scan finishes:CI/CD Integration
Basic Usage
Fail the build if vulnerabilities are found:GitHub Actions
GitLab CI
Jenkins
CircleCI
Advanced Usage
Scan Multiple Targets
Quick CI/CD Scan
Deep Pre-Release Audit
Capture All Output
Parse JSON Results
After the scan, parse the JSON output:Environment Variables
Non-interactive mode requires the same environment variables as interactive mode:Required
Optional
Output Directory
Results are saved tostrix_runs/<run_name>/:
Logging and Debugging
Standard Output
All scan information goes to stdout:Error Output
Errors and warnings go to stderr:Capture Everything
Comparison with Interactive Mode
| Feature | Non-Interactive | Interactive |
|---|---|---|
| TUI Display | No | Yes |
| Auto-exit | Yes | No |
| Exit code 2 for vulns | Yes | No |
| Real-time vulnerability display | Yes (stdout) | Yes (TUI panel) |
| Agent interaction | No | Yes |
| Progress updates | Live panel | Full TUI |
| CI/CD friendly | Yes | No |
| Resource usage | Lower | Higher |
| Suitable for | Automation, scripts, CI/CD | Human supervision, development |
Troubleshooting
Exit Code Always 1
Problem: Scan always exits with code 1 Possible causes:- LLM connection failure - check API key and network
- Docker not running - start Docker daemon
- Invalid configuration - verify environment variables
- Missing required flags - ensure
--targetis provided
No Output Displayed
Problem: Scan runs but produces no output Solutions:- Wait - LLM initialization can take 30-60 seconds
- Check that stdout isn’t being redirected unexpectedly
- Verify Docker containers are running:
docker ps - Check logs in output directory
Scan Exits Before Completion
Problem: Scan exits early without finding vulnerabilities Solutions:- Check for errors in stderr:
strix ... 2>errors.log - Verify target is accessible from Docker containers
- Review scan metadata in output directory
- Try running in interactive mode to see detailed logs
Best Practices
For CI/CD
-
Use quick scan mode for faster feedback:
- Archive results as build artifacts for later review
- Set reasonable timeouts in your CI configuration
-
Use specific instructions to focus on recent changes:
For Scripts
-
Check exit codes to handle different scenarios:
-
Capture output for processing:
-
Parse JSON reports for automation:
See Also
- Interactive Mode - TUI features
- Exit Codes - Exit code reference
- Reports - Output file formats
- Examples - Usage examples