乐于分享
好东西不私藏

CLI-Anything:让所有软件都能被AI操控了

CLI-Anything:让所有软件都能被AI操控了

你有没有想过这个问题。

现在的 AI 已经很强了。写代码、分析数据、翻译文章,什么都能干。

但你让它操控一个具体的专业软件,就不行了。

让 AI 用 Blender 建模?让 AI 用 GIMP 修图?让 AI 用 Audacity 剪辑音频?

目前的答案大多是——做不到,或者做得很烂。

为什么?

因为这些软件都是为人类设计的。界面、按钮、菜单、快捷键,一切都是给人类的手指和眼睛准备的。AI 没有手指,没有眼睛。

这就是 AI Agent 和真实软件之间的”最后一公里”问题。

GUI(图形用户界面)是人类的天堂,却是 AI 的地狱。

GUI 是非结构化的。AI 看到的只是像素,不知道哪个是按钮,哪个是菜单。

GUI 是脆弱的。换个分辨率,换个主题,换个语言,什么都认不出来了。

GUI 不可组合。你不能把 GUI 的操作像代码一样串联起来。

有人试过用计算机视觉+自动点击来操控 GUI,脆弱得像纸糊的。

有人想让软件厂商都提供 API,但 API 通常只暴露 10%-20% 的功能。

这条路,走不通。

CLI-Anything 的解决思路很另类。

与其改造 AI 让它看懂 GUI,不如改造软件,让它说 AI 听得懂的话。

而 AI 听得懂的话,恰好是 CLI(命令行接口)。

为什么?

因为 CLI 是结构化的。 一条命令就是”动作+参数”,`gimp –resize 1920×1080 –output poster.png`,AI 一看就懂。

因为 CLI 是可组合的。 管道、重定向、脚本,可以把几十个命令串成一套完整的工作流。

因为 CLI 是无界面的。 不需要视觉理解,不需要解析像素,纯文本交互,稳定可靠。

因为 CLI 是可测试的。 每条命令都有确定的输入和输出,可以轻松自动化测试。

这些特性恰好都是 AI Agent 需要的。GUI 一条都不占。

所以 CLI 不是”过时”了。在 AI 时代,它反而成了最自然的人机-AI 共同语言。

CLI-Anything 由香港大学 HKUDS 团队开发。

核心是一个 7 步全自动流水线。

你把软件的源码丢进去,出来的是一个可以直接使用的 Python CLI 包。整个过程不需要人工介入。

以 GIMP 为例,生成的 CLI 长这样:

cli-anything-gimp project new –width 1920 –height 1080 -o poster.json
cli-anything-gimp –json layer add -n “Background” –type solid –color “#1a1a2e”

每个命令都支持 –json 参数,输出结构化数据。这样 AI Agent 就能理解结果,做下一步决策。

这个项目不是 PPT 级别的概念验证。

覆盖 40+ 款主流软件。 创意设计(GIMP/Blender/Inkscape/Krita)、音视频处理(Audacity/Shotcut/OBS)、生产力工具(LibreOffice/Draw.io/Notion)、AI 内容生成(Stable Diffusion/ComfyUI)。

1,527 项测试 100% 通过。 涵盖 11 款复杂应用的 1,073 项单元测试和 454 项端到端测试。

兼容 7 大 Agent 框架。 Claude Code、GitHub Copilot、OpenClaw、Nanobot、Windsurf、Witsy、Kimi-IDE,全部原生支持。

CLI-Hub 社区仓库已经上线(clianything.cc),直接安装就能用。

作者自己也实践过,用 CLI-Anything 操控 Blender 建模。

发现直接让 AI 从零开始建模,效果还是有差距。

最优方案反而是:先生成一张参考图,图生模得到一个基础模型,再交给 CLI-Anything 去细化。

这说明什么?

说明 CLI 接口解决了”操作”的问题。但”创造”本身还是另一回事。

CLI 让 AI 能够接触和操作专业软件。这扇门打开了。

但门后面有多远的路要走,取决于 AI 自身的能力。

回到开头。

AI Agent 和真实软件之间隔着最后一公里。

GUI 是墙。CLI 是门。

CLI-Anything 做的事情,就是把这扇门自动装上。

当 40 多款软件被覆盖的时候,你可能没什么感觉。

但当 400 款、4000 款软件都被覆盖的时候,AI Agent 就不再是”聊天机器人”了。

它变成了真正的”数字操作员”。你说一句话,它打开软件,操作完成,交给你结果。

那一天,不远了。