with one click
setup-github-workflows
言語非依存の汎用 GitHub Actions / Dependabot 設定とブランチ保護をセットアップする
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
言語非依存の汎用 GitHub Actions / Dependabot 設定とブランチ保護をセットアップする
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
| name | setup-github-workflows |
| description | 言語非依存の汎用 GitHub Actions / Dependabot 設定とブランチ保護をセットアップする |
リポジトリに、言語非依存の汎用 GitHub Actions ワークフロー・Dependabot 設定・ ブランチ保護を一括でセットアップするスキルです。
GitHub リポジトリが既に存在し、main がまだ保護されていない状態で 1 回実行することを
想定しています(このスキルがブランチ保護を追加するため、保護はこの実行より後に有効になる)。
main(デフォルトブランチ)がまだ保護 ruleset を持たないことgh CLI が認証済みであること(gh auth status)このスキルが配置されているディレクトリ(skills/setup-github-workflows/)以下を
プロジェクトの .github/ にコピーする。
| テンプレート | 配置先 |
|---|---|
workflows/workflow-lint.yml | .github/workflows/workflow-lint.yml |
workflows/auto-merge.yml | .github/workflows/auto-merge.yml |
workflows/dependabot-auto-label.yml | .github/workflows/dependabot-auto-label.yml |
dependabot.yml | .github/dependabot.yml |
配置したファイルを commit し、main に push する。ブランチ保護を追加する前に行う
(保護後は main への直接 push ができなくなるため)。
git add .github
git commit -m "ci: set up GitHub Actions workflows and Dependabot"
git push
setup.sh を実行して、ブランチ保護・ラベル・secret・Dependabot 有効化などを構成する。
bash {SKILL_DIR}/setup.sh --repo OWNER/NAME
owner 固有の値は環境変数で上書きできる:
| 環境変数 | デフォルト |
|---|---|
PR_AUTO_MERGER_CLIENT_ID | Iv23liInIOSVmvfZicez |
PR_AUTO_MERGER_PRIVATE_KEY_PATH | ~/Dropbox/Personal/secrets/pull-request-auto-merging-bot.private-key.pem |
setup.sh が構成する内容:
branch-protection)を作成
pull_request)、deletion / non_fast_forward 禁止actionlint / zizmor(workflow-lint.yml の出力)allow_auto_merge / delete_branch_on_merge を有効化auto-merge ラベルを作成vulnerability-alerts / automated-security-fixes)PR_AUTO_MERGER_APP_ID(Variable)と PR_AUTO_MERGER_PRIVATE_KEY(Secret、dependabot スコープ含む)を登録| ファイル | 役割 |
|---|---|
workflow-lint.yml | push / pull_request 時に GitHub Actions ワークフローを actionlint と zizmor で lint する |
auto-merge.yml | auto-merge ラベルが付いた PR を自動で approve & auto-merge する |
dependabot-auto-label.yml | Dependabot の minor / patch 更新 PR に auto-merge ラベルを自動付与する |
dependabot.yml | GitHub Actions の依存を週次で更新する |
実行完了後に以下をチェックリスト形式で出力する(setup.sh で自動化されない、事前の手作業)。
setup.sh の PR_AUTO_MERGER_CLIENT_ID と一致させる)Ruby プロジェクトの初期セットアップを自動化する
TypeScript プロジェクトの初期セットアップを自動化する
開発ワークフロー向け Claude Code hooks をセットアップする
Ruby プロジェクトに Claude Code hooks をセットアップする