api-provider-setup

添加和配置第三方 API 中转站供应商到 OpenClaw。当用户需要添加新的 API 供应商、配置中转站、设置自定义模型端点时使用此技能。支持 Anthropic 兼容和 OpenAI 兼容的 API 格式。

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "api-provider-setup" with this command: npx skills add aaaaqwq/claude-code-skills/aaaaqwq-claude-code-skills-api-provider-setup

API Provider Setup

为 OpenClaw 添加和配置第三方 API 中转站供应商。

配置位置

配置文件:~/.openclaw/openclaw.json

models.providers 部分添加自定义供应商。

配置模板

Anthropic 兼容 API(如 anapi、智谱)

{
  "models": {
    "mode": "merge",
    "providers": {
      "供应商名称": {
        "baseUrl": "https://api.example.com",
        "apiKey": "sk-your-api-key",
        "auth": "api-key",
        "api": "anthropic-messages",
        "models": [
          {
            "id": "model-id",
            "name": "显示名称",
            "reasoning": false,
            "input": ["text"],
            "contextWindow": 200000,
            "maxTokens": 8192,
            "cost": {
              "input": 0,
              "output": 0,
              "cacheRead": 0,
              "cacheWrite": 0
            }
          }
        ]
      }
    }
  }
}

OpenAI 兼容 API(如 OpenRouter)

{
  "models": {
    "mode": "merge",
    "providers": {
      "供应商名称": {
        "baseUrl": "https://api.example.com/v1",
        "apiKey": "sk-your-api-key",
        "auth": "api-key",
        "api": "openai-completions",
        "models": [
          {
            "id": "gpt-4",
            "name": "GPT-4",
            "reasoning": false,
            "input": ["text"],
            "contextWindow": 128000,
            "maxTokens": 4096
          }
        ]
      }
    }
  }
}

关键字段说明

字段必填说明
baseUrlAPI 端点地址(不含 /v1/messages 等路径)
apiKeyAPI 密钥
auth认证方式,通常为 api-key
apiAPI 格式:anthropic-messagesopenai-completions
models该供应商支持的模型列表
models[].id模型 ID(调用时使用)
models[].name显示名称
models[].contextWindow上下文窗口大小
models[].maxTokens最大输出 token 数
models[].reasoning是否支持推理模式

添加模型别名

agents.defaults.models 中添加别名:

{
  "agents": {
    "defaults": {
      "models": {
        "供应商/模型id": {
          "alias": "简短别名"
        }
      }
    }
  }
}

⚠️ 重要约束alias 字段必须是字符串,不能是数组!

// ✅ 正确
"alias": "opus46"

// ❌ 错误 - 会导致 Config validation failed
"alias": ["opus46", "aixn/opus46"]

如果需要多个别名指向同一模型,需要在 models 中添加多条记录:

"供应商/模型id": { "alias": "别名1" }

设置为默认模型

agents.defaults.model 中设置:

{
  "agents": {
    "defaults": {
      "model": {
        "primary": "供应商/模型id",
        "fallbacks": [
          "备选供应商1/模型id",
          "备选供应商2/模型id"
        ]
      }
    }
  }
}

添加流程

  1. 获取供应商信息

    • Base URL
    • API Key
    • API 格式(Anthropic 或 OpenAI 兼容)
    • 支持的模型列表
  2. 使用 gateway config.patch 添加

    gateway config.patch 添加供应商配置
    
  3. 重启 Gateway 生效

    gateway restart
    
  4. 测试新模型

    session_status(model="新供应商/模型id")
    

常见中转站配置示例

Anapi (Anthropic 中转)

"anapi": {
  "baseUrl": "https://anapi.9w7.cn",
  "apiKey": "sk-xxx",
  "auth": "api-key",
  "api": "anthropic-messages",
  "models": [{"id": "opus-4.5", "name": "Opus 4.5", "contextWindow": 200000}]
}

智谱 ZAI

"zai": {
  "baseUrl": "https://open.bigmodel.cn/api/anthropic",
  "apiKey": "xxx.xxx",
  "auth": "api-key",
  "api": "anthropic-messages",
  "models": [{"id": "glm-4.7", "name": "GLM-4.7", "contextWindow": 200000}]
}

OpenRouter VIP

"openrouter-vip": {
  "baseUrl": "https://openrouter.vip/v1",
  "apiKey": "sk-xxx",
  "auth": "api-key",
  "api": "openai-completions",
  "models": [{"id": "gpt-5.2", "name": "GPT-5.2", "contextWindow": 200000}]
}

故障排查

  1. 401 Unauthorized - API Key 错误或过期
  2. 404 Not Found - baseUrl 路径错误或 API 格式不匹配
  3. 模型不存在 - 检查 models[].id 是否正确
  4. 格式错误 - 检查 api 字段是否匹配供应商的 API 格式

常见问题与解决方案

API 格式不匹配导致 404

症状:消息发送成功,但 AI 返回 404 status code (no body)

原因:供应商的 API 格式配置错误。

诊断

# 测试 Anthropic Messages API 格式
curl -X POST "https://your-api-endpoint/v1/messages" \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -d '{"model":"model-id","max_tokens":10,"messages":[{"role":"user","content":"hi"}]}'

# 测试 OpenAI Completions API 格式
curl -X POST "https://your-api-endpoint/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{"model":"model-id","messages":[{"role":"user","content":"hi"}],"max_tokens":10}'

解决

  1. 确认供应商使用的 API 格式:

    • Anthropic 格式:使用 /v1/messages,请求体包含 messages 数组
    • OpenAI 格式:使用 /v1/chat/completions,请求体包含 messages 数组
  2. 修改 models.json 中的 api 字段:

    {
      "providers": {
        "your-provider": {
          "api": "anthropic-messages"  // 或 "openai-completions"
        }
      }
    }
    
  3. 重启 Gateway:

    openclaw gateway restart
    

案例

  • Anapi 使用 Anthropic Messages API,必须设置 "api": "anthropic-messages"
  • OpenRouter VIP 使用 OpenAI Completions API,必须设置 "api": "openai-completions"
  • 智谱 ZAI 使用 Anthropic Messages API,必须设置 "api": "anthropic-messages"

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

multi-search-engine

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

feishu-automation

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

web-scraping-automation

No summary provided by upstream source.

Repository SourceNeeds Review