SuperAPI AI 工具集

sync-issue-templates

通用与其它

查看项目

更新于 10-15 21:47

技能介绍

用途:GitHub 不支持组织级与仓库级 Issue 模板的混合继承,一旦仓库存在自己的 .github/ISSUE_TEMPLATE/ 目录,组织模板就会被完全覆盖。该技能通过拉取并复制组织模板到本地,弥补这一缺口。

主要能力:检测当前目录所属的 GitHub 组织与仓库;从组织的 .github 仓库获取 Issue 模板文件列表;逐个下载 .yml 或 .md 模板(排除 config.yml)并写入当前仓库的 .github/ISSUE_TEMPLATE/,保留原文件名;获取组织的 config.yml,并在此基础上生成仓库配置,默认设置 blank_issues_enabled: true,同时保留组织配置中的 contact_links。

使用方式:需已认证 gh CLI,且当前目录是托管在 GitHub 上的 git 仓库。核心命令包括 gh repo view --json owner,name、gh api repos/{org}/.github/contents/.github/ISSUE_TEMPLATE --jq '.[].name',以及用 gh api ... --jq '.content' | base64 -d 获取文件内容。写入前会展示将复制的模板、最终 config.yml 及与组织默认值的差异,等待用户明确确认。支持 --no-blank 关闭空白 Issue、排除指定模板、追加额外联系链接。

限制:若组织没有 .github 仓库或 ISSUE_TEMPLATE 目录,会提示用户选择从零创建或中止;不会在未经同意时覆盖已有仓库级模板;不会提交或推送,由用户自行处理 git;不会编造模板内容,仅原样复制组织仓库中的文件。完成后需提醒用户提交并推送到默认分支才能生效。