用途
issue-prerequisite 是一个 Claude 技能,其核心原则是:任何工作,无论大小,都必须有对应的 GitHub Issue。它在开始任何工作之前充当硬性门禁(hard gate),防止在没有 Issue 跟踪的情况下直接动手。
主要能力
- 门禁检查:在开始工作前宣布“I'm checking for a GitHub issue before proceeding with any work.”,并判断是否已提供 Issue。
- 验证已有 Issue:使用
gh issue view [ISSUE_NUMBER] --json number,title,state,body验证 Issue 是否存在,并用gh issue view [ISSUE_NUMBER] --json url检查是否位于正确的仓库。若不存在或不可访问,则报告错误并停止。 - 创建新 Issue:当没有 Issue 时,向用户询问并确认标题、描述、验收标准、类型(Feature / Bug / Chore / Research / Spike)和优先级(Critical / High / Medium / Low),然后通过
gh issue create创建。 - 强制加入项目看板:创建后必须使用
gh project item-add将 Issue 添加到 GitHub Project,失败则退出。 - 设置项目字段:使用缓存的字段 ID,通过
gh project item-edit设置 Status(如 Ready)、Type 和 Priority。 - 验证看板设置:刷新缓存并验证 Issue 已加入项目且 Status 已设置,否则门禁失败。
- Issue 质量检查:确认 Issue 具有清晰标题、描述、至少一条可验证的验收标准,并已加入 GitHub Project。
使用方式
该技能以 Claude 技能形式提供,通过自然语言触发。当用户请求开始某项工作时,技能会先执行门禁流程。若用户已提供 Issue 编号,则验证;若未提供,则询问是已有 Issue 还是需要创建。创建 Issue 时使用 gh CLI 命令,并依赖 github-api-cache 提供的缓存 ID 来减少 API 调用。
适用场景
适用于任何需要以 GitHub Issue 驱动开发的团队或个人工作流,尤其是希望强制所有变更都有记录、可追踪、并统一纳入项目看板管理的场景。
限制
- 需要已安装并认证
ghCLI。 - 依赖
github-api-cache提供的环境变量(如GITHUB_PROJECT_NUM、GH_PROJECT_OWNER、GH_PROJECT_ID、GH_STATUS_FIELD_ID、GH_STATUS_READY_ID、GH_CACHE_FIELDS等),资料中未说明这些变量的具体配置方式。 - 资料中未提供该技能的安装命令或具体安装方式。
- 资料中未提供收费、价格或平台支持信息。
- 门禁未通过时无法继续后续的 issue-driven-development 流程。