ガイド

Claude Codeで自動化できること完全ガイド【2026年最新】:Hooks・GitHub Actions・スケジュール実行・headlessモードまで徹底解説

室谷東吾
監修者室谷東吾(@0x__tom

株式会社MYUUU 代表取締役 / 日本最大級AIコミュニティ「.AI」創設者(累計2,000名超)/ セプテーニ・ホールディングス(電通グループ)と資本業務提携 / 著書「お金を使わず、AIを働かせる『Dify』活用」(ぱる出版、3刷)/ Xフォロワー約2万人

テキトー教師
監修者テキトー教師(@tekitoo_T_cher

.AI 認定講師 / 教育×AIの専門家 / 累計300名以上にAI活用を指導 / 「テキトーに学ぶ」がモットーの実践派講師 / Xアカウント

Claude Codeで自動化できること完全ガイド【2026年最新】:Hooks・GitHub Actions・スケジュール実行・headlessモードまで徹底解説

Claude Codeの自動化、どこから始めればいい?

Claude Code自動化の4つのアプローチ(Hooks・GitHub Actions・スケジュール実行・プログラム利用)の全体像図解

室谷室谷
今回はClaude Codeの自動化について話しましょう。これ、コミュニティでも「どこから手をつければいいかわからない」って声が多いんですよね。
テキトー教師テキトー教師
そうですよね。Claude Codeを「チャット感覚で使うもの」だと思って止まっている人が多いんですよ。

実は自動化の仕組みがかなり充実していて、使いこなすとワークフロー全体が変わります。
室谷室谷
MYUUUでも実際に使っていますが、単純に「AIに質問する」フェーズから「AIが自律的に動く」フェーズに移行するための仕組みがClaude Codeには揃っているんですよね。
テキトー教師テキトー教師
整理すると、Claude Codeの自動化には主に4つのアプローチがあります。Hooks、GitHub Actions、スケジュール実行(/loop・Cron)、そしてプログラムからの利用です。

この記事ではそれぞれを実用的なレベルで解説していきます。
室谷室谷
前回はClaude Codeのインストールと基本的な使い方を見てきましたが、今回はそこから一歩進んで「Claude Codeを働かせる」側の話をしていきます。

Hooksとは?Claude Codeのライフサイクルに割り込む仕組み

Claude Code公式ドキュメント - Hooksガイド(公式サイトより)

テキトー教師テキトー教師
まずHooksから始めましょう。これ、知らない人が損をしている機能のトップ3に入ると思います。
室谷室谷
Hooksは何かというと、Claude Codeが動く過程の特定のタイミングで、シェルコマンドやスクリプトを自動実行する仕組みです。ファイルを編集したら自動フォーマット、コマンドを実行する前にセキュリティチェック、作業が終わったら通知、みたいなことができます。
テキトー教師テキトー教師
講座でコミュニティのメンバーさんに説明するとき、「Claude Codeのミドルウェア」と言うとピンとくる人が多いです。AIが動く過程に人間のルールを挟み込める仕組みですね。
室谷室谷
ここが重要なんですが、Hooksは「Claudeがやるかどうか選ぶ」ものではなく、「必ず実行される」という点です。プロンプトに「ファイルを編集したらフォーマットしてください」と書いても、Claudeが忘れることがありますが、Hooksなら確実に動きます。
テキトー教師テキトー教師
決定論的な制御、というやつですね。AI任せではなくルールとして固定できる。

これがHooksの本質的な価値です。

Hooksで使える主なイベント

室谷室谷
Hooksが発火するタイミング(イベント)は非常に豊富です。公式ドキュメントで確認できますが、主なものをまとめると次のようになります。
イベント発火タイミング
SessionStartセッション開始・再開時
UserPromptSubmitプロンプト送信直後(Claude処理前)
PreToolUseツール実行前(ブロック可能)
PostToolUseツール実行後(成功時)
PostToolUseFailureツール実行後(失敗時)
NotificationClaudeが入力待ち・許可待ちのとき
StopClaudeが応答を終了したとき
SessionEndセッション終了時
FileChanged監視ファイルが変更されたとき
CwdChanged作業ディレクトリが変更されたとき
テキトー教師テキトー教師
この表を見ると「かなり細かく制御できる」という印象を受けると思います。特にPreToolUseは実行前にブロックできるので、安全弁として使えます。
室谷室谷
うちのチームではPostToolUseを使って、Claudeがファイルを編集するたびにPrettierが自動で走るようにしています。手動でフォーマットするステップが完全になくなりました。

Hooksの設定ファイルはどこに書く?

テキトー教師テキトー教師
設定場所によってスコープが変わるのも覚えておきたいポイントです。
室谷室谷
3つの場所があります。
  • ~/.claude/settings.json:全プロジェクト共通のグローバル設定
  • .claude/settings.json:プロジェクト固有(リポジトリにコミット可能)
  • .claude/settings.local.json:プロジェクト固有のローカル専用(gitignored)
テキトー教師テキトー教師
チームで共有するルールは.claude/settings.jsonに書いてリポジトリにコミット、個人の好みや機密情報を含むものは~/.claude/settings.jsonかlocal.json、という使い分けが基本ですね。

実用的なHooks設定例

室谷室谷
ここから実際のコード例を見ていきます。まず最もよく使われるパターン、「ファイル編集後の自動フォーマット」です。
{
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Edit|Write",
        "hooks": [
          {
            "type": "command",
            "command": "jq -r '.tool_input.file_path' | xargs npx prettier --write"
          }
        ]
      }
    ]
  }
}
テキトー教師テキトー教師
matcherフィールドで「Edit または Write ツールのときだけ」と絞り込んでいます。これがないと全イベントで動いてしまうので必須です。
室谷室谷
次に「機密ファイルへの編集をブロックする」Hookです。.envファイルやpackage-lock.jsonをClaude Codeが書き換えないよう保護できます。

