Skip to main content

Environment Variables

cascadeflow reads configuration from environment variables as part of its resolution chain: Code > Environment Variables > Config Files > Defaults.

Harness Configuration

VariableTypeDescription
CASCADEFLOW_HARNESS_MODEoff | observe | enforceHarness activation mode
CASCADEFLOW_HARNESS_BUDGETfloatBudget limit in USD
CASCADEFLOW_HARNESS_MAX_TOOL_CALLSintMaximum tool calls allowed
CASCADEFLOW_HARNESS_MAX_LATENCY_MSfloatMaximum latency in milliseconds
CASCADEFLOW_HARNESS_COMPLIANCEgdpr | hipaa | pci | strictCompliance mode
CASCADEFLOW_CONFIGpathPath to config file

Provider API Keys

VariableProvider
OPENAI_API_KEYOpenAI
ANTHROPIC_API_KEYAnthropic
GROQ_API_KEYGroq
TOGETHER_API_KEYTogether AI
OPENROUTER_API_KEYOpenRouter
HUGGINGFACE_API_KEYHugging Face

Resolution Order

When cascadeflow.init() is called, settings resolve in this order (first wins):
  1. Code — arguments passed directly to init(), run(), or @agent()
  2. EnvironmentCASCADEFLOW_HARNESS_* variables
  3. Config file — path from CASCADEFLOW_CONFIG or default locations
  4. Defaults — mode=off, no budget, no compliance

Example

# .env
CASCADEFLOW_HARNESS_MODE=observe
CASCADEFLOW_HARNESS_BUDGET=1.00
OPENAI_API_KEY=sk-...
ANTHROPIC_API_KEY=sk-ant-...
import cascadeflow

# Picks up mode="observe" and budget=1.00 from env
report = cascadeflow.init()
print(report.config_sources)  # Shows where each setting came from