Community Edition

Configuration

Configure Crucible Community Edition with your API keys, model preferences, and environment settings.

Environment Variables

Configure Crucible via environment variables in your .env file.

API Keys

# OpenAI
OPENAI_API_KEY=sk-...

# Anthropic
ANTHROPIC_API_KEY=sk-ant-...

# Google (Gemini)
GOOGLE_API_KEY=...

# DeepSeek
DEEPSEEK_API_KEY=...

# xAI (Grok)
XAI_API_KEY=...
bash

Database Configuration

DATABASE_URL=postgresql://user:password@localhost:5432/roundtable
POSTGRES_USER=roundtable
POSTGRES_PASSWORD=your-secure-password
POSTGRES_DB=roundtable
bash

Application Settings

# JWT Secret (generate a secure random string)
JWT_SECRET=your-secret-key-here

# API Base URL
API_BASE_URL=http://localhost:8000

# Frontend URL
FRONTEND_URL=http://localhost:3000

# Environment
ENVIRONMENT=development
bash

Optional: S3 for Artifacts

AWS_ACCESS_KEY_ID=...
AWS_SECRET_ACCESS_KEY=...
AWS_REGION=us-east-1
S3_BUCKET_NAME=roundtable-artifacts
bash

If not configured, artifacts are stored locally.

Model Configuration

Configure which models are available and their default assignments:

# Enable/disable specific providers
ENABLE_OPENAI=true
ENABLE_ANTHROPIC=true
ENABLE_GOOGLE=true
ENABLE_DEEPSEEK=true

# Default model preferences
DEFAULT_OPENAI_MODEL=gpt-4
DEFAULT_ANTHROPIC_MODEL=claude-sonnet-4.5
DEFAULT_GOOGLE_MODEL=gemini-2.5
bash

Security Configuration

Security best practices:

  • Use strong, unique passwords for database
  • Generate a secure JWT_SECRET (at least 32 characters)
  • Never commit .env files to version control
  • Use environment-specific configurations
  • Enable HTTPS in production
  • Restrict database access to application servers only

Verifying Configuration

After configuration, verify everything works:

# Check API health
curl http://localhost:8000/api/health

# Check database connection
docker compose exec api python -c "from app.db.session import get_db; print('DB OK')"

# Test model connectivity
# (Check logs for model API calls)
bash