CLI-Anything:一键让任何软件变成 AI 代理可操控的命令行工具
AI 工具教程教程进阶14 分钟阅读
学习路径:Claude Code 从入门到实战

CLI-Anything:一键让任何软件变成 AI 代理可操控的命令行工具

港大开源项目32K Stars,7阶段自动管线将GIMP、Blender、LibreOffice等35类软件转化为AI代理可操控的CLI工具。

适合人群

  • 想让 AI 代理直接操控专业软件(GIMP、Blender、LibreOffice 等)的开发者
  • 需要自动化 GUI 软件操作的 DevOps 工程师
  • 构建 AI Agent 工作流的技术负责人
  • 对 AI 代理 + 软件集成感兴趣的研究者和爱好者

准备清单

  • Python 3.10+
  • Claude Code / Cursor / VS Code + Copilot(任一 AI 编码 IDE)
  • 目标软件已安装(如 GIMP、Blender、LibreOffice 等)
  • 基本的命令行操作能力

CLI-Anything 是什么

CLI-Anything 是由香港大学数据科学实验室(HKUDS)开发的 AI 代理工具框架,项目已获得 32,300+ Stars,拥有 500+ 社区贡献者

核心理念:今天的软件服务人类,明天的用户将是 AI 代理。 CLI-Anything 通过一条命令,将任意软件转化为 AI 代理可直接操作的 CLI 工具,让软件变得"Agent-Native"。

它解决了什么问题

当前 AI 代理操控软件主要有两种方式:

  1. API 调用 — 很多桌面软件没有 API,AI 无法操作
  2. GUI 自动化 — 基于截图和像素点击,脆弱且不稳定

CLI-Anything 提供了第三条路:自动生成 CLI 包装器,让 AI 代理通过命令行直接操控软件,稳定、可测试、可编程。

7 阶段全自动生成管线

CLI-Anything 会自动完成以下 7 个阶段:

