吴恩达又出手了,这次是一个能替你干活的桌面 Agent
如果你还停留在「AI 只能聊天」的阶段,那 OpenWorker 可能会刷新你的认知。
Andrew Ng(吴恩达)刚在 GitHub 上开源了一个名叫 OpenWorker 的桌面端 AI Agent,MIT 协议,完全免费。它的定位简单粗暴:不只是陪你聊天,而是帮你把活干了——跨文件、跨 Slack、跨日历、跨 GitHub,拆解任务,调用工具,最后交付一份可以直接用、可以改、可以分享的成品。
昨天 OpenWorker 项目正式公开,我第一时间下载部署跑了一遍,这篇就带你从零上手。
OpenWorker 是什么
一句话:一个开源、本地优先、模型无关的桌面 AI Agent。
它不是一个网页插件,也不是一个 CLI 工具,而是一个真正的桌面应用(Tauri + React + Python),跑在你的电脑上,能直接访问你的本地文件、终端,以及 25+ 个第三方工具(Slack、GitHub、Jira、Notion、Outlook、Gmail、Google Calendar…)。
架构简图👇
┌────────────────────────────────────────────────┐
│ OpenWorker Desktop App Tauri + React │
├────────────────────────────────────────────────┤
│ Python Agent Server aisuite 引擎 │
├───────────────┬────────────────┬───────────────┤
│ 本地文件/终端 │ 25+ 连接器 │ 任意模型 │
└───────────────┴────────────────┴───────────────┘关键设计:
- 本地优先:Agent 循环、对话记录、令牌都默认存在本地,不强制上传
- 模型无关:OpenAI、Anthropic、DeepSeek、Kimi、GLM、Ollama 本地模型……带上自己的 API Key 就能换
- 审批机制:发送消息、改日历、执行终端命令这类敏感操作,会先请示你——批了才执行
- 定时任务:支持自动化的周期任务,比如每天早上整理简报
- MCP 扩展:任何支持 Model Context Protocol 的工具都能接入
环境准备
OpenWorker 的依赖有三样:
# 1. Python 3.10+
python3 --version
# 2. Node.js 20+
node --version
# 3. Rust 工具链(编译 Tauri 桌面壳)
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
Mac 用户建议直接从官网 openworker.com 下载已签名的 Apple Silicon DMG,体验最丝滑。Windows 用户也可以下载 exe 安装包(暂时还没做代码签名,SmartScreen 会弹警告,属于正常现象)。
如果你是开发者,想自己编译和改代码,继续往下看。
从源码部署(开发者路线)
# 克隆仓库
git clone https://github.com/andrewyng/openworker.git
cd openworker
# 一键初始化 Python 虚拟环境
bash packaging/setup_dev_env.sh
# 启动 Agent 服务器
.venv/bin/openworker-server --cwd ~/some/project --port 8765
# 在另一个终端启动 UI(浏览器版)
cd surfaces/gui
npm install
npm run dev
# 要跑完整桌面版(Tauri 窗口),替换为:
npm run tauri dev
启动后浏览器访问 Vite 给出的端口(默认通常 localhost:5173),就能看到 OpenWorker 的界面了。
配置模型:5 分钟接入
OpenWorker 的模型接入做得非常简洁——不需要改配置文件,直接在 UI 里操作:
- 打开 OpenWorker
- 进入 Settings → Models
- 选择你的模型提供商,填入 API Key
目前已预置的模型支持列表:
- OpenAI:GPT-5.6 Sol 等
- Anthropic:Claude Fable / Opus 5
- Google:Gemini 3.6
- Thinking Machines:Inkling
- DeepSeek / Kimi (Moonshot) / GLM (Z.ai) / Qwen / MiniMax / Mistral / Grok (xAI)
- 本地模型:通过 Ollama 运行任何开源权重模型
注意:工具调用能力因模型而异,UI 中会标注出已验证过的模型。
第一次实战:让 OpenWorker 干活
启动后,直接在对话框输入自然语言任务,比如:
"帮我准备一份下周一客户 A 的 Brief,去 Notion 找项目文档,去 GitHub 看最近一周的 commit,然后整理成 Markdown 文件放在桌面上"
OpenWorker 会:
- 拆解任务:查找项目资料 → 搜索 GitHub → 格式化输出
- 调用连接器(需要你先授权各个工具)
- 在执行发送/写入等敏感操作前,弹出确认框等你点头
- 交付成品文件
如果想设置定时任务,进入 Automations 页面,配置触发条件和任务描述即可。
扩展工具:通过 MCP 接入更多服务
// 在配置中注册一个 MCP Tool Server
{
"mcpServers": {
"my-db": {
"command": "node",
"args": ["path/to/mcp-server/index.js"],
"env": {
"DB_URL": "postgresql://..."
}
}
}
}
任何实现了 MCP 协议的工具都可以注册进来,OpenWorker 会自动发现并用于后续任务。
从开发视角看 OpenWorker
项目结构清晰,值得开发者深挖:
- coworker/:Python 后端,Agent 引擎、模型适配、连接器、MCP 客户端、记忆和自动化逻辑
- surfaces/gui/:React + Tauri,桌面 UI 和窗口管理器
- stt/:语音输入的 Rust 侧边进程
- packaging/:DMG/EXE 安装包构建脚本
- docs/:设计文档和决策记录
引擎层基于 aisuite 构建,如果你只想在自己的项目里复用 Agent 编排能力,可以直接取 aisuite 的 agents 层。
实践建议
- 先用预编译包跑通流程,再考虑从源码编译——DMG 装好就能用,10 分钟真的够
- 优先用已验证的模型,工具调用稳定性和未验证模型有差距
- 敏感操作批准机制别关,尤其是刚上手时,AI 猜错目录或发错消息的代价你不想承担
- 从简单任务开始:先让它读文件、写文档,再逐步上复杂调度
- 想深挖的开发者,读
docs/目录下的设计文档,有架构决策记录
资源链接
- GitHub 仓库:https://github.com/andrewyng/openworker
- 官方网站:https://openworker.com
- aisuite(底层 Agent 框架):https://github.com/andrewyng/aisuite
- MCP 协议文档:https://modelcontextprotocol.io/
