プログラミング・スキルアップ

Claude Code Routines完全ガイド|定期実行の新機能2026

読了時間: 約11分

Anthropicが2026年4月14日、Claude CodeにRoutines機能を追加した(research preview)。設定したプロンプトがAnthropicのクラウドで実行され、Macがスリープでも、ラップトップを閉じても、ブラウザを終了しても動き続ける。今までの/looppmsetと仕組みが根本から違う。

発表から2日、日本語の速報記事は10本以上出揃ったが、cron記法の具体例、プロンプト設計の勘所、OS横断の使い分け判断まで踏み込んだ記事はまだ少ない。本記事はそこを埋める。

この記事でわかること

  • Web UI / CLI / Desktop の3経路の設定手順
  • 5フィールドcron記法の実用レシピ
  • 対話用プロンプトを自律実行用に書き直すコツ
  • Pro/Max/Teamプラン別の実行回数上限
  • 従来の/loopやpmset+launchdとの使い分け判断

Routinesで何が変わったか|3つの核心

大量の機能紹介を並べても頭に残らない。効く順で3点だけ。

変化 意味
クラウド実行 Anthropicのインフラで動く。ローカルPCの電源・スリープ状態に依存しない
3種のトリガー スケジュール・GitHubイベント・APIの3つを同じプロンプトで共存可能
リポジトリとコネクタを継承 セッション中に使っているMCPサーバー・権限設定をそのまま引き継ぐ

特に3つ目が見落とされやすい。既存のMCPサーバー(GitHub MCP、Slack MCPなど)を設定済みなら、Routinesもそれを自動で使える。MCPサーバーおすすめ2026で紹介した7本をすでに入れていれば、Routinesの威力はその日から跳ね上がる。

3つのトリガーの使い分け

Routinesは1つのRoutineに対して複数トリガーを併用できる。どれがどんな用途に向くかを表に整理する。

トリガー 起動条件 向く用途 最小間隔
Schedule cron式または固定時刻 毎朝のIssue整理、週次レポート 1時間
GitHub Webhook PR・Issue・push・リリース等 PRレビュー、ラベル自動付与、セキュリティチェック イベント発生時のみ
API HTTP POSTで即発火 Datadogアラート、Slack経由の呼び出し、既存ツール連携 制限なし(ただしプラン上限あり)

判断軸はシンプル。「いつ動くべきか」が時計で決まるならSchedule、GitHubの何かが起きた時ならWebhook、外部システムから叩きたいならAPI。筆者の感覚では、初めの1本はSchedule型が一番手応えが出る。

設定手順|Web UI・CLI・Desktopの3経路

Routinesは3つの経路から作成できる。最速はWeb UIだが、既存のCLIワークフローがあるならCLI発行が楽。

経路A|Web UIから作成(最速)

  1. claude.ai/code/routinesにアクセス
  2. 「Create Routine」をクリック
  3. プロンプト入力・対象リポジトリ選択・トリガータイプ選択
  4. スケジュールなら「Daily / Weekly / Hourly」のプリセットから選ぶ
  5. 「Save」で完了。数秒で有効化される

経路B|CLIから作成(cron式指定にはこちら)

# セッション中に対話式で作成
/schedule

# 既存Routineのcron式を更新
/schedule update my-routine-name "0 9 * * 1-5"

# 登録済みRoutine一覧
/schedule list

Web UIのプリセット(Hourly/Daily/Weekly)では表現できない複雑な頻度を設定したいときは、このCLI経由一択。例えば「平日のみ9時と18時」なら0 9,18 * * 1-5

経路C|Claude Desktopから作成

DesktopアプリにもRoutinesタブが追加されている。設定内容はWeb UIと同じ。普段Desktopを使っている人は、そのままの動線で作れる。

cron記法リファレンス(5フィールド)

ここが日本語記事でほぼカバーされていない部分。Routinesは標準5フィールドcron式を受け付ける。

