anurag008w commited on
Commit
c2d16cd
Β·
unverified Β·
1 Parent(s): ceff200

Enhance .env.example with clearer instructions

Browse files

Updated comments for clarity and added API key rotation section.

Files changed (1) hide show
  1. .env.example +86 -4
.env.example CHANGED
@@ -5,7 +5,7 @@
5
  # For local development: cp .env.example .env && nano .env
6
 
7
  # ── REQUIRED: Core Configuration ──
8
- # [REQUIRED] LLM provider API key
9
  # - Anthropic: sk-ant-v0-...
10
  # - OpenAI: sk-...
11
  # - Google: AIzaSy...
@@ -105,9 +105,6 @@ LLM_API_KEY=your_api_key_here
105
  #
106
  # NVIDIA (NVIDIA_API_KEY):
107
  # - nvidia/nemotron-3-super-120b-a12b
108
- # Optional: NVIDIA key rotation pool
109
- # Comma-separated keys, rotated per request
110
- # NVIDIA_API_KEYS=key1,key2,key3
111
  #
112
  # Groq (GROQ_API_KEY):
113
  # - groq/mixtral-8x7b-32768
@@ -127,6 +124,91 @@ LLM_API_KEY=your_api_key_here
127
  # Or any other OpenClaw-supported provider (format: provider/model-name)
128
  LLM_MODEL=anthropic/claude-sonnet-4-5
129
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
130
  # Optional: custom OpenAI-compatible provider
131
  # Only use this if you want to register your own endpoint at startup.
132
  # Leave all of these empty unless you need a custom provider.
 
5
  # For local development: cp .env.example .env && nano .env
6
 
7
  # ── REQUIRED: Core Configuration ──
8
+ # [REQUIRED] Primary LLM provider API key (for the provider in LLM_MODEL)
9
  # - Anthropic: sk-ant-v0-...
10
  # - OpenAI: sk-...
11
  # - Google: AIzaSy...
 
105
  #
106
  # NVIDIA (NVIDIA_API_KEY):
107
  # - nvidia/nemotron-3-super-120b-a12b
 
 
 
108
  #
109
  # Groq (GROQ_API_KEY):
110
  # - groq/mixtral-8x7b-32768
 
124
  # Or any other OpenClaw-supported provider (format: provider/model-name)
125
  LLM_MODEL=anthropic/claude-sonnet-4-5
126
 
