Claude Codeの「Agent Loop」がOpenClawを代替できない理由

BBetter Stack
컴퓨터/소프트웨어창업/스타트업AI/미래기술

Transcript

00:00:00Anthropicのチームが、一定の間隔でプロンプトを実行できる
00:00:04Claude Code用の「ループ機能」をリリースしました。ネット上では、
00:00:10DiscordやTelegramに接続して、OpenClaudeのようにエージェントとやり取りしたり、
00:00:14中には「ラルフ・ループ」に使っている人もいたりと、大きな話題になっています。
00:00:15しかし、皆さんは使い方を間違えています。このループ機能は、そうした目的のために設計されたのではないからです。
00:00:19彼らがこれを「スケジュール」ではなく「ループ」と呼んだのには理由があります。
00:00:23チャンネル登録をして、その理由を確かめていきましょう。
00:00:29Claude Codeが、100% Claude自身によって書かれているのは周知の事実です。
00:00:34開発チームは凄まじい勢いで新機能をリリースしていますが、通常、期待値(ハイプ)の高さは
00:00:39その機能の有用性と一致するものです。
00:00:40例えば「Claude リモートコントロール」は、非常に便利なので大きな話題になりました。
00:00:43「非同期フック」は、そこまで便利ではないので、あまり騒がれませんでした。
00:00:47しかし、今回の機能は、実際の有用性よりも
00:00:53期待値だけが先行してしまっている初めてのケースです。
00:00:54怒る前に、説明させてください。
00:00:56ここにSonnetで動作している最新のClaude Codeがありますが、
00:01:01これから使うプロンプトには高度なモデルは不要なので、Haikuに変更します。
00:01:06これがループ機能です。分、時間、日単位で間隔を指定できます。
00:01:10最小単位は「分」であることに注意してください。
00:01:13「秒」と入力しても、Claudeはまだ対応していません。
00:01:16次にプロンプトを入力します。ここでは「こんにちはと言って」と入力してみます。
00:01:20Enterキーを押すと、cron createスキルが使用され、スケジュールタスクが作成されます。
00:01:25特定の時間を設定することも可能です。先ほどはすぐに「こんにちは」と言いましたが、
00:01:30「午後6時30分にまたこんにちはと言って」とプロンプトを書いてみます。
00:01:35ここでClaudeは、UTCではなく、Claude Codeをインストールしたマシンの
00:01:39ローカル時間を使用します。
00:01:40この点は覚えておいてください。
00:01:41これを毎日繰り返すタスクに設定します。これだけです。
00:01:45プロンプトには何でも含めることができます。
00:01:47例えば「tweetスキル」を使って、「Claudeに素晴らしい新機能、ループが追加された」という内容の
00:01:52ツイートを3分おきに書かせる、といったことも可能です。
00:01:56プロンプトでファイルを読み込んだり、MCPツールを実行したりもできます。
00:01:59基本的には、Claude Codeでできることはすべてプロンプトに追加可能です。
00:02:02また、cron listツールを使用して、現在実行中のcronジョブを
00:02:07リストアップすることもできます。
00:02:09ジョブの内容を伝えるか、IDを指定することで削除も可能です。
00:02:13また、複数のジョブが同時にAnthropicのAPIに負荷をかけるのを防ぐため、
00:02:17cronジョブの実行時間には「ジッター(揺らぎ)」が設定されています。そのため、
00:02:23毎時のジョブは、正時から6分以内の間に実行されます。
00:02:24確かにこれは非常にクールな機能です。インターバルを設定して
00:02:28WhatsAppやTelegramからメッセージを取得し、
00:02:33本物のAIアシスタントのように返信させることができるため、
00:02:37「OpenClaudeの代わりになった」と言う人もいます。
00:02:38しかし、このループ機能には、OpenClaudeの完全な代替(キラー)とは
00:02:43なり得ない2つの大きな問題があります。
00:02:44まず、設定したタスクを忘れて放置してしまうのを防ぐため、
00:02:49cronタスクは3日で自動的に期限切れになります。
00:02:51Telegramのメッセージを待ち受けるためにループを設定した場合、
00:02:554日目に動いていないことに気づくのは、非常に煩わしいでしょう。
00:02:59もっとも、プラグインなしでClaude Code内でジョブを永続的に実行する方法はあります。
00:03:04それについては動画の後半でお話しします。
00:03:062つ目の問題は、cronタスクがセッションメモリに保存され、ディスクに書き込まれないことです。
00:03:12そのため、このClaude Codeのセッションを閉じると… ターミナルをクリアして
00:03:16新しく立ち上げてみます。
00:03:17そこでスケジュールタスクを表示させると、前のセッションで2つ登録したはずなのに、
00:03:21何も表示されません。
00:03:25つまり、Claudeの更新のためにセッションを閉じたい場合や、
00:03:29「ラルフ・ループ」にこの機能を使いたい場合、セッションを適切にリセットできず、
00:03:34長期実行タスクを継続するには「コンパクション」に頼るしかないため、あまり良い考えとは言えません。
00:03:39では、この機能は何のために使うべきなのでしょうか?
00:03:41それは、何かが変化したために、同じセッション内で
00:03:46手動で何度もやり直さなければならないタスクがある時です。
00:03:49例えば、更新され続けるログファイルの末尾50行を監視してエラーを探したり、
00:03:53ジョブキューの残りアイテム数を確認したり、
00:03:57プロジェクトに新しいIssueがないかチェックしたりする場合です。
00:03:59今後、チームはループにさらに多くのオプションを追加するでしょう。
00:04:03タスクごとに特定のモデルを指定したり、有効期限を変更したりといったことです。
00:04:06ただ、もしClaude Codeでタスクを永続的に実行したいなら、
00:04:11プラグインを使わなくても、技術的にはすでに可能です。
00:04:13デスクトップ版のClaudeで、サイドバーを開き(開いていなければ)、
00:04:17メニューにある「Scheduled」をクリックします。
00:04:19このオプションが表示されない場合は、アプリを更新する必要があるかもしれません。
00:04:23ここからタスクの名前、説明、プロンプトを入力して作成できます。
00:04:27モデルの変更、権限の設定、実行頻度の設定も可能です。
00:04:32これはClaude Code Desktopのプロンプト欄で「schedule」と書くのと同じですが、
00:04:36非常に興味深いのは、cowork内にも
00:04:42「Scheduled」というオプションがあることです。
00:04:43これはClaude Codeのスケジュール設定とは異なります。画面(モーダル)の見た目が
00:04:47違うことや、モデル変更に詳細オプションのクリックが必要な点だけでなく、
00:04:52Claude coworkがサンドボックス環境で動作するのに対し、
00:04:59Claude Codeはローカルマシン上で動作するからです。
00:05:00つまり、Claude Codeでタスクをスケジュールすればローカルのファイルシステムが使われますが、
00:05:05Claude coworkの場合はサンドボックス内で行われます。
00:05:10どこにスケジュールタスクを置くべきか判断する上で、これは重要です。
00:05:12デスクトップ版でタスクを追加する利点は、もちろん、
00:05:16PCの電源が入っていてアプリが開いている限り、永遠に実行されることです。
00:05:22ですが、私のようにターミナルのClaude Codeでタスクを管理したいという方は、
00:05:26Kenneth氏が作成したプラグインが有望そうです。反響があれば
00:05:31今後試してみようと思います。
00:05:33他に期待されているものといえば、OpenAIが先週
00:05:39GPT 5.4をリリースし、大きな盛り上がりを見せています。
00:05:41詳細を知りたい方は、James氏が解説しているこちらの動画をチェックしてみてください。

