当前位置: 首页 > news >正文

做了一个月 Skills,我才理解 Agent 可靠性的本质

把模型当做一个不稳定的组件,围绕它,对它做工程。

提示词工程、上下文工程、Harness EngineeringLoop Engineering。每一个新概念的提出,都像金字塔一样,是对agent更深一层的提炼和理解。

系统可靠的秘诀,不在模型会不会说,而在它出了岔子以后,谁来收拾残局。

01 核心前提:模型是不稳定的部件

模型不是你交代一个任务,就稳稳当当给你做完的那种存在。

它会忘事,会编造,会跑偏,会在关键时刻掉链子,而且犯错了不会主动告诉你,甚至会真诚地相信自己是对的。

它是一个不稳定的部件。

所以问题从一开始就不是:怎么让模型更聪明?

而是:既然它不可靠,我怎么在外面搭一层东西,让它可靠起来?

这层外面的东西,就是工程结构。

用结构兜底,不用信任兜底。


02 Agent 工具自带Harness设计

我们现在用的CodexClaude Code,本身已经带着不少Harness思想的影子。

它们不是裸模型接口,而是在模型外面包了一层工程结构。

但我逐渐意识到:工具给的,是让你能搭出这套结构的底座;真正完整的Harness,得靠我们在使用和设计时一点一点落进去。

在这类Agent系统里,我所理解的Harness机制,通常包含八个方面:

心跳循环:系统持续运转,不会死掉

心跳循环就是Agent内部那个持续运转的执行循环。

它不是一问一答的聊天机器人,而是一个持续转动的机制:

  • 接收任务

  • 整理上下文

  • 调用模型

  • 执行工具

  • 检查结果

  • 出错就恢复

  • 继续下一轮

没有心跳循环,Agent就是一次性问答。

真实任务往往需要多轮执行:改代码、跑测试、看结果、再调整。

心跳循环让这些轮次能自动衔接,不需要你每轮都重新启动。CodexClaude Code在对话里天然就带着这个多轮循环的能力,这是工具给我们最重要的基础设施之一。

例子:你让Codex修一个Bug。它不会只回你一句“建议修改某某文件”。

它会读取文件、定位问题、修改代码、运行测试。测试失败后,它会分析原因,再次修改,再次测试,直到通过,然后告诉你修好了。

这一连串动作能在一次对话里自动完成,靠的就是心跳循环在背后持续运转。

你只发了一次指令,它自己转了七八轮。

权限系统:会做不等于有权做

权限系统把“模型能做什么”和“模型被允许做什么”分开。

模型可能知道怎么执行某个命令,但系统要在它执行之前拦一道,检查这个操作是否被授权。

结果通常有三种:

  • 允许

  • 拒绝

  • 需要用户确认

CodexClaude Code对这一块提供了很实在的支持。危险操作会弹窗问你。

模型没有判断力。它可能为了完成任务执行危险操作:删文件、改配置、推送代码,而且不觉得这有什么问题。

权限系统是最后一道防线,确保不会因为模型的一时冲动造成实际损失。

例子:你让Codex帮忙清理项目里无用的依赖。它分析完后决定运行npm prunerm -rf node_modules

前者是常规操作,系统可能直接放行。后者是危险命令,系统会弹窗问你:“Agent 想执行rm -rf node_modules,确定吗?”

你必须点确认它才敢动。

模型知道怎么删文件夹,但它没有“擅自删文件夹”的权力。

上下文治理:工具提供自动压缩,但分层约定得靠我们

上下文治理是一套记忆管理机制。

CodexClaude Code在对话太长时,会自动压缩历史,腾出空间,这部分是工具自己提供的基底。

但真正让记忆系统变得可控的,是我们主动在外部建立的一套分层约定。

记忆分成四层,各司其职,防止上下文窗口被无用信息塞满。不同的agent工具可能叫法不同。

上下文窗口是有限的,而且是要花钱的。

如果什么都往里塞,系统会变慢、变贵,还会因为注意力分散而出错。

更致命的是,真正重要的信息可能被淹没在大量冗余内容里。