127
+ # ════════════════════════════════════════════════════════════════
128
+ # πŸ”‘ API KEY ROTATION (per-provider key pools)
129
+ # ════════════════════════════════════════════════════════════════
130
+ # Every provider supports a comma-separated key pool.
131
+ # Keys are rotated round-robin on every request β€” useful when you
132
+ # have multiple accounts or want to spread rate-limit quota.
133
+ #
134
+ # Pattern: <PROVIDER>_API_KEYS=key1,key2,key3
135
+ # Fallback order: plural pool β†’ singular key β†’ LLM_API_KEY
136
+ #
137
+ # Uncomment and fill in only the providers you use:
138
+ #
139
+ # ANTHROPIC_API_KEYS=sk-ant-key1,sk-ant-key2,sk-ant-key3
140
+ # OPENAI_API_KEYS=sk-key1,sk-key2,sk-key3
141
+ # GEMINI_API_KEYS=AIzaSy-key1,AIzaSy-key2
142
+ # DEEPSEEK_API_KEYS=key1,key2
143
+ # OPENROUTER_API_KEYS=sk-or-key1,sk-or-key2
144
+ # KILOCODE_API_KEYS=key1,key2
145
+ # OPENCODE_API_KEYS=key1,key2
146
+ # ZAI_API_KEYS=key1,key2
147
+ # MOONSHOT_API_KEYS=key1,key2
148
+ # MINIMAX_API_KEYS=key1,key2
149
+ # XIAOMI_API_KEYS=key1,key2
150
+ # VOLCANO_ENGINE_API_KEYS=key1,key2
151
+ # BYTEPLUS_API_KEYS=key1,key2
152
+ # MISTRAL_API_KEYS=key1,key2
153
+ # XAI_API_KEYS=key1,key2
154
+ # NVIDIA_API_KEYS=key1,key2,key3
155
+ # GROQ_API_KEYS=gsk-key1,gsk-key2,gsk-key3
156
+ # COHERE_API_KEYS=key1,key2
157
+ # TOGETHER_API_KEYS=key1,key2
158
+ # CEREBRAS_API_KEYS=key1,key2
159
+ # HUGGINGFACE_HUB_TOKENS=hf_key1,hf_key2
160
+
161
+ # ════════════════════════════════════════════════════════════════
162
+ # 🌐 MULTI-PROVIDER SETUP (use multiple models simultaneously)
163
+ # ════════════════════════════════════════════════════════════════
164
+ # LLM_MODEL sets your DEFAULT model. But you can activate multiple
165
+ # providers at once β€” OpenClaw auto-discovers any provider whose
166
+ # API key is present in the environment.
167
+ #
168
+ # HOW IT WORKS:
169
+ # 1. LLM_MODEL + LLM_API_KEY β†’ sets your default model & exports
170
+ # the matching provider key automatically (e.g. ANTHROPIC_API_KEY)
171
+ # 2. Any additional provider key you set directly (e.g. OPENAI_API_KEY)
172
+ # is also picked up by OpenClaw β†’ that provider's models become
173
+ # available in the Control UI for manual selection.
174
+ # 3. Rotation pools (*_API_KEYS) work for every active provider
175
+ # independently and in parallel.
176
+ #
177
+ # EXAMPLE β€” default Anthropic, also use OpenAI and Groq:
178
+ #
179
+ # LLM_MODEL=anthropic/claude-sonnet-4-6 # default
180
+ # LLM_API_KEY=sk-ant-xxx # β†’ auto-sets ANTHROPIC_API_KEY
181
+ #
182
+ # OPENAI_API_KEY=sk-oai-xxx # activates OpenAI models
183
+ # OPENAI_API_KEYS=sk-oai-k1,sk-oai-k2 # optional: rotation pool
184
+ #
185
+ # GROQ_API_KEY=gsk-xxx # activates Groq models
186
+ # GROQ_API_KEYS=gsk-k1,gsk-k2,gsk-k3 # optional: rotation pool
187
+ #
188
+ # EXAMPLE β€” OpenRouter only (easiest: one key, 300+ models):
189
+ #
190
+ # LLM_MODEL=openrouter/anthropic/claude-sonnet-4-6
191
+ # LLM_API_KEY=sk-or-v1-xxx
192
+ # # Switch between any of 300+ models in Control UI β€” no extra keys needed
193
+ #
194
+ # Set any of these directly as HF Space Secrets (not via LLM_API_KEY):
195
+ # ANTHROPIC_API_KEY=sk-ant-xxx
196
+ # OPENAI_API_KEY=sk-oai-xxx
197
+ # GEMINI_API_KEY=AIzaSy-xxx
198
+ # DEEPSEEK_API_KEY=xxx
199
+ # GROQ_API_KEY=gsk-xxx
200
+ # MISTRAL_API_KEY=xxx
201
+ # XAI_API_KEY=xxx
202
+ # NVIDIA_API_KEY=nvapi-xxx
203
+ # COHERE_API_KEY=xxx
204
+ # TOGETHER_API_KEY=xxx
205
+ # CEREBRAS_API_KEY=xxx
206
+ # MOONSHOT_API_KEY=xxx
207
+ # OPENROUTER_API_KEY=sk-or-v1-xxx
208
+ # HUGGINGFACE_HUB_TOKEN=hf_xxx
209
+
210
+ # ════════════════════════════════════════════════════════════════
211
+
212
  # Optional: custom OpenAI-compatible provider
213
  # Only use this if you want to register your own endpoint at startup.
214
  # Leave all of these empty unless you need a custom provider.