┌─── 分 (0-59)
│ ┌─ 時 (0-23)
│ │ ┌─ 日 (1-31)
│ │ │ ┌─ 月 (1-12)
│ │ │ │ ┌─ 曜日 (0-6, 0=日曜)
│ │ │ │ │
* * * * *

全フィールドで以下が使える: *(全て)/ 単一値5 / ステップ*/15 / 範囲1-5 / リスト1,15,30。ただしL(月末)W(平日最寄り)?やエイリアスMONは非対応。

目的 cron式
毎日朝9時 0 9 * * *
平日のみ朝9時と夕方18時 0 9,18 * * 1-5
月曜朝の週次レビュー 0 8 * * 1
毎月1日の月次レポート 0 9 1 * *
2時間ごと 0 */2 * * *

最短間隔は1時間。*/30のように30分間隔を書くとシステム側で拒否される。ここは/loop(最短1分)との明確な違い。

プラン別の実行回数と料金

プラン 月額目安 1日の実行回数上限 向く人
Free 0円 利用不可
Pro 約3,000円 5回 個人開発者・副業
Max 約15,000円 15回 フルタイムのClaude Code利用者
Team / Enterprise 1ユーザー3,000円〜 25回 チーム運用、組織利用

「1日の実行回数」はRoutineの数ではなく、発火回数でカウントされる。Routineを3本登録して、それぞれ毎日1回ずつ動くなら合計3回。GitHub Webhook経由でPRごとに動く場合、PRが多い日はあっという間に上限。Team/Enterpriseのでも25回は意外と少ない。大量に回すならAPIトリガーより、Schedule+まとめ処理が現実的。

Routines用プロンプト設計のコツ

対話でうまく動いたプロンプトをそのままRoutinesに貼ると失敗する。人間がいない前提で書き直す必要がある。

対話型 → 自律型への書き換え3原則

1. 確認を求めない

「この内容でよろしいですか?」「続けますか?」と書かれたプロンプトは止まる。Routinesはユーザーが待機していない。確認を求めない断定口調に書き直す。

2. 完了条件と失敗条件を明示

「〇〇できたら△△を投稿」「〇〇が見つからなければ何もしないで終了」と、分岐を明文化する。対話なら「あれ、動かないけど?」で済むが、自律実行ではログを見るまで気づかない。

3. 成果物の形式を固定

「Markdownで箇条書き3項目」「SlackメッセージはH1+3段落+絵文字なし」と出力フォーマットを固定する。毎日動くものが日によって形式が違うと、受け取り側の処理が壊れる。

実例|毎朝のIssue整理プロンプト

あなたはリポジトリXの朝の整理担当です。以下を順に実行してください。

1. 過去24時間に新規作成されたIssueを全て取得
2. 以下のルールでラベル付け:
   - UI関連 → "ui"
   - API関連 → "api"
   - 判断不能 → ラベル付けせずコメントに「要分類」と残す
3. 完了後、Slack #dev-morning に以下のフォーマットで報告:
   - 処理件数
   - ラベル別内訳
   - 要分類の件数(あれば)
4. Slackに投稿できなかった場合はその旨をIssueのコメントに残す

確認は不要です。上記を即座に実行してください。

実運用で効く3つのユースケース

CASE 1

朝のバグ修正PR

平日朝7時に起動。issueラベル"bug-priority"の先頭1件を読み、修正を試み、動けばドラフトPRを作って通知する。出社時にはレビュー待ち状態。

CASE 2

PR自動レビュー

GitHub Webhookで/auth配下を触るPR発行を検知。影響範囲・脆弱性懸念を自動コメント。レビューの1周目を機械に預ける。

CASE 3

アラート自動トリアージ

DatadogのアラートをAPIトリガーで受ける。ログとデプロイ履歴を突き合わせ、一次切り分けレポートをSlackに投稿。オンコール担当の初動を5分短縮。

/loop・pmset・Task Schedulerとの使い分け

定期実行の選択肢は複数ある。全部同じに見えて、得意領域が違う。

