实战#多智能体#运行时

OpenDots 开源 AI 员工模板:它是什么、怎么跑起来、值不值得在上面搭

OpenDots 是 CopilotKit 的 MIT、Alpha 阶段 AI 员工模板。克隆后要先配什么才能聊天、审批怎么走、什么情况下该自己写 agent。

想给自己配几个能常驻干活的 AI 员工,又不想订阅一个封闭产品,OpenDots 是一个可以直接读源码的选择。它是 CopilotKit 团队开源的 AI 员工模板:每个叫 Dot 的 agent 有名字、角色、指令和权限,可以配一台自己的容器电脑,从网页聊天、语音通话或 Slack 都能找到它。仓库是 GitHub 上的 CopilotKit/OpenDots,MIT 许可,README 带着 Alpha 标记,截至 2026-10-18 约 5,500 星。如果你搜的是「opendots github」或「开源 AI 员工模板」,下面是实际跑起来之前该知道的事。

以下内容来自仓库 README 和 docs/SETUP.md,2026-10-18 读取;文档没写的地方这里也不写。想要更短的收录条目,看 OpenDots 的 GitHub 条目。

要点

  • README 明确写了这是「模板,不是托管产品」:克隆、运行、配基础设施都是你的事。
  • 装完不能直接聊天。对话依赖 CopilotKit Intelligence:托管版、本地 Docker 评估版或有许可的自托管版三选一,外加一个 OpenAI 兼容的模型密钥。
  • 写操作都要你点头:草稿等「Approve & save」,非只读的 MCP 工具等「Approve & run」。

OpenDots 是什么

OpenDots 是一个 React 应用加一个 Node 服务,页面和工作区配置存在 SQLite 里。README 把它定位成「搭建自己的 agent 工作区的起点」,组成部分很具体:

部分作用
Space 与页面放工作文档的空间,有可视化编辑器、搜索、嵌套子页、自动保存和版本冲突检查
专才 Dot每个有自己的名字、角色、指令和可用工具
Dot 电脑可选,借 OpenBot 项目给每个 Dot 配容器电脑:浏览器配置和文件持久化、终端、人工接管
连接每个 Dot 可接 MCP 服务器,也可经 Composio 用邮箱、日历等已连接应用
入口网页聊天、WebRTC 语音通话、经 Channels SDK 的 Slack
后台任务服务端定时执行,可暂停、可重试

底层用 AG-UI 协议把消息和工具调用流式送到 CopilotKit 的 React 组件,TanStack AI 负责模型流式输出,Intelligence 负责持久化对话线程。交付物是 Space 里能继续编辑的文档,而不是一段聊天记录,这是它和「带工具的聊天机器人」最大的区别。

怎么跑起来

要求 Node.js 24 和 npm。README 给的命令:

git clone https://github.com/CopilotKit/OpenDots.git
cd OpenDots
npm ci
cp .env.example .env
npm run dev

打开 http://127.0.0.1:5173。这时可以建 Space、写页面、定义 Dot,但还聊不了天:没配服务凭据时应用只显示配置状态,部署指南明确说它不会生成模拟回复。

要让对话工作,先在三条 Intelligence 路线里选一条,再接模型:

路线文档怎么说
托管 Intelligencenpx copilotkit@latest login,再 npx copilotkit@latest project select,会把 CPK_INTELLIGENCE_API_KEY 写进 .env
本地 Docker 评估macOS 上的 Docker Desktop,至少 4 核 CPU、12 GiB 内存、40 GiB 空闲空间;免费 Developer 计划可拿可续期的 30 天评估许可;文档写明「不是生产安装」
授权自托管需要有许可的自托管部署,并在 .env 里填 API 与网关地址

然后在 .env 里设 OPENAI_API_KEY 和 OPENAI_MODEL,重启。OPENAI_BASE_URL 可以指到兼容端点。README 还点名了一个坑:不要在这个目录里跑 copilotkit onboard,OpenDots 已经内置了 CopilotKit 集成,再 onboard 会装上第二套。

