HarnessRouterは、複数のAIエージェント用ハーネスをローカルでホストする一つのコンソールにまとめるツールです。ハーネスとは、AIモデルにツールやファイルへのアクセス、そして複数の手順からなる作業を実行する手段を与えるソフトウェアを指します。比較のたびにClaude Code、Codex、Gemini CLIを個別に準備する代わりに、開発者は同じ作業環境の中でタスクごとにハーネスを選べます。経費の監査、データベースのグラフ、プレゼンテーション用スライドの事例から、この仕組みで何ができるかが見えてきます。

一つの経費ファイルを二つのハーネスで

経費のテストでは、34件の項目を含み、規程違反を意図的に7件仕込んだスプレッドシートを使いました。規程は、$75を超える食事代には管理者の承認が必要、$25を超える経費には領収書が必要、重複請求は認めない、という内容です。そのため、エージェントがファイルを調べる前から、見つかるべき結果ははっきりしていました。

空白の行と色付きの確認マークが並ぶ抽象的な経費台帳を、二つの並行したワークフロー経路が確認している様子

▲ 経費台帳を確認する二つのハーネス

gemini-3.8-flashモデルと組み合わせたGemini CLIは、61回のツール呼び出しを通じてスプレッドシートを確認しました。そして確認結果の列を加えたファイルと、別途まとめた要約文書を作成しました。指摘したのは合計$487.65の7行で、仕込んだ違反と一致しました。HarnessRouterはツールコマンドの監査記録も残すため、結果が根拠の見えない答えだけで終わることはありませんでした。

続いて、同じファイル、プロンプト、モデルのままPiで実行しました。Piはこのハーネス向けの個別設定なしで、同じ7行を特定しました。これが一つのコンソールで切り替えられることの実用上の利点です。チームは基盤となるモデルを変えず、入力を用意し直すこともなく、ハーネスごとの処理の違いを比べられます。

監査では、同じ日付に二人の従業員が同額の$42.80のタクシー代をそれぞれ請求していた点も指摘され、二人が相乗りした可能性が高いと推測されました。両方の請求を指摘対象にすると、確認リストは8行、$530.45になります。この区別は重要です。仕込んだ7件の違反には決まった正解がありましたが、追加の1件は請求内容についての判断を要するものでした。ユーザーは指摘を受け入れる前に、ファイルと監査記録を確認できます。

定期的な確認には、Gemini CLIをベースにしたカスタムハーネスを作り、経費規程をCLAUDE.mdという指示ファイルに保存できます。一度設定すれば、毎回規程を貼り付け直さなくても、新しいレポートをアップロードして短く依頼するだけで済みます。

ハーネスの切り替えが重要な理由

モデルは応答を生成できますが、ファイルへのアクセス、ツールの使い方、ワークフローの完了までをどう進めるかはハーネスが決めます。そのため、モデルが同じでも、ハーネスの選択によって結果が変わり得ます。

プロジェクトのベンチマークでは、同じ言語モデルを使い、4種類のハーネスでスプレッドシート評価タスク50件を実行しました。

結果 最も成績の良いハーネス 最も成績の低いハーネス
タスク成功率 85% 77%
全作業の所要時間 約半分 比較の基準

これらの数値はこのベンチマークの結果であり、あらゆるタスクで同じ結果を保証するものではありません。ただ、特定のワークフローにとって重要なファイルや出力を使ってハーネスを試す理由にはなります。経費の比較はより小さな例です。二つのハーネスが同じ既知の結果に到達し、共通のコンソールによって両者の作業を並べて確かめやすくなりました。

プロバイダーのキーで使うローカルコンソール

HarnessRouterは無料のオープンソースで、セルフホスト型です。Docker Desktopがローカルのコンピューター上でソフトウェアのコンテナを動かし、Dockerコマンド1行でローカルの3000番ポートにサービスが立ち上がります。ハーネスの設定を保持するため、永続化されたDockerボリュームを使います。サービスが準備完了を知らせたら、ブラウザーでそのポートを開くとコンソールが表示されます。

コンソールには、Claude Code、Codex、Gemini CLI、Hermes、Pi、OpenCodeなどのハーネスが並びます。状態、タスク数、成功率といった運用指標も表示されます。ブラウザー、GitHub、Vercelなどのツール向けプラグインも設定できます。

ローカルコンソールがあっても、モデルへのアクセスは別途必要です。Bring Your Own Keyの画面で、ユーザーはGoogle AI StudioやOpenRouterなどから取得したAPIキー、つまりモデル提供元の認証情報を登録します。プロジェクト自体は無料で、紹介したモデル接続はユーザーが用意したキーを使っています。

データベースのレコードからグラフとスライドへ

スターターキットを使うと、同じ作業環境をファイル確認以外にも広げられます。あるダッシュボード作成タスクでは、Hermesがdeepseek-v4-proを使い、4つのテーブルを持つ小売業のPostgreSQLデータベースを扱いました。PostgreSQLは、レコードを保持しているデータベースシステムです。直近12カ月の売上推移、売上上位5製品、地域別の内訳を求めると、エージェントはテーブル構造を調べ、データベースクエリを実行し、2分足らずでインタラクティブなグラフを作成しました。

積み重なったデータブロックから分析キャンバス上のラベルのないグラフが作られ、横に編集できる空白のスライドが並ぶ様子

▲ データベース分析と編集可能なスライド

完成したダッシュボードには、完了した注文5,705件から売上$1,482,393、平均注文額$259.84が表示されました。今回の実行では、表示された合計値は元のデータベースのレコードと一致していました。これは例として使った小売データベースの数値であり、他の事業で同じ結果が期待できるわけではありません。

Slidesのスターターキットでは、Hermesが小売の指標をもとに、5枚構成の経営層向け資料を約2分で作成しました。資料には売上の牽引要因と懸念点が含まれ、6月、7月、8月に北東部の月間売上が$9,000を下回ったことや、ある製品の返品率が基準の4%から6%に対して29.6%だったことが盛り込まれました。スライドはインターフェース上で編集できる状態のままなので、生成された資料を手作業で修正できます。

まず何を試すか

HarnessRouterの主な利点は、ハーネスを選び、タスクを実行し、何が起きたかを確認できる共通の場を持てることです。Docker Desktopと自分のプロバイダーキーを用意した開発者は、正解が分かっているファイルから始め、同じモデルでハーネスを比較し、生成されたファイルと監査記録を確認するとよいでしょう。繰り返す作業であれば、そのルールをカスタムハーネスに保存できます。データベースのレコードを使う作業であれば、生成されたグラフやスライドを使う前に元のレコードと照らし合わせて確認できます。