工具自动压缩能救急,但它不理解什么是“重要的”。

真正能决定优先级和结构的,是我们主动设计好的分层。

例子:假设你的项目有大量文档。

如果不做分层,你可能把所有文档全塞进上下文里:部署文档、API文档、测试规范、历史变更记录。

结果Agent一上来就吃了三万字,还没开始干活,窗口就快满了。

上下文治理的做法是:CLAUDE.md只写“部署前必须跑测试、不要手动改生产配置”这种硬规矩,几行字。

MEMORY.md只写“部署文档 →docs/deploy.md”、“API 文档 →docs/api.md”这种索引。

Agent只有在需要部署时,才去打开docs/deploy.md看具体步骤。

不干活的时候,那些正文文件不占窗口。

错误恢复:工具给了自动恢复的底子,但要当主路径来设计

错误恢复机制认为:模型输出被截断、上下文爆了、工具调用失败、API超时,这些不是意外,是每天都在发生的事。

所以恢复路径不是“异常处理”,而是系统设计的主路径之一。

Claude Code在上下文快满时自动压缩历史,就是一个原生例子。

但要真正接住所有意外,单靠工具不够。

需要在设计Skill时,就预埋好恢复逻辑:先试低成本的修复,不行再加重手段。

比如上下文快爆了,先清理临时积压,再压缩历史对话,最后才剥掉更早的对话记录。

例子:你和Codex聊了很久,改了好几个文件,上下文窗口快满了。

这时候Codex不会突然报错停下,而是会在后台自动压缩前面的对话,把你之前让它修登录Bug的详细过程压缩成一句:“登录 Bug 已修复,根因是token过期。”

压缩完之后腾出了空间,它继续听你的新指令。

整个过程你可能完全没感知。

这就是错误恢复在主路径里默默起作用。

熔断机制:工具没给,得自己造

熔断是给自动重试设上限的机制。

当一个操作连续失败一定次数后,系统停止重试,汇报用户,保留现场,等待人工介入。

CodexClaude Code本身不会自动帮你熔断,这个保护必须由我们在Skill里显式构建。

自动重试如果没有上限,会导致灾难。

自动压缩连续失败会烧掉海量API费用。代码修改连续失败会让代码越来越乱。部署连续失败会污染部署历史。

熔断的核心意义是承认当前手段已经失效了。继续重试不是坚持,是浪费。

例子:Codex帮你修一个Bug

它修改代码,跑测试,失败;分析原因,再修改,再跑测试,又失败;再修改,再跑测试,还是失败。

这时候如果不停,它会一直改下去,每次都在烧token,而且代码可能越改越乱。

Skill里设置的熔断会在第三次失败后叫停:

我已经试了三次,都没通过。当前代码状态是 xxx,测试失败的原因是 xxx,需要你来决定下一步。

它停下来等你,而不是闷头继续。

中断处理:工具给基础,我给闭环

中断处理机制保证:当用户打断Agent时,系统能说清楚“刚才做了什么、什么没做、为什么停了”。

工具允许你随时中断,也允许继续。

但要让未完成的工具调用被补齐一个“被中断”的结果,不留悬空的执行记录,这需要我自己在Skill流程里把账记清楚。

Agent在执行过程中可能调用多个工具:改文件、跑测试、查日志。

如果你中途打断它,有些工具可能已经执行了,有些还没开始。

如果不补齐记录,系统就会留下一堆说不清的状态残片。

下一次启动时,它不知道哪些做了、哪些没做,可能重复执行或者跳过关键步骤。

例子:你让Codex修改三个文件,改到第二个时你发现问题不对,按了停止。

我会让Skill在这种时候做两件事:

  • 把已经改完的第一个文件标记为“已完成”

  • 把改了一半的第二个文件标记为“被用户中断”

  • 把第三个文件标记为“未执行”

下一轮对话开始时,Codex知道第一个文件改完了,第二个文件需要重新确认,第三个文件还没动。

账本是平的,不会乱。

验证独立:工具不强制,但我强制

验证独立是一条硬原则:写代码的 AI 不能给自己的代码打分。

