纯Rust打造的Word克隆WordCraft:AI智能体可直接驱动

纯 Rust 编写的 Word 克隆 WordCraft,以 422 个命令层让 AI 智能体直接操作文档。
WordCraft 是一个用纯 Rust 编写、不依赖 Electron 或 Tauri 的 Microsoft Word 克隆项目,本月在 GitHub 收获近 14,000 star。它覆盖了接近 Word 的日常功能:docx 及多种格式读写、修订跟踪与批注、目录脚注与引文、文字环绕与自动断字、邮件合并和 21 种界面语言。架构分为几何、文档模型、布局、光栅化、会话与命令等层,顶层使用 egui 渲染,段落布局缓存使 188 页文档打字重布局仅约 1.4 毫秒。其最大特色是 422 个带 ID 的命令同时驱动界面、快捷键、命令行和 MCP 服务器,AI 智能体可一行配置接入 Claude 并直接读写文档。项目处于 alpha 阶段,自评覆盖 Word 功能区 88% 命令,但仅完成实际替代的约 60%。
WordCraft 是一个用纯 Rust 编写的 Microsoft Word 克隆项目,近期在 GitHub 上迅速蹿红——近 14,000 个 star 几乎全部来自本月,同时拥有 3,615 个 fork。它最吸引人的地方并非复刻 Word 的界面,而是其底层设计:每一个操作都是一个带 ID 的命令(共 422 个),这些命令不仅能驱动界面,还能通过 MCP 服务器被 AI 智能体直接调用。
功能覆盖:接近 Word 的日常体验
WordCraft 的目标是提供你熟悉的 Word 操作方式:回车延续列表、Tab 降级、F7 拼写检查,样式库支持实时预览。文件格式方面,它能打开和保存 docx,并处理 ODT、RTF、HTML、Markdown、LaTeX 和纯文本。
审阅功能包括修订跟踪、边距批注气球、接受/拒绝更改,以及输入时的拼写和语法检查。引用功能支持目录、脚注,以及 APA、MLA、Chicago 和 IEEE 格式的引文,还有索引和题注。布局层面同样深入:首字下沉、图片和形状的文字环绕、自动断字、行号和页面边框。

界面支持深色模式和多层模式(显示格式标记),插入选项卡可添加表格、图片、形状、链接、页眉和字段。表格支持合并单元格、带状样式和跨页重复标题行。邮件合并可从 CSV 拉取数据,生成信封和标签。界面语言跟随系统,覆盖英语、韩语、瑞典语等 21 种语言。
分层架构与性能表现
代码采用清晰的分层设计:底层几何层处理单位,其上为文档模型与编辑层,布局层负责断行和分页,光栅化层用 Velo CPU 绘制页面,顶层是会话、撤销和命令层,再之上是可替换的 egui 前端。文件与校对模块并列一侧:docx crate 处理 OOXML,formats 处理 ODT、RTF、HTML、Markdown 和文本,PDF crate 导出带真实可选文本的 PDF,proof 模块离线完成拼写、语法和断字检查。

速度得益于段落布局缓存:在 188 页的文档中打字,重新布局仅需约 1.4 毫秒,页面按需渲染。没有 Electron,没有 Tauri,只有原生 egui 在 GPU 上运行。质量由一条命令 cargo xdaskci 保障,它运行格式化、clippy、约 800 个测试、资产归属检查、分层检查以及 WASM 构建。仓库甚至为贡献者提供了 agents.md 和 claude.md。
试用只需几分钟:克隆仓库,然后 cargo run --release -- --sample 查看内置示例文档,或传入自己的 docx 打开。浏览器版本用 trunk serve 运行。

