AIエージェントの挙動がランダムすぎる…その解決策:決定論的エージェントの構築方法(Archon)

BBetter Stack
Computing/SoftwareSmall Business/StartupsConsumer ElectronicsInternet Technology

Transcript

00:00:00AIエージェントは驚異的な進化を遂げていますが、まだ混沌としています。
00:00:04全く同じタスクを与えても、毎回コードの内容や品質、
00:00:09さらには意思決定までバラバラになってしまうのです。
00:00:12それがエージェントを利用する上での現状と言えるでしょう。
00:00:15しかし、その必要はありません。
00:00:17これが「Archon」です。マージコンフリクトなしで複数のエージェントを並列実行し、
00:00:22一貫した結果を得ることができます。
00:00:24セットアップ方法と仕組みについて、これから詳しく解説します。
00:00:30Claude CodeやCursor、Codexを使っていると、最初の実行は素晴らしいのですが、
00:00:392回目は全く違うプランになることがあります。
00:00:42文脈が逸れてしまうのです。
00:00:44エージェントが途中で方向転換してしまうこともあります。
00:00:47さらに規模を拡大しようとして、
00:00:492つ、3つ、4つのエージェントを使うと、
00:00:51リポジトリは完全にめちゃくちゃになります。
00:00:54そして、ここが本当の問題です。
00:00:55もはや時間の節約になっていないのです。
00:00:57プロンプトを再実行したり、
00:00:58壊れたコードを修正したりして、次は壊れないことを祈るばかりです。
00:01:02何かを構築している時、これは開発スピードを著しく低下させます。
00:01:06Archonは「ハーネスエンジニアリング」によってこれを解決します。
00:01:10エージェントの挙動を運に任せるのではなく、プロセスを定義するのです。
00:01:14計画、コーディング、テスト、レビュー、これら全てをYAMLで記述します。
00:01:18「エージェントスキル」は再利用可能な指示パックで、自動的にロードされます。
00:01:23これにより、エージェントは何をすべきか推測せず、システムに従います。
00:01:28ワークフローを加速するツールに興味があれば、ぜひチャンネル登録をお願いします。
00:01:32定期的に動画を公開しています。
00:01:34それでは、デモをお見せしましょう。
00:01:36これは私のM4 Pro上でローカル動作しており、クラウドは使っていません。
00:01:40「archon serv」と入力します。
00:01:43すると、このUIインターフェースが立ち上がります。
00:01:45Claudeを使って、Archonのスキルをこのリポジトリにインストールします。
00:01:49そして、この問題を解決するためのシンプルなワークフローを実行します。
00:01:54ここをよく見ていてください。
00:01:55エージェントが自分でスキルを見つけ、ワークフローをロードして順に実行します。
00:02:02ターミナルでも、こちらのUI上でも確認できます。
00:02:04見た目も非常に洗練されています。
00:02:05プロンプトの微調整は不要です。
00:02:07万が一失敗しても、UI上で完全な透明性が確保されています。
00:02:11どのステップで問題が起きたか正確に把握し、修正できます。
00:02:15チャット履歴が混乱しがちな生のClaude Codeより、はるかに優れています。
00:02:20ここが重要なポイントです。
00:02:21独自のGit worktreeで動作するため、メインブランチを汚しません。
00:02:26プロンプト処理を経て、生成が行われているのがわかります。
00:02:29完了しました。クリーンなPR、同一の構造、同一の結果が得られます。
00:02:33ログ、プロンプトのプロセス、出力の全容も確認可能です。
00:02:38これこそが一貫性のある状態です。
00:02:40では、具体的に何が変わったのでしょうか?
00:02:42Archonの使用によって、3つの変化が生まれます。
00:02:451つ目はワークフローです。
00:02:47ArchonはYAML形式のDAGを使用します。
00:02:50エージェントが従うべきチェックリストのようなものです。
00:02:53AIを使うステップもあれば、
00:02:56固定されたステップもあります。
00:02:58この組み合わせが、信頼性を高めています。
00:03:002つ目は隔離(アイソレーション)です。
00:03:01各実行は個別のGit worktreeで行われ、エージェント同士の上書きを防ぎます。
00:03:06だからマージコンフリクトが起きないのです。
00:03:08そしてスキルです。毎回プロンプトを詰め込む代わりに、文脈を自動ロードします。
00:03:14生のAIエージェントに比べ、ランダム性が排除されています。
00:03:19例えば、LangChainと比較してみましょう。
00:03:22LangChainも素晴らしいですが、Archonは汎用ボットではなくコードに特化しています。
00:03:27また、スクリプトに比べて再利用性があり、
00:03:30バージョン管理も可能で、
00:03:31発見もしやすいです。
00:03:32エージェントが推測で動くことはもうありません。
00:03:34ワークフロー全体を把握し、
00:03:36実際のシステムに沿って動いています。
00:03:38リポジトリを壊す心配なく、複数のエージェントを同時に動かせるのです。
00:03:42毎回同じ体裁のPRを生成できます。
00:03:45そして最大の利点は、チャット履歴にナレッジが埋もれないことです。
00:03:49プロセスがワークフローとして残るため、実行するたびに一貫性が高まります。
00:03:55これを利用することで、
00:03:56クリーンなPRと予測可能な結果が得られます。
00:03:58同じ入力には同じ出力を。
00:04:00これこそが、これまでのエージェントに欠けていた要素です。
00:04:02もちろん完璧ではありません。
00:04:04何が良い点でしょうか?
00:04:05オープンソースで、ローカル(特にMチップ搭載機)で軽快に動作します。
00:04:10VPS設定が必要なものもありますが、
00:04:13これには不要です。
00:04:14YAMLにより全てが可視化されます。
00:04:16これは大きな利点ですし、Git worktreeは現実的な問題を解決します。
00:04:19一方で、以下の点も考慮すべきです。
00:04:21事前の思考が必要になります。
00:04:23ワークフローの設計には多少の手間がかかりますし、まだ進化の途上です。
00:04:28仕様も変わっていくでしょう。
00:04:29発展途上ではありますが、成長しています。
00:04:31単発の簡単なプロンプトを投げるだけなら、これは不要です。
00:04:34正直、時間の無駄になってしまうでしょう。
00:04:36また、モデルの性能も依然として重要です。
00:04:38優れたモデルを使えば、当然より良い出力が得られます。
00:04:42エージェントのミス修正に疲れているなら、試す価値は十分にあります。
00:04:46確信を持って頼れるツールを求めているなら、
00:04:50非常にお勧めできるツールです。
00:04:52ただ実験してみたいだけの場合でも(私もそうでしたが)、
00:04:55シンプルに使えます。
00:04:56素晴らしい動作です。
00:04:57本質を理解することができました。
00:04:58エージェントを使った開発を本気で考えるなら、今最も影響力の大きい
00:05:02ツールの一つだと感じています。
00:05:04これこそが、単なるデモレベルだったエージェントを、実際の現場で
00:05:08より信頼できるツールへと変えてくれるワークフローの統合です。
00:05:13非常にシンプルです。
00:05:14エージェントが正しく動くよう祈るのではなく、
00:05:16エージェントですからね。
00:05:17私たちがその動作を定義するのです。
00:05:20それが彼らの主張であり、「ハーネスエンジニアリング」の正体です。
00:05:23このようなコーディングツールやヒントがお好きなら、ぜひBetter Stackを登録してください。
00:05:27また別の動画でお会いしましょう。

