Communitygithub.com

cli-anything-libreoffice

一个状态化的命令行界面,用于文档编辑,生成真正的ODF文件(ZIP压缩包中的XML)。专为AI代理和高级用户设计,无需GUI或LibreOffice安装即可创建和操作Writer、Calc和Impress文档。

cli-anything-libreoffice 是什么?

cli-anything-libreoffice 是一个状态化命令行界面,专为 AI 代理和高级用户设计,用于生成真正的 ODF 文件(Office文档格式,即 ZIP 压缩包内的 XML)。它允许用户在无图形界面或无完整 LibreOffice 安装的环境下,创建和操作 Writer(文字处理)、Calc(电子表格)和 Impress(演示文稿)文档。该工具支持 pip 安装,但需要系统预装 LibreOffice。其核心功能包括完整的命令组(如 Writer、Calc、Impress 命令),以及 REPL 交互模式、项目持久化(JSON 格式保存/加载)、撤销/重做历史、导入现有 Office 文件(如 DOCX、XLSX、PPTX)等。输出模式支持人类可读和机器可读(`--json` 标志)两种,便于 AI 代理解析。这对于需要在 CI/CD 流水线或自动化工作流中动态生成 Office 文档的场景非常实用。

兼容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/HKUDS/CLI-Anything/tree/main/skills/cli-anything-libreoffice

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

cli-anything-libreoffice 是做什么的?

一个状态化的命令行界面,用于文档编辑,生成真正的 ODF 文件(ZIP 压缩包中的 XML)。专为 AI 代理和高级用户设计,无需 GUI 或 LibreOffice 安装即可创建和操作 Writer、Calc 和 Impress 文档。

安装

该 CLI 作为 cli-anything-libreoffice 包的一部分安装:

pip install cli-anything-libreoffice

前提条件:

  • Python 3.10+
  • 系统必须安装 libreoffice

用法

基本命令

# 显示帮助
cli-anything-libreoffice --help

# 启动交互式 REPL 模式
cli-anything-libreoffice

# 创建新项目
cli-anything-libreoffice project new -o project.json

# 以 JSON 输出运行(供代理使用)
cli-anything-libreoffice --json project info -p project.json

REPL 模式

未指定子命令时,CLI 进入交互式 REPL 会话:

cli-anything-libreoffice
# 交互式输入命令,支持 Tab 补全和历史记录

命令组

文档

文档管理命令。

命令描述
new创建新文档
open打开项目 JSON,或导入现有的 Office/ODF 文件
import导入现有的 Office/ODF 文件到项目 JSON
import-formats列出支持的导入格式
save保存当前文档
info显示文档信息
profiles列出可用的页面配置文件
json打印原始项目 JSON

Writer

Writer(文字处理器)命令。

命令描述
add-paragraph在文档中添加段落
add-heading在文档中添加标题
add-list在文档中添加列表
add-table在文档中添加表格
add-page-break添加分页符
remove通过索引移除内容项
list列出所有内容项
set-text设置内容项的文本

Calc

Calc(电子表格)命令。

命令描述
add-sheet添加新工作表
remove-sheet按索引移除工作表
rename-sheet重命名工作表
set-cell设置单元格值
get-cell获取单元格值
list-sheets列出所有工作表

Impress

Impress(演示文稿)命令。

命令描述
add-slide在演示文稿中添加幻灯片
remove-slide按索引移除幻灯片
set-content更新幻灯片的标题和/或内容
list-slides列出所有幻灯片
add-element在幻灯片中添加元素

样式组

样式管理命令。

命令描述
create创建新样式
modify修改现有样式
list列出所有样式
apply将样式应用于内容项(仅适用于 Writer)
remove移除样式

导出组

导出/渲染命令。

命令描述
presets列出导出预设
preset-info显示预设详情
render将文档导出到文件

会话

会话管理命令。

命令描述
status显示会话状态
undo撤销上次操作
redo重做上次撤销的操作
history显示撤销历史

示例

创建新项目

创建一个新的 libreoffice 项目文件。

cli-anything-libreoffice project new -o myproject.json
# 或使用 JSON 输出以编程方式使用
cli-anything-libreoffice --json project new -o myproject.json

交互式 REPL 会话

启动一个支持撤销/重做的交互式会话。

