CopilotKit/OpenBot · 上手攻略
- 仓库:CopilotKit/OpenBot
- 链接:https://github.com/CopilotKit/OpenBot
- 分类:trending
- 作者:Tom
- 更新:2026-08-22
这是什么
OpenBot 是 CopilotKit 于 2026 年 8 月中旬开源的 AI 同事平台,核心理念是每个 AI Agent 拥有自己专属的计算机——独立的浏览器会话、文件系统和工作区空间。所有操作先审批再执行、执行后完整记录,相当于给 AI Agent 配了一个带录像的沙盒工位,你随时可以接管。
项目定位"企业级自托管",代码 MIT 许可,但生产部署需要 CopilotKit Intelligence 许可证(免费计划可用,也支持自托管)。⚠️ 截至 2026-08,当前为 Alpha 阶段,接口和功能均在快速迭代,不建议直接用于有真实登录信息的生产环境。
解决什么问题
传统 Browser Agent 的问题是"一旦授权就裸奔"——AI 能操作你的浏览器,但没有任何可见的审批机制,也没有操作记录,出了问题无法回溯。
OpenBot 的设计目标是把 AI Agent 从"危险工具"变成"可监督员工":
- 每 Bot 一台独立计算机:容器隔离,各有各的浏览器 profile 和
/workspace卷,互相不干扰 - CEL 策略网关:所有操作(浏览器点击、文件读写、MCP 调用、Shell 命令)都经过统一网关评估,规则可配置
- 全量操作审计:每一条操作都有记录,可回放、可审查
- AG-UI 协议:不绑定任何 Agent 框架,LangGraph / Mastra / CrewAI / Pydantic AI / Google ADK 均可接入
- 组件化响应:Bot 不仅返回文字,还返回可交互的 UI 组件
快速安装
前提条件
- Docker(用于 PostgreSQL + Bot 运行时容器)
- Bun ≥ 1.3(用于运行 app 和 API server)
- CopilotKit Intelligence 凭证(免费计划:
npx copilotkit@latest login获取) - 模型密钥(支持 OpenAI / Anthropic / Google)
⚠️ 以下安装方式基于 2026-08-20 README 版本;Alpha 版本更新频繁,建议 clone 后以实际 .env.example 和 scripts/start.sh 为准。
步骤一:准备环境
git clone https://github.com/CopilotKit/OpenBot.git
cd OpenBot
cp .env.example .env
步骤二:获取 CopilotKit Intelligence 凭证
npx --yes copilotkit@latest login
npx --yes copilotkit@latest project select
npx --yes copilotkit@latest license --write
license --write 会将 COPILOTKIT_LICENSE_TOKEN 写入 .env;project select 输出的 INTELLIGENCE_API_KEY 也需要填入 .env。
步骤三:配置必填环境变量
# 必须填入 .env
OPENAI_API_KEY=sk-... # 其他模型按需
# 生成密钥对(示例用 openssl,实际生产请用更安全的方式)
openssl rand -base64 32
# 填入 KEY_ENCRYPTION_KEY
# 若用内置 PostgreSQL(默认 on)
EMBEDDED_POSTGRES=on
步骤四:启动
bun install
bash scripts/start.sh
scripts/start.sh 会依次:启动 Docker 服务 → 执行数据库迁移 → 启动 API server(:3001)→ 启动 app(:3010)→ 健康检查。完成后访问 http://localhost:3010。
Docker 单行部署(All-in-One)
已有 PostgreSQL 时可用:
docker build -t openbot .
docker run -p 3001:3001 --env-file .env \
-e EMBEDDED_POSTGRES=on \
-v openbot-data:/var/lib/postgresql/data \
openbot
核心用法
界面路由一览
| 路径 | 用途 |
|---|---|
/ |
启动和浏览频道(多 Bot 对话入口) |
/channel/:id |
与单个 Bot 对话,实时观看其屏幕和操作记录 |
/bot |
直接与 Bot 对话,?agent=<id> 指定 Bot |
/agents |
创建、编辑、复制、隐藏、删除 Bot |
/admin/boundaries |
配置浏览器/文件/MCP 操作的放行/拒绝策略 |
/admin/audit |
审查所有已放行/已拒绝/已失败的操作记录 |
/admin/computers |
查看、停止、重置 Bot 的计算机环境 |
/admin/plugins |
配置 MCP 服务器和凭证 |
与 Bot 对话示例
- 访问
/bot,输入:Open news.ycombinator.com and tell me the top story. - Bot 会在自己的浏览器中打开页面、分析内容、返回摘要
- 全程可切换到
/channel/:id视图观看 Bot 屏幕
配置策略规则
进入 /admin/boundaries,可添加 CEL 表达式规则,inspect 对象包括:tool.name / intent / bot.id / page.url / element.* / file.* / mcp.* 等。Deny 优先于 Allow,规则异常时默认拒绝(fail-closed)。
自定义 Bot
编辑 agents.yaml 或在 UI 的 /agents 页面创建。内置三个 Bot(均为配置而非代码):
- General Assistant:日常办公
- Knowledge:公司知识库问答
- Risk Analyst:风险与合规评估
gVisor 隔离模式
生产环境建议开启 gVisor 隔离:
COMPUTER_RUNTIME=runsc
需要宿主机支持 gVisor(Google Container-Optimized OS 等)。
典型适用场景
- 企业内 AI 员工编排:需要监管、审计、回放 AI 操作的高合规行业(金融、医疗、法律)
- Browser Agent 安全化:给现有的 Browser Agent(比如爬虫、表单填写、内容审核类)加上审批网关
- 多 Agent 协作工作流:多个 Bot 各司其职(一个做研究、一个做风险分析、一个做报告),通过
/channel统一监控 - MCP 工具安全暴露:将 MCP Server 的工具通过 OpenBot 网关暴露给 AI,保留操作记录
坑与注意
⚠️ Alpha 阶段接口不稳定:README 明确警告"Expect rough edges and bugs, and expect things to move"。上线前请务必锁定版本 commit,不要用 latest tag。
⚠️ CopilotKit Intelligence 许可证依赖:MIT 代码≠零依赖。生产部署实质上需要 CopilotKit Intelligence 授权,免费计划有用量限制,详情见 copilotkit.ai。
⚠️ PostgreSQL 存储:所有操作审计记录存在 PostgreSQL,需要定期维护数据量。
⚠️ OPENBOT_SINGLE_USER 默认开启:.env.example 默认 OPENBOT_SINGLE_USER=true,即所有请求以单一管理员身份放行。关闭前必须完成 OAuth 注册,否则任何人都能操作 Bot。
⚠️ 模型密钥:默认示例使用 OpenAI key;切换到 Anthropic 或 Google 需要修改 Bot 配置。
与同类对比
| 维度 | OpenBot | Browserbase / Segmind | LangChain Agents |
|---|---|---|---|
| 隔离模型 | 每 Bot 独立容器+浏览器 | 云端浏览器实例 | 无内置隔离 |
| 审批机制 | CEL 网关,所有操作先审后行 | 无操作审批 | 无 |
| 审计回放 | 全量操作记录 + 屏幕录制 | 仅截图/录屏 | 无 |
| Agent 框架绑定 | 无(AG-UI 协议) | 无 | 强绑定 LangChain |
| 自托管 | ✅ 完全本地 | ❌ SaaS | ✅ |
| 成熟度 | Alpha(2026-08) | 较成熟 | 成熟 |
OpenBot 的核心差异是网关-审批-审计这一安全闭环,而非浏览器自动化能力本身。如果你需要的是一个受监管的 AI 员工平台而非浏览器自动化工具,OpenBot 是目前开源领域最接近的选择。
一句话结论
每个 AI Agent 都该有自己的工位和操作记录——OpenBot 把这件事做成了企业级开源平台,Alpha 阶段值得关注,生产用请盯紧版本更新。