Models CLI
auth profile 轮换、cooldowns 以及它们如何与 fallbacks 交互,参见 /concepts/model-failover。 快速 provider 概览与示例参见:/concepts/model-providers。
模型选择如何工作
Moltbot 按以下顺序选择模型:
- Primary 模型(
agents.defaults.model.primary或agents.defaults.model)。 agents.defaults.model.fallbacks中的 Fallbacks(按顺序)。- 在切换到下一个模型之前,会先在当前 provider 内进行 Provider auth failover。
相关项:
agents.defaults.models是 Moltbot 可用的模型 allowlist/catalog(以及别名)。agents.defaults.imageModel仅在 primary 模型无法接收图片时才会使用。- 可通过
agents.list[].model+ bindings 覆盖单个 agent 的默认值(参见 /concepts/multi-agent)。
快速模型推荐(非严格结论)
- GLM:编码/工具调用略好一些。
- MiniMax:写作与“感觉”更好。
安装向导(推荐)
如果你不想手工编辑配置,可以运行 onboarding wizard:
moltbot onboard它可以为常见 providers 配置 model + auth,包括 OpenAI Code (Codex) 订阅(OAuth)与 Anthropic(推荐 API key;也支持 claude setup-token)。
配置键(概览)
agents.defaults.model.primary与agents.defaults.model.fallbacksagents.defaults.imageModel.primary与agents.defaults.imageModel.fallbacksagents.defaults.models(allowlist + aliases + provider params)models.providers(写入models.json的自定义 providers)
模型引用(model refs)会被规范化为小写。类似 z.ai/* 的 provider aliases 会规范化为 zai/*。
provider 配置示例(含 OpenCode Zen)位于 /gateway/configuration。
“Model is not allowed”(以及为什么看起来“没回复”)
如果设置了 agents.defaults.models,它会成为 /model 与 session overrides 的 allowlist。当用户选择的模型不在 allowlist 内,Moltbot 会返回:
Model "provider/model" is not allowed. Use /model to list available models.这个错误发生在生成正常回复之前,因此消息看起来像“没有响应”。解决方法:
- 把该模型加入
agents.defaults.models,或 - 清除 allowlist(移除
agents.defaults.models),或 - 从
/model list里选择一个 allowlist 内的模型。
allowlist 配置示例:
{
agent: {
model: { primary: "anthropic/claude-sonnet-4-5" },
models: {
"anthropic/claude-sonnet-4-5": { alias: "Sonnet" },
"anthropic/claude-opus-4-5": { alias: "Opus" }
}
}
}在聊天中切换模型(/model)
你可以在不重启的情况下为当前 session 切换模型:
/model
/model list
/model 3
/model openai/gpt-5.2
/model status备注:
/model(与/model list)会给出一个紧凑的编号选择器(模型家族 + 可用 providers)。/model <#>从选择器中按序号选择。/model status是更详细的视图(auth 候选,以及配置时的 provider endpointbaseUrl+api模式)。- model refs 通过“第一个
/”分割解析。手动输入时请使用provider/model。 - 如果 model id 自身包含
/(OpenRouter 风格),必须包含 provider 前缀(例如:/model openrouter/moonshotai/kimi-k2)。 - 如果省略 provider,Moltbot 会把输入当作 alias 或默认 provider 的 model(仅在 model id 不包含
/时成立)。
完整命令行为与配置参见:Slash commands。
CLI 命令
moltbot models list
moltbot models status
moltbot models set <provider/model>
moltbot models set-image <provider/model>
moltbot models aliases list
moltbot models aliases add <alias> <provider/model>
moltbot models aliases remove <alias>
moltbot models fallbacks list
moltbot models fallbacks add <provider/model>
moltbot models fallbacks remove <provider/model>
moltbot models fallbacks clear
moltbot models image-fallbacks list
moltbot models image-fallbacks add <provider/model>
moltbot models image-fallbacks remove <provider/model>
moltbot models image-fallbacks clearmoltbot 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 过期状态(默认在 24h 内过期会警告)。--plain 只打印解析后的 primary model。
OAuth 状态总是会展示(并包含在 --json 输出中)。若某个已配置 provider 缺少凭据,models status 会输出 Missing auth 区块。JSON 中包含 auth.oauth(warn window + profiles)与 auth.providers(每 provider 的有效 auth)。自动化场景可用 --check(缺失/已过期退出码 1,即将过期退出码 2)。
Anthropic 推荐的鉴权方式是 Claude Code CLI 的 setup-token(可在任意机器运行;必要时把 token 粘贴到 gateway host 上):
claude setup-token
moltbot models status扫描(OpenRouter 免费模型)
moltbot models scan 会检查 OpenRouter 的 免费模型目录,并可选地对模型进行 tools 与 image 支持探测。
主要 flags:
--no-probe:跳过在线探测(仅元数据)--min-params <b>:最小参数规模(十亿)--max-age-days <days>:跳过更老的模型--provider <name>:provider 前缀过滤--max-candidates <n>:fallback 列表大小--set-default:把agents.defaults.model.primary设置为第一条选择--set-image:把agents.defaults.imageModel.primary设置为第一条 image 选择
探测需要 OpenRouter API key(来自 auth profiles 或 OPENROUTER_API_KEY)。没有 key 时可用 --no-probe 仅列出候选。
scan 结果按以下维度排序:
- image 支持
- tool 延迟
- context 大小
- 参数量
输入:
- OpenRouter
/models列表(过滤:free) - 需要来自 auth profiles 或
OPENROUTER_API_KEY的 OpenRouter API key(参见 /environment) - 可选 filters:
--max-age-days、--min-params、--provider、--max-candidates - probe 控制:
--timeout、--concurrency
在 TTY 下,你可以交互式选择 fallbacks。非交互模式下,传 --yes 以接受默认值。
Models registry(models.json)
models.providers 中的自定义 providers 会写入 agent 目录下的 models.json(默认 ~/.openclaw/agents/<agentId>/models.json)。除非将 models.mode 设为 replace,否则该文件默认会以 merge 方式合并。