2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

[個人開発] GitHub Projects の初期構築・運用分析を自動化するツールキットをリリースしました

2
Last updated at Posted at 2026-03-23

はじめに🐱

GitHub Projects、使っていますか?

個人開発でも業務でも、Issue や PR をカンバンボードで管理できる GitHub Projects は非常に便利です。
ただ、新しいプロジェクトを立ち上げるたびに Field・Status・View を手作業でポチポチ設定するのは正直面倒ですよね。

しかも複数プロジェクトを運用していると、構成がバラバラになったり、進捗の可視化が追いつかなかったり。
GitHub だけで完結する、もっとラクなプロジェクト管理」を目指して、ツールキットを作りました。

リリースしたツールキットについて🏠

リポジトリ https://github.com/lurest-inc/github-projects-ops-kit
ドキュメント https://lurest-inc.github.io/github-projects-ops-kit/
バージョン v1.3.0
ライセンス MIT
主要言語 Bash
依存ツール GitHub CLI (gh)、jq

GitHub Projects Ops Kit は、GitHub Projects の初期構築から運用分析までを GitHub Actions で半自動実行するための運用キットです。
本リポジトリを Fork し、Workflow を手動実行するだけで、Project の作成から分析までを一気通貫して行えます。

宣伝🎟️

こんな方にぜひ使っていただきたいです。

対象 こんな課題はありませんか? Ops Kit でできること
🧑‍💻 個人開発者・ソロメンテナー 初期設定が面倒で GitHub Projects を後回しにしている Fork して Workflow を実行するだけ。約 1 分でセットアップ完了
🤝 OSS メンテナー・小規模チーム コントリビュータが増えて運用ルールがバラバラに JSON 定義ファイルで構成をコード管理。誰が作っても同じ構成を再現
🏢 Organization 管理者・PM・EM レポート作成が手作業、チーム横断の状況把握がしづらい レポート自動生成。外部ツール不要でコスト削減

Fork するだけで使い始められます。GitHub アカウントがあれば追加コストはゼロです。
⭐ をいただけると開発のモチベーションになります!

各ユースケースの詳細は、ドキュメントサイトにガイドを用意しています。

image.png

ツールキット作成の経緯

GitHub Projects の「手作業の壁」

GitHub Projects は非常に優秀なツールですが、初期セットアップに関しては API か手作業でしか構築できない という現実があります。

新しいプロジェクトを立ち上げるたびに、こんな手作業が発生していました。

  • カスタムフィールド(見積もり工数、開始予定、終了予定...)を1つずつ追加
  • ステータスオプション(Backlog → Todo → In Progress → In Review → Done)を定義
  • ビュー(Table / Board / Roadmap)を作成してフィルタを設定
  • Issue ラベルを定義
  • Issue/PR を Project に紐付け

これを プロジェクトを立ち上げるたびに毎回やる のはしんどいです。
さらに、複数プロジェクトを運用していると構成がバラバラになりがちで、横断的な管理が難しくなります。

「コードとしてのプロジェクト構成」という発想

そこで、プロジェクト構成を JSON 定義ファイルで管理し、GitHub Actions で自動構築する という仕組みを作りました。

一度定義を書いておけば、何度でも同じ構成を再現できます。
チーム全体で構成を統一したい場合も、定義ファイルを共有するだけで済みます。

どんな課題を解決するのか?🔧

GitHub Projects を本格運用しようとすると、ざっくりと下記のような作業が必要になります。

  1. Project の初期構築: Field・Status・View の設定
  2. Repository の整備: Issue Label の定義、特殊 Repository の作成
  3. Item の管理: Issue/PR の Project への紐付け
  4. 運用分析: 滞留タスクの検知、進捗レポートの生成、工数の集計

学校では教えてくれません。(GitHub Projects の運用ノウハウは意外と情報が少ないです)

GitHub Projects Ops Kit は、上記 1〜4 のすべてを 8 つの Workflow で自動化します。

Before/After — 手作業 vs Ops Kit

作業内容 手作業の場合 Ops Kit の場合
Project 新規作成 + Field / Status / View 設定 約 20〜40 分(GUI で 1 つずつ設定) 約 1 分(Workflow を実行するだけ)
2 つ目以降の Project 構築 毎回同じ手順を繰り返し 同じ Workflow を再実行するだけ
複数 Repository の Label 統一 Repository ごとに手動追加 Workflow で一括適用
進捗の振り返り・レポート作成 スプレッドシートで手動集計 レポートを自動生成して定量的に把握

外部ツールの契約は不要です。GitHub Actions と GitHub CLI だけで動作するため、GitHub 上ですべて完結します。

機能紹介💡

8 つの Workflow で、セットアップから分析まで一気通貫で実行できます。

① GitHub Project 新規作成
  • Project を新規作成し、Field・Status・View を一括セットアップ
  • 個人アカウント・Organization の両方に対応
  • JSON 定義ファイルに基づいて構成を自動適用
  • 作成後、② の拡張 Workflow を自動呼び出し
② GitHub Project 拡張
  • 既存の Project に Field・Status・View を追加
  • 再利用可能 Workflow(_reusable-extend-project.yml)として設計
  • ① からの自動呼び出しにも、単体実行にも対応
③ 特殊 Repository 一括作成

GitHub には特殊な命名規則を持つ Repository があります。

個人アカウント向け:

  • <ユーザー名> ... プロフィール README
  • <ユーザー名>.github.io ... GitHub Pages
  • dotfiles ... Codespaces パーソナライズ

