ai-manus
开源通用 AI Agent 系统,配 WebUI + Docker 沙盒隔离,一键部署即可让 AI
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
开源通用 AI Agent 系统,配 WebUI + Docker 沙盒隔离,一键部署即可让 AI
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
2026年3月,一款名为 Manus 的 AI 助手因"GAIA基准测试超越人类"而刷屏全网。彼时它是一个神秘的黑箱产品,官方只放出演示视频,不公开代码。开发者社区很快分裂成两派:一派认为它是工程奇迹,另一派质疑这只是 GPT-5 驱动的包装壳。
独立开发者 Simpleyyt 选择了第三条路——自己动手复现。他在博客中写道:"我也想有一个自己的 Manus,有 WebUI、能看文件、能操作浏览器。" 于是便有了 Simpleyyt/ai-manus:一个开源的通用 AI Agent 系统,支持在 Docker 沙盒环境中自主运行工具和操作,配有完整的 Web 界面。

图1:AI Manus 界面——集成 OpenClaw 助手,带用户隔离沙盒和完整会话管理
Simpleyyt 的复刻动机非常直接:当时的 Manus 演示展示了让 AI 自动解压文件、分析简历数据、规划旅行行程等任务,但没有任何开源替代品能做到"一键部署 + WebUI + 沙盒隔离"的完整闭环。
他的技术博客记录了这个过程:先用 LangChain 搭 Agent 核心,再引入 Playwright 实现 Browser Use 能力,最后为每个 Task 分配独立 Docker 容器作为沙盒运行环境。前后花了数周,最终将代码开源,并在 GitHub 上迅速获得 1500+ stars——这在同类项目中属于头部水平。
项目的快速成长也引起了 AI 圈关注。官方文档甚至专门写了中文赞助页面,承认并感谢了这位"民间复刻者"的技术贡献。目前项目由社区驱动维护,更新活跃。
AI Manus 内置了六大类工具,远超普通 AI 助手的范畴:
每类工具都以插件化 Toolkit 形式实现,开发者可通过 mcp.json 配置接入自己的 MCP 工具,扩展性很强。
这是 AI Manus 与大多数开源 Agent 项目最本质的区别:每个 Task 分配独立的 Docker 容器作为沙盒。沙盒内 Agent 可以执行任意代码(包括有风险的命令),但不会影响宿主机。
沙盒基于 sandbox/Dockerfile 构建,内置了完整的 Linux 环境(Python、Node.js、常用工具)。backend 通过 /var/run/docker.sock 与宿主机 Docker 通信,创建和管理沙盒容器。sandbox 服务提供文件上传/下载和 shell 执行 API,backend 通过 FastAPI 调用。
这意味着:即使是恶意指令,也被隔离在容器级别,不会造成系统级别的破坏。
项目深度集成了 OpenClaw(一个开源的 AI 助手框架),作为 Manus 的内置对话助手。Claw 提供:
docker-compose.yml 中的 claw 服务自动拉起。这相当于给每个用户配备了一个专属的 AI 副驾驶,显著降低了"不知道该让 AI 做什么"的使用门槛。
代码中实现了完整的 Plan-Act 双 Agent 架构:
这种"先规划后执行"的范式源自 BabyAGI 和 AutoGPT,但在 AI Manus 中结合了 LangChain 的结构化输出(JSON mode)和 Robust JSON Parser,提升了规划结果的可靠性。
backend 采用标准的 DDD(领域驱动设计) 分层:
backend/app/
├── domain/ # 核心业务逻辑
│ ├── models/ # 实体定义(Agent、Session、ToolResult、Plan)
│ ├── repositories/ # 数据持久化抽象
│ ├── services/ # 领域服务(含 agents/、flows/、prompts/、tools/)
│ └── external/ # 外部依赖(browser、cache、llm、sandbox、search)
├── infrastructure/ # 基础设施
│ ├── external/ # 具体实现(Playwright Browser、Docker Sandbox、Redis Cache)
│ ├── repositories/ # MongoDB/Redis 实现
│ └── storage/ # MongoDB 和 Redis 连接管理
└── interfaces/ # API 层
├── api/ # FastAPI 路由(auth、session、file、config 等)
└── schemas/ # Pydantic 请求/响应模型
LLM 调用全部通过 LangChain 抽象,支持 OpenAI、Anthropic(Claude)、DeepSeek、Ollama 等多种 Provider,只需在 .env 配置 MODEL_NAME 和 API_BASE。这意味着你可以用本地 Ollama 跑一个完全离线的版本。
关键依赖:
langchain >= 1.0.7:LLM 调用抽象层browser-use >= 0.12.1:AI 浏览器自动化(基于 Playwright)playwright >= 1.42.0:真实浏览器控制beanie >= 1.25.0:MongoDB ODM(异步)redis >= 5.0.1:缓存 + 消息队列fastapi >= 0.121.2:API 框架pydantic >= 2.12.4:数据验证docker >= 7.1.0:沙盒容器管理mcp >= 1.9.0:Model Context Protocol 支持frontend 使用 Vue 3 + Vite + TypeScript 构建,UI 库采用 Reka UI + Tailwind CSS,动画库用 Framer Motion,支持 Monaco Editor(代码预览)、noVNC(沙盒界面远程访问)和 i18n(中文/英文双语)。
核心页面:
ChatPage.vue:主对话界面,展示 Agent 思考过程、工具调用和文件结果ClawPage.vue:OpenClaw 内置助手界面LoginPage.vue:用户认证(JWT)HomePage.vue:会话列表和新建任务入口对于大多数用户而言,最关心的就是"能不能一键跑起来"。AI Manus 交出了一份不错的答卷。
部署架构(docker-compose.yml):
frontend:Nginx 托管 Vue SPA(生产构建)backend:Python FastAPI 服务,需要挂载宿主机的 /var/run/docker.socksandbox:独立镜像,仅用于预热(实际沙盒动态创建)claw:OpenClaw 服务,用户隔离容器mongodb:会话和消息持久化(7.0)redis:缓存和任务队列(7.0)最小安装步骤:
git clone https://github.com/Simpleyyt/ai-manus.git
cd ai-manus
cp .env.example .env
# 编辑 .env,填入 LLM API Key
docker compose up -d
只需要一个 LLM API Key(OpenAI / Anthropic / DeepSeek 等),30 分钟内可完成部署。不需要 GPU(CPU 即可运行,但建议 4GB+ RAM)。这是目前门槛最低的带 WebUI 开源 AI Agent 之一。
需要注意的是,backend 需要访问宿主机 Docker Socket(/var/run/docker.sock:ro),这对某些托管环境(如某些云函数平台)可能存在兼容性问题。
客观来说,AI Manus 与官方 Manus 的差距仍然存在:
1. Agent 能力的上限依赖底层模型 项目本身不包含模型,所有推理能力来自外部 LLM API。如果底层模型能力不足(幻觉、规划弱、工具调用频繁失败),Agent 的表现就会大打折扣。
2. 沙盒性能开销 每个任务创建独立 Docker 容器,冷启动需要 5-15 秒,资源消耗也较高。在高频短任务场景下,不如进程级隔离方案高效。
3. 中文文档质量参差不齐 虽然 README 有中文版本,但部分页面(如 architecture.md、configuration.md)内容较简略,新手需要结合源码才能理解完整机制。
4. 缺少商业化验证 官方 Manus 在 GAIA 基准上声称超越人类,背后有完整的 RLHF 微调和评估体系。开源版本缺乏同等规模的评估数据,自主任务成功率难以保证。
AI Manus 的价值不仅在于它是一个可用的产品,更在于它代表了一种开源社区对 AI Agent 产品化的集体探索路径:
这些设计选择正在成为开源 AI Agent 项目的共识范式。AI Manus 的实践为后续项目提供了可参考的架构模板。
| 场景 | 推荐操作 |
|---|---|
| 想快速体验 | 访问 官方演示站 app.ai-manus.com,直接用浏览器体验 |
| 想本地部署 | git clone && cp .env.example .env && docker compose up -d |
| 想接入本地模型 | .env 中设置 MODEL_PROVIDER=ollama,MODEL_NAME=qwen2.5 |
| 想扩展工具 | 参考 mcp.json.example,接入自己的 MCP Server |
| 想深度开发 | 阅读 backend/app/domain/services/agents/base.py(Agent 基类)和 backend/app/domain/services/flows/plan_act.py(双 Agent 循环) |
本分析基于 GitHub 仓库 v0.1.0 版本(2026年3月),数据采集时间:2026年6月。