Key Takeaway

Claude Codeのループ機能は短期的なタスク監視には適しているが、有効期限とメモリ制限のためOpenClawのような永続的なエージェント運用には向かない。

Highlights

Claude Codeに一定間隔でプロンプトを実行できる「ループ機能」が追加された

ループ機能は分・時間・日単位で指定可能だが、最小単位は1分で秒指定は不可

実行時間にはAPI負荷分散のための「ジッター(揺らぎ)」が設定されている

OpenClawなどの完全な代替にならない理由は、3日の有効期限とセッション限定のメモリ保存にある

永続的な実行が必要な場合は、デスクトップ版Claudeの「Scheduled」機能が推奨される

Claude Code(ローカル)とClaude cowork(サンドボックス)では実行環境が異なる

Timeline

新機能「ループ」の概要と世間の反応

AnthropicがClaude Code向けにリリースした、一定間隔でプロンプトを自動実行する「ループ機能」について紹介しています。ネット上ではDiscordやTelegramとの連携など、エージェント運用への期待から大きな話題となっています。しかし、投稿者はこの機能が「スケジュール」ではなく「ループ」と呼ばれている理由に着目し、世間の期待と実際の設計意図に乖離があると指摘します。特に有用性が高い機能ほどハイプが先行しやすい現状について、過去の機能と比較しながら説明しています。本セクションは、この機能が誤解されている可能性を示唆する導入部となっています。

