Claude Code GitHub連携の方法|GitHub ActionsでAI開発する方法を解説

Claude CodeをGitHubと連携して、コードレビューやPull Requestの確認、コード修正などをAIに手伝ってもらいたい方も多いのではないでしょうか。

Claude Codeは、ターミナルで利用できるAIコーディングツールです。GitHubと組み合わせることで、リポジトリのコードを確認したり、IssueやPull Requestをもとに作業したり、GitHub ActionsからClaude Codeを自動実行したりできます。

Anthropicは公式のClaude Code GitHub Actionを提供しており、GitHubのIssueやPull Requestに対する質問への回答、コードレビュー、コード修正などを自動化できます。Claude Code Actionの公式GitHubリポジトリでも、これらの機能が案内されています。

この記事では、Claude CodeとGitHubの関係から、GitHubリポジトリでClaude Codeを使う方法、GitHub Actionsとの連携方法まで初心者向けに解説します。

Claude CodeとGitHubの関係

Claude CodeとGitHubは、それぞれ役割が異なります。

サービス 主な役割
Claude Code AIを使ったコーディング・開発支援
GitHub ソースコードの管理・共有・共同開発
GitHub Actions GitHub上の処理を自動化する仕組み

Claude CodeはターミナルやIDEなどから利用でき、Gitのワークフローにも対応しています。公式リポジトリでも、Claude Codeはコードベースを理解し、日常的な作業やGitワークフローを支援するツールとして説明されています。

GitHubと組み合わせると、単にAIにコードを書いてもらうだけでなく、Issue、Pull Request、コードレビューなど、ソフトウェア開発の流れの中でClaudeを利用できます。

Claude CodeでGitHubを使うと何ができる?

GitHubのリポジトリをClaude Codeで扱う

GitHubで管理しているプロジェクトをローカル環境に取得し、そのディレクトリからClaude Codeを起動できます。

例えば、GitHubからリポジトリをcloneします。

git clone https://github.com/example/example.git
cd example

その後、Claude Codeを起動します。

claude

これで、GitHubで管理しているプロジェクトをClaude Codeから確認できます。

コードについて質問する

Claude Codeを起動した状態で、プロジェクトについて質問できます。

このプロジェクトの構成を説明してください。

例えば、ファイル構成、使用している技術、処理の流れなどを確認する際に利用できます。

コードの修正を依頼する

Claude Codeには、コードの修正を依頼することもできます。

ログイン処理のエラーハンドリングを改善してください。

変更内容を確認しながら、必要な修正を進められます。

Gitの操作を支援してもらう

Claude CodeはGitを利用した開発にも対応しています。

例えば、変更内容を確認するよう依頼できます。

今回の変更内容を説明してください。

Gitの差分を確認しながら、変更内容を整理することもできます。

Claude CodeとGitHubを連携する方法

Claude CodeとGitHubを利用する方法は、大きく分けると2つあります。

  1. GitHubのリポジトリをローカルにcloneしてClaude Codeで利用する
  2. GitHub ActionsにClaude Codeを組み込んで自動化する

まずは、ローカル環境でClaude Codeを利用する方法から始めると理解しやすいでしょう。

GitHubのリポジトリをClaude Codeで利用する

GitHubからリポジトリをcloneする

GitHubのリポジトリをローカル環境にcloneします。

git clone https://github.com/example/example.git

次に、プロジェクトのディレクトリへ移動します。

cd example

Claude Codeを起動する

プロジェクトディレクトリでClaude Codeを起動します。

claude

Claude Codeにプロジェクトについて質問してみましょう。

このプロジェクトの構成を説明してください。

この方法なら、GitHub上のコードをローカル環境で管理しながらClaude Codeを利用できます。

Claude Code GitHub Actionとは?

Claude Code GitHub Actionは、GitHub ActionsのワークフローからClaude Codeを実行するための仕組みです。

公式のClaude Code Actionでは、GitHubのIssueやPull Requestに対してClaudeに質問したり、コードレビューを行わせたり、コード変更を実装させたりできます。

例えば、GitHubのPull RequestでClaudeにコードレビューを依頼するような使い方ができます。

また、Issueをもとにコード変更を行い、Pull Requestを作成するような開発フローにも利用できます。