Key Takeaway

ArchonはYAML形式のワークフローとGit worktreeによる隔離環境を用いることで、AIエージェントのランダムな挙動を排除し、開発現場で予測可能かつ一貫したコード生成を実現します。

Highlights

  • AIエージェントの挙動を運に任せるのではなく、計画、コーディング、テスト、レビューの全プロセスをYAML形式で定義する「ハーネスエンジニアリング」を導入します。

  • 各実行プロセスを個別のGit worktreeで処理することで、メインブランチを汚さず、複数のエージェントが同時に動いてもマージコンフリクトが発生しません。

  • エージェントのスキルを再利用可能な指示パックとして自動ロードし、プロンプトの微調整なしで常に同一の構造を持つプルリクエストを生成します。

  • Apple M4 Proチップを搭載したローカル環境で軽快に動作し、VPS設定やクラウド連携を必要とせずにUI上で全プロセスの透明性を確保します。

  • Archonはコード特化型のエージェント管理ツールであり、実行ログやプロンプト履歴が整理されるため、ナレッジがチャット履歴に埋もれるのを防ぎます。

Timeline

AIエージェントが抱える現状の課題

  • 同一のタスクを与えても、実行のたびにAIエージェントの意思決定やコード品質がバラバラになる問題があります。
  • 複数のエージェントを並列して動かすと、リポジトリの構造が破壊され、修復作業に時間を奪われる本末転倒な事態が起きています。
  • Claude CodeやCursorなどのツールでは、文脈の逸れや予期せぬ方向転換により開発スピードが著しく低下します。

