この動画は、Agent Zeroの開発者であるVanが、新しいオープンソースAIエージェントSpace Agentを紹介する内容である。Space Agentはブラウザ上のフロントエンドで動作し、自分自身のUIやウィジェットをその場で生成・変更できる点が特徴である。従来のエージェントがバックエンドやMarkdownファイルの更新に留まりがちだったのに対し、Space Agentはユーザーとの対話画面そのものを動的に作り替え、ダッシュボード、ノートアプリ、調査ツール、ゲーム、音楽シーケンサーなどを即座に構築できる。さらに、トークン効率、ローカル実行、Gitによるタイムトラベル機能、管理モードによる自己修復性、Codexを活用した開発手法など、AIエージェント時代の新しいOS的発想と開発パラダイムが語られている。

自己更新するAIエージェントという新しいパラダイム
これは基本的に、初の自己更新型エージェントです。他のエージェントはMarkdownファイルを更新したり、スキルを作成したりはできます。でも、ユーザーに何をすべきか見せるためのUIを本当に自分で作ることはできません。だからこれは、自己改善し、自己更新するエージェントの新しいパラダイムのようなものです。
そうですね。このエージェントは、コミュニケーションの面ではるかに動的です。エージェントに何かを見せてと伝えると、本当にそれを見せてくれます。
では皆さん、今日はSpace Agentの開発者であり、Agent Zeroの創設者でもあるVanと一緒にいます。そして今日は、まったく新しいプロダクトであるSpace Agentを発表します。
こんにちは、David。
では早速入りましょう。これは何なのか、そして人々がどう使えるのか説明してください。
ここで私がやりたかったのは、エージェントが自分自身のすべてのレイヤーにアクセスできるようにすることでした。これは他のエージェントによくある問題です。たとえば、PythonやNode.jsでどこかのVPS上で動いているエージェントがあり、それとWhatsAppやTelegramを通じてやり取りするとします。そこにはエージェントが動作する複数のレイヤーがありますが、たいていの場合、エージェントが影響を与えられるのはそのうち一つ、あるいは多くても二つだけです。
バックエンドに何かをインストールしたり、そこで何かを実行したりはできます。でも、WhatsApp上で何かを表示する方法そのものを本当に変えることはできません。WhatsAppのインターフェースによって制限されているからです。画像を送ることはできます。メッセージを書くこともできます。でも、基本的にはそれだけですよね。
つまり、ユーザーにとってUIが非常に限られているということですね。
そうです。Web UIを使う場合も同じです。たとえばAgent Zeroには非常に充実したWeb UIがあります。それでも、エージェントがWeb UI上で何か特別なことをしたいと思った場合、バックエンドで画像を生成してフロントエンドに送るか、バックエンドのレベルで自分自身を変更して、それからユーザーにページをリロードしてもらう、といったことが必要になります。
ブラウザからアクセスできるエージェントであっても、結局は実際にそのエージェントが存在しているレイヤーに制限されているわけです。
では、Space Agentの話にすぐ入りましょう。
そうですね。そこがSpace Agentの大きな違いです。Space Agentはフロントエンド側、つまりJavaScriptランタイム上のクライアントサイドで動作しています。だからエージェントは、自分が表示されているページそのものを実際に変化させることができます。
では、どのように使うのか。私たちは主に、Spacesと呼んでいるものの中で使います。
つまり、すみません、少し遮りますが、これは基本的に初の自己更新型エージェントということですね。他のエージェントはMarkdownファイルを更新したり、スキルを作ったりします。でも、何をすべきかユーザーに見せるためのUIを本当に自分で作ることはできません。だからこれは、自己改善し、自己更新するエージェントの新しいパラダイムのようなものです。
そうです。このエージェントは、コミュニケーションの面ではるかに動的です。エージェントに何かを見せてと伝えると、本当にそれを見せてくれます。
たとえば、イメージをつかむための事前構築済みサンプルがいくつかあります。価格、チャート、ニュース、日次ダッシュボードなどです。ブラウザ内でゲームをレンダリングして、それをプレイすることさえできます。つまり、何をしてほしいと伝えても、SpaceとWidgetの仕組みによって、必要に応じて何でもレンダリングできます。
では、多くの人が始めることになるであろう、空のSpaceから始めましょう。
これは空のSpaceです。ユーザーが初めてSpace Agentに入ったときに提示されるものです。もしかすると、ブラウザの中でエージェントが動く最大の利点から話し始めるべきだったかもしれません。その最大の利点とは、実際にブラウザ内でエージェントを動かせることです。
セットアップ不要で、とても簡単ですね。
そうです。Space Agentを試してみたい場合は、私たちのGitHubを見ることができます。そこにはTry live nowという大きなボタンがあります。それを押すと、私たちのWebサイトspace-agent.aiに移動します。そうです。すべてオープンソースで、もちろん無料です。そこで簡単に試せます。
もちろん、今の時代、人々は知らないかもしれませんが、大企業はManosやPerplexity Computerのようなものを出していて、それらは完全にクローズドソースです。だからSpace Agentはオープンソースであるだけでなく、無料で試すこともできます。
そうです。たった2クリックで一時的なゲストアカウントを取得でき、Space Agentを無料で試せます。使いたいLLMプロバイダーのAPIキーを設定するだけです。
では、何か伝えてみましょう。
エージェントのコミュニケーション方法を二つ見せられます。単純に、プラハの天気は何ですか、と聞くことができます。するとチャットで返答するはずです。その後で、それをウィジェットで見せて、と伝えられます。
今はチャットの最小化モードを使っています。なので、エージェントからの回答だけが見えています。履歴を見たい場合は、フルモードに展開できます。
最初は、単にプラハの天気は何ですかと聞いただけなので、エージェントはただ返答しました。そして、それを見せてと伝えると、天気に基づいたウィジェットを生成しました。
文脈として、今どのモデルを動かしているんですか。
Opusです。
なるほど。これは全部カスタムJavaScriptなんですよね。
そうです。エージェントが実際にどう動作しているのか、今見せられます。これはかなり面白い部分です。これはコミュニケーションの生の履歴です。エージェントにはこのように見えています。
ユーザーメッセージがあります。プラハの天気は何ですか。そして、これが生のLLMレスポンスです。フォーマットもJSONもツール呼び出しもありません。これはエージェントが生成するテキストです。
まず、私に向けた返答を生成します。プラハの天気を取得しています、というような内容です。これがチャットバブルや会話履歴に表示される部分です。そして、その後にこの特別なトークンを使います。その後ろに書かれたすべてのJavaScriptが、ブラウザ内で自動的に実行されます。
これは非常にトークン効率が良いということでもありますよね。
そうです。たとえば天気チェックは、最初の返答を含めて97トークンでした。そして、このようなYAML形式でレスポンスを受け取ります。これもトークン効率が良いです。そしてJavaScriptトークンを使わずに、単純に私に返答します。これで会話ループが終了します。
つまり、エージェントはChatGPTのようにプレーンテキストで返答します。返答用の特別なツールはありません。特別なフォーマットも、追加フィールドもありません。エージェントが単に返答する必要がある場合は、そのまま返答します。レスポンスに余分なトークンは一つもありません。
JavaScriptを使う必要がある場合は、これを使います。これは2トークンです。アンダースコアが1トークン、JavaScriptがもう1トークンで、その後にJavaScriptが続きます。ここでもJSONエスケープなど、追加トークンを増やすものは必要ありません。可能な限り効率的です。
そしてウィジェット生成にかかったのは、たった280トークンほどだったことがわかります。
そうですね。最先端モデルがどんどん高価になっている時代です。これは明らかにOpusでも見てきましたが、今ではGPT-5.5 Proでさえ、出力100万トークンあたり180ドルくらいだと思います。人々はトークノミクスをもっと気にするようになるでしょう。どのハーネスやどのエージェントが、最高のモデルを最も効率よく動かせるのかを見るようになるはずです。推論を動かすために毎月何千ドルも使いたくはないですからね。
そうですね。また、ここのシステムプロンプトも非常に面白いです。私はその中の1行も書いていません。最初のプロンプトのアウトラインだけを作り、その後Codexで自動研究を設定して、プロンプトを反復的に改善させました。常に3つの新バージョンを作らせました。一つは少しだけ変更する保守的なもの、一つは中規模の変更、もう一つは完全に大胆なものです。そして、それをテストするための完全なテストフィットもたくさん作らせました。
その後、私も手動でテストしました。このシナリオでは失敗すると伝え、そのシナリオ用の新しいテストケースを作らせ、ハーネスに組み込ませました。数日間、そのように反復していました。これはたぶんバージョン250くらいです。どんどん最適化し続け、私たちのケースでトークン効率が高く信頼できるようになりました。
では、Space Agentでできることをもう少し見せましょう。
完全な例を作ることもできますし、完全なユースケースを作ることもできます。ただ、まずは今日私がやっていたことから始めたいです。ちょっとしたショーケースです。
まずノートアプリから始めました。一つのSpace上に複数のウィジェットを作った場合、それらがどう協調できるかを見たかったのです。ここにはリスト用のものが一つあります。
ちなみに、Spaceは非常に動的です。すべての要素をリサイズできますし、動かすことも、並べ替えることもできます。エージェントにそれをやってもらうこともできます。このグリッドは実質的にほぼ無限です。だからエージェントは巨大なダッシュボードや、大規模なデータビューを作ることができます。
これがわかっていない人向けに言うと、つまり、どんなユースケースでも、自分が欲しいUIをゼロから設計できるということです。アプリをゼロからコードで書き、サーバーにホストする必要はありません。Space Agentはブラウザ上で動き、これらはすべて数秒分のJavaScriptにすぎません。
私が考える未来のOSの姿は、アプリや組み込みインターフェースがほとんど存在しない世界です。たとえばエージェントに、メールを確認して、優先度順に並べて表示して、と伝えれば、エージェントはメール一覧のウィンドウを描画できます。そうであれば、並べ替え用のボタンなどなぜ必要なのでしょうか。何かを移動したり、削除したり、返信したりするボタンがなぜ必要なのでしょうか。エージェントに伝えれば、画面をその場で書き換えられるのです。
最初の例はノートアプリでしたが、本当にきちんとしたノートアプリを作ってくれました。フォルダを管理し、名前を変更し、編集できます。ノートを視覚的に編集できますし、必要ならMarkdownビューに切り替えることもできます。コピー&ペースト、画像、添付ファイルなどにも対応しています。私の基準では、完全に動作するノートアプリです。
そしてローカルブラウザのもう一つの利点は、データが自分のものであり続けることです。どこかに送信する必要はありません。もちろん無料版を使っている場合、バックエンドはホストされています。ですから、オープンソースのリポジトリやネイティブアプリを使うこともできます。とはいえ、すべてがブラウザ内にあることのもう一つの利点です。
そうですね。
仕組みを簡単に説明できます。ブラウザ単体では、ホストOS上のファイルを管理できません。これはブラウザのセキュリティ上の制限です。そこで、Node.jsで非常に薄いバックエンド層を用意し、ユーザー権限、ユーザーアカウント、ファイルストレージを管理しています。
ネイティブアプリをダウンロードすると、これらはすべて単一のアプリにバンドルされます。つまり、私たちのサーバーなどとは一切通信しません。バックエンド層もフロントエンド層も、すべて一つのアプリケーションに組み込まれています。
自分でホストする場合は、ローカルマシン上でもVPS上でも、どこかにホストして、ブラウザから接続します。その場合、両方を同じマシンで動かすこともできますし、バックエンドをどこかのVPSで動かすこともできます。
これにより、複数ユーザーを持つ選択肢も生まれます。Space Agentは最初から、同じサーバー上で多数のユーザーが動作することに最適化されています。また、ユーザーやグループの権限管理、ユーザーグループ間で共有される機能なども含まれています。
そして三つ目の方法が私たちのデモサイトです。この場合、バックエンドは私たちのサーバー上にあります。ただし、永続化したいものに使うことは誰にも勧めません。デモサーバーですから、ファイルはいずれ削除されます。私の一番のおすすめは、ネイティブアプリをダウンロードすることです。すべてがローカルに残ります。すべて自分のマシン上にあります。
今日もう一つ試したのは、監視ダッシュボードです。ランダムな公開IPカメラをいくつか選びました。どうやら全部アメリカにあるようです。でも、自宅や所有物など、監視したいカメラがあるなら、エージェントに伝えるだけで、このようなダッシュボードを簡単に作れます。
ちなみに文脈として、これを作るのにどれくらい時間がかかったんですか。人によっては、これは長くかかると思うかもしれませんし。
これは速かったです。実際に何かが映っている適切なカメラを選ぶのに数分かかりました。エージェントは最初、静止しているように見えるカメラをランダムに選んだので。でも、このもの自体は、たぶん1分か2分くらいで生成されました。
なるほど。
ノートアプリはもう少し時間がかかりました。指示が多かったですし、何度か編集もしました。名前変更をもっとシームレスにしたかったですし、Markdownではなく、見たまま編集できるエディタをデフォルトにしたかったのです。だからかなり編集しました。たぶん10分くらいかかりました。
そして、こうしたダッシュボードこそ、Space Agentが本当に得意とするものにつながっています。それは他のものをオーケストレーションすることです。UIが非常に動的になれるため、他のシステムを監視したり、制御したりするための完璧なハーネスになります。
たとえば、どこかで10個の他のエージェントが動いていて、それらすべてを一つのダッシュボードに接続し、その上に別のエージェントを置いて、あなたの代わりにそれらと通信させることができます。これは本当に多くの時間を節約できます。
ここでは、Space Agentを、私のローカルマシン上で動いているAgent Zeroインスタンスに接続しました。Space Agentと同じく、このマシン上で動いています。そしてここで二つのことをしました。
エージェントに、Agent Zero APIを使って通信する新しいチャットインターフェースを作るよう伝えました。だからここでhiと送ると、Dockerコンテナ内のAgent Zeroが応答するのを待ち、そのメッセージを私に返します。
そしてこれは実際には埋め込みブラウザウィンドウです。つまり、完全なAgent ZeroのWeb UIです。APIや近道は一切使っていません。これは完全なブラウザであり、エージェントは今でもブラウザとして制御できます。実際、ブラウザ制御は本当に得意です。
だから、Agent Zeroの設定を確認して、アップデートがあるか見て、と言えます。
つまり、これはおそらく最速のブラウザ操作でもあるわけですね。
そうですね。これがどれほどよく、どれほど速く動くのか、実は私も驚きました。何かを開発するとき、私はいつも最小構成から始めます。実行に必要な非常に基本的なものだけを用意し、それがどこで失敗するかを見ます。そして、それを補うために少しずつ追加していきます。
通常、あらゆるものの最初のプロトタイプは非常に速いです。中に何も入っていないからです。すべてが非常にシンプルで、速く動作します。でも、その後ここで失敗する、あそこで失敗する、メモリが必要だ、などとわかってきます。そしていろいろ追加し始め、最終的には必然的に遅くなります。
でもここでは、非常に驚いたことに、基本的に何も追加する必要がありませんでした。最初からそれほどよく動いたのです。
これがどう動くかというと、私たちはページをエージェント向けに、こういう形式へ転写しています。エージェントはページのHTMLを見ていません。完全なDOMも見ていません。すべてが参照形式に転写されます。たとえば、ボタンとその番号、ここにテキストがあり、これはエラー用のボタン51です、というようにです。
つまり、エージェントは51番のキャンセルボタンがあり、それがエラーとして赤色にスタイルされているとわかります。入力欄も見えますし、スライダーも見えます。インタラクティブなものは何でも見えます。ページ上のすべてのテキストも見えます。
そのため、ボタンをクリックしたいときは、click button 25のようなコマンドを送るだけです。そしてページの新しい転写を受け取り、何が変わったかについての情報を得ます。おそらくここで見られます。はい、これがエージェントの動作です。19トークンだけで、self updateを開いています、space browser click browser number one button number 47と私に伝えています。それだけです。そしてこのようなレスポンスを得ます。
これはあなたが最適化したんですか。それとも、これも別の自動リサーチですか。
一部は両方です。でも、これは主に自分でやりました。インターネット上でHTMLをMarkdownに転写するライブラリを見つけ、それをAIの助けを借りて大幅に編集しました。すべてのインタラクティブ要素に参照番号が割り当てられ、テキストはそのままテキストとして残る形式を生成するようにしたのです。
その後、反復を続けました。多くの最適化を行い、多くのエッジケースを解決する必要がありました。Webという技術は、一見それほど難しそうには見えないかもしれません。でも、Webサイトをクロールするのは非常に難しいです。iframeやshadow DOMのように、自然に閉じられているものなど、非常に多くの異なる要素がネストされています。
shadow DOMのようなものは、そもそもスクレイピングを防ぐために作られています。だから、私たちはブラウザレンダラー自体にいくつかのハックを注入する必要さえありました。Webサイト上のすべてのものを自動的に開き、スクレイプ可能にするためです。
つまり、かなり多くの作業がありました。一部はAI、一部は私です。でも最終的には、とても見事に動いています。
見てわかるように、今は13,600トークンです。つまり、追加したのはさらに2,000トークンくらいだけです。
ああ、2,000ですね。
そうです。最初からだと4,000ですが、その前にSpaceで何かをしました。これは、もう一つの仕組みのおかげです。私たちはこのようなものを履歴に保持しません。ページの状態が過去のものになったら、もう必要ないからです。
混乱しますからね。
そうです。混乱しますし、大量のトークンも消費します。これはたぶん2,000トークンくらいあります。そこで私たちは、このtransient spaceを使っています。つまり頻繁に変化するコンテキストは、常にプロンプトの最後、最後のキャッシュブレークポイントの後ろに置きます。そうするとキャッシュされず、会話の各ターンで置き換えられます。
エージェントがウィジェットを編集するときは、常にウィジェットのソースコードの最後の状態を読み込み、それをtransientに置きます。そうすれば、エージェントは自分が扱っているウィジェットのソースコードを常に見られます。でも、それが履歴に残って、以降のすべてのターンでトークンを消費し続けることはありません。
まさにそこが複利的に効いてくるところです。エージェントにページを見せるために2,000トークンを読み込むこと自体は問題ではありません。でも、それを履歴に残すと、2,000トークンを永久に追加したことになります。そしてエージェントが5ページクリックすれば、会話の各ターンに10,000トークンを追加したことになります。
そうですね。
そして削除し始めると、キャッシュが壊れます。それも別の問題です。
そうですね。履歴のどこかを触るとキャッシュが無効になり、またより多く支払うことになります。だからこの方法で、価格を、つまりトークン消費を可能な限り低く保ち、最高の効率と長く持続するコンテキストウィンドウを維持しています。
動的UIをその場で作り替える実演
もっとライブでの変更をやるべきだと思います。どれだけ簡単に更新できるかを、人々は本当に見る必要があります。カスタムUI要素やカスタムフロントエンドを作るだけでなく、ページやチャットの組み込み部分も変更できるということです。だから、ゼロから始めてもいいですし、事前構築済みのものを一つ選んで修正してもいいです。お任せします。
そうですね、やりましょう。研究用のものをやってみるのがいいかもしれません。これもかなり面白いです。今日作ったものです。エージェントが、エージェントへ直接戻るように接続されたUIを作れるかを見たかったのです。つまり、UIがエージェントと通信でき、エージェントもUIと通信できるかを確認したかったのです。
それで、この研究ハーネスを作りました。すでにAgent ZeroとGPT-5.5でテストしました。Space Agentがここで行ったのは、研究入力ウィジェットと研究出力ウィジェットを作成することです。そして、このSpace用の特別な指示も作りました。
これももう一つの特徴です。各Spaceは、そのSpace用のカスタム指示を持つことができます。そのSpaceが何らかの意味で特別なら、ここでエージェントに指示できます。
では、簡単なテストをしましょう。たとえばClaude Mythosについてです。Claude Mythosを作り、Claude Mythosとは何か、どう違うのかを説明してください、とします。新しいコンテキストで始めるためにチャットをクリアできます。そしてStart researchをクリックすると、エージェントは実際にUIからメッセージを受け取り、更新を始めます。
今はブラウザを最小化しておきます。エージェントはここで、各ステップごとに研究テンプレートを更新し始めます。計画、ソース収集、メモ、要約を更新し、テンプレートと指示に基づいて研究内容のMarkdownファイルを作成します。
今すでにブラウザを使っています。BBC上のAnthropicの記事らしきものに移動しています。おそらくあと一つか二つのWebサイトを確認するでしょう。
つまり、どんなワークフローやタスクでも、そのために欲しいUIを作れるわけですね。WhatsAppやターミナル、あるいは事前定義されたWeb UIに制限されるのではなく。
では、これを最小化します。もうすでにいくらか進捗があります。フルで待つ必要はありません。エージェントは研究ファイルを更新し続けますが、すでに良さそうです。AnthropicのAIモデル、特にサイバーセキュリティに焦点を当てたモデル。制限付きリリース、デュアルユースのリスクプロファイル。なるほど、わかっているようですね。そして完了しました。自分が何をしているかわかっているようです。
では、何を変えましょうか。どう修正しますか。
研究出力に、もう少しフォーマットや色を追加してみてもいいかもしれません。
いいですね。PDFに変換する、というのもできますね。
いいですね。それをやりましょう。
PDFにエクスポートするボタンを追加してください。それを印刷出力のようなものに変換するボタンです。どうなるか見てみましょう。
チャットには3つの異なる状態があるんですよね。これは中間のもので、それから展開されたものがあり、横にあるものもある。
はい。これは単にチャットを隠したいときのものです。
そうですね。
私は普段コンパクトなものを使っています。画面上ではたいてい多くのことが起きているので、履歴全体に邪魔されたくありません。今エージェントが何を言っているかに主に関心があります。
さて、フォーマットが少し増えました。表やリンクがあります。PDFはどうなるでしょう。なるほど、印刷出力に変換しています。
そうですね。でも、これは私のネイティブの印刷ダイアログのようです。おそらく見せられないでしょうが、ここでPDFとして保存できるはずです。
フォーマットは変えたいですね。このフォントはあまり好きではありません。でも、研究内容のPDFです。
ここで改めて強調すべき主な点は、PDFとしてエクスポートする機能を追加したということだと思います。このSpaceには最初からその機能はありません。
そうですね。私はそれを当然のように受け止めています。
そうですね、あなたは当然のように受け止めています。この3、4週間、ずっとこれに時間を使ってきたからです。でも、これは事前構築されたツールではありません。他のエージェントとは完全に違います。これは事前構築されたUIコンポーネントではありません。すべてゼロから作られています。だから自分のSpaceは完全にユニークなものにできます。
実際にここで見られます。これがそれを実現したコードです。いや、これはread widgetですね。こちらです。これが、ダウンロードPDFを追加し、フォーマットを追加するためにエージェントが使ったコードです。
そして、これの素晴らしい点は永続性です。私が離れて戻ってきても、まだここにあります。ページを更新しても、まだここにあります。通常、エージェントがHTMLページのDOMそのものを編集していた場合、ページを更新すると消えてしまいます。
しかし、これらのウィジェットの仕組みでは、エージェントはウィジェットそのものを作るのではありません。ウィジェットを作る関数を作ります。つまり、ウィジェットを再作成できる関数を保存しているのです。そして、このボタンやページのリロードによって、いつでもそれを再作成できます。すると以前とまったく同じものになります。
では、もう一つゼロからやってみましょう。さまざまなUI要素をたくさん入れてみて、人々が本当に見られるようにしたいです。まずKanbanボードを追加するところから始めるのはどうでしょう。
わかりました。Kanbanボードを作りましょう。何か具体的な指定がありますか。それとも例でいいですか。
Trello風で、とてもカラフルにしてください。
わかりました。Trello、カラフル。あとで機能を追加していくので、拡張しやすく作ることを念頭に置いてください。では見てみましょう。これは少し時間がかかるかもしれません。数百行のコードになると思います。
でも、Opus 4.7より速いモデルを使うこともできますよね。
もちろんです。これを開発し始めたときは、GPT-5.4 miniを使っていました。それほど賢くはなく、Claude SonnetやClaude Opusほど信頼できるわけではありませんでしたが、ほぼ即時に近い応答がありました。
言いたかったのは、5.4 miniにhiと伝えると、helloという返答が、おそらく300ミリ秒くらいで返ってくるということです。
そうですね。でもテストや評価でわかったことは、実はGemma 4のほうが優れていたということですよね。
そうです。少なくとも同等でした。
それはかなりすごいですね。Gemma 4はローカルで使えるわけですから。
そうです。さて、ここにKanbanボードがあります。ドラッグできますか。いや、名前変更できますね。なるほど、これはチケットだからですね。列をドラッグしようとしていました。
いいですね。
よし。
では、まったく違うものを追加してみましょう。株価グラフのチャートなどはどうでしょう。
わかりました。Nvidia、Apple、そしてGoogleの株価チャートですね。
Googleですね。
GoogleはAlphabetでしたっけ。たしかそんな感じですよね。
ああ、そうですね。Alphabetだと思います。
わかりました。Alphabet、はい、Googleです。価格をどこから取ってくるのか気になります。多くのAPIは制限されているでしょうから。Yahoo Financeはうまくいくと思います。Agent Zeroは通常PythonでYahoo Financeを使います。
これはまた、トレーニングデータにあるものをキャプチャするという概念でもあると思います。将来のエージェントは、そういうものをますます学習するようになるからです。
そうですね。
そしてそれは、技術スタックのようなものです。いつもNextとSupabase、みたいな。
うまくいったようです。ちなみに、これはブラウザ内でエージェントを動かす利点の一つです。コードはデータセンターのVPSではなく、あなたのブラウザで実行されます。だからロボットだという理由でAPIにブロックされにくいのです。
エージェントがVPSからマルチステップタスクを実行しようとする場合、それは大きな不利点ですね。
そうです。
多くのWebサイトは、データセンターから来るIPアドレスをブロックしますからね。
その通りです。
では、まったく別のことをしましょう。Snakeゲームを作りましょう。
Space Agentの主な制限は何でしょうか。どんな用途には使わないですか。
Linuxパッケージのインストールのような、OSアクセスが必要なものには使わないでしょう。低レベルのことをする必要がある場合です。たとえば、サーバーを実行することはできません。Nodeアプリケーションをテストするためにサーバーを起動する必要がある場合などは、おそらくAgent Zeroを使うほうがよいです。Agent Zeroならそれをすべてやってくれます。独自のLinuxシステムを持っていますから。
また、バックグラウンドジョブのような用途には使わないでしょう。現時点ではまだそれがありません。これはフロントエンド上で動くため、フロントエンドが実行されている必要があります。だからコンピュータの電源を切って、バックグラウンドで何かをさせることはできません。VPS上でホストしたとしても、エージェントは依然としてフロントエンド上で動き、実行されます。
将来的にバックグラウンドジョブの方法を見つけるかもしれません。あるいはやらないかもしれません。すでにそれができるエージェントはたくさんありますからね。すべてを複製する必要はないのかもしれません。様子を見ます。人々が何を望むかを見ていきます。
視聴者にとって役立つのは、ぜひ試してみて、何が好きか、どう使うかをコメントしてもらうことですね。そして何が定着するかを見ましょう。
まさにそうです。今のところ、私たちはこれの可能性の5%くらいしかわかっていないと思います。ここではランダムなことをしていますし、私も開発を始めてからこの4週間ずっとランダムなことをしています。でも、Agent Zeroの例や研究の例を除けば、ここであまり実用的なことはまだしていません。単に、まだわかっていないのです。
新しいパラダイムですからね。
そうです。完全に新しいものです。私自身もまだ理解しきる必要があります。他の人にとってはさらに難しいだろうと想像できます。
さて、壊れたSnakeゲームのようです。餌しか見えません。いや、餌も見えません。そして入力もキャプチャしてしまっています。これは間違っています。これを閉じます。尻尾も餌もなく、フォーカスされていないときでも入力キーをキャプチャしています。フォーカス時のみ。もう一度やってください。
これらのSpaceは永続的なんですよね。つまり、人々は仕事用、遊び用、別の用途用に、それぞれ別のSpaceを持てるわけですよね。
基本的には、あらゆる単一のユースケースごとに持てます。生活カテゴリをSpaceにまとめる必要すらありません。何百ものSpaceを持てます。それらは何のコストもかかりません。ディスク上のフォルダにすぎないからです。そして、これらのウィジェットなどはすべてテキストファイルに保存されています。だから1つのSpaceあたり数キロバイトにすぎません。
よし、見てみましょう。はい、キーボードも使えます。問題ありません。
いいですね。音楽ユースケースも試してみてはどうでしょう。ミニシンセビートのようなものです。
はい。今日すでにやりました。どこでしたか。ステップシーケンサーです。
いいですね。ここにはステップシーケンサーがあって、異なる拍に異なる楽器を追加できます。サウンド用のコントロールボードがあり、ギターのフリープレイもあって、シーケンサーに合わせてジャムできます。
これを開発するのに、おおよそどれくらいかかりましたか。
うーん、たぶん20分くらいです。シーケンサーから始め、その後ノブを追加し、さらにギターを追加しました。シーケンサーは速かったです。ワンショットでした。だから作るのに1分か2分くらいだったと思います。その後、保存や読み込み、タブの長さ変更などの機能を追加し始めました。それから、このノブのような視覚的にいいものを追加したくなりました。そして、コードをかき鳴らせるようにギターを実験しました。
ピアノロールを追加するように言ってみてもいいかもしれません。
やってみましょう。
Opus 4.6で似たようなものをテストしましたが、ワンショットでできました。
今何をするのか、私にもまったくわかりません。別のウィジェットを作るのか、それともシーケンサーに何か追加するのか。見てみましょう。
これは、AIにそこまで詳しくない人たちにAIの力を感じてもらう最も簡単な方法の一つでもありそうですね。私のチャンネルやAgent Zeroのチャンネルを見ている人たちは、興味を持つ人々の上位1%のような存在です。無料版ChatGPTユーザーではありません。だから、まだ多くの人がこうしたコーディングエージェントの力を知らないんです。
あ、出てきました。いいですね。高いオクターブでは少し位置がずれているものもありますが、修正可能です。グラフィックを見てください。
そうですね。
おお。
何がありますか。
いや、今は直りました。
1、2、3オクターブです。
展開したら直りましたね。
不思議ですね。
だから、技術者でもAIに詳しいわけでもない友人や家族を連れてきて、Space Agentに英語で入力するだけで何が可能か、その力を本当に体感してもらえますね。
そうですね。新しいAIユーザーにとっての入り口になる薬のようなものです。本当にそうです。何もインストールする必要はありません。ターミナルや依存関係を理解する必要もありません。AIがどう動いているかを知る必要もありません。必要になるのはAPIキーか、あるいは他のサービスです。
そうですね。space-agent.aiに行って、APIキーを入れれば推論を実行できます。あるいは強力なコンピュータがあれば、ローカル推論もできます。
ローカル推論もできます。ここに専用パネルもあります。モデルを読み込み、チャットでテストできます。ダウンロードするのか、それとも単に……はい、ダウンロードしています。これは10GBなので止めます。
そうですね。
一度ダウンロードされれば、メモリへの読み込みはかなり速いです。ただし、強力なGPUは必要になります。
Hugging Faceのモデルなら、収まるものは何でも使えるんですか。
何でもです。Hugging Face上のNNX形式のモデルなら何でも使えます。ここにcompatible modelsというボタンがあります。それを押すとコミュニティリポジトリに移動します。この形式に変換されたモデルが何千もあります。
ただ、今関連があるのはおそらくGemma 4だけです。
JavaScriptを書き、システムプロンプトを理解できるだけの優れたモデルが必要ですからね。
そうです。エージェント型システムは単純ではありません。Ollamaでモデルを動かして話しかけるのとはまったく別物です。
Space Agentの発想とブラウザという選択
では、もう少し理論や哲学について話しましょう。Space Agentを作るアイデアはどのように得たのですか。
どこから始めればいいでしょうか。私はいつも頭の中に多くの考えやアイデアを抱えています。そして時間が経つと、それらのいくつかが互いにつながり、効率的で協調的に見え始めるものがあります。
私はいくつかのことを達成したいと思っていました。まず、Agent Zeroのようなものを、もっと人々が入りやすく、理解しやすい形で作りたかったのです。また、先ほど言ったように、バックエンド層だけではなく、自分自身を完全に制御できるエージェントも作りたかった。すべてに完全にアクセスできるエージェントです。
あまり話していませんでしたが、これはSpacesだけの話ではありません。エージェントは実際に自分自身を完全に変更できます。システム全体はモジュール上に構築されており、エージェントはその場で独自のモジュールを開発できます。
そして、それはユーザー単位でできます。たとえばローカル推論の実行はモジュールの一つですし、ファイルブラウザも別のモジュールです。私は自分用に何千ものモジュールを作成できます。それらは私のユーザーフォルダに保存され、マルチユーザーシステムの場合でも他のユーザーには影響しません。同じことをユーザーグループ単位や、システム全体で行うこともできます。
つまり、これはSpacesだけの話ではありません。自分自身を拡張できる完全な開発環境です。そしてこれは、たとえばAgent Zeroでは難しいことでもあります。Agent Zeroも自分自身を拡張できます。プラグインシステムなどもあります。でも、Pythonのバックエンド上で動いているため、いくつかの注意点があります。依存関係のインストール、依存関係の競合解決など、多くのことが絡みます。
これは完全にクライアントサイドで動きます。だからサーバーに追加の負荷をかけません。そのため、たとえば私たちのデモサイトにはすでに数百人、もしかすると数千人のユーザーがいますが、CPU使用率は2%、メモリ使用率は6%程度です。本当の作業はバックエンドではなく、クライアントサイドで起きているからです。
アイデアを思いついたとき、ブラウザが正しいもの、正しいパラダイムだとどう判断したのですか。
それは素晴らしい質問です。最初からわかっていたのは、ユーザーにとって簡単なものにするなら、マルチプラットフォームで、インストールなしに動く必要があるということです。そうなると、基本的には決まりでした。すべてのOS上で、インストールなしに動かせるプラットフォームはブラウザ以外にありません。
OSごとにウィンドウ管理は違いますし、レンダリングも違います。でもブラウザは、モバイルを含むすべてのプラットフォームで、JavaScriptというまったく同じランタイムを持つ唯一のプラットフォームです。同じレンダリングがあり、HTML、CSS、JavaScriptの長年の発展によって統一され標準化されています。
だから、これを作るならブラウザでなければならないと、初日からわかっていたと思います。そしてその後、問題の解決を始めました。問題は本当にたくさんありました。
ブラウザは素晴らしいです。クロス互換性が素晴らしいからです。また、ブラウザ自体がサンドボックスでもあります。インターネットは非常に危険な場所なので、ユーザー保護の多くはブラウザ自体から来ています。Webサイトがあなたのファイルに触れることを許さず、他のアプリからデータを盗むことも許しません。これは素晴らしいことです。
しかし、それには大量の制限が伴います。たとえばクロスオリジンの問題です。別のページ内のiframeに他のWebサイトを表示することはできません。Wikipediaのような一部のページは、別ページ内にWikipediaを表示させてくれます。でもGoogle、YouTube、そして基本的に他の現代的なWebサイトのほとんどはブロックします。
そこで、これを解決するために多くの回避策を始めました。そして最終的にはうまくいきました。ネイティブアプリでは、ブラウザは非常にうまく動きます。そこではElectronの機能を使って、多くのセキュリティ境界を緩和できるからです。また、Node.jsのバックエンド層を使うこともできます。CORSを緩和する必要がある場合、バックエンド層を通じてプロキシし、CORSヘッダーを削除できます。そうやって一つずつ問題を解決し、ここまで来ました。
では、どうやってそんなに素早く開発できたのですか。AIツールを使ったのだと思いますが、どんなワークフローだったのでしょうか。
はい。私はここで1行もコードを書いていません。すべてにCodexを使いました。つまり、Codexがこのコードベース全体を構築しました。
どう始めたかというと、Codex用にagents.mdの階層とドキュメントフレームワークを作りました。ルートのagents.mdファイルがあり、エージェントは常にそれを読み込みます。そしてエージェントが最初に見るのは自分のドキュメントです。
このプロジェクトではドキュメントが最も重要な部分です。AIコーディングの問題は、プロジェクト全体のスコープをコンテキストウィンドウ内に保持できないことです。コードベースが大きくなるほど、エージェントは冗長なことをし始めたり、新しいものをゼロから書いたり、以前の設定を上書きしたりするようになります。
だから、このAIワークフロー全体は、エージェントがシステムのすべてのレイヤーにあるagents.mdファイルに、すべてをドキュメント化するところから始まります。
全階層ですか。それともメインフォルダだけですか。
基本的には全階層です。開発されるものはすべて、同時にagents.mdファイルにドキュメント化されます。だから私がエージェントに、Space Agentのファイルブラウザに行って、そこで何かを変更して、と伝えると、ファイルブラウザモジュール内にagents.mdファイルがあり、エージェントはそれを読むことができます。そして、ファイルブラウザがどのように動いているか、核となる原則は何か、なぜこのように動いているのか、何をしてはいけないのか、などを即座に理解できます。
人々は実際にこのアプローチを使って開発すべきですね。将来、コードベースはエージェント向けに最適化されていることがはるかに重要になりますから。
まさにそうです。
はっきりさせておきたいのは、これはSpace Agentだけの話ではないということです。これは人々が今後採用すべきアプローチです。ドキュメントです。人々は頭の中にトークンを持つべきではありません。暗黙の好みや、言語化されていないものを頭の中に置いておくべきではありません。すべてがリポジトリ内のMarkdownファイルに書かれている必要があります。
そうですね。残念ながら、私たちはまだそこまでは到達していません。私がエージェントの悪い判断に気づいて修正しなければならなかった場面は、まだ何百回もありました。そしてすべてが終わった後でも、最適化できる方法はまだ見つかります。だから、まだ完璧ではありません。でも1、2年前よりははるかに良くなっています。
そして、このようなアプローチを使うと間違いなくずっと良くなります。エージェントがすべてのドキュメントを持っているからです。何かを変更する必要がある場合、まずドキュメントを確認し、なぜこのように動いているのかを理解します。そのため、同じ間違いを何度も繰り返さなくなります。
私たちはどんどん加速しています。過去24時間だけでも、GPT-5.5とDeepSeek V4が出ました。GPT-5.5は長文コンテキストにおいて5.4より大幅に優れています。だから、こうした問題の多くは3〜6か月で大きく軽減されると思います。
そうなる必要があります。それが唯一の進む道です。私がAgent Zeroの開発を始めた2年前くらいには、最初のバージョンをリリースするのに、集中的な開発で3か月ほどかかりました。それはCLIのみで、できることも非常に限られていました。そしてAgent Zeroのコアのコードは、今日に至るまで全部手書きです。
Space Agentは4週間ほどで作りました。25日くらいです。
MVPはもっと早かったですよね。2週間くらいでした。
そうです。ただしMVPは、チャットがWeb上の何かを変更するだけの単一ページでした。Spacesもありませんでした。バックエンドインフラもありませんでした。何もありませんでした。
それでもAgent Zeroがローンチしたときより、はるかに多くの機能がありますよね。
そうです。そして私は一人でそれをやりました。だから加速は明らかに起きています。もしSpace Agentを手作業で書いていたら、おそらく1年はかかったでしょう。もしかするとそれ以上です。
少なくとも12〜20倍のスピードアップですね。
間違いなくそうです。
それに、システムプロンプトの手動テストも含めれば、あれは人間の時間なら何十年分でしょうね。
そうです。本当にそうです。ただ、私はまだコーディングが死んだとは思っていません。コーディングは将来持つべき最も重要なスキルの一つになると思います。なぜなら、私たちは実際に手作業でコーディングをした最後の世代のプログラマーだからです。
私はAIの悪い判断を即座に見抜けます。非効率もすぐに見抜けます。AIが間違った道に進めば、それは違う、安全にするには、あるいはスケーラブルにするにはこうしなければならない、とすぐに伝えられます。先ほど言ったように、この開発中にそれを何百回もやりました。
私はいつもタスクを与え、それが何をしているかを見ています。Codex CLIのウィンドウを6つほど開いていて、それぞれが何をしているかをすばやく確認します。そして単純に間違いを探しています。それ以外は何もしていません。非効率やミスを見つけようとしているだけです。
Codexを選んだ理由とAI開発の現実
では、Claude CodeなどではなくCodexを選ぶ理由は何ですか。
それは個人的な好みかもしれません。両方試しましたが、Claude Codeには満足できませんでした。Claude Codeのせいだと言っているわけではありません。もしかすると私のスキルの問題かもしれません。
ただ、かなり早い段階でわかったのは、Codexはまさにこのagents.mdファイルの階層に従い、それらを一貫して更新し、最も重要なこととして、その中の指示に従うのがはるかに得意だということです。
Claude Codeで試したときは、しばしば派手なことを始めて、その後ドキュメント更新を忘れました。あるときなど、Claude CodeがWebページ上のボタンのCSS、つまりボタンの配置を修正するために2時間、20回くらいの反復をしていたことを覚えています。そして毎回、完了しました、修正しました、と言うのです。私がページを更新して、それは完了していない、まだ同じだ、と伝えることになります。
その間にAnthropicに肝臓を売る必要がありそうですね。
そのときはテスト中だったので、20ドルプランでやっていたと思います。Codexでは200ドルプランを使っていて、無制限です。そこは問題ありません。
それはすごいですね。
そうですね。
差は非常に大きいと思います。OpenAIは今100ドルのMaxプランを出しましたが、それとClaudeの100ドルプランとの間の差は、聞いたことがないくらい大きいと思います。Claudeの100ドルプランでは、本気で一日集中的にコーディングすれば制限に達することがあります。
Opus 4.7を使って、100万コンテキストウィンドウで複数のClaude Codeを同時に走らせている場合などですね。OpenAIは同じコストではるかに多くの推論を提供してくれます。そして私も同意します。私の経験もあなたの経験と一致します。私はClaudeが説明をしたり、話しやすかったり、プロジェクトを始めてアイデアについてインタビューするような用途には好きです。でも実際の作業が始まり、複雑な変更、大規模なリファクタリング、深刻なバグが必要になると、Codexのほうがずっと優れています。
そうですね。Codexは完璧ではありません。時には腹が立つこともあります。でも、非常に非常に優れていることは認めざるを得ません。そして月200ドルで、はるかにはるかに大きな価値が得られます。
では、もう二つ明確にしましょう。まず、人々はAgent ZeroとSpace Agentをどう考えるべきでしょうか。この二つのプロダクトには関係があるのですか。それとも別々のプロダクトですか。
同じ開発チームによる二つの別プロダクトです。自然に、より多くの統合などには取り組んでいくでしょう。ただ、両方とも十分に汎用的で動的なので、何とでも統合できます。つまり、この二つの間に特別なリンクは必要ありません。
これらは非常に異なるプロダクトで、非常に異なるユースケース向けです。必ずしも異なるユーザー向けではなく、異なるユースケース向けです。Agent Zeroを使う多くの人は、異なるタスクのためにSpace Agentも同時に使うことになると思います。
Space Agentはより動的で軽量です。ユーザーにより近い存在です。Agent Zeroよりはるかに協調的です。Agent Zeroは、バックグラウンドで動き、ユーザーに質問で煩わせないように指示されています。何かをやれと伝えると、それが完了するまで続けます。途中で止まって何かを質問することはありません。バックエンドのDockerコンテナ内で動いているので、もし質問するために止まって、あなたが返信しなかったらどうなるのか、という問題があります。
Space Agentは、自分がユーザーと一緒にフロントエンド上で動いていることを理解しています。だからインターネット上でCAPTCHAに遭遇したりすると、単にこう伝えます。私にはできません。CAPTCHAを解いてください、と。するとあなたがCAPTCHAをクリックしたり、ログインしたりします。
そういえば、おそらく見せていなかったことが一つあります。ブラウザは完全にインタラクティブです。ブラウザを開いて……。
それは見せるべき重要な点ですね。
google.comに行くと、エージェントは操作できます。でも私も同じことができます。つまり、同じページ上で協力できます。
最後に一つ見せたいのは、ゼロからのセットアップです。匿名ブラウザでやってもいいかもしれません。Space-agent.aiに行った場合、どのように見えるのか、APIキーをどこに入れればよいのかを、人々に向けて見せたいです。下にリンクを貼ります。
リポジトリのTry live nowボタンから始めることもできますし、space-agent.aiから始めることもできます。ここにゲストアカウントがあります。Continueを押します。これで完了です。そして最初に見えるボタンの一つが、Set LLM API keyです。
デフォルトはOpenRouterです。OpenRouterは素晴らしいサービスです。OpenAI、Anthropic、Google、すべてのモデルにアクセスできます。複数のサブスクリプションを持つ必要はありません。実際に使ったクレジット分だけ支払います。
ここがAPIキーの入力欄です。OpenRouter.aiに行きます。ここではすでにログインしています。API Keysに行きます。たぶんPreferencesの中です。そしてOpenRouterでAPIキーを作成します。それをここに入れれば、すぐに動くはずです。
Sonnetはかなり積極的ですね。
モデルごとに性格が違うのは面白いですね。
そうです。ちなみに……うわ。
これは実際すごいですね。
これは予想していませんでした。実は新規ユーザー向けに作成される最初のSpaceはBig Bangと呼ばれていて、こうした指示があります。これはまったく新しいユーザーであり、初めての体験です。だからもっと寛容に、印象的なものを見せてください、というような指示です。でもSonnetはそれを次のレベルまで持っていって、見せびらかし始めます。
そうですね。そしてSonnetは今、コストと性能のバランスが良いですね。
そうです。
Sonnet 4.7が出るのか、それともすぐにSonnet 5が出るのかは見てみましょう。ただ、この動画ではずっとOpus 4.7を使っていました。優れたモデル、つまり最先端か、その一つ下くらいであれば問題ないはずです。miniモデルやFlashモデルのようなものは、できれば避けたほうがいいですね。
そうですね。とはいえ、多くの人はまだ無料モデルを使うでしょう。今はそういう状況です。最高の体験にはならないでしょうが、それは予想されることです。
Space Agentに実装したもう一つの大きな機能で、エージェントとしてはかなりユニークなものが、タイムトラベル機能です。すべてのユーザーディレクトリとすべてのグループディレクトリを、独立したGitリポジトリとして作成しています。そこでは、あなたが行った変更が自動的に追跡されます。
新しいSpaceを作る、設定を変更する、何をするにしても、それはディスク上のGitリポジトリで自動的に追跡されます。これによって過去に戻ることができます。たとえば2時間前に戻りたい場合、これを実行するだけで、過去2時間に行われた変更を取り消します。今はここにあるSpaceが少なくなりました。そして、このように現在に戻ることもできますし、個別の変更を元に戻すこともできます。
これはAIエージェントにとってかなりユニークです。通常、AIエージェントで何かを壊した場合、別のエージェントやAIアシスタントを使ってそれを修正しますよね。
そうですね。
ここでは何かを壊した場合、単に時間を戻して取り消せます。
もう一つ大きいのが管理モードです。何かを完全に壊してしまった場合、つまりWebサイト全体のレンダリングが完全に壊れて、タイムトラベルさえ開けなくなるような変更をしてしまった場合でも、管理モードに入ることで修正できます。
管理モードはこのような分割ビューで開きます。左側には永続的な管理インターフェースがあります。これはフレームワークのファームウェア部分です。だから変更されません。固定されています。右側には通常のSpace Agentが見えます。
ここからエージェントと話し、フレームワークを修正させることができます。ファイルに入ることもできます。ここから管理側でタイムトラベルを使うこともできます。インストール済みモジュールをここから管理することもできます。
つまり、UIが起動しないほど完全に壊しても、修正する方法がまだあるのです。
そうですね。Space Agentに完全なJavaScriptがあることの危険性は、時には行き過ぎて、テキスト入力やサイドローディングなどを壊してしまう可能性があることだと思います。でも管理エージェントを使って自分自身を修正できるわけですね。
その通りです。実際、どんなエージェントでも自分自身を壊す可能性があります。Agent Zeroでさえ、Pythonの依存関係や重要なものをアンインストールすれば、完全に壊れてしまうことがあります。その場合、修正には手作業が必要になります。
そうですね。初心者がデバッグで詰まるのはそこですよね。
別のものを使ってスクリーンショットを撮り、何が悪いのかを調べる必要がありますからね。
そうです。Space Agentの美しさは、ワンクリックで修正できることです。スタンドアロンアプリケーションであっても、クラウド上で実行していても、デモサイト上で実行していても、Space Agentを新しいウィンドウや新しいタブで開くたびに、Enter SpaceかEnter the admin modeが必ず表示されます。
これらのページは静的です。常にそこにあり、管理画面に入ってフレームワークを修正できるよう待っています。
では、人々はGitHubリポジトリに行くべきでしょうか。それとも直接Webサイトに行くべきでしょうか。
それらは相互につながっています。直接Webサイトに行っても大丈夫です。Webサイト自体には追加情報はありません。すべての情報はGitHubリポジトリにあります。
space-agent.aiに行くと、ここにGitHubボタンがあります。Discord、Xアカウント、Agent ZeroのWebサイトにも参加できます。ここではネイティブアプリをダウンロードすることも、自分でホストする方法のガイドを見ることもできます。GitHubリポジトリでも、まったく同じ情報を見ることができます。
始める一番簡単な方法は、ライブ版を試すことです。
そうですね。
そして気に入ったらローカルアプリをダウンロードすることです。
そうですね。そしてコメントで、どう使ったのか、何に使ったのか、機能やアップデートの提案などをぜひ教えてください。
それは非常に貴重です。
では、Yan、ありがとうございました。人々がこれをどう使うのか見ていきましょう。
本当にありがとうございました。


コメント