验证必须由独立的视角来执行。要么是独立的快模型,要么是独立的验证流程。

工具不会阻止你让一个Skill又干活又给自己鼓掌,但我会主动拆开。

模型会真诚地相信自己写的东西没问题。

它太想让你满意了,甚至会伪造验证结果:生成一段“测试通过”的文本,但实际根本没跑测试,或者跑了但选择性忽略失败。

让实现者验证自己的代码,等于让考生给自己的卷子打分。

例子:你让Codex实现一个新功能。

如果它自己实现、自己测试、自己汇报“完成了,没问题”,你其实不知道它到底测了没。

我的做法是拆成两个环节:一个Skill负责写代码,另一个Skill负责验证。

验证Skill不看实现过程,只做三件事:

  • 读最终代码diff

  • 实际运行测试

  • 把测试结果贴出来

通过就通过,不通过就给出具体反例。

隔离机制:工具没给围墙,我主动砌墙

隔离机制规定:多Agent之间默认不共享可变状态。

每个Agent有自己的文件读取记录、中断控制器、临时推理空间。

只有明确标记为“完成”的结果,才通过主Agent中转共享。

工具本身没有禁止跨Skill的信息流动,所以隔离是我在设计时强行划出来的边界。

Agent是不稳定的。

一个Agent的误判、幻觉、半成品推理,如果自动进入另一个Agent的上下文,会污染整个系统。

隔离默认的好处是:即使某个 Agent 跑偏了,它的混乱也只关在自己房间里,不影响其他 Agent。

例子:你让一个Agent研究“为什么登录接口响应慢”,同时让另一个Agent研究“为什么支付接口偶尔报错”。

如果不做隔离,研究登录的Agent可能把它的半成品猜测自动传给研究支付的Agent,导致支付那边的Agent也被带偏。

它跑去查数据库连接池,而实际问题在第三方支付网关。

隔离机制确保它们各查各的。

两边都出最终结论后,由主Agent汇总:

登录慢是因为索引缺失,支付报错是因为网关超时。

两个问题不会在调查过程中互相污染。


03 Agent 是全局结构的 Harness 设置

上面这八个机制,合在一起就是Agent层面的Harness思想。

工具给我们提供了一些必要的基座:心跳循环、权限确认、上下文自动压缩、中断基础支持。

但真正让这些变成一套完整工程骨架的,是我们自己在设计和使用时,有意识地把权限边界、熔断上限、独立验证、状态隔离这些约束钉进去。

以前我们在写系统提示词,写的是“你是什么人”,其实是不对的。

系统提示词的作用不是写“你是一个什么样的人”,而是写“你能做什么、不能做什么、做错了怎么办”。

人设是给 AI 穿戏服,戏服可以随时换、随时忘。

边界是给 AI 画牢房,牢房的墙是结构性的,每次调用都在。

判断标准很简单:

删掉这句话,系统行为会不会出现结构性变化?

会,就是边界;不会,大概率是装饰。

Agent层面的Harness,管的是所有任务通用的稳定性和安全性。

它不关心你具体在修Bug还是写API,它只管:

  • 心跳别停

  • 权限别越

  • 上下文别爆

  • 出错别死

  • 中断有交代

  • 失败有熔断

  • 做和验分家

  • 隔离防污染

所以,Agent本身就是全局结构的Harness设置。

系统可靠的秘诀,不在模型会不会说,而在它出了岔子以后,谁来收拾残局。

这个收拾残局的结构,就是Agent内嵌的Harness

Agent是在为模型进行全局工程化设计,Skill是在为模型执行任务层的规范化工程设计。

也就是说,agent需要harness工程思维,skill也需要harness工程思维。

相当于人在规划层上需要工程思维,在执行层也需要工程思维。

04 Skill 是任务层次的 Harness 设置

光有全局还不够。

大楼安全,不代表你在楼里干什么都安全。

Bug可能改错文件,部署可能推错分支,写API可能动到不该动的配置。

全局Harness不知道你具体在干什么,它只能管通用安全,管不了任务级别的细节。

所以需要Skill

