跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客我的书AI学习GitHub 精选镜像AI 生图工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
PythonAI

CLI-Anything:让所有软件都能被 AI Agent 原生调用

CLI-Anything 项目致力于通过命令行界面(CLI)实现所有软件对 AI Agent 的原生调用。其核心思路是利用 CLI 作为通用接口,替代脆弱的 UI 自动化,提供结构化且可组合的命令集。项目采用七阶段全自动流水线构建 CLI,已验证支持 GIMP、Blender、OBS Studio 等 9 个生产级软件,测试覆盖率达 100%。使用方式涵盖通过插件一键生成或手动安装,强调真实软件后端调用以确保渲染一致性。该方案消除了 Agent 解析复杂性,降低了集成成本,推动软件生态向 Agent 优先设计转变。

孤勇者发布于 2026/4/8更新于 2026/9/557 浏览
一、项目概述

CLI-Anything 是由香港大学数据科学实验室(HKUDS)开发的开源项目,核心目标是让所有软件都能被 AI Agent 原生调用。

项目指标数值
Stars1.1k
Forks110
Watchers7
主要语言Python (99.7%)
测试通过率100% (1,436 tests)

二、核心问题与解决方案
2.1 现有痛点
痛点具体表现
AI 无法使用真实工具现有方案要么是脆弱的 UI 自动化,要么是功能阉割的重新实现
UI 自动化不可靠截图、点击、RPA 等方式容易崩溃
Agent 需要结构化数据缺乏标准化的输出格式
定制集成成本高每个软件都需要单独开发接口
原型与生产差距大缺乏真实软件验证
2.2 CLI-Anything 的解决思路

核心洞察:CLI(命令行界面)是人类和 AI Agent 的通用接口

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

三、技术架构
3.1 七阶段全自动流水线
/cli-anything <software-path-or-repo>
↓
1. 🔍 Analyze(分析)— 扫描源代码,映射 GUI 动作到 API
2. 📐 Design(设计)— 架构命令组、状态模型、输出格式
3. 🔨 Implement(实现)— 构建 Click CLI,含 REPL、JSON 输出、撤销/重做
4. 📋 Plan Tests(规划测试)— 创建 TEST.md,含单元测试+E2E 测试计划
5. 🧪 Write Tests(编写测试)— 实现全面测试套件
6. 📝 Document(文档)— 更新 TEST.md 结果
7. 📦 Publish(发布)— 创建 setup.py,安装到 PATH
3.2 核心设计原则
原则说明
真实软件集成CLI 必须调用实际应用进行渲染,不是替代而是封装
灵活交互模式有状态 REPL + 子命令接口,裸命令进入 REPL 模式
一致用户体验统一 REPL 界面(repl_skin.py),品牌横幅、样式提示、命令历史
Agent 原生设计内置 --json 标志,标准 --help 和 which 命令发现能力
零妥协依赖真实软件是硬性要求,缺失时测试失败而非跳过

四、已验证的 9 个生产级 CLI
软件领域CLI 命令后端技术测试数
🎨 GIMP图像编辑cli-anything-gimpPillow + GEGL/Script-Fu107
🧊 Blender3D 建模与渲染cli-anything-blenderbpy (Python 脚本)208
✏️ Inkscape矢量图形cli-anything-inkscape直接 SVG/XML 操作202
🎵 Audacity音频制作cli-anything-audacityPython wave + sox161
📄 LibreOffice办公套件cli-anything-libreofficeODF 生成 + 无头 LO158
📹 OBS Studio直播与录制cli-anything-obs-studioJSON 场景 + obs-websocket153
🎞️ Kdenlive视频编辑cli-anything-kdenliveMLT XML + melt 渲染器155
🎬 Shotcut视频编辑cli-anything-shotcut直接 MLT XML + melt154
📐 Draw.io图表绘制cli-anything-drawiomxGraph XML + draw.io CLI138
总计1,436

测试构成:1,011 单元测试 + 425 E2E 测试,100% 通过率


