我把主力 AI 助手换成了 Agent,两天踩了四个坑
Agent, 踩坑

我把主力 AI 助手换成了 Agent,两天踩了四个坑

把主力 AI 助手换成 Agent 两天踩了四个坑——审批模式、时间戳被覆盖、语音消息、电脑休眠断联,最大的教训是知道路径比知道答案更重要。

7分钟阅读

我把主力 AI 助手换成了 Agent,两天踩了四个坑

前两天我把主力 AI 助手换成了一个本地部署的 Agent。结果两天踩了 4 个坑,差点卸了。但踩完之后,我反而觉得离不开它了——就因为它的一个设计思路。

先说坑。

坑一:审批安全模式,配置值不能乱填

审批安全模式控制的是——当你让 Agent 执行一条危险命令的时候,要不要先弹窗等你确认。设成 off,就是大家常说的 YOLO 模式,不确认直接跑。

配置里我写的是 approvals.mode: auto,字面意思是自动通过,对吧?我以为设了就万事大吉,结果每次执行危险命令,它还是弹审批窗口。

查了一圈才发现——auto 这个值它根本不认识,代码直接把它当成了最严格的 manual 模式,每次都卡你。

解决方法巨简单:把 auto 改成 off 就好了。教训是:它的配置值不是自由填写的,有效值只有 manualsmartofffalse 四种(off 和 false 效果一样),auto 是无效值,设了等于没设。

坑二:绕过原生接口同步,时间戳全丢了

我平时用 Obsidian 记笔记,笔记存在对象存储里,同步插件能保留每篇笔记的真实修改时间。最早我想的是:让 Agent 定时把笔记同步上去,不就完成了吗?

结果笔记是同步上去了,但每篇笔记的修改时间全部被覆盖成了同步时刻,真正的更新时间全丢了。这个影响很大:我整理笔记有一部分靠 Obsidian 的「今天修改过」排序,时间一覆盖,全乱了。

根源在于:我直接用底层命令行工具上传,跳过了同步插件的机制。底层上传工具不管文件原来什么时候改的,它只管「上传的就是当前版本」。

最后改用 Agent 调用同步插件自己的 CLI 接口,让插件去处理同步逻辑,就好了。这个坑给我的教训:用工具原生的接口集成,不要绕过它去操作底层数据。

坑三:语音通知,三个小坑叠在一起

我想让 Agent 完成任务之后给我发一条语音通知,听起来很简单,结果调了三天才通,三个小坑叠在一起让人怀疑人生。

第一个:语音合成接口有国内版和海外版两个域名,两个根本不是一回事,用错了就调不通。

第二个:IM 上传音频的时候,file_type 必须填 opus,不是 mp3,也不是 audio。文件能上传,但客户端播不了。

第三个:音频时长参数必须传毫秒,不是秒。我传了 10 秒,它当成 10 毫秒处理,客户端显示语音只有 0.01 秒,根本没法播。

所以真正的问题从来不是「能不能做」,而是「路径对不对」。知道路径,比知道答案更重要。

坑四:电脑休眠导致断联

有一天下午 Agent 突然断联了,我以为是软件问题,查了半天——结果是电脑进入了睡眠模式。Mac 上一条命令关闭交流电下的睡眠就解决了。用 Agent 当日常助手,电脑保持不休眠是物理前提,跟软件配置无关。

让我回不去的,是它能自我进化

四个坑说完了,但我还要补一个让我彻底回不去的理由。

这个 Agent 有一套 Skills 系统,你可以给它写「技能说明书」,告诉它遇到什么情况该怎么处理。真正厉害的地方在于:它不只让你手动写,还支持自动诊断和优化。

工具每次调用都会自动记录元数据——失败率、响应时间、是否有反复振荡——全部采集下来。然后跑一个健康检查脚本,它会告诉你:哪些 Skill 有边界条件漏洞、哪些工具链有降级风险、哪些工作流在来回振荡。

发现问题之后,配合一个评分工具,用类似做实验迭代的思路,给你的 Skill 打分、跑对比实验,再自动提出改进方案。你确认,它改,改完再验证一轮。完整闭环:评估 → 改进 → 实测 → 确认 → 保留或回滚。而且这一切在用户目录下运行,不碰源码,升级版本后你的 Skills 和进化记录全都保留。

我管着二十多个 Skill,靠人工逐个检查根本不现实。这套机制让「维护 Skill」变成了可量化、可复盘、有闭环的工程流程。

工具越强,越需要一个人来掌舵

用了两天之后,我最大的感受是:跟 AI Agent 协作,很多人关心的是 Agent 能做什么——能写代码、能发消息、能搜索。但我关心的是:我自己知不知道我要什么,并且能不能把这个路径准确地传达给 Agent。

工具越来越强大了,但它永远需要一个人来掌舵。让你来主导,让 Agent 来执行——这是我觉得一个好用的 Agent 和其他 AI 工具最本质的区别。

相关文章