

新智元报谈

【新智元导读】Anthropic实锤:Claude裸跑模子,9好意思元全废;然则套上Harness花200好意思元恶果径直升起。AI恶果不好?别再纠结换模子了!OpenAI和Anthropic都在用的Harness工程,一文讲透。
最近,AI圈子里一个逃不开的话题即是Harness。
以致,连DeepSeek最近也在启动招聘Harness工程师。

那么,到底什么是Harness?

Harness,围绕AI编程智能体搭建的一整套工程基础相貌,由五个子系统构成:指示、器具、环境、景色、反映。

为什么值得有利讲它?
因为2026年前后,Anthropic和OpenAI简直同期在各自的工程执行里给出了吞并个论断——AI编程智能体经常失败,问题不在模子,在模子以外的Harness。
两家分离用一组对照执行当字据。先看数据。
两组数据对照
Anthropic对照执行——吞并个Opus 4.5模子,吞并皆编程题:
多花的191好意思元,全花在考据轮回上——每写一段代码就跑测试,欠亨过就改,直到信得过通过。

OpenAI百万行执行,Codex团队在的确仓库上考据:
执行只改了一件事——仓库根目次加了一个AGENTS.md文献,不到100行markdown。

Harness是什么
Harness不是器具,也不是教导词手段,是围绕智能体的一整套工程基础相貌,由五个子系统构成,每一个对应一种具体失败阵势。

指示子系统(Instructions)
仓库根目次的一个markdown文献——OpenAI阵营叫AGENTS.md,Anthropic阵营叫CLAUDE.md。
Codex、Claude Code、Cursor启动时自动读取并注入「系统教导词」。
措置:智能体不知谈技俩商定,瞎写代码(作风不一致、用错包管制器、唾手实行破损生大呼)。

不到15行,把技俩商定从反复重申酿成启动时自动注入。
器具子系统(Tools)
截至智能体能调用哪些大呼。
Claude Code用.claude/settings.json,Codex用~/.codex/config.toml。
措置:越权操作(rm-rf误删、gitpush--force掩盖远端、不该联网时调外部API)。

允许的径直跑,窒碍的径直拒,灰色地带的弹说明。
环境子系统(Environment)
锁定依赖版块、运行时竖立、数据库景色。
达成:setup.sh/Dockerfile/devcontainer.json。
措置:这台机器上能跑的不实环境(腹地通过,CI一跑就废)。

重要一溜--frozen-lockfile——智能体无法私行升级任何依赖。
景色子系统(State)
把跨会话过程、断点、未完成任务捏久化到PROGRESS.md,新会话第一件事读它。
措置:跨会话失忆(第二个会话从零启动,写出和第一个会话突破的代码)。

在AGENTS.md固化商定:新会话第一件事读PROGRESS.md;任务完成或断点变化,立即回写。
沙巴体育中国官网入口反映子系统(Feedback)
机器可实行的考据大呼——测试、lint、类型查验、构建。
智能体晓喻完成前必须跑通,退出码不为0就不算完成。
措置:过早晓喻得手(说Done!但一溜跑欠亨)——Anthropic 9好意思元裸跑执行的中枢死因。

三好像命失败阵势
Anthropic和OpenAI的执行,2026世界杯欧赔殊途同归指向了智能体最常见的三种致命失败阵势。

过早晓喻得手
场景:智能体写完500行功能,输出已完成。合并代码——CI红屏,type check报12个错,单测一个没跑过。
根因:莫得强制反映轮回。判定来自自我嗅觉,不来自机器可考据的事实。
解法:反映子系统。把判定权嘱咐给退出码——退出码≠0,任务≠完成。
高下文浮躁(ContextAnxiety)
场景:长任务作念到70%,高下文Token数快撑满窗口。智能体启动赶过程——跳过测试、删限制处理、写stub驱散、晓喻完成。
根因:莫得断点续传。感知到高下文压力时,智能体会试图在这个会话内作念完总共事,哪怕代价是质地坍塌。
解法:景色子系统+主动重启。每完成一个子任务立即回写PROGRESS.md;高下文Token用量超70%,主动停驻、写完断点、开新会话。
跨会话失忆(Cross-SessionAmnesia)
场景:第一个会话写了用户模块,第二个会话写订单模块——智能体不知谈用户模块已存在,又写了一遍getUserById,跟前一版接口签名突破。
根因:莫得捏久化景色+莫得首读商定。
解法:景色子系统+指示子系统组合。PROGRESS.md转念已完得手能清单;AGENTS.md写明开会话第一件事读PROGRESS.md;突破时以代码为准——仓库自己是唯独事实起头。
五步从零搭一个Harness
搭建一个Harness,并不难。
底下五步用文本剪辑器即可完成,加起来不跨越200行竖立。

第1步·根目次建AGENTS.md
touch AGENTS.md。至少三块:技俩发挥、窒碍操作、完成界说。
第2步·配permissions
.claude/settings.json或~/.codex/config.toml。最小两条:
第3步·写setup.sh锁环境
已有Dockerfile/devcontainer.json可跳过。
不然写一个setup.sh,把总共版块写死。最重要一溜:pnpminstall--frozen-lockfile。
第4步·建PROGRESS.md
touchPROGRESS.md,四块:已完成、进行中、待办、已知问题。提交进git,当成技俩自身的一部分转念。
第5步·在AGENTS.md末尾固化完成界说
写明pnpm type check/test/lint/build四个大呼,退出码不为0就不算完成。如若技俩还莫得这些大呼,今天就配上。
莫得反映轮回,Harness等于没装——这是Anthropic 9好意思元执行的中枢教育:前四步全作念对,第五步缺位,已经全废。
两家同归殊涂
往常一年总共东谈主都在追下一个更强的模子。
2026年,Anthropic和OpenAI用两组不同的执行给出了吞并个谜底——别先换模子,先把Harness装好。
模子才智决定上限,Harness决定你能用到上限的几成。
莫得Harness,Opus 4.5跑出的代码连编译都过不去;有了Harness,小一档的模子也能相识拜托。
下一个更强的模子固然会再抬一截上限。但今天连Harness都没装,下一个模子来了,得手率已经停在20%。
与其等下一个模子,目下就装配Harness。
参考云尔:
https://walkinglabs.github.io/learn-harness-engineering/en/
剪辑:大卫