egui 是一个用 Rust 编写的即时模式(immediate mode)GUI 库,每帧根据当前状态重新构建界面,而非像传统保留模式框架那样维护长期存在的控件树。这一特性让它天然适合 GPU 渲染且易于跨平台部署,包括编译到 WASM 在浏览器中运行——文中 trunk serve 启动浏览器版本正是基于此。Velo 则是 Rust 生态中的 CPU 光栅化库,负责把布局层算出的页面几何转换成像素位图,从而在不依赖系统图形栈的情况下完成页面绘制。二者组合意味着 WordCraft 完全绕开了 Electron 的 Chromium 运行时和 Tauri 的系统 WebView,二进制体积更小、启动更快、内存占用更低。即时模式 GUI 的代价是复杂控件(如富文本编辑、表格交互)需要自行管理状态,这也是该项目在界面层投入大量工程的原因之一。
段落布局缓存是文档编辑器性能的关键设计。文字排版需经历断行、段落高度计算、跨页分割等步骤,若每次按键都全量重排整个文档,188 页规模下必然卡顿。WordCraft 的做法是缓存每个段落的布局结果,仅当该段落内容或其可用宽度、样式发生变化时才失效重算,其余段落直接复用缓存,因此打字时只需重排当前段落并更新后续分页偏移,实测约 1.4 毫秒。按需渲染则进一步把开销推迟到可见范围:只有当前视口内的页面才交给光栅化层绘制成位图,滚动时再增量生成,避免为几百页文档预先渲染全部像素。二者配合使“纯 CPU 光栅化 + 无浏览器运行时”的架构在交互流畅度上仍能与主流编辑器竞争。
AI 智能体驱动的核心机制
这是 WordCraft 真正的钩子。每个操作都是一个带 ID 的命令,共 422 个。同一套命令驱动功能区、快捷键、命令行和 MCP 服务器。一行配置即可将其添加到 Claude。你可以将智能体限制在特定文件夹,或连接到正在运行的应用。工具包括列出命令、执行、批量执行、输入文本和选择文本。连接运行中的应用后,还能截图、点击和按键。宏可以记录任意命令序列并回放。命令行同样直接:一行将 docx 转换为 PDF,提取纯文本,或以 JSON 检查文档结构。智能体可以通过 inspect document 检查自己的工作,无需截图。
MCP(Model Context Protocol) 是 Anthropic 于 2024 年底提出的开放协议,用于让 AI 模型以标准化方式连接外部工具与数据源。它将工具提供方(服务器)与调用方(客户端/智能体)解耦:服务器声明一组带名称、描述和参数模式的工具,智能体在需要时发起调用并读取结构化结果。WordCraft 的 422 个带 ID 命令被包装成 MCP 工具暴露出去,因此 Claude 等智能体无需理解其内部架构,就能列举命令、执行命令、批量操作或读写选中文本。相比让模型截图再模拟点击,MCP 让智能体直接操作文档对象模型,既更精确也更省 token;连接到运行中的应用后还可叠加截图、点击等 UI 级操作,形成“结构化命令为主、视觉操作为辅”的混合模式。
成熟度与适用场景
WordCraft 目前处于 alpha 阶段。它用命令覆盖了 Word 功能区 88% 的功能,但作者估计,要真正替代 Word 完成实际工作,它只走了约 60% 的路程;对于日常基本需求,这一数字是 63%。Beta 阶段需要真实世界的 docx 测试、图表和 SmartArt 的往返保真、更接近的分页、稳定性扫尾以及原生打印。

一些差距在实践中很重要:拼写和语法建议目前仅覆盖英语和波兰语;分页尚未达到作者期望的接近 Word 的水平;原生打印仍在待办列表。桌面应用会写日志文件,每次启动保留之前的日志,单个日志增长到 16MB 停止,文档文本永远不会被记录,可通过 RustLog 调整详细程度。
那么谁适合用?将文档接入 AI 智能体的开发者会喜欢它的命令层。想要在 Linux 或 BSD 上获得私密离线 Word 风格编辑器的人应该试试。如果你需要像素级完美的 Word 分页、图表往返保真,或英语和波兰语之外的拼写检查,可以跳过。代码以 MIT 或 Apache 2.0 开源,最新版本为 0.7。在依赖它进行实际工作前,请查看仓库中的路线图。
相关推荐

uGAP:统一100+非洲地理数据集的AI平台
uGAP是开普敦大学团队开发的非洲地理空间AI平台,统一120余个非洲数据集并提供Python SDK,支持数据发现、处理与模型训练一站式工作流,已用于气旋洪水制图等实战场景。

Cursor能控制你的电脑了:AI代理可驱动桌面应用测试
Cursor 新增桌面控制能力,AI 代理可驱动 iOS 模拟器等桌面应用测试自己构建的功能。本文分析这一更新对开发工作流的影响、技术实现可能路径及可靠性考量。

Vibecoding自研推理引擎:理想丰满,现实骨感
Reddit开发者分享Vibecoding自研推理引擎的真实经历:用WebGL2和GLSL在浏览器跑GGUF Q4模型,却陷入tokenizer调试地狱。本文分析浏览器端LLM推理的工程难点,以及为何直接clone llama.cpp是更理性的选择。