SuperAPI AI 工具集

project-update-items

办公与效率

查看项目

更新于 10-15 14:59

技能介绍

用途

本技能用于批量更新项目条目(GitHub Project 中的 item)的字段值,支持状态变更、优先级调整、尺寸设置等场景。可通过查询过滤条件或直接指定条目进行筛选,对符合条件的目标一次性应用新值。

主要能力

  • 按字段更新项目条目的值,覆盖 SINGLE_SELECT、TEXT、NUMBER、DATE 字段类型。
  • 支持三种目标指定方式:查询过滤(如 status:Todo、label:bug、assignee:@me)、条目编号直接指定、全部条目。
  • 更新字段可为 Status、Priority、Size 或自定义字段。
  • 批量更新前会列出将受影响的条目及旧值到新值的变化,并在用户确认后执行。

使用方式

  1. 确认更新对象与更新内容:明确目标指定方法、要更新的字段、新的值。
  2. 获取字段元数据:使用 gh project view 获取项目 ID,使用 gh project field-list 获取字段 ID 与选项 ID,并借助 jq 解析出目标值与对应选项 ID。
  3. 检索目标条目:使用 gh project item-list 拉取条目列表,在支持 --query 参数时优先使用查询过滤。
  4. 向用户确认:列出将更新的条目清单及各字段旧值到新值的变化,请求执行确认。
  5. 执行更新:对每个条目调用 gh project item-edit,并按字段类型选用对应参数:SINGLE_SELECT 使用 --single-select-option-id,TEXT 使用 --text,NUMBER 使用 --number,DATE 使用 --date(YYYY-MM-DD 格式)。多字段更新时按字段分别执行 item-edit。
  6. 报告结果:展示已更新条目列表,包含编号、标题、字段、旧值、新值。

适用场景

需要在 GitHub Project 中批量维护条目字段时使用,例如将若干条目的状态统一改为 In Progress、批量调整优先级或设置尺寸。

前置条件

  • 目标 GitHub Project 中已存在条目。
  • 已安装 gh CLI 并完成认证(需具备 project 作用域)。

限制与注意事项

  • 批量更新前必须取得用户确认。
  • 若选项值不存在于项目字段定义中,应报告错误。
  • 需注意 GitHub API 速率限制,大量更新时应调整批量大小。
  • 需要网络访问,主要通过 API 执行;相关命令需在命令级别禁用 sandbox 才能运行,无法解除网络阻断的环境不具备执行条件。

验证

在更新步骤完成后,可通过 gh project item-list 再次拉取条目列表,确认目标条目的字段值已变为新值。