一个命令搞定所有 Word 和 Excel!这个开源 CLI 工具太实用了

你有没有被 Office 文件折腾过?写个脚本批量改 Word 里的错别字,结果发现 python-docx 的 API 跟想象的不太一样;或者想往 Excel 里写公式,结果 openpyxl 跑出来的文件 Excel 打开报错了……

今天挖到一个让我眼前一亮的小工具——office,来自 MoonBit 团队的一个开源 Skill。它不是什么花哨的 AI 助手,就是一个命令行工具,但干的事情特别实在:

一个命令,处理所有 Word 和 Excel 文件。

它能做什么?

这工具把你的 DOCX 和 XLSX 文件当做一个可编程的对象来处理。内置命令覆盖了文档处理的完整生命周期:

  • identify — 自动识别文件类型和结构
  • inspect / query — 查看文件内容,不打开 Office
  • validate / diagnose — 校验文件完整性,排查损坏
  • create / template — 从模板生成新文档
  • comment / batch-edit — 批量编辑,修改评论
  • preview — 把文档转成预览格式
  • dump/replay — 导出操作日志,方便调试和回放

最关键的是,它用的是 MoonBit 语言写的 WebAssembly,直接 moonx moonbitlang/office 就能跑,不需要装 Python、不依赖 LibreOffice、不需要打开 Word 或 Excel。

跟现有的轮子有什么不一样?

office CLI python-docx openpyxl LibreOffice
环境依赖 无(wasm单文件) 需要Python 需要Python 需要安装
安全边界 有沙箱,不联网 无 无 无
公式校验 ✅ ❌写出来可能报错 ✅ ✅
批量编辑 ✅ 可以但麻烦 可以 可以
操作日志 ✅dump/replay ❌ ❌ ❌

它的设计理念很有意思:宁可拒绝,也不默默丢失内容。比如 run-level 的文本编辑,如果你试图改一个会破坏文档结构的内容,它会直接报错,而不是静默忽略。批量处理大量文件时特别有用——你不会在半夜收到用户投诉说文件打不开了。

使用体验

装起来也就一行命令:

npx skills add https://github.com/moonbitlang/office.mbt --skill office

然后随手试几个:

# 查看所有可用命令和参数
moonx moonbitlang/office help all --json

# 识别文件类型
moonx moonbitlang/office identify report.docx --json

# 批量检查文档完整性
moonx moonbitlang/office validate *.docx --json

# 从模板生成新文档
moonx moonbitlang/office create --template invoice_tpl.docx --data data.json out.docx

它有完整的 JSON Schema 文档,每个命令的输入输出都有类型定义,调用起来心里有底。如果你在用 Claude Code 或类似的 AI 编程助手,直接加载这个 Skill,AI 就能用自然语言帮你完成文档处理任务。

谁适合用?

  • 后端开发:需要批量处理用户上传的 Word/Excel 文件
  • 运营/行政:定期生成格式化报告,不用手动复制粘贴
  • 数据分析师:需要安全地读写 Excel 文件,不破坏公式
  • AI 应用开发者:给自己的 Agent 工作流加一个可靠的文档处理节点

说实话,GitHub 上目前只有 4 颗星,可能因为 MoonBit 语言比较小众。但这个工具的设计思路很扎实,拿来做生产环境的文档自动化完全没问题。GitHub 链接:

https://github.com/moonbitlang/office.mbt


GitHub: https://github.com/moonbitlang/office.mbt

评论区

0 条评论

登录后可评论。

林小秋 386 阅读