github-project について
github-projectは、開発者やメンテナー向けのGitHubリポジトリ管理スキルです。ブランチ保護、プルリクエスト、CI、セキュリティ、リポジトリ運用のスクリプトと資料をまとめています。
主な機能
- 01ブランチ保護の設定と検証
- 02プルリクエストのマージ診断
- 03GitHub Actionsの失敗確認
- 04セキュリティとルールセットのガイド
- 05リポジトリ運用の参考資料
活用シーン
- 01リポジトリ作成後のブランチ保護設定
- 02マージできないプルリクエストの調査
- 03失敗したGitHub Actions実行の調査
- 04セキュリティと自動マージ設定の確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ netresearch/ github-project-skill --skill github-projectインストール後、Claude Code で/github-projectを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
checkpoints.yamlassets/auto-merge-direct.yml.templateauto-merge-queue.yml.templateauto-merge.yml.templatebranch-protection.json.templatebug_report.md.templateCODEOWNERS.templateCONTRIBUTING.md.templatedependabot.yml.templatefeature_request.md.templatepr-quality.yml.templatePULL_REQUEST_TEMPLATE.md.templaterelease-labeler.yml.templaterenovate.json.templateSECURITY.md.templateevals/evals.jsonreferences/actionlint-guide.mdactions-upgrade-guide.mdagentic-workflows.mdai-reviewer-pushback.mdauto-merge-guide.mdbranch-migration.mdci-runner-capacity.mdcross-repo-references.mddependency-management.mdgh-cli-reference.mdmerge-strategy.mdmulti-repo-operations.mdno-editorializing.mdorg-security-settings.md詳細
GitHub プロジェクトスキル
使用する場面
gh repo createとプッシュの後、最初の PR を作成する前 — 必須:scripts/init-branch-protection.sh OWNER/REPO- 外部リポジトリへの最初の issue/PR — 起票する前に
references/upstream-contributions.mdを確認 - ワークフロージョブの追加 — 落とし穴 #6
- PR をマージできない/スレッド
- 自動マージの失敗(Dependabot/Renovate)
- 単独メンテナーによる自動承認
- ブランチ保護、ルールセット
- GHA の失敗
- 署名付きコミットのマージ
- CodeQL
- Scorecard
- CODEOWNERS、テンプレート、ラベル
- フォーク PR のマージベース
クイック診断
PR をマージできない場合
gh pr view PR --repo OWNER/REPO \
--json mergeStateStatus,reviewDecision,mergeable,reviewThreads
単独メンテナー:REVIEW_REQUIRED で進めない場合
assets/pr-quality.yml.template(自動承認、required_approving_review_count >= 1)または scripts/init-branch-protection.sh OWNER/REPO --solo(承認数 0、会話の解決要件は維持)を使用します。両者の比較については references/auto-merge-guide.md を参照してください。
自動マージのセットアップ
allow_auto_merge、pull_request_target、ボットの検出、gh pr merge --auto が必要です(references/auto-merge-guide.md)。
自動マージが機能しない場合
gh pr view PR --repo OWNER/REPO --json autoMergeRequest --jq .autoMergeRequest
バイパスアクター:references/security-config.md。
GitHub Actions が失敗する場合
gh run list --repo OWNER/REPO --limit 5
gh run view RUN_ID --repo OWNER/REPO --log-failed
gh run rerun RUN_ID --repo OWNER/REPO
セキュリティのクイックチェック
gh api repos/OWNER/REPO/rules/branches/main
gh api repos/OWNER/REPO/branches/main/protection \
--jq '{rcr: .required_conversation_resolution.enabled, admins: .enforce_admins.enabled}'
gh api repos/OWNER/REPO/code-scanning/default-setup --jq '.state'
gh pr view PR --repo OWNER/REPO --json reviewThreads --jq '.reviewThreads'
マージ戦略の問題
references/auto-merge-guide.md:署名付きコミットのリベース、ワークフローファイルの PR、Copilot の競合。
組織の再利用可能ワークフローを呼び出す
ルール: uses: netresearch/<repo>/.github/workflows/<name>.yml@main を使用します。コミットハッシュは使用しません。また、@<sha> # main も使用しません。サードパーティのアクションは引き続き SHA で固定します。このような行に対する CodeQL の actions/unpinned-tag、zizmor、SonarCloud の検出結果は、修正不要として却下し、固定することで修正してはいけません。理由は references/reusable-workflow-security.md を参照してください。
スクリプトの実行
scripts/init-branch-protection.sh OWNER/REPO # baseline
scripts/init-branch-protection.sh OWNER/REPO --from-current-checks # after first CI
scripts/init-branch-protection.sh OWNER/REPO --merge-queue # then: org-standard queue
scripts/verify-github-project.sh /path/to/repository # local-checkout audit
主観的な評価を避ける
変更がどのようなものかを述べ、どれほど優れているかは述べないでください。
参考資料
| トピック | 参考資料 |
|---|---|
| リポジトリの初期設定 | references/repo-bootstrap.md |
| リポジトリのファイル構成 | references/repository-structure.md |
| ブランチの移行 | references/branch-migration.md |
| リポジトリの終了、Packagist での放棄 | references/repo-retirement.md |
| Dependabot/Renovate | references/dependency-management.md |
| 自動承認+自動マージ | references/auto-merge-guide.md |
| マージ戦略 | references/merge-strategy.md |
| サブイシュー | references/sub-issues.md |
| リリースのラベリング | references/release-labeling.md |
| gh CLI コマンド | references/gh-cli-reference.md |
| 複数言語の CI チェックリスト | references/repo-setup-guide.md |
| Scorecard、CodeQL、セキュリティ | references/security-config.md |
| actionlint | references/actionlint-guide.md |
| Actions のアップグレード、Node ランタイムの移行 | references/actions-upgrade-guide.md |
| ワークフローの bash に関する落とし穴 | references/workflow-bash-patterns.md |
| ランナーの容量、並行実行グループ(schedule と push) | references/ci-runner-capacity.md |
| 主観的な評価を避ける | references/no-editorializing.md |
| フォークのマージベース | references/pr-commit-cleanup.md |
| 複数リポジトリの一括操作 | references/multi-repo-operations.md |
| 公開リポジトリの非公開コピー(ミラープッシュ) | references/multi-repo-operations.md |
| リポジトリ間の参照、コードのパーマリンク | references/cross-repo-references.md |
| 外部リポジトリへのコントリビューション | references/upstream-contributions.md |
| 再利用可能ワークフローのセキュリティ | references/reusable-workflow-security.md |
| 再利用可能ワークフローの落とし穴 | references/reusable-workflow-pitfalls.md |
| 組織のセキュリティ設定 | references/org-security-settings.md |
| タグの検証 | references/tag-validation.md |
| AI レビュアーへの異議申し立て | references/ai-reviewer-pushback.md |
| エージェント型ワークフロー | references/agentic-workflows.md |
| Pages とデータ収集ワークフロー | references/pages-and-collector-workflows.md |
コントリビューション:https://github.com/netresearch/github-project-skill