Harness Engineering,
扎根于软件巨人的肩膀。
行业已经从 Prompt Engineering 演进到 Context Engineering,再到 Harness Engineering。OpenLogos 是面向软件开发的 Harness Engineering 最佳实践——建立在 40 多年久经沙场的理论之上,为 AI agent 写代码的时代重新编译。
Agent = 模型 + Harness
模型之外的一切——系统提示词、工具集成、文件系统、编排逻辑、约束——都是 Harness。优秀的 harness engineering 让 AI agent 变得可靠、可追溯、可控。
Prompt Engineering
如何把话说清楚——指令设计与表达。
Context Engineering
如何递交正确的信息——上下文的筛选与投递。
Harness Engineering
如何让 AI 可靠地执行——编排、护栏与持续运行。
OpenLogos 如何实现 Harness 的每一层
AGENTS.md + logos-project.yaml —— AI 的 GPS,定义项目规则、当前阶段以及该读什么。
SKILL.md)—— 平台无关的 Markdown 文件,引导 AI 走过每个开发阶段。
logos/ 目录 —— 文档即上下文。每个阶段的产出都成为下一阶段的输入。
openlogos verify —— 三层可追溯性 + test-results.jsonl 自动化验收。
change proposal → merge → archive。安全、可审计的迭代。
Harness 背后的工程理论
OpenLogos 的 Harness 建立在成熟的工程理论之上。每一根支柱都为 Harness 的某一层提供动力。没有任何一处是凭空设计的。
行为驱动开发
GIVEN/WHEN/THEN 验收标准。以面向用户的场景作为唯一事实来源。
测试驱动开发
先写测试,再写代码。Red → Green → Refactor。测试定义契约。
openlogos verify 领域驱动设计
统一语言。限界上下文。领域模型驱动架构。
Stage-Gate 流程
阶段之间设质量门。每道门在放行前都有明确的通过/不通过标准。
文档即代码
纳入版本控制的文档。用对待源代码同样的严谨标准对待文档。
logos/ 目录 可执行的方法论
把方法论编码成 Markdown 文件,让 AI agent 自动读取并执行。
SKILL.md)、AGENTS.md 理论不是负担——而是杠杆
可预测性
这些实践经过数十年、数百万个项目的验证。当你把它们用于 AI 辅助开发时,你得到的是可预测的结果——而不是随机游走。
可组合性
BDD + TDD + DDD + Stage-Gate 天然可以组合。BDD 定义场景,TDD 验证场景,DDD 为场景建模,Stage-Gate 保障阶段间的质量。OpenLogos 把它们串接在一起。
可教性
相比临时拼凑的指令,AI agent 能从成熟范式中学得更高效。当你说"用 GIVEN/WHEN/THEN"时,AI 立刻理解这个范式,因为它在数百万训练样本中反复出现过。
回应质疑者
"这不就是瀑布模型吗?"
不是。瀑布模型先把所有需求排完,再做任何设计,再写任何代码。OpenLogos 是按场景排序的。S01 可以已经进入 Phase 3,而 S04 还停留在 Phase 1。这些阶段是一个推进模型,不是时间表。
"AI 本应很快。这反而增加了流程。"
一个 5 分钟的提示词产出一堆垃圾、让你 debug 3 小时,那不叫快。一个 30 分钟的结构化流程一次性产出正确、经过测试、可追溯的代码,那才真的快。速度的衡量单位是交付的功能,而不是生成的 token。
"这对小项目来说是过度工程。"
OpenLogos 可以优雅地向下伸缩。个人项目可以跳过 HTML 原型阶段。一个周末小项目可以把 Phase 1 + 2 压缩进一份文档。方法论是一套工具箱——按需取用即可。
"为什么不直接用敏捷(Agile)?"
敏捷假设开发者是人类,能把上下文记在脑子里。AI 没有脑子——它需要把上下文写下来。OpenLogos 与敏捷兼容,但坚持上下文显式化,因为这正是 AI 所需要的。
"Harness Engineering 和 OpenLogos 有什么区别?"
Harness Engineering 是一门学科——它定义了一个工程良好的 AI agent 系统需要什么:边界、工具、编排、记忆、评估和约束。OpenLogos 是这门学科的一个最佳实践实现,专门面向软件开发。Harness Engineering 是理论,OpenLogos 是实践。