ループ機能の具体的な使い方と仕様

実際の操作画面を用いて、ループ機能の設定方法を詳しく解説しています。間隔は分、時間、日単位で指定できますが、現時点では「秒」単位の指定には対応していません。ローカル時間に基づいた特定時刻の実行や、tweetスキル、MCPツールとの組み合わせが可能であり、cronツールを使ってジョブのリスト表示や削除も行えます。また、APIへの負荷を軽減するために「ジッター」という数分程度の実行時間の揺らぎが設けられている点も重要な仕様です。これにより、ユーザーは柔軟な自動化タスクを構築できる仕組みになっています。

OpenClawの代替になれない2つの制約

ループ機能がOpenClawのような常駐型エージェントの代わりにならない致命的な欠点を2つ挙げています。第一に、設定したタスクは放置防止のために3日で自動的に期限切れとなり、永続的な実行ができません。第二に、ジョブがセッションメモリにのみ保存されるため、ターミナルを閉じると設定がすべて消失してしまいます。これらの制約により、長期的なメッセージ待ち受けや「ラルフ・ループ」のような複雑な運用には不向きであることがわかります。投稿者は、この機能が本来は同一セッション内での反復作業を想定していることを強調しています。

ループ機能の正しい活用法と代替手段

この機能が真価を発揮するのは、ログファイルの監視やIssueのチェックなど、同一セッション内での状態変化を追うタスクであると解説しています。もし永続的な実行を望むのであれば、デスクトップ版Claudeのサイドバーにある「Scheduled」機能を利用すべきだと提案しています。デスクトップ版ではタスク名やモデル、権限を細かく設定でき、PCが起動している限り実行を継続することが可能です。また、Claude Codeがローカルマシンで動作するのに対し、coworkはサンドボックス環境で動作するという、実行環境の違いについても注意を促しています。用途に合わせて保存先や環境を使い分けることが、効果的な自動化の鍵となります。

外部プラグインの可能性と他社動向

標準機能の制約を克服するための手段として、サードパーティ製のプラグインについても言及しています。Kenneth氏が開発中のプラグインなど、CLI環境でタスクを管理したいユーザー向けの選択肢があることを示唆しています。動画の最後では、競合であるOpenAIがGPT 5.4をリリースしたことによる業界の盛り上がりについても触れています。今後のアップデートでモデル指定や有効期限の変更オプションが追加される可能性についても期待を寄せています。全体を通して、新機能の限界を正しく理解し、目的に応じたツール選択を行うことの重要性を説いています。

Community Posts

View all posts