OpenFlux
开源 AI Agent 桌面客户端,让 AI 像人一样操控你的电脑
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
开源 AI Agent 桌面客户端,让 AI 像人一样操控你的电脑
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
你是否曾经想象过,有一天只需要对电脑说一句话,AI 就能帮你打开 Excel、分析数据、整理 Word 文档,甚至自动填写网页表单?这种「AI 操控电脑」的场景,在 OpenFlux 出现之前,大多停留在演示 Demo 或商业闭源产品里。而 OpenFlux 将其变成了一个开源可用的现实——一个可以在 Windows 或 macOS 桌面上运行的多模型 AI Agent 客户端。
过去两年,AI Agent 领域的主流形态是两类:要么是基于云的 Web 应用(用户通过浏览器与 AI 交互),要么是 IDE 插件(程序员在 VS Code 里调用 AI 辅助编程)。这两类方案有一个共同局限——AI 的能力被封印在特定界面之内,无法感知和操控用户整个桌面环境。
但真实工作的痛点远不止此。当一个产品经理需要 AI 帮忙分析竞品数据时,他可能要在 Excel 里整理数据、在浏览器里查资料、在 Word 里写报告——这些操作横跨多个软件,Web AI 根本无能为力。桌面 AI Agent 正是为了填补这个空白:让 AI 像人一样操作你的整个电脑,不只是聊天窗口里的文字交互。
OpenFlux 是 EDEAI 组织开源的 AI Agent 桌面客户端,基于 Tauri v2 框架构建,定位是「企业超级助理生态」的本地终端。它由三部分协同工作:
前端(TypeScript + Vite):负责聊天 UI、设置面板、文件预览等界面交互。使用 Tauri v2 的 WebView 渲染,窗口尺寸 1200×800,最小支持 800×600。界面采用无边框设计(decorations: false),由前端自行实现标题栏和控制按钮。
Rust 后端(Tauri v2):处理进程管理、文件系统访问、系统权限、窗口控制等底层操作。Rust 确保了客户端的安全性和高性能,同时二进制体积远小于 Electron。Tauri 本身不运行 AI,所有 AI 逻辑委托给 Gateway。
Gateway Sidecar(Node.js):这是整个系统的 AI 引擎核心,运行在 Node.js >= 20 环境中。它负责 LLM 调用、工具编排、记忆管理、工作流调度、MCP 协议通信。打包时 gateway-bundle.tar.gz 被作为资源文件打包进安装包,用户安装后无需单独配置 Node.js 环境。
OpenFlux 内置三种 Agent 角色:通用助手(日常问答、写作、分析)、编码助手(代码生成、调试、解释)和自动化助手(执行多步桌面操作)。系统会根据用户输入的意图自动判断交给哪个 Agent,复杂任务还能并行拆分给多个 Agent 同时处理。比如「帮我查竞品数据并生成 PPT」这类复合需求,通用助手负责查资料,自动化助手负责操作 PowerPoint 插件,最终合并结果返回给用户。
Gateway 集成了 @anthropic-ai/sdk(Claude)和 openai(GPT-4/GPT-4o),同时支持 DeepSeek、Moonshot、MiniMax、智谱 GLM、Google Gemini 等国内主流模型,以及本地 Ollama。用户可以在设置里一键切换模型,不同场景使用不同模型以平衡成本和效果。模型配置通过 openflux.example.yaml 管理,支持灵活的温度、频率限制等参数调优。
OpenFlux 使用 SQLite + sqlite-vec 实现本地向量记忆。sqlite-vec 是 SQLite 的向量检索扩展,专门用于在本地数据库中做语义相似度搜索(而非依赖云端向量数据库)。用户的对话历史经过 embedding 存入本地 SQLite,AI 可以基于「你上次提到过的那份报告」这样的模糊描述检索出相关内容。这对于需要跨会话持续工作的场景(如项目研究、日常助手)至关重要。记忆蒸馏机制还会定期将短期对话中的关键信息提取沉淀到长期记忆中。
通过 playwright-core 实现,OpenFlux 可以操控浏览器完成网页导航、表单填写、内容抓取等操作。结合 AI 的理解能力,用户只需要说「帮我填这个表单」,AI 就能识别表单字段并自动填充。相比传统 Selenium/Playwright 脚本需要精确指定元素,OpenFlux 的方案更加智能——AI 理解页面语义后决定操作步骤。
这是 OpenFlux 区别于大多数 AI Agent 产品的独特能力。插件系统包含三个独立插件:excel 插件(exceljs 驱动,读取/写入/格式化 Excel,支持公式计算)、word 插件(docx/mammoth 驱动,操作 Word 文档段落和样式)和 powerpoint 插件(创建/编辑幻灯片)。这些插件作为 Tauri 资源文件打包,运行时加载。
Gateway 内置 @modelcontextprotocol/sdk,支持 MCP 协议。这意味着 OpenFlux 可以接入任何实现了 MCP 的外部工具服务器,将更多能力纳入 AI Agent 的工具调用范围。文档处理方面还集成了 pdf-parse(PDF 解析)、jszip(压缩包处理)、mailparser/nodemailer(邮件收发)等工具,覆盖了知识工作者的常见场景。
语音合成使用 msedge-tts(Edge 浏览器的在线 TTS 服务),语音识别则基于 Sherpa-ONNX(完全离线的端侧 ASR 方案)。这意味着在没有网络的场景下,OpenFlux 依然可以「听到」你的语音指令并给出回应。对于注重隐私或需要在离线环境工作的用户,这个设计非常友好。
OpenFlux 支持代码加固和 Docker 容器隔离两种安全执行方案。代码加固针对本地运行的可疑代码片段进行安全检查,Docker 隔离则将代码执行放入独立容器中,最大限度避免对主机系统的破坏。
OpenFlux 不是一个孤立产品,它与 NexusAI(企业 AI 协作平台)和 OpenFlux Router(集成中枢)共同构成 EDEAI 的企业 AI 产品矩阵。
NexusAI 是企业级平台,提供 Agent 定义、可视化 Workflow 编辑器、知识库管理和团队协作功能。企业管理员在 NexusAI 上定义标准工作流后,OpenFlux 可以通过 Router 直接使用这些标准化流程。OpenFlux Router 则扮演多端互联的角色,支持飞书、钉钉、企业微信等 IM 平台接入,同时负责 LLM API Key 的统一分发——终端用户无需自己注册和付费购买 API Key,由企业管理员统一下发。
这种分层设计的优势在于:企业的 AI 能力标准化和本地化执行分离。标准化(SOP、工作流、知识库)集中在云端 NexusAI 维护,而具体执行(操控桌面、操作 Office、浏览器自动化)则在员工本地 OpenFlux 完成,兼顾了管理便利性和数据隐私。
从源码结构来看,Gateway 的模块划分非常清晰:
| 模块 | 路径 | 说明 |
|---|---|---|
| agent | gateway/src/agent/ | Agent 核心逻辑(多 Agent 协作、角色分派) |
| browser | gateway/src/browser/ | Playwright 浏览器自动化封装 |
| llm | gateway/src/llm/ | LLM 调用抽象层(统一接口屏蔽模型差异) |
| tools | gateway/src/tools/ | 工具集(Office、文件、邮件、MCP 等) |
| workflow | gateway/src/workflow/ | 工作流编排引擎(定时任务、多步编排) |
| scheduler | gateway/src/scheduler/ | 任务调度器(定时触发) |
| sessions | gateway/src/sessions/ | 会话管理(对话历史、上下文窗口) |
| core | gateway/src/core/ | 核心基础设施(日志、安全、权限) |
| evolution | gateway/src/evolution/ | Agent 自我优化机制 |
| config | gateway/src/config/ | 配置管理(YAML 配置解析) |
| utils | gateway/src/utils/ | 工具函数 |
| permissions | gateway/src/permissions/ | 权限控制 |
| gateway | gateway/src/gateway/ | Gateway 服务主入口 |
前端(Tauri 端)与 Gateway 之间通过 WebSocket 通信,ws 库实现双向实时消息推送。日志使用 winston,配置解析使用 yaml 库,类型校验使用 zod。
OpenFlux 提供 Windows(NSIS 安装包)和 macOS(DMG)两种安装包,用户直接从 openflux.io 下载即可。安装后需要配置 LLM API Key(可自行配置,也可通过 Router 由企业统一下发)。Gateway 随客户端自动启动,首次运行会初始化 SQLite 数据库和向量索引。
尽管功能丰富,OpenFlux 仍面临一些现实挑战:
平台局限性:Tauri v2 的 Windows 支持相对完善,但 macOS 功能集可能存在差异(tauri.macos.conf.json 单独配置),非 Windows/macOS 用户无法使用。
API Key 成本:OpenFlux 本身免费,但运行时调用的 LLM API 费用由用户或企业承担。在高频使用场景下,Claude/GPT-4 的 API 消耗不可忽视。
安全边界:尽管有沙盒隔离,但 AI 直接操控桌面(键鼠模拟、文件读写、系统设置)的能力本身就是双刃剑。一旦 AI 被诱导执行恶意操作,后果可能比 Web AI 严重得多。企业部署时需结合权限控制系统谨慎配置。
社区活跃度:截至分析时,仓库有 222 Stars 和 1 个 Open Issue,社区规模尚小,长期维护和功能迭代的可持续性有待观察。
OpenFlux 的出现代表了 AI Agent 从「对话工具」向「操作工具」的演进方向。当 AI 能像人一样操控 Excel 表格、填写网页表单、操作桌面应用时,AI 的生产力边界才真正从「回答问题」扩展到「解决问题」。相比单纯的 API 调用或 Web UI,桌面 Agent 的落地场景更贴近真实知识工作者的日常。
从技术选型来看,Tauri v2 + Node.js Gateway 的组合是一个务实的权衡:用 Rust 保证桌面性能和安全边界,用 Node.js 保证 AI 工具链的丰富生态(npm 生态中 AI 相关的包非常成熟)。相比 Electron,Tauri 的二进制体积和内存占用都有明显优势,更适合作为需要长期驻留桌面的 Agent 客户端。
OpenFlux 是一个功能定位非常明确的产品:让 AI 真正「上手」操控你的电脑。从多 Agent 协作到 Office 文档操作,从浏览器自动化到离线语音交互,它几乎涵盖了知识工作者日常所需的全部桌面操作场景。如果你正在寻找一个可以在本地运行、支持多种大模型、且具备真实桌面操控能力的开源 AI Agent 客户端,OpenFlux 值得一试。

图1:OpenFlux 应用图标