电脑功能是另一步。README 说电脑工具需要 docs/COMPUTERS.md 里的 OpenBot 容器服务;没配置时,模板不会在你的宿主机上执行命令。

Dot、语音与 Slack

OpenDots 把文字、通话和 Slack 当成同一个 Dot 的三扇门。README 写到,通话把实时语音和一个独立的计算 agent 配成一对,所以你说话的时候长任务照样在跑,两边共用同一份对话上下文和工具权限。语音需要另配服务商。

Slack 要细看。Dot 通过基于 Channels SDK 的托管 Slack 连接被 @ 到,带明确的工作区和用户白名单,并指定一个专才。README 自己的验证记录里写,Slack 和语音派活「仍需联网服务验证」。已验证的是:2026-09-29 的真实对话、模型回复和页面上下文聊天,以及本地的电脑浏览,语音通话在 9 月 30 日验证。所以 Slack 这一路,在你自己的工作区测过之前,只能当作没验证。

人工审批怎么走

OpenDots 有两个审批点,README 都写了。第一个是保存:让 Dot 先出草稿,CopilotKit 的人工确认卡会暂停对话,等你选 Approve & save 或 Decline;批准后才在授权的 Space 里建页面并返回链接,草稿改了就要重新审。

第二个是工具。给 Dot 接的 MCP 服务器里,只读工具自己跑,其他工具会弹出 Approve & run 卡,等你批准才执行,每个工具还能按 Dot 单独开关。Composio 接入的应用默认关着:先加 COMPOSIO_API_KEY,再在全局设置和具体 Dot 里各开一次。README 提醒这些工具动的是真实账号,建议先用只读请求和测试账号试。

适合谁,不适合谁

适合想弄清「常驻、带审批的 agent 工作区」是怎么拼起来的开发者或小团队:要的是能改的源码,不是订阅的产品。模型端点和数据路径想自己管的人也合适,因为任何 OpenAI 兼容端点都能接。

不适合的情况,README 都给了理由:

  • 想要开箱即用的人:上面那套配置有好几个环节,而且即便应用自托管,对话仍依赖 CopilotKit Intelligence。
  • 多人团队:README 称它是单人所有者的起点,共享编辑、邀请和文件上传都没做。
  • 多 agent 协作:Dot 之间角色和对话各自独立,群聊和自动委派列在后续工作里;日程是循环指令,不是事件触发系统。
  • 今天就上生产:徽章是 Alpha,README 也把「已验证」和「只用 fixture 测过」分开写了。

隐私方面,README 写明对话数据会进入你配置的 Intelligence 部署和模型服务商,联网调研默认把查询词和 URL 发给 Parallel,设 WEB_SEARCH_PROVIDER=disabled 可以关掉。遥测也有说明,用 COPILOTKIT_TELEMETRY_DISABLED=true 或 DO_NOT_TRACK=1 可退出。

用模板还是自己写 agent

实际要比的是:采用这个模板,还是自己把同样的零件拼一遍。

自己写 agent从 OpenDots 起步
做出第一个可用版本最久:聊天界面、线程、工具卡片、文档存储都要做最快:克隆,配 Intelligence 和模型密钥
审批流程自己设计草稿审阅和工具审批已有
对技术栈的控制完全源码可改,但要接受 CopilotKit 和 AG-UI 的选择
依赖只有你选的对话依赖 Intelligence,电脑依赖 OpenBot
成熟度看你自己Alpha,部分功能未经联网服务验证

如果你的 agent 只是一个脚本化的单任务,带 Space、语音和 Slack 的模板就太重了。如果你要几个各有工具的命名 agent,外加一道审阅,从这里起步再删掉不用的,比自己重写审批卡片快。项目层面的信息和安装片段可以看 OpenDots 条目;要是 Dot 的最后一步是把内容发到社交平台,aitoearn 讲的是那一头。

没核对的部分

我们没有实际跑过 OpenDots,上面的步骤是仓库自己的,不是我们的实测。CopilotKit Intelligence 托管版和授权版的价格与额度,README 没写,这里也不涉及;规划之前请先看 CopilotKit 文档,那份免费评估许可文档称可续期,但有时间限制。