debug-probe
AI 驱动的运行时调试探针。通过 假设→插桩→收集→收敛→修复→清理 闭环精准定位 bug 根因,用运行时证据替代静态猜测。Use when 用户报告 bug/异常行为且静态分析无法定位、涉及复杂状态/异步时序、或用户说"调试一下""帮我排查""用探针""debug"。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
AI 驱动的运行时调试探针。通过 假设→插桩→收集→收敛→修复→清理 闭环精准定位 bug 根因,用运行时证据替代静态猜测。Use when 用户报告 bug/异常行为且静态分析无法定位、涉及复杂状态/异步时序、或用户说"调试一下""帮我排查""用探针""debug"。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
在任意空目录中从零创建数字人智能体应用。自动识别场景(业务流/纯对话/能力展示),从内置模板复制项目文件,引导用户改配置、本地调通。Use when 用户说"新建数字人应用""开发智能体""做 XX 场景的 Demo""搭一个数字人""创建一个数字人项目"。
接到"加 Biz 类型 / 加新消息类型 / 加新消息样式 / 发某某卡片 / 想发个表单让用户填 / 消息发出去对端没收到"等需求时触发。引导决策:基础类型 vs 已有 BIZ vs 新增 BIZ;新增 BIZ 必须走后端专属接口 + 前后端共同约定 4 步流程;前端职责仅"调发送接口 + 写展示卡片"。
合并 master 前检查 swagger-repo.json 是否残留 feat 分支,半自动逐条切回并重跑 gen:api。**触发场景**:准备合并到 master 之前(由 git-ship skill 自动调用)/ 修改过 swagger-repo.json 的 branch 字段 / 拉到陌生分支后想确认 API 类型来源 / 用户输入 /check-api-branch。
多模型并行 Code Review。**自动触发场景**:用户拍板 plan 后改完代码(中等 / 复杂任务),AI 主动询问「需要 code review 吗?」**手动触发**:用户输入 `/code-review` 或说「review 一下这次改动 / 帮我看看这次提交」。按改动复杂度分级派 SubAgent,**轻量改动只派 1 个 sonnet 兜底,复杂任务才派 3 个含 opus 架构师**——不浪费最强模型在简单任务上。
公司前端通用编码规范(从 11 个项目 + 飞书知识库抽取)。当用户开始编写/修改前端 TS/TSX/Vue/SCSS 代码,或者需要 code review / 检查规范一致性时,**必须**加载本 skill 作为硬性规则基础。
启动开发环境 + 调试。触发场景:"看一下效果 / 跑起来看看 / 启动一下 / 打开看看 / 启动 dev / 跑 dev"。本 skill 读 profile.devServer 配置 → 校验前置 → 后台 spawn dev server → 等 ready → 拼带 token 的真实域名 URL → open 浏览器。同时含项目特定的"关键调试场景"片段(按 profile 加载)。
| name | debug-probe |
| description | AI 驱动的运行时调试探针。通过 假设→插桩→收集→收敛→修复→清理 闭环精准定位 bug 根因,用运行时证据替代静态猜测。Use when 用户报告 bug/异常行为且静态分析无法定位、涉及复杂状态/异步时序、或用户说"调试一下""帮我排查""用探针""debug"。 |
不静态猜测根因,在源码中临时插入日志,用运行时真实数据定位问题。
每次执行 skill 必须先启动探针服务器:
# 确保之前的进程已清理
kill $(lsof -ti:9876) 2>/dev/null
# 启动探针收集服务
node ~/.claude/skills/debug-probe/debug-probe-server.js &
服务器监听 http://localhost:9876,POST 请求写入 /tmp/debug-probe.log。不依赖 Vite 中间件,避免 ESM/CORS/404 问题。
不要直接修。 先读代码,生成 2-4 个可验证假设:
[H1] 根因可能是...,为真则...可观察到只插与假设相关的位置,2-4 个点即可:
浏览器端:
// DEBUG PROBE — DO NOT COMMIT
fetch('http://localhost:9876', {
method: 'POST',
body: JSON.stringify({ loc: 'Comp.vue:47', h: 'H1', ts: Date.now(), ...相关状态 }),
}).catch(() => {});
服务端(Node.js):
// DEBUG PROBE — DO NOT COMMIT
import { appendFileSync } from 'fs'
appendFileSync('/tmp/debug-probe.log',
JSON.stringify({ loc: 'api.ts:23', h: 'H1', ts: Date.now(), data: {...} }) + '\n')
原则: 每条标注 h(假设编号)、只放相关变量、加 DO NOT COMMIT 注释。
/tmp/debug-probe.log 或浏览器 Network 面板的 POST 请求h 字段分组分析必须执行:
grep -rn "DEBUG PROBE\|\/\/ DEBUG PROBE" --include="*.ts" --include="*.vue" --include="*.js" 找到并删除所有临时日志行appendFileSync)vite.config.ts 中新增的 probe 中间件代码kill $(lsof -ti:9876) 2>/dev/null> /tmp/debug-probe.log 清空日志