![]()
新智元報(bào)道
![]()
【新智元導(dǎo)讀】Anthropic實(shí)錘:Claude裸跑模型,9美元全廢;但是套上Harness花200美元效果直接起飛。AI效果不好?別再糾結(jié)換模型了!OpenAI和Anthropic都在用的Harness工程,一文講透。
最近,AI圈子里一個(gè)逃不開的話題就是Harness。
甚至,連DeepSeek最近也在開始招聘Harness工程師。
![]()
那么,到底什么是Harness?
![]()
Harness,圍繞AI編程智能體搭建的一整套工程基礎(chǔ)設(shè)施,由五個(gè)子系統(tǒng)組成:指令、工具、環(huán)境、狀態(tài)、反饋。
![]()
為什么值得專門講它?
因?yàn)?026年前后,Anthropic和OpenAI幾乎同時(shí)在各自的工程實(shí)驗(yàn)里給出了同一個(gè)結(jié)論——AI編程智能體頻頻失敗,問題不在模型,在模型之外的Harness。
兩家分別用一組對(duì)照實(shí)驗(yàn)當(dāng)證據(jù)。先看數(shù)據(jù)。
兩組數(shù)據(jù)對(duì)照
Anthropic對(duì)照實(shí)驗(yàn)——同一個(gè)Opus 4.5模型,同一道編程題:
多花的191美元,全花在驗(yàn)證循環(huán)上——每寫一段代碼就跑測(cè)試,不通過就改,直到真正通過。
![]()
OpenAI百萬行實(shí)驗(yàn),Codex團(tuán)隊(duì)在真實(shí)倉(cāng)庫(kù)上驗(yàn)證:
實(shí)驗(yàn)只改了一件事——倉(cāng)庫(kù)根目錄加了一個(gè)AGENTS.md文件,不到100行markdown。
![]()
Harness是什么
Harness不是工具,也不是提示詞技巧,是圍繞智能體的一整套工程基礎(chǔ)設(shè)施,由五個(gè)子系統(tǒng)組成,每一個(gè)對(duì)應(yīng)一種具體失敗模式。
![]()
指令子系統(tǒng)(Instructions)
倉(cāng)庫(kù)根目錄的一個(gè)markdown文件——OpenAI陣營(yíng)叫AGENTS.md,Anthropic陣營(yíng)叫CLAUDE.md。
Codex、Claude Code、Cursor啟動(dòng)時(shí)自動(dòng)讀取并注入「系統(tǒng)提示詞」。
解決:智能體不知道項(xiàng)目約定,瞎寫代碼(風(fēng)格不一致、用錯(cuò)包管理器、隨手執(zhí)行破壞性命令)。
![]()
不到15行,把項(xiàng)目約定從反復(fù)重申變成啟動(dòng)時(shí)自動(dòng)注入。
工具子系統(tǒng)(Tools)
限定智能體能調(diào)用哪些命令。
Claude Code用.claude/settings.json,Codex用~/.codex/config.toml。
解決:越權(quán)操作(rm-rf誤刪、gitpush--force覆蓋遠(yuǎn)端、不該聯(lián)網(wǎng)時(shí)調(diào)外部API)。
![]()
允許的直接跑,禁止的直接拒,灰色地帶的彈確認(rèn)。
環(huán)境子系統(tǒng)(Environment)
鎖定依賴版本、運(yùn)行時(shí)配置、數(shù)據(jù)庫(kù)狀態(tài)。
實(shí)現(xiàn):setup.sh/Dockerfile/devcontainer.json。
解決:這臺(tái)機(jī)器上能跑的虛假環(huán)境(本地通過,CI一跑就廢)。
![]()
關(guān)鍵一行--frozen-lockfile——智能體無法擅自升級(jí)任何依賴。
狀態(tài)子系統(tǒng)(State)
把跨會(huì)話進(jìn)度、斷點(diǎn)、未完成任務(wù)持久化到PROGRESS.md,新會(huì)話第一件事讀它。
解決:跨會(huì)話失憶(第二個(gè)會(huì)話從零開始,寫出和第一個(gè)會(huì)話沖突的代碼)。
![]()
在AGENTS.md固化約定:新會(huì)話第一件事讀PROGRESS.md;任務(wù)完成或斷點(diǎn)變化,立即回寫。
反饋?zhàn)酉到y(tǒng)(Feedback)
機(jī)器可執(zhí)行的驗(yàn)證命令——測(cè)試、lint、類型檢查、構(gòu)建。
智能體宣布完成前必須跑通,退出碼不為0就不算完成。
解決:過早宣布勝利(說Done!但一行跑不通)——Anthropic 9美元裸跑實(shí)驗(yàn)的核心死因。
![]()
三大致命失敗模式
Anthropic和OpenAI的實(shí)驗(yàn),不約而同指向了智能體最常見的三種致命失敗模式。
![]()
過早宣布勝利
場(chǎng)景:智能體寫完500行功能,輸出已完成。合并代碼——CI紅屏,type check報(bào)12個(gè)錯(cuò),單測(cè)一個(gè)沒跑過。
根因:沒有強(qiáng)制反饋循環(huán)。判定來自自我感覺,不來自機(jī)器可驗(yàn)證的事實(shí)。
解法:反饋?zhàn)酉到y(tǒng)。把判定權(quán)移交給退出碼——退出碼≠0,任務(wù)≠完成。
上下文焦慮(ContextAnxiety)
場(chǎng)景:長(zhǎng)任務(wù)做到70%,上下文Token數(shù)快撐滿窗口。智能體開始趕進(jìn)度——跳過測(cè)試、刪邊界處理、寫stub收尾、宣布完成。
根因:沒有斷點(diǎn)續(xù)傳。感知到上下文壓力時(shí),智能體會(huì)試圖在這個(gè)會(huì)話內(nèi)做完所有事,哪怕代價(jià)是質(zhì)量崩塌。
解法:狀態(tài)子系統(tǒng)+主動(dòng)重啟。每完成一個(gè)子任務(wù)立即回寫PROGRESS.md;上下文Token用量超70%,主動(dòng)停下、寫完斷點(diǎn)、開新會(huì)話。
跨會(huì)話失憶(Cross-SessionAmnesia)
場(chǎng)景:第一個(gè)會(huì)話寫了用戶模塊,第二個(gè)會(huì)話寫訂單模塊——智能體不知道用戶模塊已存在,又寫了一遍getUserById,跟前一版接口簽名沖突。
根因:沒有持久化狀態(tài)+沒有首讀約定。
解法:狀態(tài)子系統(tǒng)+指令子系統(tǒng)組合。PROGRESS.md維護(hù)已完成功能清單;AGENTS.md寫明開會(huì)話第一件事讀PROGRESS.md;沖突時(shí)以代碼為準(zhǔn)——倉(cāng)庫(kù)本身是唯一事實(shí)來源。
五步從零搭一個(gè)Harness
搭建一個(gè)Harness,并不難。
下面五步用文本編輯器即可完成,加起來不超過200行配置。
![]()
第1步·根目錄建AGENTS.md
touch AGENTS.md。至少三塊:項(xiàng)目說明、禁止操作、完成定義。
第2步·配permissions
.claude/settings.json或~/.codex/config.toml。最小兩條:
第3步·寫setup.sh鎖環(huán)境
已有Dockerfile/devcontainer.json可跳過。
否則寫一個(gè)setup.sh,把所有版本寫死。最關(guān)鍵一行:pnpminstall--frozen-lockfile。
第4步·建PROGRESS.md
touchPROGRESS.md,四塊:已完成、進(jìn)行中、待辦、已知問題。提交進(jìn)git,當(dāng)成項(xiàng)目自身的一部分維護(hù)。
第5步·在AGENTS.md末尾固化完成定義
寫明pnpm type check/test/lint/build四個(gè)命令,退出碼不為0就不算完成。如果項(xiàng)目還沒有這些命令,今天就配上。
沒有反饋循環(huán),Harness等于沒裝——這是Anthropic 9美元實(shí)驗(yàn)的核心教訓(xùn):前四步全做對(duì),第五步缺位,依然全廢。
兩家殊途同歸
過去一年所有人都在追下一個(gè)更強(qiáng)的模型。
2026年,Anthropic和OpenAI用兩組不同的實(shí)驗(yàn)給出了同一個(gè)答案——別先換模型,先把Harness裝好。
模型能力決定上限,Harness決定你能用到上限的幾成。
沒有Harness,Opus 4.5跑出的代碼連編譯都過不去;有了Harness,小一檔的模型也能穩(wěn)定交付。
下一個(gè)更強(qiáng)的模型當(dāng)然會(huì)再抬一截上限。但今天連Harness都沒裝,下一個(gè)模型來了,成功率依然停在20%。
與其等下一個(gè)模型,現(xiàn)在就安裝Harness。
參考資料:
https://walkinglabs.github.io/learn-harness-engineering/en/
編輯:大衛(wèi)
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺(tái)“網(wǎng)易號(hào)”用戶上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.