00:00:00ちょうど今週、Claudeチームがスケジューリング機能の大幅な
00:00:05アップグレード版となる「Routines」をリリースしました。カスタムコネクタや
00:00:10環境を備えたプロンプトを、Anthropicのクラウド上で実行でき、
00:00:16POSTリクエストや、PR作成などのGitHubイベントで起動できます。
00:00:17しかし、これはn8nのようなAIワークフローツールの終わりを意味するのでしょうか?
00:00:23そして、実際のコストはどのくらいかかるのでしょうか?
00:00:24チャンネル登録をして、さっそく詳細を見ていきましょう。
00:00:29Anthropicは、マネージドエージェントからUltraプランまで、自社のクラウド
00:00:33インフラを活用した機能を次々とリリースしているようです。
00:00:37今回のRoutinesは、Claude Codeでタスクを実行する3つの方法を追加します。
00:00:43セッション内タスクを実行する「Loops」、特定の日時に定期的にタスクを実行する
00:00:49「Schedules(ローカル/リモート)」、そしてリモートスケジュール機能を含み、
00:00:55GitHubイベントやAPIのPOST呼び出しにも対応した「Routines」です。
00:01:012つの例を使って、どのように動作するか見ていきましょう。
00:01:041つ目は、3つのニュースレターからデータを取得し、毎日午前9時に
00:01:09Slackで最高の手記事を教えてくれるシンプルな自動化。2つ目は、
00:01:16プルリクエストが作成されるとすぐに自動的にレビューを行い、
00:01:21改善案をインラインコメントで追加するタスクです。
00:01:22これらをRoutinesでどう実現するか見てみましょう。
00:01:24最初のRoutineは、Claude Codeを使ってターミナルから作成します。
00:01:28「/schedule」コマンドを使います。
00:01:31ここから、ステップに沿って独自のRoutineを作成できます。
00:01:34「Create New」を押すと、いくつか質問が表示されます。
00:01:38代わりに、すでに内容が決まっている場合は、「/schedule」コマンドの後に
00:01:41作成したいRoutineのプロンプトを直接入力することもできます。
00:01:46「毎日午前9時に、JS Weekly、React Status、Node WeeklyからRSSを取得し、
00:01:53動画ネタに良さそうな記事を10個選んでSlackで送るトリガーを作成して」と入力します。
00:01:58すると、Claudeがタイムゾーン、環境、プロンプトの下書きをセットアップします。
00:02:03完了すると、デフォルトでリモートトリガーが作成され、
00:02:06ブラウザやClaudeアプリで確認できるようになります。
00:02:09必要ならローカルトリガーも作成できるはずですが、今は
00:02:12リモートRoutineを見てみましょう。
00:02:13Routinesオプションの中にありました。クリックすると、毎日午前9時に実行され、
00:02:18Claude Codeの指示に従ってSlackコネクタが使用されているのがわかります。
00:02:24ただ、いくつか気に入らない点もあります。
00:02:26まず、このRoutineには不要なGitHubリポジトリが
00:02:31自動的に接続されています。
00:02:32なので、ここから削除して変更します。
00:02:34また、プロンプトを編集して、水平線(区切り線)を使わないように指示します。
00:02:39Slack内でブロックのバリデーションエラーが発生する原因になるからです。
00:02:43Claude CodeでRoutineを作成し始める前に、コネクタを準備しておくことと、
00:02:47自律的に(ハンズオフで)動作するため、許可を求める必要がないような
00:02:51プロンプトを書くことが重要です。
00:02:57幸い、Claude Codeが自動的にプロンプトを書いてくれたので、
00:02:58自分で細かく見直す必要はありませんでした。
00:03:02さて、次に進む前に、デフォルトではなく
00:03:03「newsletters」という独自の環境を使っている点に注目してください。
00:03:06これには理由があります。以前失敗したことがあるからです。
00:03:09真面目な話をすると、JavaScript WeeklyなどのRSSのURLは、
00:03:12ClaudeのBashツールでcurlを実行したり取得したりすることが許可されていません。
00:03:17Bashに対するすべての外部ネットワークリクエストを防ぐ
00:03:23セキュリティレイヤーがあるためです。
00:03:29これを回避するために、ここをクリックして新しい環境を作成し、
00:03:33「Custom」に変更して、許可するドメインのリストを追加しました。
00:03:37Bashの代わりにウェブ取得ツールを使えば、その制限はありません。
00:03:41リクエストがAnthropicのインフラを経由するからです。
00:03:45プロンプトインジェクションが起きないよう、追加のセキュリティがあるのでしょう。
00:03:49準備ができたので、閉じてこのRoutineのテスト実行をしてみます。
00:03:54ワークフローが開始されました。こちらで進行状況を確認できます。
00:03:59何が起きているか詳しく見てみましょう。
00:04:00リポジトリがあればクローンされますが、今回は設定していないので、
00:04:03クラウドコンテナが起動し、RSSフィードの取得が始まりました。
00:04:06Bashのcurlツールを使って3つのURLすべてで実行されましたが、
00:04:12DNSの問題が発生したようです。
00:04:13結局ウェブ取得ツールで取得していますが、このアプローチを知っておくのは良いことです。
00:04:17最新の記事を取得中ですが、Node Weeklyだけ失敗したようです。
00:04:21さっき試したときはうまくいったのですが。
00:04:24OK、動画に最適な10個の記事が見つかりました。
00:04:28一番下までスクロールすると、Slackの「newsletters」チャンネルに
00:04:32メッセージが送信されたことがわかります。
00:04:33Slackを確認すると、記事へのリンクが含まれたメッセージが
00:04:37届いています。とてもいい感じですね。
00:04:39さて、ここからはRoutinesの価格設定についてお話しします。
00:04:42現在Routinesはリサーチプレビュー版で、Pro、Max、Team、
00:04:46Enterpriseサブスクリプションのユーザーのみが利用でき、通常のセッションと
00:04:51同様にサブスクリプションの使用量制限から差し引かれます。
00:04:52ただし、Routinesには別途1日の上限が設定されています。
00:04:57Proサブスクリプションの場合、24時間で5つのRoutineまでとなっています。
00:05:01これはAnthropic側が、大量のRoutineを実行されるのを防いだり、
00:05:05自社インフラでの利用状況を把握して、リソースが
00:05:10過剰に消費されないようにするための措置だと思われます。
00:05:13しかし、先ほどのテスト実行は、この1日5回の制限には
00:05:18カウントされません。
00:05:19同じRoutineをもう一度実行して、それを証明してみましょう。
00:05:232回実行されたことがこちらで確認できます。
00:05:26サイドバーを閉じます。
00:05:28少しそのまま走らせてみます。
00:05:30動いているところで、停止させます。
00:05:32停止後、2つのRoutineが実行されたことがわかります。
00:05:35手動でトリガーされましたが、1日の制限に対するカウントは
00:05:391つのままです。
00:05:40次に、Claudeのデスクトップアプリ内でRoutineを作成します。
00:05:44理由は後で説明しますが、ここにあるのがわかりますね。
00:05:47あらかじめ作成しておいたのですが、手順をお見せします。
00:05:50まず、ここにある「Routines」をクリックして、
00:05:54「New Routine」のリモート版を選択します。
00:05:55名前とプロンプトを入力します。
00:05:57このRoutineはPR作成時に自動レビューするためのものなので、
00:06:01対象となるリポジトリ(今回は私のdotfiles)を選択します。
00:06:06トリガーは、Schedule、GitHub event、APIの3つから選べます。
00:06:10Claude CodeのCLIからは「Schedule」しか設定できません。
00:06:13GitHubイベントやAPIを使いたい場合は、デスクトップアプリを
00:06:18使う必要があります。だから今これを使っているんです。
00:06:19「GitHub event」を選択し、APIが公開されたらそちらも可能です。
00:06:22トリガーを追加し、既存のコネクタ画面を閉じます。
00:06:25これでRoutineの作成はほぼ完了ですが、重要な工夫として
00:06:31このリポジトリから取得したカスタムスキルを追加しました。
00:06:35クラウド上のClaude Codeは新しいインスタンスを作成するため、
00:06:40ローカルのスキルや設定、フックにはアクセスできません。
00:06:44それらにアクセスさせるにはリポジトリ経由で行う必要があり、
00:06:48このRoutine用リポジトリを通じて行いました。
00:06:51中には「.claude」フォルダがあり、そこにはsettings.jsonと、
00:06:56このRoutineで使いたいPRレビュー用のスキルが入っています。
00:07:00このスキルはフックをトリガーするだけのものです。
00:07:02Claudeに戻ってsettings.jsonを見ると、このリポジトリが
00:07:07Claude Codeのクラウドインスタンス内に存在するようにフックを設定しています。
00:07:12Routine用リポジトリ内のすべてのスキルを、クラウド版Claudeの
00:07:17スキルディレクトリにコピーする仕組みです。
00:07:20これを閉じて実際のRoutineを開き、プロンプトを確認してみましょう。
00:07:24確実に実行されるよう、いくつかのガードレールを追加しています。
00:07:29テスト実行ですでに問題があったので、
00:07:32今回は一発でうまくいくことを願って再挑戦します。
00:07:35dotfilesリポジトリで新しいプルリクエストを作成すると、数秒後に
00:07:40PRレビューのウェブフックが走り出します。
00:07:42画面を広げて見やすくします。プロンプトが実行されましたね。
00:07:46プルリクエストを取得し、リポジトリがクローンされたか確認します。
00:07:502つのリポジトリがクローンされ、PRレビュー用のスキルが認識され、
00:07:54そのスキルがPRに対して実行されています。
00:07:58GitHubトークンを追加し忘れていました。スキル内で明示的に求めていたものです。
00:08:03ですが、代わりにGitHub MCPツールが使われたので良かったです。
00:08:06差分が最小限であることを認識し、PRレビューが完了しました。
00:08:09PRに戻ると、Claudeが「自動レビュー完了、問題なし」という
00:08:13コメントを追加しているのがわかります。
00:08:16残念ながら、これはテスト実行ではなかったので、1日の制限である
00:08:205回のうち1回を消費してしまいました。
00:08:21つまり、1日に5回しか自動PRレビューができないことになりますが、
00:08:2620x Maxプランなら15回まで実行できるようです。
00:08:29今後、ClaudeのRoutinesをもっと活用するかと言われれば、
00:08:32その可能性は非常に低いです。
00:08:33内容に対して、非常に高価だからです。
00:08:36そうですね。
00:08:37資金が潤沢で、複数の20x Maxアカウントを契約しているなら、
00:08:43いつでもRoutineを走らせるでしょう。
00:08:44しかし現状では、Hermesエージェントでウェブフックを設定したり、
00:08:48GLM 5.1やGPT系の安価なモデルでMulticaを使うほうが、
00:08:55ずっと安上がりです。
00:08:56ただ、HermesやMulticaでゼロから構築するよりも、
00:09:01Routinesの方が圧倒的に簡単に作成できることは認めます。
00:09:05自作する場合、LLMの助けを借りてもかなりの時間がかかるでしょう。
00:09:09たとえお金があったとしても、Routinesがすべての自動化に向いているわけではありません。
00:09:14先ほど見たように、Routineに1つのプロンプトを与えれば、
00:09:19すべてをこなしてくれるはずですが。
00:09:20技術に詳しければ、リポジトリにスキルやプロンプトを追加して、
00:09:25それらをクローンして連鎖させることで、より複雑なRoutineを
00:09:30作ることも可能でしょう。
00:09:32それでも、コストの高さはどうしても避けられません。
00:09:34そこは妥協できない点です。
00:09:36ただ、Anthropicが最近追加しているこれら一連のクラウド機能は、
00:09:41より大きな何かに繋がっているような予感がします。
00:09:43それが何なのか、とても楽しみです。
00:09:45クラウド機能といえば、クラウド版マネージドエージェントを使って
00:09:50数分でエージェントをデプロイする方法を知りたい方は、
00:09:55ぜひこちらの動画をチェックしてください。