スクリプトファイル(.claude/hooks/protect-files.sh)をこう書きます:

#!/bin/bash
INPUT=$(cat)
FILE_PATH=$(echo "$INPUT" | jq -r '.tool_input.file_path // empty')

PROTECTED_PATTERNS=(".env" "package-lock.json" ".git/")

for pattern in "${PROTECTED_PATTERNS[@]}"; do
  if [[ "$FILE_PATH" == *"$pattern"* ]]; then
    echo "Blocked: $FILE_PATH is protected" >&2
    exit 2
  fi
done

exit 0
テキトー教師テキトー教師
exit 2がポイントです。終了コード2でClaude Codeにブロックを伝えます。

ただブロックするだけでなく、Claudeがブロックされた理由を理解してアプローチを調整できます。
室谷室谷
もう1つ便利なのが「作業完了時の通知」Hookです。長時間かかるタスクをClaude Codeに任せて他の作業をしているとき、完了したら教えてほしいですよね。
{
  "hooks": {
    "Notification": [
      {
        "matcher": "",
        "hooks": [
          {
            "type": "command",
            "command": "osascript -e 'display notification \"Claude Codeが入力を待っています\" with title \"Claude Code\"'"
          }
        ]
      }
    ]
  }
}
テキトー教師テキトー教師
macOSならこれで、デスクトップ通知が飛んできます。Linuxならnotify-send、WindowsならNew-BurntToastNotificationを使います。

Claudeが入力待ちになった瞬間に画面を見なくてもわかるので、マルチタスクがしやすくなりますね。

GitHub Actionsでの自動化:PRに@claudeとメンションするだけ

Claude Code GitHub Actions公式ドキュメント - パラメータ一覧(公式サイトより)

