-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy path.env.example
More file actions
145 lines (109 loc) · 5.01 KB
/
.env.example
File metadata and controls
145 lines (109 loc) · 5.01 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
# CodeFRAME Environment Configuration
# Copy this file to .env and fill in your actual values
# DO NOT commit .env to version control!
# ============================================================================
# AI Provider API Keys (REQUIRED)
# ============================================================================
# Anthropic API Key (for Claude)
# Get yours at: https://console.anthropic.com/
ANTHROPIC_API_KEY=sk-ant-api03-...
# OpenAI API Key (for GPT-4)
# Get yours at: https://platform.openai.com/api-keys
# Optional for Sprint 1 - only needed if using GPT-4 agents
OPENAI_API_KEY=sk-...
# ============================================================================
# External Engine Configuration
# ============================================================================
# Kilocode engine (cf work start --engine kilocode)
# Path to the kilo binary; defaults to 'kilo' on $PATH
# KILOCODE_PATH=kilo
# Optional model override passed to kilo --model
# KILOCODE_MODEL=
# Optional extra CLI flags passed to kilo (space-separated)
# KILOCODE_FLAGS=
# ============================================================================
# Database Configuration
# ============================================================================
# SQLite database path (relative to project root or absolute)
# Default: .codeframe/state.db
# DATABASE_PATH=.codeframe/state.db
# ============================================================================
# Status Server Configuration
# ============================================================================
# Host to bind the Status Server to
# Default: 0.0.0.0 (all interfaces)
# API_HOST=0.0.0.0
# Port for the Status Server
# Default: 8080
# API_PORT=8080
# CORS allowed origins (comma-separated)
# Development: Use localhost dev server ports
# Staging/Production: Add your server's domain/IP
# Default: http://localhost:3000,http://localhost:5173
# CORS_ALLOWED_ORIGINS=http://localhost:3000,http://localhost:5173
# ============================================================================
# Web UI Configuration
# ============================================================================
# Web UI runs separately on port 3000
# Set these in .env or web-ui/.env.local:
# NEXT_PUBLIC_API_URL=http://localhost:8080
# NEXT_PUBLIC_WS_URL=ws://localhost:8080/ws
# ============================================================================
# Logging Configuration
# ============================================================================
# Log level: DEBUG, INFO, WARNING, ERROR, CRITICAL
# Default: INFO
# LOG_LEVEL=INFO
# Log file path (optional)
# Default: .codeframe/logs/codeframe.log
# LOG_FILE=.codeframe/logs/codeframe.log
# ============================================================================
# Development Flags
# ============================================================================
# Enable debug mode (verbose logging, stack traces in API responses)
# Default: false
# DEBUG=false
# Enable hot reload for development
# Default: false
# HOT_RELOAD=false
# ============================================================================
# Authentication (fastapi-users)
# ============================================================================
# Secret key for JWT token signing (REQUIRED in production)
# Generate with: openssl rand -hex 32
AUTH_SECRET=CHANGE-ME-IN-PRODUCTION
# JWT token lifetime in seconds (default: 7 days)
# JWT_LIFETIME_SECONDS=604800
# Enable authentication requirement (default: false for migration)
# Set to true in production to enforce authentication
# AUTH_REQUIRED=false
# ============================================================================
# GitHub Integration (Optional - for PR creation)
# ============================================================================
# GitHub Personal Access Token with repo scope
# Get yours at: https://github.com/settings/tokens
# Required for: creating PRs, merging PRs, GitHub integration
# GITHUB_TOKEN=ghp_...
# Target repository in format "owner/repo"
# Example: frankbria/codeframe
# GITHUB_REPO=owner/repo
# ============================================================================
# Rate Limiting Configuration
# ============================================================================
# Enable/disable rate limiting (default: true)
# Set to false to disable rate limiting entirely
RATE_LIMIT_ENABLED=true
# Rate limit for authentication endpoints (default: 10/minute)
# Format: "N/period" where period is second, minute, hour, or day
RATE_LIMIT_AUTH=10/minute
# Rate limit for standard API endpoints (default: 100/minute)
RATE_LIMIT_STANDARD=100/minute
# Rate limit for AI/expensive operations like chat (default: 20/minute)
RATE_LIMIT_AI=20/minute
# Rate limit for WebSocket connections (default: 30/minute)
RATE_LIMIT_WEBSOCKET=30/minute
# Storage backend for rate limiting (default: memory)
# Options: memory (single instance) or redis (distributed)
RATE_LIMIT_STORAGE=memory
# Redis URL for distributed rate limiting (required if RATE_LIMIT_STORAGE=redis)
# REDIS_URL=redis://localhost:6379/0