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

CLI-Anything

一、项目概述

CLI-Anything 是由香港大学数据科学实验室(HKUDS)开发的开源项目,核心目标是让所有软件都能被AI Agent原生调用。项目口号:“Today’s Software Serves Humans 👨‍💻. Tomorrow’s Users will be Agents 🤖”

项目指标数值
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标志,标准--helpwhich命令发现能力
零妥协依赖真实软件是硬性要求,缺失时测试失败而非跳过

四、已验证的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
# 安装到PATHcd gimp/agent-harness && pip install-e.# 查看帮助 cli-anything-gimp --help# 创建项目 cli-anything-gimp project new --width1920--height1080-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生成

Read more

10分钟零代码!用OpenClaw搭建私人微信AI助理,彻底解放双手

10分钟零代码!用OpenClaw搭建私人微信AI助理,彻底解放双手

做了这么久AI应用落地,我被问得最多的问题就是:“能不能给我的微信整个AI助理,自动回消息、管日程、汇总群聊?” 说实话,这个需求我自己折腾了快两年,踩过的坑能绕开三圈: * 最早用itchat、wechaty写Python脚本,代码写了几百行,调试了半个月,结果用了不到3天,微信直接限制登录,差点把主号搞封了; * 后来用企业微信机器人,只能在企业群里用,个人微信、私域群完全用不了,局限性拉满; * 再后来试了市面上的第三方SaaS工具,要么是按月付费贵得离谱,要么是所有聊天数据都要传到人家服务器,客户信息、私人聊天全泄露了,根本不敢用; * 最头疼的是,所有方案都要写代码、调接口、搭环境,新手根本无从下手,就算是开发者,也要折腾好几天才能跑通。 直到我把OpenClaw部署落地后,这个问题被彻底解决了。不用写一行代码,不用研究微信协议,不用申请任何企业资质,10分钟就能搭好一个完全私有化的微信AI助理,消息自动回复、群聊汇总、日程提醒、待办管理全搞定,而且数据全在本地,大模型可以接本地开源的,完全不用担心隐私泄露,封号风险也降到了最低。 这篇文章,我就用保姆级的步骤

AI的提示词专栏:Gemini Pro Prompt 的最佳实践

AI的提示词专栏:Gemini Pro Prompt 的最佳实践

AI的提示词专栏:Claude-2 Prompt 编写细节 本文围绕 Gemini Pro 模型的 Prompt 设计展开,先介绍其多模态输入支持、动态上下文窗口等核心特性,对比其与 ChatGPT-4、Claude-2 在 Prompt 设计上的差异;接着阐述 “模态标识 + 核心指令 + 参数约束 + 示例引导” 的基础结构及不同任务的规范模板;然后详解多模态场景下的 Prompt 设计技巧,给出长文本与复杂任务的优化策略,还结合市场营销、软件开发、医疗健康行业展示实战案例;最后分析常见问题及解决方案,并指出后续优化方向,为用户高效设计 Gemini Pro Prompt 提供全面指导。 人工智能专栏介绍     人工智能学习合集专栏是 AI 学习者的实用工具。它像一个全面的 AI 知识库,把提示词设计、AI 创作、智能绘图等多个细分领域的知识整合起来。无论你是刚接触

当AI把用户数据当“食材“:初级开发者如何成为创意“主厨“

当AI把用户数据当“食材“:初级开发者如何成为创意“主厨“

前言:哈喽,大家好,今天给大家分享一篇文章!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏+关注哦 💕 目录 * 当AI把用户数据当"食材":初级开发者如何成为创意"主厨" * 📚 一、AI的"标准化厨房"如何运作 * 📘1. 数据食材的预处理 * 📘2. 模式识别的"味觉分析" * 📚 二、人类创意的"主厨艺术" * 📘1. 创意烹饪的本质差异 * 📘2. 案例品鉴:推荐系统的美食版 * 📚 三、从切菜工到主厨的升级之路 * 📘1. 创意厨艺训练计划 * 📘2. 主厨工具包 * 📚 四、人机协作的创意厨房

AI Agent 智能体开发入门:AutoGen 多智能体协作实战教程

AI Agent 智能体开发入门:AutoGen 多智能体协作实战教程

本文通过 AutoGen 框架,从单智能体到多智能体协作,循序渐进地讲解如何构建 AI Agent 系统,包含完整的代码示例和架构设计。 1. 多智能体协作架构 通过 需修改 测试失败 测试通过 用户输入 编排者 Agent GroupChat Manager 规划 Agent 分解任务 编码 Agent 编写代码 审查 Agent 代码审查 测试 Agent 执行测试 总结 Agent 汇总报告 2. AutoGen 核心概念 45%25%20%10%AutoGen Agent 类型使用分布AssistantAgent (LLM 驱动)UserProxyAgent (人工介入)GroupChat