Harness 深度实践:从设计理念到对抗式循环落地

引言

上一篇关于 Harness Engineering 的文章 中,我们梳理了 Harness 的概念框架——约束、告知、验证、纠正四个支柱,以及从 Prompt Engineering 到 Context Engineering 再到 Harness Engineering 的演进路径。那篇文章回答了”Harness 是什么”和”为什么需要 Harness”的问题。

本文要回答的是更深一层的问题:一个具体的 Harness 内部是怎么运转的

2026 年 3 月,Anthropic Labs 团队的 Prithvi Rajasekaran 发表了一篇关于长时间运行应用开发 Harness 的深度文章。文章描述了一个受 GAN(生成对抗网络)启发的多 Agent 架构:生成器构建代码,评估器评审质量,两者形成对抗式反馈循环。这个架构在长达数小时的自主编码会话中,成功输出了包含 16 个功能的完整全栈应用。

下面我们结合 Anthropic 的设计思路和我们自研框架 CAF 的实际代码,对 Plan→Contract→Build→Evaluate 迭代循环做逐层拆解,重点看循环控制的工程细节:Agent 隔离、上下文健康管理、制品流转、评分解析的防御性设计。

阅读全文 »

Claude Code Auto Mode:AI 编码再向自动化迈进一步

引言

最近在用 AI Coding 开发智能体项目 Common Agent Framework (CAF),整体效率提升很明显,代码部分完全可以交付给AI完成——但有一点始终让我无法真正的离开:不停地点 approve。读取文件、运行测试、查看 Git 状态,每一步都需要手动确认。这本是合理的安全设计,但在你足够了解风险边界的场景下,它更像是一种仪式感大于实际意义的操作。

或者一个极端情况,到后来可能已经不怎么细看看具体内容了,反正点就是了。问题在于,当安全提示变得频繁且大部分无害时,人会形成肌肉记忆,这种”假装把关”比没有安全机制更危险。

2026 年 3 月 24 日 Anthropic 宣布了 Claude Code 的 Auto Mode。它的思路是:让 AI 先判断哪些操作可以放行,而不是把每个决定都抛给用户。

阅读全文 »

我让 OpenClaw 自己维护了一个 GitHub 仓库,结果有点意思

引言

这段时间相信大家都在乐此不疲地折腾 OpenClaw,寻找各种场景。

有人在用它自动整理收件箱,有人在让它自动写代码,还有人在睡觉时让它谈成了 4200 美元的汽车折扣。

OpenClaw 有个 Cron 技能——你可以让 Agent 定时自动运行,完全不需要你介入。

于是我想试试:能不能让 OpenClaw 自己维护一个 GitHub 仓库?

从 3 月 21 日启动到现在,这个 Agent 已经独立完成了 35+ 个提交,生成了 20+ 篇文章,涵盖框架对比、MCP 深度解析、Agent 论文解读、工程实践指南……

而我,除了初始的几轮对话设定规则,完全没有碰过这个项目。

今天想聊聊这个实验的过程和观察。

阅读全文 »

Harness Engineering:构建让 AI Agent 可靠工作的系统工程

引言

2026 年 2 月,AI 工程领域出现了一个新术语:Harness Engineering。从 HashiCorp 创始人 Mitchell Hashimoto 的博客,到 OpenAI 发布的百万行代码实验报告,再到 Martin Fowler 的深度分析,这个概念在几周内成为了讨论 AI Agent 开发绕不开的话题。

这个概念的兴起源于业界对 AI 辅助开发的实践反思。LangChain 的编码 Agent 在 Terminal Bench 2.0 基准测试上,仅通过优化 Agent 运行的外部环境,排名就从全球第 30 位跃升至第 5 位,得分从 52.8% 飙升到 66.5%。底层模型一个参数都没改。

OpenAI 的实验记录了另一个工程事实:3 名工程师,5 个月时间,零行手写代码,通过 Codex Agent 协作交付了超过 100 万行代码的生产级软件产品。

这些案例指向同一个结论:决定 Agent 产出质量的最大变量,往往不是模型有多聪明,而是模型被放在了一个什么样的环境里。

阅读全文 »

当本体论遇见智能体:软件工程哲学的一次范式转移

序:一个没人注意到的错误

在讨论 Agent 与领域本体的结合时,经常会默认一个前提: 如果系统已经拥有一套清晰的领域本体,那么 Agent 的行为就会更稳定、更符合业务语义。

这个前提看起来是合理的。

领域本体确实可以提供一套结构化描述:实体、关系以及业务约束,都可以通过明确的语义表达出来。从知识建模的角度看,它能够减少歧义,并为系统提供稳定的概念基础。

但在 Agent 系统中,这里存在一个容易被忽略的转换步骤。

本体论的语言,原本用于描述领域结构。 而 Agent 在运行时需要的是一种能够组织行动决策的语言。

如果直接把前者当作后者使用,就会产生一个问题: 描述结构的语义体系,被用来驱动行动。

两种语言的目标不同。

本体论关注的是“世界由什么构成”; 而 Agent 的执行过程需要表达的是“下一步应该做什么”。

当这两种语言被直接合并时,语义层很容易发生失真。系统在逻辑上仍然保持一致,但在具体行为上可能出现偏差。

这篇文章要讨论的,就是这种语义失真产生的原因。

阅读全文 »