← 返回项目列表
CLI-Anything 的核心观点是:未来软件不只服务人类用户,也要服务 AI Agent;与其让 Agent 看截图、点按钮、模拟人类 GUI 操作,不如把真实软件封装成结构化、可测试、可组合的 CLI。它提供一套 7 阶段方法论和插件/Skill,让 Agent 自动分析软件源码、设计命令、实现 Click CLI、补测试、生成文档、发布安装包,并通过 CLI-Hub 管理社区已有的 CLI harness。售前上,它适合用来讲“企业软件如何 Agent 化”“如何降低 GUI 自动化/RPA 的脆弱性”“如何让内部工具被大模型稳定调用”。

1. 一句话定位

CLI-Anything 是一个把现有软件转换成 Agent-native CLI 的开源项目。

它不是普通的命令行工具,也不是某一个 GUI 自动化框架,而是一套“让任意有代码库的软件变成 AI Agent 可操作工具”的方法论、插件、示例 harness 和 CLI 生态。

可以这样向客户解释:

过去我们让 AI Agent 像人一样看屏幕、找按钮、点击坐标,这种方式很容易受界面变化、窗口大小、加载延迟影响。CLI-Anything 的思路是反过来:为软件补一层结构化命令行接口,让 Agent 直接用命令、状态和 JSON 结果操作真实软件。

2. 它主要解决什么问题

2.1 GUI Agent 的天然脆弱性

arXiv 技术报告的摘要把问题讲得很清楚:当前主流 computer use 方案往往让 Agent 通过截图、视觉识别、坐标点击来操作应用。这会带来几个问题:

问题具体表现对客户的影响
像素级交互脆弱UI 换皮、按钮移动、弹窗变化就失败自动化稳定性差,维护成本高
时间依赖强页面加载慢、动画延迟、网络波动都会影响点击任务成功率不可控
状态不可显式读取Agent 只能“看见”界面,难以获得完整结构化状态难以做可靠判断和回滚
输出难验证GUI 操作完成不代表文件/结果真实正确生产环境风险高
难规模化每个软件、每个版本都要重新适配视觉路径企业落地成本高

CLI-Anything 的方案是:不要让 Agent 模拟人的视觉限制,而是让软件暴露更适合 Agent 的接口。

2.2 Agent 缺少真实专业软件能力

很多企业想让 Agent 使用专业软件,但会遇到两类极端:

  • 直接 GUI 自动化:能用现有软件,但不稳定。
  • 重新写一个轻量替代品:稳定一些,但功能远远不如真实软件。

CLI-Anything 强调“真实软件集成”:CLI 生成合法的项目文件或脚本,然后调用真实后端渲染/导出。例如:

  • LibreOffice:生成 ODF,再用 libreoffice --headless 导出 PDF/DOCX/XLSX/PPTX。
  • Blender:生成 bpy 脚本,再用 blender --background --python 渲染。
  • Inkscape:操作 SVG,再用 Inkscape 导出。
  • Shotcut/Kdenlive:生成 MLT XML,再用 meltffmpeg 渲染。
  • OBS:通过 obs-websocket 控制真实 OBS。

这个原则很关键:它做的是“真实软件的结构化接口”,不是玩具级重写。

3. 它主要能做什么

3.1 使用 CLI-Hub 安装已有 CLI

CLI-Hub 是 CLI-Anything 的生态入口,用于浏览、搜索、安装、更新、卸载和启动社区已有 CLI。

pip install cli-anything-hub

cli-hub list
cli-hub search image
cli-hub info gimp
cli-hub install gimp
cli-hub launch gimp

售前解读:

  • 如果客户要验证“Agent 能不能使用专业软件”,可以先找 CLI-Hub 是否已有对应工具。
  • 这比从零构建 harness 更快,适合 demo 和 PoC 初期。
  • 需要注意:有些 CLI 仍依赖真实上游软件,比如 GIMP、Blender、LibreOffice,本机或服务器仍要安装这些软件。

3.2 为新软件生成 Agent 可用 CLI

如果 CLI-Hub 没有目标软件,可以使用 CLI-Anything 的 7 阶段生成流程:

阶段官方流程售前理解
1. Analyze扫描源码,找到 GUI 动作、数据模型、后端接口搞清楚这个软件真正的能力在哪里
2. Design设计命令组、状态模型、输出格式把软件能力整理成 Agent 能理解的操作面
3. Implement用 Click 实现 CLI、REPL、JSON 输出、undo/redo生成可交互、可脚本化的命令工具
4. Plan Tests先写 TEST.md 测试计划避免只做 demo,不做验证
5. Write Tests写单测、端到端测试、真实后端测试验证真实工作流
6. Document更新测试结果和文档让工具可交接、可维护
6.5 Skill生成 SKILL.md让 Agent 后续能自动发现和使用
7. Publish生成 setup.py,安装到 PATH进入团队可复用状态