Skill就是给某个具体任务专门定一套规矩:

  • 能动什么

  • 不能动什么

  • 先做什么

  • 后做什么

  • 做错了怎么收场

  • 做到什么程度算完成

这套规矩的设计思路,和Agent全局Harness完全一样,有边界、有流程、有状态检查、有熔断、有恢复、有验证。

只不过全局管所有任务,Skill管一个任务。

Skills管一群任务,Skill就是任务层次的Harness设置。


05 全局 Harness 的思想完全适用于 Skill 设计

这是最核心的一点。

Agent全局Harness里总结出来的每一条原则,在设计Skill时我全部都用上了。

心跳循环的思想

Agent有心跳循环维持持续运转。

Skill也有自己的“小循环”:执行步骤、检查结果、失败重试、熔断退出。

宏观循环维持系统不挂,微观循环保证任务能继续。

注:我在Skill设计中,会做降级处理。如果循环指定次数还是有问题,就进行降级操作或者直接跳过,最终记录并与用户说明情况原因。

权限边界的思想

Agent有权限系统,把“会做”和“可以做”分开。

Skill也要明确边界:能动什么工具、不能动什么命令、动哪些文件、不动哪些文件。

能力越强,约束越细。

注:我在设计Skill的时候,都会加红绿灯。红灯就是明确不能做的事情,绿灯就是可以执行的事情。这是规范骨架中的约束。

中断处理的思想

Agent在中断时会补齐执行记录,保证账本闭环。

Skill也一样,启动时先做状态检查,判断当前做到哪一步了,从断点继续,不默认自己从零开始。

关键步骤之间主动抛出进度状态,让用户知道现在在哪、哪些已完成、哪些待执行。

注:我在Skill的设计中,会增加遇到问题时向用户咨询并确认的路径设置。

上下文治理的思想

Agent把记忆分成规矩、索引、正文、进度四层,入口文件必须短。

Skill也一样。

Skill文件本身要短,只写流程和约束,不堆示例代码。

流程细节和示例代码放在独立文件里,让Skill按需去读。

规矩放CLAUDE.md,细节放Skill文件对应的明细,记录放独立文件,索引放MEMORY.md,四样东西各司其职。

注:Skill的渐进披露读取,外面是汇总层,包括SKILL.mdresource文件夹、script文件夹、template文件夹等。

明细层就是resource文件夹里对Skill的规则明细。

Skill在设计编排时,工作流骨架会明确设计需要什么,就去对应的明细中查找规则。

最后

选择AI大模型就是选择未来!最近两年,大家都可以看到AI的发展有多快,时代在瞬息万变,我们又为何不给自己多一个选择,多一个出路,多一个可能呢?

与其在传统行业里停滞不前,不如尝试一下新兴行业,而AI大模型恰恰是这两年的大风口,人才需求急为紧迫!

人工智能时代最缺的是什么?就是能动手解决问题还会动脑创新的技术牛人!智泊AI为了让学员毕业后快速成为抢手的AI人才,直接把课程升级到了V6.0版本‌。

这个课程就像搭积木一样,既有机器学习、深度学习这些基本功教学,又教大家玩转大模型开发、处理图片语音等多种数据的新潮技能,把AI技术从基础到前沿全部都包圆了!

课堂上不光教理论,还带着学员做了十多个真实项目。学员要亲自上手搞数据清洗、模型调优这些硬核操作,把课本知识变成真本事‌!

课程还教大家怎么和AI搭档一起工作,就像程序员带着智能助手写代码、优化方案,效率直接翻倍‌!

这么练出来的学员确实吃香,83%的应届生都进了大厂搞研发,平均工资比同行高出四成多‌。

智泊AI还特别注重培养"人无我有"的能力,比如需求分析、创新设计这些AI暂时替代不了的核心竞争力,让学员在AI时代站稳脚跟‌。

课程优势一:人才库优秀学员参与真实商业项目实训

课程优势二:与大厂深入合作,共建大模型课程

课程优势三:海外高校学历提升

课程优势四:热门岗位全覆盖,匹配企业岗位需求

如果说你是以下人群中的其中一类,都可以来智泊AI学习人工智能,找到高薪工作,一次小小的“投资”换来的是终身受益!

