bytebot
让AI拥有自己的虚拟电脑,自然语言指挥它完成跨应用、跨系统的自动化任务
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
让AI拥有自己的虚拟电脑,自然语言指挥它完成跨应用、跨系统的自动化任务
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
图1:Bytebot 项目 Logo
你有没有想过,如果AI拥有自己的电脑,它能帮你做什么?
想象一下:你对着一台虚拟电脑说「帮我下载这个月的所有发票,按供应商整理好」,然后看它打开浏览器、登录网站、处理文件——整个过程像有个虚拟员工在替你工作。Bytebot 正是这样一个项目:它是一个开源的、自托管的AI桌面智能体,运行在一个容器化的 Linux 桌面环境中,用自然语言就能指挥它完成各种复杂的电脑任务。
2024年起,AI Agent 成为最热门的AI方向。从简单的聊天机器人,到能执行单一API调用的工具型Agent,再到能够「操控鼠标和键盘」的计算机操作Agent,技术边界在不断拓展。Anthropic 推出的 Claude Computer Use 功能、OpenAI 的 Operator,以及字节跳动的 Bytebot,都在探索同一个命题:如何让AI真正像人一样操作电脑?
Bytebot 由 Tantl Labs 开发,2025年2月开源,至今已积累超过11000颗GitHub星标,在 AI Desktop Agent 赛道中名列前茅。与纯浏览器端的 Agent 不同,Bytebot 运行在一个完整的虚拟 Ubuntu Linux 桌面环境中——XFCE图形界面、预装 Firefox 和 VS Code,AI 可以像真实用户一样操作这个桌面。
这种设计的优势在于:全应用覆盖——不仅能操作网页,还能使用桌面应用、运行命令行、安装新软件、处理本地文件。对于企业用户而言,这意味着可以从根本上自动化那些过去只能由人工完成的多系统、多步骤业务流程。
Bytebot 的核心能力可以归纳为三个层次:
第一层:自然语言任务执行。 用户只需用自然语言描述任务,Bytebot 就会理解意图、拆解步骤、逐项执行。比如「去 Wikipedia 创建一篇量子计算的摘要」,它会自动打开 Firefox、访问 Wikipedia、提取信息、整理成摘要文档。整个过程透明可见,用户可以实时观看 AI 的每一步操作。
第二层:多应用工作流编排。 真正体现 Bytebot 价值的,是那些需要跨多个系统和应用的任务。典型场景包括:从多个银行的网银门户下载月账单并合并整理、登录 CRM 导出客户数据再同步到 ERP 系统、登录多个供应商门户下载发票并分类归档。这些任务过去需要人工在多个系统间切换,Bytebot 将其自动化。
第三层:文件处理与内容分析。 用户可以直接上传 PDF、合同、报表等文件,Bytebot 具备完整的文件读取能力,能够理解复杂文档内容、提取关键数据、生成分析报告。结合其桌面操作能力,它甚至可以在本地创建新文件、完成格式转换等操作。
Bytebot 的工程实现体现了相当的架构深度。整体采用微服务设计,包含以下核心组件:
bytebotd(桌面守护进程):基于 NestJS 构建,是整个系统的核心枢纽。它管理虚拟 Linux 桌面的生命周期(基于 Ubuntu 22.04 + XFCE),对外暴露 REST API(端口9990)和 noVNC 远程桌面访问。底层通过 supervisord 管理多个桌面进程,确保稳定性。
bytebot-agent(任务代理服务):同样基于 NestJS,负责接收任务、协调执行、管理上下文。它通过 Prisma ORM 连接 PostgreSQL 数据库(端口5432),持久化任务状态和历史记录。这个服务是 AI 决策逻辑的载体,理解用户意图后,将任务转化为具体的桌面操作序列。
bytebot-agent-cc(Claude Code 集成):专门用于 Claude Code 场景的代理服务,支持 Anthropic Claude 的 Computer Use 能力。
bytebot-ui(Web 控制台):基于 Next.js 构建的前端应用,提供任务管理界面、实时桌面预览(noVNC)、文件上传、任务状态监控等用户交互功能。设计上采用了 Radix UI + Tailwind CSS 组件库。
bytebot-llm-proxy(LLM 代理层):集成了 LiteLLM,支持 100+ AI 模型提供商,包括 Anthropic Claude、OpenAI GPT、Google Gemini、Azure OpenAI、AWS Bedrock,以及本地 Ollama 模型。这使得 Bytebot 不绑定特定 AI 提供商,用户可根据成本和需求灵活选择。
部署层面,docker-compose.yml 编排了全部 4 个核心服务(bytebot-desktop、bytebot-agent、postgres、bytebot-ui),一行命令即可启动完整环境。同时提供 Helm Chart 支持 Kubernetes 生产部署,以及 Railway 一键部署选项,工程化程度相当成熟。
Bytebot 对硬件的要求相对友好:不需要 GPU,仅需 4GB RAM 和 10GB 磁盘空间。这是因为它运行的是容器化的轻量级 Linux 桌面(XFCE),而非需要图形加速的重量级桌面环境。shm_size 设置为 2GB 应对桌面共享内存需求。
部署门槛在于:用户需要自备 AI Provider API Key(Anthropic / OpenAI / Google Gemini 三选一),以及基础的 Docker 知识。由于涉及端口映射(5432、9990、9991、9992)和特权容器模式(privileged: true,用于桌面模拟),在内网/企业环境中部署可能需要额外的网络和权限配置。
Bytebot 也面临一些现实挑战:
执行速度:AI 操作桌面本质上是对屏幕状态的理解 + 决策 + 执行的循环,相比直接 API 调用耗时更长。复杂任务可能需要数分钟甚至更久。
稳定性边界:当网页或应用 UI 发生变化时,依赖视觉理解的 AI 可能出现误判。虽然 Bytebot 支持 Takeover Mode(人工接管),但这削弱了完全自动化的价值主张。
安全考量:自托管虽然保证了数据隐私,但 AI 拥有完整的桌面操作权限意味着:一旦被恶意指令利用,可能造成文件泄露或系统破坏。生产环境需要配合网络隔离和权限控制。
多模态 AI 依赖:当前的精准桌面操作严重依赖多模态大模型(如 Claude),而这些模型的 API 成本仍是企业考虑的的重要因素。
Bytebot 的出现代表了一个明确的方向:AI Agent 从「回答问题」进化到「完成任务」。当 AI 能够自主操作电脑时,自动化边界被彻底打破——过去只有人类能做的跨系统协调工作,如今有了自动化的可能。
从 GitHub 11000+ 星标和持续活跃的社区(Discord、GitHub Issues)来看,这个方向已被广泛认可。随着多模态 AI 能力的持续提升和成本下降,AI Desktop Agent 有望成为企业数字化转型的下一个关键基础设施。
如果用一句话总结 Bytebot:它给AI配了一台电脑,然后把「替我完成这项工作」变成了可能。