一句话介绍
Bytebot是一款可自托管的开源AI桌面智能体,为模型提供独立的Linux虚拟桌面,使其能够看屏幕、移动鼠标、输入文字、操作文件和跨应用完成自然语言任务。
Bytebot是什么
Bytebot不是只在网页DOM中运行的浏览器代理,而是把Ubuntu桌面、AI任务服务、Web管理界面和数据库组合成容器化自动化环境。智能体可以使用Firefox、VS Code、终端、邮件客户端以及用户自行安装的应用。
项目由Tantl Labs和开源社区开发,代码采用Apache 2.0许可证。需要特别注意的是,官方GitHub仓库已在2026年3月7日归档为只读,官网与文档虽仍可访问,但上游维护、漏洞修复和功能更新不能再按活跃项目预期。
当前项目状态
| 检查项 | 当前状态 | 对用户的影响 |
|---|---|---|
| 官网 | 仍可访问 | 可了解产品定位和历史功能,但不代表托管服务仍在持续运营 |
| 官方文档 | 仍可访问 | Docker、Railway、Helm、API和使用指南仍有参考价值 |
| 官方GitHub | 已归档,只读 | 不能再通过原仓库正常合并修复或期待官方版本更新 |
| 源代码许可证 | Apache 2.0 | 允许使用、修改和分发,但需遵守许可证与归属要求 |
| 云服务价格 | 未找到当前公开价格 | 不能把历史试用或早期访问表述为现行套餐 |
| 安全维护 | 存在重大不确定性 | 部署者需要自行审计、打补丁、隔离网络或采用维护中的分支 |
系统架构
| 组件 | 技术与作用 | 默认用途 |
|---|---|---|
| Bytebot Desktop | Ubuntu 22.04、XFCE和桌面自动化守护进程 | 提供屏幕、鼠标、键盘、文件系统和可安装应用 |
| AI Agent | NestJS任务服务与模型调用层 | 理解任务、规划动作、处理状态和对话 |
| Task Interface | Next.js网页界面 | 创建任务、查看桌面、读取进度和人工接管 |
| PostgreSQL | 持久化数据库 | 保存任务、消息、状态和相关记录 |
| 模型提供商 | Claude、GPT、Gemini或LiteLLM兼容提供商 | 提供推理与视觉理解能力 |
| 部署层 | Docker Compose、Railway或Kubernetes Helm | 在本地、云主机或集群中运行整套系统 |
主要功能
- 自然语言任务:用普通语言描述目标,由智能体规划并执行桌面操作。
- 完整桌面环境:可使用浏览器、编辑器、终端、邮件和其他Linux桌面应用。
- 文件处理:上传、下载、读取、整理和生成PDF、表格、文档及其他文件。
- 跨应用工作流:在网站、文件系统、终端和桌面程序之间传递信息。
- 视觉计算机操作:通过截图理解界面,再执行点击、滚动、按键和文本输入。
- 任务状态管理:记录优先级、运行状态、消息、操作和历史结果。
- 实时桌面查看:从任务页面观察智能体操作及当前桌面状态。
- 人工接管:智能体遇到登录、异常或判断困难时,用户可以进入桌面完成关键步骤。
- 持久环境:安装的软件和配置可以在后续任务中继续使用。
- 密码管理器支持:可在桌面内安装1Password或Bitwarden处理登录和两步验证。
- 程序化控制:提供任务API、低层桌面控制API和MCP端点。
- 多模型接入:可直接配置Anthropic、OpenAI和Google密钥,也可通过LiteLLM连接其他提供商。
Bytebot如何工作
- 用户在任务界面或任务API中提交自然语言目标,并可附加需要处理的文件。
- AI Agent读取任务和历史上下文,把目标拆分为浏览、点击、输入、文件或脚本动作。
- Desktop容器提供当前屏幕和执行接口,模型依据视觉结果选择下一步。
- 每次操作后系统返回新的屏幕状态,智能体继续判断、纠错或请求用户帮助。
- 任务完成后保存消息、截图和结果文件,用户可以检查全过程并决定是否采用输出。
两种使用模式
| 模式 | 操作方式 | 适合场景 | 主要风险 |
|---|---|---|---|
| 自主任务模式 | 输入目标后由AI连续规划和执行 | 重复流程、研究、文件整理和低风险数据录入 | 模型可能误点、误填或执行超出预期的动作 |
| 人工接管模式 | 用户进入虚拟桌面手动处理后再交还任务 | 登录、验证码、异常弹窗和关键确认 | 接管时仍需保护密码、令牌和敏感文件 |
| 直接桌面控制 | 通过界面或API发送确定的鼠标键盘动作 | 测试、调试和自建编排 | 远程暴露控制接口可能导致整台虚拟桌面被接管 |
自托管部署教程
部署前准备
- 安装支持容器的Linux、macOS或Windows环境,生产环境优先使用隔离服务器。
- Docker版本至少为20.10,并安装可用的Docker Compose。
- 至少准备4GB可用内存,复杂桌面和并行任务需要更多CPU、内存与磁盘。
- 准备Claude、GPT、Gemini或LiteLLM兼容模型的API密钥。
- 由于官方仓库已归档,先检查维护状态、漏洞和社区分支,再决定部署版本。
Docker Compose安装流程
- 从官方归档仓库获取代码,并固定到经过内部审查的提交,不要直接追随不确定的边缘镜像。
- 复制环境配置文件,只填写所选模型提供商的密钥,并限制文件读取权限。
- 检查Compose配置中的端口、数据库口令、特权模式和镜像标签,先完成安全加固。
- 构建并启动Desktop、Agent、UI和PostgreSQL四个服务。
- 仅从受信任网络打开任务界面,创建一个无敏感权限的测试任务。
- 检查桌面、文件、日志和人工接管是否正常,再逐步接入真实应用。
部署后配置
- 在虚拟桌面中安装真正需要的应用,删除无关工具并保持最小权限。
- 为测试账户配置密码管理器,避免把明文密码写入提示词或环境文件。
- 建立网络白名单,限制智能体能访问的内网、云控制台和管理系统。
- 配置任务日志、截图保留、密钥轮换、磁盘加密和异常告警。
- 先让人工审批发送邮件、付款、删除文件和生产系统写入等高风险动作。
- 完成安全测试与业务验收后,再增加并发桌面或定时任务。
支持的模型
| 接入方式 | 官方文档列出的支持 | 使用特点 |
|---|---|---|
| Anthropic | Claude系列 | 默认优先路线,适合复杂视觉理解和桌面任务 |
| OpenAI | GPT系列 | 适合通用自动化、代码和文本任务 |
| Gemini系列 | 适合多语言和高吞吐任务,实际表现需测试 | |
| LiteLLM | Azure OpenAI、AWS Bedrock、Ollama及其他兼容提供商 | 便于接入企业网关、本地模型或统一路由 |
模型并不随开源项目免费提供,用户需要自行承担推理费用和服务条款。使用本地模型可以减少外部数据传输,但桌面视觉、长任务规划和工具调用能力可能与云端模型存在明显差异。
适合哪些用户
- 自动化工程师:需要让AI控制完整桌面,而不是只调用网页接口。
- 开发与测试团队:自动复现界面问题、执行端到端流程和收集截图证据。
- 企业IT团队:为没有API的旧系统建立隔离的界面自动化试验。
- 文档处理团队:在文件、浏览器和桌面应用间完成读取、整理和录入。
- AI研究人员:研究Computer Use、桌面智能体、人工接管和多模型表现。
- 开源开发者:基于Apache 2.0代码创建自己的维护分支或专用桌面代理。
典型使用场景
- 供应商发票处理:登录多个门户下载文件,整理目录并生成汇总。
- 跨系统数据录入:从表格读取记录,再写入缺少开放API的CRM或ERP界面。
- 技术研究:浏览资料、下载PDF、读取内容并在编辑器中生成比较文档。
- 软件测试:打开应用、复现用户步骤、截取异常画面并形成测试记录。
- 开发验证:运行命令、修改示例文件、启动服务,再用浏览器检查结果。
- 合规资料收集:访问公开机构页面、下载文件并更新内部跟踪表。
- 邮箱与文件流程:读取指定邮件附件、分类保存并生成待审核结果。
产品优势
- 提供完整Linux桌面,可覆盖浏览器、文件系统、终端和原生应用。
- 采用自然语言目标,适合界面变化较多且难以完全预先编排的任务。
- 自托管架构允许企业控制网络、文件、桌面镜像和数据保留。
- 支持人工接管,遇到登录、异常和关键判断时可以暂停自动化。
- 任务API、Computer Use API和MCP便于与自建代理及调度系统组合。
- Apache 2.0许可证允许组织修改、部署和分发自己的版本。
- 可接入多家云模型或本地模型,不强制绑定单一推理供应商。
- 每个桌面以容器隔离,便于创建不同应用与权限配置的工作环境。
重要限制
- 官方仓库已归档,原项目不再接受正常维护,依赖、镜像和部署文档会逐渐过时。
- 视觉桌面操作比确定性API和脚本更慢,也更容易受弹窗、分辨率和界面变化影响。
- 模型可能误解屏幕、点击错误位置、覆盖文件或提交错误表单,不能无审核执行高风险操作。
- 容器隔离并不自动等于安全,特权模式、挂载目录、网络权限和密钥可能扩大影响范围。
- 自托管软件本身没有用量限制,但模型API、云主机、存储、带宽和维护都会产生费用。
- 本地默认接口没有身份认证,直接暴露到公网或不可信局域网存在严重接管风险。
- 密码管理器可以减少明文密钥暴露,但AI看到的桌面内容和操作结果仍可能包含敏感信息。
- 项目没有当前公开的托管云价格和服务承诺,不应把旧网页中的试用入口当作可用商业套餐。
安全风险与加固建议
Bytebot默认Compose配置会映射桌面、任务、界面和数据库端口,其中桌面容器使用特权模式,示例数据库还采用默认口令。官方API文档说明本地访问默认不要求认证,这些配置只适合受控开发环境。
2026年7月公开的CVE-2026-30631指出,受影响提交中的文件写入路径可触发命令注入,公开评估给出9.8的严重级别。由于仓库已经归档,部署者不能假设官方会提供后续修复。
- 不要把桌面API、任务API、数据库和VNC直接映射到公网。
- 在反向代理或服务网格中加入强认证、TLS、IP白名单和请求日志。
- 替换示例数据库凭据,禁止数据库端口对非必要网络开放。
- 评估是否能够移除特权模式,并限制容器能力、挂载目录和宿主访问。
- 核对CVE影响,采用已审计补丁或维护分支,无法确认时不要处理敏感任务。
- 把模型API密钥存入密钥管理系统,禁止写进代码、镜像或任务描述。
- 为桌面分配专用低权限账户,不登录个人主账号或生产管理员账号。
- 限制出站网络和内网路由,防止智能体访问不在任务范围内的系统。
- 对支付、删除、发信、权限修改和代码部署设置人工批准。
- 定期清理截图、下载文件、聊天历史和持久卷,并验证备份删除策略。
REST API与MCP
| 接口 | 默认端口 | 主要用途 | 安全注意事项 |
|---|---|---|---|
| Agent API | 9991 | 创建、管理、查询任务及实时更新 | 默认本地无认证,远程使用必须自行增加认证 |
| Desktop API | 9990 | 截图、鼠标、键盘、文件和统一Computer Use动作 | 相当于桌面控制权,必须限制网络和调用主体 |
| MCP端点 | 9990下的MCP路径 | 让兼容客户端调用桌面控制工具 | 旧文档采用SSE方式,客户端兼容性需实际验证 |
| Web UI | 9992 | 提交任务、观察桌面和人工接管 | 需要在外围增加访问控制和会话安全 |
| PostgreSQL | 5432 | 保存任务与消息等状态 | 不应对外开放,必须替换默认口令 |
Agent API面向高层任务管理,Desktop API用于低层鼠标、键盘和屏幕控制。生产编排应优先使用任务级接口,并仅在必须确定控制动作时调用Desktop API。
开发者接入流程
- 在隔离环境启动经过审计的Bytebot版本,并确认任务、桌面和数据库服务健康。
- 先通过任务接口创建只读或无副作用的测试任务,记录任务标识和状态变化。
- 轮询任务或订阅实时更新,处理完成、失败、取消和需要帮助等状态。
- 需要精确控制时调用统一Computer Use动作,并在每次动作后检查返回屏幕。
- 为远程调用增加身份认证、最小权限、速率限制、超时和幂等控制。
- 将截图、文件和日志视为敏感数据,按业务要求加密、脱敏和清理。
- 在升级模型、镜像或社区分支前执行回归与安全测试。
价格与实际成本
Bytebot源代码可在Apache 2.0许可证下免费使用,没有官方开源软件订阅费。官网没有提供截至核验时仍可确认的托管云套餐价格,因此不能写成固定月费或永久免费云服务。
| 成本项目 | 计费方式 | 是否必需 | 说明 |
|---|---|---|---|
| Bytebot源代码 | 免费开源 | 是 | 可自行使用和修改,但需遵守Apache 2.0许可证 |
| 模型推理 | 由模型提供商按量或套餐收费 | 通常必需 | Claude、GPT、Gemini或其他模型费用由用户承担 |
| 服务器或Railway | 按CPU、内存、磁盘和运行时间计费 | 云部署必需 | 并行桌面和长任务会显著增加资源开销 |
| 本地硬件 | 设备、电力与维护成本 | 本地部署必需 | 本地模型还可能需要GPU和更多内存 |
| 安全与运维 | 人员或服务成本 | 生产环境必需 | 包括认证、补丁、监控、备份、漏洞和依赖管理 |
| 官方托管云 | 当前价格未公开 | 否 | 历史页面提到云能力,但不能确认现行购买与服务状态 |
开源许可证与维护状态
Apache 2.0允许复制、修改、分发和商业使用源代码,也包含相应专利授权。分发修改版时需要保留许可证和归属声明,并对修改文件作出明显说明,项目商标并不会因此自动授权。
开源许可长期有效,但仓库归档意味着官方维护已停止或暂停。企业若继续使用,应建立自己的分支、依赖更新、安全响应和发布流程,或选择有持续维护的社区分支。
隐私与数据处理
自托管可以让任务、数据库、截图和文件保留在自己的基础设施内,但所选云模型仍可能接收到提示、屏幕或文件内容。具体传输范围取决于Bytebot版本、模型连接方式和任务实现。
使用本地模型可减少对外发送,但不能消除桌面权限、日志、备份和内部访问风险。上线前应绘制数据流,确认模型提供商政策,并按最小化原则控制截图、密钥和敏感文件。
基本信息
| 项目 | 信息 |
|---|---|
| 工具名称 | Bytebot |
| 工具类型 | 开源AI桌面智能体与Computer Use自动化平台 |
| 开发团队 | Tantl Labs与开源社区 |
| 核心桌面 | Ubuntu 22.04与XFCE |
| 部署方式 | Docker Compose、Railway、Kubernetes Helm或桌面组件 |
| 模型支持 | Claude、GPT、Gemini及LiteLLM兼容提供商 |
| 价格模式 | 源代码免费,自付模型、基础设施和运维成本 |
| REST API | 有,包含任务API和Desktop API |
| MCP | 有,Desktop服务提供端点 |
| 官方SDK | 未发现独立SDK,提供接口调用示例 |
| 是否开源 | 是 |
| 许可证 | Apache 2.0 |
| 仓库状态 | 2026年3月7日起归档只读 |
| 安全状态 | 存在已公开的严重命令注入风险,需要自行评估与修复 |
推荐指数
推荐指数为3.2分,满分5分。Bytebot的完整桌面、开源代码、模型可选性和双层API仍具有学习、研究和二次开发价值,尤其适合理解桌面智能体架构。
扣分主要来自官方仓库归档、无持续上游维护、默认部署面较宽以及已披露严重漏洞。现阶段不建议直接用于生产敏感业务,除非团队有能力完成代码审计、修复、隔离和长期维护。
常见问题
Bytebot免费吗?
源代码可以按照Apache 2.0许可证免费使用。模型API、云服务器、本地硬件、存储和安全运维仍需自行付费,当前没有可确认的官方云套餐价格。
Bytebot还在维护吗?
官方GitHub仓库已于2026年3月7日归档为只读,不能视为正常活跃维护。官网和文档在线不代表仍有持续发布或安全响应。
可以在Windows或macOS使用吗?
核心代理运行在容器化Ubuntu桌面中,Windows和macOS可作为Docker宿主或访问端。它不是直接控制用户当前Windows或macOS桌面的原生个人助手。
支持本地模型吗?
文档通过LiteLLM集成列出Ollama等本地模型路线。实际桌面视觉与长流程表现取决于模型能力、上下文和硬件,需要单独评估。
是否提供API?
提供。Agent API用于任务管理,Desktop API用于屏幕、鼠标、键盘和文件等低层控制,默认本地接口没有认证。
是否支持MCP?
Desktop服务提供MCP端点,可向兼容客户端暴露桌面控制工具。文档使用较早的SSE连接方式,接入新版客户端前应验证协议兼容性。
Bytebot安全吗?
不能直接给出安全结论。默认无认证接口、特权容器、示例数据库口令和已披露的严重命令注入漏洞都要求部署者自行加固与修复。
数据会离开自己的服务器吗?
任务和桌面可以自托管,但使用云端模型时相关提示、截图或文件内容可能发送给模型提供商。只有结合代码、配置和模型政策才能确认实际数据流。
可以用来操作银行和支付系统吗?
技术上能够控制浏览器和密码管理器,但不应在当前归档版本上无监督执行金融操作。至少需要低权限账户、人工确认、隔离网络、交易限额和完整审计。
官方SDK是否开源?
没有发现单独的官方SDK,项目本体源代码和接口调用示例已开放。产品开源与SDK是否存在是两件不同的事。
归档后还能商用吗?
许可证仍允许合规商用,但团队需要自行承担维护、安全、商标和第三方依赖责任。对外提供服务前还要核对模型、应用和内容的各自授权。
总结
Bytebot展示了如何把完整Linux桌面、AI规划、任务界面、数据库和Computer Use接口组合成可自托管的桌面智能体。它仍是有价值的开源参考,也可作为二次开发起点。
但当前最重要的事实是仓库已经归档,且存在需要认真处理的安全风险。建议把它用于隔离研究和受控原型;若进入生产,应先采用审计后的维护分支,并建立认证、补丁、权限、网络和人工审批体系。
桂公网安备45132202000164号