Claude Code GitHub Actionでできること

Pull Requestをレビューする

Claude Code Actionを利用すると、Pull Requestの変更内容をClaudeに確認させ、コードレビューを自動化できます。

公式のGitHubリポジトリでも、Pull Requestの変更を分析して改善点を提案する機能が紹介されています。

Issueの内容をClaudeに調査させる

GitHub Issueに記載された問題について、Claudeに調査を依頼することもできます。

例えば、

@claude このIssueの原因を調査してください。

のように、Issue上でClaudeを呼び出すワークフローを構築できます。

公式ActionはIssueやPull Requestのコメントにおける@claudeメンションを利用した動作に対応しています。

コードの修正を依頼する

IssueやPull Requestを起点として、Claudeにコード変更を依頼することもできます。

例えば、バグ修正や小規模なリファクタリングなどをAIに依頼できます。

Claude Code Actionには、コードの実装や修正を行う機能が用意されています。

GitHub Actionsで定期的な作業を自動化する

Claude Code Actionは、GitHub上のイベントをきっかけとして自動実行することもできます。

例えば、

  • Pull Requestのコードレビュー
  • Issueの分類
  • ドキュメント更新
  • 定期的なコードチェック
  • CI/CDの失敗調査

などの自動化に利用できます。

公式ドキュメントでは、IssueやPull Requestへの対応だけでなく、明示的なプロンプトを指定して自動化する「agent mode」も案内されています。

Claude Code GitHub Actionを設定する

Claude Code ActionをGitHubリポジトリで利用するには、GitHub Appや認証情報、GitHub Actionsのワークフローなどを設定します。

現在の公式リポジトリでは、Claude Codeのターミナルから次のコマンドを実行してGitHub Appのセットアップを進める方法が案内されています。

/install-github-app

公式のQuickstartでは、Claude Codeを起動して/install-github-appを実行すると、GitHub Appのセットアップを案内してくれると説明されています。

GitHub Actionsのワークフローを設定する

手動で設定する場合は、GitHub Actionsのワークフローファイルをリポジトリに追加します。

例えば、.github/workflows/claude.ymlのようなファイルを作成します。

name: Claude Assistant

on:
  issue_comment:
    types: [created]
  pull_request_review_comment:
    types: [created]
  issues:
    types: [opened, assigned, labeled]
  pull_request_review:
    types: [submitted]

jobs:
  claude-response:
    runs-on: ubuntu-latest

    steps:
      - uses: anthropics/claude-code-action@v1
        with:
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}

公式のUsageドキュメントでも、anthropics/claude-code-action@v1を利用したワークフローが案内されています。

なお、実際の設定ではリポジトリや組織の権限、認証方式、利用するモデルなどに応じた設定が必要です。

Claude Code GitHub Actionの認証

Claude Code Actionでは、Anthropic APIキーなどを利用して認証できます。

公式のセットアップガイドでは、リポジトリのSecretsにANTHROPIC_API_KEYを登録する方法や、OAuthトークンを利用する方法などが案内されています。

例えば、GitHub Actionsでは次のようにSecretを参照します。

anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}

APIキーをGitHubに直接書いてはいけない

Claude Code GitHub Actionを利用するときに特に注意したいのが、APIキーの管理です。

APIキーをGitHubのソースコードに直接記述するのは避けてください。

公式のセットアップガイドでも、APIキーはGitHub Actions Secretsに保存し、ワークフローから${{ secrets.ANTHROPIC_API_KEY }}として参照する方法が推奨されています。

例えば、次のようにAPIキーを直接書く方法は避けます。

# NG
anthropic_api_key: "sk-ant-xxxxxxxx"

代わりにGitHub Secretsを利用します。

# OK
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}

2つの動作モードを理解する

ワークフローの書き方によって、Claude Code GitHub Actionの動き方は2つに分かれます。この区別を知らないまま設定すると、「動いているはずなのに何も起きない」という状態になります。

モード 条件 挙動 結果の出力先
対話モード prompt を指定しない @claude のメンションを待って応答する issue・PRのコメント
自動モード prompt を指定する メンションを待たず、イベント発生で即実行 既定ではワークフローの実行ログ

