CLI-Anything:让所有软件都能被 AI Agent 控制

CLI-Anything:让所有软件都能被 AI Agent 控制

今天的软件是为人类设计的 👨‍💻,明天的用户将是 AI Agent 🤖。CLI-Anything 是香港大学数据智能实验室(HKUDS)推出的开源项目,它能让任何图形软件通过一个命令行变成 Agent 可控制的工具,无需 API、无需重构、无需复杂封装。

一、核心问题:AI Agent 无法使用真正的软件

AI Agent 擅长推理,但无法使用真正的专业软件。当前的解决方案存在严重问题:

痛点 CLI-Anything 解决方案
AI 无法使用真正工具 直接集成软件后端(Blender、LibreOffice、FFmpeg),完整功能无妥协
UI 自动化经常崩溃 无截图、无点击、无 RPA 脆弱性,纯命令行可靠性
Agent 需要结构化数据 内置 JSON 输出,无缝 Agent 消费 + 人类可读格式调试
自定义集成成本高 一个 Claude 插件自动生成任何代码库的 CLI
原型与生产差距大 1839+ 测试,16 个主要应用实战验证

二、CLI-Anything 是什么?

一句话:把任何软件变成 Agent 可控制的工具,只需一个命令。

核心能力

  • 自动分析 — 扫描源代码,映射 GUI 操作到 API
  • 架构设计 — 设计命令组、状态模型、输出格式
  • CLI 实现 — 生成 Click CLI,支持 REPL、JSON 输出、撤销重做
  • 测试生成 — 单元测试 + 端到端测试
  • 一键发布 — 创建 setup.py,安装到 PATH

三、支持的 AI 平台

CLI-Anything 原生支持多个 AI 编码平台:

平台 状态 安装方式
Claude Code ✅ 完整支持 插件市场安装
OpenClaw ✅ 社区支持 SKILL.md 技能文件
OpenCode ⚡ 实验性 命令文件 + HARNESS.md
Codex ⚡ 实验性 技能文件安装脚本
Qodercli ✅ 社区支持 插件注册脚本
Goose ⚡ 实验性 通过 CLI 提供商
Cursor / Windsurf 🔮 即将支持 开发中

四、快速开始(以 OpenClaw 为例)

安装

# 克隆仓库
git clone https://github.com/HKUDS/CLI-Anything.git
# 安装到 OpenClaw 技能目录
mkdir -p ~/.openclaw/skills/cli-anything
cp CLI-Anything/openclaw-skill/SKILL.md ~/.openclaw/skills/cli-anything/SKILL.md

使用

安装后,在 OpenClaw 中使用:

示例命令:

@cli-anything build a CLI for ./gimp

五、7 阶段生成流程

CLI-Anything 采用 7 阶段自动化流程:

  1. 🔍 分析 — 扫描源代码,映射 GUI 操作到 API
  2. 📐 设计 — 设计命令组、状态模型、输出格式
  3. 🔨 实现 — 构建 Click CLI,支持 REPL、JSON 输出、撤销重做
  4. 📋 规划测试 — 创建 TEST.md,规划单元测试和端到端测试
  5. 🧪 编写测试 — 实现完整测试套件
  6. 📝 文档 — 更新 TEST.md 记录测试结果
  7. 📦 发布 — 创建 setup.py,安装到 PATH

六、支持的应用类型

CLI-Anything 已在 16 个复杂应用上测试通过:

🎨 创意与媒体

  • Blender(3D 建模)
  • GIMP(图像编辑)
  • OBS Studio(直播)
  • Audacity(音频)
  • Krita(绘画)
  • Kdenlive(视频)
  • Shotcut(视频)

📊 数据与分析

  • JupyterLab
  • Apache Superset
  • Metabase
  • DBeaver
  • KNIME
  • Orange

🤖 AI/ML 平台

  • Stable Diffusion WebUI
  • ComfyUI
  • Ollama
  • InvokeAI
  • Open WebUI
  • SillyTavern

