使用 `gh` CLI 与 GitHub 交互,通过 `gh issue`、`gh pr`、`gh run` 和 `gh api` 管理议题、PR、CI 运行及高级查询。
GitHub 技能是一项面向实际任务的技能,主要用于使用 gh CLI 与 GitHub 交互;当未在 git 目录中时, 总是指定 --repo 主人/ repo , 或直接使用 URL;
使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。
执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
使用 gh CLI 与 GitHub 进行交互。当不在 Git 目录中时,务必通过 --repo owner/repo 明确指定仓库;也可直接使用 URL。
检查某个 PR 的 CI 状态:
gh pr checks 55 --repo owner/repo
列出最近的 workflow 运行记录:
gh run list --repo owner/repo --limit 10
查看某次运行详情,并定位失败的步骤:
gh run view --repo owner/repo
仅查看失败步骤的日志:
gh run view --repo owner/repo --log-failed
gh api 命令适用于获取其他子命令无法提供的数据。
获取指定字段的 PR 信息:
gh api repos/owner/repo/pulls/55 --jq '.title, .state, .user.login'
大多数命令支持 --json 参数以输出结构化数据,配合 --jq 可进一步过滤结果:
gh issue list --repo owner/repo --json number,title --jq '.[] | "(.number): (.title)"'