メインコンテンツへスキップ

Claude Code のルーチン: クラウドでスケジュール実行してコーディングエージェントを動かす

Claude Code のルーチンで、スケジュールや GitHub イベントに合わせてクラウドでエージェントを実行し、ノートPCを閉じても PR レビューや監査が完了します。
更新 2026年6月17日

繰り返し発生するあらゆる Claude Code の作業には、同じコストがかかります。毎晩の PR レビュー、毎週の依存関係監査、リリース前のドキュメント確認など。どれもターミナルのセッションを開いたまま進行を見守る必要があります。ノートPCを閉じれば、作業はあなたを待ち続けます。

ルーチンは、そのコストを取り除きます。

ルーチンは Anthropic 管理のインフラ上で Claude Code をクラウド実行します。そのため、ノートPCを閉じても動作が継続します。タスクを一度書いてリポジトリを指定すれば、スケジュールやイベントで、セッションを開かずに起動できます。

このチュートリアルでは、最初のルーチンを構築する手順を順を追って説明します。スケジュール実行のルーチンを作成し、動作を確認し、範囲や機能を拡張していきます。

さらに踏み込みたい場合は、実践的なClaude Code in Action コースをご覧ください。コンテキスト管理やプランモードから、カスタムコマンド、MCP サーバー、フック、SDK までを網羅しています。

Claude Code のルーチンとは?

ルーチンは Claude Code の保存済み設定です。プロンプト、1 つ以上のリポジトリ、そしてコネクタのセットから成ります。一度パッケージ化すれば、Anthropic 管理のクラウドインフラ上で自動的に実行されます。

3 つの構成要素はそれぞれ役割が決まっています。

  • プロンプト。各ステップで承認を求めずに動くため、最重要です。タスク全体と完了条件をプロンプトに持たせる必要があります。
  • リポジトリ。Claude は毎回の実行開始時にこれらをクローンし、その中で作業します。
  • コネクタ。アカウントに紐づく claude.ai の連携機能(Slack や Linear など)。ルーチンはこれらから読み取り、実行中に書き込みも行えます。たとえばサポートをトリアージするルーチンは、Slack チャンネルを読み取り、Linear に課題を作成できます。

ルーチン用のコネクタは claude.ai プラットフォーム側で追加します。MCP サーバーも同様です。ローカルの設定は引き継がれません。

Title: 左側に 3 つのトリガーソース(スケジュール、API、GitHub)を等しい大きさのボックスで示し、矢印が中央の強調されたルーチンに収束し、右側のクラウド実行ボックスへと繋がる図。メッセージは、1 つの保存済みルーチンが 3 通りで起動でき、ノートPCを閉じてもクラウドで実行されるという点。 - Description: 左側に 3 つのトリガーソース(スケジュール、API、GitHub)を等しい大きさのボックスで示し、矢印が中央の強調されたルーチンに収束し、右側のクラウド実行ボックスへと繋がる図。メッセージは、1 つの保存済みルーチンが 3 通りで起動でき、ノートPCを閉じてもクラウドで実行されるという点。

ルーチンは 3 通りで起動できます。スケジュール、API コール、GitHub イベントです。1 つのルーチンに 3 つすべてを組み合わせられます。

ルーチンと /loop の違い

両者は解決する課題が異なるため、/loop/scheduleには違いがあります。

/loop タスクは現在のセッション内に存在します。あなたのマシンで Claude Code が稼働中かつアイドルの間だけ起動し、ターミナルを閉じると停止します。そのため、今まさに監視しているビルドのポーリングに向いています。

/loop など重要なコマンドの詳細は、Claude Code ターミナルのチュートリアルをご覧ください。

ルーチンはクラウドで動作し、任意のセッションから独立して存続します。

 

クラウドルーチン

/loop

実行場所

Anthropic クラウド

あなたのマシン

マシン要件

不要

必要

セッション要件

不要

必要

最小間隔

1 時間

