AI工具
English

CLI-Anything 评测:让任意命令行工具变成 AI Agent,Python 39k 星不是没道理

CLI-Anything 是香港大学数据科学实验室开源的项目,核心思路是把任何 CLI 工具包装成 Agent 可用的接口。我试了一圈,发现它解决了一个很实际的问题。

aiagentclipythondeveloper-tools

广告

CLI-Anything 评测:让任意命令行工具变成 AI Agent,Python 39k 星不是没道理

第一次看到这个项目的名字,我还以为是又一个”万物皆可 CLI”的玩具。但看了下背后的团队——香港大学数据科学实验室,再加上 3.9 万星的体量——我觉得有必要认真试试。

项目背景

CLI-Anything 的核心命题特别直接:现在的 AI Agent 能操作浏览器、能写代码、能查数据库,但那些用了十几年的命令行工具(ffmpeg、git、docker、curl 等等)它们却用不好。为什么?因为 Agent 不知道这些工具的参数格式、不知道输出长什么样、也不知道哪些参数组合会炸。

CLI-Anything 的做法是:给每个 CLI 工具自动生成一个”认知层”——包含它的命令结构、参数说明、输入输出格式、常见用法示例。Agent 调用之前先读这个认知层,再决定怎么构造命令。

核心功能

1. 自动工具认知生成

你把一个 CLI 工具的名字丢给 CLI-Anything,它会自动去解析 --help 输出、man page、官方文档,然后生成一个结构化的 JSON 描述。这个 JSON 就是 Agent 的”说明书”。

我试了一下 ffmpeg,它生成的 JSON 包含了所有编解码器参数、输入输出格式、滤镜选项,甚至还有常见用法的示例命令。说实话,比我手写的那份还全。

2. Agent-Native 接口

生成认知层之后,CLI-Anything 会暴露一个统一接口。Agent 不需要知道 ffmpeg -i input.mp4 -c:v libx264 output.mp4 这种具体命令,而是说”把 input.mp4 转成 H.264 格式的 output.mp4”,CLI-Anything 负责翻译成实际命令。

我用 Claude Code 试了一下,让它”把当前目录所有 wav 文件压缩成 mp3”。Claude 通过 CLI-Anything 调 ffmpeg,参数设置得还挺合理——128k 码率、44100 采样率,没搞出什么妖蛾子。

3. CLI-Hub 生态

他们还做了一个 CLI-Hub(https://clianything.cc/),上面已经收录了上千个常用 CLI 工具的认知层。git、docker、kubectl、awscli、terraform 这些都有。不用自己生成,直接下载就能用。

实际使用场景

我印象最深的是两个例子:

一个是自动化运维脚本。以前让 Agent 写 shell 脚本,它总是搞错 find 的参数顺序,或者记混 tar 的压缩/解压选项。现在通过 CLI-Anything,Agent 先查认知层再构造命令,出错率明显低了。

另一个是数据处理流水线。我让 Agent 用 jqawksed 组合处理一个 JSON 日志文件。没装 CLI-Anything 之前,Agent 写的 jq 过滤器十有八九语法错误。装了之后,它能先查 jq 的语法说明,再写出正确的过滤表达式。

快速上手

pip install cli-anything
cli-anything init ffmpeg    # 生成 ffmpeg 的认知层
cli-anything hub install git # 从 CLI-Hub 下载 git 的认知层

然后在 Agent 配置里加上 CLI-Anything 的 MCP server 地址就行。

优缺点

优点:

  • 解决了一个真实痛点:Agent 用不好 CLI 工具
  • CLI-Hub 生态已经挺丰富了,常用工具基本覆盖
  • 纯 Python,安装简单,没有额外依赖
  • 认知层是标准 JSON,可以自己手动编辑补全

缺点:

  • 对复杂交互式 CLI(比如 vimhtop)支持有限,毕竟这些不是一次命令能搞定的
  • 自动生成的认知层有时候会有错,尤其是文档写得不清楚的工具
  • 目前只支持命令行工具,GUI 程序不在范围内(当然这也合理)

与竞品对比

说实话,这个领域目前基本没什么竞品。Google 的 CLIA 项目有过类似想法但似乎已经停了。CLI-Anything 的优势在于它走了一条”实用主义”路线——不是搞什么通用 AI 理解,而是给每个工具写说明书,让 Agent 照说明书办事。

适合谁

如果你在用 AI Agent 做自动化工作流,尤其是涉及大量命令行工具的场景,CLI-Anything 几乎可以说是必装。它让 Agent 从”大概知道有这么个工具”进化到了”知道这工具怎么用、参数什么意思”。

3.9 万星的体量说明这个方向是对的。而且香港大学实验室的背景也让人比较放心,不是那种火了就跑的网红项目。


关于作者

柳钉鱼,全栈开发者,GitHub 重度用户。过去 3 年 Star 了 900+ 仓库,这里只写我真正用过或深度调研过的工具。

📧 发现好工具想推荐?发邮件到 [email protected]

广告

相关文章