一、项目概览
CopilotKit/OpenMuse 是 CopilotKit 团队在 2026 年 9 月开源的一个可自托管的个人 AI Agent 应用模板。一句话概括它的能力:Agent 有自己的 Chromium 浏览器、可选的 Linux 终端、文件系统,任务能在后台持续推进;你提出目标,它生成计划、执行、请你复核关键动作,最后把结果交回给你。
官方对它的定义写得很克制——“A personal agent with a browser, terminal, files, and work that keeps going. Compatible with any agent harness.”
截至 2026 年 10 月 2 日的真实数据:
- Stars:3,675 / Forks:486 / Open Issues:77
- 技术栈:TypeScript(React Native + Expo + Hono)
- 许可证:MIT
- 创建时间:2026-09-15,最近推送 2026-10-01(持续活跃)
- 代码规模:183 个文件,Monorepo 结构
- 当前状态:Alpha,官方明确标注”为自托管和二次开发而生”
二、它为什么出现:开源版的「Muse」
理解 OpenMuse,必须先看它的对手是谁。2026 年 9 月,Meta 发布了闭源的 personal agent 产品 Muse,宣传语是”your personal AI agent that gets things done”。
CopilotKit 紧接着开源 OpenMuse,CEO Atai Barkai 直接转发了 Meta Muse 的发布推文——这个对标意图没有任何模糊空间。两者的差异恰好在每一个维度上都相反:
| 维度 | Meta Muse | OpenMuse |
|---|---|---|
| 部署方式 | 托管(云端) | 自托管(本地 / Render / Docker) |
| 代码可见性 | 闭源 | MIT 开源,可审计可修改 |
| 模型绑定 | 绑定自家模型 | OpenAI / Anthropic / Google 任选,自带 Key |
| 数据归属 | 在厂商服务器 | 在自己机器(PGlite / Postgres + 本地磁盘) |
| 客户端 | 自有 | iOS / Android / Web 三端(Expo) |
值得注意的是,CopilotKit 一直在做同一件事:把新的 Agent 产品形态做成一套可自部署、可修改、可继续开发的开源参考实现。此前已有 OpenBot、OpenGenerativeUI,OpenMuse 是这个系列的延续。
三、十大能力面:这个 Alpha 到底能做什么
OpenMuse 的 README 用一张表把”已实现”和”规划中”分得非常清楚,这在开源项目里相当罕见(大多数项目会让营销话术模糊这条线)。已实现的能力面如下:
| 模块 | Alpha 中实际运行的 |
|---|---|
| Chat | CopilotKit headless 聊天 + AG-UI 流式事件,邮箱搜索与阅读,发送/停止合一输入框,可见的后续队列,草稿保留,委托任务,内联邮件 / 浏览器 / PDF / 计划 / 财务卡片 |
| Agent computer | 持久化浏览器 Profile + 接管控制台;可选的隔离 Linux 终端,保存命令回执,可编辑工作区文件,PDF 传输 |
| Activity | 持久化任务计划、进度、输入请求、暂停/恢复/取消/重试、审批流、保存的回执。SQL 租约(lease)可恢复被中断的工作 |
| Ideas | 带来源证据的建议,可编辑 / 采纳 / 驳回;已发送的回复和已完成的匹配工作会被排除 |
| Goals & Tracking | 目标与里程碑;对公开页面做周期性检查(内容变化 / 文案出现 / USD 价格阈值),告警去重 + 失败退避 |
| Documents | 邮件附件 → PDF → 提取待填表单字段 → 填充副本 → 复核后的回复 → 回执;原生/Web PDF 查看、翻页、缩放、分享 |
| Finance | 导入交易 CSV → 生成分类支出摘要 + 储蓄目标动作 |
| Gmail & Calendar | Google OAuth 适配器,完整邮件线程、草稿/附件、日历发现、经复核的事件创建/更新/删除 |
| Personal context | 可编辑的姓名、语气、头像与记忆;后台更新偏好,持久化应用内通知 |
| Rich Threads | CopilotKit Intelligence 在所有模式下持久化,稳定主会话 + 侧边会话、重命名、归档、恢复、重放 |
最值得注意的两个设计
1. Take control(接管)——Agent 的浏览器不是黑盒。你可以在 App 里直接打开它正在用的那个 Chromium 会话,看它在做什么,或亲手接手完成需要登录/验证码的部分。这解决了 GUI Agent 最常见的”卡在登录页”问题。
2. 不确定的外部写入不重试——README 明确写了一条规则:No hidden retry occurs after an uncertain external write. 即一次对外写入(发邮件、改日程)结果不明时,系统不会偷偷重试,而是让你先复核 provider 的实际结果,再决定是否创建替代操作。这是一条非常成熟的工程原则,避免”邮件发了两遍”这类事故。
四、技术架构
客户端 (Expo / React Native / Web)
│ AG-UI + 认证 API
▼
Hono + CopilotKit runtime (apps/server)
│
├──▶ 持久化任务 worker(进程内或独立进程)
├──▶ CopilotKit Intelligence(线程持久化 / 重放,必需)
├──▶ PGlite 或 PostgreSQL
│
├──▶ Browser Worker:Playwright + Chromium,持久化 Profile(apps/worker)
├──▶ Computer:可选的非 root Docker Linux 容器(apps/computer)
│ └── 持久化 /workspace 卷
├──▶ 文件与结构化产物(PDF / 财务 / 文档)
└──▶ Google Gmail / Calendar 适配器
└── 存储的 action review(审批)
可选未来适配器:OpenBot(当前已禁用,仅做契约测试)
目录职责
| 目录 | 职责 |
|---|---|
apps/mobile |
共用 CopilotKit headless hooks 的 iOS / Android / Web UI |
apps/server |
API、CopilotKit runtime、身份边界、任务引擎、审批、文件、持久化 |
apps/worker |
token 保护的 Playwright 浏览器服务,持久化 Profile |
apps/computer |
非 root Linux 镜像、受限文件系统助手、真实容器验证 |
packages/domain |
共享类型与请求校验 |
packages/integrations |
Google 与浏览器协议适配器 |
packages/backends |
可选的 OpenBot HTTP 适配器及其身份边界 |
tests |
工作流、runtime、持久化、provider 契约、授权测试 |
五、安全边界:比”给 Agent 一个 shell 然后祈祷”严格得多
这是 OpenMuse 文档写得最用力的部分,也是它作为参考架构最有价值的地方。
Linux 终端的沙箱
- 运行在 非 root Docker 容器内
- 不挂载任何宿主机目录,不注入任何凭据
- 终端网络被完全禁用——需要访问公网时必须走独立的、token 保护的 browser worker,而不是直接给终端开网
- 每条命令 30 秒执行上限,输出与退出码都保存为回执(receipt)
- 只有命名的
/workspace卷会在停止后保留文件
凭证与访问
- Google 凭证静态加密存储
- 文件 URL 与浏览器控制台使用短时效签名
- 单 owner + 共享访问密钥,不是多租户认证系统(官方直说)
- 远程部署必须走 HTTPS 并限制网络访问;本地数据模式默认只绑定 loopback
六、快速上手
本地运行
前置要求:Node 24 LTS、pnpm 11.19.0、一个 CopilotKit Intelligence 项目密钥。本地 sample app 不需要模型、Google 账号或 Docker。
git clone https://github.com/CopilotKit/OpenMuse.git openmuse
cd openmuse
pnpm install --frozen-lockfile
cp .env.example .env
npx copilotkit@latest login
npx copilotkit@latest project select
# 把生成的 server-only 项目密钥写入 .env 的 CPK_INTELLIGENCE_API_KEY
pnpm dev
另一个终端跑 pnpm dev:web,打开 localhost:8081,API 健康检查在 localhost:8787/api/health。
四个必试流程
- Chat 里发「Complete the permission slip」:打开任务、填入虚构表单值、检查保存的 PDF、复核准备好的回复(只写本地邮箱)
- Goals → Track 创建一个内置的可用性监视,改内置测试页触发告警
- Menu → Delegate task → Finance,用 Try example transactions 生成交互式支出追踪
- 启动 browser worker 并配置模型,问「Check out Hacker News for cool stuff」,然后点 Take control 接管它的会话
一键部署到 Render
仓库自带 render.yaml,一键拉起三个服务:
| 服务 | 规格 | 跑什么 |
|---|---|---|
openmuse-api |
Standard,1 GB 磁盘 @ /var/data | Hono API + 进程内任务 worker |
openmuse-web |
Static site | Expo web 导出(API 地址构建时烘入) |
openmuse-browser |
Private service,Standard,1 GB | Playwright + Chromium,仅内网可达 |
两个变量需要你自己填:CPK_INTELLIGENCE_API_KEY(否则开不了会话)和 OPENAI_API_KEY(默认模型 openai/gpt-5);另外两个由 Render 生成。
踩坑提醒:官方明确说 Standard 是能保持运行的最小规格——512 MB 时进程还没绑定端口就会 OOM,因为 PGlite 要加载一个内嵌的 Postgres 构建。另外磁盘存着数据库、PDF 和签名密钥,不带盘重新部署会清空数据。
七、必须知道的五个限制
- CopilotKit Intelligence 不在 MIT 许可内。这是最容易被忽略的一点:代码是 MIT,但线程持久化/重放依赖的 Intelligence 是独立商业服务,仓库里不附带任何项目密钥。所有模式都强制要求它。
- Alpha,真实账号未完整验证。README 顶部就写着:开放式推理、真实 Google 账号、Rich Threads 都需要各自的配置,跨设备同步仍待验证。请去看仓库的
docs/VERIFICATION.md了解”哪些是被验证过的”。 - PGlite 不能被多个进程同时打开。想把任务 worker 拆成独立进程,必须先切到 PostgreSQL。
- 单 owner 部署。共享访问密钥不是多租户认证,多人使用与部署加固都在 roadmap 上。
- 自动付款/订票明确不做。健康、银行、社交连接器,设备推送、语音、生成可执行工具、自动预订与支付——全部在 roadmap 里,且官方强调每一条都需要单独的认证、能力边界、失败行为和端到端证据才会成为受支持的功能。这条”不敢让 Agent 自己花钱”的底线,比某些竞品宣称的要保守得多。
八、同类项目对比
| 项目 | 定位 | 与 OpenMuse 的差异 |
|---|---|---|
| Meta Muse | 闭源托管个人 Agent | OpenMuse 是它的开源自托管对标物,模型可换、代码可审计 |
| OpenBot(同为 CopilotKit) | Agent 运行时 / harness | OpenMuse 内置一个已禁用但做过契约测试的 OpenBot 适配器,实桥接仍是未来工作;官方强调 OpenBot 的 Intelligence runtime 不是原生 AG-UI 端点 |
| OpenGenerativeUI(同为 CopilotKit) | 生成式 UI 参考实现 | 偏 UI 层;OpenMuse 是完整的个人 Agent 应用(含任务引擎、浏览器、终端、连接器) |
| 各类 Computer Use 演示项目 | 单场景 Agent Demo | OpenMuse 提供了持久化任务、审批回执、接管控制台这些”能长期跑”的工程件,多数 Demo 没有 |
| ComfyUI / 通用 Agent 框架 | 工作流编排 | OpenMuse 是垂直的”个人助理”应用模板,不是通用编排框架 |
九、总结
OpenMuse 真正的看点不在”又一个能开浏览器的 Agent”,而在于它把个人 Agent 产品的工程骨架完整开源了:持久化任务引擎(含租约恢复与审批回执)、可被人类接管的浏览器会话、有明确边界的容器终端、结构化的结果卡片、以及一条”不确定就不重试”的写入纪律。
如果你想自己搭一个私人 Agent,或者想研究”Agent 产品到底该怎么设计审批与可观测性”,这个仓库比绝大多数 Demo 都值得读一遍源码。
适合谁:想自托管私人助理的开发者、做 Agent 产品需要参考架构的团队、研究 Agent 安全边界的人。
不适合谁:想要开箱即用成品的普通用户(它是 Alpha 模板,需要 Node 24 / pnpm / 项目密钥);不能接受依赖 CopilotKit Intelligence 服务的纯开源原教旨主义者。
参考来源:GitHub 仓库 README 与 ROADMAP.md(MIT 许可)、CopilotKit 官方发布动态、多家科技媒体报道。文中 Star 数与时间为 2026 年 10 月 2 日实际抓取数据。