cli-anything-libreoffice
# 交互式输入命令
# 使用 'help' 查看可用命令
# 使用 'undo' 和 'redo' 进行历史导航

导出项目

将项目导出为最终输出格式。

cli-anything-libreoffice --project myproject.json export render output.pdf --overwrite

状态管理

CLI 维护会话状态,包括:

  • 撤销/重做:最多 50 级历史
  • 项目持久化:将项目状态保存/加载为 JSON
  • 导入现有文件:将 ODF/DOCX/XLSX/PPTX 及相关格式转换为可编辑的项目 JSON
  • 会话跟踪:跟踪修改和变更

输出格式

所有命令支持双输出模式:

  • 人类可读(默认):表格、颜色、格式化文本
  • 机器可读(--json 标志):结构化 JSON,供代理使用
# 人类可读输出
cli-anything-libreoffice project info -p project.json

# 供 AI 代理使用的 JSON 输出
cli-anything-libreoffice --json project info -p project.json

供 AI 代理使用

以编程方式使用此 CLI 时:

  1. 始终使用 --json 标志 以获取可解析的输出
  2. 检查返回码 - 0 表示成功,非零表示错误
  3. 解析 stderr 以获取错误消息(失败时)
  4. 对所有文件操作使用绝对路径
  5. 先导入现有 Office 文件到 JSON,使用 document import input.docx -o work.json
  6. 导出操作后验证输出是否存在

更多信息

  • 完整文档:参见包中的 README.md
  • 测试覆盖率:参见包中的 TEST.md
  • 方法论:参见 cli-anything-plugin 中的 HARNESS.md

版本

1.0.0

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

cli-anything-adguardhome

>-

cli-anything-anygen

>-

cli-anything-audacity

>-

cli-anything-blender

>-

cli-anything-browser

Browser automation CLI using DOMShell MCP server. Maps Chrome

cli-anything-calibre

>-

cli-anything-ccswitch

CLI interface for CC Switch — manage AI coding tool configurations from the terminal

cli-anything-chromadb

>-

cli-anything-cloudanalyzer

Command-line interface for CloudAnalyzer — Agent-friendly harness for CloudAnalyzer, a QA platform for mapping, localization, and perception outputs. Supports 27 commands across 8 groups: point cloud evaluation, trajectory evaluation, ground segmentation QA, config-driven quality gates, baseline evolution, processing, visualization, and interactive REPL.

cli-anything-cloudcompare

Command-line interface for CloudCompare — Agent-friendly harness for CloudCompare, the open-source 3D point cloud and mesh processing software. Supports 41 commands across 9 groups: project management, session control, point cloud operations (subsample, filter, segment, analyze), mesh operations, distance computation (C2C, C2M), transformations (ICP, matrix), export (LAS/LAZ/PLY/PCD/OBJ/STL/E57), and interactive REPL.

cli-anything-comfyui

>-

cli-anything-dify-workflow

Wrapper for the Dify workflow DSL CLI. Create, inspect, validate, edit, and export Dify workflow files through a CLI-Anything harness.

cli-anything-drawio

>-

cli-anything-eez-studio

Use EEZ Studio from the command line: inspect and modify native .eez-project files, edit LVGL screens/widgets, manage SCPI commands, and invoke the real EEZ Studio backend for LVGL builds.

cli-anything-eth2-quickstart

>-

cli-anything-exa

>-

cli-anything-firefly-iii

Firefly III CLI - Personal finance management via CLI-Anything

cli-anything-freecad

Complete CLI harness for FreeCAD parametric 3D CAD modeler (258 commands). Covers ALL workbenches: Part (29 primitives + boolean + mirror + loft + sweep), Sketcher (26 cmds: geometry + constraints + editing), PartDesign (38 cmds: pad/pocket/groove/fillet/chamfer/patterns/hole/datum), Assembly (11 cmds), Mesh (16 cmds), TechDraw (15 cmds: views + dimensions + PDF/SVG), Draft (33 cmds: 2D shapes + arrays + transforms), FEM (12 cmds), CAM/CNC (10 cmds), Surface (6 cmds), Spreadsheet (7 cmds), Import (13 formats), Export (17 formats), Measure (12 cmds), Materials (21 presets). Headless FreeCAD export to STEP/IGES/STL/OBJ/DXF/PDF/glTF/3MF.

cli-anything-gimp

>-

cli-anything-godot

>-

相关技能