1 分

らに 3 つ目のローカルな選択肢として、デスクトップのスケジュールタスクがあります。ローカルのファイルやツールが必要な作業向けに自分のコンピュータ上で実行します。マシンがスリープだと動きませんが、Claude アプリを開く必要はありません。

これから作るルーチン

考え方は固まりました。次はルーチンに取り組ませる対象が必要です。このチュートリアル用に、私たちは pr-review-demo を作成しました。オープンなプルリクエストが 1 つある小さな Python プロジェクトです。

このプロジェクトには cartlib パッケージがあり、ショッピングカートを扱います。価格は整数セントで保持し、会員割引やまとめ買い割引を適用し、州の売上税を加算して最終請求額を算出します。メインブランチ上のパッケージは正しい状態です。

オープンなプルリクエストでは、無料配送クーポンを追加していますが、意図的に仕込んだ実際のバグも含んでいます。ファイルをまたぐ単位の不一致で、単一ファイルだけでは見えず、2 つのファイル間で値を追って初めて分かります。これにより、以降のチュートリアルでルーチンが取り組む実のある課題が生まれます。

フォークして自身のコピーで一緒に進めてください。使い捨て用で、ここで示すパターンはルーチンを向ける任意のリポジトリに適用できます。

事前準備

Pro、Max、Team、または Enterprise プランの claude.ai アカウントが必要で、Web 上で Claude Code が有効になっている必要があります。ルーチンは claude.ai/code/routines にあります。

また、/schedule コマンドは Anthropic API キーや Bedrock・Vertex・Foundry の認証ではなく、claude.ai のサブスクリプションのログインで認証します。最新の CLI も必要なので、古い場合は claude update を実行してください。

GitHub に関する前提条件も 2 つあります。まず /web-setup がクローン権限を付与します。これはスケジュール実行のルーチンに必要です。次に、別途インストールする Claude GitHub アプリが、後述の GitHub トリガーを有効にします。

/schedule で Claude Code ルーチンを構築する

対象のリポジトリが用意できたら、CLI からルーチンを作ります。任意のセッションで /schedule を実行してください。説明を直接渡すこともできます。

/schedule daily PR review at 9 am

その後、Claude が Web フォームと同じ項目(名前、プロンプト、リポジトリ、環境、コネクタ、スケジュール)を順に確認します。ローカルタイムゾーンでスケジュールを確認し、適切な cron 式に自動変換してくれるので、9 am と入力すれば自分で cron を書く必要はありません。

Title: ターミナルのスクリーンショット。/schedule コマンドの後、Claude が会話形式でルーチンのプロンプト、対象リポジトリ、実行スケジュールを収集し、保存する様子。 - Description: ターミナルのスクリーンショット。/schedule コマンドの後、Claude が会話形式でルーチンのプロンプト、対象リポジトリ、実行スケジュールを収集し、保存する様子。

アカウントにまだ GitHub 連携がない場合、Claude は /web-setup の実行を促します。実行後、/schedule を再度実行して続きに戻ってください。

不在でも動くプロンプトの書き方

このルーチンの成否を分けるのはプロンプトです。

通常のセッションは対話形式なので、進行中に Claude を修正できます。ルーチンにはそれができません。コールドスタートで最後まで走り、確認の質問はできません。タスク名、リポジトリ、完了の定義をプロンプトで明示する必要があります。

次の 2 つを比べてみましょう。最初の例は情報が足りません。

Review the open PR.

どのリポジトリか、レビュー基準は何か、コメントを残す場所はどこか、完了の定義は何か——いずれも不明です。コールドランではその欠落を埋められません。2 つ目のプロンプトはすべてに答えています。

Review the open pull request in pr-review-demo. The cartlib package works entirely in integer cents. Read the checkout flow and the values it pulls from config.py, and check that every amount stays in cents end to end. If any value is mixed in using the wrong unit, leave an inline comment on that line explaining the error and its effect on the customer's total. Then, post a summary comment stating whether the PR is safe to merge.

