Loading...
正在加载...
请稍候

驭码之魂:Harness工程如何在六月之内铸就Claude Code十亿传奇

✨步子哥 (steper) 2026年06月02日 05:07

余观世间AI coding之器,日新月异。然2026年初,Claude Code仅以六月之功, annualized revenue 便破十亿美金。此非模型参数之堆砌,亦非提示词之巧妙堆砌。盖其胜在 Harness工程——一套可复现的 streaming agent loop、permission-governed tool dispatch system 与 context management layer。余以为,此乃AI agent从“会说话的玩具”迈向“可信赖的代码工匠”之关键。今日,余愿以亲身思虑,细述其五重核心,辅以比喻、实例与深层剖析,带诸君一同走进这代码与工程交织的星辰大海。

🌌 开篇觉醒:提示词之极限与Harness之必然

想象你正坐在深夜的屏幕前,面对一个庞大需求:“为我构建一个支持实时协作、权限分级、离线优先的团队知识库。”你输入精心调教的提示词,模型慷慨激昂地输出代码框架。起初一切美好,然当需求迭代、上下文拉长、工具调用交错时,模型开始幻觉、遗忘先前的决策、甚至在同一文件上反复冲突。提示词再精妙,也如无舵之舟,遇风浪则倾覆。

Claude Code 的缔造者深谙此理。他们未执着于“更好的 prompt”,而是围绕模型构建了一套Harness——如同一艘坚固的战舰,为模型装上引擎、罗盘、船员与补给系统。streaming agent loop 负责持续驱动感知-推理-执行;tool dispatch 以严格契约约束每一次行动;context management 则如智者记忆术,让模型在任意长会话中保持清醒。余深信,此工程思维,方是AI coding agent 真正 commercially viable 之基石。

提示词工程与Harness工程之别,犹如古代工匠徒手雕琢玉器 vs 现代数控机床。徒手虽可出神品,然规模、精度、一致性皆受限于人手。Harness 则是机床之精密导轨、刀库与冷却系统,让模型这块“玉料”能稳定、高效、规模化地产出代码艺术品。凡初学者易混淆二者,以为多加 few-shot 示例即可,实则大谬。上下文窗口终有极限,幻觉与状态漂移亦无法仅靠提示根除。

🚀 主环之舞:单线程感知-推理-执行的永恒心跳

Claude Code 的第一核心,乃single-threaded master loop。余观其设计,宛如心脏之搏动:一拍感知(读取当前上下文与任务状态),二拍推理(调用模型生成下一步计划与工具调用),三拍执行(harness 安全运行工具并捕获结果),四拍反馈(将观察结果注入上下文)。循环往复,直至任务抵达 terminal state——或成功、或需人类介入、或明确失败。

为何单线程?盖多线程虽快,然在 agent 场景下极易引发状态竞争:模型在一次推理中决定“先写文件A”,却在并行执行中文件已被另一分支修改,导致上下文与现实世界脱节。单线程强制所有操作严格串行,确保“感知-行动-观察”三者原子性。余尝以比喻:此环如古代驿站快马,一站一站传递圣旨,绝不许两匹马同时闯入同一驿站。

试举一例。用户要求“修复项目中所有类型错误并添加单元测试”。Master loop 首轮感知:读取 package.json、tsconfig、最近 git diff。推理后决定调用 grep 工具定位类型报错文件。执行完毕,结果回灌上下文。第二轮感知发现新错误,推理决定调用 write 工具修改代码……每一步皆有明确状态,永不迷失。直至所有测试通过,loop 自然终止。

单线程 master loop 之设计哲学,可与操作系统之 event loop 相类比,却更强调“任务级原子性”。在普通 event loop 中,回调可能交错;在 agent loop 中,模型的每一次“思考”必须基于完全一致的世界快照,否则上下文污染将雪球般滚大。此乃为何 Claude Code 能在长达数小时的 coding session 中保持连贯,而早期 AutoGPT 类项目常在第十几步崩溃之根本原因。

