项目详情

OpenWorkBuddy

跑在你自己电脑上的 AI 办公助理——交代一句话,它自己规划、动手、验收,把 PPT / Word / Excel / 网页落到你硬盘上

CatCatUncle/openworkbuddy PolyForm NC 1.0.0 Electron + Node.js 18BYOKMCP

更新于 2026-09-26 · v0.9.5

← 返回汇总
项目速览

一句话定位

给你的是能打开的文件,不是一段聊天记录

开源的本地优先 AI 办公 agent,官方定位为 Claude Cowork / Codex / WorkBuddy / 豆包办公 / 千问办公的开源替代。模型随便换(DeepSeek / 通义 / 智谱 / Kimi / OpenRouter / Ollama,BYOK),本机装了 Claude Code / Codex 的还能一键拿它们当执行引擎。适合:天天手搓 PPT / 周报 / 会议纪要的办公族、想给 DeepSeek 找 agent 外壳的开发者、想读懂 agent 内部构造的学习者。

项目速览

核心数据

204
Stars
444
Commits / 47 天
v0.9.5
最新版 · 09-24
1
贡献者(猫叔)
36
Skills
43
Tools
52
MCP Connectors
30
Experts

2026-08-10 创建 · 2026-09-25 最近 push · 09-21 至 09-24 四天发了 10 个 release · 数据采集于 2026-09-26

为什么存在

AI 办公工具的四个痛点

产出是聊天记录,不是文件

多数「AI 办公」产品给你一段 Markdown 回复,还得自己粘到 Office 里排版。OpenWorkBuddy 直接交付能打开的 .pptx / .docx / .xlsx / .html,而且验收环节真的去查文件在不在磁盘上。

模型被订阅锁死

商业办公 agent 通常绑定自家模型,贵且不可换。这里是 BYOK:九家预设界面点一下就切,本机有 Claude Code / Codex 订阅的直接当发动机,不烧 API 额度。

数据在别人云上

会议纪要、财报数据都过一遍厂商服务器。这里会话、文件、Key 全在本机(~/OpenWorkBuddy),默认只听 127.0.0.1。

能力扩展要改代码

加一个能力 = 丢一个 Markdown 文件:skills/<名字>/skill.md 存盘即生效,不改代码、不重启、不打包。

🔥 核心机制

「你说一句 → 它交文件」闭环

你说一句 「Q3 复盘 PPT + 这份 Excel」 规划 拆步骤 · 建进度档 动手 读表 · 计算 · 43 个工具调用 验收 文件真在磁盘上?非 0 字节? 交付 成果面板点开就能看 不在磁盘 / 0 字节 → 打回重做(最多 2 次)
主流程验收打回路径
🔥 架构

它是怎么搭的

入口层 · 你的设备 桌面端 / Web openworkbuddy CLI IM 远程入口 飞书 / 微信 / 企微 / 钉钉 / Telegram / QQ 本地运行时 server.js · 会话 · 权限 · 项目 · API · 多租户 Agent 编排 agent.js · 规划 · 工具调用 · 文件验收 · 记忆 模型路由 九家云端预设 / Ollama Claude Code / Codex 当引擎 能力层 Markdown Skills 36 · MCP 52 Experts 30 · Plugins 本机工作区 文件 · 素材 · 项目上下文 双层记忆 本地 Trace 模型 · 工具 · 耗时 · Token 输入输出全记录 可选接 Langfuse 可执行无限画布 剧本 · 角色 · 镜头 · 素材 连线 = 下一步真会读的输入 改哪个镜头只重跑那个 安全层 四档权限 · 命令审批 · 黑白名单 审计日志(环形 1000 条) 读代码路线:从 server.js 进去 → agent.js 看编排 → 实现细节见 docs/实现细节.md 部署形态:桌面 App / npm start (localhost:3800) / Docker 多租户 + 自动 HTTPS
主链路(入口 → 运行时 → 编排)支撑与旁路模块
核心理念

模型随便换,东西全在你手里

  • 九家云端预设:OpenAI / Anthropic / OpenRouter / DeepSeek / 通义 / 智谱 / Kimi / 火山方舟 / Ollama——设置里点一下就切,粘 Key 即生效
  • 拿 Claude Code / Codex 当发动机:openworkbuddy engines use claude-code,跑在你已付过钱的订阅上,不烧 API 额度
  • 生图 / 配音 / 生视频另有一张表:不同能力可配不同厂商
  • Key 只存本机 config.json(已在 .gitignore),会话、文件、记忆全在 ~/OpenWorkBuddy,默认只听 127.0.0.1
