Quickstart
# config.yaml
settings:
persist_cache: true
logs_dir: "blast-logs/" # Log to files (null for terminal-only)
blastai_log_level: "info" # BLAST engine log level
browser_use_log_level: "info" # Browser operations log level
# Start BLAST with your config
blastai serve --config config.yaml
LLM Provider
Configure which models to use and their API keys:
constraints:
# For OpenAI models:
llm_model: "openai:gpt-4.1" # Main model for complex tasks
llm_model_mini: "openai:gpt-4.1-mini" # Model for simpler tasks
# For Google Gemini models:
llm_model: "google_genai:gemini-2.0-flash-exp"
llm_model_mini: "google_genai:gemini-2.0-flash-exp"
API keys can be provided in three ways:
- Environment variables:
export OPENAI_API_KEY=sk-...
export OPENAI_BASE_URL=https://your-endpoint.com # Optional
export GOOGLE_API_KEY=AIza... # Get from aistudio.google.com
.env
file:
# For OpenAI models
OPENAI_API_KEY=sk-...
OPENAI_BASE_URL=https://your-endpoint.com # Optional
# For Google Gemini models
GOOGLE_API_KEY=AIza... # Get from aistudio.google.com
- Command line:
blastai serve --env="OPENAI_API_KEY=sk-..."
blastai serve --env="GOOGLE_API_KEY=AIza..."
The system automatically detects the model provider from the prefix (openai:
or google_genai:
) and uses the appropriate API key.
Secrets
settings:
secrets_file_path: "secrets.env" # Path to secrets file
The secrets file can contain usernames and passwords for web apps BLAST may need to access:
jira_username=calebwin
jira_password=akjgvowi
Browser
settings:
local_browser_path: "none" # Path to Chrome/Chromium binary
The local_browser_path
setting accepts these values:
"none"
(default) - Use system-installed browser
"auto"
- Auto-detect browser location
"/path/to/browser"
- Specific browser binary path
Caching
settings:
persist_cache: false # Persist cache between serving sessions
Logging
Control logging behavior and verbosity:
settings:
# Log file directory (set to null to log to terminal only)
logs_dir: "blast-logs/"
# Component log levels
blastai_log_level: "debug" # Logging level for BLAST
browser_use_log_level: "info" # Logging level for browser_use
When logs_dir
is set (default: “blast-logs/”):
- All logs go to files based on their levels
- Only engine metrics shown in terminal
- Log file paths shown in endpoint messages
When logs_dir
is null:
- All logs go to terminal based on their levels
- Engine metrics are not shown
Available log levels (from most to least verbose):
"debug"
- Detailed debugging information
"info"
- General information
"warning"
- Warning messages
"error"
- Error messages only
"critical"
- Critical errors only
Next Steps