Cumora – 把 AI Agent 变成你聊天群里的正式成员

软件格律诗 给大家推荐一个很有意思的项目 Cumora 一款跨平台团队聊天工具,不同之处在于——AI 智能体和人类一样,是团队里的正式成员。同一个花名册、同一套私聊和群聊、同一个看板和日历,Agent 不只是被 @ 到才回答:它们有人设和记忆、能认领任务、彼此协调而不撞车、能收发真实邮件,还能运行在其云端或你自己的机器上。

项目由 yetone 开发,他此前做的 avante.nvim 在 GitHub 上拿了超过 18000 颗星,是 Neovim 生态里最火的 AI 编程插件之一——相当于在 Vim 里实现了 Cursor 的体验。Cumora 是他的新方向:从「一个人用一个 AI 写代码」扩展到「一群人和一群 AI 一起协作」。

目前处于邀请制内测阶段,可在 [cumora.ai](https://cumora.ai) 用 Google 或 GitHub 账号申请。桌面端支持 macOS、Windows 和 Linux,移动端 iOS 也在计划中。

核心功能

两种「大脑」路径

Cumora Cloud:每个 Agent 运行在一个托管 Pod 里,回合跑在 OpenAI Responses API 上的多跳工具调用循环中,支持 bash、文件、浏览器、邮件、记忆、技能等能力。

BYOA(Bring Your Own Agent):在你自己的 Mac 或 VPS 上跑一行 npx cumora agent computer,Agent 的「大脑」就变成你本地的 Claude Code 或 Codex CLI,使用你自己的订阅,密钥不经过 Cumora 的服务器。

协调机制:防止 Agent 撞车

多智能体协作最怕几个 Agent 同时抢着回答同一个问题,或基于过时上下文给出矛盾回复。Cumora 设计了三层协调机制:

  • seen-cursor 新鲜度门禁:如果一个 Agent 的回复基于过时信息,系统会把它拦下来(HELD),让它看完新消息再决定要不要发;
  • 原子认领:任务认领是原子操作,不会出现两个 Agent 同时做一件事;
  • 小脑分诊层:先用轻量模型判断该不该唤醒大模型,避免每条消息都烧 Token。CI 里还有一道 guard:big-brain 守卫,确保只有 Agent 回合才允许调用大模型。

Agent 能力清单

Agent 有人设和记忆、能认领看板任务、能收发真实邮件(Resend 出站、Cloudflare Email Worker 入站)。默认团队有 Atlas(研究员)、Bram(工程师)、Iris、Nova、Saga 等角色,人类和 Agent 在同一频道讨论问题,界面上几乎分不清谁是人、谁是 AI。左侧栏既有人和 Agent 的一对一私聊,也有多人群聊,还有看板和日历。

架构要点

前端 React 18,分 desktop、mobile、web、admin 四种外壳共享同一套组件;后端是无状态 Node 服务,Express + ws,Postgres 作为唯一事实来源(pg pool + Drizzle schema),Redis 负责 pub/sub 扇出和在线状态——任意数量的实例挂在负载均衡器后面都能通过 Redis 总线保持同步。云端 Agent 住在按 Agent 隔离的 Kubernetes Pod 里(由服务端通过 kubectl 编排,Go FUSE 驱动挂载服务端工作区),BYOA Agent 住在你跑守护进程的地方。两条路径走同一套 cumora CLI 协议,每一次 LLM 调用——无论云端还是 BYOA——都会记入同一本 llm_calls 成本账本。

仓库还包含 benchmarks/ 目录,收录了真实 LLM 多 Agent 协调基准测试(链式 / 计数 / 狼人杀 / 看板四种场景)。

安装与使用

本地部署

前置条件:Postgres 和 Redis(Homebrew 装的就行)。

然后打开 http://localhost:5180(PWA 模式),或跑 npm run electron:dev 启动桌面窗口。

数据库 schema 在启动时幂等创建。空数据库会初始化一个起步团队(6 个 Agent、3 个人类、9 个会话),但消息全为零——聊天里出现的一切都是实时生成的。

环境变量

OPENAI_API_KEY 是唯一硬性要求的变量。其余都有合理的本地默认值,未设置时自动软关闭:

变量默认值
DATABASE_URLpostgres://$USER@localhost:5432/cumora
REDIS_URLredis://localhost:6379
OPENAI_MODEL / OPENAI_MODEL_SUPPORT大脑模型 / 支持脑模型
PORT5181

可选功能组(OAuth 登录、邮件、R 2 存储/CDN、APNs/FCM 推送、sub 2 api 按用户 LLM 网关、候补名单/邀请、指标监控)在 .env.exampleserver/src/env.ts 中有内联说明。

测试命令

npm test                   # 服务端 + Worker 单元测试(node:test)
npm run test:integration   # 集成测试套件(需本地 Postgres/Redis)
npm run typecheck && npm run server:typecheck
npm run guard:big-brain    # CI 守卫:仅 Agent 回合可用大模型

我的使用感受

空数据库初始化的设计让人眼前一亮——6 个 Agent、3 个人类、9 个会话,但消息全为零,所有聊天内容实时生成,用户能亲眼看到 Agent 在频道里自发地讨论、认领任务、甚至主动跳出来说「我注意到上周那个问题还没解决」。BYOA 模式让不想把 API 密钥交给第三方的人有了体面的选择:一行 npx cumora agent computer 就把大脑切到本地 Claude Code。三层协调机制里,最实用的是 seen-cursor 新鲜度门禁——多 Agent 最容易翻车的场景就是基于过时上下文发话,把它拦下来看完新消息再决定,这个思路很对路。

官方网站

https://github.com/yetone/cumora

下载地址

https://pan.quark.cn/s/6be69fe96410

https://cumora.ai

相关推荐

Avatar photo

JameCling

我是 格律诗的软件世界 的作者,一名专注于软件工具、AI 技术和数字效率领域的独立研究者。
多年来,我持续关注互联网工具的发展趋势,体验不同平台的软件产品,并研究它们如何帮助用户提升效率。
我的工作不仅是整理软件信息,而是通过实际测试、功能分析和使用场景研究,帮助用户判断一个工具是否真正值得使用。
格律诗的软件世界 的每一篇文章都希望提供真实、有价值的信息,包括工具特点、使用方法、优缺点分析以及适合的人群。
我相信,好的工具能够改变工作方式,而准确的信息能够帮助用户做出更好的选择。