Skip to content

Environment Variables

Overview

Swarms uses environment variables for configuration management and secure credential storage. This approach keeps sensitive information like API keys out of your code and allows for easy configuration changes across different environments.

Core Environment Variables

Framework Configuration

Variable Description Example
SWARMS_VERBOSE_GLOBAL Controls global logging verbosity True or False
WORKSPACE_DIR Defines the workspace directory for agent operations agent_workspace

LLM Provider API Keys

OPENAI_API_KEY="your-openai-key"
ANTHROPIC_API_KEY="your-anthropic-key"
GROQ_API_KEY="your-groq-key"
GEMINI_API_KEY="your-gemini-key"
HUGGINGFACE_TOKEN="your-huggingface-token"
PPLX_API_KEY="your-perplexity-key"
AI21_API_KEY="your-ai21-key"
COHERE_API_KEY="your-cohere-key"
MISTRAL_API_KEY="your-mistral-key"
TOGETHER_API_KEY="your-together-key"

Tool Provider Keys

BING_BROWSER_API="your-bing-key"
BRAVESEARCH_API_KEY="your-brave-key"
TAVILY_API_KEY="your-tavily-key"
YOU_API_KEY="your-you-key"
EXA_API_KEY="your-exa-key"
MULTION_API_KEY="your-multion-key"

Security Best Practices

Environment File Management

  1. Create a .env file in your project root
  2. Never commit .env files to version control
  3. Add .env to your .gitignore:
    echo ".env" >> .gitignore
    

API Key Security

Important Security Considerations

  • Rotate API keys regularly
  • Use different API keys for development and production
  • Never hardcode API keys in your code
  • Limit API key permissions to only what's necessary
  • Monitor API key usage for unusual patterns

Template Configuration

Create a .env.example template without actual values:

# Required Configuration
OPENAI_API_KEY=""
ANTHROPIC_API_KEY=""
GROQ_API_KEY=""
WORKSPACE_DIR="agent_workspace"

# Optional Configuration
SWARMS_VERBOSE_GLOBAL="False"

Loading Environment Variables

from dotenv import load_dotenv
import os

# Load environment variables
load_dotenv()

# Access variables
workspace_dir = os.getenv("WORKSPACE_DIR")
openai_key = os.getenv("OPENAI_API_KEY")

Environment Setup Guide

pip install python-dotenv
cp .env.example .env
  • Open .env in your text editor
  • Add your API keys and configuration
  • Save the file
import os
from dotenv import load_dotenv

load_dotenv()
assert os.getenv("OPENAI_API_KEY") is not None, "OpenAI API key not found"

Environment-Specific Configuration

WORKSPACE_DIR="agent_workspace"
SWARMS_VERBOSE_GLOBAL="True"
WORKSPACE_DIR="/var/swarms/workspace"
SWARMS_VERBOSE_GLOBAL="False"
WORKSPACE_DIR="test_workspace"
SWARMS_VERBOSE_GLOBAL="True"

Troubleshooting

Common Issues

Environment Variables Not Loading
  • Verify .env file exists in project root
  • Confirm load_dotenv() is called before accessing variables
  • Check file permissions
API Key Issues
  • Verify key format is correct
  • Ensure key has not expired
  • Check for leading/trailing whitespace
Workspace Directory Problems
  • Confirm directory exists
  • Verify write permissions
  • Check path is absolute when required