五、使用方式
5.1 快速开始(Claude Code 插件)
# 添加市场 /plugin marketplace add HKUDS/CLI-Anything
# 安装插件 /plugin install cli-anything
# 一键生成 CLI(以 GIMP 为例) /cli-anything ./gimp 
5.2 手动安装
git clone https://github.com/HKUDS/CLI-Anything.git
cp-r CLI-Anything/cli-anything-plugin ~/.claude/plugins/cli-anything
/reload-plugins
5.3 使用生成的 CLI
# 安装到 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 模式(供 Agent 使用) cli-anything-gimp --json layer add -n "Background" --type solid --color "#1a1a2e"
# 进入交互式 REPL cli-anything-gimp

六、插件命令集
命令功能
/cli-anything <path-or-repo>完整构建 CLI(全部 7 阶段)
/cli-anything:refine <path> [focus]优化现有 CLI,扩展覆盖范围
/cli-anything:test <path-or-repo>运行测试并更新 TEST.md
/cli-anything:validate <path-or-repo>按 HARNESS.md 标准验证

七、项目结构
cli-anything/
├── 📄 README.md / README_CN.md # 中英文档
├── 📁 assets/ # 图标、演示图
├── 🔌 cli-anything-plugin/ # Claude Code 插件
│   ├── HARNESS.md # 方法论 SOP(核心文档)
│   ├── QUICKSTART.md # 5 分钟快速开始
│   ├── PUBLISHING.md # 发布指南
│   ├── repl_skin.py # 统一 REPL 界面
│   └── commands/ # 插件命令定义
│       ├── cli-anything.md
│       ├── refine.md
│       ├── test.md
│       └── validate.md
├── 🎨 gimp/agent-harness/
├── 🧊 blender/agent-harness/
├── ✏️ inkscape/agent-harness/
├── 🎵 audacity/agent-harness/
├── 📄 libreoffice/agent-harness/
├── 📹 obs-studio/agent-harness/
├── 🎞️ kdenlive/agent-harness/
├── 🎬 shotcut/agent-harness/
└── 📐 drawio/agent-harness/

每个 agent-harness/ 包含:

  • 可安装的 Python 包(cli_anything.<software>/)
  • Click CLI 实现
  • 核心模块
  • 工具(含 repl_skin.py 和后端包装器)
  • 全面测试

八、关键方法论:HARNESS.md

HARNESS.md 是项目的标准操作程序(SOP),编码了通过自动化生成流程提炼的成熟模式。

关键经验教训
教训详细说明
使用真实软件CLI 必须调用实际应用渲染,不能用 Pillow 替代 GIMP,不能用自定义渲染器替代 Blender
渲染差距问题GUI 应用在渲染时才应用效果,若 CLI 操作项目文件但使用简单导出工具,效果会被静默丢弃
滤镜转换MLT→ffmpeg 等格式映射时注意:重复滤镜合并、交错流排序、参数空间差异、不可映射效果
时间码精度非整数帧率(29.97fps)导致累积舍入,用 round() 而非 int(),显示用整数运算,测试容差±1 帧
输出验证不能因退出码 0 就信任导出成功,需验证:magic bytes、ZIP/OOXML 结构、像素分析、音频 RMS 电平、时长检查

九、应用场景分类
类别如何 Agent 化典型示例
📂 GitHub 仓库自动 CLI 生成将任何开源项目转为 Agent 可控工具VSCodium, WordPress, Calibre, Zotero, Joplin
🤖 AI/ML 平台结构化命令自动化模型训练、推理流程、超参调优Stable Diffusion, ComfyUI, InvokeAI, Fooocus
📊 数据分析程序化数据处理、可视化、统计分析工作流JupyterLab, Superset, Metabase, DBeaver
💻 开发工具命令接口简化代码编辑、构建、测试、部署Jenkins, Gitea, Portainer, SonarQube
🎨 创意媒体程序化控制内容创作、编辑、渲染工作流Blender, GIMP, OBS, Krita, Kdenlive
🔬 科学计算自动化研究工作流、仿真、复杂计算ImageJ, FreeCAD, QGIS, ParaView, KiCad
🏢 企业办公将业务应用和生产力工具转为 Agent 可访问系统NextCloud, GitLab, Grafana, LibreOffice, ERPNext
📐 图表可视化程序化创建和操作图表、流程图、架构图Draw.io, Mermaid, PlantUML, Excalidraw
✨ AI 内容生成通过 AI 云 API 生成专业交付物(幻灯片、文档、图表)AnyGen, Gamma, Beautiful.ai, Tome

