1358 words
7 minutes
CLI-Anything:让所有软件都成为 AI Agent 原生应用

🦞 今天的软件为人而生,明天的用户是 Agent 🤖#

在 AI Agent 快速发展的今天,一个关键问题摆在我们面前:如何让现有的成千上万个软件应用与 AI Agent 无缝协作?CLI-Anything 给出了一个优雅的答案。

HKUDS
/
CLI-Anything
Waiting for api.github.com...
00K
0K
0K
Waiting...

💡 项目简介#

CLI-Anything 是一个开源工具,旨在将任何软件转换为 AI 代理可控制的命令行界面。它的核心理念是”让所有软件都成为代理原生的”(Agent-Native),通过自动化流程将传统 GUI 应用转变为结构化 CLI 工具。

一行命令,让任意软件接入 OpenClaw、nanobot、Cursor、Claude Code 等 Agent 框架。

核心数据#

  • Stars:5.2k
  • 🍴 Forks:479
  • 📝 许可证:MIT
  • 🧪 测试覆盖:1,508 个测试(100% 通过率)
  • 🐍 语言:Python 3.10+

🎯 解决的核心问题#

传统软件大多为人类用户设计,拥有图形界面(GUI)和鼠标交互。但 AI Agent 需要的是:

  • 结构化的输入输出(JSON)
  • 可编程的接口(CLI)
  • 明确的命令和参数
  • 可测试和可验证的行为

CLI-Anything 通过 7 阶段自动化管道,将 GUI 软件转换为 Agent 友好的 CLI 工具。

🚀 主要功能#

1. 完整的自动化管道#

CLI-Anything 提供了一个 7 阶段的转换流程:

  1. 代码分析与 API 映射:自动分析软件的 API 和功能
  2. CLI 架构设计:设计命令行接口结构
  3. Click 框架实现:生成基于 Click 的 CLI 代码
    • REPL 交互式界面
    • JSON 结构化输出
    • 撤销/重做功能
  4. 测试计划生成:自动生成测试策略
  5. 测试套件编写:创建单元测试和 E2E 测试
  6. 文档更新:生成完整的使用文档
  7. PyPI 发布:打包并发布到 Python 包管理器

2. 生产级测试覆盖#

  • 1,073 个单元测试:验证每个功能模块
  • 435 个 E2E 测试:端到端场景测试
  • 100% 通过率:确保稳定性和可靠性
  • 多层验证:CLI 子进程测试、集成测试

3. 双输出格式#

  • JSON 输出:供 AI Agent 解析和处理
  • 人类可读格式:方便开发者调试和使用

4. 会话管理#

  • 持久化项目状态
  • 撤销/重做操作
  • 统一的 REPL 接口

🎨 支持的应用场景#

CLI-Anything 已经在 11 个真实应用中验证,覆盖多个领域:

创意工具#

  • GIMP:图像编辑和处理
  • Blender:3D 建模和渲染
  • Inkscape:矢量图形设计

生产力应用#

  • LibreOffice:文档处理(生成 PDF、编辑表格)
  • OBS Studio:视频录制和直播

音视频编辑#

  • Audacity:音频编辑
  • Kdenlive:视频剪辑
  • Shotcut:视频编辑

通讯工具#

  • Zoom:视频会议控制

其他工具#

  • Draw.io:流程图和图表
  • AnyGen:AI 内容生成

✨ 技术亮点#

1. 真实软件集成#

CLI-Anything 不是模拟或包装器,而是直接调用实际应用:

  • 使用 LibreOffice 真正生成 PDF 文档
  • 通过 Blender 实际渲染 3D 场景
  • 调用 GIMP 进行真实的图像处理

2. 零配置安装#

Terminal window
pip install -e .

一行命令即可将 CLI 添加到系统 PATH,立即可用。

3. 增量改进#

支持通过 /cli-anything:refine 命令持续扩展和优化 CLI 功能,无需从头开始。

4. 跨平台支持#

  • Claude Code:已完全支持
  • OpenCode:支持中
  • Cursor / Windsurf:即将推出

🔧 使用示例#

基础用法#

Terminal window
# 让任意软件接入 AI Agent
/cli-anything <software-path-or-name>

实际案例#

Terminal window
# 将 GIMP 转换为 CLI
/cli-anything gimp
# 使用生成的 CLI 进行图像处理
gimp-cli edit --input photo.jpg --resize 800x600 --output result.jpg --format json

REPL 交互模式#

Terminal window
# 进入交互式命令行
gimp-cli repl
# 在 REPL 中执行命令
> open image.png
> apply-filter blur --radius 5
> save output.png
> undo
> redo

🌟 为什么选择 CLI-Anything?#

1. 降低 AI Agent 开发门槛#

无需为每个软件单独开发 Agent 插件,CLI-Anything 自动完成转换。

2. 提升软件可用性#

让传统软件立即获得:

  • 自动化能力
  • 批处理能力
  • AI 集成能力

3. 保持软件原生能力#

不是简化版或阉割版,而是完整保留软件的所有功能。

4. 开源且可扩展#

MIT 许可证,社区驱动,持续改进。

🎯 适用人群#

  • AI 开发者:构建 AI Agent 应用,需要集成各种软件工具
  • 自动化工程师:批量处理任务,提升工作效率
  • 软件开发者:为自己的应用添加 CLI 接口
  • 创意工作者:通过命令行批量处理创意任务

🚦 快速开始#

安装#

Terminal window
git clone https://github.com/HKUDS/CLI-Anything.git
cd CLI-Anything
pip install -e .

转换你的第一个应用#

Terminal window
/cli-anything your-app-name

查看生成的 CLI#

Terminal window
your-app-cli --help

🔮 未来展望#

CLI-Anything 代表了软件发展的一个重要方向:Agent-Native。随着 AI Agent 的普及,越来越多的软件需要提供结构化的、可编程的接口。

这个项目不仅是一个工具,更是一个理念:

  • 今天的软件为人而生 🦞
  • 明天的用户是 Agent 🤖

通过 CLI-Anything,我们可以让现有的软件生态系统无缝过渡到 AI 时代,而不需要重写每一个应用。

📚 相关资源#

  • GitHub 仓库HKUDS/CLI-Anything
  • 快速上手:5 分钟教程
  • 在线 Demo:体验实际效果
  • 社区交流:飞书群、微信群

💡 如果你正在开发 AI Agent 应用,或者想让你的软件工具更易于自动化,CLI-Anything 绝对值得一试。它可能会改变你对软件交互方式的认知。

CLI-Anything:让所有软件都成为 AI Agent 原生应用
https://www.zouxself.space/posts/cli-anything-让所有软件都成为ai代理原生/
Author
ZHAO
Published at
2026-03-12
License
CC BY-NC-SA 4.0

💬 留言板

还没有留言,来抢沙发吧!