作者 Jedrzej Blaszyk 最初的需求很明确:用户需要在网页上编辑 Word 文档里的模板变量。他调研了现有开源方案,发现要么许可证不友好,要么格式转换后内容丢失。于是决定自己开发一个。
开发方式不同寻常——他没有传统地一行行写代码,而是让 Claude Code 自动开发,自己负责给出方向,Agent 自行迭代,用 Playwright 做视觉验证。几天后,编辑器就跑起来了。
项目上线首月获得 500 Star,两个月后达到 1700+ Star。

核心优势:格式不丢,数据本地
这个编辑器直接操作 .docx 文件内部的 XML 结构,而不是将文档转换为 JSON 或 HTML 再转回。这种方式保证了格式的完整性。
实测上传带复杂表格的文档,在线编辑后下载,用 Word 打开,表格边框和合并单元格都完整保留。之后用 Word、LibreOffice 或 Google Docs 打开,都可以继续编辑。
苏米注:直接操作 OOXML 而非转码,这是格式不丢的关键。很多 Web 编辑器走 HTML 中间格式路线,复杂表格和样式必然损失。
功能一览
编辑器功能已接近 Google Docs 的水平,核心功能包括:
常用编辑功能
完全在浏览器本地运行,无后端,数据不会上传到任何服务器。支持字体设置、段落格式、列表等常用功能。

表格插入
支持在线插入和编辑表格,保持与 Word 的兼容性。

多语言支持
界面支持多语言切换。

修订模式
支持 Word 经典的修订模式功能,这在 Web 编辑器中比较少见。打开建议模式后,所有修改都会被标记为"建议",不会直接修改原文。其他人可以接受或拒绝每一个修改建议,类似 Word 中的审阅修订。
修订记录以标准 OOXML 格式(w:ins、w:del 标记)保存,在 Word 和编辑器之间切换时,修订历史不会丢失。

评论系统
类似 Google Docs,选中文本即可添加评论,支持回复、讨论,最后标记为"已解决"。评论保存在 .docx 文件的 comments.xml 中,换到 Word 打开仍然存在。

实时协作
基于 Yjs 实现多人同时编辑,实时光标显示。评论和修改后,其他用户可以立即看到。协作后端支持 y-webrtc、PartyKit、Liveblocks 或 Hocuspocus 等多种选项。
AI Agent 适配:让 AI 参与文档协作
作者为该项目开发了 Agent SDK,包含 14 个与文档相关的工具。AI 可以读取文档、添加评论、提出修改意见,并处理修订结果。支持与 MCP Server 配合使用,直接连接 Claude Desktop 等客户端。
与单纯的 AI 内容生成不同,这个方案让 AI 直接参与到文档协作过程中——不是写完就走,而是通过批注、修改的方式与人一起打磨文档。

使用方式
最直接的方式是访问官方 Demo:https://docx-editor.dev/editor,上传 .docx 文件即可编辑和保存。
集成到项目中:
- React 项目:
npm install @eigenpal/docx-editor-react - Vue 3 支持(Beta 版)
- Next.js 需通过动态导入处理 SSR

当前限制
需要注意的几个方面:
- Vue 支持仍为 Beta 版
- Next.js 需动态导入处理 SSR
- 协作功能后端需自行配置
- 暂无拼写检查、邮件合并、表单字段、PDF 直接导出功能
苏米观察
这个项目对"AI 写的代码质量差"的观点提供了一个有力的反例。作者用 Claude Code 在一夜之间开发出了真正可用的产品级编辑器。
问题的关键往往不在于 AI 编程本身,而在于模型选择和使用方法。给 AI 明确的方向,让它自主迭代验证,比手把手写每一行代码效率高得多。
不管你是需要在网页上处理 Word 文档,还是对 AI 编程实践感兴趣,docx-editor 都值得研究和尝试。
GitHub 仓库:https://github.com/eigenpal/docx-editor
基于 Apache-2.0 协议开放