>_tech-draft
Mastra AIのアイコン
Mastra AI
動画公開日
タイトル

Running 100 AI Agents in Parallel: Superset Cofounder Kiet Ho

再生時間

12分 18秒

SuperSet徹底解説:AIコードエージェントオーケストレーションの新常識

ポイント

  • SuperSetは、複数のAIコードエージェントとGitワークツリーを効率的に管理する開発ツールです。
  • 開発者が直感的に並行作業を進め、複雑な開発ワークフローの生産性を最大化できるよう支援します。
  • 将来的にはタスクに応じたエージェント自動生成で、大規模な開発オーケストレーションを実現します。

はじめに:AIエージェントとコードオーケストレーションの時代

今日の「AI Agents Hour」では、コードエージェントのオーケストレーションという、まさに今週のビッグトピックについて深く掘り下げていきます。この議論は先週、社内でのとあるペアリングコールから始まりました。開発者が自然にSuperSetを使っているのを目撃したのがきっかけで、私はそのことについてX(旧Twitter)に投稿しました。すると、別のエンジニアから「他のエンジニアとのペアリング中にConductorが画面共有でビルドされているのを見るのが好きだ」という意見が寄せられ、SuperSetとConductorという二つの異なる製品を巡る論争が巻き起こったのです。私たちは双方のツールを支持しつつ、それぞれの魅力について探っていきます。

本日は、SuperSetの共同創設者であるKeat氏をお招きし、SuperSetが誕生した経緯、その進化、そして開発ワークフローにどのような革新をもたらしているのかについて詳しく伺います。

SuperSet誕生の物語:開発者の苦悩から生まれた解決策

SuperSetの共同創設者であるKeat氏は、前職のY Combinator出身のスタートアップで、Satiaという最高のエンジニアと働いていました。Satiaは当時、非常に先進的な開発環境を構築しており、「6つのCloud Code」を駆使し、Gitのワークツリーを狂ったように使いこなしていました。当時は珍しかったこのワークツリーの概念も、今ではConductorやSuperSetのようなツールのおかげで、より一般的になりつつあります。

Keat氏自身は、tmuxのようなツールを使いこなしたり、複雑なコマンドを記憶したりするのが苦手だったといいます。複数のエージェントを切り替えながら長時間の計画タスクを実行する中で、「これらを効率的に管理できるツールが必要だ」と感じていました。そこで、以前から存在していたConductorを試しましたが、Keat氏にとっては、自分の慣れたターミナルを使い、最新のCloud Codeを扱い、tmuxなしでエージェント間を頻繁に切り替えるといった自身の開発スタイルに完全にフィットするものではありませんでした。特に、SDKが遅れていると感じる部分があったといいます。こうした背景から、Keat氏は自身の理想を追求し、SuperSetの開発に着手しました。

SuperSetの進化と「100エージェント」への挑戦

SuperSetはどのようにして進化してきたのでしょうか。最初の機能は、Gitワークツリーの管理でした。多くのエージェントやターミナルタブを一度に管理するという、UX上の大きな課題に取り組むことから始まりました。初期のSuperSetは、Cloud Codeを実行し、フックを設定し、ターミナルを使用しながらワークツリーを作成するというシンプルな機能を提供していました。

そこからSuperSetは大きく発展しました。現在では、ファイルエディター、自動化機能、Cloud連携、そしてMCPs(Multi-Context Programming)といった機能が追加されています。SuperSetの究極の目標は、常に「どうすれば100のエージェントを効率的に実行できるか」という一点にありました。

この大きな課題を解決するために、SuperSetはいくつかの要素に分解して取り組んでいます。

  • エージェントの自動生成: 大量のエージェントをいかに効率的に立ち上げるか。
  • コードレビューの効率化: 生成された多くのコードをどのようにレビューするか。
  • ユーザーの負担軽減: ユーザーが圧倒されないように、UXとインフラの両面からサポートする。

