ARTICLE · 1153672
我是怎么让两个AI助手说上话的:afago本体桥接框架实战实录
afago 实战实录 · 桥接框架篇
技术 · 落地 · 一个老板该看懂的事
读时 · 约 7 分钟 / 全文 1779 字

两个 AI 助手各跑各的,互相对不上话——我试了 UI 自动化、模拟键盘、CDP 远程调试三条路,全部碰壁,最后靠一个最「土」的方案让它们说上了话:共享目录 + 文件监听。
在 QY 厂的数字化项目里,我们用了两个 AI 助手:
- iD:负责数据处理、代码开发、运维巡检
- iW:负责规则维护、协议管理、DS 对接
问题来了:两个 AI 助手各跑各的,互相对不上话。
iD 发了信,iW 看不到;iW 回了信,iD 也不知道。经常出现「停工待通信」的情况——一停就是好几个小时。
更头疼的是:iW 是被动响应式的,你不敲它门,它就永远在那儿待着。
怎么办?
一开始我们试了几种方法,全是死路。
坑 1:UI 自动化(模拟人操作)
用 pywinauto 找 iW的输入框,然后模拟键盘输入。
结果:iW是 Electron 应用,输入框藏在 Shadow DOM 里,pywinauto 根本找不到。
坑 2:PowerShell 模拟键盘
用 PowerShell 的 SendKeys 模拟 Ctrl+V 粘贴 + 回车。
结果:焦点不在 iW窗口上,粘贴粘贴到别的地方去了。
坑 3:CDP 远程调试
让 iW开 远程调试端口 9222,然后用 Chrome DevTools Protocol 注入 JS。
结果:iW没开远程调试端口,用不了。而且要重启 iW,有数据丢失风险。
三条路,三个字:走不通。
试了一圈,发现最靠谱的方案竟然是最「土」的:共享目录 + 文件监听 + 自动输入。
消息格式就是一段 JSON——人能看懂,机器能处理:
消息里写清楚:谁发的(from)、发给谁(to)、说了什么(content)、什么状态(status)。
关键设计就两句话:
1. 先写临时文件再 rename,保证原子性——不会出现读到半截消息的脏状态
2. 等文件写完(大小稳定)再处理——杜绝「读到一半」的竞态
完整代码在项目桥接目录里,全程可查、可改、可重跑。
从「互相看不见」到「说上话」,当天就跑通了。
1. 不依赖 UI 自动化:文件监听是操作系统级的,稳得很
2. 不依赖远程调试:不用开什么 9222 端口,不碰重启风险
3. 有完整日志:每一步都有记录,出问题能查
4. 失败可重试:消息卡在 processing,移回 inbox 就能重跑
5. 人能看懂:就是一堆 JSON 文件,打开就能看
一句话:能跑、能查、能修,才是王道。
当前版本还有提升空间,我已经列进了待办:
- 提速:现在要 2 分钟,目标做到 10 秒
- 回执:注入成功后,往 receipt 目录写确认文件
- 失败回滚:processing 超过 30 秒没完成,自动移回 inbox
- 双向通信:现在只有 iD→iW,iW→iD 也要做
- 优先级队列:重要的消息先处理
AI 助手之间的通信,看起来是技术问题,其实是工程问题。
不要追求「高大上」的方案。共享目录 + 文件监听,听起来很土,但它最可靠,因为:
- 文件系统不会崩
- JSON 人能看懂
- 出问题手动也能搬
这就是工业界的朴素智慧:大道至简。
下一步,我们会把这个桥接框架装进服务器、接进本体系统——到时候,AI 之间、AI 和工厂系统之间,都能像这样「说上话」。
想到做到,AI 迭代,就揾周到。
《一句「我交代过了」,毁了多少工厂的月底盘点》
—— 从「裁而不落」讲到工厂最常见的执行断点:为什么交代下去的事会凭空消失,以及我在自己的 AI 班子上试出的三条补丁。附本周装载率实报。
👉 领取方式:关注公众号「清新牛发」,回复「AI员工」,免费领取《AI 员工发动手册·第一课:看板识别 10 问》。
如果你也在琢磨「AI 员工怎么管、怎么立规矩、怎么省老板的双手」,欢迎在评论区留言,下一期可能就写你问的题。
#afago进化实录 #AI员工 #AI落地 #AI转型 #数字化 #制造业 #工厂管理 #AI协作