乐于分享
好东西不私藏

OpenWorker:桌面AI智能助手

OpenWorker:桌面AI智能助手

一、项目介绍

1.1 项目简介

OpenWorker 是吴恩达(Andrew Ng)团队于 2026 年 7 月 23 日开源、采用 MIT 开源协议的本地优先型桌面 AI 智能协作助手(AI Coworker)。          区别于传统对话式 Chat 机器人,OpenWorker 核心目标是交付完整可落地工作成果,而非仅返回文本回答;可自主拆解复杂任务、跨本地文件、终端、第三方业务工具自动执行流程,关键高危操作强制用户审批,全程保障数据本地存储隐私安全。

1.2 核心定位

本地优先(Local-First):对话记录、API 密钥、第三方 OAuth 凭证全部存储在本机,仅 OAuth 握手流程少量数据走云端,核心业务数据不出本地设备;

自带模型(BYOM):无绑定大模型,支持云端 API 模型 + Ollama 本地离线模型双模式,自由切换推理后端;

成果导向 Agent:接收最终工作目标(如 “整理 Q3 客户简报”),自动拆分多步骤执行,输出文档、报表、消息、日程变更等成品交付物;

桌面原生一体化:基于 Tauri 构建跨平台桌面客户端,打通本地文件系统、终端、语音转文字能力,深度融合办公、开发工具生态。

二、系统整体架构

OpenWorker 采用三进程分离式分层架构,桌面壳层、智能体服务、前端界面解耦,兼顾桌面原生能力与灵活 Agent 调度能力,三层分工独立通信。

2.1 三层架构拆分

(1)桌面外壳层 Desktop Shell(Tauri/Rust)

开发语言:Rust + Tauri

核心职责:

  • 管理桌面应用生命周期、窗口管理、程序启停;

  • 托管 Python 后端子进程,监控服务运行状态;

  • 提供系统底层能力:麦克风语音转文字、本地文件权限管控、系统通知;

  • 封装安全密钥存储,统一管理本机密钥加密存储。

(2)智能体服务层 Agent Server(Python/FastAPI)

项目核心引擎,整个 Agent 任务循环、工具调度、模型抽象全部在此实现。

  • 核心模块 TurnEngine:OpenWorker 核心任务循环引擎;

  • 工作逻辑:接收用户指令 → 调用 LLM 拆解任务 → 解析工具调用请求 → 执行文件 / 终端 / 第三方工具 → 循环迭代直至任务完成,高危操作强制拦截等待用户审批;

  • 配套能力:统一模型提供商抽象层、工具注册表、会话持久化存储、定时任务调度;

  • 对外接口:REST API + WebSocket,向前端实时推送任务执行日志。

(3)前端界面层 GUI Frontend(React/Vite)

内嵌于 Tauri 桌面壳内的 Web 前端,负责用户交互:

  • 管理会话状态、任务记录、模型配置、第三方连接器授权;

  • 展示任务执行流程、工具调用日志、审批弹窗;

  • 提供新手引导、模型密钥配置、定时任务编辑、MCP 工具管理页面。

2.2 内部数据流转逻辑

  • 用户在 GUI 提交工作目标;

  • 请求经 Tauri 转发至 FastAPI Agent 服务;

  • TurnEngine 循环驱动 LLM 生成执行步骤,调用内置工具 / 第三方连接器;

  • 文件读写、终端执行、发送邮件、Slack 消息等高危操作触发审批弹窗;

  • 执行结果回传前端展示,本地 SQLite+JSONL 混合持久化全部会话记录;

  • 定时任务由服务层 Scheduler 模块自动触发,后台静默执行。

2.3 子系统模块划分

子系统

核心代码组件

功能说明

模型提供商层

aisuite、OpenAIProvider、AnthropicProvider

统一封装各类大模型接口,屏蔽厂商 API 差异

后端服务层

FastAPI、openworker-server

提供前后端通信接口、WebSocket 实时推送

持久化存储层

SessionRecord、ConversationStore

会话、任务、密钥本地加密存储

自动化调度层

