【Harness Engineering】01_为什么需要给 AI 代理造一个驾驶舱

发布时间:2026/8/16 11:14:43

【Harness Engineering】01_为什么需要给 AI 代理造一个驾驶舱
源码地址https://github.com/wquguru/harness-books如果你最近在关注 AI 编程工具一定听说过 Claude Code。很多人把它看作一个“能跟你聊天、顺手改代码的 CLI”。但如果只看到这一层就错过了它设计里最有价值的部分。真正让 Claude Code 区别于“挂了个工具调用的 ChatGPT”的是一整套看不见的控制结构。作者在源码里把它称为Harness Engineering——你可以理解为给 AI 代理造一个驾驶舱。本文从工程视角聊清楚一个核心判断代理系统的关键能力不是“模型有多聪明”而是“系统有多能约束执行”。一、问题本质1.1 核心矛盾一个 LLM 如果只能输出文本最坏的情况是“它说得不太对”。但当它能访问 Shell、Git、文件系统和网络时问题性质就变了——从“回答不够好”变成了“执行可能造成实际破坏”。Harness Engineering 要处理的就是这个底层现实模型天然不值得信任。这不是对 AI 的道德评判而是一个工程前提。忽视它的系统最后多半会在事故记录和回滚日志里付出代价。1.2 设计目标所谓 Harness Engineering就是把一个不稳定的核心部件约束成可管理系统的那一套制度化控制平面。它要处理的现实只有一条模型并不天然值得信任。这个判断未必轻松但通常有用。二、第一层 Harness分层控制结构很多人对“控制 AI”的理解还停留在写一段漂亮的 system prompt。但 Claude Code 在实现上把 prompt 放进了运行时的控制结构里——它不只是“告诉模型该怎么做”而是规定了执行边界、失败行为和报告责任。2.1 身份与运行时分离从源码的组织方式可以看得很清楚系统先定义身份和总任务再补上关于工具、权限、系统提醒和上下文压缩的系统级说明最后补上做任务时的工程约束比如不要越权改动、不要把验证说成已经完成这说明了一个朴素的工程事实一个真正可用的代理系统不能依赖一段“万能提示词”解决所有问题。它必须把控制拆成层把层次拆成职责。否则新增一条禁令和旧规则冲突时系统行为会变得不可预测。2.2 分段拼装与优先级规则代码里很清晰地展示了这一点系统提示词是分段拼装的静态部分和动态部分严格分离memory、language、output style、MCP instructions 等内容按段注入默认 prompt、自定义 prompt、agent prompt 和 append prompt 之间有明确的优先级规则2.3 不变式三条硬约束1. 身份 ≠ 运行时 —— prompt 的分层必须完整 2. 工具受调度 —— 任何工具调用前必须经过调度决策 3. 错误进主路径 —— 可恢复错误必须走规定的恢复或终止路径这三条一旦被越过后面所有关于循环、工具、上下文和恢复的机制都会变得不可靠。三、第二层 Harness持续循环状态如果说 prompt 规定了系统“应该成为什么样的东西”那么 query loop 规定了它“实际上如何运行”。3.1 状态跨轮次传递Claude Code 的核心不在某个单独的 API 调用而在一个持续运行的 query loop。这个循环把以下内容全部放进同一个跨迭代状态里messages消息历史toolUseContext工具使用上下文autoCompactTracking自动压缩追踪maxOutputTokensRecoveryCount输出令牌恢复计数turnCount轮次计数transition状态转换一旦这么设计就等于正式承认上一轮留下的问题会进入下一轮系统必须有能力持续处理。3.2 Harness 思维的核心问题真正的问题不在于模型能不能答对这一轮而在于系统能不能在连续多轮里保持行为一致有没有预算概念有没有恢复概念有没有上下文膨胀后的自救机制有没有在工具调用失败后继续推进任务的能力缺少这些结构所谓的“智能体”就只是一个不稳定的执行者。3.3 调用前收回控制权这个循环在每轮调用前还会处理消息裁剪工具结果预算历史片段微压缩上下文塌缩处理自动压缩这些实现细节共同指向一点Claude Code 在调用发生前就尽量把控制权收回到运行时一侧。这也是为什么 Harness Engineering 不能被看作 prompt engineering 的附属品——前者关心状态机后者关心措辞。措辞当然重要但状态机决定系统行为最终由谁负责。四、第三层 Harness工具调用调度模型一旦能调用工具风险就从修辞层面跳到执行层面。这时候最核心的问题是谁决定工具怎么跑4.1 并发调度纪律Claude Code 的答案很明确运行时会根据工具属性决定并发还是串行。工具调用先经过分组系统读取工具 schema判断一个工具是否适合并发执行能并发的归一批不能并发的按顺序逐个执行并发路径中上下文修改器会先缓存再按原始顺序回放4.2 核心原则这背后有一个重要原则工具没有被当成模型能力的自然延伸而是被当成需要调度纪律的受管执行单元。缺少调度纪律的工具系统只会把模型的不稳定性放大到外部世界。尤其是在涉及文件、终端和权限的场景里保守的调度策略往往比激进的并发更可靠。4.3 为何保守并发如果不受约束就会扩大事故半径。Claude Code 在这一点上采取了偏保守的策略——在会碰到文件、终端和权限的场景里这种保守通常更可靠。五、第四层 Harness高风险工具的高密度约束在所有工具里Bash 最值得警惕。它几乎不受领域边界约束可以直接接触文件、进程、网络和 Git 仓库还会带上重定向、管道等复杂 shell 语义。5.1 操作规约Claude Code 对 Bash 的态度体现在一段详细的操作规约里不要乱改 git config不要跳过 hooks不要随手git add .不要在 pre-commit 失败后用--amend连带修改上一条提交不要在没有明确要求时提交不要默认 push5.2 核心原则有人会觉得这些规则过于细碎。但高风险接口天然需要高密度约束。Bash 一旦进入真实工作流很多规则必须明确写出来不能靠模型的“常识”去判断。Harness Engineering 的一个重要原则就是能力越强控制越细。原因很简单外部世界不会因为模型语气坚定就自动原谅一次错误执行。六、第五层 Harness失败是主路径很多软件把失败路径看作“例外”把成功路径看作“正文”。代理系统不能这么做。6.1 失败稳定存在代理系统的失败是稳定存在的不是偶发的模型会超 token会触发prompt too long会撞上max_output_tokens会遇到工具拒绝、用户打断、API 重试还会遇到 hook 阻塞等各种中断6.2 结构化处理如果这些情况都只在最后用几个catch打发掉系统表面上在运行实际上只是不断把麻烦往后滚。Claude Code 在 query loop 里把失败当作结构性条件来处理——在调用发生前就尽量把控制权收回到运行时一侧。6.3 与普通助手的差别普通助手先回答错了再道歉Harness 先约束再执行出错按恢复路径处理不靠临场发挥补救。一个会道歉的系统不一定成熟。一个知道何时不该开始、何时该重试、何时该中止、何时该准确汇报失败的系统才更接近成熟。七、总结7.1 五个源码位置指向同一结论源码位置结论constants/prompts.tsprompt 是控制平面的一部分不是人格装饰utils/systemPrompt.ts系统行为必须有清楚的分层优先级query.ts代理运行依赖持续的循环状态不是单次问答services/tools/toolOrchestration.ts工具调用必须服从调度纪律tools/BashTool/prompt.ts高风险工具必须伴随高密度约束7.2 Harness Engineering 不神秘它只是坚持了几条常被忽视的工程常识模型会犯错工具会扩大错误后果上下文会膨胀状态会污染下一轮用户会打断你失败会反复出现7.3 最终结论系统不能靠“聪明”维持秩序只能靠结构维持秩序。结构不像聪明那样显眼但通常更可靠。

