Configuration Reference
RelayPlane stores config in ~/.relayplane/config.json. The fields below reflect packages/proxy/src/config.ts exactly.
Top-level fields
| Field | Type | Default | Notes |
|---|---|---|---|
device_id | string | auto-generated | Anonymous ID (anon_xxx) generated once. |
telemetry_enabled | boolean | false | Telemetry toggle. |
first_run_complete | boolean | false | Set true after first-run disclosure. |
api_key | string? | unset | Optional RelayPlane API key. |
config_version | number | 1 | Schema version. |
created_at | string | current ISO timestamp | Creation timestamp. |
updated_at | string | current ISO timestamp | Updated on every save. |
mesh | object? | see below | Mesh learning settings. |
mesh section
| Field | Type | Default | Notes |
|---|---|---|---|
mesh.enabled | boolean | false | May be auto-enabled for authenticated users. |
mesh.endpoint | string | https://osmosis-mesh-dev.fly.dev | Mesh sync endpoint. |
mesh.sync_interval_ms | number | 60000 | Sync interval in ms. |
mesh.contribute | boolean | true | Allow anonymized contribution. |
Credential Pool and Quarantine
When you configure multiple credentials in your proxy pool, the proxy automatically quarantines any credential that returns two consecutive auth failures (HTTP 401). The quarantine lasts one hour, after which the credential re-enters the rotation. This prevents a single bad credential from blocking all requests while the pool continues serving traffic via the remaining credentials.
Example config.json
1{2 "device_id": "anon_a1b2c3d4e5f6g7h8",3 "telemetry_enabled": false,4 "first_run_complete": true,5 "config_version": 1,6 "created_at": "2026-02-25T18:00:00.000Z",7 "updated_at": "2026-02-25T18:10:00.000Z",8 "mesh": {9 "enabled": false,10 "endpoint": "https://osmosis-mesh-dev.fly.dev",11 "sync_interval_ms": 60000,12 "contribute": true13 }14}