論文解説: JIT-Agent — エージェントの「ハーネス」をその場で書き起こすモデル
エージェントの性能はモデルだけで決まらない。記憶・計画・行動・道具の4モジュールからなる「ハーネス」をタスクごとに生成する専用モデル JIT-Agent を、前提知識なしで解説する。
JIT-Agent: Scaling Harness Intelligence via Just-in-Time Harness Evolution
一次資料 — この記事の根拠
論文の発表 2026-08-26→この解説の公開 2026-08-30同月
JIT-Agent: Scaling Harness Intelligence via Just-in-Time Harness EvolutionGuibin Zhang, Leo Lu, Fangzhou Xie ほか · 2026-08-26 · v1arXiv:2608.25593論文ページ·PDF原文の要旨(Abstract)を読む
Agent capability is not determined by the model alone. The agent harness, encompassing memory management, planning strategy, action protocol, and tool/skill orchestration, can dominate the contribution of the underlying foundation model. Yet harness design remains manual, task-specific, and fundamentally unscalable. We present JIT-Agent, a harness intelligence model trained to synthesize task-adaptive agent harnesses on the fly for arbitrary off-the-shelf agentic LLMs. We formalize the agent harness as a composable, machine-generatable artifact governed by a fixed four-module protocol, and train JIT-Agent to customize harnesses for a given task at hand, repair harnesses for stable and reliable execution, and self-evolve by distilling performance signals from an expanding archive of prior harness configurations. Equipped with JIT-Agent as a harness helper, DeepSeek-V4-Flash surpasses GPT-5.6 on DeepSearchQA (+9.1) and OdysseyBench (+4.3), while the already strong GLM-5.2 gains up to +20.2 points. Across controlled evaluations, JIT-Agent-generated harnesses are performance-competitive with mature agent runtimes such as OpenCode and Claude Code and consistently improve multi-scale model families of DeepSeek V4, Mimo-V2.5, and Qwen3.6. To our knowledge, JIT-Agent is the first model purpose-built for just-in-time harness generation, establishing harness intelligence as a trainable, transferable, and compounding dimension of agent capability orthogonal to model scaling.
同じ料理人でも、厨房が違えば料理が変わる
腕のいい料理人を一人連れてきたとします。その人が作る料理の質は、腕だけで決まるでしょうか。包丁がどこにあるか、冷蔵庫に何が残っているか、注文票がどう回ってくるか、洗い物を誰がやるか — つまり厨房の作りが悪ければ、腕のいい料理人でも遅く、雑になります。
LLMエージェントも同じです。GPTやGLMのような基盤モデルは「料理人」ですが、その周りには必ずハーネス(harness)と呼ばれる仕掛けがあります。会話履歴のどこを残してどこを捨てるか。次に何をやるかをどうメモするか。どの道具(ツール/API/スキル)を今この瞬間に見せるか。行動をどう実行し、失敗したらどう戻すか。Claude CodeやCodexのような「エージェント製品」の正体は、モデルそのものではなく、この周辺の仕掛けの集合体です。
論文では、エージェントの能力は「モデルの重みだけの性質ではなく、モデルとハーネスのペアの性質である」と述べられています (§1)。強いモデルでも、間違った記憶・計画・行動プロトコルの後ろに置かれれば失敗する。逆に良いハーネスも、モデルがそれを理解して従えなければ意味がない、という双方向の関係です。
ここに問題があります。ハーネス設計は今のところ手作業で、タスクごとに人間が書き、しかもスケールしません。JIT-Agent(arXiv:2608.25593)は、この「ハーネスを書く」という作業そのものを機械にやらせる試みです。
ハーネスを4つの部品に分解する
まず「ハーネスとは何か」を、勝手な自由記述ではなく固定されたひな型に押し込みます。論文は、あらゆるハーネスを4つのモジュールの組として書けると仮定します (§3.1)。
言い換えると、ハーネス は4つの部品の詰め合わせです。(Memory)は記憶、(Planning)は計画、(Action)は行動、(capability orchestration)は道具の割り当てを担当します。実行時の依存順は と定められています (§3.1)。
1ステップの中身は、次の4行として定義されています。
順に読むとこうです。 は「これまでに起きたこと全部の記録」、そこから記憶モジュールが今見るべき景色 を作ります(履歴 → ビュー)。計画モジュールが、タスク と内部状態 とその景色から、今すぐやる一手の指示 を作ります(ビュー → 局所指示)。次に道具モジュールが、使える道具の全集合 から今回だけ見せる部分集合 を選びます。最後に行動モジュールが状態を更新し、実際に発行する行動 (ツール呼び出し、または最終回答)を吐きます。
この形式のうまいところは、既存のエージェントがすべて「4つの穴の埋め方の違い」として書き直せる点です。論文が挙げる例 (§3.1):
- 素のReActは — 履歴は全部持ち、明示的なプランナーは無く、道具は全部見せる
- CodexやOpenCodeのような実用ランタイムは — 行動ループはReActのままだが、コンテキスト上限の手前で履歴を圧縮し、TODOリストを明示的に持つ
- ROMAのような再帰型は — サブエージェントを生やし、各々に別のコンテキストと道具を割り当てる
つまり「エージェントの流派の違い」は、多くの場合4つのスロットの選び方の違いに還元できる、というのが出発点です。そして4つのスロットに独立な選択肢がある以上、組み合わせの数は掛け算で増えます。人間が全部試すのは無理だ、という話につながります。
作り置き(AOT)か、注文を見てから作る(JIT)か
ハーネスを自動で良くする研究は既にあります。論文はそれらの多くを Ahead-of-Time(AOT、作り置き) と分類します (§1, §2)。実行ログを溜め、そこからハーネスのコードやプロンプトや道具を最適化し、「この一式が将来のタスクにも効くだろう」と期待して持続的な成果物を1つ育てる方式です。配備先の分布が安定していれば強力ですが、次に来る問題の構造を見る前に汎用ハーネスをコンパイルしておくことを要求します (§1)。
JIT-Agentが取るのは Just-in-Time(JIT、注文後に作る) の立場です。論文の観察はシンプルで、タスクによって必要なハーネスの「型」が違う、というものです (§1)。
- 広く探す検索タスク → 並列に証拠を探る形が向く
- ターミナル操作 → 素直な直列ReActループが向く
- ディープリサーチ → 集めた証拠に対するワーキングメモリが要る
- リポジトリ規模のコーディング → パッチ・テスト・トレースを置くファイルシステムが媒介になる
しかも適切なハーネスはドメイン依存であるだけでなくインスタンス依存だ、と論文は言います。だとすれば、1つの作り置きを全部に当てるより、タスクを見てからその場で組む方が筋が良い。ここから Model-as-a-Harness(訓練されたメタエージェントがその場でハーネスを生成し、任意の既製エージェントLLMがその下で動く)という定式化が出てきます (§1)。
13個の「種」を用意する — HarnessFactory
生成させるには、まずお手本が要ります。論文は共通プロトコル と共通カーネルの下で、代表的な13個の既存スカフォールドを書き直して揃えました。これが HarnessFactory です (§3.2)。ReAct、Plan-and-Execute、ReSum、Flash-Searcher、GAM、MemoBrain、AggAgent、OAgent、AgentFold、HiAgent、DeepAgent、ROMA、AOrchestra の13件で、これが初期の種バンク ()になります。
同じインタフェースに揃えることには2つの意味があります。1つは、4モジュールの表現力が本当に既存流派を覆えるかの検証。もう1つは、生成モデルに与える参照材料の供給です。運用が進むとバンクは と育ち、各エントリはタスクと観測された報酬・レイテンシ・コストを抱えます。
3段階で「ハーネス知能」を訓練する
論文は、必要な能力を3つに分けています (§1)。❶ 適応性(タスクに合ったものを出せるか)、❷ 信頼性(そもそも動くか、壊れたら直せるか)、❸ 進化性(実行フィードバックを次の設計に活かせるか)。この3つをまとめて harness intelligence(ハーネス知能) と呼び、3ステージの訓練で獲得させます (§4)。
Stage I: お手本の模倣+「効いて安い方」を選ぶ
より強い教師モデル に、タスク・プロトコル・使える道具の一覧・種バンクから引いた3つの参照スカフォールドを渡し、タスク適応ハーネスを書かせます。プロトコル検証と実行チェックを通ったものだけを採用してSFTデータにします (§4.1)。
ただしプロトコル準拠は最低条件にすぎません。動くハーネス同士でも、報酬・レイテンシ・費用は大きく違う。そこで同じバックボーン・同じ評価シードで比較し、次の条件を満たすときだけ「 の方が良い」という選好ペアにします (§4.1)。
読み下すと、報酬 は厳密に上がっていて、レイテンシ と費用 はどちらも悪化していない(そのうえで少なくとも片方は厳密に改善している)ときだけ勝ちとする、ということです。「正解率は上がったがコストが倍」という改善を最初から選好データに入れない設計です。
コメント
コメントにはログインが必要です