跟 AI 说"帮我做份 Q4 汇报 PPT"——它写了两百行代码,装了两个库,忙了一分钟,生成的文件标题和图表还叠到一起。
让它改,它说"我检查一下坐标",然后又吭哧吭哧地改代码,像极了努力帮倒忙的助手。
已有的Office skill通病是直接写代码操作Office文档。
最近开源的 OfficeCLI 换了一种思路:Agent 不需要写代码,直接发命令。项目上线几个月在 GitHub 获得 1.6 万星。
内置渲染引擎,Agent 长了眼睛
这是 OfficeCLI 和其他方案最根本的区别。
现有的 Python/JS 方案里,Agent 想看文档长什么样,走的是"代码生成→LibreOffice 转 PDF→pdftoppm 转图片→多模态模型看图→发现问题→改代码"的链路。每轮修复都是这个循环。
OfficeCLI 内置了一个从零实现的 HTML 渲染引擎,把"看文档"缩短到一次命令。
三种查看方式:
view outline:快速看文本大纲,不耗 token 看图:
officecli view deck.pptx --mode outline# → Slide 1: Q4 Report# → Shape 1 [TextBox]: Revenue grew 25%view screenshot:按页输出 PNG,多模态 Agent 直接读图检查排版。
watch:启动实时预览服务,每次编辑浏览器自动刷新:
officecli watch deck.pptx# 浏览器打开 http://localhost:26315# 在另一个终端:officecli set deck.pptx /slide[1]/shape[1] font-size=24# 浏览器即时更新因为渲染器是二进制自带的,不需要 LibreOffice、不需要 X Server、不需要显示器。Docker 和 CI 环境里直接跑,view screenshot 照常输出 PNG。这就把"渲染→看→改"循环缩短到了 Agent 可以在一个推理步骤内完成。

为 Agent 设计的工作流基础设施
OfficeCLI 很多设计只有站在 Agent 的角度才能理解为什么重要。
结构化错误码,Agent 自我修复
出错时返回的不是人类读的错误消息,而是机器可读的结构化数据:
{"success":false, "error":{"error":"Slide 50 not found (total: 8)", "code":"not_found", "suggestion":"Valid Slide index range: 1-8"}}code 值包括 not_found、invalid_value、unsupported_property、file_not_found 等。Agent 看到 suggestion 就能纠偏,不需要人类读错误栈。属性名拼错也会自动纠正,返回最接近的匹配。
validate + view issues:自愈工作流
Agent 执行完操作后可以立即验证:
officecli validate deck.pptxofficecli view deck.pptx --mode issues前者做 OpenXML schema 校验,后者枚举文档级问题(文字溢出、缺少替代文本、公式错误)。Agent 可以执行:创建→验证→读问题列表→修复→再验证,全程无人参与。
MCP Server,一行注册到所有 Agent
officecli mcp register claude# 或注册到 cursor、copilot所有文档操作以 MCP 工具形式暴露给 Claude Code、Cursor、VS Code Copilot。Agent 不用通过 shell 调用二进制,直接调工具。
Template merge:一次设计,批量填充
Agent 设计一次模板文档(Word/PPT/Excel 均可),然后在里面放 {{key}} 占位符:
officecli merge report.docx '{"client":"Acme","total":"$5,200"}'替换跨段落、表格单元格、页眉页脚、图表标题。后续 N 次填充不再消耗 token 重新生成,输出也保持一致。
SKILL.md 一行接入
curl -fsSL https://officecli.ai/SKILL.mdAgent 读到后自动安装二进制并注册到所有检测到的 AI 编程助手。officecli install 会扫描 Claude Code、Cursor、Windsurf、GitHub Copilot 等工具目录,把 skill 文件放到位。
Excel 文档的自动生成:

Word 文档的自动生成:

自带的公式引擎和数据透视表
OfficeCLI 内置了 350 多个 Excel 函数的求值引擎——=SUM(A1:A10) 写入时自动计算,get 回来就有值。不需要 LibreOffice recalc 脚本。支持动态数组(FILTER、SORT、UNIQUE、SEQUENCE)、财务函数(XIRR、PRICE、YIELD)、统计函数(NORM.DIST、T.TEST)。
数据透视表也是原生支持
一行命令创建带多字段行、列、筛选、聚合和数据分组的完整透视表。生成的 OOXML 文件在 Excel 里打开,聚合数据已经填充好。
上手
# macOS/Linux——一行curl -fsSL https://officecli.ai/SKILL.md# 或 brewbrew install officecli# 验证officecli --version跑完 officecli install,它会自动把 skill 装到 Claude Code 等工具里。打开你的 Agent 对话框,直接说"帮我创建一个 PPT 标题为 Q4 报告"就能工作。
项目地址:github.com/iOfficeAI/OfficeCLI
夜雨聆风