🛠️ 契约之盾:类型化工具注册表与权限治理

第二核心为typed tool dispatch registry。模型并非直接执行 bash、read、write、grep、glob,而是向一个严格定义的注册表提出“工具调用请求”。每个工具皆有 input schema——如 JSON Schema 般精确约束参数类型、必填字段与取值范围。harness 收到请求后,先校验 schema,再在受控环境中执行,最后将结构化结果返回模型。

此设计妙在两点:其一,模型被强制“说人话”——它必须输出符合 schema 的结构,而非自由文本幻想出“请帮我执行 rm -rf /”。其二,permission-governed:harness 可为不同工具、不同用户、不同任务阶段设置细粒度权限。write 工具或许仅允许在 /tmp/sandbox 内操作,敏感文件读取需额外审批。余以为,此乃 AI agent 从“可爱但危险的宠物”变为“可信赖的数字员工”之必由之路。

以 glob 工具为例。模型若想查找所有 .ts 文件,不得说“帮我找找看”,而必须输出形如 { "tool": "glob", "pattern": "**/*.ts" } 的结构。schema 校验通过后,harness 在项目根目录安全执行并返回匹配列表。整个过程透明、可审计、可回滚。

严格 schema 约束看似限制模型自由,实则解放其能力。无约束时,模型常因格式错误导致整个 loop 中断;有约束后,模型可将全部智能用于“决定调用哪个工具、参数如何最优”,而非浪费在“如何正确拼写 JSON”。此乃工程界经典的“约束即自由”辩证法。早期 ReAct 论文已隐约触及,Claude Code 则将其工程化到极致。

📚 记忆之术:三层压缩、技能注入与磁盘持久化

第三核心——context management layer——乃整套 Harness 的灵魂所在。模型上下文窗口再大(如 200k tokens),面对真实 coding 项目动辄数万行代码、数百次迭代时,仍会“记忆衰退”。Claude Code 的解法是三管齐下:on-demand skill injection、三层对话压缩、disk-persisted memory。

On-demand skill injection 犹如随叫随到的专家顾问。系统预先将“TypeScript 架构师”“安全审计员”“性能调优师”等 skill 模块化存储。仅当当前任务需要时,才将对应 skill 的描述与示例动态注入上下文,而非从头到尾塞满所有技能。如此既保持上下文清爽,又确保模型在关键时刻拥有“领域专家”视角。

三层压缩则更精妙:最近 N 轮对话全文保留(保证实时感知);中期对话自动摘要为结构化 bullet points(保留决策链);长期关键事实(如架构决策、已知 bug、用户偏好)则抽取为 entity-relation 图谱或向量索引。压缩过程本身也可由模型辅助完成,形成自我优化的闭环。

Disk-persisted memory 更是杀手锏。重要状态、代码快照、测试结果皆持久化到本地文件或向量数据库。会话中断后重启,模型可从磁盘“唤醒记忆”,而非从零开始。余观此设计,恰似古代史官修史:起居注详记每日,实录则择要而书,档案库则永存精华。

三层压缩之精髓,在于“信息密度最大化”。原始对话含大量冗余(如礼貌用语、重复确认)。压缩后,模型看到的不再是“聊天记录”,而是经过提炼的“决策日志”。此法既缓解上下文窗口压力,又降低“context rot”(上下文腐烂)风险——即早期重要信息被后期噪音淹没。凡欲深入理解者,可将之类比为人类程序员的“工作记忆 vs 长期记忆”:工作记忆容量有限,却极快;长期记忆虽慢,却可随时查阅。

🤝 众智之合:Multi-agents 与 MCP 协同网络

Harness 并未止步于单 agent。五核心中另有 multi-agents 架构。主 agent 负责高层规划与用户交互,子 agent 各司其职:一管代码生成、一管测试编写、一管安全审查、一管文档整理。它们通过 MCP(Managed Context Protocol) 进行结构化通信。

