[控场AI]
· 8 分钟阅读· 4,033 字

Harness已死?T3 Code作者为何说别再纠结AI编程工具

Harness已死?T3 Code作者为何说别再纠结AI编程工具

Harness之争已无意义:模型与Harness融合,差距仅几个百分点,开发者应关注更高层价值。

文章围绕AI编程社区中关于Harness的争论展开。作者借T3 Code创作者的观点指出,Harness作为LLM与工具之间的桥梁,其重要性正在下降:模型开始针对特定Harness训练,不同Harness间的性能差距已缩小到三到五个百分点。创作者澄清T3 Code并非Harness,而是ADE(智能体开发环境),通过MCP数据层实现跨Harness协作。文章还批评工程师过度关注技术栈细节的倾向,认为抽象层持续上移,固守旧层者面临淘汰风险。最终结论是Harness正变得不可见,用户只关心模型能力与结果,而非底层使用哪个Harness。

引言:一场关于"厨房"的争论

最近,AI编程社区里关于"Harness"的讨论火药味十足。有人公开宣称Harness根本不重要,将其比作程序员之间无聊的"Tab还是空格"之争。这番言论出自一位知名YouTuber,而反驳他的正是T3 Code的创作者——一位深度参与AI编程工具构建的开发者。

据这位创作者在视频中的说法,他曾是Next.js最坚定的捍卫者之一,如今却要亲手给"Harness之争"画上句号。他的核心观点令人意外:Harness正在变得无关紧要,开发者不该再把精力浪费在选择哪个Harness上。

kitchens. You go to a restaurant.

什么是Harness?一个厨房的比喻

要理解这场争论,得先搞清楚Harness到底是什么。LLM(大语言模型)本质上只会做一件事:生成文本。但我们在新闻里看到AI能写代码、能修Bug、甚至能发现企业系统的架构缺陷——这些能力从何而来?

答案就在Harness。你可以把LLM想象成一位顶级大厨,而Harness就是那间配备了锅碗瓢盆、刀具灶台的厨房。没有厨房和工具,再厉害的厨师也只能对着菜单干瞪眼。同样,LLM需要Harness提供一套它能理解的语法,让它能读文件、改代码、执行命令、调用API。没有Harness的LLM,就像站在空厨房里的厨师,只能告诉你它"会"做什么,却什么也做不了。

这位创作者进一步区分了几个容易混淆的概念:Claude Code的CLI是界面,而Agent SDK是Harness。T3 Code则两者都不是——它把自己定位为"ADE"(Agentic Development Environment,智能体开发环境),一个同时与人类和Harness交互的界面层。

MCP(Model Context Protocol) 是 Anthropic 于 2024 年底提出的一种开放协议,用于标准化 AI 模型与外部数据源、工具之间的连接方式。可以将它理解为 AI 世界的“USB-C 接口”:无论后端是数据库、分析平台还是文件系统,只要实现 MCP 服务端,Agent 就能以统一方式访问。MCP 的核心价值在于解耦——模型和 Harness 不必为每个数据源写定制集成代码,而是通过协议动态发现和调用能力。这正是文中 T3 Code 得以让 Agent 访问 Supabase、PostHog 等外部系统的技术基础,也是实现“一个 Harness 控制另一个 Harness”的关键中间层。

工程师为何总在关心不该关心的事

这位创作者抛出了一个犀利的观察:工程师天生就喜欢纠结那些本不该纠结的细节。从汇编指令集到编程语言,从框架之争到格式化工具,技术栈的抽象层级一直在向上移动。

他回忆道,自己入行时正赶上"框架大战"——Next.js对阵SvelteKit、Solid.js和Nuxt。再往前,他大学时代的热门话题是编程语言之争。而现在,连Next.js的新版本发布都很少有人讨论了。

"我们作为工程师,就是喜欢关心这些琐碎、不必要、世界告诉我们不重要的事情。"他在视频中说。这种倾向在AI时代变得尤为危险,因为技术栈顶部的东西——模型、Harness、界面——正在以越来越快的速度更迭。

他甚至举了一个亲历的例子:他最近注意到日志中出现了不该发生的故障,于是让Claude帮忙排查,结果Claude搭建了一整套告警、监控和追踪系统,定位了故障发生的区域和时间,并生成了一份报告。这份报告后来被Cloudflare的CTO主动索要,用于修复他们此前未曾察觉的管道问题。

"一个YouTuber发现了日志里的错误,问了Claude,然后拿到了Cloudflare CTO都想要的报告。如果你觉得这些东西没在变,那你三个月内就要丢工作了。"

it could just be something even simpler like Python,

模型与Harness正在融合,差距只剩几个百分点

