Claude Code GitHub Action入門
Claude Code GitHub Action(claude-code-action)を使えば、GitHub上でAIを活用した自動化が可能になります。PRへのコメントやIssue対応を自動化し、開発ワークフローを効率化しましょう。
この記事では、claude-code-actionの基本的な設定方法と使い方を解説します。
Claude Code GitHub Actionとは
anthropics/claude-code-actionは、Anthropic公式のGitHub Actionです。
主な機能
- @claudeメンション対応: PRやIssueで
@claudeとメンションするとAIが応答 - 自動コードレビュー: PRに対してセキュリティやパフォーマンスの観点からレビュー
- Issue対応: Issueの内容を理解し、修正コードを提案
- PR作成: Issueから自動でPRを作成
セットアップ手順
ステップ1: GitHub Appのインストール
まず、Claude GitHub Appをリポジトリにインストールします。
- github.com/apps/claudeにアクセス
- 「Install」をクリック
- インストール先のアカウント/組織を選択
- アクセスするリポジトリを選択
- 「Install」をクリック
ステップ2: APIキーの設定
GitHub SecretsにAnthropicのAPIキーを追加します。
- リポジトリの「Settings」→「Secrets and variables」→「Actions」
- 「New repository secret」をクリック
- 以下を設定:
- Name:
ANTHROPIC_API_KEY - Value: Anthropic ConsoleのAPIキー
- Name:
Max Subscriptionを使用する場合:
Claude Codeで以下を実行してトークンを取得:
claude setup-token
発行されたトークンをGitHub Secretsに設定:
- Name:
CLAUDE_CODE_OAUTH_TOKEN - Value: 発行されたトークン
ステップ3: ワークフローファイルの作成
リポジトリに.github/workflows/claude.ymlを作成します。
name: Claude Code
on:
issue_comment:
types: [created]
pull_request_review_comment:
types: [created]
issues:
types: [opened, assigned]
pull_request_review:
types: [submitted]
jobs:
claude:
if: |
(github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||
(github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||
(github.event_name == 'issues' && contains(github.event.issue.body, '@claude')) ||
(github.event_name == 'pull_request_review' && contains(github.event.review.body, '@claude'))
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
issues: write
id-token: write
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 1
- name: Run Claude Code
uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
ワークフローの解説
トリガーイベント
on:
issue_comment:
types: [created]
pull_request_review_comment:
types: [created]
issues:
types: [opened, assigned]
pull_request_review:
types: [submitted]
イベント | 説明 |
|---|---|
| Issueにコメントが追加されたとき |
| PRレビューにコメントが追加されたとき |
| Issueが作成/アサインされたとき |
| PRレビューが送信されたとき |
条件分岐(if)
if: |
(github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||
...
@claudeを含むコメントの場合のみ実行されます。
権限設定
permissions:
contents: write # ファイルの読み書き
pull-requests: write # PRの作成・更新
issues: write # Issueへのコメント
id-token: write # 認証用
基本的な使い方
PRでコードレビューを依頼
PRのコメント欄に以下を入力:
@claude このPRをレビューしてください。
特にセキュリティとパフォーマンスの観点からチェックをお願いします。
Issueからバグ修正を依頼
Issueのコメント欄に以下を入力:
@claude このバグを修正するPRを作成してください。
機能実装を依頼
Issueの本文に以下を記載:
@claude 以下の機能を実装してください。
## 要件
- ユーザー認証機能
- パスワードリセット
- セッション管理
カスタマイズ例
自動レビューを追加
PRが作成されたときに自動でレビューを実行:
on:
pull_request:
types: [opened, synchronize]
jobs:
auto-review:
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: write
steps:
- uses: actions/checkout@v4
- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
prompt: |
このPRをレビューしてください。
セキュリティ、パフォーマンス、コード品質の観点からチェックしてください。
特定のラベルでトリガー
「ai-review」ラベルが付いたPRのみレビュー:
jobs:
claude:
if: contains(github.event.pull_request.labels.*.name, 'ai-review')
...
トラブルシューティング
Actionが実行されない
確認ポイント:
- ワークフローファイルが
.github/workflows/に存在するか @claudeの前後にスペースがあるか- ActionsタブでWorkflowが有効になっているか
認証エラー
症状:
Error: Invalid API key
解決策:
- Secretsの名前が正しいか確認(
ANTHROPIC_API_KEY) - APIキーが有効か確認
- 組織設定でSecretsが許可されているか確認
権限エラー
症状:
Error: Resource not accessible by integration
解決策:
permissionsセクションが正しく設定されているか確認- GitHub Appの権限を確認
- 組織設定でActionsが許可されているか確認
セキュリティ考慮事項
APIキーの管理
- 必ずGitHub Secretsを使用(コードに直接記載しない)
- 定期的にキーをローテーション
- 最小権限の原則を適用
アクセス制御
- 信頼できるユーザーのみが
@claudeを使用できるように設定 - フォークからのPRには制限を検討
まとめ
Claude Code GitHub Actionを使えば:
- @claudeメンションで即座にAIが応答
- コードレビューを自動化
- Issue対応をAIに任せる
設定はワークフローファイル1つで完了。まずは基本設定から始めて、チームのワークフローに合わせてカスタマイズしていきましょう。