-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy path.env.example
More file actions
193 lines (160 loc) · 7.23 KB
/
Copy path.env.example
File metadata and controls
193 lines (160 loc) · 7.23 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
# Environment Variables — Tadpole OS
# Copy this file to .env and fill in your values.
# NEVER commit .env to version control.
# -----------------------------------------------------------------------
# Authentication
# -----------------------------------------------------------------------
# SECRET — Generate with: openssl rand -hex 32
# This token is required by the Rust engine for all protected API endpoints.
NEURAL_TOKEN=your-secret-token-here
# NEURAL_ENGINE_ACCESS_TOKEN can also be used as an alternative to NEURAL_TOKEN.
NEURAL_ENGINE_ACCESS_TOKEN=your-secret-token-here
# SECURITY WARNING: Do NOT set VITE_NEURAL_TOKEN in production web deployments.
# Any VITE_ prefixed variable is embedded directly into client JS bundles.
# For local dev only or manual settings entry.
# VITE_NEURAL_TOKEN=your-secret-token-here
ALLOWED_ORIGINS=http://localhost:3000,http://127.0.0.1:3000
# -----------------------------------------------------------------------
# AI Provider Keys
# -----------------------------------------------------------------------
# Get your keys at the following URLs:
# OpenAI: https://platform.openai.com/
# Anthropic: https://console.anthropic.com/
# Google Gemini: https://aistudio.google.com/
# Groq: https://console.groq.com/
# DeepSeek: https://platform.deepseek.com/
OPENAI_API_KEY=your-openai-api-key-here
ANTHROPIC_API_KEY=your-anthropic-api-key-here
GOOGLE_API_KEY=your-google-api-key-here
GROQ_API_KEY=your-groq-api-key-here
DEEPSEEK_API_KEY=your-deepseek-api-key-here
REPLICATE_API_KEY=your-replicate-api-key-here
OLLAMA_HOST=http://localhost:11434
# -----------------------------------------------------------------------
# Infrastructure
# -----------------------------------------------------------------------
# Comma-separated list of remote Swarm Bunker nodes.
# Format: id:name:hostname
BUNKER_NODES=bunker-1:Swarm Bunker 1:tadpole-linux,bunker-2:Swarm Bunker 2:tadpole-bunker-2
# Optional: Override the default port (8000)
# PORT=8000
# Optional: Override the static file directory for production serving
# STATIC_DIR=dist
# Optional: Set the absolute root directory of the workspace for script resolution
# WORKSPACE_ROOT=/path/to/tadpole-os
# Optional: Set the absolute root directory for static assets and models
# RESOURCE_ROOT=/path/to/tadpole-assets
# Optional: Heartbeat interval in seconds
# HEARTBEAT_INTERVAL_SECS=3
# Optional: Skip baseline database seeding (useful for high-performance testing)
# SKIP_DB_SEED=false
# Optional: Allow Hotfix Reconciler to pre-mark out-of-band schema changes as applied.
# ALLOW_MIGRATION_RECONCILE=false
# Optional: Allow Hotfix Reconciler to overwrite migration checksums on version mismatch.
# ALLOW_CHECKSUM_SYNC=false
# -----------------------------------------------------------------------
# Governance & Security
# -----------------------------------------------------------------------
# PRIVACY_MODE — When true, only local providers (localhost/ollama) are allowed.
PRIVACY_MODE=false
# TADPOLE_ALLOW_LOCAL_HTTP — Allow insecure HTTP connections for local LLM providers.
# TADPOLE_ALLOW_LOCAL_HTTP=false
# PROVIDER_TIMEOUT_SECS — Timeout in seconds for LLM provider HTTP requests.
# Increase for slow local models. Default: 60
# PROVIDER_TIMEOUT_SECS=60
# CAPABILITY_KEY_CURR — Current signing key for the Capability-Based Security (CBS/SEC-04) system.
# Must be a 32-byte value encoded as a 64-character hex string.
# Generate with: openssl rand -hex 32
# If not set, a random ephemeral key is generated on each engine boot (development only).
# CAPABILITY_KEY_CURR=
# CAPABILITY_KEY_PREV — Previous signing key for zero-downtime key rotation.
# Used to verify tokens signed under the outgoing key during a rotation window.
# CAPABILITY_KEY_PREV=
# TEST_PROVIDER_KEY — Used only in Rust integration tests (provider.rs).
# Do NOT set this in production. It is manipulated by the test harness at runtime.
# TEST_PROVIDER_KEY=
# REQUIRE_SECURITY_SCAN — When true, enforces fail-closed static security scans for all dynamic skills/workflows/hooks.
# If the security scanner is unavailable or errors out, capability registration/saving will be blocked.
# REQUIRE_SECURITY_SCAN=false
# -----------------------------------------------------------------------
# SME Data Intelligence & Telemetry
# -----------------------------------------------------------------------
# Interval in minutes for the background Ingestion Worker to crawl connectors
SME_SYNC_INTERVAL_MINS=30
# Optional: Set to true to export OpenTelemetry spans to stdout
OTEL_STDOUT_EXPORTER=false
# Optional: Set the OpenTelemetry OTLP network exporter endpoint (gRPC)
OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4317
# Interval in seconds between cognitive memory compression runs
MEMORY_COMPRESSION_INTERVAL_SECS=300
# -----------------------------------------------------------------------
# Rust Engine Core Settings
# -----------------------------------------------------------------------
BIND_ADDRESS=127.0.0.1
RUST_LOG=server_rs=info,tower_http=debug
CLUSTER_ID=local-1
MAX_TASK_LENGTH=1000
DATA_DIR=./data
DATABASE_URL=sqlite://data/tadpole.db
AUDIT_PRIVATE_KEY=
MAX_AGENTS=100
DISABLE_TELEMETRY=false
# -----------------------------------------------------------------------
# Workflow & Concurrency
# -----------------------------------------------------------------------
WORKFLOW_CONCURRENCY_LIMIT=5
WORKFLOW_AGENT_TIMEOUT_SECS=600
WORKFLOW_ENCRYPTION_KEY=
MAX_CONCURRENT_RUNNERS=10
TOKIO_THREAD_STACK_SIZE=2097152
# -----------------------------------------------------------------------
# Model & Vector DB Settings
# -----------------------------------------------------------------------
LANCEDB_DEDUPE_THRESHOLD=0.9
LANCEDB_DRIFT_THRESHOLD=0.8
KUBERNETES_SERVICE_HOST=
PIPER_MODEL_PATH=
VAD_MODEL_PATH=
WHISPER_MODEL_PATH=
# -----------------------------------------------------------------------
# Security, Proxy & Failover
# -----------------------------------------------------------------------
TRUST_PRIVATE_NETWORKS=false
ALLOW_UNSAFE_CORS=false
TRUSTED_PROXIES=
DISCORD_WEBHOOK=
FAILOVER_AMBER_THRESHOLD=3
FAILOVER_RED_THRESHOLD=5
FAILOVER_MAX_ATTEMPTS=3
# Set to "true" to run the engine in read-only mirror mode (no task execution, status/metrics only)
MIRROR_MODE=false
# -----------------------------------------------------------------------
# Environment, Admin & Oversight Tokens
# -----------------------------------------------------------------------
ENV=development
TADPOLE_ENV=development
NEURAL_ADMIN_TOKEN=
ADMIN_TOKEN=
OVERSIGHT_PUBLIC_KEY=
# Salt value used for graph node hashing
TADPOLE_GRAPH_SALT=
# Governance settings & thresholds
ENGINE_RATE_LIMIT=2000
MAX_CLUSTERS=10
AUTO_APPROVE_SAFE_SKILLS=false
DEFAULT_AGENT_BUDGET_USD=10.0
DEFAULT_MISSION_BUDGET_USD=5.0
DEFAULT_INTELLIGENCE_MODEL=
DEFAULT_PROVIDER=
TADPOLE_NULL_PROVIDERS=
MAX_SWARM_DEPTH=5
CONTINUITY_MEM_THRESHOLD=0.85
# -----------------------------------------------------------------------
# A2A Economics & Web3 Settlement
# -----------------------------------------------------------------------
# Optional: The RPC URL for Web3 exits/settlements.
# A2A_WEB3_RPC_URL=
# Optional: The Web3 vault wallet contract address for settlement exits.
# A2A_WEB3_VAULT_ADDRESS=
# Optional: Set to true in unit test environments to bypass interactive oversight budget checks.
# A2A_TEST_MODE=