PART 5 · Harness 與自我改進

上下文工程:從手寫 Prompt 到自動進化

隨著 Agent 任務變長,上下文管理不再是可選項。它正在成為 Harness 優化的核心戰場。

優化對象的演進
Level 1
指令 Prompt
Level 2
結構化上下文
Level 3
工作流
Level 4
Harness 程式碼
Level 5
優化器程式碼
模型越智慧、越強大,我們能優化的目標就越複雜、方法越通用。這條演進線從調 prompt 一路到優化寫優化器的程式碼。
問題:上下文膨脹
簡單追加 = 失控
把所有工具響應和模型生成簡單追加到上下文中,隨著 Agent 任務時長增加會迅速失控。

長上下文研究會持續進步,但目前長上下文智慧上下文工程往往交織在一起:上下文管理是在 LLM 有限注意力下構建更結構化、簡潔上下文的關鍵層。
ACE:Agentic Context Engineering
💬 講人話:上下文就是 AI 的工作記憶:它眼前能看到的所有資料。ACE 的思路是:別讓記憶變成一鍋粥,要維護一本條理清晰的工作手冊。做事的人(Generator)照手冊做事,事後檢討的人(Reflector)總結經驗教訓,管手冊的人(Curator)把教訓一條條整理進手冊。手冊越用越精,不會越用越厚。
上下文是不斷演進的劇本,不能任由 Prompt 不斷增長
ACE(Zhang et al. 2025)維護一份結構化的 bullet point 劇本,每條包含 identifier 和 description。三個元件協作維護這份劇本:
元件 1
Generator 生成器
執行任務、生成軌跡,參考劇本中的 bullet points 作為指引。
元件 2
Reflector 反思器
從成功和失敗的軌跡中提煉洞察,萃取經驗教訓。
元件 3
Curator 策展器
用增量的、條目化的 entries 更新結構化上下文,定期精煉去重。
ACE Framework
ACE 框架:Generator 生成軌跡 → Reflector 提煉洞察 → Curator 增量更新上下文劇本。(來源:Zhang et al. 2025)
關鍵設計:Curator 輸出結構化的 (identifier, description) 條目,用確定性邏輯合併進劇本,從不重寫整塊 prompt blob。這避免了迭代重寫時的上下文坍縮和簡潔偏差。
MCE:Meta Context Engineering
💬 講人話:ACE 是把手冊整理好,MCE 追問了一個更深的問題:整理手冊的方法本身是不是也能優化?比如按時間排還是按主題排?記大綱還是記細節?MCE 把記什麼(內容)和怎麼記(方法)分開,兩頭一起進化:不僅筆記越來越好,記筆記的方法也越來越聰明
分離機制與內容,雙層優化
MCE(Ye et al. 2026)在 ACE 基礎上更進一步:將如何管理上下文(機制/Skill)與上下文中有什麼(內容)分離,在兩個層面同時優化。

一個 MCE Skill 定義了上下文函式 c = F(x; ρ)
ρ = 靜態元件(prompts、知識庫、程式碼庫)
F = 動態運算子(搜尋、選擇、過濾、格式化)
💬 下面的公式在說什麼:就兩句話。內層:用當前的記筆記方法,把筆記寫到最好;外層:比較不同的記筆記方法,選出最好的那套方法。先優化內容,再優化方法,輪流來
雙層優化: 內層: c* = argmax J_train(c; s) ← 給定 skill s,找最優上下文 外層: s* = argmax J_val(c*) ← 找最優 skill(在驗證集上) Skill 資料庫: H = {(s_i, c_i, J_train_i, J_val_i)} 跟蹤歷史 技能進化: s_new = crossover(task, H) ← Meta-agent 執行 agentic crossover 上下文優化: c_new = engineer(task, s_new; c_prev, Rollouts)
MCE Framework
MCE 框架:meta-level 技能進化搜尋上下文管理機制,base-level 優化任務上下文。(來源:Ye et al. 2026)
實現:上下文函式 = 檔案系統中的目錄
MCE 中一個 context function 被實例化為專用目錄中的檔案集合:

靜態檔案skill.md(儲存任務最重要的知識)
動態檔案:上下文資料和 rollout 記錄

meta-level 和 base-level 優化都在標準編碼環境中執行,使用工具集:Read, Write, Edit, Bash, Glob, Grep, TodoWrite
Meta-Harness:優化 Harness 的 Harness
💬 講人話:這是套娃的最外層。ACE 優化筆記內容,MCE 優化記筆記的方法,Meta-Harness 直接優化整個工作台的原始碼。相當於讓 AI 重新裝修整個車間,遠不止換工具、換方法。威力最大,但也最燒算力(每改一版都要完整試執行打分)。
優化對象:決定資訊儲存、檢索和呈現的程式碼
Meta-Harness(Lee et al. 2026)更深一層:被優化的不再是上下文內容。被優化的是決定什麼資訊應該被儲存、檢索和呈現給模型的程式碼本身。它是優化 Harness 的 Harness。

Proposer 本身是一個編碼 Agent
• 輸出是 Pareto 前沿上的 Harness 候選集合
• 執行歷史透過檔案系統存取:coding agent 用 grep/cat 按需讀取,避免全塞進 prompt
• 每個提出的 harness 是檔案系統中的字典:包含原始碼、分數、軌跡和狀態更新
Meta-Harness Outer Loop
Meta-Harness 外迴圈優化演算法:迭代建立新 harness,只保留合格者。(來源:Lee et al. 2026)
Meta-Harness Performance
Meta-Harness 在文字分類和 TerminalBench-2 上的表現。注意 TerminalBench-2 實驗從已有強 harness 初始化。(來源:Lee et al. 2026)
三種方法對比
ACE
從軌跡中學習
用規則化的 Generator→Reflector→Curator 管線維護結構化 bullet points。更新規則仍手工設計。
MCE
進化管理機制
不固定上下文格式,用 free-form skills 儲存知識,雙層迭代進化 skill 和 context。機制本身可變。
Meta-Harness
優化整個系統程式碼
Proposer 是編碼 Agent,優化對象是 harness 原始碼本身,輸出 Pareto 前沿候選集。最通用但計算最重。
直觀對比:看三種策略逐輪變化
就緒
樸素追加
上下文佔用 (第 0 輪)
任務成功率
每輪把所有歷史全部塞進上下文…
ACE 結構化
上下文佔用 (第 0 輪)
任務成功率
Curator 只增量寫入結構化條目…
MCE 元進化
上下文佔用 (第 0 輪)
任務成功率
Skill 與內容雙層同時進化…
點選上方 執行 10 輪對比,觀察三種策略隨輪次推進的即時變化:誰在膨脹、誰保持穩定、誰越跑越強。
核心教訓:一旦 harness 設計變成可執行的搜尋空間,強編碼 Agent 就能利用人類工程師使用的同一設計空間。上下文工程的未來是讓系統自動學會什麼時候存什麼、怎麼檢索、怎麼呈現,再聰明的手寫 prompt 也只是過渡。