Scheduler、ScheduledTask

支持 Cron 定时循环执行自动化任务

工具连接器层

内置工具、OAuth Connector、MCP 服务

本地文件、终端、第三方 SaaS、扩展工具统一调度

三、完整技术栈

3.1 后端核心(Agent 服务)

  • 编程语言:Python 3.10+

  • Web 框架:FastAPI(异步接口、自动 API 文档)

  • LLM 抽象库:aisuite(项目自研统一大模型封装库)

  • 存储:SQLite + JSONL 混合本地持久化

  • 任务调度:内置 Cron 调度器

  • 通信:WebSocket + HTTP RESTful

3.2 桌面客户端壳层

  • 底层框架:Tauri

  • 系统语言:Rust

  • 系统能力:原生文件访问、语音转文字、系统密钥管理器、进程托管

3.3 前端界面

  • 框架:React + Vite

  • 语言:TypeScript

  • 页面组件:Onboarding 新手引导、配置页、任务工作台、连接器管理页

  • 样式:原生 CSS

3.4 模型与扩展生态

  • 云端模型:OpenAI、Anthropic Claude、Google Gemini 等;

  • 本地离线模型:Ollama(Llama3、DeepSeek、Kimi 等开源权重);

  • 工具扩展协议:MCP(Model Context Protocol),支持第三方工具服务器接入;

  • 第三方集成:OAuth 连接器(Slack、GitHub、Jira、Notion、Gmail、HubSpot 等 25 + 应用)

四、核心功能与使用场景

4.1 核心功能特性

4.1.1 审批式 Agent 任务循环(TurnEngine)

所有高风险操作(发送邮件、运行终端命令、修改线上日程、发布内容)必须用户手动确认,避免 AI 误操作,全程可控可回溯日志。

4.1.2 本地优先隐私体系

对话、任务记录本地 SQLite/JSONL 存储;

模型 API Key、第三方 OAuth Token 加密存放本地密钥仓库;

无强制云端账号,可纯离线使用 Ollama 完全断网运行。

4.1.3 全类型工具支持

内置本地工具:本地文件读写、文件夹整理、终端命令执行、全网搜索;

托管 SaaS 连接器:Slack、GitHub、Jira、Notion、Gmail、日历、HubSpot 等办公 / 开发工具;

MCP 扩展工具:兼容所有遵循 Model Context Protocol 的第三方工具服务,无限扩展能力。

4.1.4 定时自动化任务

支持 Cron 表达式配置周期性任务:每日晨会简报、邮件批量整理、项目进度定时汇总、渠道消息巡检,后台自动运行。

4.1.5 BYOM 多模型自由切换

无需锁定单一厂商,可同时配置多个模型,按需切换云端 API 或本地 Ollama 离线大模型,无厂商绑定。

4.1.6 跨应用串联工作流

一条指令打通多工具:例如「汇总 Jira 迭代工单 + GitHub PR 记录,生成周报发送 Slack 频道」,自动跨多平台拉取数据、整理、输出成品。

4.2 典型业务使用场景

(1)销售 / 客户成功

自动调研客户档案、生成会前简报、批量处理客户邮件、同步日历客户会议,发送跟进消息前等待审批。

(2)行政 / 高管助理

邮件批量分拣、日程冲突自动调整、会议纪要生成、每日工作汇总报告,统一管理多渠道消息。

(3)产品 / 运营

周 / 月报自动统计、Notion 文档批量更新、渠道数据汇总、Slack 需求统一归档。

(4)研发运维

GitHub+Jira 迭代进度汇总、告警信息自动整理、终端脚本自动化、线上变更操作前置审批。

(5)通用办公自动化

本地表格数据提取生成文档、文件夹自动分类归档、定时信息巡检、跨工具信息同步。

五、安装与部署方式

OpenWorker 提供客户端安装包(普通用户)、源码编译运行(开发者二次开发)两种部署方案。

5.1 方案一:官方客户端安装(推荐普通用户)

下载渠道:OpenWorker 官网 / GitHub Releases 页面

