reproduce-bug 是一个用于复现和调查软件缺陷的技能,来源于 udecode/better-convex。它面向需要根据 GitHub issue 定位并复现问题的开发或调试场景,通过日志调查、控制台检查和浏览器截图来辅助排查。
用途 该技能的核心用途是复现并调查一个缺陷。它从 GitHub issue 出发,读取 issue 的描述和评论,然后分阶段进行调查与复现,最终将发现整理并回报到 issue 中。
主要能力 技能包含四个阶段。第一阶段为日志调查:并行运行多个代理来调查缺陷,示例中包括 Task rails-console-explorer(issue_description) 和 Task appsignal-log-investigator(issue_description)。同时结合代码库思考可能出错的位置,寻找可观察的日志输出,并反复运行代理以获取有助于复现的日志,直到对问题有较清晰的判断。
第二阶段为使用 Playwright 进行可视化复现:如果缺陷与 UI 相关或涉及用户流程,则使用 Playwright 进行可视化复现。步骤包括:验证服务器是否运行,通过 mcp__plugin_compound-engineering_pw__browser_navigate 访问 http://localhost:3000 并使用 browser_snapshot 查看状态,若服务器未运行则提示用户启动 bin/dev;根据 issue 描述导航到相关页面;在复现的每一步捕获截图;按照 issue 中的复现步骤逐步执行,使用 browser_click 点击元素、browser_type 填写表单、browser_snapshot 查看当前状态、browser_take_screenshot 捕获证据,并通过 browser_console_messages 检查控制台错误;当成功复现缺陷时,截图记录缺陷状态、捕获控制台错误并记录触发缺陷的精确步骤。
第三阶段为记录发现:整理所有研究结果,引用具体文件路径(例如 app/services/example_service.rb:42),包含展示缺陷复现的截图,列出控制台错误(如有),并记录精确的复现步骤。
第四阶段为回报:向 issue 添加评论,内容包括发现(关于原因的发现)、复现步骤(已验证的精确步骤)、截图(缺陷的视觉证据,上传捕获的截图)、相关代码(文件路径和行号)以及建议修复(如果有)。
使用方式 该技能以命令形式使用,通过参数传入 GitHub issue 编号($ARGUMENTS)。执行时按照上述四个阶段推进,依赖日志调查代理和 Playwright 浏览器工具。示例中使用的 Playwright 工具调用包括 browser_navigate、browser_snapshot、browser_take_screenshot、browser_click、browser_type、browser_console_messages,均以 mcp__plugin_compound-engineering_pw__ 为前缀。
适用场景 适用于需要根据 GitHub issue 复现和调查缺陷的开发调试流程,尤其是涉及日志排查、控制台错误检查以及 UI 或用户流程可视化复现的场景。
限制 资料中未提供关于收费、价格、平台支持范围、性能效果或具体安装步骤的信息,这些内容暂未提供。