文档大纲

CLI-Anything:让AI一键控制专业软件,终结UI自动化噩梦

在 AI Agent 飞速迭代的今天,一个尴尬的现实始终横亘在我们面前:AI 能写代码、能写文案、能做复杂逻辑推理,却无法像人类一样精确操作我们每天依赖的专业软件。无论是 Blender 里的 3D 建模、GIMP 中的图像精修,还是 LibreOffice 的文档处理,AI 要么只能通过脆弱的截图点击勉强交互,要么只能调用残缺不全的第三方 API,不仅效率低下,软件一更新就彻底失效。

今天要介绍的CLI-Anything项目,正是为了解决这个行业痛点而生。它由香港大学数据科学学院(HKUDS)开源,能够为软件自动生成完整的原生命令行接口(CLI),让 AI Agent 通过标准化命令直接调用软件内核 API,保留 100% 的原生功能和性能。

一、项目核心定位

CLI-Anything 是一个软件 CLI 自动化生成框架,它的核心使命是让所有软件成为 AI Agent 原生工具。其工作原理可以用一句话概括:

给定任意软件的源代码仓库或本地安装路径 → 通过 7 阶段全自动流水线生成该软件的完整 Python Click CLI 程序(称为 "harness")→ AI Agent 通过标准化命令行接口直接控制真实软件执行任务

它不是 "自然语言转 Shell 命令" 的翻译工具,而是为软件本身生成专属 CLI 接口的基础设施。有了它,AI Agent 终于可以像人类专家一样,使用专业软件完成复杂的生产级任务。

二、为什么我们需要 CLI-Anything?

当前 AI Agent 与软件交互的主流方案存在三大致命缺陷:

  1. UI 自动化脆弱不堪:依赖截图识别和像素点击,软件界面稍有变化就会失效,维护成本极高
  2. API 覆盖严重不足:多数专业软件仅开放 10% 左右的核心功能,绝大多数高级特性无法通过 API 访问
  3. 定制开发成本高昂:为每个软件单独开发 Agent 接口需要大量人力物力,且难以跟上软件更新节奏

CLI-Anything 的解决方案直击痛点:

  • 直接对接原生后端:不做任何功能重实现,直接调用软件的原生渲染引擎和核心 API
  • 100% 功能覆盖:生成的 CLI 包含软件的所有可用功能,没有任何阉割
  • 零维护成本:软件更新后,只需重新运行一次生成命令即可获得最新的 CLI

三、核心特性

3.1 7 阶段全自动生成流水线

CLI-Anything 内置了经过2,269 个测试验证的标准化生成流程,无需人工干预即可完成从源码分析到 CLI 发布的全过程:

  1. 🔍 分析:扫描源代码或 API 文档,自动映射 GUI 操作到后端接口
  2. 📐 设计:智能架构命令组、状态模型和输出格式
  3. 🔨 实现:生成完整的 Click CLI,内置 REPL、JSON 输出和 undo/redo 功能
  4. 📋 测试规划:自动生成单元测试和端到端测试计划
  5. 🧪 测试编写:自动实现全面的测试套件
  6. 📝 文档生成:自动生成 AI 可识别的SKILL.md和人类可读的使用说明
  7. 📦 发布:生成setup.py并自动安装到系统 PATH

3.2 真实软件集成,零妥协

CLI-Anything 坚持一个核心原则:绝不重实现软件功能。所有生成的 CLI 都直接调用软件的原生后端:

  • LibreOffice 生成 PDF → 调用libreoffice --headless
  • Blender 渲染 3D 场景 → 调用bpy Python API
  • GIMP 处理图像 → 调用 GEGL/Script-Fu 接口
  • FFmpeg 处理视频 → 直接执行ffmpeg命令

这意味着生成的 CLI 与人类使用软件的效果完全一致,没有任何功能缺失或效果差异。

3.3 AI 原生设计

