基于 macOS 终端的多智能体 AI 协作框架,通过文件系统事件总线编排 Claude Code、Codex 及自研 ucode 等编码 Agent。
ufoo 是一个面向 macOS 的多智能体 AI 协作框架,核心目标是解决多个 AI 编码 Agent(Claude Code、OpenAI Codex、自研 ucode)之间的调度、通信与上下文共享问题。框架提供统一的交互式聊天界面(ufoo chat),支持通过 @agent-name 向指定 Agent 定向分发任务,实时查看所有 Agent 的消息与在线状态。
底层通过基于文件系统的事件总线(ufoo bus)实现 Agent 间消息通信,使用 events/、queues/、offsets/ 目录结构模拟消息队列,无需网络层。守护进程(daemon)管理总线生命周期,chat 启动时自动拉起。Agent 与 CLI 工具的交互通过 PTY 包装器实现,内置就绪检测与 Smart Probe Injection 机制。
上下文管理方面,ufoo 提供跨 Agent 的决策共享(ufoo ctx),架构决策以 JSONL 格式持久化,支持查看和追踪。Skills 系统允许扩展 Agent 能力,内置 /ubus、/uctx、/ustatus、/uinit 等技能。全局模式(ufoo -g)支持从 ~/.ufoo 控制器上下文跨项目管理多个 Agent 集群。
项目以 JavaScript(96.9%)为主要语言,通过 npm 全局安装(u-foo),提供完整的 CLI 命令体系和 JSON 配置文件。自研 ucode Agent 支持接入 OpenAI、Anthropic、Azure 等后端,但其原生核心(ucode-core)目前标注为 WIP。平台限制为 macOS(依赖 Terminal.app/iTerm2),仓库标注为 UNLICENSED(Private)。
安装与快速开始#
npm install -g u-foo
cd your-project
ufoo init
ufoo
核心目录结构#
| 路径 | 职责 |
|---|---|
bin/ | CLI 入口(ufoo bash 脚本、Agent 包装器) |
src/bus/ | 事件总线核心实现 |
src/daemon/ | 守护进程 + 聊天桥接 |
src/agent/ | Agent 启动与运行时管理 |
src/code/ | 原生 ucode 核心实现 |
modules/context/ | 决策/上下文协议模块 |
SKILLS/ | 全局技能定义 |
test/ | 单元与集成测试(Jest) |
待确认事项#
- 仓库标注 UNLICENSED(Private),未明确开源协议,需确认是否允许自由使用和分发
- ucode 原生核心(ucode-core)标注为 WIP,实际可用程度待验证
- 仅支持 macOS,Linux / Windows 支持情况未说明
- Claude CLI 使用
--dangerously-skip-permissions,存在安全风险 - 仓库有 8 个 tags 但无公开版本号和变更日志