Project Update Items

Fandhe-AI/agent-cli-skills/skills/project-update-items

作者 Fandhe-AIb8c1f3669cc3eff5079b57ae6da56a42d395e94c無授權條款2 個星標收錄於 2026年10月9日更新於 2026年10月9日儲存庫昨天更新

プロジェクトアイテムのフィールド値 (Status/Priority/Size 他) をクエリフィルタやアイテム指定で絞り込んで一括更新する。SINGLE_SELECT/TEXT/NUMBER/DATE のフィールドタイプに対応。「Status を In Progress に変更」「優先度を一括更新」「Todo を全部 In Progress に」などで使用。

AI 產生的概覽

透過 gh CLI 批次更新 GitHub Project 項目的欄位值,例如 Status、Priority、Size。

功能
此技能引導代理批次編輯 GitHub Project 項目的欄位。它會解析專案與欄位的中繼資料,依查詢篩選器、項目編號或全部項目找出目標,與使用者確認變更後逐筆修改欄位值。支援 SINGLE_SELECT、TEXT、NUMBER 與 DATE 欄位類型,並輸出更新前後的對照表。
適用情境
當使用者需要一次修改大量 GitHub Project 項目的 Status、Priority、Size 或自訂欄位值時使用,例如把所有 Todo 項目改成 In Progress,或批次更新優先順序。
執行需求
需要安裝並已驗證(含 project 權限範圍)的 gh CLI、可存取 GitHub API 的網路連線,以及用來解析 JSON 輸出的 jq。此技能未附帶指令碼,僅為操作說明;相關指令需逐條停用沙箱後執行。

project-update-items

プロジェクトアイテムのフィールド値を一括で更新します。ステータス変更、優先度変更、サイズ設定などに対応します。

前提条件

  • 対象の GitHub Project にアイテムが存在すること
  • gh CLI がインストールされ、認証済みであること(project スコープ付き)

フロー

Step 1: 更新対象と更新内容を確認する

ユーザーから以下を確認:

  • 対象の指定方法:
    • クエリフィルタ(例: status:Todo, label:bug, assignee:@me)
    • アイテム番号の直接指定
    • 全件
  • 更新するフィールド: Status, Priority, Size, またはカスタムフィールド
  • 新しい値: 例: Status → "In Progress", Priority → "High"

Step 2: フィールドメタデータを取得する

bash
# プロジェクト ID を取得gh project view <number> --owner <owner> --format json -q '.id'
# フィールド ID とオプション ID を取得gh project field-list <number> --owner <owner> --format json

jq で対象フィールドの ID と、更新先の値に対応するオプション ID を解決する。

Step 3: 対象アイテムを検索する

bash
gh project item-list <number> \  --owner <owner> \  --format json \  --limit 999

ユーザー指定の条件でアイテムをフィルタする。--query パラメータが使える場合はそちらを優先:

bash
gh project item-list <number> \  --owner <owner> \  --query "status:Todo" \  --format json

Step 4: ユーザーに更新内容を確認する

更新対象と変更内容を一覧表示:

以下の N 件のアイテムを更新します:- #1: ソーシャルログイン — Status: Todo → In Progress- #2: パスワードリセット — Status: Todo → In Progress
実行しますか?

Step 5: フィールド値を一括更新する

各アイテムに対してフィールド値を更新:

bash
gh project item-edit \  --id <item-id> \  --field-id <field-id> \  --project-id <project-id> \  --single-select-option-id <option-id>

フィールドタイプに応じて適切なフラグを使用:

  • SINGLE_SELECT: --single-select-option-id
  • TEXT: --text
  • NUMBER: --number
  • DATE: --date(YYYY-MM-DD 形式)

Step 6: 更新結果を報告する

更新されたアイテムの一覧を表示:

#タイトルフィールド旧値新値
1ソーシャルログインStatusTodoIn Progress
2パスワードリセットStatusTodoIn Progress

注意事項

  • バッチ更新前に必ずユーザーの確認を得る
  • オプション値がプロジェクトのフィールド定義に存在しない場合はエラーを報告する
  • 複数フィールドを同時に更新する場合は、フィールドごとに item-edit を実行する
  • GitHub API レート制限に注意し、大量更新時はバッチサイズを調整する
  • ネットワークを要する(主に API 経由。後述の「sandbox 環境での実行」節を参照)

検証

Step 6 完了後、以下で更新内容を確認する:

bash
gh project item-list <number> --owner <owner> --format json --limit 999

対象アイテムのフィールド値が新しい値に変わっていれば完了。

sandbox 環境での実行

このスキルはネットワーク越しの GitHub 操作(gh project item-edit)を必須とする。該当コマンドはコマンド単位で sandbox 無効にして実行する。ネットワーク遮断を解除できない環境では実行できない。

來源與署名

來源:Fandhe-AI/agent-cli-skills位於skills/project-update-items提交b8c1f36

授權條款: 無授權條款

內容歸原作者所有。SourceWeft 從公開儲存庫中收錄這些內容。

檢舉或申請下架