iSkills 原始文档
🔧

gh-issues

Top Agent Skill

Fetch GitHub issues, spawn sub-agents to implement fixes and open PRs, then monitor and address PR review comments. Usage: /gh-issues [owner/repo] [--label bug] [--limit 5] [--milestone v1.0] [--assignee @me] [--fork user/repo] [--watch] [--interval 5] [--reviews-only] [--cron] [--dry-run] [--model glm-5] [--notify-channel -1002381931352]


gh-issues

Skill 简介

gh-issues 是一个基于 OpenClaw 平台的强大自动化工具,旨在帮助开发者高效管理和解决 GitHub 上的问题(Issues)。在日常开发中,开发者常常需要处理大量的 GitHub Issues,包括筛选、分配、修复、提交 Pull Requests(PR)以及处理 PR 审核评论等。这些任务繁琐且耗时,而 gh-issues 通过自动化流程将这些工作大幅简化。它能够自动获取 GitHub Issues,生成子代理(sub-agents)来实施修复方案,并自动创建 PR,最终监控和解决 PR 审核中的评论问题。通过这种方式,gh-issues 极大地提升了开发效率,让开发者能够将更多精力集中在代码编写和功能实现上。

该 Skill 的设计初衷是减少开发者在处理 GitHub Issues 时的人工操作次数。它不仅支持从指定的 GitHub 仓库中获取 Issues,还能根据用户提供的过滤条件(如标签、里程碑、指派者等)精准定位问题。此外,gh-issues 还支持在 Fork 模式下进行操作,确保代码变更在用户自己的 Fork 仓库中进行,最终通过 PR 合并到源仓库。

主要功能

gh-issues 提供了以下核心功能:

1. 自动获取 GitHub Issues

gh-issues 可以根据用户提供的参数自动从指定的 GitHub 仓库中获取 Issues。它支持多种过滤条件,例如:
- 标签过滤:通过 --label 参数指定标签,例如 --label bug--label enhancement
- 里程碑过滤:通过 --milestone 参数指定里程碑标题,例如 --milestone v1.0
- 指派者过滤:通过 --assignee 参数指定指派者,例如 --assignee @me 表示指派给自己。
- 状态过滤:通过 --state 参数指定 Issues 的状态,例如 --state open 表示只获取打开的 Issues。

2. Fork 模式支持

gh-issues 支持 Fork 模式,用户可以通过 --fork 参数指定自己的 Fork 仓库。Issues 的代码变更将在 Fork 仓库中进行,最终通过 PR 合并到源仓库。这对于需要保护源仓库或进行代码审查的场景非常有用。

3. 持续监控与自动处理

通过 --watch 参数,gh-issues 可以持续监控新的 Issues 和 PR 审核评论,并根据预设的规则自动处理。例如,用户可以设置每隔 5 分钟检查一次新的 Issues,并通过 --interval 5 参数进行配置。

4. 模拟运行模式

gh-issues 提供了 --dry-run 参数,允许用户在不实际执行任何操作的情况下,查看将会处理哪些 Issues。这对于调试和确认过滤条件非常有用。

5. 定时任务支持

通过 --cron 参数,gh-issues 可以以定时任务的方式运行,自动获取 Issues 并生成子代理进行处理,而无需人工干预。这对于需要定期处理 Issues 的场景非常方便。

6. 通知功能

gh-issues 支持通过 Telegram 频道发送最终 PR 摘要,用户可以通过 --notify-channel 参数指定 Telegram 频道 ID。这使得用户可以及时了解 PR 的处理状态和结果。

使用场景

1. 日常开发中的 Issues 管理

在日常开发中,开发者需要频繁处理大量的 GitHub Issues。gh-issues 可以帮助开发者自动筛选、分配和修复这些问题,减少人工操作,提高工作效率。

2. 持续集成与持续部署(CI/CD)

在 CI/CD 流程中,gh-issues 可以作为自动化工具的一部分,自动获取和修复代码中的问题,并提交 PR 进行代码审查和合并。这有助于实现更高效的持续集成和持续部署。

3. 团队协作与代码审查

在团队协作中,gh-issues 可以帮助团队成员自动处理 PR 审核评论,确保代码变更符合团队的标准和规范。通过通知功能,团队成员可以及时了解 PR 的处理状态,促进更高效的协作。

4. 自动化运维

对于需要定期进行系统维护和更新的场景,gh-issues 可以通过定时任务的方式,自动获取和修复系统中的问题,确保系统的稳定性和安全性。

5. 开源项目管理

在开源项目中,gh-issues 可以帮助项目维护者自动处理大量的 Issues 和 PR,减轻维护负担,提高项目管理的效率。

如何使用

1. 安装与配置

首先,确保你已经安装了 OpenClaw 平台,并且拥有有效的 GitHub 访问令牌(GH_TOKEN)。然后,按照以下步骤进行配置:

  1. 安装必要的工具
    bash sudo apt-get update sudo apt-get install curl git # 安装 GitHub CLI(可选,如果需要使用 `gh` 命令) sudo apt-get install gh

  2. 配置 GH_TOKEN
    bash export GH_TOKEN="your_github_personal_access_token" # 或者将 GH_TOKEN 添加到 ~/.openclaw/openclaw.json 文件中 echo '{"skills.entries": {"gh-issues": {"apiKey": "your_github_personal_access_token"}}}' > ~/.openclaw/openclaw.json

2. 基本命令示例

以下是一个基本的命令示例,用于获取指定仓库中的 Issues 并进行处理:

/gh-issues owner/repo --label bug --limit 5 --fork user/repo --watch --interval 5 --notify-channel -1002381931352

3. 模拟运行

如果只想查看将会处理哪些 Issues,可以使用 --dry-run 参数:

/gh-issues owner/repo --label bug --dry-run

这将显示一个包含匹配 Issues 的表格,但不会进行任何实际的操作。

示例

示例 1:基本使用

/gh-issues my-org/my-repo --label enhancement --limit 10 --fork my-fork/my-repo --watch --interval 10

这个命令将从 my-org/my-repo 仓库中获取标签为 enhancement 的 Issues,最多获取 10 个,并将代码变更推送到 my-fork/my-repo Fork 仓库。同时,它会每隔 10 分钟检查一次新的 Issues 和 PR 审核评论。

示例 2:模拟运行

/gh-issues my-org/my-repo --label bug --dry-run

这个命令将模拟运行,只显示将会获取和处理哪些标签为 bug 的 Issues,而不会进行任何实际的操作。

总结

gh-issues 是一个功能强大且灵活的自动化工具,专为 GitHub Issues 管理而设计。它通过自动化流程,帮助开发者更高效地处理 Issues、提交 PR 并监控审核评论,极大地提升了开发效率。无论是在日常开发、CI/CD 流程、团队协作还是开源项目管理中,gh-issues 都能发挥重要作用。对于需要频繁处理 GitHub Issues 的开发者来说,gh-issues 是一个不可或缺的工具。

GitHub 参考 iSkills 专业中文解析 · 2026-03-22 更新

探索更多 Top Agent Skills