このプロンプトはリポジトリを特定し、コードが満たすべき不変条件(すべての金額がセント単位)を示しています。重要な 2 ファイルを指示し、完了を「インラインコメント+マージ可否」と定義。これで単独でも狙い通りに実行できます。/schedule がエージェントの指示を尋ねたら貼り付けてください。

コネクタはデフォルトですべて含まれるため、新規のルーチンでもアカウントが接続するすべてに到達できます。現時点ではそれで十分です。後ほど必要最小限に絞ります。

フローを完了すると、Claude がルーチンを保存し、リポジトリ、スケジュール、モデル、次回実行時刻とともに稼働開始を通知します。

Title: 新規ルーチンが稼働中であることを確認するターミナルのスクリーンショット。対象リポジトリ、平日スケジュール、モデル、次回実行時刻、管理や即時実行へのリンクを表示。 - Description: 新規ルーチンが稼働中であることを確認するターミナルのスクリーンショット。対象リポジトリ、平日スケジュール、モデル、次回実行時刻、管理や即時実行へのリンクを表示。

ルーチンは 一覧にも表れます: claude.ai/code/routines詳細ページを開くと、ステータス、リポジトリ、スケジュール、コネクタ、完全なプロンプト、そして今すぐ実行ボタンまで、すべてを 1 か所で確認できます。

Title: Web 上のルーチン詳細ページのスクリーンショット。有効なステータス、対象リポジトリ、平日スケジュール、接続ツール、完全な指示、履歴が空の実行欄と「今すぐ実行」ボタンを表示。 - Description: Web 上のルーチン詳細ページのスクリーンショット。有効なステータス、対象リポジトリ、平日スケジュール、接続ツール、完全な指示、履歴が空の実行欄と「今すぐ実行」ボタンを表示。

待たずに 9 時前に実行したい場合は、今すぐ実行をクリックしてください。

実行結果の読み方

実行は、デフォルトブランチからリポジトリを新たにクローンするところから始まります。コミット済みのものはすべて含まれますが、あなたのマシンにのみ設定したものは含まれません。つまり、チームメイトが見るのと同じ状態でリポジトリを読みます。

完了すると、実行一覧に緑のステータスが表示されます。緑は、インフラエラーなくセッションが実行・終了したことを意味します。ただし、プロンプトのタスクが成功したとは限りません。緑のチェックの裏には、トランスクリプトを見ないと分からない 3 種の失敗が隠れています。

  • 環境によってブロックされたネットワークリクエスト。
  • ルーチンが想定していたが到達できなかったコネクタツール。
  • タスクレベルの失敗(実行は正常終了したが、内容が誤っている)。

Title: 実行履歴のスクリーンショット。完了した実行に緑のステータス表示があり、実行種別のフィルタタブも見える。 - Description: 実行履歴のスクリーンショット。完了した実行に緑のステータス表示があり、実行種別のフィルタタブも見える。

そのため、実行内容を開いて確認してください。任意の実行をクリックすると、完全なセッションとして読めます。Claude が何をしたか、差分の確認、プルリクエストの作成、会話の継続まで可能です。

デモのリポジトリでは、トランスクリプトが不具合の発見を示します。Claude は checkout.py を読み、クーポンが 500 ではなく 5 に設定されていることを見つけます。これは 5 ドルを 5 セントとして適用し、1 注文あたり 4.95 ドルの過剰請求になると説明し、1 行の修正案を提示します。続けて GitHub コネクタ経由で PR にレビューを投稿します。

Title: 開いたルーチン実行のトランスクリプトのスクリーンショット。PR レビューの内容(バグの特定、顧客合計への影響、修正案、PR に投稿された要約コメント)が示されている。 - Description: 開いたルーチン実行のトランスクリプトのスクリーンショット。PR レビューの内容(バグの特定、顧客合計への影響、修正案、PR に投稿された要約コメント)が示されている。

