用途:这是 DebugMCP MCP 服务器配套的调试技能,教智能体如何有效使用该服务器。服务器本身只暴露工具,而工作流、根因分析框架和语言相关指引都写在本技能中。当遇到已报告的 bug、失败测试、异常、意外输出,或变量出现 null/undefined/类型错误、函数返回不符合预期、代码路径执行与预期不符时,应作为第一步调查手段调用。
主要能力:通过 add_breakpoint 设置断点(文件路径加 1 起始行号),用 start_debugging 启动会话,单测可传 testName 经 VS Code Testing API 驱动 dotnet test/pytest/jest 等。用 step_over、step_into、step_out、continue_execution 移动,pause_execution 中断自由运行程序。list_variable_names 查看作用域内变量名与类型,get_variables_values 需显式传 variableNames 获取值,evaluate_expression 实时验证假设。add_logpoint 可在循环或热路径中非中断观察。restart_debugging 可在不重启 VS Code 的情况下验证修复。
根因分析:不停留在症状,持续追问“为什么”并向后追踪,直到数据入口、配置读取或假设首次被违反的源头。结束前确认能解释从根因到症状的完整链条,且修复该根因能阻止症状。
限制与注意:get_variables_values 不会转储整个作用域,疑似凭据的值会被替换为 <redacted: possible secret>,不应绕过。程序阻塞在 stdin 时任何工具调用都无法解除,应选择无需交互输入的路径。不要先加临时日志再调试,不要未设断点就启动调试,不要跨会话遗留断点,完成后调用 clear_all_breakpoints 和 stop_debugging。多窗口场景可建议设置 debug.focusWindowOnBreak 与 debug.focusEditorOnBreak,但未经用户同意不得修改持久设置。语言相关指引见 references/troubleshooting/ 下对应文件。