在 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配置 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 也能保留。
export OMINIGATE_API_KEY="sk-omg-your-api-key"验证、重启、运行
OpenClaw 仅在 gateway 重启时才重新加载 config,因此修改 openclaw.json 之后务必走 验证 → 重启 → 运行 三步。
1. 验证配置
openclaw doctor 会检查 JSON 语法、环境变量解析和 provider 可达性;openclaw models list 确认新注册的 OminiGate slug 已被识别。
openclaw doctor
openclaw models list # expect to see ominigate/openai/gpt-5.4-pro etc.2. 重启 Gateway
修改配置后必须重启 gateway 才会生效。跳过这一步,新 provider 和模型不会出现在会话里。
openclaw gateway restart3. 运行或切换主模型
单次运行用 --model;models set 会持久化修改默认主模型;对话中发 /model 可即时切换。
# 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-proOpenAI 顶级档位,Agent 工具调用场景下的稳妥默认。
anthropic/claude-opus-4.6Anthropic 最高档。注册到 anthropic-messages provider 即可启用 prompt caching。
anthropic/claude-sonnet-4.6Anthropic 中速度更快的档位 —— 代码质量高,延迟更低。
google/gemini-3.1-pro-previewGoogle 旗舰,多模态,长上下文。通过 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 里注册的模型。