所以今天聊一个实际问题:怎么让 OpenClaw 的模型切换变得丝滑,甚至全自动?
最笨但最直接的办法:手动改配置文件
最基础的方式,就是 SSH 到服务器,直接编辑配置文件。完整流程长这样:
ssh user-server
nano ~/.openclaw/openclaw.json
# 换 key:找到对应 provider 的 apiKey 字段,替换成新的 key
# 换模型:找到 agents.defaults.model.primary,改成备用模型 ID
# 保存退出
openclaw gateway restart
两种常见操作:一是同一模型换个渠道的 API Key,二是直接换一个模型顶上。不管哪种,都得走这套流程。
但你有没有想过,这个方式对大多数人来说有多不友好?JSON 格式少个逗号、多个引号就启动不了,配置文件内容也不少,光找到要改的字段就需要时间。改完还不确定对不对,必须重启 Gateway 才能验证。紧急情况下,这套操作的心理压力其实不小。
更聪明的方式:/model 命令
OpenClaw 其实自带了一个 /model 命令,可以在聊天框里直接切换模型——不需要 SSH、不需要改配置文件、不需要重启服务,即时生效。
比如主力模型 Claude 渠道挂了,一行命令切到 Codex:
/model aigocode-gpt/gpt-5.3-codex
等 Claude 恢复了,再切回来:
/model cc/claude-opus-4-6
或者直接重置为配置文件里的默认模型:
/model reset
这里有两个容易踩的坑,提前说一下:
/model切换的是当前会话的模型,不会修改配置文件。新会话或 Gateway 重启后,会回到默认模型。这其实很合理——临时救急用/model,长期变更才去改配置。/model只能切换到配置文件白名单里的模型。配置文件中有一个models字段控制这个,只有列在里面的模型才允许切换。默认模型不需要额外加,但新增的备用模型一定要记得加进白名单,否则会提示不允许切换。
如果你觉得模型 ID 太长记不住,可以在配置文件里给模型设别名(alias)。设好之后,直接 /model opus 或 /model codex 就行。
这里顺便解释一下模型 ID 里的前缀,比如 cc 和 aigocode-gpt,它们是自定义的供应商名称(Provider ID)。用第三方中转而不是官方 API 的话,自定义一个名称来区分不同渠道,每个渠道独立配置 API Key 和 Base URL,互不干扰,出了问题也能一眼定位是哪个渠道。
最优解:自动故障切换(Fallback Chains)
手动切换再快,毕竟还是要人盯着。OpenClaw 其实还有一个很多人不知道的功能——fallback chains,可以配置模型的自动故障切换。
在配置文件里,除了设置主模型,还可以设置一个 fallbacks 数组:
{
"agents": {
"defaults": {
"model": {
"primary": "cc/claude-opus-4-6",
"fallbacks": ["aigocode-gpt/gpt-5.3-codex", "aigocode-gpt/gpt-5.2-codex"]
}
}
}
}
配好之后,当主模型出现超时、认证失败、触发限流等问题时,OpenClaw 会自动按顺序尝试备用模型,完全不需要手动干预。等主模型恢复了,新会话又会自动回到 Claude。
配置方式也很简单,把上面的 JSON 结构直接贴给 OpenClaw,它会帮你检查配置结构和实际可用的模型。
三件事,让模型永远在线
回过头来看,要让 OpenClaw 的使用体验真正稳定,其实就三件事:
- 多配几个不同渠道的模型做备用——不同渠道基本不会同时挂掉
- 记住
/model命令——聊天框里即时切换,几秒恢复对话 - 配好 fallback chains——让系统自动处理故障,你甚至不会感知到切换发生
做好这三步,日常用 Claude Opus 作为主力,一旦出问题系统自动切到 Codex,对话不中断、思路不打断。对于把 OpenClaw 当作生产力工具的一人公司来说,这不是锦上添花,而是基本保障。
那么,你现在的 OpenClaw 配置里,有几个备用模型?