CCB智能体卡死怎么办?$ccb_diagnose诊断命令与故障恢复完整清单
【免费下载链接】claude_codex_bridgeVisible multi-agent CLI workspace for mixing Codex, Claude, Gemini, Kimi, Qwen, Cursor, Copilot, Pi, OpenCode, and other AI coding agents项目地址: https://gitcode.com/gh_mirrors/cl/claude_codex_bridge
CCB(Claude Codex Bridge)是一个可视化的多智能体 CLI 工作区,让你在同一块终端屏幕里混用 Codex、Claude、Gemini、Kimi、Qwen、Cursor、Copilot、OpenCode 等 AI 编码智能体。当某个智能体"卡死"——不回复、不继续、显示报错时,内置的$ccb_diagnose诊断命令可以一键完成"体检 → 分类 → 恢复 → 验证"的全流程。本文是一份面向新手的最小可用清单,照着做即可。
智能体为什么会"卡死"?
先建立一个直觉:CCB 里每个智能体都运行在一个独立的 tmux 窗格(pane)里。所谓"卡死"通常有 8 种真实状态,$ccb_diagnose会把它们自动分类 🧩:
| 状态分类 | 含义 | 新手判断口诀 |
|---|---|---|
working | 正常干活中 | 有输出在滚动 = 没卡 |
waiting_input | 在等你输入 | 屏幕上有"信任/登录/确认"提示 |
stale_prompt | 请求已被接受但智能体闲置在提示符 | 最典型的"假卡死" |
provider_update | 卡在供应商升级/重装界面 | 屏幕出现 update/install 字样 |
provider_error | 认证、配额、限流、网络等报错 | 屏幕有红色报错 |
dead_or_blank | 窗格已死或空白 | 画面一片空白 |
misframed | 布局错乱导致状态不可观测 | 窗格大小/焦点异常 |
unknown | 证据不足 | 交给诊断系统判断 |
💡 关键认知:窗格上的文字只是"证据",不是权威。真正的权威是 CCB 的 runtime 与作业血缘(job lineage)。这正是
$ccb_diagnose存在的意义——它同时看"屏幕证据"和"权威状态",两者交叉验证。
一步诊断:如何正确使用 $ccb_diagnose
在所有受支持的托管智能体中,ccb-diagnose是内置必装的控制 Skill(即使关闭了可选 skill 继承也依然存在)。用法只有一行,在对应智能体的输入框里发出:
$ccb_diagnose <agentname>它会自动按 6 个阶段执行(完整工作流定义见 ccb-diagnose SKILL.md):
- 确立权威:依次
ccb ping ccbd、ccb ping <agent>、ccb ps、ccb queue --detail、ccb pend --inbox --detail,必要时ccb doctor logs <agent>与ccb trace <id>; - 深度窗格诊断:用只读方式捕获窗格文本,间隔一次做"有无进展"对比——绝不向窗格发送任何按键;
- 分类:输出
Status / Agent / Pane / Suspected domain / Evidence / Confidence / Next action结构化结论; - 受限恢复:只执行有证据支持的、破坏性最小的修复(见下节清单);
- 验证:重新跑最小检查集,确认血缘、队列、ping 全部恢复一致;
- 事故包:生成本地脱敏事故包,提交外部 issue 前必须经你明确授权。
故障恢复完整清单:6 种情况各对应什么操作
诊断系统遵守"最小破坏"原则。下表把常见结论映射到唯一推荐动作 🛠️:
| 诊断结论 | 推荐恢复命令 | 前提条件 |
|---|---|---|
| 回复已被接受但确认丢失 | ccb repair ack ... | trace 能证明回复确实被接受 |
| 一次尝试未完成但血缘仍有效 | ccb repair retry ... | 原始作业血缘未失效 |
| 血缘陈旧/上下文损坏 | ccb repair resubmit ... | 旧路径已终止,且你确认业务影响 |
| 供应商窗格陈旧/已死 | 先取消活跃作业 → 再ccb restart <agent> | 只针对当前图上的这一个智能体 |
| 上下文本身是病因 | ccb clear <agent> | 没有活跃/排队/待回复作业会丢失 |
| 配置漂移 | 配置校验 +ccb reload | 只针对已诊断的配置漂移 |
诊断契约的完整规则(哪些文件是证据、哪些是权威、什么操作被禁止)写在 ccbd-diagnostics-contract.md,想深入理解可以阅读。
四条红线(诊断系统会自动遵守,新手也请记住):
- ❌ 不直接
tmux send-keys / kill-pane / respawn-pane乱动手 - ❌ 不把所有智能体一起重启、不做项目级关停
- ❌ 不读取、打印或上传任何密钥/凭据
- ❌ 验证未通过之前,不声称"已恢复"
修复之后:30 秒验证闭环
恢复动作完成后,一定要跑一遍最小验证集,否则"诊断完成 ≠ 智能体恢复" ✅:
ccb trace <lineage_id> # 作业血缘回到预期状态 ccb queue --detail <agent> # 队列无异常重复头 ccb pend --inbox --detail <agent> ccb ping <agent> # 智能体心跳正常三项都一致、且窗格证据与结果相符,才算真正恢复。
修不好怎么办?导出支持包交给开发者
如果受限恢复全部失败,正确姿势不是继续重启,而是打包诊断现场:
ccb doctor # 项目级诊断读路径,先看总结 ccb doctor --bundle # 导出 .ccb/ccbd/support/<bundle-id>.tar.gz支持包是"传输单元":它包含 manifest、doctor 快照、当前配置、生命周期报告、后端日志、每个智能体的运行时权威与日志等,并且自动排除 API key、auth token 等敏感材料(规则详见诊断契约的 3.7 节)。把这个 tar 包发给维护者,对方无需登录你的机器就能复现故障上下文。
预防卡死的 3 个日常习惯
- 看队列先看头:排队本身不是故障,先检查活跃头(head)作业;
busy不等于卡:活跃作业 + 窗格有进展 = 健康状态;- 登录/配额类报错先处理供应商侧:
provider-auth-revoked类状态需要重新登录后再挂载,重启智能体解决不了它。
更多使用细节可参考中文 README(README/zh.md)与自助专家指南(ccb-self-expert-guide.md)。记住核心口诀:先$ccb_diagnose拿证据,再按清单选最小动作,最后 30 秒验证闭环——智能体卡死就不再是玄学,而是一张可以照做的检查表 📋。
【免费下载链接】claude_codex_bridgeVisible multi-agent CLI workspace for mixing Codex, Claude, Gemini, Kimi, Qwen, Cursor, Copilot, Pi, OpenCode, and other AI coding agents项目地址: https://gitcode.com/gh_mirrors/cl/claude_codex_bridge
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考