AIエージェントのための良いオーケストレーションシステムは見当たらない
著者は、AIエージェントのオーケストレーションの試みは数多くあるものの、実際の作業では原始的で分割されたターミナル方式が使われていると指摘。環境分離、細かな制御、レビューのしやすさが欠けており、完全な信頼か過度な慎重さかの二者択一を強いられている。理想的なシステムは、エージェントにタスクを委任しつつ、いつでもコードをレビュー・介入できる柔軟性を持つべきだと論じている。
先日、オフィスで一人の同僚が6つのClaude Codeインスタンスをそれぞれ別のウィンドウで起動しているのを見かけました。この光景は、AIエージェントのオーケストレーションに関する多くの試みを思い起こさせます。バイラルになったリポジトリでは、ビデオゲームのキャラクターのように多数のエージェントが表示され、触れるとそのエージェントとチャットできるものもあります。しかし、これらのソリューションはどれも実際には役に立ちません。単なる見せかけです。結局のところ、人々は分割ターミナル方式に戻ってしまうのです。
環境問題に対する真の解決策はありません。私はすべてのデータが保存されているマシンで claude --dangerously-skip-permissions を実行することに抵抗を感じます。各エージェントをDockerコンテナで実行したいと考えています。Claude Codeのイメージやタスクをトリガーするライブラリは確かにありますが、広く採用された解決策は見当たりません。
多くの人がエージェンティックワークフローや同時実行される多数のエージェントについて語っていますが、実際に並行してエージェントを実行し実作業を行っている人々は、最も原始的な方法——わずか数個のターミナル——を使っています。これには多くの問題が伴います。例えば、ワークスペースはどうするのか?各エージェントにワークツリーを設定できますが、彼らの作業をレビューしたい場合はどうすればいいのか?
現在のソリューションの大きな問題の一つは、すべてがうまくいくことを前提としていることです。エージェントを制御し、介入する簡単な方法がありません。Opus 4.8は素晴らしいですが、コードを直接見て一つの変数を変更する方がはるかに簡単(かつ安価)な場合もあります。
現在、テクノロジー業界には2つの大きなグループがあるように思えます:
- コードをブラックボックスとして扱い、何があってもコードに触れたり見たりしないグループ。
- AIを使用するが、非常に制御された、または「保守的な」方法で使用するグループ:少数のエージェントを実行し、それらを監視し、コードを監視する。彼らはAIを本当に信頼していない。
最初のグループは難しい問題が発生したときに大きな損失を被りますが、2番目のグループは最初のグループに遅れをとっています。はい、確かにAIに盲目的に任せることは非常に脆いアーキテクチャを生み出し、数ヶ月後には保守不可能な混乱状態になると私は思います。しかし、企業やクライアントはあなたの成果で判断し、あなたがどれだけの仕事をしたか、あなたがどのような問題を回避したかよりも重視します。そのため、良くも悪くも、2番目のグループは遅れをとり、「非生産的」と見なされています。
勝利に導く方法は、エージェントに作業を委任しつつ、自らコードを読んで「手を汚す」用意があることのようです。
しかし、そのためのライブラリは見当たりません。つまり、コントロールを委任しつつ、いつでも介入して何が起こっているかを確認できるようなライブラリです。
Zedエディターを試しましたが、それはかなり優れていますが、まだ「コードファースト」のアプローチであり、VS Codeプラグインもサポートしていません。Vibeコーダーたちは、物事を構築するのに「プログラミングを知る必要はない」ということを多くの場合正しく理解し始めていますが、介入が最善である重要な瞬間があり、その代償を非常に大きく払っています。
コードは依然として重要ですが、毎回注意深く監視するほどではありません。正しく設計し、AIがあなたを理解すれば、おそらく良いコードを書くでしょう。Linusでさえ、AIがかなり良いレベルに達していると認めています。
コードは二次的なものになりつつあると思います。これにより、CursorとReplitだけが探求している可能性が開かれています:スマートフォンでのコーディング開始。しかし、それは別の話題です。
重要なのは、コードを重要でありながら主要ではない役割にする解決策がないということです。現在のソリューションやライブラリは、エージェントをワークスペースの一部として扱い、その逆ではありません。後者の方が最も合理的なアプローチになりつつあります。