室谷室谷
次はGitHub Actionsとの連携です。これはチーム開発での自動化で一番インパクトが大きい機能だと思います。
テキトー教師テキトー教師
どんなことができるか、ざっくり言うと「GitHubのIssueやPull Requestに@claudeとメンションするだけで、Claude Codeが動いてコードを修正したりPRを作ったりしてくれる」です。
室谷室谷
海外では、グロースマーケティングを非エンジニア1人がClaude Codeで回しているという事例があって。広告コピー作成が30分から30秒になったという話も出ていました。

これはGitHub ActionsでClaude Codeが連携する仕組みがあるからこそですね。

セットアップ方法

テキトー教師テキトー教師
セットアップはかなり簡単です。Claude Codeのターミナルで/install-github-appを実行するだけで、GitHub Appのインストールとシークレット設定をガイドしてくれます。
室谷室谷
手動でセットアップする場合は以下の手順です。
  1. https://github.com/apps/claude からGitHub AppをリポジトリにInstall
  2. リポジトリのSecretsにANTHROPIC_API_KEYを追加
  3. .github/workflows/にワークフローファイルをコピー
テキトー教師テキトー教師
必要な権限はContentsIssuesPull requestsの読み書きです。これだけあれば、コードを変更してPRを作るという動作が全部できます。

基本的なワークフローファイル

室谷室谷
最もシンプルなワークフローはこんな感じです。
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 }}
テキトー教師テキトー教師
これを.github/workflows/claude.ymlとして保存すれば、IssueやPRで@claudeとメンションするとClaude Codeが反応します。「このバグを修正して」と書けばコードを修正してコミットしてくれます。
室谷室谷
重要なポイントが1つあって、2026年4月時点でGitHub Actions連携はClaude Agent SDK上に構築されています。デフォルトモデルはSonnetですが、claude_args--model claude-opus-4-6を指定するとOpusも使えます。
テキトー教師テキトー教師
プロンプトを固定して「毎回自動でこれをやれ」という自動化モードと、@claudeのメンションに応答するインタラクティブモードがあって、設定によって自動で切り替わります。

カスタム自動化プロンプト

室谷室谷
固定プロンプトで自動化する例も見ておきましょう。PRが開くたびにセキュリティレビューを自動実行する設定です。
name: Auto Security Review
on:
  pull_request:
    types: [opened, synchronize]

jobs:
  security-review:
    runs-on: ubuntu-latest
    steps:
      - uses: anthropics/claude-code-action@v1
        with:
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
          prompt: "このPRのコードをセキュリティの観点でレビューしてください。SQLインジェクション、XSS、認証の不備などの問題があれば具体的に指摘してください。"
テキトー教師テキトー教師
こういう「毎回やるべきだけど人間がサボりがちなレビュー」を自動化するのに最適ですね。コミュニティのメンバーさんの中には、ドキュメントの自動更新やテストカバレッジのチェックに使っている方もいます。
室谷室谷
CLAUDE.mdをリポジトリに置いておくと、そのプロジェクトのルールをClaude Codeが読んでくれます。「このプロジェクトではBunを使う」「コーディング規約はこれ」といったガイドラインを守った上で自動化が動くわけです。

スケジュール実行:/loopとCronで定期タスクを自動化する

室谷室谷
次はスケジュール実行の話です。「毎日朝9時にPRの状況をチェックして」みたいなことができます。
テキトー教師テキトー教師
Claude Codeのスケジュール実行には3つの選択肢があって、それぞれ特徴が違います。
種類実行場所特徴
クラウドスケジュール(Routines)Anthropic管理インフラマシンオフでも実行。claude.ai/codeで設定
デスクトップスケジュール手元のマシンローカルファイルへのアクセス可能
/loop(CLIセッション内)手元のマシンセッション中のクイックポーリング
室谷室谷
MYUUUのチームでは主にGitHub Actionsを使っていますが、個人のワークフローだと/loopが手軽です。

/loopの使い方

テキトー教師テキトー教師
/loopはClaude Codeのセッション内で使うコマンドです。
/loop 5m check if the deployment finished

こう書くと5分ごとにデプロイの状況をチェックしてくれます。デプロイを待ちながら別の作業に集中できますね。