为什么说Harness越来越不重要?这位创作者给出了两个关键理由。

第一,模型正在针对特定Harness进行训练。 过去,模型先具备工具调用能力,Harness再围绕模型做适配。现在反过来了——模型开始用Harness产生的数据训练,Claude模型在Claude Code里表现更好,OpenAI模型在Codex里表现更好,这是训练数据决定的。

第二,不同Harness之间的性能差距已经小到可以忽略。 他直言,Claude Code和Codex在使用Codex模型时的差距"大概也就三到五个百分点",而且这还可能是测量误差。"如果差距比这更大,那是LLM层的失败,会被解决的。"

他用自己在滑板上的经历做了个类比:滑板手会刻意练习"Switch"(反脚)动作,哪怕这比正常脚位难得多,纯粹因为挑战本身值得。但软件工程不是滑板——成为某个特定技术的专家,收入远高于什么都懂一点的通才。因此,当抽象层向上移动时,固执地留守旧层的人,往往也是最先被淘汰的人。

"我敢打赌,今天用Vim的人里,至少一半五年后还在用Vim,而他们中大多数人已经不在做软件开发了。另一半离开的人,会赚明显更多的钱。"

mentally switch to your left leg in front and launching off right.

Agent SDK 是 Harness 的具体实现形态之一,通常以软件开发工具包的形式提供,封装了工具调用、上下文管理、文件操作、命令执行等底层能力,供开发者构建自己的 Agent 应用。与 CLI(命令行界面)不同,Agent SDK 面向的是程序化调用而非人类交互。Claude Code 的 CLI 是用户直接操作的界面,而其背后的 Agent SDK 才是真正驱动模型执行任务的 Harness 层。理解这一区分有助于厘清 T3 Code 的定位:它既不是 CLI 也不是 SDK,而是位于两者之上的开发环境。

T3 Code是什么?不是Harness,是ADE

这场讨论的一个重要背景,是社区对T3 Code的普遍误解。很多人以为T3 Code是一个Harness,这位创作者反复澄清:它不是。

T3 Code不向Harness添加新工具,而是聚焦于"数据平面"——通过MCP(Model Context Protocol)让Agent访问Harness之外的数据和系统。Supabase MCP和PostHog MCP就是典型例子:它们让Agent能查询产品数据库或分析平台的数据,而这些数据本身不属于Harness。

这种设计带来了一个实际好处:如果你电脑上装了Claude Code并订阅了相应套餐,T3 Code会自动复用你的订阅和所有技能插件。同时,T3 Code的MCP层还能让一个Harness控制另一个Harness——比如用Claude Code启动一个使用其他模型的子Agent,因为MCP层充当了中间人的角色,而不是真正在控制另一个Harness。

"T3 Code是一个ADE——智能体开发环境。它像IDE之于代码编辑,但对象换成了Agent。"他说。

有趣的是,他承认ADE这个概念本身可能也很快不再重要,就像当年大家不再关心你用Vim还是VS Code一样。但"现在,我在乎,我们做了最好的一个,而且它免费开源。"

Like I got people saying you should use them by the way, a decent bit, but not a lot now.

ADE(Agentic Development Environment,智能体开发环境) 是伴随 AI 编程兴起而出现的新概念,类比于传统 IDE 之于代码编辑。传统 IDE 集成编辑器、调试器、版本控制等工具,服务于人类开发者;ADE 则将交互对象从代码换成 Agent,提供任务编排、多 Agent 协作、数据平面接入等能力。ADE 不直接参与模型推理或工具调用的底层实现,而是作为人类与 Harness 之间的协调层。文中 T3 Code 正是这一理念的实践:它复用已有 Harness(如 Claude Code),并通过 MCP 扩展数据访问边界。

结语:别再为Harness吵架了

回到最初的问题:Harness已死吗?这位创作者的回答更微妙——Harness没有死,但它正在变得不可见。就像普通用户不知道Twitter用了React Native Web一样,T3 Code的用户也开始不感知Harness的存在。他们只关心模型能不能干活,而不是哪个Harness包装了模型。

"Harness应该像你去的餐厅——你关心的是食物好不好、价格合不合适,而不是厨房里用了什么锅。"

对于那些还在争论哪个Harness更强的人,他的态度很直接:"恭喜你赢了三个百分点。我真心为你高兴。但我在专注做真正有生产力的事。"

也许下一次,当你看到有人坚称T3 Code是Harness,或者为了Claude Code和Codex哪个更好吵得不可开交时,可以把这篇文章转给他。毕竟,连这位创作者自己都说:"我太累了,我说完了,我结束了。"

分享:

相关推荐