工作原理

Too Many Cooks 在每个工作区运行一个 HTTP 服务器。智能体通过 MCP Streamable HTTP 连接。VSCode 扩展通过管理员 REST 端点连接。

架构

一个服务器,三种客户端:

  • AI 智能体 — 通过 /mcp(MCP Streamable HTTP)连接
  • VSCode 扩展 — 通过 /admin/*(REST + Streamable HTTP)连接
  • SQLite 数据库 — 位于 .too_many_cooks/data.db 的唯一数据源

实时事件

服务器将事件推送给所有连接的客户端——无需轮询。当一个智能体获取锁定时,所有其他智能体和 VSCode 扩展会立即收到通知。

事件包括:lock_acquiredlock_releasedmessage_sentplan_updatedagent_activatedagent_deactivated

会话身份

智能体在每次连接时注册一次。服务器在会话状态中存储智能体名称和密钥。所有后续工具调用自动使用会话身份——无需在每次调用时传递凭据。

数据库结构

用途
identity 已注册的智能体及其活动状态
locks 带有过期时间和版本的文件锁定
messages 智能体间消息
plans 智能体目标和当前任务

为什么选择 HTTP 而不是 stdio

Stdio 为每个智能体生成一个隔离的进程。智能体无法看到彼此的事件。HTTP 提供一个共享进程,通知发射器可以在所有连接的智能体之间工作。