CLI-Anything 从一开始就为 AI Agent 优化:

  • 结构化输出:所有命令支持--json参数,输出标准 JSON 格式,无需复杂的文本解析
  • 自动技能发现:每个生成的 CLI 都包含SKILL.md文件,AI Agent 可以自动读取并理解其功能
  • 统一 REPL 界面:所有 CLI 共享相同的交互式界面,支持命令历史、状态管理和进度提示
  • 确定性执行:相同的输入总是产生相同的输出,让 Agent 的行为可预测、可调试

3.4 CLI-Hub:Agent 自主工具生态

CLI-Hub 是 CLI-Anything 的中央注册表,收录了社区贡献的所有 CLI harness。它提供了一个 meta-skill,让 AI Agent 能够:

  • 自动浏览所有可用的 CLI 工具
  • 根据任务需求选择最合适的工具
  • 一键安装所需的 CLI
  • 自动读取工具文档并使用

这意味着你只需要告诉 Agent 你想做什么,它会自己找到并使用正确的工具,无需你手动安装任何东西。

四、官方标准安装指南

4.1 前置条件

  • Python 3.10+
  • 目标软件已安装在本地
  • 已部署并运行支持的 AI Agent 平台(Claude Code、OpenClaw、Pi 等)
  • 源代码可访问:核心依赖
  • 开源或有API
  • 不能加壳,加壳=无法分析

4.2 各平台安装步骤

方式 1:Claude Code(官方推荐)

Claude Code 是 CLI-Anything 的首选平台,提供最完整的功能支持。

# 1. 添加CLI-Anything插件市场
/plugin marketplace add HKUDS/CLI-Anything

# 2. 安装CLI-Anything插件
/plugin install cli-anything

# 3. 验证安装
/help cli-anything

安装成功后,你会看到 CLI-Anything 的帮助信息,包含所有可用命令。

注意:Claude Code 在 Windows 上需要安装 Git for Windows(包含 bash 和 cygpath)或使用 WSL,否则可能出现cygpath: command not found错误。此限制仅针对 Claude Code 平台,OpenClaw 等其他平台不受影响。

方式 2:OpenClaw(社区支持)

OpenClaw 用户可以通过两种方式安装 CLI-Anything 技能:

方式 A:推荐标准方式(2026-04-18 更新)

# 直接通过npx安装官方技能(无需克隆仓库)
npx skills add HKUDS/CLI-Anything --skill cli-anything -g -y

方式 B:手动安装(适用于离线环境)

# 1. 克隆官方仓库
git clone https://github.com/HKUDS/CLI-Anything.git

# 2. 创建技能目录并复制最新的SKILL.md(2026-04-18后统一在顶层skills/目录)
mkdir -p ~/.openclaw/skills/cli-anything
cp CLI-Anything/skills/cli-anything/SKILL.md ~/.openclaw/skills/cli-anything/

# 3. 重启OpenClaw生效

重启后,OpenClaw 会自动发现并注册@cli-anything技能。

方式 3:Pi Coding Agent

# 1. 克隆仓库
git clone https://github.com/HKUDS/CLI-Anything.git
cd CLI-Anything

# 2. 运行全局安装脚本
bash .pi-extension/cli-anything/install.sh

# 3. 在Pi中执行/reload命令或重启Pi

4.3 核心命令大全

所有平台共享相同的核心命令集:

命令 功能描述
/cli-anything <path-or-repo> 生成指定软件的完整 CLI harness
/cli-anything:refine <path> [focus] 增量优化现有 CLI,扩展功能覆盖
/cli-anything:test <path-or-repo> 运行 CLI 的完整测试套件
/cli-anything:validate <path-or-repo> 验证 CLI 是否符合 HARNESS.md 标准

五、完整使用示例:让 AI 控制 GIMP 生成海报

下面我们以 GIMP 为例,展示如何使用 CLI-Anything 生成 CLI 并控制 GIMP 完成实际任务。

5.1 生成 GIMP 的 CLI

# 生成GIMP的CLI harness(替换为你的GIMP安装路径)
/cli-anything /Applications/GIMP.app

