-
Notifications
You must be signed in to change notification settings - Fork 14
Expand file tree
/
Copy pathenv.example
More file actions
195 lines (158 loc) · 7.47 KB
/
env.example
File metadata and controls
195 lines (158 loc) · 7.47 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
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
# Database
DATABASE_URL="postgresql://hive_user:hive_password@localhost:5432/hive_db"
# Next.js
NEXTAUTH_URL="http://localhost:3000"
NEXTAUTH_SECRET="your-secret-key-here"
# Authentication
# Generate a secure JWT secret using: npm run setup
JWT_SECRET="your-64-character-hex-secret-here"
# GitHub OAuth
# Create a GitHub OAuth app at: https://github.com/settings/developers
GITHUB_CLIENT_ID="your-github-client-id"
GITHUB_CLIENT_SECRET="your-github-client-secret"
# GitHub App
# The slug of your GitHub App (found in your app's settings)
GITHUB_APP_SLUG="your-github-app-slug"
# AI Services - Anthropic
# When USE_MOCKS=true, the mock Anthropic API is used automatically
# Otherwise, get your API key from: https://console.anthropic.com/
# Note: This overrides the ANTHROPIC_API_KEY in the AI Services section below
ANTHROPIC_API_KEY="your-anthropic-api-key-here"
# Development/Codespace Authentication
# When POD_URL is defined, a mock authentication provider will be available
# This allows for easy development without requiring GitHub OAuth setup
# Users can sign in with any username (email auto-generated as username@mock.dev)
# Example: POD_URL="https://your-codespace.github.dev"
# POD_URL="http://localhost:3000"
# Token Encryption (for GitHub OAuth tokens)
# Generate a secure 32+ character key for token encryption
TOKEN_ENCRYPTION_KEY="your-32-character-encryption-key-here"
TOKEN_ENCRYPTION_KEY_ID="k2"
#Key Configuration for rotation
ROTATION_OLD_KEYS='{"k1":"<64-hex-old>"}'
# API Authentication
# Secret token for admin API endpoints (e.g. task title updates)
API_TOKEN="your-secret-api-token-here"
# External Services API Keys
# Stakwork API - Get your API key from https://jobs.stakwork.com
STAKWORK_API_KEY="your-stakwork-api-key-here"
STAKWORK_BASE_URL="https://jobs.stakwork.com/api/v1"
# Comma-separated workflow IDs: Live,Test,Unit
STAKWORK_WORKFLOW_ID="43198,43199,43200"
# Generic AI generation workflow ID for architecture, user stories, etc.
STAKWORK_AI_GENERATION_WORKFLOW_ID="your-ai-generation-workflow-id"
# Task workflow ID for user-created and task coordinator tasks
STAKWORK_TASK_WORKFLOW_ID="your-task-workflow-id"
# Bounty workflow ID for async bounty pipeline
STAKWORK_BOUNTY_WORKFLOW_ID=
# Diagram generation workflow ID for whiteboard diagram generation
STAKWORK_DIAGRAM_WORKFLOW_ID=
# Learning analysis workflow ID — triggered on PR merge to extract learnings into the workspace Neo4j graph
STAKWORK_LEARNING_WORKFLOW_ID=
# Workflow Editor - workflow ID for interactive workflow editing mode
STAKWORK_WORKFLOW_EDITOR_WORKFLOW_ID="your-workflow-editor-workflow-id"
# Project Debugger - workflow ID for debugging Stakwork projects
STAKWORK_WORKFLOW_PROJECT_DEBUGGER_ID="your-project-debugger-workflow-id"
# Plan Mode - workflow ID for conversational feature planning
STAKWORK_PLAN_MODE_WORKFLOW_ID=
# Plan Mode - AI model to use for plan mode workflows (e.g., claude-3-5-sonnet)
PLAN_MODE_MODEL=
# Pool Manager API - Get your API key from https://workspaces.sphinx.chat
POOL_MANAGER_API_KEY="your-pool-manager-api-key-here"
POOL_MANAGER_BASE_URL="https://workspaces.sphinx.chat/api"
# Swarm Superadmin API Key - Used for privileged swarm creation
SWARM_SUPERADMIN_API_KEY="your-swarm-superadmin-api-key-here"
SWARM_SUPER_ADMIN_URL="https://swarm.superadmin.api/v1"
# Graph Service Configuration
# Port for the graph microservice (default: 3355)
# GRAPH_SERVICE_PORT="3355"
# LiveKit Call Integration
# When USE_MOCKS=true, resolves to http://localhost:3000/api/mock/livekit/
# Production: https://call.livekit.io/
LIVEKIT_CALL_BASE_URL="https://call.livekit.io/"
# Pool Manager API Credentials
POOL_MANAGER_API_USERNAME="your-pool-manager-api-username-here"
POOL_MANAGER_API_PASSWORD="your-pool-manager-api-password-here"
# Pusher - Real-time messaging service
# Create a free account at https://pusher.com and create an app
PUSHER_APP_ID="your-pusher-app-id"
PUSHER_KEY="your-pusher-key"
PUSHER_SECRET="your-pusher-secret"
PUSHER_CLUSTER="your-pusher-cluster"
# Pusher Client-side (public) variables
NEXT_PUBLIC_PUSHER_KEY="your-pusher-key"
NEXT_PUBLIC_PUSHER_CLUSTER="your-pusher-cluster"
# Set to "false" to disable whiteboard real-time collaboration
NEXT_PUBLIC_WHITEBOARD_COLLABORATION="true"
# AWS S3 - File storage for workspace logos and attachments (Vercel OIDC)
# Uses Vercel's OIDC provider for secure, temporary AWS credentials
# No static AWS access keys required
#
# Setup Instructions:
# 1. Create IAM role in AWS with S3 permissions for your bucket
# 2. Configure OIDC trust relationship for Vercel
# Documentation: https://vercel.com/docs/security/vercel-authentication/oidc
# 3. Set AWS_ROLE_ARN in Vercel environment variables
#
# Required:
AWS_ROLE_ARN="arn:aws:iam::ACCOUNT_ID:role/ROLE_NAME"
S3_BUCKET_NAME="your-s3-bucket-name"
AWS_REGION="us-east-1"
# Feature Flags
# Note: NEXT_PUBLIC_ prefix makes flags available to both client and server
NEXT_PUBLIC_FEATURE_CODEBASE_RECOMMENDATION=false
NEXT_PUBLIC_FEATURE_WORKSPACE_LOGO=false
NEXT_PUBLIC_FEATURE_CHAT_CODE_FORMATTING=false
NEXT_PUBLIC_FEATURE_TASK_AGENT_MODE=false
FEATURE_WHITEBOARD_STAKWORK_POSITIONING=false
# AI Services
# Anthropic API Key for Claude AI (used for user story generation, etc.)
# Get your API key from: https://console.anthropic.com/
ANTHROPIC_API_KEY="your-anthropic-api-key-here"
# OpenAI API Key (optional, for future features)
# OPENAI_API_KEY=""
# Payment Processing (for bounty system)
# STRIPE_SECRET_KEY=""
# STRIPE_PUBLISHABLE_KEY=""
# Sphinx Tribes Integration
NEXT_PUBLIC_SPHINX_TRIBES_URL="https://community.sphinx.chat"
# Stakwork setup
STAKWORK_CUSTOMERS_EMAIL="customer-email"
STAKWORK_CUSTOMERS_PASSWORD="customer-password"
# Gemini API Configuration
GEMINI_API_KEY="your-gemini-api-key"
# Development mode is automatically handled by NODE_ENV
# NODE_ENV=development (set by 'npm run dev')
# NODE_ENV=production (set by 'npm run build' and 'npm run start')
# This controls development-only features like test toggles and mock flows
# Task Coordinator / Cron Configuration
# Hours of inactivity before a task is considered stale (default: 24)
# Stale tasks will have their pods released and workflow marked as HALTED
# STALE_TASK_HOURS="24"
# Mock Services
# Set to "true" to use mock implementations for external services
# Useful for local development without real API credentials
USE_MOCKS=false
# GITHUB_WEBHOOK_URL="https://app.example.com/api/github/webhook"
# Vercel Blob - Storage for agent log traces
# Create a blob store at: https://vercel.com/docs/storage/vercel-blob
BLOB_READ_WRITE_TOKEN="your-vercel-blob-token-here"
# Pool Superadmins - Comma-separated list of GitHub usernames with pool config privileges
POOL_SUPERADMINS="username1,username2"
# Vercel Redis integration — injected automatically on Vercel
# REDIS_URL="redis://..."
# EC2_ALERTS_SNS_SECRET="" # Optional: shared secret for future SNS signature validation
# Notification Dispatcher Cron - set to "true" to enable deferred notification dispatch
NOTIFICATION_DISPATCHER_ENABLED="true"
# Stripe Payment Integration
STRIPE_SECRET_KEY="sk_test_..."
STRIPE_WEBHOOK_SECRET="whsec_..."
STRIPE_SUCCESS_URL="http://localhost:3000/onboarding?payment=success"
STRIPE_CANCEL_URL="http://localhost:3000/onboarding?payment=cancelled"
# Comma-separated list of repos to fork during graph workspace onboarding. First entry is used.
ONBOARDING_FORK_REPOS="https://github.com/org/repo"
# Lightning Network (LND) Payment Integration
LIGHTNING_NODE_URL=""
LIGHTNING_MACAROON=""
LIGHTNING_TLS_CERT="" # base64-encoded contents of tls.cert from the LND node
LIGHTNING_AMOUNT_SATS="500000"