室谷室谷
間隔を省略すると、Claudeが状況に応じて間隔を自動選択します。「まだビルド中」なら短く、「何も動いていない」なら長く、という判断をしてくれます。
/loop check whether CI passed and address any review comments
テキトー教師テキトー教師
/loopで実行できるのはセッションが開いている間だけです。ターミナルを閉じるとタスクが止まります。

恒久的に動かしたい場合はRoutines(claude.ai/codeで設定するクラウドスケジュール)かGitHub Actionsを使いましょう。

スケジュールタスクのCron式

室谷室谷
Claudeに「毎朝9時にこれをやって」とお願いすると、Cron式に変換してタスクをスケジュールしてくれます。
テキトー教師テキトー教師
スケジュールは7日間の有効期限があって、自動で削除されます。継続的に動かしたい場合は期限前に再作成する必要があります。
室谷室谷
タスクの管理は「今どんなタスクが動いてる?」とClaude Codeに聞けばリストを表示してくれます。「〇〇のタスクをキャンセルして」と言えば止めてくれる。

自然言語でタスク管理できるのが地味に便利ですね。

Claude Codeをプログラムから使う:パイプとheadlessモード

室谷室谷
最後に、Claude CodeをスクリプトやCI/CDパイプラインから使う方法です。これが一番応用範囲が広いかもしれません。
テキトー教師テキトー教師
--printフラグ(または-p)を使うと、非対話型モードで動きます。レスポンスを標準出力に出力して終了するので、シェルスクリプトに組み込めます。
claude -p "このコードを最適化して" --allowedTools "Edit,Read,Bash" < source.py
室谷室谷
パイプとも組み合わせられます。
cat error.log | claude -p "このエラーの原因を特定して修正コードを提案して"
テキトー教師テキトー教師
出力形式を--output-format jsonにすると、構造化されたJSONが返ってくるのでプログラムで処理しやすくなります。
claude -p "このコードをレビューして" --output-format json source.py
室谷室谷
海外の事例で面白いのが、Claude Codeで求職活動を自動化した人の話です。740件以上の求人を自動評価して、100件以上のカスタムCVを生成して、Head of Applied AIとして内定したというケースがありました。

これはClaude Code上で14のスキルモードを組み合わせたシステムだったそうです。
テキトー教師テキトー教師
それ、Claude Codeの自動化の可能性をよく示しているエピソードですよね。「AIを使う」から「AIを自律的に動かすシステムを作る」へのシフトです。

実践ガイド:よく使われる自動化パターン5選

室谷室谷
ここまでの内容を踏まえて、実際によく使われる自動化パターンを整理します。
テキトー教師テキトー教師
コミュニティのメンバーさんからよく聞くパターンを5つまとめました。

パターン1:コード品質の自動担保

テキトー教師テキトー教師
ファイル編集後にリンターやフォーマッターを自動実行する、最もよく使われるパターンです。PostToolUseのHookでPrettier、ESLint、Blackなどを動かします。
室谷室谷
MYUUUのプロジェクトでも全部これで動かしています。Claudeがコードを書くたびにフォーマットが整うので、コードレビューでフォーマットの話をする必要がなくなりました。

パターン2:PRの自動レビュー

テキトー教師テキトー教師
GitHub Actionsで、PRが作成されるたびにClaude Codeが自動でセキュリティ・品質レビューを行うパターンです。
室谷室谷
特にドキュメントの更新忘れチェックや、API変更時の互換性チェックに使われています。人間が見落としやすい部分をClaude Codeが毎回チェックしてくれます。

パターン3:CI/CDパイプラインへの組み込み

テキトー教師テキトー教師
テストが失敗したときにClaude Codeが原因を分析してSlackに通知するパターンです。
室谷室谷
エラーログをパイプで渡して「このエラーの原因と修正方法を教えて」とClaude Codeに聞く、という使い方です。デバッグの初動調査が自動化されます。