CLI から Claude Code ルーチンを管理する

ルーチンは作成後も同じコマンドから管理します。すべてを確認するには /schedule list、変更するには /schedule update、すぐに起動するには /schedule run を実行します。

スケジュールのプリセットは、毎時、毎日、平日、毎週です。2 時間おきや毎月 1 日などカスタム間隔にするには、まず最も近いプリセットを選び、続けて /schedule update で cron 式を直接設定します。最小間隔は 1 時間で、それより短い間隔は拒否されます。

ルーチンはアカウントの 1 日あたりの実行上限にもカウントされます。リサーチプレビュー中は GitHub イベントに時間あたりの上限もあります。上限を超えたイベントはキューに入らず破棄されます。現在の値はプランによって異なり、 claude.ai/code/routines に表示されます。

CLI で作成できるのはスケジュール実行のルーチンのみです。GitHub や API トリガーの追加は Web アプリで編集してください。

GitHub と HTTP から Claude Code ルーチンを起動する

スケジュールは時計仕掛けでルーチンを起動します。ほかに 2 つのトリガーを使えば、GitHub や自社システムから同じルーチンを起動できます。PR レビュールーチンを、毎晩の実行、新規 PR への反応、デプロイスクリプトからの起動を同時に行うことができます。

両方とも、ルーチンの編集画面( claude.ai/code/routines)で追加します。

GitHub トリガーでプルリクエストに反応する

GitHub トリガーには、購読対象のリポジトリに Claude GitHub アプリがインストールされている必要があります。アプリが未導入の場合は、トリガー設定でインストールを促されます。なお、先ほどの /web-setup はクローン権限を付与するだけです。アプリのインストールや Webhook の配信は行わないため、このステップの代替にはなりません。

アプリのインストール後、トリガーを追加してイベントを選びます。イベントは プルリクエストリリースの 2 系統に分かれ、その中で具体的なアクションを選択します。UI には一般的なもの(PR 作成、PR マージ、リリース公開)がプリセットとして表示され、その他はカスタムで指定できます。

続けてフィルタで絞り込みます。プルリクエストでは、作成者、タイトル、本文、ベースブランチ、ヘッドブランチ、ラベル、下書き状態、マージ済みかどうかでフィルタできます。すべての条件が一致したときにルーチンが起動します。

演算子 matches regex はフィールド全体に対してマッチングします。タイトルに hotfix を含むものにマッチさせるには、.*hotfix.* と書きます。単なる hotfix は、タイトルが完全一致する場合にのみマッチします。

Title: GitHub トリガー設定パネルのスクリーンショット。プルリクエスト作成イベントが選択され、ベースブランチと作成者のフィルタ欄が表示されている。デモリポジトリで新規 PR に反応するように設定する様子。 - Description: GitHub トリガー設定パネルのスクリーンショット。プルリクエスト作成イベントが選択され、ベースブランチと作成者のフィルタ欄が表示されている。デモリポジトリで新規 PR に反応するように設定する様子。

GitHub トリガーを新規プルリクエストで起動するように設定し、メインブランチと特定の作成者でフィルタ。

デモのリポジトリでは、イベントを「プルリクエスト作成」に設定し、フィルタは空のままにします。これで新しい PR ごとに、先ほど書いたレビューがターミナルなしで走ります。ファイルをまたいでクーポンの単位を追跡し、バグの行にインラインコメントを残し、マージ可否を投稿します。 

一致した各イベントは独立したセッションを開始するため、PR が連続しても別々の実行になります。

HTTP 経由でルーチンを起動する

API トリガーを使うと、自社ツールからルーチンを起動できます。トリガーセレクタでAPI を選び、トークンを生成をクリックします。トークンは一度しか表示されず、後から取得できません。すぐにアラートツールのシークレットストアに保存してください。

次に、トークンと text 本文を付けて、ルーチンの fire エンドポイントに POST します。

