Token导航 LogoToken导航

Agent Skill · 开发

model-fallback(模型回退)

model-fallback 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

model-fallback 是开发类 Agent Skill,可用宿主为 Codex、Claude、Cursor、Gemini CLI,通过GitHub 仓库获取,权限为需要联网;许可证信息还不明确,第三方扫描有提醒项,按安装量在开发类的 21,746 个 Skill 里排第 12,932。

总安装 1,077周安装 44GitHub Stars 52下载 348核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
unknown

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:model-fallback(模型回退)
来源仓库:https://github.com/aaaaqwq/claude-code-skills
仓库路径:skills/model-fallback
安装命令:
npx skills add https://github.com/aaaaqwq/claude-code-skills --skill model-fallback
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/aaaaqwq/claude-code-skills --skill model-fallback

这个 Skill 是做什么的

开发类 Skill 面向写代码、改代码和排查问题,一般会读写仓库文件,部分还会执行构建或测试命令。

model-fallback 处理模型降级与故障切换机制,保障服务连续性。适用于 OpenClaw 环境下多模型优先级管理与异常恢复场景。支持三层模型解析(cron、agent、全局)及子任务继承规则。可通过 payload.model 显式指定或依赖 agent 级 primary model。

注意 subagents.model 配置易被遗漏,可能导致子任务失败。

来源仓库内路径:skills/model-fallback

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 Codex、Claude、Cursor、Gemini CLI;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 npx skills add https://github.com/aaaaqwq/claude-code-skills --skill model-fallb…;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要需要联网,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

model-fallback 怎么安装?

在终端执行 npx skills add https://github.com/aaaaqwq/claude-code-skills --skill model-fallback。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

model-fallback 支持哪些 AI 工具?

公开资料标注支持 Codex、Claude、Cursor、Gemini CLI。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

model-fallback 需要什么权限?

权限级别是需要联网。该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

model-fallback 是免费的吗?

公开资料没有标注明确许可证,收费和商用限制都无法确认。正式使用前请到来源仓库核对授权说明。

model-fallback 用的人多吗?

公开数据是累计安装 1,077 次,近一周安装 44 次,下载 348 次,GitHub 52 星。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

model-fallback 安全吗?

第三方扫描有提醒项,说明存在需要人工确认的行为。安装前请打开源码看清它读了什么、联网到哪里。

值得选的地方和要先想清楚的地方

值得选的地方

  • 同时适配 4 种工具,换客户端不用重新找替代品。

先想清楚的地方

  • 许可证没有明确标注,能不能商用、能不能再分发都不确定。
  • 第三方扫描存在提醒项或未通过项,需要人工逐条确认。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 Codex,想直接扩展它能力的人。
  • 需要处理开发类任务、又不想每次都手写提示词的人。

不太适合

  • 需要明确授权才能用到公司项目里的场景。
  • 需要厂商级技术支持和 SLA 的生产系统。

开发类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
skill-vetter

技能审查员 · OpenClaw

8,779,018986操作浏览器MIT-0通过
ontology

本体论 · OpenClaw

6,636,960576只读MIT-0通过
entra-app-registration

内部应用程序注册 · Codex、Claude

6,631,872764接触敏感数据未明确通过
entra-app-registration

内部应用程序注册 · Codex、Claude

3,757,680201接触敏感数据未明确通过
nano-banana-pro

纳米香蕉专业版 · OpenClaw

3,526,898364接触敏感数据MIT-0有提醒
model-fallback

模型回退 · 本页

1,07752需要联网未明确有提醒

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

模型降级与故障切换(实战版)

⚠️ 本文档基于 OpenClaw 2026.3.28 (f9b1079) 实战验证,非理论文档。

触发词

  • 模型降级 / fallback / 故障切换
  • model switch / LiveSessionModelSwitchError
  • cron 模型 / session model
  • shibacc 欠费 / 余额不足

一、Model 优先级机制

三层模型解析(优先级从高到低)

1. cron payload.model  →  单个 cron 任务独立指定
2. agent model.primary  →  agent 级配置
3. agents.defaults.model.primary  →  全局默认

额外层级

agents.defaults.subagents.model  →  sessions_spawn 子任务默认模型

⚠️ 易遗漏! 2026-03-31 事故中,agent primary 已改但 subagents.model 还是旧值,导致子任务全部走失败的 provider。


二、Cron Model 继承机制

三种情况

payload.kindpayload.model实际使用的模型
agentTurn显式指定(如 zai/glm-5.1)用指定的 ✅
agentTurn未指定继承 agent 的 primary model
systemEventN/A不走 LLM,纯文本注入

payload.fallbacks 也可以独立指定

"payload": {
  "kind": "agentTurn",
  "model": "zai/glm-5.1",
  "fallbacks": ["minimax/MiniMax-M2.7-highspeed", "xingsuancode/claude-opus-4-6"],
  "message": "..."
}

不指定则继承 agent 的 fallbacks 配置。


三、Session 缓存陷阱(核心坑)

问题描述

OpenClaw session 以 JSONL 文件持久化在磁盘:

~/.openclaw/agents/*/sessions/*.jsonl

session 文件内缓存了当前使用的 model 名称。即使 config 改了 primary,session 文件里的旧 model 不会自动更新。

表现

  • isolated session(cron 默认)理论上每次创建新 session,但仍可能复用缓存的 model 映射
  • session:xxx(绑定到特定 session)100% 会复用旧 model
  • Gateway SIGUSR1 热重启(config reload)不清除 session 缓存
  • Gateway 完整重启也不清除——session 文件从磁盘重新加载

解决方案

  1. 对活跃 session:在 Telegram 群里对该 agent 执行 /new 重置 session
  2. 对 cron isolated session:等旧 session 自然过期被清理,或删除 session 文件后重启
  3. 对 sessionTarget="session:xxx" 的 cron:必须手动 /new 对应 session 或更新 cron 的 sessionTarget

四、LiveSessionModelSwitchError Bug

Bug 揎标题

GitHub Issue: openclaw/openclaw#58406

触发条件

当 fallback 过程中,OpenClaw 检测到 session 的 model 被并发修改(live session model switch detected before attempt),会把所有 fallback 候选模型标记为 candidate_failed (reason=unknown),不实际尝试 API 调用。

日志特征

[model-fallback/decision] candidate_failed requested=shibacc/claude-opus-4-6 candidate=zai/glm-5.1 reason=unknown
[agent/embedded] live session model switch detected before attempt: zai/glm-5.1 -> shibacc/claude-opus-4-6

根因

Fallback 流程中的 "live session model switch detection" 过于激进,不区分:

  • 真正的用户主动切换(应该放弃)
  • fallback 过程中的正常模型变化(应该继续尝试)

临时 Workaround

  • 不要在 fallback 过程中手动 /model 切换
  • 将所有 agent primary 设为可用模型,减少对 fallback 链的依赖
  • 确保没有并发操作修改 session model

五、运维 SOP

模型供应商故障时

# 1. 确认哪个 provider 挂了
journalctl _PID=$(pgrep openclaw-gateway) --since "10 min ago" | grep -i "error\|403\|429"

# 2. 查看当前所有 agent primary
cat ~/.openclaw/openclaw.json | python3 -c "
import json, sys
c = json.load(sys.stdin)
print('defaults.primary:', c['agents']['defaults']['model']['primary'])
print('subagents.model:', c['agents']['defaults']['subagents']['model'])
for a in c['agents']['list']:
    print(f'  {a[\"id\"]}: {a.get(\"model\",{}).get(\"primary\",\"(inherit)\")}')"

# 3. 批量切换所有 agent + subagents + cron payload.model
# 见下方"一键切换脚本"

一键切换所有模型

# config.patch 方式(推荐)—— 改 agent primary + fallbacks + subagents.model
# 通过 gateway tool 的 config.patch 操作

# cron payload.model 批量更新
# 需要逐个 cron update,设置 payload.model + payload.fallbacks

检查 Session 缓存污染

# 统计所有 session 文件引用的 model
grep -rh '"model"' ~/.openclaw/agents/*/sessions/*.jsonl 2>/dev/null \
  | grep -oP '"model":"[^"]*"' | sort | uniq -c | sort -rn | head -20

# 查看特定 agent 的活跃 session
ls -lt ~/.openclaw/agents/quant/sessions/*.jsonl | head -5

验证 Fallback 链路

# 查看最近 30 分钟的 fallback 日志
journalctl _PID=$(pgrep openclaw-gateway) --since "30 min ago" \
  | grep -i "fallback\|candidate_failed\|model.*switch" | tail -30

六、配置检查清单

新增 Provider 时

  • models.providers.<name> 配置 baseUrl + apiKey + models
  • auth.profiles.<name>:default 配置认证模式
  • .env 添加对应环境变量
  • pass show api/<name> 确保密钥可用

修改模型时

  • agents.defaults.model.primary — 全局默认
  • agents.defaults.subagents.model — ⚠️ 易遗漏
  • agents.list[].model.primary — 各 agent 独立配置
  • agents.list[].model.fallbacks — fallback 链
  • 各 cron 的 payload.model — 需逐个更新
  • 各 cron 的 payload.fallbacks — 需逐个更新

故障恢复时

  • 对活跃 session 执行 /new 清除缓存
  • 确认 subagents.model 已更新
  • force-run 一个 cron 验证新配置生效
  • 检查 session 文件中旧 model 引用是否清除

七、已知问题跟踪

问题状态Issue
LiveSessionModelSwitchError 导致 fallback 全链失败🟡 已报 bug#58406
SIGUSR1 热重启不清除 session model 缓存🟡 待确认-
isolated cron session 复用旧 model 映射🟡 待确认-

*Last updated: 2026-03-31 — 基于 shibacc 余额耗尽事故的完整复盘*

平台分布

Codex

40.68%
按下载量换算142

Claude

27.73%
按下载量换算97

Cursor

18.87%
按下载量换算66

Gemini CLI

10.46%
按下载量换算36

安全审计

Gen Agent Trust Hub

可疑

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在提醒或未通过项,安装前请自行复核。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills