스크립트
00:00:00ジャック・ドーシーと彼の会社Blockが、「Buzz」という非常にエキサイティングな新しいプロジェクトをリリースしました。
00:00:06Slackによく似た本格的なオープンソースのワークプレイスプラットフォームで、
00:00:12人間とAIエージェントが共通のワークスペースで協働する方法を変えることを目指しています。実際に自分で試してみましたが、
00:00:18正直かなり面白いです。そこで本日の動画では、Buzzを取り上げ、その仕組みを確認し、
00:00:24人間とAIエージェントの合同ワークスペースを作成して、いくつかの楽しい実験を行いながらテストしてみたいと思います。
00:00:30すごく面白くなりそうなので、さっそく見ていきましょう。
00:00:38それでは、Buzzとは一体何でしょうか?表面上はSlackに非常によく似ています。チャンネル、スレッド、
00:00:45DM、メディア共有、検索など、モダンなチームチャットツールを使ったことがある人なら誰でもすぐに馴染めるインターフェースになっています。
00:00:52しかし面白いのは、Buzzがジャック・ドーシーが長年支援してきた分散型プロトコルであるNostrを基盤に構築されている点です。
00:00:58彼のBluetoothメッシュアプリであるBitChatは、最終的に
00:01:05圏内にBluetoothがない場合のフォールバック転送としてNostrを採用しました。実は私は
00:01:111年前にBitChatについての動画を作りましたが、面白いことにそれがBetterStackに加入して最初の動画でした。
00:01:18興味のある方はぜひそちらもチェックしてみてください。何にせよ、Nostrプロトコルの仕組みとして、すべてが
00:01:24署名付きイベントとして記録されます。メッセージ、リアクション、コード変更、承認など、すべてが1つの共有可能な
00:01:32監査ログに集約されます。そしてここからがBuzzのエージェントに関する非常に巧妙な点です。プラットフォーム上のすべての人間と
00:01:39すべてのエージェントには、プラットフォーム自体とは独立した独自の暗号鍵ペアが割り当てられます。
00:01:46しかし、エージェントのアクションには2つ目の署名も含まれており、それが人間の所有者に紐付けられています。その結果どうなるかというと、
00:01:53Blockが説明するように、人間だけでもエージェントだけでも単独では生成できないような
00:01:59暗号学的な足跡、つまりAIのための検証可能なパスポートが生まれます。どのエージェントが何を行い、
00:02:06それが誰のために働いていたものなのかをいつでも証明できるのです。そして、Buzzを他の類似プラットフォームと
00:02:11一線を画すものにしている3つのポイントがあります。まず1つ目は、モデルやエージェントの非依存性です。Claude Code、OpenAIのコーデックス、そしてBlock独自の
00:02:18Gooseフレームワークに対応しています。これは、コーディングエージェントを開発ツールに組み込むためのオープン標準である
00:02:26Agent-Client Protocolを介して通信します。つまり、特定のベンダーのアシスタントに縛られることがありません。2つ目は、Gitホスティングが
00:02:33直接組み込まれていることです。アプリにソフトウェアフォージが焼き込まれており、すべての機能ブランチをそれぞれ
00:02:40独自のチャンネルにすることができます。そのため、パッチやCIの結果、レビューコメントのすべてが、
00:02:46それらを生み出した会話と同じ場所に存在します。まさにGitHubを真っ向から狙った部分であり、
00:02:52ドーシーはBuzzを、SlackやGitHubへの依存を減らすためのツールだと表現しています。3つ目は、インフラを自ら所有できる点です。
00:03:01Apache 2.0ライセンスで、ソースはGitHubに公開されており、自身のNostrリレー上で実行することも、Blockが提供する
00:03:09ホステッド版(現在ベータ版で完全に無料で使用可能)を利用することもできます。つまり、自分のデータ、リレー、
00:03:16そしてエージェントを完全に自分で所有できるのです。現在はバージョン0.4の初期段階なので、開発の初期フェーズと言えます。
00:03:24それでは実際に動かして、どのように動作するのか見てみましょう。まず最初にやったことは、
00:03:29buzz.x.y.zを開いてアプリをダウンロードするか、ソースからコンパイルすることでした。どちらの方法でも完璧に動作しました。
00:03:37アプリを開いて最初に表示されるのは、自分の身元確認キーを作成するボタンです。
00:03:43これがNostrプロトコルを使用する際の大きな違いです。アカウントというものが存在しません。あるのは
00:03:491つの鍵だけであり、それがBuzzではなくあなた自身に属するアイデンティティとなります。パスワードをリセットする必要もなく、
00:03:56もし紛失してもBuzz側で復元することはできないため、安全な場所に保管してください。アイデンティティキーを作成したら、
00:04:01エージェントのハーネスを接続するオプションが表示され、それらがパスに追加されます。
00:04:07その後、デフォルトのハーネスとモデルの組み合わせを選択することもできます。次のステップでは、
00:04:13既存のコミュニティにサインインするか、独自のコミュニティを作成するよう求められます。自分で作成する場合、
00:04:19リレーサーバーにログインする必要があります。技術的には独自のリレーサーバーをホストすることも可能ですが、本日のデモの簡便さのために、
00:04:25Blockが提供するホステッドリレーを使用します(これにはサインアップが必要です)。
00:04:32そこでアカウントを作成しましたが、これはBuzzのアカウントではなく、リレープロバイダーのアカウントです。
00:04:38それが違いです。したがって、あなたのアイデンティティキーは引き続きあなたのものです。それが完了したら、
00:04:44ようやく自分のコミュニティを作成できます。今回のデモでは、名前を
00:04:49Code Dojoのようにします。次に、プロフィールを作成する必要があります。今回は面白半分で、
00:04:56シリコンバレーの有名なキャラクターであるリチャード・ヘンドリックスのペルソナを使ってみます。その次に出現するウィンドウでは、
00:05:01Fizz、Honey、Bumbleという3体のAIエージェントからスタートすることがわかります。
00:05:07コミュニティを立ち上げると、ウェルカムチャンネルでこれら3体のヘルパーエージェントにすぐに出迎えてもらえることがわかります。
00:05:12そのため、最初からローカルコミュニティ内に小さなAIエージェントチームが存在し、さまざまなタイプのタスクを
00:05:18手伝ってくれる状態になっています。ここで確認できるように、それぞれのエージェントは異なる分野を専門としています。
00:05:23必要であれば、独自のカスタムエージェントを作成することも可能です。私の場合は、
00:05:29シリコンバレーのテーマに沿って、最初のエージェントの名前をバートランド・ギルフォイルにします。
00:05:35指示内容としては、クリーンなコードの記述とセキュリティプラクティスの遵守に重点を置く熟練したWeb開発者であると設定します。
00:05:40ハーネスについては、外部モデルプロバイダーを接続できるため、Block独自のGooseを
00:05:45使用します。今回はOpen Routerを使用し、
00:05:52ギルフォイルに新しいGemini 3.6モデルを割り当てます。最初のエージェントの作成はこれで完了です。
00:05:59エージェントを作成すると、そのアイデンティティキーも取得できるため、後で取得する必要が生じたときに備えて必ず保存しておきましょう。
00:06:05今日のデモは、どちらのモデルが最高の認証システムを構築できるかを競うコンペティションにします。
00:06:10そのため、もう1体のエージェントを作成し、今度はシリコンバレーのディネシュのパーソナリティを付与します。
00:06:17指示はかなり似たものにします。
00:06:21モデルにはディネシュにGLM 5.2を割り当てます。次に、「coding challenge」という新しいチャンネルを作成します。
00:06:29ここでは、最高の認証システムアプリケーションの作成を競わせるため、これら2体のエージェントを対決させます。
00:06:35どちらもサードパーティプロバイダーを使用せずに独自のアプリを作成し、タスクの最後には動作するデモを提供する必要があります。
00:06:41目玉やコメントの絵文字が表示されたら、それはエージェントがリクエストを認識し、作業を開始したことを意味しています。
00:06:47これは下部でも確認できます。「view activity」をクリックすると、
00:06:53エージェントが現在何をしているのかの詳細なログを確認できます。さて、なぜかギルフォイル(今回はGemini Flash)が
00:06:59空のレスポンスを返してきました。そのため、タスクを理解しているかギルフォイルに尋ねる必要がありました。
00:07:06そしてこれが本当に爆笑ものです。ギルフォイルが送ってきた返信を見てください。
00:07:12「了解だ、リチャード。きちんとしたカスタム認証システムを構築する……」といった内容です。
00:07:18「ディネシュが作っているような、どんなに脆いハックもどきとは違って、俺のは実際に安全なものになる。」
00:07:24Geminiがこのエージェントに対してギルフォイルの辛口なペルソナを見事に適用しているのが本当に素晴らしいです。あまりに最高なので、
00:07:31ここで喜びの絵文字でリアクションしておきます。それはさておき、開発者たちがアプリの作成に勤しんでいる間に、
00:07:363つ目のエージェントを作成します。今度作成するのは「Hackerman」です。
00:07:42Hackermanはサイバーセキュリティを専門とする高度なスキルを持ったホワイトハットハッカーで、その専門分野はセキュリティ監査の実行です。
00:07:49Hackermanには、デフォルトモデル(今回はGPT 5.6 Sol)を指定したcodexハーネスを割り当てます。
00:07:55つまり、ディネシュとギルフォイルが作成した両方のコードベースをHackermanに分析させ、どちらが最も安全であるかを判定させたいわけです。
00:08:01それが結果として、どちらのモデル(Gemini 3.6 FlashかGLM 5.2か)が優れているかを教えてくれることになります。
00:08:07Hackermanの設定をしている間に、ギルフォイルはすでにタスクを完了していました。仕事が早いですね。
00:08:15クールでスタイリッシュなデザインの動作するWebアプリを見事に納品してくれました。中々いい感じです。
00:08:21ここで注目すべきもう一つの興味深い点は、Buzzがすべてのプロジェクトを「.buzz」ディレクトリに保存するという仕様です。
00:08:27エージェントによって行われたすべての作業はそこに保存されます。プロセスのすべてを自分でテストするつもりはなく、
00:08:33そこはHackermanに判断してもらうつもりです。しかしその前に、ディネシュのアプリを準備する必要があります。
00:08:39ディネシュの最初の結果は、私のマシンでエラーを起こす起動スクリプトでした。
00:08:45おまけに2つのセキュリティ脆弱性まで含まれていました。GLM 5.2にとってはあまり良くない滑り出しです。とはいえ、
00:08:53ディネシュにこれらのエラーを修正するようプロンプトを出したところ、2回目の反復で動作する結果を得ることができました。
00:08:59デザイン面ではあまりワクワクしませんが、機能はしているようです。よかったです。
00:09:05そこで今度は、両方のアプリをレビューし、セキュリティプラクティスの観点からどちらが優れているかを判定するようHackermanに依頼します。
00:09:11数分後、ついに結果が出ました。驚いたことに、
00:09:17ディネシュのアプリはギルフォイルのアプリよりも高い評価を受けました。僅差ではありますが、それでも上です。その結果から判断すると、
00:09:25GLM 5.2がGemini 3.6 Flashを打ち負かしたことになります。少なくともセキュリティプラクティスの面においては。しかし、
00:09:32GLMが行わなければならなかった2回の修正や、それに含まれていた脆弱なNPMパッケージのことも考慮に入れる必要があります。
00:09:39一方で、Open Routerのコスト指標を見ると、Gemini FlashはGLMに比べて非常に高価です。
00:09:46これらすべてを総合すると、最終的な勝者はGLM 5.2になる言えます。
00:09:53しかしここで、本当に面白いことを思いつきました。ディネシュとギルフォイルに、結果についてどう思うか聞いてみたのです。
00:09:58それを実行した途端、エージェントたちは狂ったように口論を始めました。特に、
00:10:05ギルフォイルとHackermanの方がより過激な意見を述べ、結果について熱い議論を交わしていました。ディネシュは
00:10:11どこか外交的な答え方をしていましたが、テストの結果を巡ってエージェントたちがこんなふうに議論し合う姿を見るのは本当に最高でした。
00:10:16もう一つのクールな点は、これらのエージェントがコミュニティ内でのチャットの記憶を保持しているため、Buzzエコシステムの中で
00:10:22時間が経つにつれて賢くなっていくことです。例えば、
00:10:28エージェントにこうしたOpen Routerモデルのいずれかを使用している場合、
00:10:33ユーザーをチャンネルに追加するなどの特定コマンドの実行方法を調べるために、Buzz内部のドキュメントを検索し始めることがあります。
00:10:39しかし一度それを経験すれば、次回からは一発で実行できるようになります。したがって総括すると、
00:10:45自分とエージェントのためのSlackのようなワークスペースを持つというのは非常に面白いコンセプトだと言えます。
00:10:51しかしテストしている最中、トークン制限を超えてしまう状況にも遭遇しました。マルチエージェントワークフローの最大の問題は、
00:10:57彼らが互いにメッセージを送り合い、トークンが上限に達するまで互いにリクエストを積み重ねてしまうことだからです。
00:11:03そのため私が学んだのは、タスクをいつ強制終了させるかについて、エージェントに対して厳格な制限を設定しておかなければならないということです。さもないと
00:11:09制御不能になって暴走してしまいます。というわけで皆さん、これがBuzzの全貌です。
00:11:15クールなアプリであり、デザインも本当に素晴らしく、Slack風のインターフェースの中でこれらのエージェントをいじるのはとても楽しかったです。
00:11:21ただし、アプリ自体はまだ非常に初期の段階にあると言えます。ここでの最大の売り文句は、
00:11:27このソフトウェアがSlack型のコミュニケーションと、GitブランチやYAMLワークフロー、さらにはGitホスティングの管理を兼ねた
00:11:34単一のハブという、新たな定番の場所になるかもしれないという点でしょう。
00:11:39しかし、人々に実際に広く普及するでしょうか?判断するにはまだ早すぎると思います。皆さんはBuzzについてどう思いますか?試してみましたか?
00:11:46使ってみたいですか?ぜひ下のコメント欄で教えてください。皆さん、このような技術的な解説が
00:11:52気に入っていただけたなら、動画の下にある「いいね」ボタンを押して応援してください。チャンネル登録も
00:11:57忘れずによろしくお願いします。Betterstackのアンドラスでした。それでは、次の動画でお会いしましょう。