macOS:Apple Silicon 签名公证安装包,支持自动更新;

Windows:Win10/11 安装包(早期版本未签名,系统安全提示可忽略);

安装流程:

双击安装包完成桌面程序安装;

启动客户端,进入设置页配置模型:

云端模式:填入 OpenAI / Anthropic / Gemini API Key;

离线本地模式:本机安装 Ollama,拉取模型后关联客户端;

在连接器页面授权 Slack、GitHub、邮箱等所需工具;

新建任务,输入工作目标,审核执行步骤并确认操作。

5.2 方案二:源码编译部署(开发者 / 二次开发)

5.2.1 前置环境准备

Python 3.10+;

Node.js 20+;

Rustup(Rust 编译工具链,编译 Tauri 桌面端);

Git;

可选:Ollama(本地离线模型)。

5.2.2 完整部署命令

bash                  # 1. 克隆开源仓库                  git clone https://github.com/andrewyng/openworker                  cd openworker                  # 2. 一键初始化Python虚拟环境(Windows使用Git Bash/WSL执行)                  bash packaging/setup_dev_env.sh                  # 3. 启动后端Agent服务(指定工作目录与端口)                  # Mac/Linux                  .venv/bin/openworker-server --cwd ~/工作目录 --port 8765                  # Windows                  .venv\Scripts\openworker-server.exe --cwd C:\工作目录 --port 8765

5.2.3 启动前端界面

新开终端执行:

bash                  cd surfaces/gui                  npm install                  npm run dev

启动后自动读取服务端本地 Token,浏览器打开开发版 UI;如需完整桌面客户端,执行 Tauri 编译命令打包桌面程序。

5.2.4 离线 Ollama 配套部署(可选)

bash                  # Mac/Linux安装Ollama                  curl -fsSL https://ollama.com/install.sh | sh                  # Windows官网下载exe安装                  # 拉取开源大模型                  ollama pull llama3:8b                  # 客户端内模型提供商选择Ollama本地推理

六、项目优势与差异化对比

6.1 对比传统聊天机器人

  • 普通 Chat:仅生成文本回答,需用户手动复制、切换工具执行;

  • OpenWorker:自主拆解任务、操作本地文件与第三方软件,直接输出完整交付物。

6.2 对比云端 AI Agent

  • 云端 Agent:对话、文件、密钥全部上传第三方服务器,隐私风险高;

  • OpenWorker:本地优先存储,敏感数据不上云,支持完全断网离线运行。

6.3 对比单功能自动化脚本

  • 固定脚本:流程固化,无法理解自然语言动态调整任务;

  • OpenWorker:LLM 驱动动态任务规划,支持自然语言自定义复杂工作流,无需编写代码。

七、适用人群与局限

7.1 适合使用人群

  • 办公白领、销售、产品、运营,高频处理多工具协同工作;

  • 研发人员,需要自动化 GitHub、Jira、终端重复操作;

  • 隐私敏感用户,不希望工作文件、对话上传公有云;

  • 多模型使用者,同时切换云端 API + 本地开源大模型;

  • 开发者,基于 MCP 协议扩展自定义 AI 工具能力。

7.2 当前项目局限

  • 尚处于公开 Beta 阶段,部分连接器(PagerDuty、GA4)待完善;

  • 原生仅英文界面,无官方中文本地化;

  • Windows 客户端早期版本无数字签名,系统安全拦截;

  • 本地运行大模型需至少 16GB 内存,低配设备推理速度受限。

八、总结

OpenWorker 是面向知识工作者的下一代本地桌面 AI 智能体,核心创新在于本地隐私架构 + 成果导向 Agent 循环 + 全工具生态打通,打破传统 AI 仅做问答的局限,让人工智能直接落地完成完整工作流程。开源 MIT 协议允许自由二次开发、私有化部署,搭配 BYOM 模型策略兼顾云端推理性能与本地离线隐私需求,是个人与小型团队自动化办公、研发提效的轻量化开源解决方案。

*官方开源代码仓库:https://github.com/andrewyng/openworker