Docs / Reference / Configuration
Reference

Configuration

Every command-line flag and environment variable.

Source of truth: router/server.mjs. If this page and the code disagree, the code wins; please fix the page.

CLI flags#

text
node router/server.mjs [--port 8545] [--host 127.0.0.1] [--data .elyra] [--name NAME]
                       [--public-url URL] [--seed URL]... [--no-demo]
                       [--allow-mainnet] [--allow-private-peers]
Flag Default Meaning
--port 8545 Listen port
--host 127.0.0.1 Bind address. Keep loopback; expose only /p2p/* through a reverse proxy
--data <repo>/.elyra Identity, wallet (private key), state. Never commit, never serve
--name generated Node display name
--public-url none URL peers use to reach /p2p/* (also ELYRA_PUBLIC_URL)
--seed URL none Peer to add at boot; repeatable
--no-demo demo on Remove the simulated market. Use on any real node
--allow-mainnet off Permit Robinhood mainnet (real funds)
--allow-private-peers off Let gossip add private/LAN peer URLs (SSRF guard otherwise)

Environment variables#

Read at boot. Useful for immutable deployments (systemd, containers, Confidential Space). In a TEE image each one is visible to buyers in the attestation token.

Variable Meaning
ELYRA_PASSPHRASE Encrypt identity and wallet at rest (scrypt, AES-256-GCM). Missing or wrong passphrase on an encrypted dir: refuses to start
ELYRA_NETWORK Chain network, e.g. robinhood-testnet (applied together with ELYRA_ESCROW)
ELYRA_ESCROW Escrow contract address. Settlement is simulated until one is set; both sides must use the same escrow or there is no route
ELYRA_UPSTREAM_URL OpenAI-compatible base URL of your model server, ending in /v1 (Ollama: http://127.0.0.1:11434/v1)
ELYRA_UPSTREAM_NAME Label for that upstream (default local-model)
ELYRA_PROVIDE 1 to offer the upstream to the network
ELYRA_PROVIDE_PRICE Your price in USD per million tokens
ELYRA_PAYOUT Address that receives swept USDG. Without it earnings stay in the node wallet
ELYRA_REOWN_PROJECT_ID Reown project id (32 hex characters, public). Enables Connect wallet on Payments; see Wallet and USDG
ELYRA_PUBLIC_URL Same as --public-url
ELYRA_SEEDS Comma-separated peer URLs to add at boot
ELYRA_TEE, ELYRA_TEE_SOCKET TEE mode (Confidential Space); see TEE. Verification is only proven against a simulated Google so far
ELYRA_ADMIN_HOST Hostname (no scheme/port) that may reach the panel, /api and /v1 through a tunnel or proxy, behind a login. Off unless set together with ELYRA_ADMIN_TOKEN. See REMOTE-ADMIN
ELYRA_ADMIN_TOKEN The login secret, at least 24 characters (generate 32+ random bytes). Never logged or returned by any endpoint. A too-short token or a host without a token disables remote admin and logs an error (fail closed)
ELYRA_ALLOW_TEST_TRUST Test only: 1 lets the control API accept an inline JWKS as the TEE trust list. Never set in production

Files and permissions#

Path Content Rule
.elyra*/ or --data dir identity.json, wallet.json, state.json Back up; git-ignored; chmod to the service user only
/etc/elyra/env (server) the variables above chmod 600, owner root

Ports#

Port Service Exposure
8545 Elyra node loopback; proxy only /p2p/* and /healthz
11434 Ollama loopback only, never expose