AI 写的文档格式总崩,自动化办公的新思路:一个为 AI Agent 而生的命令行工具
一个通过 COM 自动化直接操控 WPS 引擎的命令行工具,让 Word/Excel/PPT/PDF 操作变成一行命令。
一、为什么你用 AI 写文档,格式总是错乱?
让 AI 帮忙写文档,内容没问题,格式一塌糊涂。
标题该用黑体,它给你宋体;正文该用仿宋,它给你 Calibri;表格该居中,它给你左对齐。你让它改,中文部分对了,英文又变了;表格边框莫名消失;页码每页都是”1″。你花了 20 分钟写内容,又花了 40 分钟调格式——比手写还慢。
常见翻车现场一览:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
根本原因:主流 Python 文档库(python-docx、openpyxl)本质上是在拼接 XML 文件。 它们按 OOXML 标准写文件,但 WPS 有自己的一套渲染逻辑——字体回退、行距计算、表格边框合并、中文标点压缩。这些规则不在 XML 里,在 WPS 的渲染引擎里。
你给 AI 一把”拼 XML”的工具,让它生成”WPS 能完美打开的文档”,相当于让一个不懂排版的人用代码模拟排版引擎——格式崩是必然,不崩才是侥幸。
办公自动化的需求巨大,但工具链一直缺失。wps-cli 要解决的就是这个问题。
不让 AI 拼 XML,让 AI 直接操控 WPS 本身。
二、换个思路:让 WPS 自己干活
想象你在看电视——你不需要知道遥控器内部的电路怎么工作,按一下”音量+”,电视就调高了音量。
COM 自动化就是这个道理。它是 Windows 系统提供的一种组件通信机制:Python 通过 COM 向 WPS 发指令(”打开文件””选中文字””改为黑体””保存”),WPS 在后台执行操作。你用 VBA 宏操控 Office 是同一套机制,只不过把 VBA 换成了 Python。
关键优势:你拿到的文档,和你手动在 WPS 里一点点排版做出来的文档,格式效果完全一致。因为本来就是同一个引擎在干活。
wps-cli 把这套能力封装成了命令行工具,覆盖 Word、Excel、PPT、PDF 四大模块:
|
|
|
|
|
|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
35 个命令,覆盖办公自动化 90% 的日常需求。 每个命令都是一行就能跑,每个命令都支持 --json 输出,方便 AI Agent 解析结果、做下一步决策。

三、上手试试:让 AI Agent 帮你操作文档
wps-cli 的设计目标是让 AI Agent 能直接操控 WPS。你不需要敲命令,只需要跟 Agent 说一句话。
场景一:直接用 Agent 对话
打开 Claude Code、Codex CLI、OpenCode 或 Cursor,直接说:
“帮我把 contract.docx 里的’甲方公司’替换成’星辰科技有限公司’,然后导出 PDF。”
Agent 会自动调用 wps writer replace 和 wps writer export_pdf,你什么都不用管。
其他 Agent 也一样:
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
场景二:让 Agent 读取表格数据并生成图表
对 Agent 说:
“把 budget.xlsx 的 C12 单元格读出来,然后基于 A1 到 C10 的数据生成一个柱状图。”
Agent 会自动调用:
wps calc cell get budget.xlsx "C12" --json# → {"ref": "C12", "value": 285600}wps calc chart create budget.xlsx --data "A1:C10" --type bar --title "年度预算"
上一步的输出直接喂给下一步——Agent 自动完成这个循环。
场景三:一句话完成 PDF 合并加水印
对 Agent 说:
“把 jan.pdf、feb.pdf、mar.pdf 合并成一个文件,加上’内部资料’水印。”
Agent 自动执行,全程本地处理,数据不出电脑。
有命令行背景的读者:你也可以直接用
wps pdf merge、wps writer replace等命令手工操作。wps-cli 同时支持人工命令行和 Agent 调用两种模式,所有命令加--json即为 Agent 模式。
四、为什么 CLI 正在成为 AI Agent 的主流接口?
AI 时代的工具设计,正在发生一个根本性转变:从”给人用的 GUI”转向”给 AI 用的 CLI”。
三种接口的对比如下:
|
|
|
|
|
|---|---|---|---|
|
|
|
|
|
|
|
--help 即文档 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
GUI 自动化极其脆弱。 窗口位置变了、按钮文字改了、弹了个意外对话框——AI 就懵了。让 AI 通过 GUI 操作软件,相当于蒙着眼睛让人指挥你按遥控器。
API 调用学习成本高。 每个服务有不同的认证方式、请求格式、错误码体系。AI 需要记住这些差异,而每个 API 的文档 AI 都得重新”消化”。
CLI 命令是天然的文本接口。 LLM 输出文本,CLI 接收文本——这不是巧合,是必然:
-
• AI 生成 wps calc cell get budget.xlsx "C12" --json -
• CLI 执行操作,返回 {"ref": "C12", "value": 285600} -
• AI 读取结果,决定下一步
这个模式正在被最顶尖的 AI 工具验证:
|
|
|
|
|
|---|---|---|---|
|
|
12.4 万+ |
|
|
|
|
10 万+ |
|
|
|
|
8.3 万+ |
|
|
|
|
4.5 万+ |
|
|
据 TechCrunch 报道,Anthropic、OpenAI、Google 密集发布终端 AI 工具,CLI 产品已成为各家”最受欢迎的产品之一”。Terminal-Bench 联合创始人断言:”我们的大赌注是,未来 95% 的 LLM-计算机交互将通过类终端界面进行。”
wps-cli 从设计的第一天就遵循这个逻辑。每个命令都支持 --json 输出,返回结构化数据,让 AI Agent 可以:
|
|
|
|
|---|---|---|
|
|
|
--help,每个命令说明白自己能做什么 |
|
|
wps writer replace + wps writer export_pdf |
|
|
|
|
|
|
|
|
|
|
|
|
|
任何能执行 Shell 命令的 Agent(Claude Code、Cursor、Copilot、自建 Agent)都能直接用 wps-cli——不需要 SDK,不需要插件,不需要特殊集成。
五、技术架构一览
wps-cli 采用三层架构,职责清晰:
|
|
|
|
|
|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
CLI 层(Typer + Rich) ↓ 结构化调用业务层(Document Service) ↓ COM 指令后端层(pywin32 COM) ↓ 进程间通信WPS Office 桌面端
可扩展设计:如果未来要支持 LibreOffice,只需替换后端层的实现(从 COM 切换到 UNO 接口),CLI 层和业务层代码完全不用动。

六、怎么开始用?
安装,一行命令:
pip install wps-cli
环境要求:
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
快速验证环境是否就绪:
wps doctor
它会自动检测 WPS 是否安装、COM 组件是否注册、Python 环境是否正常——十几秒就能知道能不能跑起来。
全部命令一览:
wps --help
每个子命令都有独立帮助页,AI Agent 读 --help 就能理解所有参数和用法。

最后
wps-cli 完全开源,MIT 协议,拿来就用,商用也没问题。如果你也用 WPS 做办公自动化,觉得这工具能帮上忙,欢迎点个 Star。有 Bug 提 Issue,有想法提 PR。如果它帮你省了几个小时的调格式时间,那就是这个项目最大的价值。
项目地址:https://github.com/jjchen17/wps-cli反馈邮箱:948881912@qq.com

夜雨聆风