{
  "meta": {
    "lastTouchedVersion": "2026.3.22",
    "lastTouchedAt": "2026-03-23T18:17:59.244Z"
  },
  "env": {
    "OPENAI_API_KEY": "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"
  },
  "wizard": {
    "lastRunAt": "2026-03-16T02:20:24.103Z",
    "lastRunVersion": "2026.3.13",
    "lastRunCommand": "doctor",
    "lastRunMode": "local"
  },
  "diagnostics": {
    "flags": [
      "telegram.http"
    ]
  },
  "browser": {
    "executablePath": "/usr/bin/chromium-browser",
    "headless": true,
    "noSandbox": true,
    "defaultProfile": "openclaw",
    "profiles": {
      "openclaw": {
        "cdpPort": 18800,
        "cdpUrl": "http://127.0.0.1:18800",
        "color": "#FF4500"
      }
    }
  },
  "auth": {
    "profiles": {
      "openai-codex:default": {
        "provider": "openai-codex",
        "mode": "oauth"
      }
    }
  },
  "acp": {
    "enabled": true,
    "dispatch": {
      "enabled": true
    },
    "backend": "acpx",
    "defaultAgent": "codex",
    "allowedAgents": [
      "codex",
      "gemini",
      "deepseek-code",
      "claude",
      "claude-opus",
      "kimi",
      "clawrouter"
    ],
    "maxConcurrentSessions": 8
  },
  "models": {
    "mode": "merge",
    "providers": {
      "blockrun": {
        "baseUrl": "http://127.0.0.1:8402/v1",
        "apiKey": "x402-proxy-handles-auth",
        "api": "openai-completions",
        "models": [
          {
            "id": "auto",
            "name": "Auto (Smart Router - Balanced)",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0,
              "output": 0,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 1050000,
            "maxTokens": 128000
          },
          {
            "id": "free",
            "name": "Free (NVIDIA GPT-OSS-120B only)",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0,
              "output": 0,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 128000,
            "maxTokens": 4096
          },
          {
            "id": "eco",
            "name": "Eco (Smart Router - Cost Optimized)",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0,
              "output": 0,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 1050000,
            "maxTokens": 128000
          },
          {
            "id": "premium",
            "name": "Premium (Smart Router - Best Quality)",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0,
              "output": 0,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 2000000,
            "maxTokens": 200000
          },
          {
            "id": "openai/gpt-5.2",
            "name": "GPT-5.2",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 1.75,
              "output": 14,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 400000,
            "maxTokens": 128000
          },
          {
            "id": "openai/gpt-5-mini",
            "name": "GPT-5 Mini",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0.25,
              "output": 2,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 65536
          },
          {
            "id": "openai/gpt-5-nano",
            "name": "GPT-5 Nano",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0.05,
              "output": 0.4,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 128000,
            "maxTokens": 32768
          },
          {
            "id": "openai/gpt-5.2-pro",
            "name": "GPT-5.2 Pro",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text"
            ],
            "cost": {
              "input": 21,
              "output": 168,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 400000,
            "maxTokens": 128000
          },
          {
            "id": "openai/gpt-5.4",
            "name": "GPT-5.4",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 2.5,
              "output": 15,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 400000,
            "maxTokens": 128000
          },
          {
            "id": "openai/gpt-5.4-pro",
            "name": "GPT-5.4 Pro",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text"
            ],
            "cost": {
              "input": 30,
              "output": 180,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 400000,
            "maxTokens": 128000
          },
          {
            "id": "openai/gpt-5.3",
            "name": "GPT-5.3",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 1.75,
              "output": 14,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 128000,
            "maxTokens": 16000
          },
          {
            "id": "openai/gpt-5.3-codex",
            "name": "GPT-5.3 Codex",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 1.75,
              "output": 14,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 400000,
            "maxTokens": 128000
          },
          {
            "id": "openai/gpt-4.1",
            "name": "GPT-4.1",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 2,
              "output": 8,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 128000,
            "maxTokens": 16384
          },
          {
            "id": "openai/gpt-4.1-mini",
            "name": "GPT-4.1 Mini",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0.4,
              "output": 1.6,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 128000,
            "maxTokens": 16384
          },
          {
            "id": "openai/gpt-4.1-nano",
            "name": "GPT-4.1 Nano",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0.1,
              "output": 0.4,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 128000,
            "maxTokens": 16384
          },
          {
            "id": "openai/gpt-4o",
            "name": "GPT-4o",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 2.5,
              "output": 10,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 128000,
            "maxTokens": 16384
          },
          {
            "id": "openai/gpt-4o-mini",
            "name": "GPT-4o Mini",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0.15,
              "output": 0.6,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 128000,
            "maxTokens": 16384
          },
          {
            "id": "openai/o1",
            "name": "o1",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text"
            ],
            "cost": {
              "input": 15,
              "output": 60,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 100000
          },
          {
            "id": "openai/o1-mini",
            "name": "o1-mini",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text"
            ],
            "cost": {
              "input": 1.1,
              "output": 4.4,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 128000,
            "maxTokens": 65536
          },
          {
            "id": "openai/o3",
            "name": "o3",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text"
            ],
            "cost": {
              "input": 2,
              "output": 8,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 100000
          },
          {
            "id": "openai/o3-mini",
            "name": "o3-mini",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text"
            ],
            "cost": {
              "input": 1.1,
              "output": 4.4,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 128000,
            "maxTokens": 65536
          },
          {
            "id": "openai/o4-mini",
            "name": "o4-mini",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text"
            ],
            "cost": {
              "input": 1.1,
              "output": 4.4,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 128000,
            "maxTokens": 65536
          },
          {
            "id": "anthropic/claude-haiku-4.5",
            "name": "Claude Haiku 4.5",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 1,
              "output": 5,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 8192
          },
          {
            "id": "anthropic/claude-sonnet-4.6",
            "name": "Claude Sonnet 4.6",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 3,
              "output": 15,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 64000
          },
          {
            "id": "anthropic/claude-opus-4.6",
            "name": "Claude Opus 4.6",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 5,
              "output": 25,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 32000
          },
          {
            "id": "google/gemini-3.1-pro",
            "name": "Gemini 3.1 Pro",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 2,
              "output": 12,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 1050000,
            "maxTokens": 65536
          },
          {
            "id": "google/gemini-3-pro-preview",
            "name": "Gemini 3 Pro Preview",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 2,
              "output": 12,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 1050000,
            "maxTokens": 65536
          },
          {
            "id": "google/gemini-3-flash-preview",
            "name": "Gemini 3 Flash Preview",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 0.5,
              "output": 3,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 1000000,
            "maxTokens": 65536
          },
          {
            "id": "google/gemini-2.5-pro",
            "name": "Gemini 2.5 Pro",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 1.25,
              "output": 10,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 1050000,
            "maxTokens": 65536
          },
          {
            "id": "google/gemini-2.5-flash",
            "name": "Gemini 2.5 Flash",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 0.3,
              "output": 2.5,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 1000000,
            "maxTokens": 65536
          },
          {
            "id": "google/gemini-2.5-flash-lite",
            "name": "Gemini 2.5 Flash Lite",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0.1,
              "output": 0.4,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 1000000,
            "maxTokens": 65536
          },
          {
            "id": "deepseek/deepseek-chat",
            "name": "DeepSeek V3.2 Chat",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0.28,
              "output": 0.42,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 128000,
            "maxTokens": 8192
          },
          {
            "id": "deepseek/deepseek-reasoner",
            "name": "DeepSeek V3.2 Reasoner",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0.28,
              "output": 0.42,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 128000,
            "maxTokens": 8192
          },
          {
            "id": "moonshot/kimi-k2.5",
            "name": "Kimi K2.5",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 0.6,
              "output": 3,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 262144,
            "maxTokens": 8192
          },
          {
            "id": "xai/grok-3",
            "name": "Grok 3",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text"
            ],
            "cost": {
              "input": 3,
              "output": 15,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 131072,
            "maxTokens": 16384
          },
          {
            "id": "xai/grok-3-mini",
            "name": "Grok 3 Mini",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0.3,
              "output": 0.5,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 131072,
            "maxTokens": 16384
          },
          {
            "id": "xai/grok-4-fast-reasoning",
            "name": "Grok 4 Fast Reasoning",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0.2,
              "output": 0.5,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 131072,
            "maxTokens": 16384
          },
          {
            "id": "xai/grok-4-fast-non-reasoning",
            "name": "Grok 4 Fast",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0.2,
              "output": 0.5,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 131072,
            "maxTokens": 16384
          },
          {
            "id": "xai/grok-4-1-fast-reasoning",
            "name": "Grok 4.1 Fast Reasoning",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0.2,
              "output": 0.5,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 131072,
            "maxTokens": 16384
          },
          {
            "id": "xai/grok-4-1-fast-non-reasoning",
            "name": "Grok 4.1 Fast",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0.2,
              "output": 0.5,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 131072,
            "maxTokens": 16384
          },
          {
            "id": "xai/grok-4-0709",
            "name": "Grok 4 (0709)",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0.2,
              "output": 1.5,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 131072,
            "maxTokens": 16384
          },
          {
            "id": "xai/grok-2-vision",
            "name": "Grok 2 Vision",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 2,
              "output": 10,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 131072,
            "maxTokens": 16384
          },
          {
            "id": "minimax/minimax-m2.5",
            "name": "MiniMax M2.5",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0.3,
              "output": 1.2,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 204800,
            "maxTokens": 16384
          },
          {
            "id": "nvidia/gpt-oss-120b",
            "name": "NVIDIA GPT-OSS 120B",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0,
              "output": 0,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 128000,
            "maxTokens": 16384
          },
          {
            "id": "nvidia/kimi-k2.5",
            "name": "NVIDIA Kimi K2.5",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0.55,
              "output": 2.5,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 262144,
            "maxTokens": 16384
          },
          {
            "id": "claude",
            "name": "claude \u2192 Claude Sonnet 4.6",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 3,
              "output": 15,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 64000
          },
          {
            "id": "sonnet",
            "name": "sonnet \u2192 Claude Sonnet 4.6",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 3,
              "output": 15,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 64000
          },
          {
            "id": "sonnet-4",
            "name": "sonnet-4 \u2192 Claude Sonnet 4.6",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 3,
              "output": 15,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 64000
          },
          {
            "id": "sonnet-4.6",
            "name": "sonnet-4.6 \u2192 Claude Sonnet 4.6",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 3,
              "output": 15,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 64000
          },
          {
            "id": "sonnet-4-6",
            "name": "sonnet-4-6 \u2192 Claude Sonnet 4.6",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 3,
              "output": 15,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 64000
          },
          {
            "id": "opus",
            "name": "opus \u2192 Claude Opus 4.6",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 5,
              "output": 25,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 32000
          },
          {
            "id": "opus-4",
            "name": "opus-4 \u2192 Claude Opus 4.6",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 5,
              "output": 25,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 32000
          },
          {
            "id": "opus-4.6",
            "name": "opus-4.6 \u2192 Claude Opus 4.6",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 5,
              "output": 25,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 32000
          },
          {
            "id": "opus-4-6",
            "name": "opus-4-6 \u2192 Claude Opus 4.6",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 5,
              "output": 25,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 32000
          },
          {
            "id": "haiku",
            "name": "haiku \u2192 Claude Haiku 4.5",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 1,
              "output": 5,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 8192
          },
          {
            "id": "anthropic/sonnet",
            "name": "anthropic/sonnet \u2192 Claude Sonnet 4.6",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 3,
              "output": 15,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 64000
          },
          {
            "id": "anthropic/opus",
            "name": "anthropic/opus \u2192 Claude Opus 4.6",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 5,
              "output": 25,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 32000
          },
          {
            "id": "anthropic/haiku",
            "name": "anthropic/haiku \u2192 Claude Haiku 4.5",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 1,
              "output": 5,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 8192
          },
          {
            "id": "anthropic/claude",
            "name": "anthropic/claude \u2192 Claude Sonnet 4.6",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 3,
              "output": 15,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 64000
          },
          {
            "id": "anthropic/claude-sonnet-4",
            "name": "anthropic/claude-sonnet-4 \u2192 Claude Sonnet 4.6",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 3,
              "output": 15,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 64000
          },
          {
            "id": "anthropic/claude-sonnet-4-6",
            "name": "anthropic/claude-sonnet-4-6 \u2192 Claude Sonnet 4.6",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 3,
              "output": 15,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 64000
          },
          {
            "id": "anthropic/claude-opus-4",
            "name": "anthropic/claude-opus-4 \u2192 Claude Opus 4.6",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 5,
              "output": 25,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 32000
          },
          {
            "id": "anthropic/claude-opus-4-6",
            "name": "anthropic/claude-opus-4-6 \u2192 Claude Opus 4.6",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 5,
              "output": 25,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 32000
          },
          {
            "id": "anthropic/claude-opus-4.5",
            "name": "anthropic/claude-opus-4.5 \u2192 Claude Opus 4.6",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 5,
              "output": 25,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 32000
          },
          {
            "id": "anthropic/claude-haiku-4",
            "name": "anthropic/claude-haiku-4 \u2192 Claude Haiku 4.5",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 1,
              "output": 5,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 8192
          },
          {
            "id": "anthropic/claude-haiku-4-5",
            "name": "anthropic/claude-haiku-4-5 \u2192 Claude Haiku 4.5",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 1,
              "output": 5,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 8192
          },
          {
            "id": "gpt",
            "name": "gpt \u2192 GPT-4o",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 2.5,
              "output": 10,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 128000,
            "maxTokens": 16384
          },
          {
            "id": "gpt4",
            "name": "gpt4 \u2192 GPT-4o",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 2.5,
              "output": 10,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 128000,
            "maxTokens": 16384
          },
          {
            "id": "gpt5",
            "name": "gpt5 \u2192 GPT-5.4",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 2.5,
              "output": 15,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 400000,
            "maxTokens": 128000
          },
          {
            "id": "gpt-5.4",
            "name": "gpt-5.4 \u2192 GPT-5.4",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 2.5,
              "output": 15,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 400000,
            "maxTokens": 128000
          },
          {
            "id": "gpt-5.4-pro",
            "name": "gpt-5.4-pro \u2192 GPT-5.4 Pro",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text"
            ],
            "cost": {
              "input": 30,
              "output": 180,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 400000,
            "maxTokens": 128000
          },
          {
            "id": "codex",
            "name": "codex \u2192 GPT-5.3 Codex",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 1.75,
              "output": 14,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 400000,
            "maxTokens": 128000
          },
          {
            "id": "mini",
            "name": "mini \u2192 GPT-4o Mini",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0.15,
              "output": 0.6,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 128000,
            "maxTokens": 16384
          },
          {
            "id": "o1",
            "name": "o1 \u2192 o1",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text"
            ],
            "cost": {
              "input": 15,
              "output": 60,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 100000
          },
          {
            "id": "o3",
            "name": "o3 \u2192 o3",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text"
            ],
            "cost": {
              "input": 2,
              "output": 8,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 100000
          },
          {
            "id": "deepseek",
            "name": "deepseek \u2192 DeepSeek V3.2 Chat",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0.28,
              "output": 0.42,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 128000,
            "maxTokens": 8192
          },
          {
            "id": "reasoner",
            "name": "reasoner \u2192 DeepSeek V3.2 Reasoner",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0.28,
              "output": 0.42,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 128000,
            "maxTokens": 8192
          },
          {
            "id": "kimi",
            "name": "kimi \u2192 Kimi K2.5",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 0.6,
              "output": 3,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 262144,
            "maxTokens": 8192
          },
          {
            "id": "moonshot",
            "name": "moonshot \u2192 Kimi K2.5",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 0.6,
              "output": 3,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 262144,
            "maxTokens": 8192
          },
          {
            "id": "kimi-k2.5",
            "name": "kimi-k2.5 \u2192 Kimi K2.5",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 0.6,
              "output": 3,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 262144,
            "maxTokens": 8192
          },
          {
            "id": "gemini",
            "name": "gemini \u2192 Gemini 2.5 Pro",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 1.25,
              "output": 10,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 1050000,
            "maxTokens": 65536
          },
          {
            "id": "flash",
            "name": "flash \u2192 Gemini 2.5 Flash",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 0.3,
              "output": 2.5,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 1000000,
            "maxTokens": 65536
          },
          {
            "id": "gemini-3.1-pro-preview",
            "name": "gemini-3.1-pro-preview \u2192 Gemini 3.1 Pro",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 2,
              "output": 12,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 1050000,
            "maxTokens": 65536
          },
          {
            "id": "google/gemini-3.1-pro-preview",
            "name": "google/gemini-3.1-pro-preview \u2192 Gemini 3.1 Pro",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 2,
              "output": 12,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 1050000,
            "maxTokens": 65536
          },
          {
            "id": "grok",
            "name": "grok \u2192 Grok 3",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text"
            ],
            "cost": {
              "input": 3,
              "output": 15,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 131072,
            "maxTokens": 16384
          },
          {
            "id": "grok-fast",
            "name": "grok-fast \u2192 Grok 4 Fast Reasoning",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0.2,
              "output": 0.5,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 131072,
            "maxTokens": 16384
          },
          {
            "id": "grok-code",
            "name": "grok-code \u2192 DeepSeek V3.2 Chat",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0.28,
              "output": 0.42,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 128000,
            "maxTokens": 8192
          },
          {
            "id": "nvidia",
            "name": "nvidia \u2192 NVIDIA GPT-OSS 120B",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0,
              "output": 0,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 128000,
            "maxTokens": 16384
          },
          {
            "id": "gpt-120b",
            "name": "gpt-120b \u2192 NVIDIA GPT-OSS 120B",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0,
              "output": 0,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 128000,
            "maxTokens": 16384
          },
          {
            "id": "minimax",
            "name": "minimax \u2192 MiniMax M2.5",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0.3,
              "output": 1.2,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 204800,
            "maxTokens": 16384
          },
          {
            "id": "auto-router",
            "name": "auto-router \u2192 Auto (Smart Router - Balanced)",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0,
              "output": 0,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 1050000,
            "maxTokens": 128000
          },
          {
            "id": "router",
            "name": "router \u2192 Auto (Smart Router - Balanced)",
            "api": "openai-completions",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0,
              "output": 0,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 1050000,
            "maxTokens": 128000
          }
        ]
      },
      "custom-api-moonshot-ai": {
        "baseUrl": "https://api.moonshot.ai/v1",
        "apiKey": "sk-rbHc8P3BHodqmMHbGVa6c4INp2JFNMIBQ8oza5TezKkD5bZd",
        "api": "openai-completions",
        "models": [
          {
            "id": "kimi-k2.5",
            "name": "Kimi K2.5 (Moonshot)",
            "api": "openai-completions",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 0,
              "output": 0,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 65535
          }
        ]
      },
      "custom-api-deepseek-com": {
        "baseUrl": "https://api.deepseek.com/v1",
        "apiKey": "sk-ba5431dc38ef4186ab2232523a97309d",
        "api": "openai-completions",
        "models": [
          {
            "id": "deepseek-chat",
            "name": "DeepSeek V3 (Direct)",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0,
              "output": 0,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 128000,
            "maxTokens": 8192
          }
        ]
      }
    }
  },
  "agents": {
    "defaults": {
      "model": {
        "primary": "blockrun/auto",
        "fallbacks": [
          "custom-api-deepseek-com/deepseek-chat"
        ]
      },
      "models": {
        "blockrun/auto": {},
        "openrouter/anthropic/claude-sonnet-4-6": {
          "alias": "claude"
        },
        "openai-codex/gpt-5.1": {
          "alias": "codex-chat"
        },
        "openai-codex/gpt-5.3-codex-spark": {
          "alias": "codex-spark"
        },
        "openai-codex/gpt-5.3-codex": {
          "alias": "codex-max"
        },
        "openai-codex/gpt-5.4": {
          "alias": "gpt-5.4"
        },
        "openai-codex/gpt-5.4-mini": {
          "alias": "gpt-5.4-mini"
        },
        "custom-api-deepseek-com/deepseek-chat": {
          "alias": "deepseek"
        },
        "claude-sonnet-cli/default": {
          "alias": "claude-sonnet"
        },
        "claude-opus-cli/default": {
          "alias": "claude-opus"
        },
        "blockrun/free": {},
        "blockrun/eco": {},
        "blockrun/premium": {},
        "blockrun/anthropic/claude-sonnet-4.6": {},
        "blockrun/anthropic/claude-opus-4.6": {},
        "blockrun/anthropic/claude-haiku-4.5": {},
        "blockrun/openai/gpt-5.2": {},
        "blockrun/openai/gpt-4o": {},
        "blockrun/openai/o3": {},
        "blockrun/google/gemini-3.1-pro": {},
        "blockrun/google/gemini-3-flash-preview": {},
        "blockrun/deepseek/deepseek-chat": {},
        "blockrun/moonshot/kimi-k2.5": {},
        "blockrun/xai/grok-3": {},
        "blockrun/minimax/minimax-m2.5": {},
        "openrouter/openrouter/free": {},
        "custom-api-moonshot-ai/kimi-k2.5": {
          "alias": "kimi"
        },
        "clawrouter/auto": {
          "alias": "clawrouter"
        },
        "openrouter/openrouter/auto": {},
        "blockrun/openai/gpt-5.3": {}
      },
      "workspace": "/home/ubuntu/.openclaw/workspace",
      "cliBackends": {
        "codex-cli": {
          "command": "/home/ubuntu/.local/bin/codex",
          "args": [
            "exec",
            "--json",
            "--color",
            "never",
            "--sandbox",
            "read-only",
            "--skip-git-repo-check"
          ],
          "output": "jsonl"
        },
        "gemini-cli": {
          "command": "/home/ubuntu/.local/bin/gemini-cli-openclaw",
          "output": "text"
        },
        "deepseek-code": {
          "command": "/home/ubuntu/.local/bin/deepseek-code-openclaw",
          "output": "text"
        },
        "claude-sonnet-cli": {
          "command": "/home/ubuntu/.local/bin/claude-sonnet-openclaw",
          "output": "text"
        },
        "claude-opus-cli": {
          "command": "/home/ubuntu/.local/bin/claude-opus-openclaw",
          "output": "text"
        },
        "kimi-cli": {
          "command": "/home/ubuntu/.local/bin/kimi-openclaw",
          "output": "text"
        }
      },
      "compaction": {
        "mode": "safeguard"
      },
      "elevatedDefault": "off",
      "maxConcurrent": 1,
      "subagents": {
        "maxConcurrent": 4
      }
    },
    "list": [
      {
        "id": "pipo",
        "name": "pipo",
        "workspace": "/home/ubuntu/.openclaw/workspace",
        "model": {
          "primary": "openrouter/minimax/minimax-m2.7",
          "fallbacks": [
            "openrouter/minimax/minimax-m2.5"
          ]
        },
        "subagents": {
          "allowAgents": [
            "codex",
            "gemini",
            "claude",
            "deepseek-code",
            "kimi",
            "clawrouter",
            "openrouter"
          ]
        }
      },
      {
        "id": "codex",
        "name": "codex",
        "workspace": "/home/ubuntu/.openclaw/workspace-codex",
        "agentDir": "/home/ubuntu/.openclaw/agents/codex/agent",
        "model": "openai-codex/gpt-5.3-codex"
      },
      {
        "id": "gemini",
        "name": "gemini",
        "workspace": "/home/ubuntu/.openclaw/workspace-gemini",
        "agentDir": "/home/ubuntu/.openclaw/agents/gemini/agent",
        "model": "blockrun/google/gemini-3.1-pro"
      },
      {
        "id": "deepseek-code",
        "name": "deepseek-code",
        "workspace": "/home/ubuntu/.openclaw/workspace-deepseek-code",
        "agentDir": "/home/ubuntu/.openclaw/agents/deepseek-code/agent",
        "model": "deepseek-code/default"
      },
      {
        "id": "claude",
        "name": "claude",
        "workspace": "/home/ubuntu/.openclaw/workspace-claude",
        "agentDir": "/home/ubuntu/.openclaw/agents/claude/agent",
        "model": "blockrun/anthropic/claude-sonnet-4.6"
      },
      {
        "id": "claude-opus",
        "name": "claude-opus",
        "workspace": "/home/ubuntu/.openclaw/workspace-claude-opus",
        "agentDir": "/home/ubuntu/.openclaw/agents/claude-opus/agent",
        "model": "blockrun/anthropic/claude-opus-4.6"
      },
      {
        "id": "kimi",
        "name": "kimi",
        "workspace": "/home/ubuntu/.openclaw/workspace-kimi",
        "agentDir": "/home/ubuntu/.openclaw/agents/kimi/agent",
        "model": "custom-api-moonshot-ai/kimi-k2.5"
      },
      {
        "id": "clawrouter",
        "name": "ClawRouter",
        "workspace": "/home/ubuntu/.openclaw/workspace",
        "model": {
          "primary": "blockrun/auto",
          "fallbacks": [
            "openrouter/openrouter/free"
          ]
        }
      },
      {
        "id": "openrouter",
        "name": "OpenRouter",
        "workspace": "/home/ubuntu/.openclaw/workspace-openrouter",
        "agentDir": "/home/ubuntu/.openclaw/agents/openrouter/agent",
        "model": {
          "primary": "openrouter/openrouter/auto",
          "fallbacks": [
            "openrouter/openrouter/free"
          ]
        }
      }
    ]
  },
  "tools": {
    "sessions": {
      "visibility": "all"
    },
    "agentToAgent": {
      "enabled": true,
      "allow": [
        "pipo",
        "codex",
        "gemini",
        "deepseek-code",
        "claude",
        "claude-opus",
        "kimi",
        "clawrouter"
      ]
    },
    "elevated": {
      "enabled": true,
      "allowFrom": {
        "telegram": [
          842987156
        ],
        "webchat": [],
        "discord": [
          "1400466012054491186"
        ]
      }
    },
    "exec": {
      "security": "allowlist",
      "ask": "on-miss"
    }
  },
  "messages": {
    "ackReactionScope": "group-mentions"
  },
  "commands": {
    "native": "auto",
    "nativeSkills": "auto",
    "restart": true,
    "ownerDisplay": "raw"
  },
  "session": {
    "dmScope": "per-channel-peer"
  },
  "hooks": {
    "internal": {
      "enabled": true,
      "entries": {
        "session-memory": {
          "enabled": true
        },
        "bootstrap-extra-files": {
          "enabled": true
        },
        "boot-md": {
          "enabled": true
        }
      }
    }
  },
  "channels": {
    "telegram": {
      "enabled": true,
      "dmPolicy": "allowlist",
      "botToken": "8658426327:AAHFrqQzIfxZhYJHhGmkKC9yXvF6B1aeRCc",
      "replyToMode": "all",
      "allowFrom": [
        842987156
      ],
      "groupPolicy": "allowlist",
      "streaming": "off",
      "mediaMaxMb": 20,
      "timeoutSeconds": 60,
      "retry": {
        "attempts": 6,
        "minDelayMs": 1500,
        "maxDelayMs": 90000,
        "jitter": 0.1
      },
      "network": {
        "autoSelectFamily": true,
        "dnsResultOrder": "ipv4first"
      }
    },
    "discord": {
      "enabled": true,
      "token": "MTQ4Mzg3NDI4NTg4NTA2NzQ3NQ.Gi1BfW.-ij5yOXdfZZP7CrcX_7IHLe9sz4PaL4aX8OXFU",
      "groupPolicy": "allowlist",
      "streaming": "off",
      "guilds": {
        "1483873336718135336": {
          "requireMention": false,
          "users": [
            "1400466012054491186"
          ]
        }
      },
      "threadBindings": {
        "enabled": true,
        "idleHours": 24,
        "maxAgeHours": 0,
        "spawnSubagentSessions": true,
        "spawnAcpSessions": true
      }
    }
  },
  "gateway": {
    "port": 18789,
    "mode": "local",
    "bind": "loopback",
    "controlUi": {
      "allowedOrigins": [
        "https://miopenclaw-vnic.tail9799d2.ts.net",
        "https://miopenclaw-vnic.tail9799d2.ts.net/",
        "http://127.0.0.1:18789"
      ]
    },
    "auth": {
      "mode": "token",
      "token": "0537d84a67f2e43b525964bb43d93f6dfae1ec1b50946455"
    },
    "trustedProxies": [
      "127.0.0.1/32",
      "::1/128"
    ],
    "tailscale": {
      "mode": "serve",
      "resetOnExit": true
    }
  },
  "skills": {
    "entries": {
      "gh-issues": {
        "enabled": true,
        "apiKey": "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"
      },
      "nano-banana-pro": {
        "enabled": true,
        "apiKey": "AIzaSyCpjr5IR8ALxhFMD9USk1KoAVt-YFCg9uA"
      },
      "notion": {
        "enabled": true,
        "apiKey": "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"
      },
      "openai-image-gen": {
        "enabled": true,
        "apiKey": "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"
      },
      "openai-whisper-api": {
        "enabled": true,
        "apiKey": "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"
      },
      "sag": {
        "enabled": true,
        "apiKey": "sk_7074948b58c21f0b9a9d05070a8389f466cf9b8307e91596"
      }
    }
  },
  "plugins": {
    "allow": [
      "telegram",
      "acpx",
      "clawrouter",
      "discord"
    ],
    "entries": {
      "qwen-portal-auth": {
        "enabled": true
      },
      "acpx": {
        "enabled": true,
        "config": {
          "permissionMode": "approve-reads",
          "nonInteractivePermissions": "fail",
          "expectedVersion": "0.1.15",
          "command": "/home/ubuntu/.openclaw/workspace/.acpx/node_modules/.bin/acpx"
        }
      },
      "clawrouter": {
        "enabled": true
      }
    },
    "installs": {
      "clawrouter": {
        "source": "npm",
        "spec": "@blockrun/clawrouter@0.12.43",
        "installPath": "/home/ubuntu/.openclaw/extensions/clawrouter",
        "version": "0.12.43",
        "resolvedName": "@blockrun/clawrouter",
        "resolvedVersion": "0.12.43",
        "resolvedSpec": "@blockrun/clawrouter@0.12.43",
        "integrity": "sha512-Hgwr1csbN5YVhuD34NCnTigzS+/MWp9qpXni10nDINvmB5cHgxfYgjlK7q8mXcQ7SQwF5UYcRyC/RZmojB0OIw==",
        "shasum": "3331382e1a46524bee73b8ffa83677950f5bbae5",
        "resolvedAt": "2026-03-15T22:45:46.066Z",
        "installedAt": "2026-03-15T22:46:43.662Z"
      },
      "acpx": {
        "source": "path",
        "sourcePath": "/home/ubuntu/openclaw-src-v2026.3.22/extensions/acpx",
        "installPath": "/home/ubuntu/.openclaw/extensions/acpx",
        "version": "2026.3.22",
        "installedAt": "2026-03-23T18:17:59.087Z"
      }
    }
  }
}