よくある誤解が、自動モードの結果は既定ではPRにコメントされない点です。コメントさせたい場合は、プロンプトでそう指示したうえで、投稿できるツールを明示的に許可する必要があります(後述のレビュー例を参照)。

実際に動くワークフローの全文

@claude メンションに応答する

最小構成でも permissions の指定が要ります。ここが抜けていると認証やCI結果の読み取りで失敗します。

name: Claude Code
on:
  issue_comment:
    types: [created]
  pull_request_review_comment:
    types: [created]
jobs:
  claude:
    if: contains(github.event.comment.body, '@claude')
    runs-on: ubuntu-latest
    permissions:
      contents: write
      pull-requests: write
      issues: write
      id-token: write
      actions: read
    steps:
      - uses: actions/checkout@v6
        with:
          fetch-depth: 1
      - uses: anthropics/claude-code-action@v1
        with:
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}

定型部分を除くと、意味があるのは次の行です。

  • id-token: write:GitHub Appとしての認証に必要
  • actions: read:PRのCI結果をClaudeが読むために必要
  • actions/checkout:リポジトリの内容を実行環境に展開する
  • if::メンションのないコメントで実行環境を起動しないための絞り込み

サブスクリプション(Pro / Max / Team / Enterprise)のトークンを使う場合は、最終行を次に差し替えます。トークンは手元で claude setup-token を実行すると発行できます。トークンはコマンドの出力にしか出ず、保存されません。その場でコピーしてGitHub Secretsに登録してください。

claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}

PRが開かれたら自動でレビューする

name: Code Review
on:
  pull_request:
    types: [opened, synchronize, ready_for_review, reopened]
jobs:
  review:
    runs-on: ubuntu-latest
    permissions:
      contents: read
      pull-requests: read
      issues: read
      id-token: write
    steps:
      - uses: actions/checkout@v6
        with:
          fetch-depth: 1
      - uses: anthropics/claude-code-action@v1
        with:
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
          plugin_marketplaces: "https://github.com/anthropics/claude-code.git"
          plugins: "code-review@claude-code-plugins"
          prompt: "/code-review:code-review --comment ${{ github.repository }}/pull/${{ github.event.pull_request.number }}"
          claude_args: '--allowedTools "mcp__github_inline_comment__create_inline_comment"'

ここで押さえるべきは2行です。

  • --comment:これを付けないと、指摘は実行ログに書かれるだけでPRには出ません
  • claude_args の --allowedTools:コメント投稿用のツールをここで明示しないと、投稿の仕組みが起動しません

なお、下書き(draft)のPRや、Claudeがレビュー不要と判断したPRはスキップされます。パブリックリポジトリでは、フォークからのPRにシークレットが渡らないため、レビューは同一リポジトリのブランチからのPRに限られます。

毎朝レポートを出す(定期実行)

name: Daily Report
on:
  schedule:
    - cron: "0 9 * * *"
jobs:
  report:
    runs-on: ubuntu-latest
    permissions:
      contents: read
      issues: read
      id-token: write
    steps:
      - uses: anthropics/claude-code-action@v1
        with:
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
          prompt: "前日のコミットとオープン中のissueを要約して"
          claude_args: |
            --model claude-sonnet-5
            --allowedTools "mcp__github__list_commits,mcp__github__list_issues"

この例ではGitHub APIから直接読むため checkout を省略できます。ただしプレーンテキストのプロンプトでは、明示的に許可するまでClaudeは何のツールも使えません。--allowedTools で必要なものを渡してください。

スケジュール実行には制約があります。既定ブランチからしか実行されず、パブリックリポジトリでは60日間活動がないと自動で止まります。

誰が実行できるか

安全のため、実行を起動した人に対して2つのチェックが入ります。どちらかで弾かれると実行は失敗します。

チェック 内容 例外の作り方
書き込み権限 issue・PRのイベントでは、起動した人にリポジトリの書き込み権限が必要 allowed_non_write_users に列挙し、自前の github_token を渡す
人間かどうか botによる起動は既定で拒否される allowed_bots に列挙する

botを弾くのは、botどうしがメンションし合って無限に実行が走るのを防ぐためです。スケジュール実行もGitHub上は特定ユーザーに紐づくため、そのユーザーがbotの場合は allowed_bots への登録が必要になります。