パターン4:定期的なコードベースのメンテナンス

テキトー教師テキトー教師
/loopやGitHub Actionsのcronトリガーを使って、週次で依存関係の更新チェックや、月次でコードの品質レポートを生成するパターンです。
室谷室谷
「毎週月曜日にnpm outdatedの結果を分析してPRを作る」みたいなことができます。依存関係の管理が自動化されると、セキュリティアップデートの遅延が減ります。

パターン5:ドキュメントの自動生成・更新

テキトー教師テキトー教師
コードが変更されたときに関連するドキュメントを自動更新するパターンです。FileChangedフックやPostToolUseを使います。
室谷室谷
これが一番「AIならでは」の使い方だと思います。コードとドキュメントを常に同期させるのは人間だと大変ですが、Claudeなら差分を見て自動更新できますね。

CLAUDE.mdで自動化ルールを固定する

テキトー教師テキトー教師
自動化を設定する際に忘れてはいけないのが、CLAUDE.mdの活用です。
室谷室谷
CLAUDE.mdはClaude Codeが読み込む指示書です。プロジェクトのルールをここに書いておくと、自動化実行時もそのルールを守って動いてくれます。
テキトー教師テキトー教師
GitHub Actionsでの自動化に特に重要です。CLAUDE.mdに「このプロジェクトではBunを使う、npmは使わない」「コミットメッセージはConventional Commitsに従う」と書いておけば、Claudeが自動でPRを作るときもそのルールが適用されます。
室谷室谷
自動化は「Claudeを手放して動かす」ことなので、ルールを明示しておくことが重要です。曖昧なルールのままにすると、意図しない動作が起きやすくなります。
テキトー教師テキトー教師
CLAUDE.mdに書いておくべき自動化関連の内容として、よくあるのはこのあたりです。
  • 使用するパッケージマネージャー(npm/yarn/bun)
  • コミット・PRの規約(Conventional Commits等)
  • テストを実行すべきタイミングのルール
  • 変更してはいけないファイルやディレクトリ
  • コードスタイルとフォーマット設定
室谷室谷
うちのチームでは「本番DBに直接アクセスするコマンドは実行禁止」とCLAUDE.mdに書いています。Hooksで機械的にブロックするのと、CLAUDE.mdで「そもそもそういう操作はしないように」と指示するのを両立させています。

許可モードとセキュリティ:自動化時の注意点

室谷室谷
自動化を本格的に使うなら、許可モードの理解が必要です。
テキトー教師テキトー教師
Claude Codeには3つの許可モードがあります。
モード説明適した場面
デフォルトファイル編集等は許可、システムコマンドは確認日常的な開発
--dangerously-skip-permissions全て自動承認完全自動化パイプライン
許可リスト指定特定ツールのみ許可セキュリティ重視の自動化
室谷室谷
--dangerously-skip-permissionsは名前の通りリスクがあります。GitHub ActionsのサンドボックスやDockerコンテナの中で使うのが基本です。

ローカル環境での無制限実行は慎重に。
テキトー教師テキトー教師
HooksのPreToolUseで「実行可能なコマンドをホワイトリスト方式で管理する」という使い方もあります。rm -rf系のコマンドをブロックするスクリプトをHookに仕込んでおくと安全性が上がります。
室谷室谷
自動化の「落とし穴」として、Hooksの設定ミスでClaude Codeが完全にハマるケースがあります。例えばPreToolUseで全コマンドをブロックしてしまうと、Claudeが何もできなくなる。

設定を変更したら必ずテストするのが大事ですね。
テキトー教師テキトー教師
/hooksコマンドでHookの一覧と設定を確認できます。Hookが発火していないときのデバッグにも使えます。

Claude Codeには--debugフラグもあって、詳細な実行ログが見られます。

よくある疑問

室谷室谷
ここまで見てきて、よくある疑問にも答えておきましょう。
テキトー教師テキトー教師
コミュニティのメンバーさんからよく来る質問をまとめておきます。

