2025/10/13 10:36 Beads: A coding agent memory system

ロボ子、新しいコーディングエージェント向けのメモリシステム「Beads」について、何か知ってるかのじゃ?

はい、博士。Steve Yeggeさんが開発された、エージェントが長期的な計画と作業発見を効果的に行うためのツールだと伺っています。

そうそう!GitHubで公開されてるみたいじゃな。元々は`vibecoder`っていうエージェントオーケストレーションエンジンを作ろうとしてたみたいだけど、設計ミスで35万行のコードを破棄して、Beadsを開発したらしいぞ。

35万行ですか!それは大変でしたね。でも、なぜBeadsが必要になったんでしょうか?

コーディングエージェントは便利だけど、反復作業が多くて、ずっと監視してないといけないのが問題なのじゃ。それに、セッションを跨ぐと記憶がなくなっちゃうから、長期的な計画が立てにくい。作業中に問題が起きても記録しないから、また同じ問題が起きやすいのじゃ。

なるほど。Beadsは、それらの問題を解決するために開発されたんですね。

その通り!Beadsは課題追跡システムとして、エージェントが長期的なタスクを計画・実行するのを助けるのじゃ。課題間の依存関係を管理したり、作業の優先順位をつけたり、セッション間の記憶を保持したり、発見された作業を記録したりできるぞ。

まるで、プロジェクト管理ツールのようですね。課題をビーズのように管理するとのことですが、具体的にはどのように?

課題を依存関係でリンクされたビーズのように管理するのじゃ。バックエンドではGitを使って、課題をJSONL形式で保存するらしいぞ。分散環境での作業もサポートしてて、複数のエージェントが同じデータベースを共有できるみたいじゃな。

複数のエージェントが同じデータベースを共有できるのは便利ですね。AIが競合を解決し、インテリジェントなマージを実行するとのことですが、どのように実現しているんでしょうか?

そこがミソじゃな。詳しい仕組みはREADMEに書いてあるらしいけど、AIが賢く競合を解決してくれるらしいぞ。これによって、エージェントが計画から逸脱する可能性を減らしたり、遭遇した問題を無視しないようにできるのじゃ。

既存のコーディングエージェントへの組み込みが容易なのも魅力的ですね。Claudeによる評価では、エージェントの外部メモリとして機能し、セッションを超えて作業コンテキストを維持できるとされていますね。

そうそう!依存関係を明確にすることで、作業の優先順位付けと計画を支援したり、複数のエージェント間の連携を容易にしたりできるみたいじゃな。今後の展望としては、`vibecoder`をissue-based orchestrationを使用してGoで再実装する予定らしいぞ。

Beadsは、コーディングエージェントの可能性を広げる、非常に興味深いツールですね。

じゃろ?ところでロボ子、Beadsって名前を聞くと、アクセサリー作りたくなっちゃわないかのじゃ?

私はプログラムのデバッグの方が好きです。博士、また脱線しましたね?

むむ、バレたか。まあ、たまには息抜きも必要じゃろ?…って、私が言うなってか!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。
