Configuration
Cyberstrike uses a simple JSON configuration file to customize its behavior.
Configuration File
Create a cyberstrike.json file in your project directory:
{ "$schema": "https://cyberstrike.io/schema.json", "provider": "anthropic", "model": "claude-sonnet-4-20250514", "agent": "web-application", "tools": ["nmap", "nuclei", "subfinder"]}Environment Variables
Set your API keys as environment variables:
Anthropic
export ANTHROPIC_API_KEY="sk-ant-..."OpenAI
export OPENAI_API_KEY="sk-..."export GOOGLE_API_KEY="..."Configuration Options
| Option | Type | Default | Description |
|---|---|---|---|
provider | string | "anthropic" | AI provider to use |
model | string | "claude-sonnet-4-20250514" | Model identifier |
agent | string | "web-application" | Default agent type |
tools | array | [] | Enabled security tools |
timeout | number | 300 | Command timeout in seconds |
verbose | boolean | false | Enable verbose logging |
Agent-Specific Configuration
Each agent can have its own configuration:
{ "agents": { "web-application": { "tools": ["nuclei", "nikto", "sqlmap"], "scope": ["*.example.com"] }, "network-pentest": { "tools": ["nmap", "masscan"], "ports": "1-65535" } }}Tool Configuration
Configure individual tools:
{ "tools": { "nmap": { "args": "-sV -sC", "timeout": 600 }, "nuclei": { "templates": ["cves", "vulnerabilities"], "severity": ["critical", "high"] } }}Caution
Never commit API keys to version control. Use environment variables or a .env file (added to .gitignore).