CLI-Anything 会自动执行 7 阶段生成流程,整个过程大约需要 2-5 分钟。生成完成后,你会看到生成成功的提示信息。

5.2 安装生成的 CLI

# 进入生成的harness目录
cd gimp/agent-harness

# 以开发模式安装到系统PATH
pip install -e .

# 验证安装
cli-anything-gimp --help

你会看到 GIMP CLI 的完整帮助信息,包含所有可用的命令组。

5.3 使用 CLI 控制 GIMP

基础命令用法

# 创建一个1920x1080的新项目
cli-anything-gimp project new --width 1920 --height 1080 -o poster.json

# 添加一个深蓝色背景层
cli-anything-gimp layer add -n "Background" --type solid --color "#1a1a2e"

# 添加标题文本
cli-anything-gimp text add -n "Title" --content "CLI-Anything" --font-size 72 --color "#ffffff" --x 960 --y 540

# 为文本添加高斯模糊效果
cli-anything-gimp filter blur --radius 2 --layer "Title"

# 导出为PNG图片
cli-anything-gimp export render poster.png --format png --overwrite

JSON 输出模式(AI 专用)

所有命令都支持--json参数,输出结构化数据供 AI Agent 解析:

cli-anything-gimp --json project info --project poster.json

输出示例:

{
  "name": "poster",
  "width": 1920,
  "height": 1080,
  "layers": 2,
  "modified": true,
  "last_saved": "2026-05-14T10:30:00Z"
}

交互式 REPL 模式

运行不带参数的命令进入交互式 REPL,适合复杂的多步骤操作:

cli-anything-gimp

REPL 界面示例:

╔══════════════════════════════════════════╗
║       cli-anything-gimp v1.0.0          ║
║     GIMP CLI for AI Agents              ║
╚══════════════════════════════════════════╝

gimp> project new --width 1080 --height 1920 -o phone-poster.json
✓ Created project: phone-poster.json

gimp[phone-poster]> layer add -n "Gradient" --type gradient --start "#ff6b6b" --end "#4ecdc4"
✓ Added layer: Gradient

gimp[phone-poster]> exit
Goodbye! 👋

六、OpenClaw + CLI-Anything:让 AI 自主控制专业软件

OpenClaw 是一个强大的本地 AI Agent 框架,与 CLI-Anything 结合后,可以实现AI 自主控制专业软件完成复杂任务的终极体验。

6.1 集成原理

CLI-Anything 为 OpenClaw 提供了原生的SKILL.md技能文件。OpenClaw 会自动解析该文件,注册@cli-anything技能,并理解其所有功能和用法。整个过程无需编写任何额外代码。

6.2 完整工作流示例

下面我们展示如何让 OpenClaw 自主使用 Blender 生成一个 3D 立方体并渲染成图片。

  1. 在 OpenClaw 中调用 CLI-Anything 生成 Blender CLIplaintext@cli-anything build a CLI for /Applications/Blender.app
  2. 等待生成完成OpenClaw 会自动执行生成流程,并在完成后安装 CLI 到系统。
  3. 让 OpenClaw 使用生成的 CLI 完成任务plaintext使用Blender创建一个边长为2的立方体,添加红色材质,设置相机位置在(5,5,5),渲染成1920x1080的PNG图片

OpenClaw 会自动:

  • 理解任务需求
  • 调用cli-anything-blender的相应命令
  • 执行创建立方体、添加材质、设置相机、渲染等一系列操作
  • 最终生成渲染好的图片

整个过程完全自主,无需任何人工干预。

6.3 进阶用法

增量优化 CLI

如果生成的 CLI 缺少某些功能,可以使用refine命令进行增量优化:

@cli-anything refine /Applications/Blender.app "添加动画关键帧和渲染动画的功能"

运行 CLI 测试

验证生成的 CLI 是否正常工作:

@cli-anything test /Applications/Blender.app

七、CLI-Hub:Agent 自主工具发现系统

CLI-Hub 是 CLI-Anything 生态的核心,它让 AI Agent 能够自主发现、安装和使用所需的工具,真正实现 "AI 自己找工具用"。

