project-init

Installation
SKILL.md

project-init

GitHub Project v2 を新規作成し、標準フィールドを設定してリポジトリにリンクします。ビルトインワークフロー(自動ステータス変更・自動追加・自動アーカイブ)の設定もガイドします。

前提条件

  • gh CLI がインストールされ、認証済みであること
  • project スコープが付与されていること(gh auth status で確認)

フロー

Step 1: プロジェクト情報を確認する

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

  • プロジェクトタイトル
  • オーナー(ユーザー or Organization)
  • 可視性(PUBLIC / PRIVATE)
  • 説明文(任意)

オーナーが未指定の場合は自動検出:

gh repo view --json owner -q '.owner.login'

Step 2: プロジェクトを作成する

gh project create \
  --owner <owner> \
  --title "<タイトル>" \
  --format json

出力からプロジェクト番号を取得する。

Step 3: リポジトリにリンクする

gh project link <number> --owner <owner>

Step 4: 標準フィールドを作成する

以下のフィールドを順次作成する:

# Status(デフォルトで存在する場合はスキップ)
gh project field-create <number> \
  --owner <owner> \
  --name "Status" \
  --data-type "SINGLE_SELECT" \
  --single-select-options "Todo,In Progress,In Review,Done"

# Priority
gh project field-create <number> \
  --owner <owner> \
  --name "Priority" \
  --data-type "SINGLE_SELECT" \
  --single-select-options "High,Medium,Low"

# Size
gh project field-create <number> \
  --owner <owner> \
  --name "Size" \
  --data-type "SINGLE_SELECT" \
  --single-select-options "XS,S,M,L,XL"

Note: Status フィールドは GitHub が自動作成する場合がある。エラーが出た場合は既存フィールドをそのまま使用する。

Step 5: プロジェクトの説明を設定する

gh project edit <number> \
  --owner <owner> \
  --description "<説明文>" \
  --visibility <PUBLIC|PRIVATE>

Step 6: ビルトインワークフローを設定する

GitHub Projects v2 にはコード不要のビルトインワークフローがある。プロジェクト設定画面でユーザーに以下の有効化をガイドする。

設定 URL: https://github.com/orgs/<owner>/projects/<number>/workflows (個人プロジェクトの場合: https://github.com/users/<owner>/projects/<number>/workflows

推奨するビルトインワークフロー

ワークフロー 動作 デフォルト状態 推奨
Item closed Issue/PR がクローズされたら Status → Done 有効 そのまま維持
Pull request merged PR がマージされたら Status → Done 有効 そのまま維持
Item reopened Issue が再オープンされたら Status → Todo 無効 有効化を推奨
Item added to project アイテム追加時に Status → Todo 無効 有効化を推奨
Auto-add to project フィルタに一致する Issue/PR を自動追加 無効 有効化を推奨
Auto-archive items Done から N 日後に自動アーカイブ 無効 任意
Auto-close issue ボードで Done にすると Issue を自動クローズ 無効 有効化を強く推奨

重要: Auto-close を有効にしないと、ボード上で Status を Done にしても Issue は自動クローズされない。双方向同期には必須。

Auto-add フィルタ例

is:issue,pr is:open repo:<owner>/<repo>

ラベルで絞り込む場合:

is:issue,pr is:open label:sprint-1 repo:<owner>/<repo>

Step 7: 継続的自動同期の案内

ビルトインワークフローではカバーできない PR ライフサイクル連動(opened→In Progress, review_requested→In Review)などの高度な同期が必要な場合は、project-sync-issues スキルで GitHub Actions ワークフローを生成できることを案内する。

Step 8: 作成結果を報告する

以下の情報を表示:

  • プロジェクト URL
  • プロジェクト番号
  • 作成されたフィールド一覧
  • リンクされたリポジトリ
  • ビルトインワークフロー設定 URL
  • 推奨設定のチェックリスト

注意事項

  • Status のオプション値はユーザーの要望に応じてカスタマイズ可能
  • フィールド作成でエラーが発生した場合(既に存在する等)はスキップして続行する
  • Organization プロジェクトの場合、適切な権限が必要
  • ビルトインワークフローは CLI/API では設定できないため、Web UI での設定が必要
  • sandbox 環境での GIT_SSL_NO_VERIFY=1 併用:詳細は後述の「sandbox 環境での実行」節を参照

sandbox 環境での実行

sandbox で本スキルを実行する場合、ネットワーク越しの GitHub 操作には GIT_SSL_NO_VERIFY=1 の併用を検討してください。本スキルの主なリモート操作は gh project create / gh api で、「リモート書き込み」判定は 要(本スキルは主に API 経由) です。コマンド分類の詳細と TLS 検証無効化の注意事項は docs/sandbox-tls.md を参照してください。

Related skills
Installs
5
First Seen
Apr 4, 2026