curl -X POST https://api.anthropic.com/v1/claude_code/routines/$ROUTINE_ID/fire \
  -H "Authorization: Bearer $ROUTINE_TOKEN" \
  -H "anthropic-version: 2023-06-01" \
  -H "anthropic-beta: experimental-cc-routine-2026-04-01" \
  -H "Content-Type: application/json" \
  -d '{"text": "Sentry alert SEN-4521 fired in prod. Stack trace attached."}'

text の値は文字列としてそのまま渡され、パースされません。JSON ではなく平易な文章で記述してください。構造化入力は生テキストとして届き、ルーチンはそれを逐語的に読みます。 

また anthropic-beta ヘッダーは必須です。API は実験的なため、CI に組み込む前に API リファレンスを確認してください。モニタリングツールからこのエンドポイントをアラート時に呼び出し、ルーチンにドラフトの修正 PR を自動で開かせることができます。

Claude Code ルーチンのアクセス範囲を絞る

ルーチンは自律的に動くため、実運用のリポジトリに向ける前に到達範囲を制限してください。ドキュメントでは、4 つのコントロールとして整理されています。

  • GitHub のアイデンティティやコネクタを通じて、ルーチンが誰として振る舞うか。
  • プッシュ可能なブランチ。
  • 使用可能なコネクタ。
  • 環境がネットワーク越しに到達を許すホスト。

各項目を、そのルーチンに本当に必要な範囲に絞り込みましょう。

ルーチンのアイデンティティ

アイデンティティはまず最初に検討します。共有リポジトリでは、チームメイトが真っ先に気づく点だからです。ルーチンが GitHub やコネクタ経由で行うすべては、あなたの名義で表示されます。

コミットやプルリクエストにはあなたの GitHub ユーザーが付き、Slack メッセージや Linear のチケットもリンク済みアカウントを用います。チームメイトはコミットや PR であなたの名前を見るため、ブランチ名やタイトルはルーチン作成であることが分かるようにしましょう。

プッシュ可能なブランチ

ブランチも重要です。実行は権限確認のプロンプトがない完全なクラウドセッションで行われるため、ファイル編集やプルリクエスト作成の前に確認は行いません。

抑止策は、書き込み可能なブランチの制限です。デフォルトでは、Claude は claude/ 接頭辞のブランチにのみプッシュします。これにより、main のような保護・長寿命ブランチへの書き込みを防げます。

リポジトリごとの設定である Allow unrestricted branch pushes を有効にすると、この制限は解除されます。必要なリポジトリにのみ、意図的に有効化してください。

使用可能なコネクタ

コネクタは 4 つの中で最もリスクが高い領域です。claude.ai のコネクタはデフォルトですべて含まれ、含まれるコネクタのツールは書き込みを含め実行中に確認なく使用できます。

したがって、ルーチンに必要なものだけに絞り込んでください。PR レビュールーチンには GitHub だけで十分なことが多いでしょう。メールやカレンダーのコネクタなど不要なアクセスは外し、PR に潜むプロンプトインジェクションが悪用する余地を減らします。

Title: ルーチンのアクセス設定のスクリーンショット。含まれているコネクタを削除できること、実行中に確認なく(書き込みを含む)コネクタツールを使用できるという警告を表示。 - Description: ルーチンのアクセス設定のスクリーンショット。含まれているコネクタを削除できること、実行中に確認なく(書き込みを含む)コネクタツールを使用できるという警告を表示。

ネットワークアクセス

ネットワークアクセスは最後のコントロールです。既定の環境は信頼済みネットワークアクセスを使用し、パッケージレジストリ、クラウドプロバイダ API、コンテナレジストリ、一般的な開発用ドメインなどの組み込み許可リストに到達できますが、それ以外はブロックします。

ブロックされたリクエストは 403x-deny-reason: host_not_allowed を返します。自社サービスに到達させる必要がある場合のみ範囲を広げてください。そうでないと失敗は静かに発生し、目立つエラーではなくトランスクリプト内に現れます。