7.1 在 OpenClaw 中安装 CLI-Hub

openclaw skills install cli-anything-hub

7.2 魔法般的使用体验

安装 CLI-Hub 后,你只需要告诉 OpenClaw 你想做什么,剩下的一切都由它自己完成:

帮我创建一个HTTPS握手过程的流程图,导出为PNG图片

OpenClaw 会自动:

  1. 浏览 CLI-Hub 目录,发现cli-anything-drawio是最适合的工具
  2. 自动安装cli-anything-drawio
  3. 读取cli-anything-drawio的SKILL.md文档
  4. 使用 Draw.io CLI 创建流程图
  5. 导出为 PNG 图片并返回给你

无需你知道 Draw.io 是什么,也无需你手动安装任何东西,AI 会自己搞定一切。

八、支持的软件与平台

CLI-Anything 目前已经支持18 款经过严格测试的专业软件,覆盖 13 个领域:

领域 代表软件
创意设计 Blender、GIMP、Inkscape、Krita、Audacity
视频制作 Kdenlive、Shotcut、OBS Studio、Openscreen
办公软件 LibreOffice、Draw.io、Mermaid
AI 平台 Ollama、ComfyUI、NotebookLM、Dify
开发工具 LLDB、RenderDoc、Nsight Graphics、Unreal Insights
科学计算 FreeCAD、QGIS、UniMol Tools
网络工具 AdGuard Home、WireMock、Exa
游戏开发 Godot、s&box
知识管理 Zotero、Obsidian、Mubu
工作流 n8n、Mailchimp
浏览器 Safari、Chrome
音乐制作 MuseScore
UI 设计 Sketch

所有这些软件的 CLI 都已经过严格测试,2,269 个测试用例 100% 通过。

九、项目局限性与未来展望

9.1 当前局限性

  1. 依赖前沿大模型:CLI-Anything 需要 frontier models 才能生成高质量的 CLI,小模型可能产生错误代码
  2. 需要源码或 API 文档:对于仅提供二进制文件的闭源软件,生成质量会显著下降
  3. 可能需要多次迭代:单次生成可能无法覆盖所有功能,通常需要运行 1-2 次refine命令

9.2 未来路线图

  • 支持更多应用类别(CAD、DAW、IDE、EDA)
  • 推出 Agent 任务完成率基准测试套件
  • 支持闭源软件和 Web 服务的 CLI 生成
  • 集成更多 AI Agent 平台(Cursor、Windsurf)
  • 推出 CLI-Hub 企业版,支持内部私有软件仓库

十、CLI-Anything 不适用的领域

尽管 CLI-Anything 在专业软件自动化领域表现出色,但它并非万能工具。

CLI-Anything 面向开源软件,对闭源加壳商业软件完全不适用。请勿将其理解为"任意软件均可CLI化"的通用工具。

受限于技术原理和行业规范,它在以下领域无法发挥作用,建议选择对应的替代方案:

领域 不适用原因 替代方案
证券交易软件 闭源加壳 + 私有协议,且证监会明确禁止未经授权的程序化交易 券商官方条件单功能
银行类软件 高强度安全加固 + 多因素认证,无法绕过安全机制 银行官方 App 及网银
强认证类软件 依赖 U 盾、硬件密钥或生物识别验证,无法自动化完成 无通用替代方案
移动端 App 绝大多数无公开源码和 API,且移动端 CLI 生态不完善 Peekaboo3 (macOS 模拟器)
闭源 OA/ERP 仅提供 GUI 界面,无公开 API 和源码 Peekaboo3 UI 自动化

十一、CLI-Anything vs Peekaboo3:互补而非竞争

在 AI 自动化工具生态中,CLI-Anything 和 Peekaboo3 常常被拿来比较,但实际上它们定位完全不同,解决的是不同场景下的问题,两者形成了完美的互补关系,共同构建了从专业软件到通用桌面的全场景 AI 自动化能力。

