在 OpenClaw 中使用 OminiGate

OpenClaw 是一款自托管的 AI 助手网关。只需在一份 JSON 文件里注册 OminiGate,即可解锁完整模型目录。

OpenClaw

概览

OpenClaw 是开源的自托管 AI 助手,可以对接任意 OpenAI 兼容或 Anthropic 兼容的 provider。配置文件位于 ~/.openclaw/openclaw.json,同一个安装可以挂载多个 provider。

OminiGate 同时暴露 /v1/chat/completions(OpenAI)和 /v1/messages(Anthropic)两种端点。你可以挑任意一种注册 —— 或同时注册两种,最大化覆盖模型范围。

  • 一份 JSON 文件,无需重新编译。
  • OminiGate 与你原有的 provider 共存,OpenClaw 会把它们合并到同一个模型选择器里。
  • 给每个模型定义一次 name、modality、上下文窗口等元数据,OpenClaw 的 UI 会自动识别。

前置条件

安装 OpenClaw 并获取 OminiGate API Key。

1. 安装 OpenClaw

OpenClaw 以全局 npm 包形式发布,需要 Node 18+。首次运行会创建 ~/.openclaw 目录用于存放配置。

npm install -g openclaw@latest

2. 获取 OminiGate API Key

到 Dashboard 创建一把 Key。Key 会直接写入 openclaw.json,请避免把该文件提交到公共仓库。

打开 API Keys

配置 provider

把 OminiGate 注册到 models.providers 下。根据目标模型选择协议 —— 走 OpenAI 覆盖面更广,走 Anthropic 可以启用 prompt caching 等 Claude 专属特性。mode: "merge" 会保留 OpenClaw 内建 provider,和 OminiGate 并存。

选择与你目标模型协议匹配的 Tab。openai-completions 走 OminiGate 的 /v1/chat/completions,覆盖 OpenAI、Anthropic、Google 等所有供应商;anthropic-messages 走 OminiGate 的 /v1/messages,可以保留 Anthropic 独有的 prompt caching 等特性。注意 apiKey 引用的是环境变量 OMINIGATE_API_KEY —— OpenClaw 启动时会从 shell 环境解析占位符,secret 不会以明文形式写在 JSON 里。

{
  "agents": {
    "defaults": {
      "model": { "primary": "ominigate/openai/gpt-5.4-pro" }
    }
  },
  "models": {
    "mode": "merge",
    "providers": {
      "ominigate": {
        "baseUrl": "https://api.ominigate.ai/v1",
        "api": "openai-completions",
        "apiKey": "${OMINIGATE_API_KEY}",
        "models": [
          { "id": "openai/gpt-5.4-pro", "name": "GPT-5.4 Pro" },
          { "id": "anthropic/claude-opus-4.6", "name": "Claude Opus 4.6" },
          { "id": "google/gemini-3.1-pro-preview", "name": "Gemini 3.1 Pro (preview)" }
        ]
      }
    }
  }
}

配置路径: ~/.openclaw/openclaw.json

导出 API Key

OpenClaw 启动时从环境变量读取 OMINIGATE_API_KEY。请把 export 写入 ~/.zshrc 或 ~/.bashrc,新开 shell 也能保留。

shell profile
export OMINIGATE_API_KEY="sk-omg-your-api-key"

验证、重启、运行

OpenClaw 仅在 gateway 重启时才重新加载 config,因此修改 openclaw.json 之后务必走 验证 → 重启 → 运行 三步。

1. 验证配置

openclaw doctor 会检查 JSON 语法、环境变量解析和 provider 可达性;openclaw models list 确认新注册的 OminiGate slug 已被识别。

shell
openclaw doctor
openclaw models list  # expect to see ominigate/openai/gpt-5.4-pro etc.

2. 重启 Gateway

修改配置后必须重启 gateway 才会生效。跳过这一步,新 provider 和模型不会出现在会话里。

shell
openclaw gateway restart

3. 运行或切换主模型

单次运行用 --model;models set 会持久化修改默认主模型;对话中发 /model 可即时切换。

shell
# One-shot with an explicit model
openclaw run --model ominigate/openai/gpt-5.4-pro "Review the changes in this branch"

# Or change the default primary model persistently
openclaw models set ominigate/anthropic/claude-opus-4.6

# Or swap mid-conversation
/model ominigate/google/gemini-3.1-pro-preview

推荐模型

OminiGate 目录中任意模型都能加入 models 数组。下面四个适合作为起手。

openai/gpt-5.4-pro

OpenAI 顶级档位,Agent 工具调用场景下的稳妥默认。

anthropic/claude-opus-4.6

Anthropic 最高档。注册到 anthropic-messages provider 即可启用 prompt caching。

anthropic/claude-sonnet-4.6

Anthropic 中速度更快的档位 —— 代码质量高,延迟更低。

google/gemini-3.1-pro-preview

Google 旗舰,多模态,长上下文。通过 OminiGate 的 OpenAI 端点路由。

完整模型列表: /models.

常见问题

openclaw models list 里看不到我新加的模型。

最常见的原因是 gateway 还没重启 —— 执行 openclaw gateway restart 即可。如果重启后仍然缺失,openclaw doctor 会报出 JSON 解析错误或环境变量未解析。也可以用 jq < ~/.openclaw/openclaw.json 排查。

OminiGate 返回 404 Not Found。

仔细检查 baseUrl。openai-completions 协议应写 https://api.ominigate.ai/v1(含 /v1 后缀);anthropic-messages 协议应写 https://api.ominigate.ai(不带后缀,OpenClaw 会自己追加 /v1/messages)。

某个已注册的模型在调用时被拒绝。

如果设置了 agents.defaults.model.models,它会成为白名单 —— 只有列入其中的模型才允许调用,其它已注册的模型会全部被拦截。要么把该 slug 加入这个 map,要么把 defaults 下的整个 models 字段删掉以解除限制。

openclaw doctor 提示 API Key 未解析。

OpenClaw 从 gateway 进程的运行环境解析 OMINIGATE_API_KEY 占位符。如果用 systemd 管理,请把 OMINIGATE_API_KEY=... 加入 service 文件的 Environment= 或引用的 env file。桌面场景下,export 必须写在启动 gateway 那个 shell 的 profile 里。

Prompt caching 好像没生效。

Prompt caching 只在 Anthropic 协议下可用。请把 Anthropic 模型注册到 api: "anthropic-messages" —— OpenAI 兼容端点不会转发 cache_control 块。

下一步

查看完整 API 参考,或浏览更多可在 OpenClaw 里注册的模型。