PR 保姆:持续监控拉取请求直至合并
持续关注拉取请求,处理评论与 CI 直至所有问题解决、代码可合并。
技能用于监控和修改 PR 评审线程,通过 GitHub CLI 和 GraphQL API 进行读操作和一个解决评审线程的写操作。权限最小化:仅调用 gh api prop-需要用户之前的认证;写操作是显式且有针对性。数据流透明:命令明确指示使用 gh pr view 和 GraphQL 查询,输出是本地显示的。因静态审查,无法验证命令是否安全执行,但代码未显示危险模式(如 shell 注入),且遵循安全最佳实践(使用数组参数)。扣分:缺乏明确确认步骤;技能自动解决评审线程,要求用户信任技能判断。发布者未验证,但技能本身未展示超出范围的权限。
技能指令内部一致,提供了清晰的步骤和用于查询的 shell 脚本。但依赖外部工具(gh)和环境(GitHub 仓库),无内置错误处理或反馈机制;脚本假设 gh 已安装和认证,未处理认证失败或限制。作为静态审查,无法验证实际执行。扣分:未见错误处理,无调试输出,失败反馈不明确。
技能场景明确:监控 PR 直至可合并。触发条件清晰(用户请求 babysit 时)。但是,技能依赖于 GitHub CLI 和 GraphQL API,这些服务在中国大陆可能无法直接访问,影响可行性。边界条件未明确(如 PR 数量,处理限制)。扣分:未考虑中国大陆网络可达性,且未明确定义监控终止条件之外的边界。
仓库有清晰的 Readme、许可证(Apache-2.0)、版本控制(package.json 版本)、CI、安全策略和贡献指南。技能文件本身结构良好,有描述和工作流。扣分:技能文件未包含版本或更改记录,无单独的问题排查部分,但仓库级文档充分。
技能设计能完成监控 PR 的核心任务,但无法从静态文件验证实际效果。它提供了具体的命令和输出处理,预期输出是未解决线程列表,但未验证是否直接可用。奖励 4 分基于可实施性,但扣分因缺乏实际执行验证和输出格式未明确指示。
技能文件本身没有测试。仓库有 CI 和测试套件,但未针对此特定技能进行测试。静态审查无法验证命令的正确性。扣分:无第三方验证的证据,且无法复现关键行为。
- 执行该技能需要 gh CLI 和 GitHub 网络访问,中国大陆用户可能无法直接使用,建议配合代理或替代工具。
- 技能会自动解析评审线程,可能误解决未真正修复的线程,建议在关键操作前增加人工确认。
- 静态评估未执行实际命令,命令正确性需在真实环境中验证。
- 技能未明确处理 GitHub API 限流或认证失败,可能无法提供清晰的错误反馈。
这个 Skill 能做什么,适合哪些场景?
这是一个专注于拉取请求(PR)全生命周期的监控技能。它会持续检查 PR 的状态、CI 检查、评论和审查线程,并修复实际问题,直到 PR 可以合并。技能使用 GitHub CLI 和 GraphQL API 获取详细的 PR 信息和未解决线程,并按照严格的规则确保在报告前一切干净。该技能来自 claude-mem 仓库,该仓库包含多个技能,但此技能独立运作。
该技能会:1)使用 gh pr view 获取 PR 的粗粒度状态,包括分支、合并状态、检查汇总等;2)使用 GraphQL 查询获取未解决的审查线程,支持分页处理大量线程;3)在等待检查完成时定期轮询(默认 30-60 秒);4)读取新评论和线程,区分机器人摘要与实际代码问题;5)针对真问题创建聚焦提交,运行测试并推送;6)仅在验证修复有效后解决过时的线程;7)在所有检查通过、没有可操作评论和未解决线程后停止。
- 开发者需要持续关注一个重要的 PR,在等待 CI 结果时不想手动刷新页面
- 维护者需要确保所有审查评论都得到解决后才能合并 PR
- 团队希望自动化处理 PR 中的常见问题,如过时的线程或机器人报告
- 在发布前需要最终验证所有检查通过且没有未解决线程
这个 Skill 有哪些优点和局限?
- 详细的使用 GitHub CLI 和 GraphQL 的命令,可直接复制使用
- 明确的停止标准,避免过早报告完成
- 处理多个审查线程的分页逻辑,适用于大型 PR
- 强调验证修复后才解决线程,减少误操作
- 仅支持 GitHub,不适用于 GitLab 或其他平台
- 需要安装和配置 GitHub CLI 和 jq
- 文档没有提到自动化技能测试或跨平台验证
- 轮询间隔固定,可能不适合需要即时响应的紧急场景
如何安装这个 Skill?
该技能是 claude-mem 仓库的一部分,但可以独立使用。克隆仓库后,将 plugin/skills/babysit/ 目录复制到你的技能文件夹中,或者将其内容作为独立技能使用。需要安装 GitHub CLI(gh)和 jq。
如何使用这个 Skill?
直接将任务描述给支持技能的 AI 客户端,例如:“请帮我照看 PR #123,直到所有检查通过并且审查评论都解决。”技能会自动识别 PR 编号,轮询状态,处理评论,并提交修复。确保你已在终端登录 GitHub CLI(gh auth login)并拥有仓库的相应权限。