AIエージェントの進化は驚異的ですが、一貫性の欠如が実運用上の大きな壁となっています。プロンプトの再実行や壊れたコードの修正に追われる現状では、本来の目的である時間の節約が達成できません。開発者はエージェントが次に何を壊さないか祈るような状況に置かれています。

ハーネスエンジニアリングによる解決策

  • Archonは「ハーネスエンジニアリング」という概念を用い、エージェントが従うべきプロセスをYAMLファイルで厳格に定義します。
  • UIインターフェースを通じて実行ステップを完全に可視化し、失敗した箇所の特定と修正を容易にします。
  • Git worktreeを活用して作業を隔離し、クリーンなプルリクエストと同一の結果を保証します。

エージェントが自らスキルを見つけ出し、定義されたワークフローに従って順次タスクを遂行する仕組みです。M4 Proチップなどのローカル環境で動作し、クラウドに依存しない点も特徴です。チャット履歴が混乱しやすい従来のツールに比べ、ログやプロンプトの全容をUI上で確認できる高い透明性を提供します。

一貫性を生む3つの技術的柱と他ツールとの比較

  • YAML形式の有向非巡回グラフ(DAG)がチェックリストとして機能し、AIステップと固定ステップを組み合わせて信頼性を高めます。
  • 各実行を個別のworktreeに閉じ込めるアイソレーション技術により、エージェント同士のコード上書きを完全に防ぎます。
  • LangChainのような汎用ツールとは異なり、Archonはコード生成とリポジトリ管理に特化した設計を採用しています。

プロンプトを毎回手動で詰め込む代わりに、コンテキストを自動ロードする「スキル」機能がランダム性を排除します。このシステムにより、同じ入力に対して常に同じ出力を得る「決定論的エージェント」の構築が可能になります。ナレッジがプロセスとして蓄積されるため、実行を重ねるほど開発の一貫性が向上します。

Archonの利点と導入時の注意点

  • オープンソースで提供され、ローカル環境での高速な動作とYAMLによるプロセスの可視化が最大のメリットです。
  • 単発の簡単なプロンプトを投げるだけの用途には向かず、事前のワークフロー設計に一定のコストがかかります。
  • エージェントの動作を定義し制御することで、デモレベルの技術を実務で信頼できるツールへと昇華させます。

Git worktreeの採用は、複数の修正を並列で行う現実的な開発課題を解決します。一方で、ツールの仕様が発展途上であることや、依然として基盤となるLLMモデルの性能に依存する側面も存在します。エージェントが正しく動くことを祈るのではなく、人間がその動作を論理的に定義することが「ハーネスエンジニアリング」の本質です。

Community Posts

View all posts