主要な設定項目

パラメータ 内容
prompt Claudeへの指示。省略すると対話モードになる
claude_args Claude CodeのCLI引数をそのまま渡す
anthropic_api_key APIキー
claude_code_oauth_token サブスクリプション用のトークン
github_token GitHub操作用のトークン。省略時はGitHub Appとして動作
plugin_marketplaces / plugins 実行前にインストールするプラグイン
settings Claude Codeの設定をJSONまたはファイルパスで渡す
trigger_phrase 反応する語。既定は @claude

claude_args でよく使うのは --max-turns(往復回数の上限)、--model(使うモデル)、--allowedTools(許可するツール)、--mcp-config(MCP設定のパス)です。

費用の考え方

実行ごとに2種類のコストがかかります。GitHubホストの実行環境を使うためのGitHub Actionsの利用枠と、トークンです。サブスクリプションのトークンで認証した場合、モデル利用分はサブスクリプション側で消費されます。

コストを抑えるには次が効きます。

  • @claude の依頼を具体的に書く。曖昧だと往復が増える
  • --max-turns を設定する。暴走時の上限として効く
  • CLAUDE.mdを簡潔に保つ。毎回読まれるため、長いほど全実行のコストに乗る
  • ワークフローにタイムアウトを設定する
  • 同時実行数を絞る

とくに効果が大きいのがCLAUDE.mdです。整理の考え方はCLAUDE.mdなど各種MDファイルの活用ガイドで解説しています。

うまく動かないときの確認点

症状 確認すること
@claude に反応しない GitHub Appが対象リポジトリに入っているか/シークレットが登録されているか/コメントが @claude 単独の語になっているか
権限エラーで落ちる コメントした人にリポジトリの書き込み権限があるか
ClaudeのコミットでCIが走らない github_token: ${{ secrets.GITHUB_TOKEN }} を渡していないか(渡すとCIが起動しない)
認証エラー 同じキーで手元の claude が動くか先に確認する
レビュー結果がPRに出ない --comment と --allowedTools の行があるか

ローカル実行との使い分け

手元のClaude Code GitHub Actions
起動 自分でターミナルを開く GitHubのイベントで自動
途中の介入 その場で指示を足せる コメントで追加依頼する形になる
向く作業 試行錯誤のある実装、設計 レビュー、定型の修正、定期レポート

実務では併用になります。探索的な作業は手元、繰り返しと待ち時間のある作業はActionsという分け方が現実的です。手元での操作はClaude Code コマンド一覧、権限の設計はClaude Codeのセキュリティもあわせて確認してください。

Claude CodeとGitHubを連携するときの注意点

Claudeに与える権限を確認する

Claude Code Actionでは、GitHubリポジトリのIssue、Pull Request、Contentsなどにアクセスするための権限設定が関係します。

必要以上の権限を与えないことが重要です。

公式のセットアップガイドでは、GitHub Appを利用する場合のRepository permissionsとして、Contents、Issues、Pull requestsなどの権限設定が説明されています。

外部からの入力をそのまま信頼しない

GitHub ActionsでAIを動かす場合は、IssueやPull Requestの内容など、外部から入力される情報をどのようにClaudeへ渡すかにも注意が必要です。

Claude CodeのBase Actionのドキュメントでも、信頼できない入力を扱う場合には、適切なActionや権限管理を利用する必要があると説明されています。

自動的なコード変更にはレビューを入れる

Claudeにコード変更を任せる場合でも、生成された変更を人間が確認する工程を設けることをおすすめします。

特に本番環境へ直接反映するようなワークフローでは、Pull Requestやレビューを挟む設計が重要です。

Claude CodeとGitHubを組み合わせるメリット

AIとGitの作業をつなげられる

Claude CodeをGitHubと組み合わせることで、AIによるコード作成だけでなく、Issue、Pull Request、レビューなど、開発プロセス全体の一部を自動化できます。

コードレビューを自動化できる

Pull RequestをClaudeに確認させることで、レビュー作業を支援できます。

Issueから開発作業につなげられる

Issueに記載した要件をもとにClaudeへ調査や実装を依頼することもできます。

