刷 GitHub 的时候看到了一个项目挂在今天第三,+1,923 star。OfficeCLI,一个给 AI agent 用的 Office 命令行工具。
我仔细看了一下,这不是一个"用 Python 操作 Office 的库"。它是一个单文件二进制,不需要装 Office,不需要依赖,Windows/Mac/Linux 都能跑。AI agent 用它创建、读取、修改 Word/Excel/PPT,全用命令行。
GitHub:https://github.com/iOfficeAI/OfficeCLI
1
使用命令行工具操作 docx、pptx、xlsx 文件
以前用 Python 操作 PPT 要装 python-pptx 库,写一堆代码:
from pptx import Presentationfrom pptx.util import Inches, Ptprs = Presentation()slide = prs.slides.add_slide(prs.slide_layouts[0])title = slide.shapes.titletitle.text = ”Q4 Report”prs.save('deck.pptx')
OfficeCLI 一行搞定:
# 使用 add 命令在 PPT 中添加一张幻灯片officecli add deck.pptx / --type slide --prop title=”Q4 Report”
Word、Excel、PPT 全支持——读、改、建都行。
2
下载二进制文件,可以让 agent 直接使用
不需要装 Office,不需要装 Python 库,不需要任何依赖。下载一个二进制就行:
# macOS / Linuxcurl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash# Windows (PowerShell)irm https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1 | iex# Homebrew / npmbrew install officeclinpm install -g @officecli/officecli
装完后 officecli install 会自动检测你装的 AI 编程工具(Claude Code、Cursor、Windsurf、Copilot 等),把 skill 装进去。之后 agent 就能直接操作 Office 文件了。
3
使用 HTML 渲染,让 AI agent 可以直接看到生成内容
操作 Office 文件最怕"看不见效果"。OfficeCLI 有一个 watch 模式:
# 使用 create 命令创建一个空 PPT 文件officecli create deck.pptx# 使用 watch 命令打开浏览器实时预览officecli watch deck.pptx
然后在另一个终端里加内容,浏览器页面实时更新:
# 使用 add 命令添加幻灯片并设置标题和背景色officecli add deck.pptx / --type slide --prop title=”Q4 Report” --prop background=1A1A2E# 使用 add 命令在幻灯片中添加文字形状officecli add deck.pptx '/slide[1]' --type shape --prop text=”Revenue grew 25%”
每个 add、set、remove 命令之后,浏览器预览自动刷新。对于 AI agent 来说,这意味着它可以执行命令 → 看渲染结果 → 不满意再修——形成了一个"render → 看 → 修"的闭环。
OfficeCLI 自带 HTML 渲染引擎,不用打开 Office 就能看到文档长什么样。也支持导出为 PNG。
4
可以批量处理文档格式,并且可以生成文档模板
OfficeCLI 不只是创建单个文件。它也适合批量操作——给一个文件夹里的所有 docx 改格式、给一批 Excel 加公式、批量替换 PPT 里的某个词:
# 使用 set 命令批量替换 Word 文档中的文字officecli set report.docx '/paragraph[contains(text(), ”旧名称”)]/run' --prop text=”新名称”# 使用 get 命令筛选 Excel 中符合条件的数据行officecli get invoices.xlsx '/sheet[1]/row[Salary>5000]' --json# 使用 add 命令在 PPT 中添加空白幻灯片officecli add deck.pptx / --type slide --slide-layout blank
也有模板能力。你可以用 officecli get 把已有的文档结构提取成 JSON,然后在新的文档上复用同样的结构和格式:
# 使用 get 命令提取现有文档的结构为 JSONofficecli get report.docx / --json > template.json# 使用 create 命令基于提取的结构创建新文档officecli create weekly_report.docx --from template.json
对于需要定期生成的周报、月报、标准合同这类文档,先跑一遍建好模板结构、存下来,下次直接套用。
如果需要让 AI agent 自己学会操作,项目提供了一条命令:
# 使用 curl 让 AI agent 自动下载并学会操作 Officecurl -fsSL https://officecli.ai/SKILL.md
把这条命令复制到任何 AI agent 的对话框里,它会自己下载二进制、装命令、学会所有用法。之后你跟 agent 说"帮我做个 PPT,讲一下 Q4 的数据",它就能从头建文件、加内容、调格式。GitHub 上展示的 PPT、Word、Excel 文档全是由 AI agent 用 OfficeCLI 生成的——没有模板,没有手动编辑。
5
局限
❶ 核心场景是给 AI agent 用,命令行操作 Office 的学习曲线比图形界面高。不过项目方也做了 AionUi 桌面客户端,可以用自然语言操作 Office。
❷ 功能覆盖很全(光是 README 里列的功能就占了上万字),但如果是需要复杂排版、宏、ActiveX 控件的旧文档,可能会有兼容问题。
总之功能很强大,填补了以前没发使用agent直接改写Office文件的空白。可以装一个试试,感受一下"命令行里做 PPT"是什么体验。
夜雨聆风