10 分钟上手吴恩达开源桌面 Agent OpenWorker:给你的 Mac 配个 AI 同事

吴恩达又出手了,这次是一个能替你干活的桌面 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 里操作:

  1. 打开 OpenWorker
  2. 进入 Settings → Models
  3. 选择你的模型提供商,填入 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 会:

  1. 拆解任务:查找项目资料 → 搜索 GitHub → 格式化输出
  2. 调用连接器(需要你先授权各个工具)
  3. 在执行发送/写入等敏感操作前,弹出确认框等你点头
  4. 交付成品文件

如果想设置定时任务,进入 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 层。

实践建议

  1. 先用预编译包跑通流程,再考虑从源码编译——DMG 装好就能用,10 分钟真的够
  2. 优先用已验证的模型,工具调用稳定性和未验证模型有差距
  3. 敏感操作批准机制别关,尤其是刚上手时,AI 猜错目录或发错消息的代价你不想承担
  4. 从简单任务开始:先让它读文件、写文档,再逐步上复杂调度
  5. 想深挖的开发者,读 docs/ 目录下的设计文档,有架构决策记录

资源链接

滚动至顶部