用途:以运行时证据而非猜测来修复缺陷,流程为“假设→插桩→复现→分析→修复→验证”。触发场景包括需要用户打开 DevTools 查看控制台、手动复现并反馈输出、添加 console.log 后回报结果等。
主要能力:启动本地日志服务器(默认端口 8787),创建会话并生成唯一 session_id 与日志文件;支持 JavaScript/TypeScript 与 Python 插桩,日志以 NDJSON 格式写入,含时间戳、消息、数据、假设编号和位置;可对每个假设标记 CONFIRMED、REJECTED 或 INCONCLUSIVE,并支持修复前后对比验证。
使用方式:执行 /debug /path/to/project(未提供路径则用当前目录)。启动服务器:node skills/debug/scripts/debug_server.js /path/to/project &;创建会话:curl -s -X POST http://localhost:8787/session -d '{"name":"fix-null-userid"}';清空日志:: > /path/to/project/.debug/debug-$SESSION_ID.log;读取日志:cat /path/to/project/.debug/debug-$SESSION_ID.log。插桩代码需包裹在 #region debug 与 #endregion 之间,并保留原样。
适用场景:状态或取值问题(null、undefined、类型错误)、条件逻辑分支、异步时序(竞态、加载顺序)、用户交互流程(弹窗、表单、点击)。
限制与注意:必须先收集日志再修复,验证前不得移除插桩;若全部假设被否定需从不同子系统重新提出假设。日志为空时需排查混合内容、CSP、CORS 或防火墙,可用 sendBeacon、开发服务器代理(如 Vite 的 /__log 代理)等方式规避;端口 8787 被占用时可用 lsof -ti :8787 | xargs kill -9 后重启。高频事件仅在状态变化时记录。可选执行“五个为什么”分析系统性原因。具体收费、平台支持等信息暂未提供。