---
url: /tutorial/integrations/openclaw.md
---

# OpenClaw 踩坑指南，节省你24小时浪费的生命

OpenClaw 这个东西大火特火，GitHub star 数居然都超过 Linux 几十年的积累了，很多人都反馈 CloseAI 不支持，实际上全部都是配置错误导致的，为了避免我们的用户反复踩坑，我们亲自测试，总结了一套行之有效的配置。

::: tip 💡 国产模型推荐 · 高性价比之选
除了 Claude、GPT、Gemini 等主流模型，强烈推荐尝试**国产模型**作为 OpenClaw 的日常编码助手。Kimi K2.5、MiniMax M2.5、GLM-5、DeepSeek V3.2 等国产模型编码能力出色，价格远低于国际模型，目前正在进行**超低折扣**活动，量大管饱，是高性价比的最佳选择。

👉 [查看最新模型定价与折扣](https://platform.closeai-asia.com/pricing)

国产模型通过兼容模式即可接入，配置方式见下方「兼容模式」章节。
:::

## 安装

```bash
curl -fsSL https://openclaw.ai/install.sh | bash
```

首先是安装，这个没什么说的，按照官方命令安装即可，但是重点是，不要在安装完成后用命令行初始化你的模型配置，那个是巨坑！

```
◆  Model/auth provider
│  ○ OpenAI
│  ○ Anthropic
│  ○ Chutes
....... 此处省略
│  ● Custom Provider (Any OpenAI or Anthropic compatible endpoint)
│  ○ Skip for now
```

这个玩意是给不需要中转的外国人使用的，你通过这个配置会发现怎么也配置不对，选 OpenAI 他不让你配域名，选 Custom Provider 配了半天他给你报错，很多模型就是配置不起来。所以这里选择跳过（Skip for now），其他的配置看你需求，如果不需要，可以一路跳过。

全部初始化工作完成后，有 2 个地方可以配置，一个是 WEB UI，又丑又难用，乱七八糟的。一个是直接改 json config，我们后续会通过 json config 直接配置（聪明人的选择）。

## 开始配置

首先要理解不同大模型供应商协议的区别，CloseAI 是为数不多支持所有原生协议的中转平台，具体协议的区别看[这篇文章](../library.md)。

在你的用户目录下，有这么个文件，打开它（如果你不知道如何打开隐藏目录，说明你还得练），Windows 用户自己找找，我这边没试：

```
~/.openclaw/openclaw.json
```

里面有个 models 字段，如果没有也没关系，大致内容如下，可以直接复制进去：

```json
  "models": {
    "providers": {
      "closeai": {
        "baseUrl": "https://api.openai-proxy.org/v1",
        "apiKey": "{sk-你的秘钥}",
        "auth": "api-key",
        "api": "openai-completions",
        "models": [
          {
            "id": "gpt-4.1",
            "name": "gpt-4.1",
            "reasoning": false,
            "input": [],
            "cost": {
              "input": 0,
              "output": 0,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 400000,
            "maxTokens": 128000
          }
        ]
      }
    }
  },
```

这个里面的重点就是 url 和协议如何配置，配置错误就会遇到各种 404、400 问题。需要使用正确的组合，并摸索清楚到底那些需要/v1等版本后缀，那些不需要（OpenClaw显然设计的比较乱，没有统一的规划）。

**OpenAI 模型**

```json
"baseUrl": "https://api.openai-proxy.org/v1",
"api": "openai-responses"
```

**Claude 模型**

```json
"baseUrl": "https://api.openai-proxy.org/anthropic",
"api": "anthropic-messages"
```

**Gemini 模型**

```json
"baseUrl": "https://api.openai-proxy.org/google/v1beta",
"api": "google-generative-ai"
```

**兼容模式：所有模型（包括 GLM、Kimi、MiniMax、千问、DeepSeek 等）** ⭐ 国产模型超低折扣

```json
"baseUrl": "https://api.openai-proxy.org/v1",
"api": "openai-completions"
```

> 国产模型推荐：`glm-5`、`kimi-k2.5`、`MiniMax-M2.5`、`deepseek-v3.2`、`qwen3.5-plus`、`qwen3.5-flash`，价格实惠，[查看折扣详情](https://platform.closeai-asia.com/pricing)。

::: warning
注意兼容模式看似强大，什么模型都能用，实则问题多多，因为兼容层往往有一些未覆盖的地方，很容易导致异常，推荐 Claude/Gemini 优先使用原生协议接入，更稳定，兼容模式只用于 GLM 等第三方模型。
:::
模型怎么配应该不用我教，改个名字的事。

所以最终，所有模型都配置的话，总的配置文件如下，你可以直接复制部分进去，或者整体复制进去替换：

:::details 点击展开 · 完整配置（四个 Provider）

```json
  "models": {
    "providers": {
      "closeai-openai": {
        "baseUrl": "https://api.openai-proxy.org/v1",
        "apiKey": "{sk-你的秘钥}",
        "auth": "api-key",
        "api": "openai-responses",
        "models": [
          {
            "id": "gpt-5.4",
            "name": "gpt-5.4",
            "reasoning": true,
            "input": [],
            "cost": {
              "input": 0,
              "output": 0,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 400000,
            "maxTokens": 128000
          }
        ]
      },
      "closeai-claude": {
        "baseUrl": "https://api.openai-proxy.org/anthropic",
        "apiKey": "{sk-你的秘钥}",
        "auth": "api-key",
        "api": "anthropic-messages",
        "models": [
          {
            "id": "claude-sonnet-4-6",
            "name": "claude-sonnet-4-6",
            "reasoning": true,
            "input": [],
            "cost": {
              "input": 0,
              "output": 0,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 64000
          }
        ]
      },
      "closeai-gemini": {
        "baseUrl": "https://api.openai-proxy.org/google/v1beta",
        "apiKey": "{sk-你的秘钥}",
        "auth": "api-key",
        "api": "google-generative-ai",
        "models": [
          {
            "id": "gemini-3.1-pro-preview",
            "name": "gemini-3.1-pro-preview",
            "reasoning": true,
            "input": [],
            "cost": {
              "input": 0,
              "output": 0,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 1000000,
            "maxTokens": 64000
          }
        ]
      },
      "closeai-compatible": {
        "baseUrl": "https://api.openai-proxy.org/v1",
        "apiKey": "{sk-你的秘钥}",
        "auth": "api-key",
        "api": "openai-completions",
        "models": [
          {
            "id": "glm-5",
            "name": "glm-5",
            "reasoning": true,
            "input": [],
            "cost": {
              "input": 0,
              "output": 0,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 64000
          },
          {
            "id": "kimi-k2.5",
            "name": "kimi-k2.5",
            "reasoning": true,
            "input": [],
            "cost": {
              "input": 0,
              "output": 0,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 64000
          },
          {
            "id": "qwen3.5-plus",
            "name": "qwen3.5-plus",
            "reasoning": true,
            "input": [],
            "cost": {
              "input": 0,
              "output": 0,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 64000
          },
          {
            "id": "deepseek-v3.2",
            "name": "deepseek-v3.2",
            "reasoning": true,
            "input": [],
            "cost": {
              "input": 0,
              "output": 0,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 200000,
            "maxTokens": 64000
          }
        ]
      }
    }
  },
```

:::

配置完成后，可以去默认的网页里聊天试试，一般就直接正常回复了。

## 注意事项

#### 内嵌api字段问题

系统自动生成的json里，可能有这个`api`字段，注意不要配置，可能会导致错误，这个和顶层那个`api`完全不是一个意思：

```json
{
  "id": "claude-haiku-4-5",
  "name": "claude-haiku-4-5",
  "api": "anthropic-messages" // <-- 这个东西
}
```

#### 老用户配置混淆问题

有些用户经常配置各种 api + key，有些配到了env里，对于不干净的环境，经常会造成非预期的情况，可能上面的配置就不生效了，因为可能程序会自动读取你的env等其他配置，造成配置混用。这类用户建议优先使用干净的环境配置，或者多研究文档如何覆盖默认配置，很多用户按照本文配置后依然无法使用，原因就在于此。

## 其他配置

其他配置不是本文重点，本文重点是帮用户跑通基本的模型请求，不卡在这一步，实际上模型配置通以后还有很多需要配置的，需要各位自己研究官方文档了。如果你有配置我们服务时的其他踩坑经验，欢迎投稿。
