乐于分享
好东西不私藏

让 GIMP、Blender、LibreOffice 都能被 AI 直接调用:CLI-Anything 到底解决了什么?

让 GIMP、Blender、LibreOffice 都能被 AI 直接调用:CLI-Anything 到底解决了什么?

AI Agent 的“手脚”问题,终于有了解法

你有没有试过让 AI 帮你完成一个看似简单的任务:“用 GIMP 给这张图加个水印,然后导出为 PDF”?
模型能完美写出步骤,甚至生成脚本。但一旦进入执行层,事情就变了味——它要么依赖截图识别按钮位置,要么调用一堆不稳定的 UI 自动化库。结果?换个屏幕分辨率、弹个系统通知,整个流程就崩了。
这就是当前 AI Agent 落地的最大尴尬:大脑越来越聪明,手脚却极其笨拙
最近,香港大学数据科学实验室(HKUDS)开源的项目CLI-Anything引起了广泛关注。它在 3 月 30 日更新至 v0.2.0 后,正快速扩充支持的软件列表和使用指南。它的口号很直白:“Making ALL Software Agent-Native”——让所有软件都原生支持 AI Agent 调用。
但 CLI-Anything 真正的价值,不在于“支持多少软件”,而在于它选择了一条反直觉却更可持续的路径不碰 GUI,直接生成命令行接口(CLI)

为什么是 CLI?

因为 GUI 自动化本质上是“模拟人”,而 CLI 是“与程序对话”。前者脆弱、慢、难调试;后者稳定、快、可版本化。更重要的是,专业软件(如 Blender、LibreOffice、OBS)的核心能力本就存在于其底层逻辑中,只是缺乏一个结构化的调用入口。CLI-Anything 的做法是:读取软件源码,自动构建一套完整的、可安装的 CLI 工具,并通过 1400+ 测试确保输出文件(如 ODF、SVG、MLT XML)的真实有效性。

这意味着什么?

对普通用户来说,几乎无感。但对独立开发者、自动化工程师、企业技术负责人而言,这可能是工作流的一次重构。
过去,你要让 Agent 操作 LibreOffice,可能得写一堆 Python 脚本调用 UNO API,或者忍受 LibreOffice GUI 的随机崩溃。现在,你可以直接调用:
cli-anything-libreoffice document new -o report.json --type writercli-anything-libreoffice --project report.json writer add-heading -t "Q1 Report" -level 1
整个过程无需启动图形界面,输出文件经真实软件渲染验证,可靠性远超 UI 自动化。
当然,CLI-Anything 并非万能。它要求目标软件有可用源码(或至少可分析的二进制),且生成的 CLI 需要维护。但它提供了一个清晰的方向:未来的 Agent 不应“看屏幕操作软件”,而应“直接调用软件能力”
我的建议是:
如果你正在构建长期维护的 Agent 工作流(比如内容生成、媒体处理、文档自动化),不妨关注 CLI-Anything 的进展。即使暂不采用,也应重新评估现有 GUI 自动化方案的脆弱性。而对于软件开发者,或许该思考:下一代软件是否该内置“Agent 接口”?
毕竟,今天的软件为人而生,明天的用户,可能真是 Agent。