GitHubで個人プロジェクトを動かしていて、PRやissueに @claude とコメントすれば実装が走る環境を作りたい人向け
個人や自分がadmin権限を持つGitHubのプロジェクトに、issueやPRから @claude で呼べる実装エージェントを後乗せしたい初日に叩く。手動でやると30分かかる3点セット(GitHub Appの導入・APIキーのsecret登録・ワークフローファイル設置)を5分くらいで終わらせたい場面で使う。なおquickstartはClaude API直接利用者専用で、Amazon BedrockやGoogle Vertex AI経由の人は別途Manual Setupを進める必要がある。
GitHubのissueやPRに @claude implement this feature とコメントするだけで、Claudeが裏で動いて実装PRを立ててくれる仕組みがあります。/install-github-app は、その仕組みをプロジェクト1つに導入する初期セットアップを、対話形式で全部やってくれるスラッシュコマンドです。
ターミナルで claude を起動して /install-github-app と叩くと、GitHub Appの導入、APIキーの登録、ワークフローファイルの設置という3つの作業を順番に案内してくれます。普通は手作業で30分くらいかかる初期設定が、5分くらいで終わる導線です。
噛み砕くと
「新しい職場の初日に、入館証の発行・席の確保・PCのセットアップを総務の人が順番に案内してくれる」みたいな感覚に近いです。自分で各窓口を回って何が必要か聞いて回らなくていい。
具体的には、GitHubに住んでいる「Claude君」というアプリをあなたのプロジェクトに招き入れて、Claude君が困らないようにAPIキーを金庫に入れて、最後にClaude君を呼び出すための呼び鈴をプロジェクトの所定の場所に置く、という3点セットを進めるコマンドです。
大事な前提:このコマンドはClaude APIを直接使っている人向け
公式ドキュメントが verbatim で書いている通り、/install-github-app による自動セットアップはClaude APIを直接使っている人だけが対象です。Amazon BedrockやGoogle Vertex AI経由でClaudeを使っている人は、このコマンドだけでは完結しません。
もしBedrockやVertex AI経由なら、AWS / GCP側でOIDCの設定、IAMロールやサービスアカウントの作成、ワークフローファイル内の use_bedrock または use_vertex 指定が別途必要になります。詳しくは公式の Manual Setup セクションを見る必要があります。
あともう1つ。プロジェクトのadmin(管理者)権限を持っていないと、APIキーの保管庫への登録ができなくて途中で止まります。組織所有のプロジェクトで権限がない場合は、admin権限を持っている人に頼むか、自分のアカウントにforkして試すのが安全です。
「個人で動かしている料理ブログのGitHubプロジェクト」を例に、実際の手順を見る
私が個人で動かしている架空の料理ブログ cooking-blog で、/install-github-app を叩いてissueに @claude でコメントすれば実装が走る環境を作る流れを、頭の中で再現できる粒度で書きます。
ステップ1: 前提を確認する
まず自分が cooking-blog のadminかを確認します。自分1人で作ったプロジェクトならadminです。組織所有や他人のプロジェクトの場合は、画面の Settings タブが開けるかで判定できます。adminでないと Settings 自体が表示されません。
次に、Claude APIキーをまだ取っていなければ console.anthropic.com でAPIキーを発行しておきます。sk-ant-... で始まる文字列をコピーしておきます。
ステップ2: ターミナルで claude を起動する
ローカルの cooking-blog のフォルダに移動して、Claude Codeを起動します。
$ cd ~/projects/cooking-blog
$ claude
Claude Codeのインタラクティブ画面が開いた状態になります。
ステップ3: /install-github-app を叩く
そのまま /install-github-app と打って実行します。コマンドの後ろに何も書き足しません。
> /install-github-app
するとClaude側が「どのプロジェクトに導入しますか?」と聞いてきて、ブラウザでGitHubの認証画面を開いて誘導してくれます。
ステップ4: GitHub Appを導入する
ブラウザで https://github.com/apps/claude のページに飛ぶので、「Install」を押して、cooking-blog を選択します。「Only select repositories」を選んで cooking-blog だけにチェックを入れるのが安全です(全プロジェクトに権限を渡さない)。
このタイミングでGitHub Appが要求してくる権限は3つで、Contents(ファイル読み書き)、Issues(issueの読み書き)、Pull requests(PRの作成と更新)の Read & write です。これがないとClaudeがコードを書いてPRを立てられません。
ステップ5: ANTHROPIC_API_KEY を secret に登録する
続いて、コマンドがAPIキーの入力を促してきます。ステップ1で控えておいた sk-ant-... を貼り付けます。
裏では、GitHubの Settings → Secrets and variables → Actions の画面に、ANTHROPIC_API_KEY という名前のsecretが自動で登録される動きをします。GitHub Actionsがこのキーを使ってClaude APIを呼び出すための鍵です。
ステップ6: ワークフローファイルが配置される
最後に、.github/workflows/claude.yml というファイルがプロジェクトに自動で追加されます。中身は公式の examples/claude.yml を持ってきたもので、ざっくり以下のような構造です。
name: Claude Code
on:
issue_comment:
types: [created]
pull_request_review_comment:
types: [created]
jobs:
claude:
runs-on: ubuntu-latest
steps:
- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
これが本流に反映された瞬間から、issueやPRに @claude がついたコメントが投稿されるたびに、GitHub Actionsの仮想マシンが立ち上がってClaudeが動く準備が整います。
ステップ7: 動作確認する
適当なissueを立てて、本文か新規コメントに @claude implement a recipe search filter on the homepage と書いて投稿します。数十秒から数分待つと、Claudeがissueに返信してきて、コードを書いてPRを立てるところまで進めてくれます。
ここで初心者がやりがちな勘違いがあります。@claude であって /claude ではない。/ で始まるとGitHubのコメントは普通の文字列として扱われて、Claudeは反応しません。公式トラブルシュートにも「confirm the comment contains @claude (not /claude)」とverbatimで書かれています。
つまり /install-github-app は何をしてくれるのか
- やってくれる: GitHub Appのインストール画面を開いて対象選択を促す、ANTHROPIC_API_KEYをsecretに登録する、
.github/workflows/claude.ymlを所定の位置に配置する、の3点を対話形式で順番に案内 - やってくれない: Bedrock / Vertex AI 用のOIDC / Workload Identity Federation の設定、IAMロール作成、Bedrock/Vertex用のworkflow inputの調整。これらは公式の Manual Setup を自力で進める必要がある
- 意味が薄い場面: 既に手動で同じ3点セットを構成済みの場所で再実行する、Claude APIではなくBedrock/Vertex AI経由で動かしたいケース、admin権限がないアカウントから叩くケース(途中で止まる)
使いどころ3シナリオ(具体題材で再現)
シナリオ1: 個人の料理ブログで「issueに書いた機能を半自動で実装させたい」
例えば自作の料理ブログ cooking-blog で、「レシピ検索フィルター追加」みたいなissueを立てた瞬間に @claude implement this feature とコメントすれば、Claudeが該当ファイルを読んで実装PRを立ててくれる、という運用に乗せたいとき。/install-github-app を1回叩いて5分で初期構成が終わります。
個人開発の場合、ローカルでClaude Codeを起動して実装させるのと、GitHub Actions経由で実装させるのとを場面で使い分けると効率がいいです。長時間かかる作業はGitHub Actions側に投げて、その間自分は別の作業をするという使い方ができます。
シナリオ2: OSSにcontributeしたくて、fork先で試したい
業務でも個人でも、誰かが公開しているOSSのプロジェクトにissueベースで貢献したいとき。本家のadminではないので、まずforkして自分のアカウント配下に my-username/awesome-repo としてコピーする。fork先ではあなたがadminなので、そこで /install-github-app を叩いて環境を組み、自分のfork上のissueでClaudeに実装を試させてからPRを本家に投げる、という流れにできます。
シナリオ3: 既存プロジェクトにClaudeを後乗せして、PR自動レビューにつなげたい
例えば家計簿アプリのプロジェクト budget-app を3ヶ月くらい1人で書いてきて、PRを立てたときの自動レビューがほしくなった場面。/install-github-app で基本構成を入れた後、もう1つ別のワークフローファイルを書き足して、PRが立つたびに @claude review this PR for security issues 相当の処理を自動で走らせる構成にできます。公式ドキュメントの「GitHub Code Review」のページが、レビュー特化の構成例を載せています。
初心者が踏みやすい落とし穴
- Bedrock / Vertex AI ユーザーは
/install-github-appだけでは完結しない。公式が明示している通り、quickstart方式はClaude API直接利用者専用。Bedrock/Vertex 経由なら、OIDC・IAMロールまたはWorkload Identity Federation・use_bedrock/use_vertex指定が別途必要。公式の Manual Setup セクションを最初から最後まで通す前提で見積もる @claudeであって/claudeではない。コメントに/claude implement ...と書いてもClaudeは無反応です。公式トラブルシュートにも明記されています。反応しないときはまずここを疑う- admin権限がないと途中で失敗する。secretの追加は組織オーナーかadminしかできないため、collaborator権限だけだとステップ5で詰まる。組織所有の場所で権限がない場合は、adminに頼むかforkで試す
- 全プロジェクトに権限を渡さない。GitHub Appインストール時に「All repositories」を選ばず「Only select repositories」で対象だけにチェックを入れる。AIエージェントに渡す権限の範囲は狭いほど安全
- APIキーをそのままコードに書き込まない。secretは「中身が外から見えない保管庫」だが、ワークフローファイルのYAMLに
sk-ant-xxxxをベタ書きしたまま保存すると、公開プロジェクトの場合は全世界に流出する。必ず${{ secrets.ANTHROPIC_API_KEY }}の形で参照する - APIキーの料金請求はあなたに来る。issueやPRに
@claudeと書かれた回数だけClaude APIにリクエストが飛んで、その分のトークン料金があなたのAnthropicアカウントから引き落とされる。公開プロジェクトで荒らされると料金が膨らむので、大事な場所ではトリガー条件にcollaboratorチェックを足すか、--max-turnsで1回あたりの上限を絞る - CLAUDE.md を置かないと、コードスタイルが揃わない。プロジェクトのルートに
CLAUDE.mdを置いて「変数名はsnake_case」「変更履歴の説明文は英語」など書いておくと、Claudeが自動でそれに従う。これを置かないと、Claudeのデフォルトのスタイルで書かれたPRが立つ
書き方
/install-github-app
やってみるとこうなる
入力
/install-github-app
出力例
Claudeが対話形式で進めてくれる流れ:
1. GitHubの認証画面に誘導 → https://github.com/apps/claude のインストール画面が開く
2. 対象を選んで「Install」(Only select repositoriesで対象だけ選択推奨)
3. ANTHROPIC_API_KEYの入力を求められる → sk-ant-... を貼り付け
4. 設定画面のsecretに ANTHROPIC_API_KEY が自動登録される
5. .github/workflows/claude.yml が自動で配置・反映される
完了後、issueに @claude implement this feature とコメントすると、GitHub Actionsが起動してClaudeが実装PRを立てる。
このページに出てきた言葉
- GitHub App
- GitHubに「アプリ」として登録される存在。特定のプロジェクトに招き入れると、ファイル読み書きやissue/PR操作を代行できる
- secret
- GitHubのプロジェクト設定画面で「中身は外から見えない値」として登録できる保管庫。APIキーなどを置く
- ワークフローファイル
- GitHubが「特定のイベントが起きたらこの処理を走らせて」と読み込む指示書。<code>.github/workflows/</code> フォルダの中のYAMLファイル
- GitHub Actions
- GitHub上で動く自動処理の仕組み。決まったイベント(issueにコメント、PR作成など)をきっかけに仮想マシンが立ち上がって処理を実行する
- @claude メンション
- GitHubのコメント本文に <code>@claude</code> を含めると、Claude GitHub Appが拾って反応する仕組み。<code>/claude</code> ではないので注意
- admin(管理者権限)
- GitHubのプロジェクト設定・secret・collaborator管理ができる最上位権限。自分1人で作ったプロジェクトなら自動的に持っている
- Amazon Bedrock / Google Vertex AI
- AWS / GCPが提供する「複数のAIモデルを自社クラウドの請求にまとめて使える窓口」。これら経由でClaudeを使う場合、<code>/install-github-app</code> だけでは完結せずManual Setupが別途必要
- OIDC
- OpenID Connectの略。GitHub ActionsがAWSやGCPに「これは正規のGitHubの処理ですよ」と証明する仕組み。これがあると認証情報をGitHub側に保管しなくて済む
- fork
- 既存のプロジェクトを自分のアカウント配下にまるごと複製すること。複製先では自分がadminになるので自由に試せる