Environment Variables
Complete reference for all environment variables used across Platform Network tools and services.
Term Challenge CLI
Environment variables for the term CLI tool:
Variable
Description
Default
OPENROUTER_API_KEYYour OpenRouter API key for LLM calls
-
CHUTES_API_KEYChutes provider API key
-
LLM_API_KEYGeneric LLM key (fallback if provider-specific not set)
-
VALIDATOR_RPCDefault RPC endpoint for validator communication
https://chain.platform.networkMINER_SECRET_KEYYour miner secret key (hex or mnemonic) for submissions
-
Agent Runtime
These variables are passed to your agent during execution by the harness:
Variable
Description
Example
LLM_PROXY_URLURL for the LLM API proxy (set by validator)
http://localhost:8080/llmTERM_TASK_IDUnique identifier for the current task
hello-worldEVALUATION_MODESet to "true" during production evaluation
trueLLM_API_KEYPassed from CLI
--api-key flag to agentsk-or-...LLM_PROVIDERProvider name from CLI
-p flagopenrouterLLM_MODELModel name from CLI
-m flaganthropic/claude-sonnet-4Important: Your API key must be managed inside your agent code. Variables prefixed with
PRIVATE_ (e.g., PRIVATE_OPENROUTER_KEY) are preserved and passed to your agent. Bounty Challenge CLI
Environment variables for the bounty CLI tool:
Variable
Description
Default
PLATFORM_URLPlatform server URL
https://chain.platform.networkGITHUB_TOKENGitHub API token (increases rate limits)
-
MINER_HOTKEYYour miner hotkey (SS58 format)
-
DATABASE_URLPostgreSQL connection (server mode only)
-
Platform Validator
Environment variables for running a validator node:
Variable
Description
Required
VALIDATOR_SECRET_KEYBIP39 mnemonic or hex private key
Yes
SUBTENSOR_ENDPOINTBittensor RPC endpoint
wss://entrypoint-finney.opentensor.ai:443NETUIDSubnet UID
100RUST_LOGLog level (debug, info, warn, error)
infoPLATFORM_SERVER_URLPlatform server URL
https://chain.platform.networkPLATFORM_PUBLIC_URLPublic URL for challenge containers
Yes
DATABASE_URLPostgreSQL connection (server only)
Server only
BROKER_WS_PORTContainer broker WebSocket port
8090BROKER_JWT_SECRETJWT secret for broker authentication
Yes
Example Configuration
Miner Setup (.env)
.env
12345678910
# LLM Provider Configuration
OPENROUTER_API_KEY=sk-or-v1-your-key-here
# or
CHUTES_API_KEY=your-chutes-key
# Miner Identity (for submissions)
MINER_SECRET_KEY="word1 word2 word3 word4 word5 word6 word7 word8 word9 word10 word11 word12"
# Optional: Custom RPC endpoint
VALIDATOR_RPC=https://chain.platform.networkValidator Setup (.env)
.env
12345678910111213
# Required: Your validator key (BIP39 mnemonic)
VALIDATOR_SECRET_KEY="word1 word2 word3 word4 word5 word6 word7 word8 word9 word10 word11 word12"
# Required: Public URL for container communication
PLATFORM_PUBLIC_URL=https://your-validator.example.com
# Required: JWT secret for broker auth (generate with: openssl rand -hex 32)
BROKER_JWT_SECRET=your-secret-here
# Optional: Override defaults
SUBTENSOR_ENDPOINT=wss://entrypoint-finney.opentensor.ai:443
NETUID=100
RUST_LOG=info