# 设置 → 模型:挑预设、粘 Key、保存即生效
预设: OpenAI / Anthropic / OpenRouter
      DeepSeek / 通义 / 智谱 / Kimi
      火山方舟 / Ollama

# 本机有 Claude Code?直接当引擎
openworkbuddy engines use claude-code
openworkbuddy engines use codex

# 生图、配音、生视频单独一张表
TTS   → 豆包 / 通义 / …
Image → 即梦 / DALL·E / …
Video → 可灵 / Seedance / …
工程细节 · 上

把「假成功」堵死的四道闸

工具调用救援

DeepSeek 一类模型的工具调用是权重里的特殊 token,经某些中转层不会被解析进 tool_calls,而是原样解码进正文——模型「以为」抓了网页,实际什么都没发生,接着编造结果。llm.js 认出这些标记、还原成真正的工具调用去执行;流式输出上设闸门,特殊 token 不漏到界面。

原子写 + 坏文件隔离

会话、账本、定时任务表先写临时文件再改名(原子),改名前留 .bak。文件坏了先拿 .bak 顶上,连 .bak 都没有就隔离成 .corrupt-时间戳 留人工捞,绝不静默当空文件——否则下次保存就把用户对话永久覆盖了。账本 users.json 走 strict:坏了直接报错,回退可能吞掉一笔充值。

联网三兜底

浏览器级请求头(B 站 / 微博不再 412 风控);fetch_url 抓到空壳时自动用 Electron 内置 Chrome 真渲染动态页;渲染也失败时返回「为什么失败 + 还能换哪三条路」。系统提示词配套纪律:同一目标至少真试满三种路子才许说做不到,且不许把选择题丢回给用户。

只读并发 · 写回串行

一轮里 5 个 web_search / fetch_url / read_file 并发执行(上限 3 路),只花最慢一次的时间;批次里只要混进写文件、跑命令、委派专家的调用,整批退回串行——那些工具的先后顺序本身就是语义。过程卡按调用 id 配对,结果不会贴错卡。

工程细节 · 下

让模型别手搓 SVG:gen_diagram 四管线

ECharts

官方 SSR 模式纯 Node 出 SVG。坑:SSR 会留着动画定时器让进程永不退出,必须 chart.dispose() + 强制 animation:false。

Graphviz

@viz-js/viz(WASM)纯 Node 渲染,画架构图 / 依赖图最稳。中文节点要设 fontname="PingFang SC",否则全是豆腐块。

mermaid

必须要真浏览器量文字宽度——应用本体跑在 Electron 里等于随身带 Chrome:开隐藏窗口渲染完就销毁。CLI 环境降级走 kroki.io。

PlantUML + 流式 SVG 上屏

