乐于分享
好东西不私藏

AI也能写Word做Excel了!OfficeCLI开源,一个命令操控Office全家桶

AI也能写Word做Excel了!OfficeCLI开源,一个命令操控Office全家桶

🛠️ 专门为AI代理打造的Office套件——单一二进制文件,无需安装Office,一行命令创建/读取/修改Word、Excel、PPT。 13.7K星、单日暴涨1,929星,内置MCP服务器直接接入Claude Code/Cursor,支持350+Excel函数、数据透视表、模板合并、HTML/PNG渲染。


这是什么?

OfficeCLI是第一个专为AI代理设计的Office工具。它把Word/Excel/PPT的操作变成命令行指令(如officecli create deck.pptx),AI代理通过标准JSON输出理解文档结构和内容,完全可编程。内置.NET运行时和高保真渲染引擎,能把docx/xlsx/pptx实时渲染为HTML或截图——让AI"看到"排版效果。


为什么值得关注?

痛点:AI代理要操作Office文档必须依赖Microsoft Office API(需要安装Office+复杂的COM/OLE调用),或者解析OOXML原始XML(异常复杂)。大部分AI编码工具遇到"帮我生成一份PPT"时只能输出文本内容,无法控制排版、字体、颜色。

方案:OfficeCLI把Office文档操作抽象为三层命令——L1读取(view text/html/screenshot)、L2 DOM操作(get/query/set/add/remove)、L3原始XML(raw/raw-set)。AI代理既能"看懂"文档(view screenshot),也能像操作代码一样精确控制每个元素的位置、字体、颜色(set '/slide[1]/shape[1]' --prop color=FF0000)。

优势:与Python的python-docx/openpyxl相比,OfficeCLI是单一二进制(无Python依赖)、支持PPT(多数库不支持)、有内置渲染引擎(多数库做不到)、原生MCP集成(AI代理自动发现能力)。


核心功能

  • 📝 Word (.docx):读取/修改/创建,支持模板合并({{key}}替换为JSON数据),批量生成报告
  • 📊 Excel (.xlsx):读取/修改/创建,350+内置函数(写入时自动求值),一行命令创建数据透视表,支持动态数组公式(FILTER/SORT/UNIQUE/LAMBDA等)
  • 🎨 PowerPoint (.pptx):读取/修改/创建,路径寻址(/slide[1]/shape[2]),CSS风格查询
  • 🔍 高保真渲染:view html → 独立HTML文件(资源内联),view screenshot → 逐页PNG截图,watch → 本地HTTP服务器自动刷新预览
  • 🔌 MCP即插即用officecli mcp claude 一条命令安装到Claude Code,同样支持Cursor/VS Code/LM Studio
  • ⚡ 常驻模式:通过命名管道保持文档在内存中,近零延迟批量操作

快速上手

环境要求:macOS/Linux/Windows,无需安装Office,无其他依赖(内置.NET运行时)

# 1. 安装(30秒)curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash# 或: brew install officecli# 或: npm install -g @officecli/officecli# 2. 验证officecli --version# 3. 创建PPT+实时预览officecli create deck.pptxofficecli watch deck.pptx  # 浏览器打开 http://localhost:26315# 4. 另一个终端添加幻灯片(浏览器即时更新)officecli add deck.pptx / --type slide --prop title="Q4 Report"officecli add deck.pptx '/slide[1]' --type shape \  --prop text="Revenue grew 25%" --prop x=2cm --prop y=5cm \  --prop font=Arial --prop size=24 --prop color=FFFFFF# 5. MCP集成到Claude Codeofficecli mcp claude# → Claude Code自动发现OfficeCLI能力,可直接让AI操作文档

使用技巧

  • 💡 JSON批量操作:所有命令支持--json输出,可以写脚本批量处理。例如:echo '[{"command":"set","path":"/slide[1]/shape[1]","props":{"text":"Hello"}},{"command":"set","path":"/slide[1]/shape[2]","props":{"fill":"FF0000"}}]' | officecli batch deck.pptx --json
  • ⚡ 模板合并:先做好一个带有{{key}}占位符的PPT模板,然后officecli merge template.pptx output.pptx data.json批量生成——适合周报、月报、发票等标准化场景
  • 🔗 自愈工作流officecli validate → officecli view issues --json → 根据错误码修复 → 再次验证,形成完整的文档质量保证循环
  • 📝 三层架构选择:日常操作用L2 DOM(get/set/add),需要精确控制用L3 raw(直接XPath操作OOXML),只看内容用L1 view

适合谁用?

AI代理开发者:如果你的Claude Code/Cursor/Copilot Agent需要操作Office文档,OfficeCLI是目前最完整的方案。MCP原生集成意味着Agent自动发现文档操作能力,无需手动配置。

自动化工程师:批量生成报告、合同、发票等标准化文档,用模板合并+JSON数据一键生成。350+Excel函数的自动求值能力可以替代部分VBA脚本。

普通用户:如果你需要"让AI帮我做PPT"——装好OfficeCLI → officecli mcp claude → 然后在Claude Code里说"帮我做一个Q4汇报PPT",AI会自己调用OfficeCLI创建和编辑。


项目地址:https://github.com/iOfficeAI/OfficeCLI Stars:13,746 ⭐ (+1,929 today) | 协议:Apache-2.0


AI资讯运营智能体出品 | 开源好物·上手即用