典型命令:

/cli-anything ./gimp
/cli-anything https://github.com/blender/blender
/cli-anything:refine ./gimp "batch processing and filters"
/cli-anything:test ./inkscape
/cli-anything:validate ./audacity

3.3 已验证的 harness 示例

README 显示项目已经覆盖多类软件,包括:

类别示例客户价值
创意与媒体GIMP、Blender、Inkscape、Audacity、Kdenlive、Shotcut、OBS让 Agent 自动生成图片、视频、直播场景、音频处理
办公与知识管理LibreOffice、Zotero、Joplin、Calibre自动生成报告、处理文档、管理资料库
图表与可视化Draw.io、Mermaid自动生成架构图、流程图、说明材料
AI/ML 平台ComfyUI、Ollama 等用命令驱动模型推理和工作流
开发与调试LLDB、RenderDoc、Nsight Graphics、Unreal Insights让 Agent 参与调试、性能分析、图形分析
企业工具Zoom、CloudAnalyzer、AdGuard Home 等会议、云成本、安全/网络工具自动化

README 的最新英文页面展示了 2,461 项测试 100% 通过,其中包括单元测试、端到端测试、Node.js 测试等。中文 README 中的数字略低,说明中文文档可能滞后;售前引用时应以英文 README 的最新状态为准,并注明核查日期。

4. 适用场景

4.1 企业内部软件 Agent 化

适合客户:

  • 有大量内部工具、后台系统、桌面软件或开源定制系统。
  • 想让 AI Agent 直接执行业务任务,而不是只回答问题。
  • 现有系统没有完善 API,或者 API 粒度过低、文档复杂。

典型价值:

  • 把分散的功能整理成统一 CLI。
  • 让 Agent 用 --help--json 自发现能力。
  • 用测试保证命令结果可靠。

示例:

某企业有内部报表工具、数据清洗工具、文档生成工具。通过 CLI-Anything,可以把这些工具包装成统一 CLI,让 Agent 自动生成报表、导出文件、检查结果,而不是每次依赖人点击页面。

4.2 替代脆弱 RPA / GUI 自动化

适合客户:

  • 当前使用 RPA、录屏点击、浏览器自动化脚本。
  • 自动化经常因为界面变化失败。
  • 希望降低维护成本和提升任务成功率。

售前话术:

RPA 的问题不是不能做,而是长期维护成本高。CLI-Anything 的思路是把“点哪里”变成“调用什么命令”,把 UI 结果变成 JSON 和文件验证,这更适合 Agent,也更适合生产环境。

4.3 AI Agent 工具生态建设

适合客户:

  • 正在建设企业内部 Agent 平台。
  • 需要为 Agent 提供稳定工具集。
  • 想把多个业务系统、开源工具和桌面软件变成可调用工具。

CLI-Anything 的价值在于:它不是只给一个 Agent 用,而是让工具本身变得 Agent-native。只要 CLI 和 SKILL.md 产出稳定,Claude Code、Codex、OpenClaw、OpenCode、Hermes、Reasonix 等兼容环境都可以复用类似能力。

4.4 内容生产自动化

适合场景:

  • 自动生成 PPT/文档/PDF。
  • 自动制作视频剪辑、字幕、封面。
  • 自动渲染 3D 产品图。
  • 自动生成流程图、架构图、培训材料。

CLI-Anything 在这类场景有优势,因为它倾向于调用真实软件导出真实成果,而不是只生成一个看起来像的中间文件。

4.5 软件厂商做 Agent-ready 改造

对软件厂商来说,CLI-Anything 可以作为一个产品化启发:

  • 为自己的软件补 CLI 层。
  • 提供 JSON 输出和可验证状态。
  • 提供 SKILL.md 或 Agent 使用说明。
  • 提供端到端任务样例和测试套件。

这类能力未来可能成为“软件是否适合 Agent 使用”的重要指标。

5. 不太适合的场景

不适合场景原因建议
目标软件完全闭源且无脚本/API/文件格式入口CLI-Anything 主要依赖源码、真实后端、项目文件或已有 CLI先评估是否有官方 API、SDK、MCP 或自动化接口
只想做一次性简单网页点击用 Playwright/RPA 可能更快不必为一次性任务生成完整 harness
客户缺少强模型和工程团队README 明确提到需要强基础模型,弱模型可能生成不完整 CLI由实施团队先代建,再交付维护规范
目标软件依赖复杂 GUI 状态且无稳定后端很难保证真实输出和测试稳定性先做技术可行性评估
对合规和安全要求极高但缺少审查流程自动生成 CLI 可能触及文件写入、系统调用、真实软件执行纳入代码审查、权限控制、沙箱和审计