GitHub Actionsで繰り返し作業を自動化できる

GitHub Actionsを利用すると、GitHub上のイベントをきっかけにClaude Codeを実行できます。

Claude CodeとGitHubの違い

「Claude CodeとGitHubは何が違うの?」という疑問を持つ方もいるでしょう。

項目 Claude Code GitHub
主な役割 AIによる開発支援 コード管理・共同開発
コードを書く ○ △
コードを保存する × ○
Pull Request 支援可能 ○
AIによるコードレビュー ○ GitHub Actionsなどと連携して実現

Claude CodeとGitHubは競合するサービスではなく、組み合わせて利用できます。

Claude Codeの環境構築について

GitHubと連携する前に、まずClaude Code自体を利用できる環境を作る必要があります。

Claude Codeのインストールや初回起動については、以下の記事で詳しく解説しています。

Claude Codeの環境構築方法|インストールから初回起動まで初心者向けに解説

Claude Codeの基本的な使い方

Claude Codeそのものの仕組みや基本的な使い方について知りたい方は、以下の記事をご覧ください。

Claude Codeとは?使い方・できることを初心者向けに解説

Claude Codeを実際に学びたい方へ

Claude Codeは実際にPCを操作しながら使ってみると理解しやすいツールです。

テックジム東京本校では、Claude Codeを初めて使う方を対象に、無料の対面講座を開催しています。

東京・永田町でClaude Codeを実際に体験したい方は、以下の講座ページをご覧ください。

Claude Code無料講座|初心者向け・東京で学べる対面講座

Claude Code GitHubに関するFAQ

Claude CodeはGitHubで使えますか?

はい。GitHubのリポジトリをローカル環境にcloneしてClaude Codeで利用できます。また、GitHub ActionsとClaude Code Actionを組み合わせることで、IssueやPull Requestへの対応を自動化することもできます。

Claude Code GitHub Actionとは何ですか?

Claude CodeをGitHub Actionsから実行するための仕組みです。IssueやPull Requestへの応答、コードレビュー、コード変更などを自動化できます。

Claude CodeでGitHubのPull Requestをレビューできますか?

はい。Claude Code Actionを利用すると、Pull Requestの変更内容をClaudeに分析させ、コードレビューを支援させることができます。

Claude CodeでGitHub Issueを処理できますか?

はい。GitHub IssueへのコメントやイベントをきっかけにClaude Code Actionを実行し、Issueの内容を調査したり、コード変更につなげたりできます。

Claude CodeとGitHubを連携するにはAPIキーが必要ですか?

利用する認証方式によって異なります。公式のClaude Code Actionでは、Anthropic APIキーやOAuthトークンなどの認証方法が用意されています。

Claude CodeのAPIキーをGitHubのコードに書いてもいいですか?

いいえ。APIキーをソースコードに直接記述するのは避けてください。GitHub Actions Secretsなど、安全な方法で管理してください。

まとめ

Claude CodeとGitHubを組み合わせることで、AIによるコーディング支援とGitHubの開発ワークフローを組み合わせることができます。

基本的には、次の2つの使い方があります。

  1. GitHubのリポジトリをcloneして、ローカル環境でClaude Codeを利用する
  2. Claude Code GitHub Actionを使って、GitHub ActionsからClaude Codeを実行する

GitHub Actionsを利用すると、Pull Requestのコードレビュー、Issueへの対応、コード修正など、開発作業の一部を自動化できます。

ただし、AIにコード変更を任せる場合は、GitHubの権限設定やAPIキーの管理、生成されたコードのレビューなどにも注意が必要です。

Claude Codeそのものについて詳しく知りたい方は、以下の記事もご覧ください。

Claude Codeとは?使い方・できることを初心者向けに解説

Claude Codeの環境構築から始めたい方はこちらです。

Claude Codeの環境構築方法|インストールから初回起動まで初心者向けに解説

実際にClaude Codeを操作しながら学びたい方は、テックジム東京本校の無料・対面講座も利用できます。

Claude Code無料講座|初心者向け・東京で学べる対面講座

プログラミング学習に興味がある方は、まずは無料体験会へ

無料体験会・お申し込みはこちら