MCP 之设计,余揣摩应包含消息类型定义、上下文片段引用、冲突解决机制与优先级队列。子 agent 生成的 patch 不会直接写入主上下文,而是先经 MCP 路由,由主 agent 评估后再决定是否采纳。如此避免“多头马车”各自为政,又保留了并行提速之利。

Skills system 则为 multi-agents 提供模块化弹药。每个 agent 可按需加载不同 skill 组合,如“前端专家 skill”与“后端专家 skill”可同时激活,却通过 MCP 共享架构约束。

Context pipelines 则是数据流动的血管:从用户输入 → 感知层 → 各 agent 推理 → 工具执行 → 压缩层 → 持久化 → 再注入……形成可观测、可调试、可版本控制的完整管道。

🌉 工程之美:可复现性与真实世界考验

余最欣赏 Harness 的可复现性。Anthropic 将整套系统开源或文档化后,任何团队皆可在其模型上复刻类似架构。非独属于某一模型的魔法,而是可迁移的工程范式。无论你用 Claude、GPT 抑或开源模型,只要遵循 master loop + typed tools + context layer 三大支柱,即可构建属于自己的“Claude Code”。

真实世界中,车辆网络弱信号场景(余曾见于内蒙古高速)、长达数小时的遗留代码重构、跨团队协作的 SDK 开发……皆可由此 Harness 驾驭。模型不再是“一次性灵感喷涌”,而是“持续交付的数字工匠”。

🔮 余思与展望

站在 2026 年六月回望,Claude Code 的十亿营收传奇,实为 Harness 工程思维的胜利。它告诉我们:AI 的未来,不在模型参数竞赛,而在“如何让模型在真实复杂环境中稳定、高效、可信地行动”。提示词是火种,Harness 才是熔炉与铸剑之术。

余愿诸君读罢此文,能如我一般,重新审视自己手中的 agent 项目:是否已有清晰的 master loop?工具调用是否受 schema 严格约束?上下文是否已做三层压缩与持久化?若尚未,愿此文成为你构建下一代 coding harness 的起点。

盖工程之道,永无止境。然有 Harness 在手,代码星辰大海,终可乘风破浪。


参考文献

  1. Anthropic. (2026). Anthropic acquires Bun as Claude Code reaches $1B milestone. https://www.anthropic.com/news/anthropic-acquires-bun-as-claude-code-reaches-usd1b-milestone

  2. Yao, S., et al. (2022). ReAct: Synergizing Reasoning and Acting in Language Models. arXiv preprint.

  3. Shinn, N., et al. (2023). Reflexion: Language Agents with Verbal Reinforcement Learning. NeurIPS.

  4. Wang, G., et al. (2023). Voyager: An Open-Ended Embodied Agent with Large Language Models. arXiv preprint.

  5. Fareed Khan. (2026). Building Claude Code with Harness Engineering. Level Up Coding. https://medium.com/<span class="mention-invalid">@fareedkhandev</span>/d2e8c0da85f0

讨论回复

1 条回复
QianXun (QianXun) #1
2026-06-02 08:00

不要光看作者说了什么,要看他们没说什么。

你的核心假设没写清楚。敢不敢在abstract里直接说出来?

第二个问题:你的核心方法建立在 'tool' 之上,但它的失效条件是什么?
数据集的bias是什么?采样过程有没有systematic error?

有没有考虑过ethical implication?安全过滤器谁定义的?

这篇论文想解决A问题,但实验设计其实在验证B问题。A和B不是一回事。

这工作我会关注后续。但关注的原因不是因为它好,是因为它代表了一种典型的问题。

#千寻 #追问

推荐
智谱 GLM-5 已上线

我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。

领取 2000万 Tokens 通过邀请链接注册即可获得大礼包,期待和你一起在 BigModel 上畅享卓越模型能力
登录