🏢 企业与办公

  • LibreOffice
  • NextCloud
  • GitLab
  • Grafana
  • Mattermost
  • Zoom

七、生成的 CLI 如何使用?

生成的 CLI 可以独立使用,不依赖特定 AI 平台:

# 安装到 PATH
cd gimp/agent-harness && pip install -e .
# 使用帮助
cli-anything-gimp --help
# 创建项目
cli-anything-gimp project new --width 1920 --height 1080 -o poster.json
# 添加图层(JSON 输出)
cli-anything-gimp --json layer add -n "Background" --type solid --color "#1a1a2e"
# 进入交互式 REPL
cli-anything-gimp

八、SKILL.md 自动生成

每个生成的 CLI 都包含一个 SKILL.md 文件,让 AI Agent 能够自动发现和使用:

SKILL.md 包含:

  • YAML 前言 — 名称和描述,用于 Agent 技能发现
  • 命令组 — 所有可用子命令文档
  • 使用示例 — 常见工作流程示例
  • Agent 指南 — JSON 输出、错误处理、程序化使用指南

九、CLI-Hub:社区 CLI 注册中心

CLI-Anything 提供了一个中心化的 CLI 注册中心:

  • 浏览 — 在 CLI-Hub 浏览所有社区 CLI
  • 安装 — 一个 pip 命令安装任何 CLI
  • 贡献 — 通过 PR 添加新 CLI,Hub 自动更新
  • 发现 — 所有生成的 CLI 都在 cli_anything.* 命名空间下

十、测试覆盖

  • 1,839+ 测试 — 全面覆盖
  • 单元测试 — 合成数据测试
  • 端到端测试 — 真实文件和软件测试
  • CLI 子进程验证 — 安装命令验证

十一、为什么选择 CLI?

CLI 是人类和 AI Agent 的通用接口:

特性 优势
结构化与可组合 文本命令匹配 LLM 格式,可链式组合复杂工作流
轻量与通用 最小开销,跨所有系统无依赖
自描述 --help 提供自动文档,Agent 可发现
已验证成功 Claude Code 每天通过 CLI 运行数千个真实工作流
Agent 优先设计 结构化 JSON 输出消除解析复杂性
确定性与可靠性 一致的结果使 Agent 行为可预测

十二、适用场景

✅ 推荐场景

  • 开源软件自动化 — GitHub 上的任何开源项目
  • AI Agent 工具链 — 让 Agent 控制专业软件
  • 批量处理工作流 — 图像、视频、音频批量处理
  • 开发工具集成 — IDE、测试、部署自动化
  • 企业应用自动化 — LibreOffice、NextCloud 等办公软件

❌ 不适用场景

  • 纯 SaaS 服务 — 需要 API 封装,不是 CLI 封装
  • 需要 GUI 交互的应用 — 只能封装 CLI 可访问的功能
  • 没有源码的软件 — 需要开源软件或有 SDK 的软件
  • 实时协作工具 — 如 Figma、Notion 等

十三、总结

CLI-Anything 核心价值

  • 一键转换 — 一个命令把任何软件变成 Agent 工具
  • 完整功能 — 不妥协,保留软件全部能力
  • 结构化输出 — JSON 格式让 Agent 轻松消费
  • 跨平台支持 — 支持 Claude Code、OpenClaw、Codex 等
  • 自动测试 — 1839+ 测试确保质量
  • 社区生态 — CLI-Hub 持续增长的 CLI 库

十四、资源链接


本文发布于 2026-03-20,项目处于活跃开发状态,信息可能随时间变化,请以官方文档为准。

评论

此博客中的热门博文

OpenClaw 救援机器人建设与演进全记录 - 从单点故障到双实例自愈体系

Lossless Claw:无损上下文管理插件分析报告

[Hello-Agents] Day 2: 第一章 初识智能体