project-add-items
要件定義書・タスクリスト・ロードマップなどのソースからプロジェクトアイテムを一括作成します。
前提条件
- 対象の GitHub Project が存在すること
ghCLI がインストールされ、認証済みであること(projectスコープ付き)
フロー
Step 1: ソースを特定する
ユーザーからアイテムのソースを取得:
- ファイルパス(Markdown、YAML 等)
- URL(GitHub Issue 一覧、Wiki ページ等)
- インラインテキスト(ユーザーが直接入力)
Step 2: ソースを解析してアイテムを抽出する
ソース形式に応じて解析し、以下の情報を抽出:
- タイトル
- 本文・説明
- 優先度(High / Medium / Low)
- サイズ(XS / S / M / L / XL)
- カテゴリ(セクション見出し等から)
対応ソース形式の例:
Markdown チェックリスト:
YAML タスクリスト:
Step 3: フィールドメタデータを取得する
jq でフィールド名→フィールド ID、オプション名→オプション ID を解決する。
Step 4: アイテムを一括作成する
抽出した各アイテムに対して:
出力からアイテム ID を取得する。
Step 5: フィールド値を設定する
各アイテムに対してフィールド値を設定:
Step 6: 作成結果を一覧表示する
作成されたアイテムの一覧を表示:
注意事項
- 大量のアイテム(20件以上)を作成する場合は、ユーザーに確認してからバッチ実行する
- ソースの形式が不明な場合はユーザーに確認する
- フィールド値がプロジェクトのオプションに一致しない場合はスキップして警告する
- GitHub API レート制限に注意し、必要に応じてバッチサイズを調整する
- ネットワークを要する(主に API 経由。後述の「sandbox 環境での実行」節を参照)
検証
Step 6 完了後、以下で作成済みアイテムを確認する:
作成したタイトルが一覧に含まれ、Priority / Size / Status が期待値と一致すれば完了。
sandbox 環境での実行
このスキルはネットワーク越しの GitHub 操作(gh project item-create / item-edit)を必須とする。該当コマンドはコマンド単位で sandbox 無効にして実行する。ネットワーク遮断を解除できない環境では実行できない。