100のエージェントを個人のマシンで実行することは現実的ではありませんし、手動で100のエージェントを立ち上げることも不可能です。そのため、SuperSetは課題に基づいてエージェントを自動的に生成・管理する方向へとロードマップを進めています。

SuperSetによる開発ワークフローの変革:デモンストレーション

SuperSetは、Gitワークツリーと複数の開発スレッドを管理する上で、非常に強力なツールであるとチーム内でも認識されています。多くの開発者は、最初は一つの開発ループから始め、次に二つ、そして最終的には5~10、さらには100といった複数のタスクを同時にこなせるようになることを目指します。SuperSetは、この多岐にわたるタスクを直感的かつ生産的に管理するための未来のツールだと感じられます。

SuperSetの簡単なデモ

SuperSetは非常にシンプルなインターフェースを持っています。ユーザーはまずサイドタブから操作を開始します。

  1. 新しいワークスペースの作成: 特定のタスクを念頭に置き、新しいワークスペースを作成します。これにより、ファイルツリーが表示されます。
  2. ワークツリーの起動: メインブランチからクローンを作成し、設定スクリプトを実行します。このスクリプトはSuperSetの設定でカスタマイズ可能で、依存関係のインストールやブランチのフォークなど、様々な初期設定を行うことができます。
  3. 並行作業: ワークツリーが実行されている間にも、Command + Dでターミナルを分割し、Cloud Codeを実行できます。例えば、「サイドバーのアイコンを修正する」といったタスクを並行して進めることができます。その間にも、さらにCloud Codeを起動したり、他の作業を進めたりすることが可能です。
  4. 変更のコミットとPR作成: 作業が完了すると、変更点がSuperSetのインターフェースに表示されます。ここからステージング、コミット、プルリクエストの作成までの一連の作業を行うことができます。

SuperSetは、パワフルなツールでありながら、既存のワークフローを大きく変えることなく、スムーズに導入できるよう設計されています。必要であれば、従来のターミナルやエディター(例: ZコマンドやホットキーCommand + O)を使ってファイルを編集することもできます。

将来の展望:自動化されたエージェントオーケストレーション

これまでの手動でのワークスペース作成には物理的な限界がありました。例えば、一つのタスクを実行中に別の5つのタスクを立ち上げるといった操作は、かなりの労力を伴います。しかし、SuperSetの今後のパイプラインでは、このプロセスを大幅に自動化する機能が導入される予定です。これは「Super Duper Beta」版のMCP(Multi-Context Programming)で提供される機能です。

このMCPにより、ユーザーは「タスクを作成して自分に割り当てる」や「3つの新しいワークスペースを作成する」といった指示を出すだけで、システムが自動的にタスクを管理し、必要なワークスペースを作成し、Cloud Codeを起動し、その結果をユーザーに報告するようになります。これは、手動で1つのワークツリーで複数のサブエージェントを動かすのではなく、100ものワークツリーを立ち上げ、並行して異なるタスクを割り当てて実行できるような、オーケストレーションの次のレイヤーを実現します。問題を分解し、並行して進められるトラックにディスパッチすることで、開発効率を飛躍的に向上させることが可能になります。

まとめ

SuperSetは、複雑なコードエージェントのオーケストレーションと、Gitワークツリーによる多岐にわたる並行開発を強力にサポートするツールです。開発者の体験を向上させ、生産性を最大化することを目的としています。誕生の背景には、既存のツールの限界と、より直感的で効率的なワークフローを求める切実なニーズがありました。そしてその進化の過程で「100エージェント」という野心的な目標を掲げ、自動化とスケーラビリティを追求し続けています。将来的には、タスク管理からワークスペースの立ち上げまでを自動化する高度なオーケストレーション機能が加わり、開発者はより本質的な問題解決に集中できるようになるでしょう。

AIエージェントを活用した開発が加速する現代において、SuperSetのようなツールは、エンジニアリングの未来を形作る重要な存在となるに違いありません。

参考動画: https://www.youtube.com/watch?v=TmVPzxODKRk