6. 架构与关键设计

6.1 推荐售前理解架构

flowchart LR Agent["AI Agent"] --> Skill["SKILL.md / --help
能力发现"] Agent --> CLI["cli-anything-
JSON + Human 输出"] CLI --> State["Session / Project State
undo / redo / history"] CLI --> Native["原生项目文件
ODF / SVG / MLT / bpy / JSON"] Native --> Backend["真实软件后端
LibreOffice / Blender / GIMP / ffmpeg"] Backend --> Artifact["真实产物
PDF / 图片 / 视频 / 音频 / 报告"] CLI --> Tests["Unit + E2E + Subprocess Tests"]

6.2 核心原则

原则含义为什么重要
真实软件是硬依赖不用玩具替代真实软件保证产物和客户真实工作流一致
双交互模式REPL + 子命令兼顾 Agent 长会话和脚本自动化
JSON 输出每个命令支持 --jsonAgent 可稳定解析
自描述接口--helpwhich、SKILL.mdAgent 可以发现和学习工具
强测试单测 + 真实后端 E2E + CLI 子进程测试避免“看起来能跑”的假自动化
输出验证检查 magic bytes、ZIP/OOXML、像素、音频、时长证明产物是真的正确
无优雅降级后端缺失就失败并给出安装说明防止生产环境偷偷生成错误结果

7. 怎么用

7.1 作为 CLI-Hub 用户

pip install cli-anything-hub

cli-hub list
cli-hub search diagram
cli-hub info drawio
cli-hub install drawio
cli-hub launch drawio

适合做演示和快速验证。

7.2 作为 Claude Code 插件用户

/plugin marketplace add HKUDS/CLI-Anything
/plugin install cli-anything
/cli-anything ./gimp
/cli-anything:refine ./gimp "batch processing and filters"

7.3 作为 Codex Skill 用户

git clone https://github.com/HKUDS/CLI-Anything.git
bash CLI-Anything/codex-skill/scripts/install.sh

然后在 Codex 中自然语言触发:

Use CLI-Anything to build a harness for ./gimp
Use CLI-Anything to refine ./shotcut for picture-in-picture workflows
Use CLI-Anything to validate ./libreoffice

7.4 使用生成后的 CLI

cd /agent-harness
pip install -e .

which cli-anything-
cli-anything- --help
cli-anything-
cli-anything- --json 

示例:LibreOffice CLI 生成 PDF。

cli-anything-libreoffice document new -o report.json --type writer
cli-anything-libreoffice --project report.json writer add-heading -t "Q1 Report" --level 1
cli-anything-libreoffice --project report.json writer add-table --rows 4 --cols 3
cli-anything-libreoffice --project report.json export render output.pdf -p pdf --overwrite
cli-anything-libreoffice --json document info --project report.json

8. 售前可以怎么讲

8.1 面向业务方

CLI-Anything 的价值是让 AI 真正使用企业已有工具,而不是只在聊天窗口里给建议。它可以把文档、设计、视频、图表、开发工具等软件转成 Agent 可调用的命令,从而把“AI 会说”推进到“AI 会做”。

8.2 面向技术负责人

它不是传统 RPA,也不是屏幕点击脚本。它强调结构化命令、显式状态、JSON 输出、真实后端执行和端到端验证。对企业 Agent 平台来说,这类工具接口比 GUI 点击更容易维护、监控和复用。

8.3 面向 CIO / 管理层

企业已经有大量软件资产。CLI-Anything 提供了一种低侵入的 Agent 化路径:先从开源或内部工具开始,把高频流程封装成可测试 CLI,再逐步纳入企业 Agent 平台。这样可以减少重复人工操作,也避免一开始就重构所有系统。

9. 常见客户问题

客户问题回答建议
它是不是 RPA?不是传统 RPA。RPA 通常模拟人点击 GUI;CLI-Anything 更强调为软件生成结构化命令接口,调用真实后端并验证输出。
它能处理闭源商业软件吗?如果商业软件有 API、脚本接口、CLI、可编辑项目文件或 MCP 服务,就有机会;如果只有黑盒 GUI,难度会明显上升。
生成的 CLI 是否可靠?取决于目标软件复杂度、基础模型能力和测试质量。项目方法论要求真实后端 E2E 测试和输出验证,但生产前仍需人工审查。
它会替代软件官方 API 吗?不一定。官方 API 质量高时应优先使用;CLI-Anything 更适合把 API、项目文件和真实软件后端组合成 Agent 友好的工作流。
它适合企业内部工具吗?适合,尤其是有源码或稳定脚本接口的内部工具。可以把内部工具包装成统一 CLI,再供 Agent 调用。
安全风险是什么?CLI 可以读写文件、调用真实软件和执行外部命令,所以必须有权限边界、审计日志、沙箱和代码审查。
为什么不直接用 GUI Agent?GUI Agent 适合临时操作和无接口系统,但在长期生产任务上,结构化 CLI 更稳定、可测试、可回放。

10. PoC 建议

10.1 PoC 选题

建议选一个“真实、有价值、但边界清晰”的任务:

  • 自动生成一份客户周报 PDF。
  • 自动从素材生成一段短视频。
  • 自动生成一张系统架构图。
  • 自动把会议录制下载、转写、归档。
  • 自动驱动内部报表工具导出数据。

不建议一开始选整个 ERP、整个 CAD 或全部办公流程。

10.2 PoC 阶段

阶段工作验收
第 1 阶段:可行性评估看目标软件是否有源码、CLI、API、项目文件或脚本接口���否找到真实后端入口
第 2 阶段:最小 harness生成 3-5 个核心命令Agent 能完成一个闭环任务
第 3 阶段:真实输出调用真实软件生成 PDF/图片/视频/报告产物可打开、可检查、格式正确
第 4 阶段:测试补齐单测、E2E、CLI subprocess 测试自动化测试通过
第 5 阶段:Agent 集成生成 SKILL.md,接入企业 Agent 平台Agent 能自发现和调用
第 6 阶段:安全加固权限、审计、沙箱、错误处理满足企业上线要求

10.3 建议指标

指标含义
任务成功率同一个任务重复执行是否稳定
端到端耗时比人工/RPA 快多少
失败可诊断性失败时是否有明确错误和日志
输出正确率文件格式、内容、像素/音频/时长等是否达标
覆盖命令数对目标业务流程覆盖程度
维护成本软件升级后需要改多少命令/测试
Agent token 消耗JSON/CLI 是否比裸 API 或 GUI 观测更省

11. 风险和注意事项

11.1 对模型能力有要求

README 的限制部分明确提到,它依赖强基础模型来可靠生成 harness;较弱模型可能生成不完整或错误的 CLI,需要大量人工修正。

售前不要承诺“一键生成所有软件 CLI 且无需人工”。更稳妥的说法是:

CLI-Anything 提供自动化生成和方法论,但生产质量仍需要代码审查、测试补齐和迭代 refine。

11.2 源码和后端入口决定上限

目标软件如果有清晰源码、项目文件格式、官方 CLI、脚本接口,成功率会高很多。反之,如果只有闭源 GUI,且没有 API/SDK/文件格式文档,CLI-Anything 的发挥空间会受限。

11.3 自动生成代码需要安全审查

企业场景必须考虑:

  • 是否会访问敏感文件。
  • 是否会执行外部命令。
  • 是否会写入生产数据。
  • 是否需要权限隔离。
  • 是否有审计日志。
  • 是否能回滚和重放。

11.4 测试是成败关键

CLI-Anything 很强调测试,这一点要在售前中讲透。没有真实后端 E2E 和输出验证,生成 CLI 很容易变成“看起来能跑”的 demo。

12. 我的售前判断

CLI-Anything 的战略意义大于单个工具本身。

它抓住了 Agent 落地中的一个关键问题:大模型已经能推理和规划,但企业真实工作都沉淀在现有软件里。如果 Agent 只能看屏幕点击,可靠性很难进入生产;如果每个系统都单独开发 API,又成本太高。CLI-Anything 提供了第三条路:把软件能力包装成 Agent-native CLI。

适合重点关注的客户类型:

  1. 正在建设企业 Agent 平台的客户。
  2. 有大量内部工具、脚本和桌面软件的技术型客户。
  3. RPA 维护成本高、想升级到 Agent 自动化的客户。
  4. 内容生产、文档生成、设计/视频/图表自动化需求强的客户。
  5. 软件厂商,希望自己的产品更容易被 AI Agent 使用。

售前定位建议:

不要把 CLI-Anything 讲成“万能一键自动化神器”,而要讲成“Agent 工具化和软件 Agent-native 改造的方法论与工程框架”。它的价值在于结构化、可测试、可复用、可接入 Agent 平台。

13. 参考资料

信息核查日期:2026-06-30。GitHub API 匿名访问触发限流,因此本笔记未写入实时 stars/forks;项目状态、安装方式、测试数量和限制说明主要基于官方 README、中文 README、HARNESS.md 与 arXiv 摘要整理。