./configs/ directory.
Quick Start
Copy the example configuration and modify it for your application:Configuration File Structure
Configuration files support three main sections:Authentication Section
Configure how Shannon authenticates to your application. See the Authentication Guide for detailed examples.Type of authentication mechanismOptions:
form- Standard login formsso- Single sign-on (Google, OAuth)api- API token authenticationbasic- HTTP Basic Auth
URL for the login page or endpoint
Login credentials for the test account
Step-by-step natural language instructions for login (1-20 steps)Use
$username, $password, and $totp variables:Condition that indicates successful authentication
Rules Section
Define testing behavior withavoid and focus rules to control where Shannon tests.
Areas to skip during testing (max 50 rules)
Areas to prioritize during testing (max 50 rules)
Rule Properties
Each rule inavoid or focus arrays has these properties:
Human-readable description (1-200 characters)
Rule matching typeOptions:
path- Match URL path patternssubdomain- Match subdomainsdomain- Match domainsmethod- Match HTTP methodsheader- Match HTTP headersparameter- Match query/body parameters
Pattern or value to match (1-1000 characters)Supports wildcards with
*:Pipeline Section
Control retry behavior and concurrency for rate limit management.Retry strategy presetOptions:
default- Standard retry (30min max backoff)subscription- Extended retry for Anthropic subscription plans (6h max backoff, 100 retries)
Number of vulnerability pipelines to run simultaneously (1-5, default: 5)Lower values reduce API usage spikes but increase total runtime:
Subscription Plan Rate LimitsAnthropic subscription plans reset usage on a rolling 5-hour window. If you hit rate limits, use:This configuration allows Shannon to wait for the rate limit window to reset automatically.
Schema Validation
All configuration files are validated against the JSON schema atconfigs/config-schema.json. Invalid configurations will fail with detailed error messages during startup.
Common Validation Errors
Missing required fields
Missing required fields
Invalid enum values
Invalid enum values
String length violations
String length violations
Environment Variables
Some settings are configured via environment variables in.env rather than YAML. See:
- Cloud Providers Guide for AWS Bedrock and Google Vertex AI
- Authentication Guide for API keys and tokens
Related Resources
Authentication
Setup login flows and 2FA
Cloud Providers
AWS Bedrock and Google Vertex AI