CLI-Anything:一条命令把任意软件变成 AI Agent 原生工具

项目背景

由香港大学数据科学实验室(HKUDS)开源的 CLI-Anything 项目,以 Claude Code 插件形式分发,旨在解决当前 AI Agent 在调用专业桌面软件时面临的瓶颈问题。

解决的问题

传统 GUI Agent(截图+模拟点击)方案存在以下问题:

  • 识别不稳定
  • UI变动即失效
  • 延迟大
  • 容错率低

CLI-Anything 通过自动化为无 CLI 的 GUI 软件生成完整的命令行接口,使 Agent 能以结构化、可组合、自描述的终端命令直接操控真实软件,打通"工具调用"瓶颈。

技术原理

为何选择 CLI 而非 API/MCP

  • Token 开销更低(无需持久加载 JSON Schema,实测同任务 token 消耗降低约 40%)
  • 自描述性强(--help 即可获取完整功能说明,无需额外文档)
  • 执行确定性高(同命令同参数结果一致,利于 Agent 决策)
  • 通用性强(不依赖特定语言/框架/网络,跨平台支持)

核心设计哲学:零妥协真实调用

  • 生成的 CLI 直接操作真实项目文件格式(如 ODF、.blend、MLT XML 等),非简化替代品
  • 依赖真实软件执行:通过调用目标软件的无头模式/原生 CLI 进行渲染导出
  • 严格验证机制:不信任进程退出码,通过检查魔数字节、文件结构(如 ZIP/OOXML)、像素分析、音频 RMS 电平等多维度验证输出正确性

7阶段自动化流水线详解

CLI-Anything 采用全自动化的 7 阶段流水线,全程无需人工介入:

1. 分析(Analyze)

扫描目标软件源码,识别 GUI 操作对应的底层 API/函数(如 GIMP 的 Python-Fu、Blender 的 bpy 模块),建立"用户操作→程序接口"映射表。

2. 设计(Design)

规划 CLI 架构,包括命令分组逻辑、跨命令状态模型(项目文件传递)、输出格式规范(JSON 供 Agent 解析,表格供人类调试)。

3. 实现(Implement)

基于 Python Click 库自动生成 CLI 代码。内置 REPL 交互模式、JSON 结构化输出、撤销/重做功能。

4. 测试规划(Plan Tests)

自动生成 TEST.md,列出需覆盖的单元测试与端到端(E2E)测试用例。

5. 编写测试(Write Tests)

自动实现完整测试套件,验证 CLI 命令及真实软件输出(如 PDF 可打开、渲染图含像素、音频含波形)。

6. 文档(Document)

更新测试文档,记录执行结果与覆盖率。

7. 发布(Publish)

自动生成 setup.py,支持 pip install -e . 安装至系统 PATH,Agent 可通过 which 命令自动发现。

支持的软件列表

已验证的 9 款软件:

软件名称 领域 说明
GIMP 图像编辑 开源版 Photoshop
Blender 3D 建模与渲染 业界知名 3D 创作套件
Inkscape 矢量图形 开源版 Illustrator
LibreOffice 办公套件 文档/表格/演示文稿等
Audacity 音频处理 经典音频编辑工具
OBS Studio 直播推流 主流直播与录屏软件
Shotcut 视频编辑 开源视频剪辑工具
Kdenlive 视频编辑 KDE 生态视频剪辑工具
draw.io/diagrams.net 图表绘制 流程图与架构图工具

测试数据

9 款软件累计生成超过 1400 项测试(含单元测试与 E2E 测试),全部通过,达到生产级可靠性。

使用教程

环境准备

  • 支持插件的 Claude Code
  • Python 3.10+
  • 已安装目标软件

添加插件市场

bash 复制代码
/plugin marketplace add HKUDS/CLI-Anything

安装插件

bash 复制代码
/plugin install cli-anything

生成 CLI

本地源码:

bash 复制代码
/cli-anything ./gimp

GitHub 仓库:

bash 复制代码
/cli-anything https://github.com/blender/blender

安装与使用

bash 复制代码
cd gimp/
pip install -e .

总结

CLI-Anything 项目通过创新的 7 阶段自动化流水线,成功解决了 AI Agent 调用专业桌面软件的难题。其核心优势在于:

  • 零妥协的真实调用,直接操作真实文件格式
  • 全自动化的 CLI 生成流程,无需人工介入
  • 严格的验证机制确保输出正确性
  • 支持 9 款主流专业软件,覆盖图像、3D、办公、音视频等多个领域

该项目为 AI Agent 与专业软件的交互提供了全新的解决方案,值得开发者关注和学习。

相关推荐
火山引擎开发者社区5 小时前
技术速递|使用 GitHub Copilot CLI 构建 Emoji 列表生成器
人工智能
codefan※6 小时前
干掉“幻觉“实战:如何构建企业级知识图谱增强 RAG
人工智能·知识图谱
wukangjupingbb6 小时前
传统基于药物 SMILES 序列和蛋白质氨基酸序列的 DTI(Drug-Target Interaction)预测方法的缺陷
人工智能
沪漂阿龙6 小时前
Codex 额度重置周期变化:AI 编程免费试玩时代正在结束
人工智能
TickDB6 小时前
美股行情 API 接入避坑:REST 快照、WebSocket 推送、盘前盘后数据的边界
人工智能·python·websocket·行情数据 api
装不满的克莱因瓶6 小时前
深入理解卷积神经网络(CNN)——从原理到代码实践
人工智能·神经网络·cnn
完成大叔7 小时前
模块二,Agent知识图谱的工具链思考
人工智能
lauo7 小时前
ibbot手机发布:搭载poplang技术 + token节点经济,革新AI手机体验
人工智能·智能手机
咖啡星人k7 小时前
云端开发环境技术架构深度解析:从容器隔离到AI Agent集成
人工智能·架构
袋鼠云数栈7 小时前
从前端到基础设施,ACOS 如何打通企业全链路可观测
运维·前端·人工智能·数据治理·数据智能