11.1 Peekaboo3 简介

Peekaboo3 是一款专为 macOS 设计的系统级 UI 自动化工具,能够通过像素级识别和辅助功能 API 控制任意 macOS 应用。它无需目标软件提供 API 或源码,即可模拟人类的鼠标点击、键盘输入和窗口操作,实现对任何 GUI 应用的自动化控制。

目前 Peekaboo 3.1.2 版本已完成安装验证,屏幕录制权限、辅助功能权限均已配置完成,UI 元素检测功能运行正常。

11.2 核心维度对比

对比维度 Peekaboo3 CLI-Anything
核心定位 macOS 系统级 UI 自动化 专业软件 CLI 生成框架
支持平台 仅 macOS 跨平台 (Win/mac/Linux)
应用范围 所有 macOS 桌面应用 18 款经过验证的专业软件
操作方式 像素级 UI 模拟 + AX API 命令级原生 API 调用
操作精度 依赖 UI 元素识别准确率 100% 精确(调用内核)
学习成本 极低(自然语言驱动) 中等(需理解 CLI 概念)
稳定性 受软件 UI 更新影响较大 极高(不受界面影响)
适合场景 通用办公、电商后台、ERP 3D 建模、图像编辑、视频渲染

11.3 互补关系与最佳实践

两者并非竞争关系,而是可以形成 "精确执行 + 全局验证" 的完整自动化闭环:

  • CLI-Anything 负责核心专业任务:对于 Blender、GIMP、CAD 等提供 API 或源码的专业软件,使用 CLI-Anything 生成的 CLI 进行精确控制,确保操作的准确性和稳定性
  • Peekaboo3 负责通用 UI 操作:对于没有 API 的电商后台(京东 / 淘宝 / 拼多多)、飞书办公、聚水潭 ERP 等系统,使用 Peekaboo3 进行 UI 自动化操作
  • 闭环验证:CLI-Anything 生成的结果可以通过 Peekaboo3 打开对应的软件进行可视化验证,确保输出符合预期

11.4 电商运营团队优先级建议

结合电商运营的实际工作场景,两款工具的优先级如下:

优先级 工具 核心理由
⭐⭐⭐ 必装 Peekaboo3 电商运营 90% 以上日常工作依赖 GUI 操作:飞书消息处理、主流后台订单管理、聚水潭 ERP 库存同步、报表导出等。场景无统一 API,Peekaboo3 是唯一可行方案。
⭐⭐ 推荐 CLI-Anything 仅在涉及医疗器械 CAD 设计、批量图像编辑、视频渲染等专业软件操作时使用。对于标准电商运营流程,CLI-Anything 的使用场景相对有限。
⚠️ 谨慎使用 CLI-Hub CLI-Hub 依赖 frontier models 生成 CLI,质量不稳定且可能存在安全风险。建议仅在有明确需求且经过充分测试的场景下使用。

十二、总结

CLI-Anything 是 AI Agent 领域的一次有意义的探索,它为开源软件提供了将 GUI 操作转化为标准化 CLI 接口的自动化方案,让 AI Agent 能够通过命令行精确控制专业软件执行复杂任务。

而 Peekaboo3 则填补了通用 GUI 应用自动化的空白,让 AI 能够像人类一样操作任何桌面软件。两者结合,形成了覆盖从通用办公到专业生产的全场景 AI 自动化能力。

对于电商运营团队来说,Peekaboo3 是提升日常工作效率的刚需工具,能够自动化处理大量重复的 GUI 操作;CLI-Anything 则是应对专业软件场景的有力补充。合理搭配使用这两款工具,可以构建起完整的 AI 自动化工作流,大幅提升团队的整体效率。

如果你是 AI Agent 开发者,或者想让 AI 帮你完成更多实际工作,强烈推荐你尝试这两款工具。你可以访问 CLI-Anything 的 GitHub 仓库获取更多信息:https://github.com/HKUDS/CLI-Anything

让我们一起迎接 AI 自动化的新时代!

阅读量: 286