Q:HooksとCLAUDE.mdの指示、どちらが優先?

テキトー教師テキトー教師
役割が違います。Hooksはコードで書いた「必ず実行されるルール」、CLAUDE.mdはClaude Codeへの「自然言語での指示」です。

機械的にブロックしたいことはHooks、Claudeに判断を任せたい方針はCLAUDE.mdで書くのが適切です。
室谷室谷
セキュリティ的に絶対に守らせたいルールはHooks、プロジェクトの慣習や好みのスタイルはCLAUDE.md、という使い分けですね。

Q:GitHub ActionsでClaude Codeを使うとコストはどのくらい?

室谷室谷
これ、よく聞かれます。Claude Code GitHub ActionsはAPIキーを使って従量課金です。

Claude Codeのサブスクリプション(Pro/Max)の利用枠とは別になります。
テキトー教師テキトー教師
1回のPRレビューで使うトークン数は内容によりますが、シンプルなコードベースなら数十円〜数百円程度のイメージです。毎日大量のPRがある大規模チームでは予算管理が必要になってきます。
室谷室谷
Anthropicのには「CI コスト」のセクションもあって、コスト最適化のヒントが書かれています。

Q:/loopはセッションを終了したら止まってしまう?

テキトー教師テキトー教師
そうです。/loopはあくまでセッション内のスケジューリングです。

ターミナルを閉じると止まります。
室谷室谷
ただclaude --resumeでセッションを再開すると、7日以内に作成したタスクは復元されます。完全に自律的に動かしたい場合はRoutines(claude.ai/codeで設定するクラウドスケジュール)かGitHub Actionsを使いましょう。

Q:Hooksのスクリプトがエラーになったらどうなる?

テキトー教師テキトー教師
終了コード0以外で終了した場合、Hooksのエラーとして扱われます。終了コード2はClaude Codeにブロックを伝える特殊なコードで、それ以外のエラー終了はClaude Codeのターミナルにエラーメッセージが表示されます。
室谷室谷
Hooksのデバッグは/hooksメニューで設定を確認しながら、--debugフラグで詳細ログを見るのが基本です。スクリプトファイルはchmod +xで実行権限を付けることも忘れずに。

まとめ:Claude Codeの自動化、どこから始めるべきか

テキトー教師テキトー教師
ここまで話してきた内容を整理します。
室谷室谷
Claude Codeの自動化は大きく4つです。
  • Hooks:ライフサイクルの特定タイミングでスクリプトを自動実行
  • GitHub Actions:GitHubのIssue/PRに@claudeでClaude Codeが動く
  • スケジュール実行/loopやCronで定期タスクを自動化
  • プログラムからの利用--printフラグ等でCLIをスクリプトに組み込む
テキトー教師テキトー教師
始めるならHooksからがおすすめです。まず「ファイル編集後にフォーマッターを自動実行」だけでも、毎日の作業が楽になります。

これをプロジェクトに1つ設定したら、次にNotification Hookを入れてみる、という順番で少しずつ広げていくのが無理なく使いこなせるコツです。
室谷室谷
GitHub ActionsはチームでClaude Codeを使い始めるときの入口として最適です。個人の設定は不要で、リポジトリにワークフローファイルを置けば全員が使えるようになる。

チームの文化としてAIを使った自動化を根付かせるのにいい機能です。
テキトー教師テキトー教師
自動化でよく誤解されているのが「設定したら全部Claudeに任せればいい」という発想です。Hooksで安全弁を作って、CLAUDE.mdでルールを明示して、必要に応じて人間が確認する仕組みも残す。

自動化とコントロールのバランスが大事ですね。
室谷室谷
Claude Codeの自動化は、まだ日本語の情報が少ない領域です。公式ドキュメントが一番正確なので、を見ながら試してみてください。

ここに書いたことはその入口として使ってもらえれば。

出典

.AI TIMES一覧に戻る