十、愿景与路线图
10.1 核心愿景
  • 🌐 通用访问 — 每个软件都通过结构化 CLI 即时 Agent 可控
  • 🔗 无缝集成 — Agent 无需 API、GUI、重建或复杂包装器即可控制任何应用
  • 🚀 未来就绪生态 — 一条命令将人类设计的软件转为 Agent 原生工具
10.2 路线图
  • 支持更多应用类别(CAD、DAW、IDE、EDA、科学工具)
  • Agent 任务完成率基准测试套件
  • 社区贡献的内部/定制软件 CLI
  • 与 Claude Code 之外的更多 Agent 框架集成
  • 支持将闭源软件和 Web 服务的 API 打包为 CLI
  • 生成 SKILL.md 供 Agent 技能发现和编排

十一、核心洞察总结
  1. CLI 是 Agent 时代的通用语言 — 不是替代 GUI,而是为 Agent 提供结构化接口
  2. 真实软件调用是关键 — 生成有效项目文件→调用真实后端,拒绝玩具实现
  3. 测试即文档 — 1,436 个测试不仅是质量保证,更是功能规格说明
  4. 方法论可复现 — HARNESS.md 将经验编码为可执行的标准
  5. 插件化降低门槛 — 通过 Claude Code 插件市场实现一键 CLI 生成

目录

  1. 一、项目概述
  2. 二、核心问题与解决方案
  3. 2.1 现有痛点
  4. 2.2 CLI-Anything 的解决思路
  5. 三、技术架构
  6. 3.1 七阶段全自动流水线
  7. 3.2 核心设计原则
  8. 四、已验证的 9 个生产级 CLI
  9. 五、使用方式
  10. 5.1 快速开始(Claude Code 插件)
  11. 添加市场 /plugin marketplace add HKUDS/CLI-Anything
  12. 安装插件 /plugin install cli-anything
  13. 一键生成 CLI(以 GIMP 为例) /cli-anything ./gimp
  14. 5.2 手动安装
  15. 5.3 使用生成的 CLI
  16. 安装到 PATH
  17. 查看帮助 cli-anything-gimp --help
  18. 创建项目 cli-anything-gimp project new --width 1920 --height 1080 -o poster.json
  19. JSON 模式(供 Agent 使用) cli-anything-gimp --json layer add -n "Background" --type solid --color "#1a1a2e"
  20. 进入交互式 REPL cli-anything-gimp
  21. 六、插件命令集
  22. 七、项目结构
  23. 八、关键方法论:HARNESS.md
  24. 关键经验教训
  25. 九、应用场景分类
  26. 十、愿景与路线图
  27. 10.1 核心愿景
  28. 10.2 路线图
  29. 十一、核心洞察总结

更多推荐文章

查看全部
  • AMR 机器人:如何满足现代物料搬运需求
  • Python 开发常用命令行命令大全
  • Python 网络爬虫基础教程:豆瓣电影 Top250 数据抓取实战
  • Android 主流三方库源码分析:EventBus
  • Coze 工作流实战:将文章链接转为思维导图
  • Llama-2-7b 在昇腾 NPU 上的六大核心场景性能基准测试
  • C++ 万能头文件 #include<bits/stdc++.h> 详解
  • IDA Pro 远程调试指南:gdbserver 与 armlinux_server 实战
  • AIGC 赋能元宇宙:虚拟人物创作与智能交互技术
  • Windows 和 Mac 系统 Docker Desktop 安装与镜像源加速配置
  • Llama-Factory 能否用于训练意图识别分类器?
  • IDEA AI 编程插件实测对比:Copilot、灵码与 TRAE
  • Windows 系统 Docker Desktop 下载、安装及启动故障解决方案
  • SpringBoot 整合 LangChain4j:系统提示词与用户提示词实战
  • Spring Web 模块核心概念与基础架构解析
  • GitHub 十大 Claude Skills 推荐与效率提升指南
  • 2024 年中国行业大模型市场报告:规模增长、落地路径与发展趋势
  • 前端异常捕获与统一格式化:从 console.log(error) 到服务端上报
  • N8N 结合 Claude Code 实现 AI 智能体自动化编排
  • AI 产品经理核心能力:技术模型与三大知识体系

相关免费在线工具

  • RSA密钥对生成器

    生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

  • Mermaid 预览与可视化编辑

    基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

  • 随机西班牙地址生成器

    随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

  • curl 转代码

    解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online