ORRANGE / Developer

Environment

The complete environment-variable reference. Copy .env.example to .env.local and fill only what you need for the flows you run.

Never commit .env.local. Any variable without a NEXT_PUBLIC_ prefix is server-only — prefixing it exposes it to the browser.

Starknet RPC

VariablePurpose
ALCHEMY_STARKNET_KEY
server-only
Alchemy RPC key; used to build the derived RPC URL.
NEXT_PUBLIC_STARKNET_RPCrequiredPublic Starknet RPC URL (mainnet by default).
NEXT_PUBLIC_CHAIN_IDChain id (SN_MAIN / SN_SEPOLIA).

STRK20 pool + collateral

VariablePurpose
NEXT_PUBLIC_STRK20_POOLSTRK20 privacy pool address (mainnet).
NEXT_PUBLIC_STRK20_SEPOLIA_POOLSTRK20 privacy pool address (Sepolia).
NEXT_PUBLIC_USDC_SEPOLIACircle USDC on Sepolia (collateral for shield/unshield).

Prover + discovery

VariablePurpose
NEXT_PUBLIC_STRK20_PROVER_URLSTRK20 operator proving service (Stwo transaction prover).
NEXT_PUBLIC_STRK20_DISCOVERY_URLSTRK20 operator discovery service (note/channel indexer).

Hamster AI

VariablePurpose
AI_API_KEY
server-only
OpenAI-compatible API key. SERVER-ONLY.
AI_BASE_URLBase URL of the chat-completions endpoint (default https://api.openai.com/v1).
AI_MODELModel id (default gpt-4o-mini).

The AI provider is intentionally endpoint-agnostic. Point AI_BASE_URL at any OpenAI-compatible service (OpenAI, OpenRouter, Together, Groq, a local llama.cpp server, or the demo provider of your choice). See AI Provider.

Treasury allowlists

VariablePurpose
AI_ALLOWED_ASSETS
server-only
Canonical 0x assets the treasury may move (comma-separated). Empty = any treasury position.
AI_ALLOWED_DESTINATIONS
server-only
Approved private destinations (canonical 0x, comma-separated). An EMPTY allowlist denies all execution.

Execution destinations are always the user’s primary account plus this allowlist. The AI can never add one.

Privy + Ready

VariablePurpose
PRIVY_APP_ID
server-only
Privy server app id.
PRIVY_APP_SECRET
server-only
Privy app secret (server).
NEXT_PUBLIC_PRIVY_APP_IDPublic Privy app id for the embedded-wallet lane.
NEXT_PUBLIC_READY_CLASSHASHReady (Argent v0.4.0) account class hash on Sepolia; the on-chain account address is derived from the public key + this hash.

AVNU paymaster (private swaps)

VariablePurpose
AVNU_PAYMASTER_API_KEY
server-only
Authenticates AVNU’s gas-sponsoring paymaster for private swaps. SERVER-ONLY.

Optional subsystems

The repository also ships a memecoin launchpad (NEXT_PUBLIC_UMBRA_*, Sepolia) used by /explore. Launchpad create/trade and extended/perps trading are currently gated pending a Wallet Core migration and are not required to run the core wallet or the treasury copilot. Historical launchpad documentation lives in docs/UMBRA_LAUNCH.md.