Files
arbiter/.env.example

148 lines
4.5 KiB
Plaintext

# Arbiter Environment Configuration
# Copy this file to .env and fill in your values
# All variables are prefixed with ARBITER_ unless noted
# =============================================================================
# Database
# =============================================================================
# PostgreSQL connection URL (required)
ARBITER_DATABASE_URL=postgresql+asyncpg://arbiter:arbiter@localhost:5432/arbiter
# Connection pool settings
ARBITER_DATABASE_POOL_SIZE=5
ARBITER_DATABASE_MAX_OVERFLOW=10
# =============================================================================
# Redis
# =============================================================================
# Redis connection URL (required)
ARBITER_REDIS_URL=redis://localhost:6379/0
# Connection pool size
ARBITER_REDIS_MAX_CONNECTIONS=10
# =============================================================================
# LLM Configuration
# =============================================================================
# API keys (at least one required) - NOT prefixed with ARBITER_
OPENAI_API_KEY=sk-...
# ANTHROPIC_API_KEY=sk-ant-...
# Default model for agents
ARBITER_DEFAULT_MODEL=gpt-4o
# Request settings
ARBITER_LLM_TIMEOUT=60
ARBITER_LLM_MAX_RETRIES=3
# =============================================================================
# Cost Controls
# =============================================================================
# Maximum tokens per review
ARBITER_MAX_TOKENS_PER_REVIEW=50000
# Maximum cost per review in USD
ARBITER_MAX_COST_PER_REVIEW_USD=0.50
# Response cache TTL in hours
ARBITER_CACHE_TTL_HOURS=24
# =============================================================================
# GitHub Integration
# =============================================================================
# GitHub API token for fetching diffs and posting comments
ARBITER_GITHUB_TOKEN=ghp_...
# Webhook secret for HMAC verification
ARBITER_GITHUB_WEBHOOK_SECRET=your-webhook-secret
# GitHub API base URL (for GitHub Enterprise)
ARBITER_GITHUB_BASE_URL=https://api.github.com
# =============================================================================
# GitLab Integration
# =============================================================================
# GitLab API token for fetching diffs and posting comments
ARBITER_GITLAB_TOKEN=glpat-...
# Webhook token for verification
ARBITER_GITLAB_WEBHOOK_TOKEN=your-webhook-token
# GitLab instance base URL
ARBITER_GITLAB_BASE_URL=https://gitlab.com
# =============================================================================
# API Settings
# =============================================================================
# OpenAPI metadata
ARBITER_API_TITLE=Arbiter API
ARBITER_API_VERSION=0.5.0
# CORS allowed origins (JSON array)
ARBITER_CORS_ORIGINS=["http://localhost:3000"]
# Rate limiting
ARBITER_API_RATE_LIMIT_PER_MINUTE=60
# =============================================================================
# Worker Settings
# =============================================================================
# Maximum concurrent jobs per worker
ARBITER_WORKER_MAX_JOBS=10
# Job timeout in seconds
ARBITER_WORKER_JOB_TIMEOUT=300
# Retry attempts on failure
ARBITER_WORKER_RETRY_ATTEMPTS=3
# =============================================================================
# Integration Settings
# =============================================================================
# API request timeout for platform integrations
ARBITER_INTEGRATION_TIMEOUT=30
# Retry attempts for platform API calls
ARBITER_INTEGRATION_MAX_RETRIES=3
# Context name for commit status checks
ARBITER_STATUS_CHECK_CONTEXT=arbiter
# =============================================================================
# Feature Flags
# =============================================================================
# Post review comments on PRs/MRs
ARBITER_POST_COMMENTS=true
# Update commit status checks
ARBITER_UPDATE_STATUS=true
# Enable follow-up question handling in PR comments
ARBITER_FOLLOWUP_ENABLED=true
# Minimum confidence to process a follow-up question (0.0 - 1.0)
ARBITER_FOLLOWUP_CONFIDENCE_THRESHOLD=0.5
# Maximum tokens per follow-up response
ARBITER_FOLLOWUP_MAX_TOKENS_PER_RESPONSE=2000
# =============================================================================
# Paths
# =============================================================================
# Directory containing prompt templates
ARBITER_TEMPLATES_DIR=templates
# Output format (rich, json, markdown)
ARBITER_OUTPUT_FORMAT=rich