相关新闻

解决Codex/ChatGPT工具合并后中文界面丢失与插件拓展指南

解决Codex/ChatGPT工具合并后中文界面丢失与插件拓展指南

2026/8/16 11:14:43

如果你最近在 Windows 上使用 Codex 或 ChatGPT 相关的开发工具,发现界面突然变成了英文,或者压根找不到切换语言的选项,先别急着怀疑自己的操作。这很可能不是你一个人的问题,而是近期一次服务端合并更新带来的“副作用”。 很多…

VS Code文本编辑核心技巧:从基础操作到高效实战

VS Code文本编辑核心技巧:从基础操作到高效实战

2026/8/16 11:04:42

1. 从“编辑器”到“搬砖利器”:为什么你需要精通VS Code的文本编辑 如果你是一名开发者,或者经常需要处理代码、配置、文档等文本工作,那么Visual Studio Code(简称VS Code)大概率是你每天都要打开的工具。很多人把它…

Claude Code 实战指南:从环境配置到高效集成开发工作流

Claude Code 实战指南:从环境配置到高效集成开发工作流

2026/8/16 11:04:42

1. 先搞清楚 Claude Code 到底是什么,以及它到底能帮你做什么 如果你在找 Claude Code 的安装教程,大概率是看到了别人用它来写代码、改 Bug 或者解释代码片段。但首先得明确一点: Claude Code 不是一个需要你单独下载安装的独立软件或 IDE …

从投料到成品只需90分钟:河北CCS产线的一站式极速之旅,千亿集群加速跑

