我把 Anthropic 的 Harness 工程思想做成了一个 Skill

张开发
2026/4/4 23:36:06 15 分钟阅读

分享文章

我把 Anthropic 的 Harness 工程思想做成了一个 Skill
用 AI 写代码有多难不是写不出来难是让它稳定交付可用的东西很难。这篇文章说说 Anthropic 工程团队的解法以及我怎么把它落成了一个可以复用的 Skill。2026 年 3 月 24 日Anthropic 工程博客发了一篇文章《Harness design for long-running application development》[1]。作者 Prithvi Rajasekaran 在开头说了一句话Harness design is key to performance at the frontier of agentic coding.框架设计是 AI 代码能力前沿的核心。读完之后我花了几天把这套思想落地成一个可以直接用的 WorkBuddy Skill开源在 GitHubDrrreistein/web-harness[2]。这篇文章说说我的理解和做法。01 Anthropic 发现了什么问题用过 AI 辅助编程的人都知道。不是代码写不出来——现在随便一个 AI 工具给它一句话几分钟就能吐出几百上千行代码。但真正让人抓狂的是宣称完成的功能一跑发现根本不能用。列表不刷新需要手动 F5。点了保存数据库没写进去。错误状态没有任何提示。设计看着像所有 AI 项目的母版——白卡片、紫色渐变、一眼就认出来的机器审美。更麻烦的是AI 很善于说好的修好了然后下一轮又出现同样的问题。Anthropic 工程团队在用 Claude 做长周期 web 应用开发时系统性地遇到了同样的问题。他们把这个现象总结得很准AI 在执行长任务时最核心的挑战不是能力是可靠性。上下文溢出、自评估失真、状态传递断裂——每一个都能让你的开发流程在关键时刻崩掉。让同一个 Agent 又写代码、又评估自己写的代码结果是自评估放水——代码质量描述得很好实际功能跑不通。单 Agent 在复杂任务下还容易出现上下文溢出、方向跑偏、表面完工等典型失败模式。他们的解法从 GAN生成对抗网络中找到了灵感把生成和评估彻底分离。一个 Agent 负责生成另一个 Agent 负责挑毛病。两者之间有明确的合同Sprint Contract约束交付标准评估器通过 Playwright 实际跑端到端测试而不是看代码猜结论。⚡ 核心洞察将执行者和评判者分离是解决自评估失真的有力杠杆。 *Separating the agent doing the work from the agent judging it proves to be a strong lever to address this issue.*02 我如何把它变成一个可复用的 SkillAnthropic 文章里讲的是设计原则没有直接给出可执行的工具。我做的事情是把这套原则编码成约束并结合其他用于规划、前端设计、开发等Skills打包成一个 WorkBuddy Skill让 AI 在任何新项目里都能遵循这套工作流。核心是三个角色Planner规划者用 brainstorming writing-plans skill把用户 1-4 句话的需求扩展成完整的 Product Spec然后拆成 JSON 格式的 feature list。每个 feature 包含描述、优先级、端到端测试步骤和初始状态passes: false。Planner 有一条硬性规则草稿完成后必须暂停输出结构化摘要向用户确认。没有明确的确认不允许生成 feature list不允许开始开发。方向跑偏是最贵的错误在规划阶段就对齐比开发到一半发现跑偏要便宜得多。Generator实现者用 frontend-design fullstack-developer test-driven-development skill按 TDD 节奏增量实现。每个 feature 独立一轮六步不可跳过——选 feature、建 feat/ 分支、先写测试让测试变红、实现代码让测试变绿、E2E 验收、merge main 打 tag。特别要说的是第三步先写失败的测试再写实现。这个 TDD 约束解决了AI 写完代码说自己写完了的问题——测试是红的就是没完成测试变绿才算真的完成。每轮开新的上下文窗口不依赖对话历史传递状态所有状态靠仓库文件progress.md、feature-list.json、evaluation-report.md来同步。Evaluator验收者用 webapp-testing agent-browser skill完全独立地跑端到端测试、截图存证、四维度打分。四个维度是功能完整性40%、设计质量25%、代码质量20%、可用性15%任意一项低于 6 分直接 FAIL不允许 Generator 自评。这三个角色里最关键的是 Evaluator 的独立性。Generator 自己觉得做好了不算Evaluator 的截图和测试日志才算。03 六条防线把工作流跑通不难难的是防止 AI 在各种情况下走捷径。框架里设计了六条防线每条对应一个真实失败模式防线 1上下文溢出。多轮对话后AI 开始忘事之前的决策和状态悄悄丢失。解法是每轮开新窗口靠仓库文件传递状态上下文从不积累。防线 2虚假完工。AI 宣称功能完成实际无法使用。解法是强制 E2E 测试passes: true必须由 Evaluator 签字Generator 无权自行标记。防线 3自评估放水。Generator 自己评价自己标准自然会降低。解法是 Evaluator 完全独立必须用 agent-browser 截图作为物证。防线 4设计模板化。AI 生成的界面千篇一律紫色渐变白卡片。解法是 frontend-design skill 加上规避 AI 通用模板的引导要求有定制化细节。防线 5方向跑偏。Planner 自行决定产品方向到开发阶段才发现问题。解法是 Planner 草稿完成后强制 PAUSE结构化摘要等用户明确确认。防线 6并行合并冲突。多个 Generator Agent 同时开发merge 时产生冲突。解法是三层机制——模块所有权划分每个 Agent 只写自己的 scope、接口契约冻结共享文件开发期间禁止改签名、串行合并队列按依赖顺序 rebase merge。04 实战结果框架设计出来不算完跑通一个真实项目才算验证。我用这套框架完整走了一遍极简待办清单 Web App 的开发流程React 18 TypeScript Vite 技术栈纯 CSS 极简黑白灰设计零 UI 库依赖。Planner 阶段把需求拆成 10 个 Feature分 P0/P1/P2 三级优先级每个 Feature 都有明确的端到端测试步骤。用户确认规格后Generator 开始增量执行。到最后7 个核心 Feature 全部交付Evaluator 跑了 17 条 E2E 测试全部通过最终评分 10/10。全程没有一次直接在 main 分支改代码也没有靠对话历史传递状态。实际体感是每一轮的边界非常清晰。你知道这一轮做什么、做完的标准是什么、谁来确认。这种清晰感让 AI 的输出变得可预期而不是看运气。这是用 Harness 框架约束之后的结果不是把需求一股脑扔给 AI 然后修修改改的结果——两种体验差距非常大。项目代码开源Drrreistein/todos[3]Skill 本身也开源Drrreistein/web-harness[4]05 Anthropic 文章里最值得记的两句话第一句关于工程本质The key insight is that long-running agent tasks are not just “bigger” versions of single-turn interactions. They require fundamentally different engineering primitives: state management, error recovery, progress tracking, and independent evaluation.核心洞见在于长时间运行的智能体任务并非只是单轮交互的 “放大版”。它们需要截然不同的基础工程原语状态管理、错误恢复、进度跟踪以及独立评估。长任务不是把单轮交互放大而是完全不同的工程问题。状态管理、错误恢复、进度追踪、独立评估——缺一不可。web-harness 做的事情就是把这四个工程原语变成了 AI 开发时默认遵守的规则而不是靠每次提示词去提醒。第二句关于未来The space of interesting harness combinations doesn’t shrink as models improve. Instead, it moves, and the interesting work for AI engineers is to keep finding the next novel combination.随着模型不断优化有价值的框架组合空间并不会缩减反而会发生转移而人工智能工程师的核心工作便是持续探寻下一种新颖的组合方式。随着模型能力提升有趣的框架组合空间并不会缩小而是会转移。AI 工程师的工作是持续寻找下一个新颖的组合。最核心的判断Harness 设计不是一次性的每一代模型能力的跃升都会让原有框架的某些部分变得不必要但同时开放出新的可能性。这是一个持续演进的工程方向而不是一个可以一劳永逸的方案。如果你正在用 AI 做全栈项目并且遭遇过文章开头那些翻车场景可以试试这套框架 Drrreistein/web-harness: https://github.com/Drrreistein/web-harness学AI大模型的正确顺序千万不要搞错了2026年AI风口已来各行各业的AI渗透肉眼可见超多公司要么转型做AI相关产品要么高薪挖AI技术人才机遇直接摆在眼前有往AI方向发展或者本身有后端编程基础的朋友直接冲AI大模型应用开发转岗超合适就算暂时不打算转岗了解大模型、RAG、Prompt、Agent这些热门概念能上手做简单项目也绝对是求职加分王给大家整理了超全最新的AI大模型应用开发学习清单和资料手把手帮你快速入门学习路线:✅大模型基础认知—大模型核心原理、发展历程、主流模型GPT、文心一言等特点解析✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑✅开发基础能力—Python进阶、API接口调用、大模型开发框架LangChain等实操✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经以上6大模块看似清晰好上手实则每个部分都有扎实的核心内容需要吃透我把大模型的学习全流程已经整理好了抓住AI时代风口轻松解锁职业新可能希望大家都能把握机遇实现薪资/职业跃迁这份完整版的大模型 AI 学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

更多文章