方式 実行環境 最短間隔 向く用途
Routines Anthropicクラウド 1時間 Claudeに頼む定型作業、外出中の自動化
/loop ローカルClaude Codeセッション 1分 セッション中の短時間ポーリング
pmset + launchd (macOS) ローカルMac(起こして実行) 1分 ローカルファイル操作、専用アプリ起動
Windows タスクスケジューラ ローカルWindows 1分 ローカル処理、Excel/Office連携
Linux cron ローカルLinux 1分 サーバー運用、バックアップスクリプト

Routinesが強いのは「Claudeの判断を挟む作業」と「ローカル環境に依存したくない作業」。逆にローカルファイルを直接操作する、特定アプリを開くといった処理はpmset+launchdやWindowsタスクスケジューラの独壇場だ。/loopは最短1分間隔なので、秒単位の監視や短時間ポーリングが要るときだけ残す。

落とし穴と制限事項

触ってみて引っかかった点を正直に5つ。

  1. タイムゾーン設定の落とし穴|Web UIの時刻は「ローカルTZ」として解釈される。CLI経由でcron式を入れるとUTCで解釈される仕様の違いがある。朝7時のつもりが夕方4時に走っていたという事故が初日に多発した。
  2. 実行ログの確認場所|claude.ai/code/routines の該当Routine詳細ページに「Runs」タブがある。失敗時のエラーメッセージはここを見ないと分からない。
  3. MCPサーバーの権限継承|Routineは作成時点で有効なMCPサーバーを引き継ぐ。後でMCPを追加した場合、Routineには自動では入らない。再保存が必要。
  4. プロンプトが長すぎると失敗|対話型で使っていた10,000字級のシステムプロンプトをそのまま貼ると、コンテキスト圧迫でツール呼び出しが止まることがある。Routinesは指示を短く、明示的に。
  5. Windows・Linuxユーザーも恩恵を受けられる|Routines自体はクラウドで動くため、クライアントOSを問わず使える。Claude CodeのCLIさえ入ればWindows/WSL/Linuxからも同じ体験。

よくある質問

Q. Free プランでも使えますか?

使えない。Pro(約3,000円/月)以上が必要。

Q. Routineが動いているか確認するには?

claude.ai/code/routines の該当Routine詳細ページ「Runs」タブで実行履歴とログが見られる。ここに成功/失敗のステータスと実行時のツール呼び出しが並ぶ。

Q. Mac以外(Windows・Linux)でも使える?

使える。Routinesはクラウドで動くため、クライアントOSを問わない。Claude CodeのCLIが動く環境ならWindows/Linux/WSL問わず同じ。

Q. 最短何分間隔まで設定できますか?

1時間。*/30のような30分間隔はシステム側で拒否される。短い間隔が必要ならセッション内の/loop(最短1分)を使う。

Q. 既存のMCPサーバーは使えますか?

使える。Routine作成時点で有効化済みのMCPが自動で引き継がれる。ただし後から追加したMCPはRoutineを再保存するまで反映されない。

Q. 料金は個別課金ですか?

個別課金ではない。契約プランの使用量枠を消費する形。Pro/Max/Teamの月額内に含まれる。

まとめ|まず1本、朝9時のIssue整理から

筆者の最初の1本は、平日朝9時のIssue整理Routineだった。動き始めて3日目、寝起きでMacを開くと前日のIssueに全部ラベルが付いていて、「ああ、これが本当の自動化か」と腑に落ちた。定型作業を機械に預けられる感覚は、試すまで言葉で説明されてもピンとこない。

pmsetやlaunchdでも似たことはできたが、仕込みの手間が違いすぎた。Routinesは15分で最初の1本が動く。まずはPro以上のプランを持っている人なら、claude.ai/code/routinesを開いて「Daily 9am」プリセットで1本作るところから始めてほしい。

エージェント時代の自動化を体系立てて学ぶ一冊

Routinesのようなエージェント型自動化の背景にある設計パターンを、実装例とともに学びたい人向け。

LangChainとLangGraphによるRAG・AIエージェント実践入門(Amazon)

※Amazonのアソシエイトとして、当サイトは適格販売により収入を得ています。