上周团队在讨论 Agent 产品的交互方案。前端同学主张用 Web UI + WebSocket,理由是现代、可扩展、支持多端。后端同学说那不如直接嵌到现有产品里,用 HTTP REST API。
我打开了我们自己的 Agent 代码仓库,给他们看了两套实现——一套是纯 Python 的同进程架构,另一套是 React + Python 子进程通过 JSON-RPC 通信。
“我们同一个产品里,两套通信协议并存。”
他们沉默了几秒。“为什么?”
因为这不是架构设计的失误,而是交互范式的必然分化。CLI 要的是零延迟的本地体验,TUI 要的是跨进程的事件驱动架构。用一套协议去套两种场景,只会两头都不讨好。
今天我们就来解剖一下 Hermes Agent 的两种交互架构——看看 CLI 和 TUI 分别是怎么和 Agent Loop 通信的,协议是什么,为什么这么设计。
[Read More]