·应届毕业生‌:无工作经验但想要系统学习AI大模型技术,期待通过实战项目掌握核心技术。

·零基础转型‌:非技术背景但关注AI应用场景,计划通过低代码工具实现“AI+行业”跨界‌。

·业务赋能 ‌突破瓶颈:传统开发者(Java/前端等)学习Transformer架构与LangChain框架,向AI全栈工程师转型‌。

智泊AI始终秉持着“让每个人平等享受到优质教育资源”的育人理念‌,通过动态追踪大模型开发、数据标注伦理等前沿技术趋势‌,构建起"前沿课程+智能实训+精准就业"的高效培养体系。

重磅消息

人工智能V6.0升级两大班型:AI大模型全栈班AI大模型算法班,为学生提供更多选择。

由于文章篇幅有限,在这里我就不一一向大家展示了,学习AI大模型是一项系统工程,需要时间和持续的努力。但随着技术的发展和在线资源的丰富,零基础的小白也有很好的机会逐步学习和掌握。

【最新最全版】AI大模型全套学习籽料(可无偿送):LLM面试题+AI大模型学习路线+大模型PDF书籍+640套AI大模型报告等等,从入门到进阶再到精通,超全面存下吧!

获取方式:有需要的小伙伴,可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

来智泊AI,高起点就业

培养企业刚需人才

扫码咨询 抢免费试学

⬇⬇⬇

AI大模型学习之路,道阻且长,但只要你坚持下去,就一定会有收获。

http://www.gsyq.cn/news/1606087.html

相关文章:

  • 钉钉ONE项目用10个月证明了一件事:资源多不等于做得好
  • 一分钟学会 C++ 标准模板库智能指针
  • 2026耳夹耳机哪个品牌好?耳夹耳机排行榜前十名多维度参数测评
  • 热场分布一目了然!安科瑞光纤测温系统,让数据说话
  • LangChain基础实践——论文阅读助手
  • 华大九天加大投资并购力度,韬定律驱动EDA全流程加速布局
  • 2026年企业采购AI外呼系统:怎么选性价比更高?
  • 淘宝电商课程哪个更适合新手
  • pg空值管理
  • 主流办公APP对比,图文会议总结功能谁更实用
  • 621万vs697万!2026年结婚人数预测你信哪个?
  • Python列表去重的20种实现方式
  • 时间管理:番茄工作法在编程中的应用
  • title: Claude Code 教程:从零搭建 AI 驱动的开发工作流(基于 Google 新版 SDLC 白皮书)
  • Linux:进程
  • SpringBoot 整合 MinIO 实现文件存储——私有化 OSS 方案
  • 吉阳区正宗椰子鸡推荐|符合海南本土特色的宝藏门店
  • 《AI抢产能致车规存储缺货?欣芯半导体给出eMMC/UFS“供应韧性”破局与选型指南》
  • 如何甄选靠谱展厅设计公司:从效果到落地的实战指南
  • 2026去水印不破坏原图的方法!电脑手机在线无痕去水印工具+PS教程
  • Java计算机毕设之基于 Java 的部门通知与任务一体化管理系统 团队协作型任务分配管理系统(完整前后端代码+说明文档+LW,调试定制等)
  • 2026奶茶店收银系统维护商推荐解析:凤梨收银系统适配茶饮业态的专业参考
  • 专业的杭州Geo哪家有实力
  • 查询优化-提升子查询-UNION类型
  • STM32和STM32CubeMX实现SHT30温湿度传感器 保姆级教程
  • 社区公益服务平台 Java+SpringBoot+Vue 前后分离
  • 营销智能体选哪个?一份基于实际场景的对比指南正在改变内容生成、投放优化和用户互动的效率。但市场上的产品形态差异很大:有的只是套了壳的通用写作工具,有的是传统营销 SaaS 加了个 AI 入口。选错不仅
  • 口碑佳的智能产品有何奥秘
  • 收藏!AI应用开发路线图:Java后端+Python大模型,小白也能轻松入门并快速上手
  • 软件数据可视化化的图表展示与交互