详情

首页手游攻略 AI 工程范式演进(二):当Agent一天生成300个PR时:工程师的价值在哪里?

AI 工程范式演进(二):当Agent一天生成300个PR时:工程师的价值在哪里?

佚名 2026-07-25 17:36:02

{"type":"doc","content":[{"type":"paragraph","attrs":{"id":"b44098c5-7d2b-4e80-bb62-2abbc59d5b19","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false}},{"type":"paragraph","attrs":{"id":"b357c096-6cc3-43b3-ab5a-57aaa0e56cd5","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"——从OpenAI Symphony实验看Harness Engineering的范式革命"}]},{"type":"horizontalRule","attrs":{"id":"783d121e-5a50-4add-903b-f8af798ab636","isHoverDragHandle":false}},{"type":"heading","attrs":{"id":"3eef4414-c4cf-45cf-80b9-0c6af9e43194","textAlign":"inherit","indent":0,"level":2,"isHoverDragHandle":false},"content":[{"type":"text","text":"引言:那场震惊开发圈的5个月实验"}]},{"type":"paragraph","attrs":{"id":"b4d9802f-ced9-4c4d-98c2-05cf3a76fb74","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"2026年2月,OpenAI工程师Ryan Lopopolo发布了一篇看似平静但实则"炸穿整个开发圈"的博文。标题很克制——《在智能体优先的世界中利用Codex进行工程实践》。"}]},{"type":"paragraph","attrs":{"id":"cbe6d008-2c74-468d-b431-5388e076bffc","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"文章披露了一个持续5个月的内部实验,数据如下:"}]},{"type":"table","attrs":{"id":"9283268c-39b0-427d-afde-5d1cc3c35af4","isHoverDragHandle":false},"content":[{"type":"tableRow","content":[{"type":"tableHeader","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); background: none 0% 0% / auto repeat scroll padding-box border-box rgb(247, 247, 247); font-weight: 600; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"e7713d94-7541-432a-8175-b502eb1c8abe","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"bold"}],"text":"指标"}]}]},{"type":"tableHeader","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); background: none 0% 0% / auto repeat scroll padding-box border-box rgb(247, 247, 247); font-weight: 600; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"4d2244f2-a6f2-41e6-9b8e-4f6dfccf22e2","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"bold"}],"text":"数据"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"3f35da68-a821-4b94-a786-90e23788ff48","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"核心工程师人数"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"092e7ff4-f24c-4a1a-a1dc-230f2eb34d21","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"3人(后扩展至7人)"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"409e8887-0e87-490a-aae7-56e265cec7af","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"实验周期"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"c632292d-79c8-4b63-b3bd-79d7c6d89070","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"5个月"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"a169dc7a-34fb-4d95-9173-e06eec02a358","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"代码总量"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"35392b9e-0eee-4b12-aa48-3a380af78726","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"约100万行"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"010c1d4c-9d3f-429a-9f7c-1ac598f8a82a","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"人工手写代码"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"bdaaddef-fe64-4af2-bae7-0101eb8bb380","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"0行"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"7fd34fd2-a43a-4b07-a3b7-c5cdc76ffb88","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Pull Requests"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"d26a4c56-28bb-4c2b-abb8-be9598c6f849","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"约1,500个"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"d1e1f948-853b-46df-aa2e-6af13337deac","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"开发速度对比"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"a70c3cd7-18d3-4d99-8d31-5827ac93556c","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"约为传统手工编码的10倍"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"af430b77-b349-4bfd-8531-f017c2137073","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"单次Agent最长运行时长"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"17859402-eeb6-4fa3-8d4a-eb729c03bf46","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"超过6小时"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"ee650ea1-5c35-4f49-8770-a18b402daca6","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"最终用户"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"3354d42f-2d83-41fd-b3a7-d687b08f0c98","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"数百名内部测试用户"}]}]}]}]},{"type":"paragraph","attrs":{"id":"35270f44-fba4-4aef-8915-48ef9595b493","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"最震撼的不是数字本身,而是那句看似轻描淡写的描述:"}]},{"type":"blockquote","attrs":{"id":"1315b7ff-60e1-4a95-af98-266fab6072fe","textAlign":"inherit","isHoverDragHandle":false},"content":[{"type":"paragraph","attrs":{"id":"ac4e17b4-e474-463b-83e1-e3bf5651a449","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":""整个项目没有一行代码是人类手写的。从应用逻辑、测试用例、CI配置、文档到监控大盘,全由Codex智能体完成。""}]}]},{"type":"paragraph","attrs":{"id":"9d9ccbe2-5768-44b5-8366-5f61a777facc","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"这篇文章出来后,整个行业分成了两派。一派惊呼"程序员要失业了",另一派则开始认真追问一个更深刻的问题:"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"当Agent一天能生成几百个PR时,工程师的价值到底在哪里?"}]},{"type":"paragraph","attrs":{"id":"32e7d570-6b81-437d-a87a-7b524a124788","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"答案不在"怎么让Agent写得更好"里,而在"怎么让Agent可靠地持续工作"里。这就是本文要展开的核心理念——"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"Harness Engineering(驾驭工程)"},{"type":"text","text":"。"}]},{"type":"horizontalRule","attrs":{"id":"031c1362-804d-4b9a-9c35-8da5b9281fff","isHoverDragHandle":false}},{"type":"heading","attrs":{"id":"a7b0d0b0-e6d3-40ef-ac9a-da031dc8bad0","textAlign":"inherit","indent":0,"level":2,"isHoverDragHandle":false},"content":[{"type":"text","text":"第一章:工程师角色的根本转变"}]},{"type":"heading","attrs":{"id":"9e961105-dca1-4710-af5b-ffcd8049d11e","textAlign":"inherit","indent":0,"level":3,"isHoverDragHandle":false},"content":[{"type":"text","text":"1.1 传统工程师 vs Harness工程师:一场静悄悄的职业重构"}]},{"type":"paragraph","attrs":{"id":"546d6e75-64e7-4534-9bfb-a56b37d0cd1e","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"当我们把"写代码"这件事交给Agent之后,工程师到底在做什么?OpenAI的3人团队给出了一个反直觉的答案:"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"他们每天的工作不是写代码,而是构建让Agent能自主完成任务的基础设施。"}]},{"type":"paragraph","attrs":{"id":"f64edba7-a03d-49fc-a5f0-ce2b772be49e","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"让我们用一个对比表格来清晰呈现这种转变:"}]},{"type":"table","attrs":{"id":"52121555-9965-4f1b-9679-7bf433204f93","isHoverDragHandle":false},"content":[{"type":"tableRow","content":[{"type":"tableHeader","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); background: none 0% 0% / auto repeat scroll padding-box border-box rgb(247, 247, 247); font-weight: 600; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"f7746fab-6cd3-4f28-abe5-83e4d607f8e8","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"bold"}],"text":"维度"}]}]},{"type":"tableHeader","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); background: none 0% 0% / auto repeat scroll padding-box border-box rgb(247, 247, 247); font-weight: 600; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"7ead6011-ca32-4435-87d8-537e3457c282","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"bold"}],"text":"传统工程师"}]}]},{"type":"tableHeader","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); background: none 0% 0% / auto repeat scroll padding-box border-box rgb(247, 247, 247); font-weight: 600; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"566dcf22-aa6d-43d4-ad64-f965007f39f3","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"bold"}],"text":"Harness工程师"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"6b64d7e6-a693-4037-9bd2-9731b8897c5d","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"核心价值"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"9dbd9ab8-286b-4aca-87f3-95ac62f251a2","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"写代码的速度和质量"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"543c7655-2159-4bf6-a6a1-a78ff713d6c8","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"设计系统的能力"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"7da7af45-3e42-49de-ba25-042eb948eb50","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"核心技能"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"7c138ce3-ce77-4528-911f-8bfdc8b8e6aa","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"编码能力、算法、框架熟练度"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"5242e275-6ef8-408c-8275-e3ed06effac8","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"约束设计、反馈回路设计、控制系统设计"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"49556244-aa75-45e5-b2fb-d4db187b925c","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"主要产出"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"853cff75-b283-4cb0-b526-866d678c3325","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"代码"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"9f87ea9a-6d79-4638-9db3-7dfe7bfb2999","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Agent可靠运行的环境(Harness)"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"b5de2daa-4d17-40e1-b460-7801938a0a1a","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"工作方式"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"d527b454-fad3-4c3b-bacf-ced8b57ba07c","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"人写代码,AI辅助"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"1d890d44-9a0c-45c9-b13e-33fab6c90627","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"人设计环境,Agent执行"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"6805a853-aae2-4aca-91c1-6ab0f546d6f2","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"瓶颈所在"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"7a5ca27e-91a4-49ed-a352-5f72108d5c01","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"人的编码速度和精力"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"9c3b04bb-1c5e-408f-bf79-1d67a347e145","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"环境设计的完备性和约束的有效性"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"247ab59c-26aa-4f2f-8512-2c6c448046bd","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"技能进化方向"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"7a46992b-844f-4722-bb39-ae5552f37b4b","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"更深的语言/框架专精"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"17a2a5be-f61e-4a60-bcb2-f63a0139fabf","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"更系统的架构设计、更严谨的规则编码"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"388fdb22-59d5-4e3c-9ab4-0c9c54050f3d","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"类比"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"af5c3aeb-a750-498d-84d9-15b38b372e94","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"马车夫(亲自驾车)"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"dd608c13-b637-4dbe-801b-16d988962e85","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"高速公路设计师(修路、设护栏、建服务区)"}]}]}]}]},{"type":"heading","attrs":{"id":"185b074c-7828-4fa5-a819-fae0897e5fdb","textAlign":"inherit","indent":0,"level":3,"isHoverDragHandle":false},"content":[{"type":"text","text":"1.2 "人类掌舵,智能体执行"——Ryan Lopopolo的八个字"}]},{"type":"paragraph","attrs":{"id":"cb98fe55-293a-4147-a8d1-21f613765917","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Ryan Lopopolo把整个Harness模式的理念浓缩成了八个字:"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"人类掌舵,智能体执行。"}]},{"type":"paragraph","attrs":{"id":"988aea07-6607-4b86-a6fa-7e03a2a17e6a","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"这八个字背后是一套完整的方法论。当Agent遇到困难时,OpenAI的工程师不会想"我该怎么帮它写完这段代码",而是追问一个更本质的问题:"}]},{"type":"blockquote","attrs":{"id":"143c5871-1698-497a-a136-62e472566cda","textAlign":"inherit","isHoverDragHandle":false},"content":[{"type":"paragraph","attrs":{"id":"87048dd9-ee6c-494a-aa18-b5499a54c273","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":""Agent缺乏什么能力?需要什么工具、什么抽象层、什么结构?""}]}]},{"type":"paragraph","attrs":{"id":"60486617-3cfa-4177-aa39-942d5f9f9bb2","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"然后由人类补充这些基础设施。"}]},{"type":"paragraph","attrs":{"id":"ce97f7c4-49ce-437c-9b1d-b772e8d218b7","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"这就是Harness工程师的核心工作——"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"不是帮Agent写代码,而是构建让Agent能自主完成任务的基础设施。"}]},{"type":"heading","attrs":{"id":"5db29869-d6de-41b1-8d44-b6816372fb44","textAlign":"inherit","indent":0,"level":3,"isHoverDragHandle":false},"content":[{"type":"text","text":"1.3 具体地说,工程师每天在做什么?"}]},{"type":"paragraph","attrs":{"id":"d745825a-c2f9-4f27-879a-8c1f7a8ecf40","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"根据OpenAI实验的详细披露,3名工程师的日常工作内容包括:"}]},{"type":"orderedList","attrs":{"id":"e2c14717-1ba9-49c0-95af-3792877f7c29","start":1,"isHoverDragHandle":false},"content":[{"type":"listItem","attrs":{"id":"c250b8d8-8375-435f-a46c-6b43414a8a8c"},"content":[{"type":"paragraph","attrs":{"id":"567588a3-9aa4-49d6-811d-4f10296711e0","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"设计仓库的知识结构"},{"type":"text","text":":把"},{"type":"text","marks":[{"type":"code"}],"text":"AGENTS.md"},{"type":"text","text":"从百科全书变成导航地图,确保Agent能按需获取正确信息"}]}]},{"type":"listItem","attrs":{"id":"3b69e9fe-21e2-4fc3-882b-876fd3a07017"},"content":[{"type":"paragraph","attrs":{"id":"031721e4-a3d6-4477-88d7-89412fd7d0c2","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"编码架构约束"},{"type":"text","text":":把团队的"品味"写成自定义Linter规则,让违反架构规范的代码根本合不进主干"}]}]},{"type":"listItem","attrs":{"id":"180d4093-ea0d-47f0-ba90-deb1538223f2"},"content":[{"type":"paragraph","attrs":{"id":"a6638682-85ce-40fb-821a-b61c045417cb","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"构建反馈闭环"},{"type":"text","text":":让日志、指标、UI状态对Agent可读,Agent能自己查日志、自己跑测试、自己修复bug"}]}]},{"type":"listItem","attrs":{"id":"f3eaeafa-4a35-4bf5-b960-32a2d5323346"},"content":[{"type":"paragraph","attrs":{"id":"7d11fba8-bacf-4782-aaf1-8e161bf7ee6a","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"运行"垃圾回收""},{"type":"text","text":":定期扫描代码库中的架构漂移,自动提交重构PR"}]}]},{"type":"listItem","attrs":{"id":"8cbcf822-ce0a-43e0-a90f-3be095fc978b"},"content":[{"type":"paragraph","attrs":{"id":"acf567c0-eb83-48ff-bbd5-e9e65ed19ddf","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"优化工具链"},{"type":"text","text":":当Agent反复在某个环节失败时,不是手动修代码,而是给Agent补充更好的工具或文档"}]}]}]},{"type":"paragraph","attrs":{"id":"ec3174b6-d7e0-4f4b-bd9a-71e38988d225","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"用后端工程师熟悉的语言来说:"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"传统工程师是"业务开发工程师",Harness工程师是"平台工程师 架构师 DevOps工程师"的融合体。"}]},{"type":"horizontalRule","attrs":{"id":"ec886535-7118-4194-be39-070486972331","isHoverDragHandle":false}},{"type":"heading","attrs":{"id":"f242a819-2c85-4a27-b818-9a9f3132cc0b","textAlign":"inherit","indent":0,"level":2,"isHoverDragHandle":false},"content":[{"type":"text","text":"第二章:Ryan Lopopolo的关键追问"}]},{"type":"heading","attrs":{"id":"b4236b04-c5ec-4fc5-ae27-e18076f57ec7","textAlign":"inherit","indent":0,"level":3,"isHoverDragHandle":false},"content":[{"type":"text","text":"2.1 原话引用与精准解读"}]},{"type":"paragraph","attrs":{"id":"1dc324a7-f00b-46b4-963c-c454a9912702","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Ryan Lopopolo在文章中有一段话被反复引用,但很少有人真正理解它的深度:"}]},{"type":"blockquote","attrs":{"id":"b1946bde-e621-4901-9d0a-570dc1a2ca8a","textAlign":"inherit","isHoverDragHandle":false},"content":[{"type":"paragraph","attrs":{"id":"ead8835b-046f-4403-b63d-61c4241be4cf","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":""当Agent遇到困难时,我们将其视为一个信号:识别缺少什么——工具、护栏、文档——然后将其反馈到代码仓库中。""}]}]},{"type":"paragraph","attrs":{"id":"ac151995-4c33-41d1-9050-8617b5ca7abb","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"这段话有几个层次值得拆解:"}]},{"type":"paragraph","attrs":{"id":"4b62d183-53e1-4fc1-ac95-0219b256228e","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"第一层:视角转换。"},{"type":"text","text":" "Agent遇到困难"不是Agent的错,而是系统的信号。就像后端系统里的告警——告警本身不是问题,告警告诉我们系统哪里有缺陷。"}]},{"type":"paragraph","attrs":{"id":"f3710476-428f-4e58-a0cd-24c01ede59ac","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"第二层:识别缺失。"},{"type":"text","text":" 不是去"帮Agent完成任务",而是去识别"完成这个任务需要什么能力"。这是根本性的思维转换——从"执行者思维"转换到"系统设计师思维"。"}]},{"type":"paragraph","attrs":{"id":"43a81f43-df95-4f7b-bb09-7ef24a61c72e","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"第三层:反馈到代码仓库。"},{"type":"text","text":" 这是最关键的一点——所有的改进都沉淀到代码仓库中,变成持久性的基础设施。就像你修复了一个线上bug,不是只修代码,而是同时加一个单元测试防止回归。"}]},{"type":"heading","attrs":{"id":"c7e9b8eb-68d8-4f5f-a8dd-b0f1f742a8ce","textAlign":"inherit","indent":0,"level":3,"isHoverDragHandle":false},"content":[{"type":"text","text":"2.2 这不是"帮Agent写代码""}]},{"type":"paragraph","attrs":{"id":"62105de2-39bd-4bee-89bd-1a3125f8ca17","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"这里必须特别强调一个容易误解的点:"}]},{"type":"paragraph","attrs":{"id":"49022f45-b5af-458e-baa3-7d6c5af2b696","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"Harness Engineering不是"帮Agent写代码",而是"构建让Agent能自主完成任务的基础设施"。"}]},{"type":"paragraph","attrs":{"id":"8107b4bd-9805-4cfd-a3a4-37b636723d4a","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"两者的区别类似于:"}]},{"type":"bulletList","attrs":{"id":"cfd8faea-7fa8-4c2a-afd3-e5b14b188763","isHoverDragHandle":false},"content":[{"type":"listItem","attrs":{"id":"e8f74e05-513c-4836-87b6-4aa242019450"},"content":[{"type":"paragraph","attrs":{"id":"9070cce2-c2b0-4e9e-87ac-bd799ff27874","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"帮Agent写代码"},{"type":"text","text":" = 你看到Agent写不出来,就自己上手写了(然后下次遇到同样问题还是不会)"}]}]},{"type":"listItem","attrs":{"id":"cea9b4c4-c69b-4302-b61a-2a46c46e4970"},"content":[{"type":"paragraph","attrs":{"id":"4ef0a809-c993-4163-b2dc-56feea35a1cc","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"构建基础设施"},{"type":"text","text":" = 你看到Agent写不出来,就给它补充一个工具/一份文档/一条规则,然后它以后遇到类似问题都能自己解决"}]}]}]},{"type":"paragraph","attrs":{"id":"6c804e19-438e-4913-92b6-c107ae83056c","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"用后端类比:前者像在线上手动改数据修复问题,后者像加监控 告警 自动修复脚本。"}]},{"type":"horizontalRule","attrs":{"id":"cc5ea304-1de6-42e2-837f-b83ba3733eaa","isHoverDragHandle":false}},{"type":"heading","attrs":{"id":"5b798c2f-649b-44dd-8c7a-dffb5b867474","textAlign":"inherit","indent":0,"level":2,"isHoverDragHandle":false},"content":[{"type":"text","text":"第三章:信任债务(Trust Debt)——Agent时代的隐性炸弹"}]},{"type":"heading","attrs":{"id":"73a38edf-bda8-4fbb-820d-616b383b8c55","textAlign":"inherit","indent":0,"level":3,"isHoverDragHandle":false},"content":[{"type":"text","text":"3.1 Cassie Kozyrkov的原始定义"}]},{"type":"paragraph","attrs":{"id":"fc5cb2ad-e647-440f-9eb4-100224378fd2","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"前Google首席决策科学家Cassie Kozyrkov提出了一个让人背脊发凉的概念:"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"信任债务(Trust Debt)"},{"type":"text","text":"。"}]},{"type":"paragraph","attrs":{"id":"13d69548-3f95-4477-aadf-4e1c82118aca","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"她的原始定义是:"}]},{"type":"blockquote","attrs":{"id":"25baf5fe-2820-49ab-9c08-f91d357fddf3","textAlign":"inherit","isHoverDragHandle":false},"content":[{"type":"paragraph","attrs":{"id":"6ad6a9ec-e006-4f41-89a7-8e7def714ffc","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":""AI就像一个极其听话但缺乏背景知识的实习生。它倾向于填补你指令中的空白,进行'自信的即兴发挥'。如果你不审计它的假设,这些假设就会变成信任债务——目前看起来没问题,但在未来某个时刻会爆炸。""}]}]},{"type":"heading","attrs":{"id":"28827025-89ac-47e3-97fd-708e36123839","textAlign":"inherit","indent":0,"level":3,"isHoverDragHandle":false},"content":[{"type":"text","text":"3.2 信任债务的三大特性"}]},{"type":"paragraph","attrs":{"id":"14d1a4b0-1047-42e2-9363-f723be6291dc","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"信任债务这个概念之所以重要,是因为它有三个与传统技术债务相似但更隐蔽的特性:"}]},{"type":"heading","attrs":{"id":"fbcb0ac9-dc01-4d64-b625-9ed324cf2e6b","textAlign":"inherit","indent":0,"level":4,"isHoverDragHandle":false},"content":[{"type":"text","text":"特性一:不可见性"}]},{"type":"paragraph","attrs":{"id":"f82cdc0a-e0a6-4f75-ae59-de9e61906f3a","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"技术债务"},{"type":"text","text":"你至少知道它存在——你"故意"不写单元测试,你心里清楚"这里以后要还"。"}]},{"type":"paragraph","attrs":{"id":"5c3dc1a4-de2c-40fd-b989-439a96ce7d11","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"信任债务"},{"type":"text","text":"你根本不知道它存在——Agent做了很多你没要求的决定,填补了很多你没意识到的假设空白。你看最终输出"看起来是对的",就合入了。这些隐藏的假设就像地雷,不知道在哪里,但知道迟早会炸。"}]},{"type":"paragraph","attrs":{"id":"c53d63cb-be4b-4894-8862-4bf5ca8d2a36","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"用后端类比:技术债务像"你知道这个接口没做参数校验";信任债务像"这个ORM框架在某种边缘情况下会自动类型转换,你不知道,但它生产环境会炸"。"}]},{"type":"heading","attrs":{"id":"f67326a7-1e2a-45d1-946e-c681e83458f3","textAlign":"inherit","indent":0,"level":4,"isHoverDragHandle":false},"content":[{"type":"text","text":"特性二:累积性"}]},{"type":"paragraph","attrs":{"id":"36144e06-933c-43c1-98e1-fb2f45c43bf0","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"信任债务不会消失,只会累积。每次你"信任"Agent的输出而不审计它的假设,债务就增加一分。"}]},{"type":"paragraph","attrs":{"id":"73f4a2bd-a6e3-45d5-a209-4bcc59d6f4a1","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"更危险的是,"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"Agent会复现代码仓库里已有的模式"},{"type":"text","text":"——包括那些基于错误假设的代码。一个错误的假设被写进代码库,Agent会在相邻模块里复制这个假设,信任债务呈指数级扩散。"}]},{"type":"paragraph","attrs":{"id":"215c482f-ed67-45fd-a8d9-57c35b2486c3","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"用后端类比:就像代码库里有一个不规范的写法,新人来了照着写,老人看到了也"算了就这样吧",技术债务越积越多。"}]},{"type":"heading","attrs":{"id":"0cd1b43a-2127-4dd1-af06-4e4b9439ab45","textAlign":"inherit","indent":0,"level":4,"isHoverDragHandle":false},"content":[{"type":"text","text":"特性三:爆发性"}]},{"type":"paragraph","attrs":{"id":"a1d0eecb-94eb-4f2f-b8b9-dc35e1c4c4a1","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"信任债务最危险的地方在于——平时完全看不出来,一旦爆炸就是系统性的。"}]},{"type":"paragraph","attrs":{"id":"e9092c0e-4944-425e-8d08-58662476ea93","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Cassie Kozyrkov特别警告:"}]},{"type":"blockquote","attrs":{"id":"1e0a3796-03cd-4788-bb0c-624bd4a840d7","textAlign":"inherit","isHoverDragHandle":false},"content":[{"type":"paragraph","attrs":{"id":"a9e6fd9e-69a8-4e09-b83c-8d464cdd27cf","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":""信任债务的爆炸往往发生在最关键的时候——比如你基于Agent生成的代码做了架构决策,然后发现底层有一堆错误的假设。""}]}]},{"type":"paragraph","attrs":{"id":"80954c8c-8069-40fe-9016-25ead7c63f37","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"用后端类比:就像你一直不写单元测试,功能正常跑了半年,然后某次"小改动"引发了一连串莫名其妙的bug,你花了两周才发现根因是"有个隐藏的类型转换假设在所有地方都被违反了"。"}]},{"type":"heading","attrs":{"id":"583d6f53-302c-4e87-b8eb-cf377d98b306","textAlign":"inherit","indent":0,"level":3,"isHoverDragHandle":false},"content":[{"type":"text","text":"3.3 信任债务 vs 技术债务:一个完整类比"}]},{"type":"table","attrs":{"id":"0d866a86-3cb0-423b-8f95-74277c0df2b6","isHoverDragHandle":false},"content":[{"type":"tableRow","content":[{"type":"tableHeader","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); background: none 0% 0% / auto repeat scroll padding-box border-box rgb(247, 247, 247); font-weight: 600; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"3910e61a-ef13-4ca1-8545-d7a5689257c2","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"bold"}],"text":"维度"}]}]},{"type":"tableHeader","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); background: none 0% 0% / auto repeat scroll padding-box border-box rgb(247, 247, 247); font-weight: 600; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"76c3ac68-6363-4cbe-90a1-d1e91376d7f4","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"bold"}],"text":"技术债务"}]}]},{"type":"tableHeader","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); background: none 0% 0% / auto repeat scroll padding-box border-box rgb(247, 247, 247); font-weight: 600; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"97f105da-f72e-48c3-b971-23e0398a3877","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"bold"}],"text":"信任债务"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"768a2968-2964-4cc4-829a-c568a197038e","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"产生原因"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"9885fc22-fc6f-4c8f-8468-004abedc7d05","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"故意走捷径,"以后再说""}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"c5359458-16e2-4fbc-a0bc-54ab1e7f95e0","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"盲目信任Agent的隐含假设"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"f247f907-5c64-4184-9938-95ba5cf96f68","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"可见性"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"cbcc8027-5824-495a-b5b9-e55d62e0fe39","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"可见(你知道自己走了捷径)"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"cde010a4-79eb-4fd2-a6e6-ceebec47bdc9","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"不可见(你不知道Agent做了什么假设)"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"291e33ad-b442-4467-b6e0-2510e83f4cb0","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"累积方式"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"e7a92931-dc0e-43b4-aa17-567916a94f2e","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"线性累积"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"4aecc976-06d0-425b-b15d-2f76ede9d889","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"指数级扩散(Agent复制错误模式)"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"ade475e2-b0fb-4102-9ea6-05f4e19aefb0","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"爆发时机"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"1e1eaf5e-a391-437c-bafd-7d8fb5b175e0","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"修改相关代码时"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"d1a7ef61-651e-4ac8-97b9-de81639c6695","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"最不经意的时候(系统性失效)"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"df4b88fe-1663-49ba-b52e-e5931ce6b4f4","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"偿还方式"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"2b0d39ee-fc36-43f8-8294-703654a4f3fa","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"补测试、重构、补文档"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"62f7b79d-4fd9-4292-aec8-f97df4f7bb82","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"审计Agent的假设、编码约束规则"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"b5b30d80-2d26-433d-812a-693a55184f9f","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"预防方式"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"98c43ca1-ffc1-4699-a46f-3a18851a7260","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"代码评审、静态分析、TDD"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"f75f5d5f-e634-47d4-b14d-0a4e3fd4d93f","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Harness(约束设计、反馈闭环、垃圾回收)"}]}]}]}]},{"type":"paragraph","attrs":{"id":"03743760-5331-4e49-91f5-72d937282328","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"核心结论"},{"type":"text","text":":信任债务是技术债务在Agent时代的"升级版"——更隐蔽、更危险、更需要系统性的应对方案。而这个应对方案,就是Harness Engineering。"}]},{"type":"horizontalRule","attrs":{"id":"0ad5de4e-8477-4df9-9e5b-3ef8c761b9fd","isHoverDragHandle":false}},{"type":"heading","attrs":{"id":"c4371d2d-d1a0-4fd8-9dcd-f8403d41c41c","textAlign":"inherit","indent":0,"level":2,"isHoverDragHandle":false},"content":[{"type":"text","text":"第四章:Harness三大组件的深度解读"}]},{"type":"paragraph","attrs":{"id":"19159cdc-a92a-4909-b4d3-a8fea19be24b","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Birgitta Böckeler在Martin Fowler网站上发布了一篇深度分析文章,把Harness Engineering归纳为了三大核心组件。这一节我们对每个组件做深度解读,并给出后端工程师熟悉的技术类比。"}]},{"type":"heading","attrs":{"id":"4aea44a5-bca1-441e-a301-d248f3b018cf","textAlign":"inherit","indent":0,"level":3,"isHoverDragHandle":false},"content":[{"type":"text","text":"4.1 Context Engineering:为什么"地图式"文档比"百科全书式"文档有效"}]},{"type":"heading","attrs":{"id":"baac48ab-0f07-46e6-ba1f-874f0839229d","textAlign":"inherit","indent":0,"level":4,"isHoverDragHandle":false},"content":[{"type":"text","text":"问题:为什么大模型指令文件越大越没用?"}]},{"type":"paragraph","attrs":{"id":"4729cd05-dfb8-4dd0-b527-2407709c768a","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"OpenAI团队最早踩了一个大坑——他们搞了一个超大的"},{"type":"text","marks":[{"type":"code"}],"text":"AGENTS.md"},{"type":"text","text":"文件,把所有给Agent的指令、规则、规范全写在里面,结果直接翻车。"}]},{"type":"paragraph","attrs":{"id":"9ea74966-fd06-4920-b521-8f4669c471ae","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Böckeler总结了大而全的指令文件的"四大原罪":"}]},{"type":"orderedList","attrs":{"id":"2cefd4ea-0568-4960-b6dd-487bd50a932e","start":1,"isHoverDragHandle":false},"content":[{"type":"listItem","attrs":{"id":"b269b84a-47af-4d6a-9f5f-4137226e4374"},"content":[{"type":"paragraph","attrs":{"id":"37f8d5ca-a567-47d0-beb6-cf7f8afca874","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"上下文是稀缺资源"},{"type":"text","text":":大文件会挤掉任务、代码和相关文档的空间,Agent要么错过关键约束,要么对着错误的规则优化"}]}]},{"type":"listItem","attrs":{"id":"5436b119-06e6-4755-a8b1-83b65e224cd1"},"content":[{"type":"paragraph","attrs":{"id":"267646c3-472a-41bc-80cf-f7b38f07a35a","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"全是重点等于没有重点"},{"type":"text","text":":指令太多,Agent只会做本地模式匹配,不会有意识地按规则导航"}]}]},{"type":"listItem","attrs":{"id":"de47c8bd-80fd-4e42-9605-9e190a2d5f34"},"content":[{"type":"paragraph","attrs":{"id":"7dd38739-6e5a-43d0-a96c-6fb507659912","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"内容会快速腐烂"},{"type":"text","text":":庞杂的手册很快就会变成陈旧规则的坟场,Agent根本分不清哪些规则还有效"}]}]},{"type":"listItem","attrs":{"id":"2186966b-b544-4fa7-9889-e8b4fc46d846"},"content":[{"type":"paragraph","attrs":{"id":"08923b1a-572f-4840-923a-87cf38a64af5","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"无法验证"},{"type":"text","text":":单个大文件没法做机械检查,规则和代码的漂移不可避免"}]}]}]},{"type":"heading","attrs":{"id":"ff7204c7-6d6e-46c1-9c2b-e8f60f14324d","textAlign":"inherit","indent":0,"level":4,"isHoverDragHandle":false},"content":[{"type":"text","text":"解法:把"},{"type":"text","marks":[{"type":"code"}],"text":"AGENTS.md"},{"type":"text","text":"从百科全书变成导航地图"}]},{"type":"paragraph","attrs":{"id":"b503ec45-63df-4fbc-9319-2e2cf24d521b","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"正确的做法是用**渐进式披露(Progressive Disclosure)**原则来组织知识:"}]},{"type":"codeBlock","attrs":{"id":"5f32b0e5-65a2-4a25-875b-76f35daab08b","language":"javascript","theme":"atom-one-dark","runtimes":0,"isHoverDragHandle":false,"key":""},"content":[{"type":"text","text":"repo/n├── AGENTS.md← 地图(100行以内),只做导航n├── docs/n│ ├── architecture/← 整体架构设计n│ ├── domains/ ← 各业务域的详细文档n│ ├── plans/ ← 执行计划(版本控制的一等工件)n│ ├── specs/ ← 产品规格n│ └── runbooks/← 操作手册n"}]},{"type":"paragraph","attrs":{"id":"25acb5b9-bbcc-4b6f-902f-312c3f8f47ca","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"code"}],"text":"AGENTS.md"},{"type":"text","text":"只做一件事:"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"告诉Agent"你需要的XX信息,去XX文件里找""},{"type":"text","text":"。"}]},{"type":"heading","attrs":{"id":"2393b52e-4148-4e46-9421-bb6b133824c4","textAlign":"inherit","indent":0,"level":4,"isHoverDragHandle":false},"content":[{"type":"text","text":"后端类比:这就像API文档的结构设计"}]},{"type":"paragraph","attrs":{"id":"49297b09-9fcb-4533-b903-921617a3417e","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"后端工程师都熟悉Swagger/OpenAPI文档——你不会在一个页面里把所有API的细节全部列出来,而是有一个"目录页",用户按需点进去看具体接口。"}]},{"type":"paragraph","attrs":{"id":"7de1429e-52d5-42ca-a1dd-179aefab510c","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":""百科全书式"文档 = 把所有东西塞进一个页面,用户(无论是人还是Agent)在里面疯狂搜索 "地图式"文档 = 有清晰的层级结构,用户知道去哪里找,而且能确信找到的信息是最新的"}]},{"type":"heading","attrs":{"id":"2e6cada4-4f2e-40a9-9e70-c4709ea0ba44","textAlign":"inherit","indent":0,"level":4,"isHoverDragHandle":false},"content":[{"type":"text","text":"更进一步的实践:让文档可验证"}]},{"type":"paragraph","attrs":{"id":"74295a2f-6748-430a-a74e-90c1d7be101f","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"OpenAI团队做得更彻底——他们建了一个**"doc-gardening Agent"**(文档园艺智能体),唯一工作就是扫描文档和代码之间的不一致,自动提交修复PR。"}]},{"type":"paragraph","attrs":{"id":"6fdb3ba1-606c-4aa1-ad54-64cc40ad200b","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"这就像后端项目里的"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"集成测试"},{"type":"text","text":"——不仅代码要测试,文档也要"测试",确保文档和代码保持一致。"}]},{"type":"heading","attrs":{"id":"b3f8e9af-299b-4fee-afa8-55e7aabd778d","textAlign":"inherit","indent":0,"level":3,"isHoverDragHandle":false},"content":[{"type":"text","text":"4.2 Architectural Constraints:把"品味"编码成Linter规则"}]},{"type":"heading","attrs":{"id":"3679e1c7-0cc2-428d-83fb-4a00a04c32f8","textAlign":"inherit","indent":0,"level":4,"isHoverDragHandle":false},"content":[{"type":"text","text":"问题:Agent一天几百个PR,人工Code Review成为瓶颈"}]},{"type":"paragraph","attrs":{"id":"ad9dfd25-a7f5-4c3b-839a-06bb13b3affb","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"当Agent的吞吐量上来之后,最大的瓶颈不是"Agent写得够不够快",而是"人能不能审得过来"。"}]},{"type":"paragraph","attrs":{"id":"f1dae673-edc6-474f-9d2e-884ab884f957","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"人类的时间和注意力是固定的——你一天最多能审十几个PR,但Agent一天能生成几十个PR。人工Review成为整个流水线的瓶颈。"}]},{"type":"heading","attrs":{"id":"bf476940-3f46-43c7-839b-1345755f04de","textAlign":"inherit","indent":0,"level":4,"isHoverDragHandle":false},"content":[{"type":"text","text":"解法:把所有架构规则变成自定义Linter,机械化强制执行"}]},{"type":"paragraph","attrs":{"id":"3424e5fc-9ab8-4bc0-9e81-bbe2402b5e4e","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"OpenAI团队的核心做法是:"}]},{"type":"paragraph","attrs":{"id":"389ed767-eb90-4961-b938-928ce7e84b67","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"把所有架构规则写成自定义Lint规则——任何违反规则的代码都过不了CI,无论人写的还是AI写的。"}]},{"type":"paragraph","attrs":{"id":"5c1cea8e-3a13-4af5-8da7-c32d8b17ff1e","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"他们的层级依赖模型:"}]},{"type":"codeBlock","attrs":{"id":"d64d0f43-1873-4262-8998-d5fc5d82813e","language":"javascript","theme":"atom-one-dark","runtimes":0,"isHoverDragHandle":false,"key":""},"content":[{"type":"text","text":"Types → Config → Repo → Service → Runtime → UIn"}]},{"type":"paragraph","attrs":{"id":"262b3477-e936-4b0d-8d7e-9d9db45924d4","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"每个业务域按这个层级组织,"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"下层不能反向依赖上层"},{"type":"text","text":"。这条规则不是写在文档里靠人记的,是写成Linter规则,机械强制执行的。"}]},{"type":"heading","attrs":{"id":"9b5bced0-0175-4290-8a64-7d94464c075a","textAlign":"inherit","indent":0,"level":4,"isHoverDragHandle":false},"content":[{"type":"text","text":"后端类比:ArchUnit架构测试"}]},{"type":"paragraph","attrs":{"id":"908db6ac-4179-4d92-86c1-3060bca485f7","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Java后端工程师应该对"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"ArchUnit"},{"type":"text","text":"不陌生。它允许你把架构约束写成单元测试:"}]},{"type":"paragraph","attrs":{"id":"29a361bb-93e5-434e-bcf6-56b967928a38","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"java"}]},{"type":"codeBlock","attrs":{"id":"755f6760-8cf1-4f63-b587-47a20e5ae8dd","language":"javascript","theme":"atom-one-dark","runtimes":0,"isHoverDragHandle":false,"key":""},"content":[{"type":"text","text":"@Testnpublic void layer_dependencies_are_respected() {nJavaClasses importedClasses = new ClassFileImporter().importPackages("com.myapp");nnlayeredArchitecture()n.layer("Controller").definedBy("..controller..")n.layer("Service").definedBy("..service..")n.layer("Persistence").definedBy("..persistence..")n.whereLayer("Controller").mayNotBeAccessedByAnyLayer()n.whereLayer("Service").mayOnlyBeAccessedByLayers("Controller")n.whereLayer("Persistence").mayOnlyBeAccessedByLayers("Service")n.check(importedClasses);n}n"}]},{"type":"paragraph","attrs":{"id":"a22e1600-c789-41eb-afb7-1665e04e320d","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"这个测试如果失败,CI就红,代码合不进去。"}]},{"type":"paragraph","attrs":{"id":"66600a09-1655-4e51-b420-972361184187","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"Harness Engineering做的就是把这种"架构即代码"的理念推到极致"},{"type":"text","text":"——不仅依赖方向要测试,连"Controller层不能写业务逻辑"、"所有公共API必须有入参校验"这些都写成机械可执行的规则。"}]},{"type":"heading","attrs":{"id":"6668f527-ca7c-422e-9a6b-50983402ace7","textAlign":"inherit","indent":0,"level":4,"isHoverDragHandle":false},"content":[{"type":"text","text":"更深刻的认知:用约束换自主"}]},{"type":"paragraph","attrs":{"id":"158a826a-09f3-4b58-b7c2-5f492ae01e0e","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Böckeler在这点上有一个精妙的总结:"}]},{"type":"blockquote","attrs":{"id":"c87b5616-9001-4cea-802e-094001a731a7","textAlign":"inherit","isHoverDragHandle":false},"content":[{"type":"paragraph","attrs":{"id":"5a07dcfc-b1d7-4c3a-a0ed-3f166d7b9828","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":""为了获得更高的AI自主性,运行时必须受到更严格的约束。增加信任需要的不是更多自由,而是更多限制。""}]}]},{"type":"paragraph","attrs":{"id":"59874745-83a7-4ef7-b8d7-103d3a25c722","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"这听起来矛盾,但逻辑是清晰的:"}]},{"type":"bulletList","attrs":{"id":"e3c68643-000c-49b3-8087-b1ed89cbe785","isHoverDragHandle":false},"content":[{"type":"listItem","attrs":{"id":"9c25f128-87cb-478c-beb3-2947f39490ac"},"content":[{"type":"paragraph","attrs":{"id":"8e48a6de-60f3-4133-8865-e93dd0df99fb","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"约束模糊 = Agent不知道边界在哪里 = Agent"自信地即兴发挥" = 信任债务累积"}]}]},{"type":"listItem","attrs":{"id":"871949e7-f24e-449e-a997-c06a03b064ba"},"content":[{"type":"paragraph","attrs":{"id":"59a060b0-fd69-4f98-acc9-282167ccd6a9","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"约束清晰且可执行 = Agent知道 Exactly 什么是允许的 = Agent可以在约束范围内高度自主 = 信任债务可控"}]}]}]},{"type":"paragraph","attrs":{"id":"8207e133-b25b-4334-861c-a59de097ada8","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"用后端类比:高速公路上之所以能开到120码,是因为有护栏。没有护栏,你敢开80码都觉得危险。"}]},{"type":"heading","attrs":{"id":"b19caab8-fcf2-4dc7-9f80-463cd3d58c36","textAlign":"inherit","indent":0,"level":3,"isHoverDragHandle":false},"content":[{"type":"text","text":"4.3 Garbage Collection:为什么代码库需要"垃圾回收"?"}]},{"type":"heading","attrs":{"id":"f3921212-1a2b-4dc5-8074-8cf5c0650c54","textAlign":"inherit","indent":0,"level":4,"isHoverDragHandle":false},"content":[{"type":"text","text":"问题:架构漂移(Architecture Drift)在Agent时代加速恶化"}]},{"type":"paragraph","attrs":{"id":"df365909-2e3e-4bba-9232-75f654c0eb7a","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"完全自主的Agent开发带来了一个新的问题:"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"Agent会复现代码仓库里已有的模式,哪怕是不好的模式。"}]},{"type":"paragraph","attrs":{"id":"422375e2-dbc2-4a82-b4fb-3c33c915abba","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"比如代码库里有一个地方写了不规范的代码(信任债务的产物),Agent在相邻模块工作时可能模仿这种写法,导致坏模式扩散。时间一长,整个代码库就会变成"AI残渣"的垃圾堆,架构完全漂移。"}]},{"type":"paragraph","attrs":{"id":"783d988f-42d6-4dc9-97e8-62a1ca0c6dc3","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"OpenAI团队一开始的解法是"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"每周花20%的时间人工清理这些AI残渣"},{"type":"text","text":"——但很快就发现这个方法完全没有可扩展性。代码增长的速度远远超过了人工清理的速度。"}]},{"type":"heading","attrs":{"id":"7e19def0-0023-457c-bd2a-6251fc7a34f0","textAlign":"inherit","indent":0,"level":4,"isHoverDragHandle":false},"content":[{"type":"text","text":"解法:把"黄金原则"编码到代码仓库里,建立循环清理流程"}]},{"type":"paragraph","attrs":{"id":"840797c3-db90-437b-8a75-4766faacd99e","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"OpenAI团队的"黄金原则"示例(注意这些都编码成了自动化检查):"}]},{"type":"orderedList","attrs":{"id":"34fb4cff-9a17-4967-8b06-d4e2ca68cb92","start":1,"isHoverDragHandle":false},"content":[{"type":"listItem","attrs":{"id":"589d6d4a-89bd-4372-83ff-d491a5240df4"},"content":[{"type":"paragraph","attrs":{"id":"40a4417a-d194-4e31-ace8-be4ca2a2d2b2","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"优先使用共享的工具包,不允许在业务代码里手写重复的辅助函数"}]}]},{"type":"listItem","attrs":{"id":"f59b1e68-861e-40a2-b742-3b70a85ec2c5"},"content":[{"type":"paragraph","attrs":{"id":"7f82711e-7e19-4f98-9f4f-125d91f2557f","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"不允许"YOLO式"的探测数据,必须在边界处验证数据结构"}]}]},{"type":"listItem","attrs":{"id":"0494fcff-3a4d-461c-ae7d-9a57cc1cb8cf"},"content":[{"type":"paragraph","attrs":{"id":"3c4e5e9c-964b-42e2-9517-fc8c8ce9475f","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"所有业务代码必须遵循分层架构规则,不允许反向依赖"}]}]},{"type":"listItem","attrs":{"id":"0ee86436-ebb6-4dcd-a403-5b82687914c8"},"content":[{"type":"paragraph","attrs":{"id":"50947012-20ca-4bbb-b128-dbba0bafd0bf","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"所有日志必须结构化,符合可观测性规范"}]}]}]},{"type":"paragraph","attrs":{"id":"94bad326-d568-48fa-8d30-b9dc812eee09","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"基于这些原则,他们会"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"定期运行一组后台Codex任务,扫描代码库中的偏差,更新质量评分,发起有针对性的重构PR"},{"type":"text","text":"。"}]},{"type":"heading","attrs":{"id":"a864bf41-e14e-4305-96d8-f2b105cfeb6a","textAlign":"inherit","indent":0,"level":4,"isHoverDragHandle":false},"content":[{"type":"text","text":"后端类比:Java GC(垃圾回收)"}]},{"type":"paragraph","attrs":{"id":"dae5aba7-6bfa-4aaf-85fc-8f0444e68da6","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"这个机制就像JVM的垃圾回收:"}]},{"type":"table","attrs":{"id":"1485a696-e28c-4efd-b937-42b9d33d3d6e","isHoverDragHandle":false},"content":[{"type":"tableRow","content":[{"type":"tableHeader","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); background: none 0% 0% / auto repeat scroll padding-box border-box rgb(247, 247, 247); font-weight: 600; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"053c5a99-36e1-40d8-908c-4b48652ad4fc","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"bold"}],"text":"维度"}]}]},{"type":"tableHeader","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); background: none 0% 0% / auto repeat scroll padding-box border-box rgb(247, 247, 247); font-weight: 600; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"fe9738c9-be85-4c02-ad5b-cedb230bfc39","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"bold"}],"text":"Java GC"}]}]},{"type":"tableHeader","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); background: none 0% 0% / auto repeat scroll padding-box border-box rgb(247, 247, 247); font-weight: 600; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"293cff91-7380-4a84-bb6d-1b5bc01a8aae","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"bold"}],"text":"代码库GC"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"3080d7f6-893c-42a3-ac97-992168e1b85d","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"回收对象"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"e06c1f84-d27f-4d10-8ab3-fe79c17e85b2","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"不再被引用的对象"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"906c5a45-f4e6-45c8-aaae-381b3af62a71","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"违反"黄金原则"的代码"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"e1f76990-d0b0-4d4c-9ffa-9238890333a1","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"触发方式"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"920c07a9-f1ec-4ac1-b17a-10d39d0930de","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"JVM自动,分代回收"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"20a9bdff-10f9-4d9a-876b-9c2ffa30d4d5","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"定期运行"清洁Agent""}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"fce257b3-9038-4d8a-9136-2647ad410655","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"回收动作"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"ef3637cd-9715-4b87-942a-d4b279bdc769","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"释放内存"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"4375c372-b627-444b-ad8e-91804a1010d0","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"提交重构PR"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"8f371ddc-b0e2-4a06-8d2b-5051290ef081","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"设计哲学"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"33034dd4-27eb-4b64-8080-a013647b3ef2","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"小额、高频、持续地释放内存"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"c89b8805-1f6c-4ca6-87dd-e1d42f1b9def","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"小额、高频、持续地偿还技术债务"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"3b79a684-4a8c-40c8-93c3-9cfe760a9782","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"核心理念"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"14d0395a-c101-421d-bfc9-9d99f15c4d7f","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":""让开发者不用手动管理内存""}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"242912f8-0074-4ba5-bf36-fcffc73ec0a2","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":""让Agent自己纠正自己""}]}]}]}]},{"type":"paragraph","attrs":{"id":"6249236a-8f2c-4979-8977-d760b60cc1a1","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Böckeler特别指出:"}]},{"type":"blockquote","attrs":{"id":"e55345b0-9f59-405b-bbff-e4c8dfbe6043","textAlign":"inherit","isHoverDragHandle":false},"content":[{"type":"paragraph","attrs":{"id":"a6e098ae-df8d-4a8b-8f74-9a58850bafc9","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":""技术债务就像高息贷款,小额高频地偿还,永远比让债务累积到爆炸再一次性痛苦解决要好得多。""}]}]},{"type":"heading","attrs":{"id":"ad09cda8-0c58-44be-a441-1578e766d064","textAlign":"inherit","indent":0,"level":4,"isHoverDragHandle":false},"content":[{"type":"text","text":"更进一步的实践:自修复闭环"}]},{"type":"paragraph","attrs":{"id":"06b0d371-14c5-4a6b-8ec4-05f4a1081a85","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Harness Engineering中的"垃圾回收"不只是定期清理,而是形成了"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"自修复闭环"},{"type":"text","text":":"}]},{"type":"orderedList","attrs":{"id":"6956a7ea-af28-4030-9648-6782d252382e","start":1,"isHoverDragHandle":false},"content":[{"type":"listItem","attrs":{"id":"358861e7-cb18-4e0d-8965-e2f322731a76"},"content":[{"type":"paragraph","attrs":{"id":"e3386585-12b8-4ef5-a420-b84e7e7ba6f0","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"代码变更发生"}]}]},{"type":"listItem","attrs":{"id":"55936783-9408-494e-b28c-ffc96004240b"},"content":[{"type":"paragraph","attrs":{"id":"1a8a8cb0-ca60-4651-9bae-96222c6cb0a1","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"自动化检查(Linter、架构测试、文档一致性检查)运行"}]}]},{"type":"listItem","attrs":{"id":"44eaa232-e644-496d-8eb3-b04120c7f114"},"content":[{"type":"paragraph","attrs":{"id":"e6c0d08e-96f5-4584-a13b-683ae2eb07dd","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"发现偏差 → 自动发起修复PR"}]}]},{"type":"listItem","attrs":{"id":"fe742577-6031-4054-87f4-1f0426ebce75"},"content":[{"type":"paragraph","attrs":{"id":"bac670ef-75de-4b42-b7fa-911aa90d4704","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"CI验证通过 → 自动合并"}]}]}]},{"type":"paragraph","attrs":{"id":"3670b44f-0c31-496c-b953-72cd1aa758a6","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"整个流程人类可以不介入。就像Java的G1 GC——你设置好参数,它在后台持续工作,保证内存使用始终在健康范围内。"}]},{"type":"horizontalRule","attrs":{"id":"12e88e53-6d78-450e-b6b0-1cdd54123f58","isHoverDragHandle":false}},{"type":"heading","attrs":{"id":"33077a4b-0262-473b-afea-957757d4ef4d","textAlign":"inherit","indent":0,"level":2,"isHoverDragHandle":false},"content":[{"type":"text","text":"第五章:从DevOps到AgentOps的自然延伸"}]},{"type":"heading","attrs":{"id":"31f96fa0-89ca-4a58-b1b1-e390863b8cb1","textAlign":"inherit","indent":0,"level":3,"isHoverDragHandle":false},"content":[{"type":"text","text":"5.1 DevOps的核心思想回顾"}]},{"type":"paragraph","attrs":{"id":"593cd110-0fc7-486e-8304-ce60c38633c0","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"DevOps的核心是"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"打破开发(Dev)和运维(Ops)之间的墙"},{"type":"text","text":",通过自动化工具链实现:"}]},{"type":"bulletList","attrs":{"id":"17e58ebd-ccaa-427a-aa13-c5f288697dcd","isHoverDragHandle":false},"content":[{"type":"listItem","attrs":{"id":"11c4bc76-b668-4f2a-9d0b-047738a5a462"},"content":[{"type":"paragraph","attrs":{"id":"ba18ab4c-d58a-4541-bf65-93a8dc9c983c","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"持续集成(CI)"},{"type":"text","text":":代码频繁合入,自动化构建和测试"}]}]},{"type":"listItem","attrs":{"id":"ff2a7719-69da-42c7-94c4-c0bc7720cfbe"},"content":[{"type":"paragraph","attrs":{"id":"9b3adb7e-3301-486d-abfa-2978ab461495","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"持续交付/部署(CD)"},{"type":"text","text":":自动化发布流程,频繁但安全地发布"}]}]},{"type":"listItem","attrs":{"id":"b3e85499-e6ea-49d9-bae7-0f348e2e21be"},"content":[{"type":"paragraph","attrs":{"id":"a5ca1203-04b4-4eec-84d1-4b599caaed75","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"基础设施即代码(IaC)"},{"type":"text","text":":环境配置版本化、可复现"}]}]},{"type":"listItem","attrs":{"id":"a9ecd519-4265-4455-ba53-823159564730"},"content":[{"type":"paragraph","attrs":{"id":"1b6a23b5-a87b-45b9-a999-4b83560bea82","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"监控与反馈"},{"type":"text","text":":系统运行状态对团队透明,快速反馈"}]}]}]},{"type":"heading","attrs":{"id":"a1624a19-d552-4e51-901b-3e069fda59f5","textAlign":"inherit","indent":0,"level":3,"isHoverDragHandle":false},"content":[{"type":"text","text":"5.2 AgentOps:当"开发"的主体从人变成Agent"}]},{"type":"paragraph","attrs":{"id":"f3cce09a-bafe-4849-883a-b83c0881fa0a","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"当Agent成为代码的主要生产者时,我们需要一套新的实践来应对新的挑战。这就是"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"AgentOps"},{"type":"text","text":"。"}]},{"type":"table","attrs":{"id":"2c919246-ac11-4b66-a38d-05ac5c7ee411","isHoverDragHandle":false},"content":[{"type":"tableRow","content":[{"type":"tableHeader","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); background: none 0% 0% / auto repeat scroll padding-box border-box rgb(247, 247, 247); font-weight: 600; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"fd9fa43c-2962-4cc0-a073-1b87889478d3","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"bold"}],"text":"维度"}]}]},{"type":"tableHeader","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); background: none 0% 0% / auto repeat scroll padding-box border-box rgb(247, 247, 247); font-weight: 600; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"ccf19664-c135-41c0-bf9e-d49ebd09ac3d","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"bold"}],"text":"DevOps"}]}]},{"type":"tableHeader","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); background: none 0% 0% / auto repeat scroll padding-box border-box rgb(247, 247, 247); font-weight: 600; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"022653c7-1abf-4b3f-8871-fdf76d97ff42","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"bold"}],"text":"AgentOps"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"ba3b29c7-e5cf-4086-9fff-379b1525a7e4","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"核心目标"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"7be95e61-059a-428c-b9a0-7a5fdf821739","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"让"人写的代码"快速安全地上线"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"c884cffc-44e4-42d2-8f5c-88e60121d39a","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"让"Agent写的代码"可靠可控地合入"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"eebee2f6-fe73-46c0-afe9-999d3fa63ccf","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"新挑战"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"76dea769-2a25-4c14-9d1d-201ea2e7a03a","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"环境一致性、发布频率、监控告警"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"5b68b5c7-df14-4472-8428-2b570ace72f1","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"信任债务、架构漂移、上下文管理、Agent行为可观测"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"93d09df5-9eb8-4568-a81e-2d6e951e89e6","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"核心实践"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"c29d49c3-a938-4c7c-918b-ac5211d1c6c8","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"CI/CD、IaC、监控告警"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"8484074b-831a-4559-bf56-6c7c346b1d5b","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Harness(约束设计、反馈闭环、垃圾回收)"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"b4c006cc-a3d6-44ff-93ed-bdd1c6785642","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":""呕吐"的对象"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"1dc00621-e17c-4ac0-aa7a-242e277d1247","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"代码包、容器镜像"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"a7c0f02c-3242-4175-9947-f6ad24e5a74a","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Agent的推理过程、工具调用记录、决策日志"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"c5c076c6-8370-466a-aa09-1fd321431ab0","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"人类角色"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"9c682b2c-2527-4242-8c55-a00c50e6db94","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Dev和Ops的协作桥梁"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"8ad33eb0-552c-4df8-97ba-a604b44214fe","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Harness设计师 最终审查者"}]}]}]}]},{"type":"heading","attrs":{"id":"29c1a0b4-361c-48e4-9d59-bfac1c0b5b8e","textAlign":"inherit","indent":0,"level":3,"isHoverDragHandle":false},"content":[{"type":"text","text":"5.3 AgentOps的核心组件(基于Harness三大组件的延伸)"}]},{"type":"orderedList","attrs":{"id":"827970b5-36d2-4e4e-8f7b-b3c43b0fd0fa","start":1,"isHoverDragHandle":false},"content":[{"type":"listItem","attrs":{"id":"72ceea50-49b9-44d7-b359-cbad441da18f"},"content":[{"type":"paragraph","attrs":{"id":"63d0c31c-f540-4ba3-b899-b8a81fcdc8e1","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"Agent可观测性"},{"type":"text","text":":不仅观测应用运行状态,还要观测Agent本身的推理过程、工具调用、失败模式"}]}]},{"type":"listItem","attrs":{"id":"7925bcac-1883-4f5e-9c52-b939e3e6c3af"},"content":[{"type":"paragraph","attrs":{"id":"b95cb714-c5c7-4ea7-88e9-e36bc9c7ebf3","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"Agent上下文管理"},{"type":"text","text":":确保Agent在跨会话、跨任务时有一致的"外部记忆""}]}]},{"type":"listItem","attrs":{"id":"9be6dbe2-671c-47fc-b234-846c6bf412e7"},"content":[{"type":"paragraph","attrs":{"id":"a70ecbdc-8067-4f83-92d1-4821c84779e9","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"Agent输出验证"},{"type":"text","text":":不仅跑测试,还要验证Agent的隐含假设(对抗信任债务)"}]}]},{"type":"listItem","attrs":{"id":"d0f83575-0978-4e11-853e-11828bf42dca"},"content":[{"type":"paragraph","attrs":{"id":"19aeb48e-48c6-40c9-8f7d-ac43a13a4b41","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"Agent行为约束"},{"type":"text","text":":通过Linter、架构测试、代码审查Agent来约束Agent的输出"}]}]},{"type":"listItem","attrs":{"id":"03e9b859-11aa-49a5-b316-3e9d074e5ecf"},"content":[{"type":"paragraph","attrs":{"id":"0a063d7a-9afc-4170-8c74-138a2bab29d0","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"Agent性能优化"},{"type":"text","text":":通过Trace分析、A/B测试来优化Harness本身(LangChain的实践)"}]}]}]},{"type":"horizontalRule","attrs":{"id":"c4acdcbd-70c2-47fc-b61b-fe878e6a4319","isHoverDragHandle":false}},{"type":"heading","attrs":{"id":"430dc052-b3ef-4d5e-a9db-5081a6957dd7","textAlign":"inherit","indent":0,"level":2,"isHoverDragHandle":false},"content":[{"type":"text","text":"第六章:关键案例详细描述"}]},{"type":"heading","attrs":{"id":"05171a07-0c99-44ca-ab08-f16f22b5741a","textAlign":"inherit","indent":0,"level":3,"isHoverDragHandle":false},"content":[{"type":"text","text":"6.1 OpenAI Symphony:百万行代码实验的具体做法"}]},{"type":"heading","attrs":{"id":"3359f7d4-d89b-441c-8ec2-df5116e8e4bd","textAlign":"inherit","indent":0,"level":4,"isHoverDragHandle":false},"content":[{"type":"text","text":"实验设置"}]},{"type":"paragraph","attrs":{"id":"dbb76337-4cd6-478c-85e8-5ad05486d1f2","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"OpenAI的Symphony实验有一个看似极端的铁律:"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"不手动编写代码"},{"type":"text","text":"。哪怕是一行配置、一个工具函数,都必须由Codex生成,人类绝对不直接修改代码。"}]},{"type":"paragraph","attrs":{"id":"a3a6aef8-4710-492b-b35b-9407d815e14b","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"这个规则的重要意义在于——"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"它倒逼团队找到了让Agent真正释放生产力的方法"},{"type":"text","text":"。如果允许"实在不行就人工写",团队永远不会去深入思考"怎么让Agent能自主完成这件事"。"}]},{"type":"heading","attrs":{"id":"ac243a6d-e66a-4ab1-a9c3-0797d7413415","textAlign":"inherit","indent":0,"level":4,"isHoverDragHandle":false},"content":[{"type":"text","text":"具体做法拆解"}]},{"type":"paragraph","attrs":{"id":"676b21de-7982-4e4e-90ba-784e947c767d","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"第一阶段(第1-4周):踩坑期"}]},{"type":"paragraph","attrs":{"id":"398344e5-9272-4918-8416-d43540801477","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"团队一开始进展比预期慢得多。不是Codex能力不行,而是"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"环境的规范不够明确"},{"type":"text","text":"。Agent没有对应的工具、抽象层和规则约束,根本不知道该往哪个方向走。"}]},{"type":"paragraph","attrs":{"id":"0563e3d8-f4d3-47b5-8747-0d3b07328427","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"这就像你请了一个能力很强的实习生,但不告诉他公司的代码规范、架构设计、部署流程——他能力再强也不知道该怎么下手。"}]},{"type":"paragraph","attrs":{"id":"f421687e-cabc-42eb-befd-13a820ffc3b6","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"第二阶段(第5-12周):Harness建设期"}]},{"type":"paragraph","attrs":{"id":"38de4605-e4b7-4694-a7e6-8c000efe2c9e","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"团队把主要精力从"让Agent写代码"转向"构建让Agent能写代码的环境":"}]},{"type":"orderedList","attrs":{"id":"0cd8edb9-c3f2-4567-b68a-66931b65d512","start":1,"isHoverDragHandle":false},"content":[{"type":"listItem","attrs":{"id":"dd256af1-aee1-4592-9108-fa67613fd7bd"},"content":[{"type":"paragraph","attrs":{"id":"f4cf13d8-9734-46bd-981b-0f00f1604064","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"重构"},{"type":"text","marks":[{"type":"code"}],"text":"AGENTS.md"},{"type":"text","text":",从百科全书变成导航地图"}]}]},{"type":"listItem","attrs":{"id":"08ff9fc1-0c68-4d35-aa4a-672d56ac844d"},"content":[{"type":"paragraph","attrs":{"id":"5d40adba-f9ed-4bf4-8334-bdd37a144e7c","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"编写自定义Linter规则,把架构约束机械化"}]}]},{"type":"listItem","attrs":{"id":"a668750d-4a62-4506-8ec1-d39e3576b3d8"},"content":[{"type":"paragraph","attrs":{"id":"5e7bafd7-2bd1-4649-82e5-e4d31ed9d845","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"接入可观测性堆栈(LogQL、PromQL、TraceQL),让Agent能自己查日志、查指标、查链路"}]}]},{"type":"listItem","attrs":{"id":"339c610f-6797-4e08-824f-fa671b732b5e"},"content":[{"type":"paragraph","attrs":{"id":"89e48a40-34cd-42a9-977e-92e690c31ac1","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"接入Chrome DevTools协议,让Agent能自己操作浏览器验证UI"}]}]}]},{"type":"paragraph","attrs":{"id":"e42c1c5c-acb9-4a20-ac8c-e6612b7e63ef","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"第三阶段(第13周以后):规模化期"}]},{"type":"paragraph","attrs":{"id":"b0d76a54-9919-4c7d-bf9c-402d31a3c658","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"一旦Harness建设完成,Agent开始高效产出。关键数据:"}]},{"type":"bulletList","attrs":{"id":"e370814f-3e3a-499d-847a-d920a781f718","isHoverDragHandle":false},"content":[{"type":"listItem","attrs":{"id":"265b1a44-45d1-4e88-ad67-880130990f78"},"content":[{"type":"paragraph","attrs":{"id":"ff355342-9127-409c-b594-79e9962dec7a","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"人均日均产出:"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"3.5个PR"}]}]},{"type":"listItem","attrs":{"id":"5c2f1792-d5f1-459f-97c7-cfc35ff9383e"},"content":[{"type":"paragraph","attrs":{"id":"cd5674dc-52dc-42a7-8d62-034b24eae962","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"单次Agent最长连续工作时间:"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"超过6小时"},{"type":"text","text":"(通常在人类睡觉的时候)"}]}]},{"type":"listItem","attrs":{"id":"74c5dec9-0eba-4d47-8068-e0f4c2bbead5"},"content":[{"type":"paragraph","attrs":{"id":"7fecf0e0-25e5-4572-89e3-59d68c44acab","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"你晚上下班前提一个需求,第二天早上起来,代码已经写好、验证完毕、PR已经提交,就等你做最终确认"}]}]}]},{"type":"heading","attrs":{"id":"18c23140-5d00-47eb-98a7-f882c5ae9238","textAlign":"inherit","indent":0,"level":4,"isHoverDragHandle":false},"content":[{"type":"text","text":"他们遇到了什么问题?"}]},{"type":"orderedList","attrs":{"id":"3ff29270-acaf-4f39-900e-76af5778cc62","start":1,"isHoverDragHandle":false},"content":[{"type":"listItem","attrs":{"id":"a15d77e1-b3c1-4863-8c37-127864e3a472"},"content":[{"type":"paragraph","attrs":{"id":"c771871a-d74e-4ef5-9e62-18def024ebe3","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"Agent试图一次做完所有功能"},{"type":"text","text":":上下文窗口耗尽,留下一堆半成品。解法:强制"每次只做一个功能""}]}]},{"type":"listItem","attrs":{"id":"dda98c64-2bbe-46b1-ba5f-9756bc0855db"},"content":[{"type":"paragraph","attrs":{"id":"802dea64-62d5-404b-bd3a-71049ebc9f80","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"Agent过早宣布项目完成"},{"type":"text","text":":实际还有很多隐藏的bug。解法:所有功能初始标记为"失败",只能通过测试才能标记"通过""}]}]},{"type":"listItem","attrs":{"id":"387a2d49-c62c-4c77-a59a-5af6a312e418"},"content":[{"type":"paragraph","attrs":{"id":"21d82b26-1228-492d-9644-9f02660c0634","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"代码库熵增"},{"type":"text","text":":坏模式被Agent复制扩散。解法:定期运行"清洁Agent"扫描并修复架构漂移"}]}]}]},{"type":"heading","attrs":{"id":"70bcfa57-075a-4eed-a255-d68a18315ada","textAlign":"inherit","indent":0,"level":3,"isHoverDragHandle":false},"content":[{"type":"text","text":"6.2 Stripe Minions:每周1,300个PR的运作方式"}]},{"type":"heading","attrs":{"id":"ee23b70d-30d2-414c-80b8-d49a1e3eb9cd","textAlign":"inherit","indent":0,"level":4,"isHoverDragHandle":false},"content":[{"type":"text","text":"背景"}]},{"type":"paragraph","attrs":{"id":"40bab885-56c2-4e75-970d-988a858186a2","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"当大多数公司还在讨论"AI辅助编程"时,全球支付巨头Stripe已经悄悄迈入了**无人值守编程(Unattended Coding)**新阶段。"}]},{"type":"paragraph","attrs":{"id":"32be6719-e58f-4639-ac08-5ceaa3e321c1","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Stripe公布的数据:"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"每周有超过1,300个合并的PR是完全由Minion(AI Agent)生成的,虽然经过人工审查,但其中没有一行是人类手写的。"}]},{"type":"heading","attrs":{"id":"35c5b834-f3d9-46ef-b1f6-f6b188032ab5","textAlign":"inherit","indent":0,"level":4,"isHoverDragHandle":false},"content":[{"type":"text","text":"Minions的具体运作方式"}]},{"type":"paragraph","attrs":{"id":"99f764ae-ebce-4ebb-84c6-0f9e6d4c091d","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"触发方式多样化"},{"type":"text","text":":"}]},{"type":"orderedList","attrs":{"id":"a10926b2-c209-4697-bfac-1fbc6d62dbab","start":1,"isHoverDragHandle":false},"content":[{"type":"listItem","attrs":{"id":"c3cb2a2d-5b3c-41d7-8d54-e29148b4ec7e"},"content":[{"type":"paragraph","attrs":{"id":"895fadaf-7563-4f4e-9a81-6eea22f34fee","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"Slack触发"},{"type":"text","text":":工程师在Slack线程里@Minion,Minion读取对话上下文,理解问题,然后独自去干活。一个典型的Minion运行"始于一条Slack消息,终于一个通过CI并准备好审查的PR,中间没有任何人类互动"。"}]}]},{"type":"listItem","attrs":{"id":"d326dc94-e425-4bd9-887d-08ea5122ffc9"},"content":[{"type":"paragraph","attrs":{"id":"2f2595e0-a828-49a4-9f91-bf677481fb1a","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"工单触发"},{"type":"text","text":":当CI系统检测到不稳定的测试(Flaky Test)时,自动创建一个工单,并附带一个按钮——"启动Minion修复它"。"}]}]},{"type":"listItem","attrs":{"id":"3eef4811-be7a-4aa2-9a47-4f48d8a759c8"},"content":[{"type":"paragraph","attrs":{"id":"5711b5fe-19e8-4b60-b2f5-1db1ae904cba","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"定时任务触发"},{"type":"text","text":":定期运行的代码质量扫描任务,自动发现并修复代码库中的问题。"}]}]}]},{"type":"paragraph","attrs":{"id":"616ee62e-de6e-40be-8040-89e99fcc4922","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"核心技术设施"},{"type":"text","text":":"}]},{"type":"orderedList","attrs":{"id":"272e17d5-92c3-4bff-be96-d51846bbf5bc","start":1,"isHoverDragHandle":false},"content":[{"type":"listItem","attrs":{"id":"98f74b7b-713f-47d1-b77a-f5f852743118"},"content":[{"type":"paragraph","attrs":{"id":"89e58145-9dc6-46c1-9df4-548ece7afd78","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"Devbox"},{"type":"text","text":"(基于AWS EC2的开发环境):"}]},{"type":"bulletList","attrs":{"id":"5b8b147c-4fbf-486a-867e-80fbb2ba67ab","isHoverDragHandle":false},"content":[{"type":"listItem","attrs":{"id":"5aa6ae82-6e20-4efe-8b1b-36aecf19d4e5"},"content":[{"type":"paragraph","attrs":{"id":"ad0a9534-664b-49f5-8e85-ad662d040068","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"是"即用即抛"(Cattle, not pets)的"}]}]},{"type":"listItem","attrs":{"id":"a5672670-c18c-40ac-a408-2bbd68374c06"},"content":[{"type":"paragraph","attrs":{"id":"b203c46e-0183-4d7c-9dfa-3e09b3aeefc1","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"预热了一个巨大的Devbox池"}]}]},{"type":"listItem","attrs":{"id":"78754299-2a6c-4fef-849d-22fb68fb9229"},"content":[{"type":"paragraph","attrs":{"id":"57b7c2dc-8c94-4153-a4df-cd90b9fa4e6b","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Minion需要干活时,"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"10秒钟内"},{"type":"text","text":"就能分配到一个全新的、预装了所有代码和依赖的环境"}]}]},{"type":"listItem","attrs":{"id":"4523af0b-4343-4699-9150-4d4aed7f8497"},"content":[{"type":"paragraph","attrs":{"id":"203d4855-31de-4fc9-9842-6bd7b5eccde6","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"在这个隔离的沙盒里,Minion拥有root权限,可以随意折腾"}]}]}]}]},{"type":"listItem","attrs":{"id":"dfb337d1-3106-44db-acbd-a39c331bd316"},"content":[{"type":"paragraph","attrs":{"id":"8790b373-b1a3-4112-be4d-57d490207a0c","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"Blueprints(蓝图)"},{"type":"text","text":":"}]},{"type":"bulletList","attrs":{"id":"06ccf33e-84b9-4c24-9b01-200a4b7646e8","isHoverDragHandle":false},"content":[{"type":"listItem","attrs":{"id":"0b455ecf-36e2-45dd-ad12-7cdc712c2d04"},"content":[{"type":"paragraph","attrs":{"id":"ebfe6e4c-45a4-45e6-bcb0-b306c3dafd3f","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"一种混合工作流,像状态机"}]}]},{"type":"listItem","attrs":{"id":"ba18e5f1-458a-4f7c-9379-d839345f076f"},"content":[{"type":"paragraph","attrs":{"id":"dca76cd2-553c-45a4-9e77-47b606bdae7c","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"确定性节点(方块)"},{"type":"text","text":":比如"运行Linter"、"Git Push"——这些步骤是写死的代码,绝对执行"}]}]},{"type":"listItem","attrs":{"id":"9489710a-4067-43f6-b8f2-46fa0cbc0820"},"content":[{"type":"paragraph","attrs":{"id":"3f5a3439-cbc2-464b-ba65-a666c96e7b6d","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"AI袋里节点(云朵)"},{"type":"text","text":":比如"实现功能"、"修复CI错误"——这些步骤交给LLM去思考和决策"}]}]},{"type":"listItem","attrs":{"id":"89b69a9d-a168-403d-ab9f-de6a5b3ac9f4"},"content":[{"type":"paragraph","attrs":{"id":"41cc2c59-eedc-45df-98b3-bfeb4c0a5c09","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"这种**"三明治结构"**(确定性代码夹着AI思考)既利用了AI的创造力,又保证了工程的严谨性"}]}]}]}]},{"type":"listItem","attrs":{"id":"c741f39c-613f-40ea-a7bf-f303238cb223"},"content":[{"type":"paragraph","attrs":{"id":"5bb65f89-b64d-48bf-964b-ac5ed4f5cbc3","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"Toolshed"},{"type":"text","text":"(内部MCP服务器):"}]},{"type":"bulletList","attrs":{"id":"779310f6-4184-4be2-8c6c-07de4c773374","isHoverDragHandle":false},"content":[{"type":"listItem","attrs":{"id":"ecbfff0d-d326-4dbf-8649-f6d2e8a7fbc3"},"content":[{"type":"paragraph","attrs":{"id":"9f2a64a2-6ff2-45ea-8dcd-d3b87fed32db","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"里面有"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"400多个工具"}]}]},{"type":"listItem","attrs":{"id":"2e462411-0177-422f-afb2-769001908d8d"},"content":[{"type":"paragraph","attrs":{"id":"33b32b58-6532-4b3b-8216-72ef0bf51656","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Minion可以通过这些工具去查内部文档、看Jira票据、搜索代码、查看CI状态"}]}]}]}]}]},{"type":"paragraph","attrs":{"id":"bdc7facc-b7a2-46f2-bc26-d56916df6f36","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"CI策略(务实而克制)"},{"type":"text","text":":"}]},{"type":"paragraph","attrs":{"id":"d9fd7a66-2c0b-43ec-b1f3-7d622699fc46","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Stripe的CI策略非常务实——"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":""最多跑两轮""},{"type":"text","text":":"}]},{"type":"orderedList","attrs":{"id":"ea97b377-79f9-4e01-9b42-b7c83921e1bd","start":1,"isHoverDragHandle":false},"content":[{"type":"listItem","attrs":{"id":"dab7111b-388a-4e44-af77-5192289e85f6"},"content":[{"type":"paragraph","attrs":{"id":"2a947ffa-3bd0-43a3-b542-b44ef3c7059b","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Minion本地跑Linter和部分测试(毫秒级反馈)"}]}]},{"type":"listItem","attrs":{"id":"e0663da3-5f0b-415f-bfc9-faea45432e56"},"content":[{"type":"paragraph","attrs":{"id":"a3fb65f5-ac53-4451-997b-25cba44b92d1","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"推送到CI,如果有错误且有自动修复(Autofix),自动应用"}]}]},{"type":"listItem","attrs":{"id":"2ffcd1e0-fe62-48f5-b40f-66188c3730ce"},"content":[{"type":"paragraph","attrs":{"id":"cdc66245-af20-4d8a-8ee4-958ec94dd796","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"如果还有错误,Minion尝试修复一次,再推一次"}]}]},{"type":"listItem","attrs":{"id":"94e2b5be-e674-4c8a-9fe2-f1555f850d77"},"content":[{"type":"paragraph","attrs":{"id":"621219ae-7a1b-4525-be97-6e569e245395","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"如果还不行?"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"停止"},{"type":"text","text":",交给人类"}]}]}]},{"type":"heading","attrs":{"id":"f1d83da0-38d5-49e1-b189-0f8e77360988","textAlign":"inherit","indent":0,"level":4,"isHoverDragHandle":false},"content":[{"type":"text","text":"工程师的新角色"}]},{"type":"paragraph","attrs":{"id":"47c0b517-767f-4fcf-8165-61240c236837","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Minions的出现并没有让Stripe裁掉工程师,而是"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"改变了工程师的工作内容"},{"type":"text","text":":"}]},{"type":"orderedList","attrs":{"id":"a38dcc5e-8882-4fbe-b7de-9eede1373803","start":1,"isHoverDragHandle":false},"content":[{"type":"listItem","attrs":{"id":"f3ef4284-faa6-40a0-8eb9-b257371ce40d"},"content":[{"type":"paragraph","attrs":{"id":"639c3fa8-26d8-424a-81cd-04a777293e66","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"定义问题"},{"type":"text","text":":清晰地描述任务(Prompt Engineering)"}]}]},{"type":"listItem","attrs":{"id":"f2de48d3-9a4a-48e7-a826-ad8225125537"},"content":[{"type":"paragraph","attrs":{"id":"bb0a2749-729e-4c03-a2ec-cccb4242589d","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"制定规则"},{"type":"text","text":":编写Rule文件和Blueprints,告诉AI什么是"好代码""}]}]},{"type":"listItem","attrs":{"id":"95a7b9d2-5f57-4aaa-b70d-d1e81f170d59"},"content":[{"type":"paragraph","attrs":{"id":"c4e39d82-6828-41ef-a2a3-4b7a5c8821be","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"审查结果"},{"type":"text","text":":拥有最终的决定权,判断AI的产出是否符合业务逻辑"}]}]}]},{"type":"paragraph","attrs":{"id":"ff703de8-bf6f-4a90-b1b6-9024be45634d","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"用Stripe工程师的话说:"}]},{"type":"blockquote","attrs":{"id":"c1ca434b-8484-40ef-8f7b-231c6cb8379d","textAlign":"inherit","isHoverDragHandle":false},"content":[{"type":"paragraph","attrs":{"id":"397ad23f-ae49-4588-8332-ffba8ad56f18","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":""你不再是一个'代码打字员'(Coder),你变成了一个'系统架构师'和'代码审查者'。""}]}]},{"type":"horizontalRule","attrs":{"id":"98305e57-e00b-4786-ae68-9467f905256a","isHoverDragHandle":false}},{"type":"heading","attrs":{"id":"55767d09-95fa-447a-a5f2-24cad7101e41","textAlign":"inherit","indent":0,"level":2,"isHoverDragHandle":false},"content":[{"type":"text","text":"第七章:后端视角映射——让后端工程师"秒懂"的全景对照表"}]},{"type":"paragraph","attrs":{"id":"fd012527-0230-4d58-a64a-66d9b922cd37","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"为了让后端工程师直观地理解Harness Engineering的价值,我们建立一个完整的视角映射:"}]},{"type":"table","attrs":{"id":"28149c32-c204-4f84-8bde-fb93921f823e","isHoverDragHandle":false},"content":[{"type":"tableRow","content":[{"type":"tableHeader","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); background: none 0% 0% / auto repeat scroll padding-box border-box rgb(247, 247, 247); font-weight: 600; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"12661bb1-0b4d-4b47-89e5-706e2579c67c","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"bold"}],"text":"传统后端概念"}]}]},{"type":"tableHeader","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); background: none 0% 0% / auto repeat scroll padding-box border-box rgb(247, 247, 247); font-weight: 600; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"7b132564-7059-4006-9d5d-5cdae5b76743","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"bold"}],"text":"Harness/AgentOps对应概念"}]}]},{"type":"tableHeader","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); background: none 0% 0% / auto repeat scroll padding-box border-box rgb(247, 247, 247); font-weight: 600; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"d43c60da-ca05-46f1-9ae6-a52336e5ce63","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"bold"}],"text":"说明"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"47d8fc07-19ee-475b-90b7-5bc70b5a2d7e","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"技术债务"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"76bbfbb3-5447-4943-b89e-a2522feece1d","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"信任债务(Trust Debt)"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"c24476c4-673f-4a48-ab13-a9f79809131d","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"AI的隐含假设积累,更隐蔽更危险"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"81de4c8d-053e-4e92-966f-2e03a95ef8bf","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"架构评审/Code Review"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"ba1e0d7e-71ee-4190-9b31-86e09f5f93e0","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"自动化架构约束(Linter 架构测试)"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"e314da39-7fc9-4777-8080-101bc2fa2f11","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"把"品味"编码成机器可执行的规则"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"8964da85-efc1-40ec-a812-b69da6ab1aa7","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"定期重构"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"837dd000-3e31-481c-a618-b13571fd0104","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"代码库垃圾回收(Garbage Collection Agent)"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"f3156924-4024-4c1b-9bd7-bd79ad8d466f","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"定期扫描并修复架构漂移"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"25fa1981-6c66-448c-9469-2137720537f2","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"CI/CD流水线"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"f1d431f8-3446-4a1e-980f-c39a1a5d73a1","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"AgentOps流水线"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"73524f84-7a51-4927-a948-0d15a3f48d2a","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"不仅跑测试,还要验证Agent的隐含假设"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"e0518bb9-89fb-4608-9fd1-c1e8c6437a86","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"应用监控(APM)"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"01d70053-091f-4005-be01-d4e2bf03435f","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Agent可观测性"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"78a5ffe3-50ac-4c45-a767-965cd0d17c77","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"不仅观测应用,还要观测Agent的推理过程"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"2a0b517b-32ca-4e89-9e82-f369331280a7","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"单元测试/集成测试"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"533a1a3e-c3e8-40c9-aab1-bc1fcc6b5e2b","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Agent输出验证"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"0deb791e-0344-45a5-878a-876cc3f00c96","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"测试不仅验证功能,还要"测试"Agent是否遵守了约束"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"64f62fbf-66ef-447b-81d4-2a44b9da51a2","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"静态代码分析(SonarQube等)"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"8236a6f9-440a-48be-8a3e-a83112a1ff9a","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"文档一致性检查(doc-gardening Agent)"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"b8fba261-673e-4b0e-9144-2ace88f859a2","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"自动发现并修复文档与代码的不一致"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"387de670-ceea-47d4-839b-f9e250ab8f62","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"容器/虚拟机(标准化环境)"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"442c779f-2a22-451d-8ddb-4b03f585572a","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Devbox(一次性开发环境)"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"4d6bfdea-c963-461e-916a-149b838f8e33","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Agent需要隔离的、可抛弃的标准化环境"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"3b5cfb77-2801-4380-bd46-2b18db579e27","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"超时/熔断/限流"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"bfab9409-61f7-434c-9b3d-cdb2cadbb1b0","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Agent行为约束(Blueprints)"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom: 1px solid rgb(235, 235, 235); padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"3dea22cc-1f65-4c93-8b4e-2c543fd602a5","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"用确定性节点约束Agent的行为边界"}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"2b0dc8b5-c56b-4e17-b0a8-8039126f33a3","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Java GC(垃圾回收)"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right: 1px solid rgb(235, 235, 235); border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"0b08dd90-d95f-4d05-960a-a926a1e38552","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"代码库GC(定期清洁Agent)"}]}]},{"type":"tableCell","attrs":{"colspan":1,"rowspan":1,"colwidth":null,"background":null,"color":null,"textAlign":null,"style":"border-right-width: medium; border-right-style: none; border-right-color: currentcolor; border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; padding: 8px 16px; line-height: 1.786;"},"content":[{"type":"paragraph","attrs":{"id":"c79739bc-96ad-4648-8ac3-a5c96b0df6ba","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"小额高频偿还技术债务,防止架构漂移"}]}]}]}]},{"type":"horizontalRule","attrs":{"id":"9bfa1c26-fbf4-4a50-955a-0081cba8c240","isHoverDragHandle":false}},{"type":"heading","attrs":{"id":"1746722b-f4aa-48c7-a89b-6bcea2637e20","textAlign":"inherit","indent":0,"level":2,"isHoverDragHandle":false},"content":[{"type":"text","text":"结语:工程师的价值永远在"设计"而不是"执行""}]},{"type":"paragraph","attrs":{"id":"951f74ba-88e2-4f3e-b799-c1046bd75a59","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"回到文章开头的问题:"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"当Agent一天生成几百个PR时,工程师的价值在哪里?"}]},{"type":"paragraph","attrs":{"id":"10b510a2-76fd-4ed4-a364-a6429cbaac77","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"答案现在已经清晰了:"}]},{"type":"paragraph","attrs":{"id":"590eb451-2aac-4b64-97bb-d4d9cdcd320b","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"工程师的价值不在"写代码"(执行),而在"设计让代码能被正确生成的环境"(设计)。"}]},{"type":"paragraph","attrs":{"id":"e4f0f84f-738b-4f9c-aee4-84bdf21d620d","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"这个转变不是降级,而是升级。就像:"}]},{"type":"bulletList","attrs":{"id":"6303eed8-5b6c-466f-be4c-e540d2a9958b","isHoverDragHandle":false},"content":[{"type":"listItem","attrs":{"id":"e8db5fb2-1f86-4f7e-9de5-9da4aa7f5812"},"content":[{"type":"paragraph","attrs":{"id":"039a5125-cbd4-4500-b0c4-cc4e10f0a095","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"从"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"马车夫"},{"type":"text","text":"升级到"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"汽车工程师"}]}]},{"type":"listItem","attrs":{"id":"106db903-ecc0-429e-9708-60a944f15d24"},"content":[{"type":"paragraph","attrs":{"id":"365553dd-dd6f-44ea-a5b8-2f6761461e89","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"从"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"砌砖工人"},{"type":"text","text":"升级到"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"建筑师"}]}]},{"type":"listItem","attrs":{"id":"98b1a112-499e-4f1b-b4c9-610f2549476f"},"content":[{"type":"paragraph","attrs":{"id":"7261d9a4-5d1f-4010-b1b3-f39a0811ff4a","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"从"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"数据录入员"},{"type":"text","text":"升级到"},{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"数据库架构师"}]}]}]},{"type":"paragraph","attrs":{"id":"0a56f69e-f7bf-4aed-8d0c-c3047b1d3d65","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Harness Engineering告诉我们一个深刻的道理:"}]},{"type":"blockquote","attrs":{"id":"359b68e2-36e0-42da-ace6-f17741d2dc3b","textAlign":"inherit","isHoverDragHandle":false},"content":[{"type":"paragraph","attrs":{"id":"f29fd96e-c5ad-4f8f-b8ea-d8eff204f982","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"在Agent时代,赢家不是那些"最能写代码"的人,而是那些"最能设计系统让Agent可靠工作"的人。"}]}]},{"type":"paragraph","attrs":{"id":"ab084a42-e892-4d92-aab5-96cdd1604f01","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"OpenAI用3个人5个月100万行代码证明了这件事的可行性。"}]},{"type":"paragraph","attrs":{"id":"4b3c3516-a10b-4cc9-b270-24b6f7f5bc41","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Stripe用每周1,300个PR证明了这件事的可扩展性。"}]},{"type":"paragraph","attrs":{"id":"e700621b-296c-4481-b232-74c28c0ef095","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"现在轮到你了——你是选择继续做一个"高级打字员",还是选择升级为"Harness设计师"?"}]},{"type":"paragraph","attrs":{"id":"2755be79-9c1e-4b7b-a31c-56bdb30696d5","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"未来已来,只是分布尚不均匀。"}]},{"type":"horizontalRule","attrs":{"id":"99af09e2-88fe-4eb2-a87f-ce09319f58ba","isHoverDragHandle":false}},{"type":"paragraph","attrs":{"id":"5fb566a7-3add-4f7f-a012-d8ae192de3c9","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","marks":[{"type":"textStyle","attrs":{"color":"","background":""}},{"type":"bold"}],"text":"参考文献"},{"type":"text","text":":"}]},{"type":"orderedList","attrs":{"id":"99227a8e-43d5-4282-b89d-aa70d8d4a125","start":1,"isHoverDragHandle":false},"content":[{"type":"listItem","attrs":{"id":"3bbc52bd-3809-4e5d-86c9-ccb651db9d8d"},"content":[{"type":"paragraph","attrs":{"id":"1d8cc4c4-9e98-4620-8e34-24aa2ffe4498","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Ryan Lopopolo, "},{"type":"text","marks":[{"type":"italic"}],"text":"Harness Engineering: Working with Codex in an Agent-First World"},{"type":"text","text":", OpenAI, 2026.02.11"}]}]},{"type":"listItem","attrs":{"id":"a80bc01c-a7bf-441a-af89-7b5d7801974b"},"content":[{"type":"paragraph","attrs":{"id":"eab10d37-6e5e-4455-aa2c-dc3393532a5d","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Birgitta Böckeler, "},{"type":"text","marks":[{"type":"italic"}],"text":"Harness Engineering"},{"type":"text","text":", MartinFowler.com, 2026.02.17"}]}]},{"type":"listItem","attrs":{"id":"b9e918f9-2469-43f7-92f8-08ddc21eae8a"},"content":[{"type":"paragraph","attrs":{"id":"120b33ee-2345-40c4-83fc-25c19af5c519","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Cassie Kozyrkov, "},{"type":"text","marks":[{"type":"italic"}],"text":"Harness Engineering: How to Supervise Code You Can't Read"},{"type":"text","text":", Decision Intelligence, 2026.03.03"}]}]},{"type":"listItem","attrs":{"id":"7922495b-59cb-4abb-9e42-bf4f0d36ff03"},"content":[{"type":"paragraph","attrs":{"id":"bec63a49-f28b-4040-8d5b-6fea50ff33ad","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Justin Young, "},{"type":"text","marks":[{"type":"italic"}],"text":"Effective Harnesses for Long-Running Agents"},{"type":"text","text":", Anthropic Engineering, 2025.11.26"}]}]},{"type":"listItem","attrs":{"id":"037dd37a-7442-4180-bd68-b510f3c2ff58"},"content":[{"type":"paragraph","attrs":{"id":"7fbabda7-8c12-413d-bfd5-f786b7c7fba0","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"LangChain, "},{"type":"text","marks":[{"type":"italic"}],"text":"Improving Deep Agents with Harness Engineering"},{"type":"text","text":", LangChain Blog, 2026"}]}]},{"type":"listItem","attrs":{"id":"bd62c37c-78e1-4c3e-927c-18fcc610fb1a"},"content":[{"type":"paragraph","attrs":{"id":"bcd0a2b3-104c-456a-84b3-c360eba843d3","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false},"content":[{"type":"text","text":"Stripe Engineering Team, "},{"type":"text","marks":[{"type":"italic"}],"text":"Minions: Autonomous Coding Agents at Stripe"},{"type":"text","text":", Stripe Blog, 2026.02"}]}]}]},{"type":"paragraph","attrs":{"id":"418e521d-4b2a-4aeb-b370-72ac2f7c4fe9","textAlign":"inherit","indent":0,"color":null,"background":null,"isHoverDragHandle":false}}]}","createTime":1782651913,"ext":{"closeTextLink":0,"comment_ban":0,"description":"","focusRead":0},"favNum":0,"html":"","isOriginal":0,"likeNum":0,
相关资讯
点击查看更多
游戏推荐
推荐专题
热门阅读
推荐下载