Models CLI
参见 /concepts/model-failover 了解 auth profile 轮换、cooldowns 以及它与 fallbacks 的交互方式。快速 provider 概述 + 示例:/concepts/model-providers。Model 选择如何工作
OpenClaw 按以下顺序选择 models:- Primary model (
agents.defaults.model.primary或agents.defaults.model)。 agents.defaults.model.fallbacks中的 Fallbacks(按顺序)。- Provider auth failover 在移动到下一个 model 之前在 provider 内部发生。
agents.defaults.models是 OpenClaw 可以使用的 models 的允许列表/catalog(加上 aliases)。agents.defaults.imageModel仅在 primary model 无法接受图像时使用。- 每个 agent 的默认值可以通过
agents.list[].model加上 bindings 覆盖agents.defaults.model(参见 /concepts/multi-agent)。
快速 model 选择(轶事)
- GLM: 在编码/tool 调用方面稍好一些。
- MiniMax: 在写作和氛围方面更好。
设置向导(推荐)
如果你不想手动编辑配置,请运行 onboarding 向导:claude setup-token)。
配置键(概述)
agents.defaults.model.primary和agents.defaults.model.fallbacksagents.defaults.imageModel.primary和agents.defaults.imageModel.fallbacksagents.defaults.models(允许列表 + aliases + provider 参数)models.providers(写入models.json的自定义 providers)
z.ai/* 规范化为 zai/*。
Provider 配置示例(包括 OpenCode Zen)位于 /gateway/configuration。
“Model is not allowed”(以及为什么回复停止)
如果设置了agents.defaults.models,它将成为 /model 和 session 覆盖的 允许列表。当用户选择不在该允许列表中的 model 时,OpenClaw 返回:
- 将 model 添加到
agents.defaults.models,或 - 清除允许列表(删除
agents.defaults.models),或 - 从
/model list中选择一个 model。
在聊天中切换 models (/model)
你可以在不重启的情况下为当前 session 切换 models:
/model(和/model list)是紧凑的编号选择器(model family + 可用 providers)。/model <#>从该选择器中选择。/model status是详细视图(auth 候选和配置时的 provider 端点baseUrl+api模式)。- Model refs 通过在 第一个
/上拆分来解析。输入/model <ref>时使用provider/model。 - 如果 model ID 本身包含
/(OpenRouter 样式),你必须包含 provider 前缀(例如:/model openrouter/moonshotai/kimi-k2)。 - 如果省略 provider,OpenClaw 将输入视为别名或 默认 provider 的 model(仅当 model ID 中没有
/时才有效)。
CLI 命令
openclaw models(无子命令)是 models status 的快捷方式。
models list
默认显示配置的 models。有用的 flags:
--all: 完整 catalog--local: 仅本地 providers--provider <name>: 按 provider 过滤--plain: 每行一个 model--json: 机器可读输出
models status
显示解析的 primary model、fallbacks、image model 以及配置的 providers 的 auth 概述。它还显示在 auth store 中找到的 profiles 的 OAuth 过期状态(默认在 24 小时内警告)。--plain 仅打印解析的 primary model。始终显示 OAuth 状态(并包含在 --json 输出中)。如果配置的 provider 没有凭据,models status 打印 Missing auth 部分。JSON 包括 auth.oauth(警告窗口 + profiles)和 auth.providers(每个 provider 的有效 auth)。使用 --check 进行自动化(缺失/过期时退出 1,即将过期时退出 2)。
首选的 Anthropic auth 是 Claude Code CLI setup-token(在任何地方运行;如果需要,在 gateway 主机上粘贴):
扫描(OpenRouter 免费 models)
openclaw models scan 检查 OpenRouter 的 免费 model catalog,并可以选择性地探测 models 的 tool 和 image 支持。
关键 flags:
--no-probe: 跳过实时探测(仅元数据)--min-params <b>: 最小参数大小(十亿)--max-age-days <days>: 跳过较旧的 models--provider <name>: provider 前缀过滤器--max-candidates <n>: fallback 列表大小--set-default: 将agents.defaults.model.primary设置为第一个选择--set-image: 将agents.defaults.imageModel.primary设置为第一个 image 选择
OPENROUTER_API_KEY)。没有 key,使用 --no-probe 仅列出候选。
扫描结果按以下排名:
- Image 支持
- Tool 延迟
- Context 大小
- 参数计数
- OpenRouter
/models列表(过滤:free) - 需要来自 auth profiles 或
OPENROUTER_API_KEY的 OpenRouter API key(参见 /environment) - 可选过滤器:
--max-age-days、--min-params、--provider、--max-candidates - 探测控制:
--timeout、--concurrency
--yes 以接受默认值。
Models registry (models.json)
models.providers 中的自定义 providers 写入 agent 目录下的 models.json(默认 ~/.openclaw/agents/<agentId>/models.json)。除非 models.mode 设置为 replace,否则此文件默认合并。