project-add-items
Installation
SKILL.md
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 チェックリスト:
## 認証機能
- [ ] ソーシャルログイン実装 (Priority: High, Size: L)
- [ ] パスワードリセット (Priority: Medium, Size: M)
## ダッシュボード
- [ ] 利用統計グラフ (Priority: Low, Size: S)
YAML タスクリスト:
tasks:
- title: "ソーシャルログイン実装"
priority: High
size: L
description: "OAuth2 を使用した Google/GitHub ログイン"
Step 3: フィールドメタデータを取得する
# プロジェクト 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 4: アイテムを一括作成する
抽出した各アイテムに対して:
gh project item-create <number> \
--owner <owner> \
--title "<タイトル>" \
--body "<本文>" \
--format json
出力からアイテム ID を取得する。
Step 5: フィールド値を設定する
各アイテムに対してフィールド値を設定:
# Priority を設定
gh project item-edit \
--id <item-id> \
--field-id <priority-field-id> \
--project-id <project-id> \
--single-select-option-id <option-id>
# Size を設定
gh project item-edit \
--id <item-id> \
--field-id <size-field-id> \
--project-id <project-id> \
--single-select-option-id <option-id>
# Status を設定(デフォルト: Todo)
gh project item-edit \
--id <item-id> \
--field-id <status-field-id> \
--project-id <project-id> \
--single-select-option-id <todo-option-id>
Step 6: 作成結果を一覧表示する
作成されたアイテムの一覧を表示:
| # | タイトル | Priority | Size | Status |
|---|---|---|---|---|
| 1 | ソーシャルログイン実装 | High | L | Todo |
| 2 | パスワードリセット | Medium | M | Todo |
注意事項
- 大量のアイテム(20件以上)を作成する場合は、ユーザーに確認してからバッチ実行する
- ソースの形式が不明な場合はユーザーに確認する
- フィールド値がプロジェクトのオプションに一致しない場合はスキップして警告する
- GitHub API レート制限に注意し、必要に応じてバッチサイズを調整する
- sandbox 環境での
GIT_SSL_NO_VERIFY=1併用:詳細は後述の「sandbox 環境での実行」節を参照
sandbox 環境での実行
sandbox で本スキルを実行する場合、ネットワーク越しの GitHub 操作には GIT_SSL_NO_VERIFY=1 の併用を検討してください。本スキルの主なリモート操作は gh project item-add で、「リモート書き込み」判定は 要(本スキルは主に API 経由) です。コマンド分類の詳細と TLS 検証無効化の注意事項は docs/sandbox-tls.md を参照してください。
Related skills