阶段 名称 功能
Phase 1 Analyze 扫描源代码,将 GUI 操作映射为 API
Phase 2 Design 设计命令组、状态模型和输出格式
Phase 3 Implement 构建 Click CLI,含 REPL、JSON 输出、撤销/重做
Phase 4 Plan Tests 创建测试计划(TEST.md
Phase 5 Write Tests 实现完整测试套件
Phase 6 Document 生成 SKILL.md 文档
Phase 7 Publish 创建 setup.py,安装到 PATH

已验证的 35+ 个软件领域

CLI-Anything 已经成功为以下类型的软件生成了 CLI:

  • 图像编辑 — GIMP(图像处理 CLI)
  • 3D 建模 — Blender(场景渲染、建模操作)
  • 矢量图形 — Inkscape(SVG 编辑)
  • 音频制作 — Audacity(音频处理)
  • 办公套件 — LibreOffice(文档生成、PDF 导出)
  • 视频编辑 — Shotcut、Kdenlive(视频剪辑)
  • 直播录制 — OBS Studio(场景切换、录制控制)
  • AI 图像生成 — ComfyUI、Stable Diffusion WebUI
  • 本地 LLM — Ollama(模型管理、推理)
  • 浏览器自动化 — Playwright
  • 视频会议 — Zoom
  • 乐谱 — MuseScore
  • 游戏引擎 — Godot
  • 科学计算 — FreeCAD、QGIS、ParaView
  • 以及更多...

全部 2229 个测试 100% 通过率

操作步骤

1. 在 Claude Code 中安装插件(推荐)

# 添加市场
/plugin marketplace add HKUDS/CLI-Anything

# 安装插件
/plugin install cli-anything

2. 一键生成 CLI

将目标软件的源代码路径传给 CLI-Anything:

# 为 GIMP 生成 CLI
/cli-anything ./gimp

# 为 LibreOffice 生成 CLI
/cli-anything ./libreoffice

AI 会自动完成 7 阶段管线,从分析源码到生成可安装的 CLI 工具。

3. 迭代优化

如果生成的 CLI 覆盖不够全面,可以继续优化:

# 对已有 CLI 进行差距分析并扩展
/cli-anything:refine ./gimp

# 指定要增加的功能
/cli-anything:refine ./gimp "我想增加图像批量处理和滤镜的 CLI"

refine 命令是增量非破坏性的,可以多次运行。

4. 手动安装和使用 CLI

# 进入生成的 CLI 目录
cd <software>/agent-harness

# 安装到系统
pip install -e .

# 验证安装
which cli-anything-<software>

# 查看帮助
cli-anything-<software> --help

# 进入 REPL 交互模式
cli-anything-<software>

# JSON 输出模式(供其他 AI 代理使用)
cli-anything-<software> --json <command>

5. 使用 CLI-Hub 安装社区构建的 CLI

# 安装 CLI-Hub 包管理器
pip install cli-anything-hub

# 搜索可用的 CLI
cli-hub search blender

# 安装社区构建的 CLI
cli-hub install blender

6. 在自动化工作流中使用

生成的 CLI 支持 --json 标志,可以方便地集成到自动化脚本中:

import subprocess, json

# 调用 GIMP CLI 进行图像处理
result = subprocess.run(
    ["cli-anything-gimp", "--json", "apply-filter", "--name", "blur", "--radius", "5"],
    capture_output=True, text=True
)
output = json.loads(result.stdout)
print(output)

7. 让 AI 代理自主发现和使用工具

每个生成的 CLI 都包含 SKILL.md 文件,AI 代理可以通过阅读这个文件了解工具的能力和使用方法。CLI-Anything 还提供 meta-skill,让 AI 代理自主发现和安装所需的 CLI:

我需要处理一批图片,请帮我找到合适的 CLI 工具并安装

实际应用场景

场景 1:AI 自动生成 PPT

用户:帮我用 LibreOffice 生成一份销售报告 PPT
AI:(调用 cli-anything-libreoffice)创建文档 → 插入数据 → 生成图表 → 导出 PPTX

场景 2:AI 自动处理图片

用户:把这 100 张图片批量调整为统一尺寸并加水印
AI:(调用 cli-anything-gimp)批量读取 → 调整尺寸 → 添加水印 → 导出

场景 3:AI 自动剪辑视频

用户:把这个会议录像剪辑成 5 分钟精华版
AI:(调用 cli-anything-shotcut)分析时长 → 标记关键段 → 剪辑 → 导出

常见问题

Q: 和 GUI 自动化(如 PyAutoGUI)有什么区别?

A: GUI 自动化通过模拟鼠标点击和键盘输入来操控软件,非常脆弱——窗口位置变了就会失败。CLI-Anything 直接调用软件的后端 API,输出结构化 JSON,稳定可靠且可测试。关于更多 AI 自动化工具,可以阅读 PPT Master:AI 自动生成原生 PPT

Q: 支持哪些 AI 编码代理?

A: 支持 Claude Code(主要平台,通过插件市场分发)、Pi Coding Agent、OpenCode、Goose、OpenClaw、Codex、GitHub Copilot CLI 等。社区还在不断增加新的支持平台。

Q: 生成的 CLI 质量如何?

A: 每个生成的 CLI 都包含完整的多层测试:单元测试(合成数据)、端到端测试(真实文件和软件)、CLI 子进程验证。目前 2229 个测试全部通过。你可以在生成后运行测试验证:python3 -m pytest cli_anything/<software>/tests/ -v

Q: 可以用于闭源/商业软件吗?

A: CLI-Anything 需要访问软件的源代码来分析 GUI 操作。对于没有源代码的商业软件,可以考虑通过其公开的 API 文档或 SDK 来生成 CLI。项目也支持根据 API 文档生成 CLI。

Q: 对 Windows 支持如何?

A: CLI-Anything 本身是 Python 项目,跨平台运行。但部分生成的 CLI 依赖目标软件的 Python 绑定(如 bpy for Blender),需要确认目标软件在 Windows 上是否提供对应的 Python 接口。想了解更多 AI 开发工具?查看 Awesome DESIGN.md:69 个品牌设计系统

参考来源

下一步建议