SuperAPI AI 工具集

issue-fields-migration

数据与分析

查看项目

更新于 10-15 21:52

技能介绍

用途:把已有的元数据批量迁移到 GitHub 组织级 issue fields(单选、文本、数字、日期等结构化字段),来源有两类:仓库标签(如 p0、p1、priority/high 转为 Priority 字段)和 Project V2 字段。

主要能力:标签迁移支持多标签批量映射到单选字段,可选迁移后删除标签;项目字段迁移支持单选、文本、数字、日期、迭代类型,其中迭代无对应 issue field 会跳过。流程包含字段与选项自动匹配、冲突检测(同一 issue 多个标签映射同一字段时可选首个匹配、跳过或人工决定)、预检与数据扫描、预览/试运行、执行与结果汇总。

使用方式:需目标组织已启用 issue fields 且字段已存在;项目字段迁移需字段已加入项目;标签迁移需标签存在于目标仓库;用户需有仓库写权限,gh CLI 已认证。读取用 MCP 工具(projects_list、projects_get),写入用 REST API,例如列出组织字段:gh api /orgs/{org}/issue-fields -H "X-GitHub-Api-Version: 2026-03-10";写入:echo '{"issue_field_values": [{"field_id": FIELD_ID, "value": "OPTION_NAME"}]}' | gh api /repositories/{repo_id}/issues/{number}/issue-field-values -X POST -H "X-GitHub-Api-Version: 2026-03-10" --input -;删除标签:gh api /repos/{owner}/{repo}/issues/{number}/labels/{label_name} -X DELETE。

适用场景:组织启用 issue fields 后,把旧标签或项目字段数据迁移过去,并在迁移后清理旧标签或旧项目字段。

限制:标签只能映射到 single_select 字段;gh issue list 的 --limit 1000 会静默截断,需分页或先核对总数;gh issue list 同时返回 issue 和 PR,需按 type 过滤;项目超过约 200 项时 gh api graphql --paginate 不可靠,建议用 MCP 工具或游标分页;写入需 100ms 间隔并对 429 做指数退避;部分仓库权限不足或字段不可用会导致写入失败。具体收费、价格与平台支持情况暂未提供。