| 1 | { |
| 2 | "gateway": { |
| 3 | "mode": "local", |
| 4 | "bind": "lan", |
| 5 | "port": 18789, |
| 6 | "publicOrigin": "https://openclaw.paperclover.net", |
| 7 | "trustedProxies": ["10.0.2.2"], |
| 8 | "auth": { |
| 9 | "mode": "trusted-proxy", |
| 10 | "trustedProxy": { |
| 11 | "userHeader": "x-openclaw-user", |
| 12 | "requiredHeaders": ["x-forwarded-proto", "x-forwarded-host"], |
| 13 | "allowUsers": ["snow", "ai"], |
| 14 | "deviceAutoApprove": {"enabled": true} |
| 15 | }, |
| 16 | "identityScopes": {"snow": ["operator.admin"], "ai": ["operator.admin"]} |
| 17 | }, |
| 18 | "controlUi": {"allowedOrigins": ["https://openclaw.paperclover.net"]} |
| 19 | }, |
| 20 | "agents": { |
| 21 | "defaults": { |
| 22 | "workspace": "/home/node/.openclaw/workspace", |
| 23 | "model": {"primary": ""}, |
| 24 | "thinkingDefault": "medium", |
| 25 | "heartbeat": {"every": "0m"}, |
| 26 | "maxConcurrent": 1, |
| 27 | "sandbox": {"mode": "off"} |
| 28 | } |
| 29 | }, |
| 30 | "models": { |
| 31 | "mode": "replace", |
| 32 | "providers": { |
| 33 | "snowglobe": { |
| 34 | "baseUrl": "http://10.0.2.101:8080/v1", |
| 35 | "apiKey": "vm-inference-proxy", |
| 36 | "api": "openai-completions", |
| 37 | "models": [{ |
| 38 | "id": "", "name": "", "contextWindow": 0, |
| 39 | "reasoning": true, "input": ["text", "image"], "maxTokens": 16384, |
| 40 | "compat": {"toolSchemaProfile": "llamacpp", "supportsReasoningEffort": true} |
| 41 | }] |
| 42 | } |
| 43 | } |
| 44 | }, |
| 45 | "tools": { |
| 46 | "profile": "full", |
| 47 | "elevated": {"enabled": false}, |
| 48 | "exec": {"host": "gateway", "security": "full", "ask": "off"} |
| 49 | }, |
| 50 | "browser": { |
| 51 | "enabled": true, "headless": true, "noSandbox": true, |
| 52 | "ssrfPolicy": {"dangerouslyAllowPrivateNetwork": true}, |
| 53 | "defaultProfile": "openclaw", |
| 54 | "extraArgs": ["--proxy-server=http://10.0.2.100:3128", "--disable-gpu"] |
| 55 | }, |
| 56 | "discovery": {"mdns": {"mode": "off"}}, |
| 57 | "update": {"checkOnStart": false} |
| 58 | } |