次に作りたい Claude Code ルーチンのアイデア

ルーチンの作成・起動・範囲設定ができるようになりました。公式ドキュメントの以下の例は、ジョブと適切なトリガーの組み合わせです。

  • カスタムコードレビュー。PR 作成の GitHub トリガー。チームのレビュー基準を適用し、セキュリティ・パフォーマンス・スタイルについてインラインコメントを残し、要約を追加します。デモを実基準に一般化した形です。
  • バックログ整備。平日のスケジュールトリガー。前回以降に作成された Issue を読み、ラベル付与、コード領域に応じた担当者の自動割当、Slack へのサマリ投稿を行います。
  • デプロイ検証。本番デプロイ後に CD パイプラインからの API トリガー。新ビルドに対するスモークチェック、エラーログの回帰スキャン、リリースチャンネルへの go/no-go 投稿を行います。
  • ドキュメントのドリフト検知。毎週のスケジュールトリガー。前回以降にマージされた PR を走査し、変更された API を参照するドキュメントを検知し、ドキュメントリポジトリに更新 PR を作成します。

ルーチンは、無人・反復可能・明確な成果に結びつく作業に向いています。PR レビューのように成功基準をプロンプトに書けるタスクは候補です。リアルタイムの人間の判断が必要な作業は不向きです。

まとめ

ルーチンは、繰り返し作業に費やす時間の使い方を変えます。各タスクをターミナルで実行する代わりに、一度書けば後は結果を確認するだけです。作成した PR レビューはノートPCを閉じていても起動し、都合の良いときに判定を読めます。

Claude Code をさらに深めるには、次のチュートリアルが相性良く併読できます。

Claude Code ルーチンに関する FAQ

Claude Code のルーチンとは何ですか?

ルーチンは Claude Code の保存済み構成です。プロンプト、1 つ以上のリポジトリ、コネクタのセットから成り、一度パッケージ化すれば、Anthropic 管理のクラウドインフラ上で自動的に実行されます。スケジュール、API コール、GitHub イベントで起動できます。

/loop とルーチンはどう違いますか?

/loop タスクはセッションに紐づきます。あなたのマシンで Claude Code が開いてアイドル状態のときだけ動き、ターミナルを閉じると停止します。ルーチンはクラウドで実行され、どのセッションにも依存せずに継続します。そのため、ノートPCを閉じても動作します。最小間隔はルーチンが 1 時間、/loop は 1 分です。

ルーチンはどう作成しますか?

任意の Claude Code セッションで /schedule コマンドを実行します(例:/schedule daily PR review at 9 am)。Web フォームと同じ項目(名前、プロンプト、リポジトリ、環境、コネクタ、スケジュール)を案内し、完了するとアカウントに保存され、claude.ai/code/routines に表示されます。

ノートPCを閉じていてもルーチンは実行されますか?

はい。ルーチンはあなたのマシンではなく Anthropic 管理のクラウドインフラで実行されるため、スケジュールやトリガーによる実行はノートPCを閉じていても完了します。Web から進行を追跡したり、後でトランスクリプトを確認できます。

ルーチンのアクセス範囲はどう制御しますか?

4 つのコントロールでルーチンの範囲を絞ります。振る舞うアイデンティティ、プッシュ可能なブランチ、使用可能なコネクタ、到達可能なネットワークホストです。デフォルトでは、Claude は claude/ 接頭辞のブランチにのみプッシュし、すべてのコネクタが含まれます。実際に必要なものだけにコネクタを絞り、ネットワークの範囲は必要な場合のみ広げてください。

トピック

DataCamp で Claude を学ぼう!

Courses

Claude モデル入門

3時間
10.5K
Anthropic API を用い、AI アプリの構築やビジネスの課題解決に Claude を活用する方法を学びます。
詳細を見るRight Arrow
コースを開始
もっと見るRight Arrow