本机装了 plantuml 就用本机的,没有就 deflate + base64 变种发给 kroki。回复正文里的 ```svg 围栏当图渲染,SVG 流式吐出时每来一段补全重画一次——图是一笔一笔长出来的。每张图另导 2x 高清 PNG(飞书云文档不收 SVG)。安全上走清洗:script / foreignObject / on* 事件 / 外链全剔掉,样式规则改写成 #svgfigN 锁死图内,通名 .t 不会污染页面。

扩展体系

加个能力 = 丢一个 Markdown 文件

  • Markdown 即技能:skills/<名字>/skill.md 存盘后下一条任务就生效——不改代码、不重启、不打包。10 分钟写一个。
  • 52 个 MCP 连接器:标准 MCP 协议接入外部世界;30 个 Experts(专家分身)按领域分工。
  • 技能安装静态体检:装技能 = 把陌生人写的指令接进来,且装完没有第二道门。skill-guard.js 卡在安装路径上(copySkillFolder 之前),34 条规则三档结论:block 10(默认不装,管理员可显式强装留痕)/ warn 24(点一次「我看过了」才装)/ ok。
  • 外挂第二把尺子:同作者的 toolward(37 条规则六族)装上即自动双扫,合流规矩「只会更严不会更松」——测试里有反向断言专门盯这个。
体检指标数值说明
skill-guard 规则34 条block 10 / warn 24 / ok
公开标注集检出率74.9%约四个漏一个——静态规则的上限
自家 36 技能误拦2 个都是真命中:讲解攻击的资讯正文
frontmatter description升一级常驻系统提示词,注入风险更高
node_modules / .venv不逐文件扫实测一个 .venv 贡献 60+ 假命中

定位是「装之前把话说清楚」,不是查毒——block 必须能被显式放行,人绕不过去的闸,人就会绕过整个工具。

安全模型

这个 agent 手里有 shell

① 只看不动 只读 · 不写文件不跑命令 ② 每步都问 一切命令审批后再跑 ③ 自动改文件 默认档 · 工作目录随便改 ← 默认在这里 ④ 全自动 只剩黑名单和审计兜底
产品形态

同一个大脑,四个入口

入口形态关键点
桌面端 / WebElectron App · localhost:3800成果面板 · 过程卡 · 无限画布 · 外观设置
CLIopenworkbuddy与桌面版共用同一份配置 / 技能 / 记忆 / 会话;resume 接续、-q 纯输出、管道喂料、退出码 0/1/2/130 说实话;单发和管道模式不反问,cron 里不会卡住
IM 远程飞书 / 企微 / 钉钉 / Telegram / QQ / 微信人不在电脑前也照跑;pair 扫码把手机连上来
定时任务cron 式调度错过会补跑;每趟调了哪些工具、为什么这么说,运行记录里点得开
放服务器给团队用

bash deploy.sh --domain buddy.example.com 一条命令 Docker + 自动 HTTPS;多租户、席位、额度、离职一键收权限。第一个注册的就是超管。

测试不用 API Key

npm install && npm start 就跑起来,npm test 不用 Key 也能全绿——贡献门槛压到一晚上。

交付实证

你说一句,它交给你

你说一句它交给你
帮我出一份 Q3 复盘 PPT,数据用这个 Excel读表 → 算 → 一个能直接放的 .pptx
调研国内 AI 陪伴产品,出一份报告联网搜 → 逐个打开读 → Markdown / Word
把这份材料做成手机上能看的网页写 HTML → 起本机服务 → 扫码就能看(成品 hunan-travel.pages.dev,14 市州湖南旅游站,零外部 CDN)
每天 9 点抓行业新闻,做成晨报发我飞书定时任务 + IM 推送,错过了会补跑
AI 短剧无限画布

剧本、角色、场景、分镜、参考图、视频、配音、时间线摆在同一张图上。连线不是装饰——表示下一步生成真会去读的角色、首帧和声音。改哪个镜头,只有那个镜头重跑。

自验式生图

「同一个人换四个场景」难在一致性:它先出一张,再用看图工具真去读自己刚生的那张(不是凭记忆吹),确认了才照这个方向铺开其余三张——牌子上的中文不能糊。

快速上手

三分钟跑起来

# macOS:一个弹窗都没有
curl -fsSL https://raw.githubusercontent.com/\
CatCatUncle/openworkbuddy/main/install-mac.sh | bash

# Windows:Releases 下 -win-setup.exe
# (x64 / ARM 通用);不让装软件就用
# 免安装版 -win-x64-portable.exe

# 源码:Node.js 18+,零构建
git clone https://github.com/CatCatUncle/openworkbuddy.git
cd openworkbuddy && npm install
npm run app   # 桌面版;或 npm start → :3800

# 服务器版:Docker + 自动 HTTPS
bash deploy.sh --domain buddy.example.com
  • 跑起来第一件事:设置 → 模型,挑预设、粘 Key、保存即生效
  • 数据都在 ~/OpenWorkBuddy,卸载不删;换电脑看「数据同步与搬家」文档
  • macOS 拦截:证书还在申请,包是 ad-hoc 签名——拦的是「没见过的开发者」,不是文件有毒;隐私与安全性 → 仍要打开
  • CLI 一键全局:npm link 后 openworkbuddy doctor 先体检,配好没有一目了然
在线体验

玩一下它的「命令闸」

agent 手里有 shell,OpenWorkBuddy 用四档权限 + 逐段拆解的命令闸管住它。选一个档位、敲一条命令,看它当场怎么判——放行、问一句、还是拦下。试试 echo $(rm -rf ~/x) 这种套壳变体。

▶ 打开命令闸模拟器

规则表复刻自 docs/安全.md 的四档权限与拆段逻辑(演示级)· 零网络依赖 · 单文件

风险提示

需要警惕

潜力评估

未来空间

评分 8.0:国产开源 AI 办公 agent 里完成度罕见的一个——桌面 / CLI / IM / 定时任务四入口共享一套大脑,BYOK + 拿 Claude Code 当发动机的模型路由切中痛点,「文件验收闸门 + 断点续跑 + 工具调用救援」这批工程细节是踩过真实坑才会写的。文档密度(20+ 篇 docs)和对标页打法(Claude Cowork / Codex / 豆包办公逐家对比)显出成熟的产品自觉。扣分:PolyForm NC 挡住公司采用(个人免费但团队上不了)、单人维护的可持续性、204 stars 生态尚小。看点:Skills 市场化、toolward 式安全生态、v1.0 后的 API 稳定。个人办公自动化的当下最优选之一,团队采用先谈授权。


1 / 17