从投料到成品只需90分钟:河北CCS产线的一站式极速之旅,千亿集群加速跑

2026/8/16 13:44:49

动力电池行业的竞争,已经从前端的材料配方延伸到了后端的制造效率。当“量产即出口”成为河北锂电产业的新标签,产业链上游的CCS(Cells Contact System,集成母排)制造环节,正在成为决定整条产线节拍的关键变…

IDEA集成Redis插件全解析:免费与收费方案对比及实战配置指南

IDEA集成Redis插件全解析:免费与收费方案对比及实战配置指南

2026/8/16 13:44:49

1. 项目概述:为什么我们需要在IDEA里直连Redis? 作为一名常年泡在Java后端开发里的程序员,我每天打交道最多的除了IDEA,就是各种中间件,Redis绝对是其中的明星。调试代码时,最烦人的场景之一就是&#xff1…

ReAct Agent失控风险剖析与工程化防护策略

ReAct Agent失控风险剖析与工程化防护策略

2026/8/16 13:44:49

这次我们来看一个在 AI 领域,尤其是智能体(Agent)开发中备受关注的话题:ReAct Agent 的失控风险。ReAct(Reasoning Acting)作为一种经典的智能体推理框架,其核心思想是让模型通过“思考-行动”…

CentOS 7.9源码编译安装最新版curl完整指南

CentOS 7.9源码编译安装最新版curl完整指南

2026/8/16 13:44:49

1. 项目概述与背景 在Linux运维和开发领域, curl 是一个无人不知、无人不晓的命令行工具和库。它就像网络世界里的“瑞士军刀”,无论是测试API接口、下载文件、模拟表单提交,还是进行复杂的HTTP协议交互,都离不开它。然而&#…

Shopify自动化运营实战:Codex工具部署、API集成与AI赋能电商

Shopify自动化运营实战:Codex工具部署、API集成与AI赋能电商

2026/8/16 13:44:49

这次我们来看一个 Shopify 建站与自动化运营的实战项目。一位拥有 20 年经验的卖家,免费分享了一套基于 Codex 工具实现 Shopify 独立站自动化运营的完整流程。对于想要入局跨境电商、提升店铺运营效率,或者对 AI 工具如何赋能电商业务感兴趣的读者来说&…

深入UEFI底层:用grub-mod-setup_var解锁BIOS隐藏设置

深入UEFI底层:用grub-mod-setup_var解锁BIOS隐藏设置

2026/8/16 13:34:48

1. 项目概述:BIOS隐藏设置的“钥匙” 如果你曾经为了给老电脑升级、解锁功耗墙、或者调整一些主板厂商刻意隐藏的高级选项而反复重启、按Del键进入BIOS,却始终找不到那个关键的开关,那么你很可能需要一把“钥匙”。今天要聊的 grub-mod-setu…

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

2026/8/16 0:04:13

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

【双层规划,节点出清价,绿证交易,CVaR方法】两级电力市场环境下计及风险的省间交易商最优购电模型附Matlab代码

【双层规划,节点出清价,绿证交易,CVaR方法】两级电力市场环境下计及风险的省间交易商最优购电模型附Matlab代码

2026/8/16 0:04:13

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

隐式mpc+自适应mpc+时变mpc,线性时变模型预测控制附Simulink仿真

隐式mpc+自适应mpc+时变mpc,线性时变模型预测控制附Simulink仿真

2026/8/16 0:04:13

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

2026/8/16 0:04:13

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

【双层规划,节点出清价,绿证交易,CVaR方法】两级电力市场环境下计及风险的省间交易商最优购电模型附Matlab代码

【双层规划,节点出清价,绿证交易,CVaR方法】两级电力市场环境下计及风险的省间交易商最优购电模型附Matlab代码

2026/8/16 0:04:13

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

隐式mpc+自适应mpc+时变mpc,线性时变模型预测控制附Simulink仿真

隐式mpc+自适应mpc+时变mpc,线性时变模型预测控制附Simulink仿真

2026/8/16 0:04:13

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

2026/8/15 1:04:46

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…

导师推荐!2026最新AI论文工具测评与实用推荐

导师推荐!2026最新AI论文工具测评与实用推荐

2026/8/15 10:10:27

2026年真正好用的AI论文工具,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

告别游戏崩溃:XCOM 2模组管理器的智能革命

告别游戏崩溃:XCOM 2模组管理器的智能革命

2026/8/14 19:35:14

告别游戏崩溃:XCOM 2模组管理器的智能革命 【免费下载链接】xcom2-launcher The Alternative Mod Launcher (AML) is a replacement for the default game launchers from XCOM 2 and XCOM Chimera Squad. 项目地址: https://gitcode.com/gh_mirrors/xc/xcom2-lau…