Organization 向け:

  • .github ... パブリックプロフィール・Community Health Files
  • .github-private ... メンバー限定プロフィール
  • <Organization名>.github.io ... GitHub Pages

これらを 1 回の Workflow 実行で一括作成 できます。

④ Issue Label 一括作成
  • 指定 Repository に 13 種類の Issue Label を一括作成
  • 種別(bug, enhancement, documentation...)、状態(on-hold, blocked...)、優先度(priority: high/low)をカバー
  • JSON 定義ファイルでカスタマイズ可能
⑤ 初期ファイル一括作成

Community Health FilesScaffold ファイル の 2 種類を一括セットアップできます。

  • Community Health Files: CODE_OF_CONDUCT、CONTRIBUTING、SECURITY、SUPPORT 等を自動配置
  • Scaffold ファイル: IDE 設定(.editorconfig)、AI ツール設定(.claude/CLAUDE.md 等)、開発環境ファイルを自動配置
  • セットアップタイプ(all / health / scaffold)を選択可能
  • Organization の .github リポジトリにも対応
⑥ Ruleset 一括作成
  • 指定 Repository に Branch Protection Ruleset を一括作成
  • JSON 定義ファイルに基づいてルールセットを自動適用
  • ブランチ保護ルール(PR 必須、レビュー必須等)をコードで管理
⑦ Issue/PR 一括紐付け
  • Repository の Issue や PR を Project に一括追加
  • 種別フィルタ: Issue のみ / PR のみ / すべて
  • 状態フィルタ: open / closed / all
  • ラベルフィルタ: 特定ラベルが付いた Item のみ
  • 重複追加の自動回避機能付き
⑧ 統合 Project 分析

5 種類の分析・レポートを一括生成できます。

レポート 内容
サマリーレポート Status 別・担当者別・Label 別の集計
工数レポート 見積もり・実績の集計と乖離分析
ベロシティレポート 直近 8 週間の完了 Item 推移(トレンド分析)
滞留 Item 検知 Status 別の閾値ベースで自動判定
Item エクスポート JSON・Markdown・CSV・TSV の 4 形式

生成したレポートは GitHub Actions の Artifact としてダウンロード可能です。

使用した技術💻

全般

名称 用途
GitHub コード管理・CI/CD 基盤
GitHub Actions Workflow の実行環境(ubuntu-latest)
GitHub CLI (gh) GitHub API の操作
GitHub GraphQL API Project V2 の操作に利用
GitHub Pages ドキュメントサイトのホスティング

スクリプト

名称 用途
Bash 全スクリプトの実装言語
jq JSON の解析・加工
doctoc Markdown の目次自動生成
release-please Conventional Commits ベースの自動バージョニング

セキュリティ

対策 内容
PAT 認証 Fine-grained / Classic の両方に対応
Workflow Command Injection 対策 sanitize_for_workflow_command() による入力サニタイズ
入力バリデーション PROJECT_NUMBER・TARGET_REPO・PAT 形式のチェック
エラーハンドリング set -euo pipefail + 事前チェック関数

プロジェクト構成の概要🗂️

github-projects-ops-kit/
├── .github/workflows/          # 8 つの自動化 Workflow
│   ├── 01-create-project.yml
│   ├── 02-extend-project.yml
│   ├── 03-create-special-repos.yml
│   ├── 04-setup-repository-labels.yml
│   ├── 05-setup-repository-files.yml
│   ├── 06-setup-repository-rulesets.yml
│   ├── 07-add-items-to-project.yml
│   └── 08-analyze-project.yml
├── scripts/
│   ├── lib/common.sh           # 共通関数ライブラリ
│   ├── config/                 # JSON 定義ファイル群
│   └── *.sh                    # 各種スクリプト(15 本)
└── docs/                       # ドキュメント(GitHub Pages)

JSON 定義ファイルを編集するだけで、Field・Status・View・Label の構成をカスタマイズできます。

使い方の流れ🚀

1. リポジトリを Fork する
2. GitHub Personal Access Token (PAT) を発行し、Secrets に登録
3. GitHub Actions を有効化
4. Workflow を手動実行

GUI 操作のみでセットアップできる クイックスタート(GUI) と、ターミナル操作で進める クイックスタート(CLI) の 2 種類のガイドを用意しています。

おわりに

今回は GitHub Projects の初期構築・運用分析を自動化するツールキット GitHub Projects Ops Kit を紹介しました。

「GitHub Projects を使いたいけどセットアップが面倒」「プロジェクトの進捗を定量的に把握したい」という方にぜひ試していただきたいです。

現在 v1.3.0 ですが、今後もエンハンスを続けていきます。

  • 分析レポートの拡充(バーンダウンチャート等)
  • 定期実行による自動レポート配信
  • Webhook 連携による Issue/PR の自動紐付け

ドキュメントサイトでは、ユースケース別のガイドやクイックスタート、FAQ・トラブルシューティングなども用意しています。ぜひご覧ください。

ドキュメントサイト

⭐ Star や Fork をいただけると開発の励みになります!
Issue や Discussions でのフィードバックも大歓迎です。

よければいいね👍やフォローをお願いいたします!

関連リンク📎

リポジトリ https://github.com/lurest-inc/github-projects-ops-kit
ドキュメント https://lurest-inc.github.io/github-projects-ops-kit/
CHANGELOG https://github.com/lurest-inc/github-projects-ops-kit/blob/main/CHANGELOG.md
Issue / バグ報告 https://github.com/lurest-inc/github-projects-ops-kit/issues
Discussions https://github.com/lurest-inc/github-projects-ops-kit/discussions

執筆履歴

他にもこんな記事書いています。

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?