当 AI Agent 遇上运维自动化:我的实践踩坑之路#
花了几天把 AI Agent 塞进日常运维,踩了一些坑,记一下。
1. 为什么要用 AI Agent#
简单说就是:太累了。
天天手动处理重复的事务:
- 定时查邮件汇总
- 定时看 X 上的 AI 动态
- 定时检查服务状态
- 定时任务提醒
用脚本也能做,但每次加新需求都要改代码。换成 Agent 之后,用自然语言就能调整任务,方便很多。
2. 用的是啥#
核心是 OpenClaw,一个开源的 AI Agent 框架。能力靠 MCP 扩展,我接了 Teambition、TickTick 和智谱 GLM;定时用 Cron 触发;消息进出走 Telegram 和 Signal。
3. 踩过的坑#
3.1 模型配置#
写配置的时候经常手滑:
- 模型名写成
claude-sonnet-4-6,实际应该是anthropic-local/claude-sonnet-4-6 - fallback 模型定义了但 provider 没配够
- 本地模型认证有时候抽风
改完配置习惯跑一下 openclaw status,哪写错了基本都能看出来。
3.2 Cron 任务#
定时任务看着简单,其实坑不少:
- agentTurn 类型任务必须带 model 字段,不带就报错
- systemEvent 类型不需要 model
- 任务超时设太短会中途卡死
3.3 MCP 服务#
- 配置文件路径要写绝对路径
- 调用格式用简化的 key=value 比 JSON 方便
3.4 Skills#
- 加载路径必须是绝对路径
- Skill 名字大小写敏感
4. 怎么用的#
举几个实际例子。邮件汇总是每 4 小时跑一次,读 Apple Mail 的未读邮件,推到大屏,同时发一份到手机。AI 资讯那块定时去刷 X,用 bird CLI 抓 trends,归类完推出来。任务提醒接了 TickTick 的 MCP,定时看有没有逾期任务和今天的待办,到点提醒。
5. 经验总结#
真要说经验,最实在的一条是先跑通一个最简单的任务再加功能,别一上来全铺开。这东西大部分报错最后都是配置写错了——模型名、路径、provider 漏配,所以改完配置习惯跑一下 openclaw status。日志比想象中有用,卡住了先翻日志,错误信息一般都挺直白。能力不够的时候就找 MCP,这个框架的扩展基本都靠它。
6. 后续想法#
- 继续优化提示词,让 Agent 回答更准确
- 尝试接入更多服务
- 看看能不能用 Agent 做代码审查
