跳到正文
原文
web-github-trending ·· 4 天前精选AI 评分76

HKUDS 开源 CLI-Anything:一条命令把软件变成 Agent 可用的 CLI

HKUDS / CLI-Anything

AI 导读

香港大学数据智能实验室(HKUDS)开源 CLI-Anything,通过 7 阶段流水线为任意有源码的软件自动生成 Agent 可调用的 CLI harness,覆盖 GIMP、Blender、LibreOffice、OBS Studio 等 18 款应用,累计 2461 项测试全部通过。

推荐理由

把任意有源码的软件自动生成 Agent 可调用的 CLI,附 7 阶段流水线和 2400 多项测试,适合想让智能体操作真实桌面软件的场景。

正文 · AI 翻译

今天的软件服务于人类👨‍💻。明天的用户将是智能体🤖。
CLI-Anything:弥合 AI 智能体与全球软件之间的鸿沟

🌐 CLI-Hub:pip install cli-anything-hub 然后 cli-hub install <name> — 浏览、安装和管理所有社区构建的 CLI。想添加你自己的?提交 PR — 中心会即时更新。

🎬 查看演示:观看 AI 智能体使用生成的 CLI 以及预览、实时预览和轨迹循环来生成真实产物 — CAD 构建、3D 场景、图表、游戏玩法、字幕等。

🙋 [成为贡献者,或请求一个 CLI]:加入我们!注册以构建新的 CLI 工具集 — 一旦审核并合并,你将成为我们社区贡献者之一获得访问权限!希望 CLI-Anything 支持某个特定的软件或服务?提交一个愿望清单请求!

Quick Start CLI Hub Demos Tests Tech Report License

Python Click Pytest Coverage Output Feishu WeChat

一条命令行:让任何软件为 Pi、OpenClaw、nanobot、Cursor、Claude Code 等做好智能体准备。  中文文档 | 日本語ドキュメント | Deutsch

CLI-Anything typing demo

CLI-Anything Teaser


📰 新闻

感谢社区所有宝贵的努力!每天都有更多更新持续到来..

  • 2026-05-30 🧭 Hermes skill 被提出(#320),添加了一个 CLI-Anything 编排技能,包含安装脚本和 HARNESS 回退指南。🗺️ ArcGIS Pro 被提议加入公共注册表(#318),作为一个 Windows/ArcPy CLI,用于制图、地理处理、要素编辑和实时 Pro MCP 工作流。

  • 2026-05-27 🔧 CLI-Hub 注册表日期更新现在处理 python -m pip 安装命令(#312),改进了注册表自动化的包日期检测。

  • 2026-05-23 📝 Obsidian Agent CLI 被提议加入公共注册表(#307),带来了一个通过 PyPI 安装的 Obsidian 自动化 CLI,具有持久化智能体记忆工作流和固定技能链接。

  • 2026-05-21 🔒 Sketch CLI 的令牌文件处理已针对路径遍历和符号链接逃逸进行了加固(#304)。

  • 2026-05-20 📓 Joplin CLI 被提出(#300),包含笔记本、笔记、待办事项、标签、附件、搜索/同步、导入/导出、服务器/E2EE 辅助工具、完整文档、打包的技能文档以及 134 项测试的验证基线。

  • 2026-05-20 🎛️ Rekordbox CLI 已合并(#252),具有受保护的 SQLCipher 写入路径、要求备份的强制写入、冒烟覆盖和根技能同步。📚 Calibre CLI 已合并(#223),具有库/搜索/元数据/转换/导出工作流、41 个单元测试、真实 Calibre E2E 证据和根技能验证。🧊 3MF CLI 已合并(#209),具有网格检查、孔洞调整、修复、比较和保留的三角形属性。🎙️ MiniMax CLI 已合并(#189),具有聊天/TTS 工作流、JSON 安全的模型/语音列表、REPL 引号处理和冒烟/E2E 覆盖。🎮 UEAtelier 加入了注册表(#297),作为一个 Unreal Editor MCP 自扩展工作台,带有 Python CLI 代理。

  • 2026-05-19 🛠️ 现有 harness 完成了一轮质量/安全优化 — Zoom 从直接 URL 下载录制文件(#294),Obsidian 搜索现在使用 Local REST API 供应商内容类型(#289),LibreOffice 无头转换在 macOS 上更加稳健(#290),XML/SVG/ODF/MLT/MusicXML/CSL 解析现在将不受信任的输入通过 defusedxml 处理(#296)。

  • 2026-05-18 📈 README 展示已更新,加入 Trendshift 徽章并居中优化了项目页眉(#285、#286),让落地页部分聚焦于发现与项目势头。

  • 2026-05-17 🌐 CLI-Hub 注册表处理已加固(#281)— 注册表条目现在会在 _source 标记之前被复制,防止缓存或模拟的注册表数据被就地修改。

  • 2026-05-16 🔧 n8n 获得了 REPL 横幅崩溃修复,该修复随后合并到 main(#280),恢复了无子命令的交互式启动路径并附带回归测试覆盖。

更早的新闻(4 月 10–18 日)

  • 2026-04-18 🧩 所有 SKILL.md 文件现在统一到顶层 skills/ 目录下 — 每个 CLI 技能都可以通过 npx skills add HKUDS/CLI-Anything --skill <skill-name> -g -y 从一个规范来源安装。我们还添加了根技能验证 CI,将贡献 / PR 文档和 REPL 技能路径提示同步到新布局,并围绕新的 npx skills 流程刷新了 CLI-Hub 安装优先的前端。

  • 2026-04-17 🌐 CLI-Hub 又进行了一轮安装 UX 优化 — 收紧了公共注册表元数据和技能覆盖范围,修正了访问计数,并进一步完善了 Web hub。🧪 Shotcut 渲染输出时长已修复(#92)。📝 SKILL 贡献路径已针对新的文档流程修正(#224),技能生成器现在可以安全处理空简介(#203)。

  • 2026-04-16 🗺️ QGIS CLI 已合并(#207)— 一个完整的 GIS / 地图创作 harness 落地。🧬 UniMol Tools CLI 已合并(#219),用于分子建模工作流。🌐 CLI-Hub 还添加了更多公共 CLI,包括 py4csr,刷新了其生成的元技能,修正了 SKILL 贡献文档,并修复了技能生成中的 apt-get 包提取问题(#204)。

  • 2026-04-16 📈 Unreal Insights CLI 扩展 — 添加了后台捕获会话控制(capture start/status/snapshot/stop)、与引擎根匹配的 UnrealInsights.exe 解析/构建流程,并为新的编排工作流刷新了文档/测试。

  • 2026-04-15 🌐 CLI-Hub 更新至 v0.2.0 — PyPI 包现在支持来自多个安装来源的公共 CLI(pip、npm、brew、捆绑/系统工具),由新的 public_registry.json 提供支持。Hub 前端经过重新设计,分为 CLI-Anything CLIs 和 Public CLIs 两个面板,实时端到端检查现在覆盖 pip 和 npm 包的真实安装、更新和卸载流程。

  • 2026-04-14 🧭 Safari CLI 已合并(#212)并添加到 Hub 注册表 — 通过 safari-mcp 实现浏览器自动化。🎬 Kdenlive 还获得了针对 Gen 5 项目输出和无效项目生成的兼容性修复。

  • 2026-04-13 📓 Obsidian CLI 已合并(#211)——通过 Local REST API 实现的知识管理工具,包含 48 个单元测试和 7 个 E2E 测试。⛓️ Eth2-Quickstart CLI 已合并(#195)——以太坊质押节点管理工具。📚 Zotero CLI 更新至 v0.4.1(#201)——现已从其独立仓库发布,CLI-Hub 新增了对远程 skill_md URL 的支持。

  • 2026-04-11 🔗 n8n CLI 已合并(#188)——用于自托管自动化流程的工作流自动化工具。🔧 Exa CLI 修复(#205)添加了用于用量追踪的 x-exa-integration 请求头。📦 CLI-Hub 还新增了其 PyPI 自动发布工作流和包刷新流水线。

  • 2026-04-10 📦 CLI-Hub 包管理器 发布——通过 pip install cli-anything-hub 一条命令即可浏览、搜索、安装、更新和卸载 CLI-Anything 工具。Web Hub 还发布了首个以安装为重点的前端更新和“Empower yourself”工具包卡片。

更早的新闻(4 月 1 日至 9 日)

  • 2026-04-09 🧹 清理与文档完善(#200)——修复了 Openscreen 测试小计,将 Openscreen 添加到中文 README 和项目结构中,并澄清了文档中的 /cli-anything 命令语法。

  • 2026-04-08 🎬 Openscreen CLI 已合并(#183)——屏幕录制编辑器工具,包含 101 个测试。☁️ CloudAnalyzer CLI 已合并(#181)——云成本分析工具,包含 27 条命令。🌊 SeaClip / PM2 / ChromaDB 工具已合并(#129)。

  • 2026-04-07 🔄 Dify Workflow CLI 已合并(#191)——工作流自动化封装。🔧 Inkscape 自动保存修复(#193,修复 #182)。🛡️ DomShell 安全加固(#156)——为浏览器 CLI 添加 URL 验证和 DOM 清理。🥧 Pi Coding Agent 扩展 已合并(#178)。

  • 2026-04-06 🔍 Exa CLI 已合并(#172)——AI 驱动的网页搜索与问答工具。🎮 Godot CLI 已合并(#140)——游戏引擎工具,包含完整的演示游戏 E2E 流水线。☁️ CloudAnalyzer 的审查修复和前端改进也已落地。

  • 2026-04-03 🧪 WireMock CLI 已合并(#170)——用于 API 测试的 HTTP mock 服务器工具。🥧 Pi Coding Agent 扩展支持也已落地,CLI 演示录像已添加到文档中。

  • 2026-04-01 ⚔️ Slay the Spire II CLI 已合并(#148)——牌组构建类 roguelike 工具。🎥 VideoCaptioner CLI 已合并(#166)——AI 驱动的视频字幕工具。🛰️ IntelWatch 已添加到注册表,用于 B2B OSINT 工作流。

更早的新闻(3 月 23 日至 30 日)

  • 2026-03-30 🏗️ CLI-Anything v0.2.0——HARNESS.md 渐进式披露重新设计。详细指南已提取到 guides/ 中以便按需加载。第 1 至 7 阶段现已连续。关键原则和规则已合并为一个权威章节。

  • 2026-03-29 📐 Blender 技能文档已更新——强制使用绝对渲染路径并修正前置条件。

  • 2026-03-28 🌐 CLIBrowser 已添加到 CLI-Hub 注册表,用于代理可访问的浏览器自动化。

  • 2026-03-27 📚 Zotero SKILL.md 增强了面向代理的约束;修复了 REPL 配置和可执行文件解析问题。

  • 2026-03-26 📖 Zotero CLI harness 已为 Zotero 桌面版落地(文献库管理、集合、引用)。修复了 Draw.io 自定义 ID 缺陷(#132)以及 registry.json 语法问题。

  • 2026-03-25 🎮 RenderDoc CLI 已合并,用于 GPU 帧捕获分析。FreeCAD 已更新至 v1.1。修正了 Blender EEVEE 引擎名称。强化了 Zoom token 权限。

  • 2026-03-24 🏭 新增 FreeCAD CLI,包含 17 个分组下的 258 条命令。iTerm2 和 Teltonika RMS harness 已加入 registry。

  • 2026-03-23 🤖 发布 CLI-Hub meta-skill —— 智能体现在可以自主发现并安装 CLI。Krita CLI harness 已合并,用于数字绘画。

更早的新闻(3 月 11–22 日)

  • 2026-03-22 🎵 MuseScore CLI 已合并,支持移调、导出和乐器管理。

  • 2026-03-21 🔧 基础设施改进 —— 优化了多个 CLI 的测试 harness 和文档。增强了若干后端的 Windows 兼容性。

  • 2026-03-20 🌐 新增 Novita AI CLI,用于访问 OpenAI 兼容 API。改进了 registry 元数据,以便更好地进行 hub 发现。

  • 2026-03-19 📦 优化了各 harness 的包结构。改进了 SKILL.md 生成,提供更好的命令文档。

  • 2026-03-18 🧪 扩展测试覆盖 —— 为多个 CLI 增加了额外的 E2E 场景和边界情况验证。

  • 2026-03-17 🌐 发布 CLI-Hub —— 一个中央 registry,你可以浏览、搜索,并用一条 pip 命令安装任何 CLI。

  • 2026-03-16 🤖 新增 SKILL.md 生成(阶段 6.5)—— 现在每个生成的 CLI 都附带一个可被 AI 发现的 skill 定义。

  • 2026-03-15 🐾 来自社区的对 OpenClaw 的支持!合并了 Windows cygpath 防护,以实现跨平台支持。

  • 2026-03-14 🔒 修复了 GIMP Script-Fu 路径注入漏洞,并新增了 日文 README 翻译。

  • 2026-03-13 🔌 Qodercli 插件作为社区贡献正式合并,并附带专用安装脚本。

  • 2026-03-12 📦 Codex skill 集成落地,将 CLI-Anything 带到又一个 AI 编码平台。

  • 2026-03-11 📞 新增 Zoom 视频会议 harness,成为第 11 个受支持的应用程序。


🤔 为什么选择 CLI?

CLI 是人类和 AI 智能体的通用接口:

• 结构化且可组合 —— 文本命令契合 LLM 格式,并可串联以构建复杂工作流

• 轻量且通用 —— 开销极小,无需依赖即可在所有系统上运行

• 自描述 —— --help 标志提供智能体可自动发现的文档

• 久经验证 —— Claude Code 每天通过 CLI 运行数千个真实工作流

• 智能体优先设计 —— 结构化 JSON 输出消除了解析复杂性

• 确定且可靠 —— 一致的结果带来可预测的智能体行为

🚀 快速开始

CLI-Anything 有两个同样有用的起点:

目标 从这里开始
立即使用现有的 CLI 生态系统 安装 cli-anything-hub,浏览 registry,并安装现成的 CLI。
构建新的智能体原生 CLI 为你的 agent 安装 CLI-Anything 插件/技能,然后运行 7 阶段 harness 生成器。

阶段 1:赋能自己——你的 CLI 工具包

先安装 CLI-Hub 包管理器。它让你通过一条命令浏览、搜索、查看、安装、更新、卸载和启动 CLI-Anything harness 以及公共第三方 CLI。

PIP

pip install cli-anything-hub
命令 作用
cli-hub list 浏览注册表
cli-hub search <query> 按关键词搜索
cli-hub info <name> 查看某个 CLI
cli-hub install <name> 从 CLI-Hub 安装
cli-hub update <name> 更新已安装项
cli-hub uninstall <name> 移除已安装项
cli-hub launch <name> [args...] 运行已安装的 CLI
# Browse what is available
cli-hub list
cli-hub search image

# Install and try a CLI immediately
cli-hub install gimp
cli-hub info gimp
cli-hub launch gimp

有些 CLI 封装了真实的桌面或后端软件。如果所选的 CLI 需要 GIMP、Blender、LibreOffice 或其他上游工具,也要安装该上游应用。

阶段 1.5:赋能你的 agent——一条命令完成安装

为兼容 SKILL 的 agent 提供 CLI-Hub 元技能,让它们能够发现并安装适合任务的 CLI。

也可在以下平台获取: ClawHub、SkillHub、SkillHub.cn

NPX SKILLS

npx skills add HKUDS/CLI-Anything --skill cli-hub-meta-skill -g -y

兼容: OpenClaw、Nanobot、Claude Code、Codex、Reasonix、Antigravity 以及其他兼容 SKILL 的 agent。

然后输入提示:

Find appropriate CLI software in CLI-Hub and complete the task: ...

阶段 3:当注册表中还没有时,构建一个新的 CLI

当你需要为软件、代码库或内部工具构建一个尚未通过 CLI-Hub 提供的新 harness 时,使用 CLI-Anything 生成器。

前置条件

选择你的 Agent 平台

⚡ Claude Code

步骤 1:添加 Marketplace

CLI-Anything 以托管在 GitHub 上的 Claude Code 插件 marketplace 形式分发。

# Add the CLI-Anything marketplace
/plugin marketplace add HKUDS/CLI-Anything

步骤 2:安装插件

# Install the cli-anything plugin from the marketplace
/plugin install cli-anything

就这样。该插件现在已可在你的 Claude Code 会话中使用。

Windows 用户注意: Claude Code 通过 bash 运行 shell 命令。在 Windows 上,请安装 Git for Windows(包含 bash 和 cygpath)或使用 WSL;否则命令可能会失败并报 cygpath: command not found。

步骤 3:一条命令构建 CLI

# /cli-anything <software-path-or-repo>
# Generate a complete CLI for GIMP (all 7 phases)
/cli-anything ./gimp

跨 Claude Code 版本的命令兼容性:

  • 使用 /cli-anything 作为主要入口点。
  • 在较旧的构建版本中,如果在确认插件已安装并加载后仍无法识别 /cli-anything,请尝试旧式入口形式 /cli-anything:cli-anything。
  • 辅助命令保持 :subcommand 形式(例如 /cli-anything:refine)。

如果你看到 Unknown skill: cli-anything,请先专注于插件安装/加载(两种入口形式引用的是同一个技能,因此互换形式也无济于事):

  1. 重新加载插件命令:/reload-plugins
  2. 验证插件已加载:/help cli-anything(应出现 CLI-Anything 帮助/命令)
  3. Reinstall from marketplace if needed:
    • /plugin marketplace add HKUDS/CLI-Anything
    • /plugin install cli-anything
  4. After confirming the plugin is available, retry the entry command:
    • 首选:/cli-anything ./gimp
    • 仅限较旧构建版本:/cli-anything:cli-anything ./gimp

这会运行完整流水线:

  1. 🔍 分析 — 扫描源代码,将 GUI 操作映射到 API
  2. 📐 设计 — 规划命令组、状态模型、输出格式
  3. 🔨 实现 — 构建带 REPL、JSON 输出、撤销/重做的 Click CLI
  4. 📋 规划测试 — 创建包含单元 + E2E 测试计划的 TEST.md
  5. 🧪 编写测试 — 实现全面的测试套件
  6. 📝 文档 — 用结果更新 TEST.md
  7. 📦 发布 — 创建 setup.py,安装到 PATH

步骤 4(可选):优化和改进 CLI

初次构建完成后,你可以迭代优化 CLI,以扩大覆盖范围并补充缺失的能力:

# Broad refinement — agent analyzes gaps across all capabilities
/cli-anything:refine ./gimp

# Focused refinement — target a specific functionality area
/cli-anything:refine ./gimp "I want more CLIs on image batch processing and filters"

refine 命令会在软件的完整能力与当前 CLI 覆盖范围之间进行差距分析,然后针对识别出的差距实现新命令、测试和文档。你可以多次运行它来稳步扩大覆盖范围——每次运行都是增量式的,且不会破坏已有内容。

替代方案:手动安装

如果你不想使用市场:

# Clone the repo
git clone https://github.com/HKUDS/CLI-Anything.git

# Copy plugin to Claude Code plugins directory
cp -r CLI-Anything/cli-anything-plugin ~/.claude/plugins/cli-anything

# Reload plugins
/reload-plugins

⚡ Pi 编码代理

第 1 步:安装扩展

该扩展位于本仓库的 .pi-extension/cli-anything/。将其全局安装,以便 /cli-anything 命令在所有 Pi 项目中都可用:

# Clone the repo
git clone https://github.com/HKUDS/CLI-Anything.git
cd CLI-Anything

# Install globally into Pi's extensions directory
bash .pi-extension/cli-anything/install.sh

卸载方法:

bash .pi-extension/cli-anything/install.sh --uninstall

工作原理:install.sh 会将扩展文件(包括来自 cli-anything-plugin/ 的 HARNESS.md、命令、指南、脚本和模板)复制到 ~/.pi/agent/extensions/cli-anything/,Pi 会在启动时自动发现该目录。在 Pi 中运行 /reload 或重启 Pi 即可激活。

第 2 步:一条命令构建 CLI

扩展加载后,以下命令即可使用:

# Generate a complete CLI for GIMP (all 7 phases)
/cli-anything ./gimp

# Build from a GitHub repo
/cli-anything https://github.com/blender/blender

第 3 步(可选):优化和改进 CLI

# Broad refinement — agent analyzes gaps across all capabilities
/cli-anything:refine ./gimp

# Focused refinement — target a specific functionality area
/cli-anything:refine ./gimp "batch processing and filters"

可用命令

命令 描述
/cli-anything <path-or-repo> 构建完整的 CLI 框架
/cli-anything:refine <path> [focus] 优化现有的 CLI 框架
/cli-anything:test <path-or-repo> 为 CLI 框架运行测试
/cli-anything:validate <path-or-repo> 验证 CLI 框架
/cli-anything:list [options] 列出所有 CLI-Anything 工具

⚡ OpenCode(实验性)

第 1 步:安装命令

注意:请升级到最新的 OpenCode。旧版本可能使用不同的命令路径。

将 CLI-Anything 命令以及 HARNESS.md 复制到你的 OpenCode 命令目录:

# Clone the repo
git clone https://github.com/HKUDS/CLI-Anything.git

# Global install (available in all projects)
cp CLI-Anything/opencode-commands/*.md ~/.config/opencode/commands/
cp CLI-Anything/cli-anything-plugin/HARNESS.md ~/.config/opencode/commands/

# Or project-level install
cp CLI-Anything/opencode-commands/*.md .opencode/commands/
cp CLI-Anything/cli-anything-plugin/HARNESS.md .opencode/commands/

注意:请升级到最新的 OpenCode。旧版本使用 command/(单数)而不是 commands/。如果 commands/ 不存在,请对全局和项目级安装都使用 command/。

注意:HARNESS.md 是所有命令引用的方法论规范。它必须与命令位于同一目录中。

这会添加 5 个斜杠命令:/cli-anything、/cli-anything-refine、/cli-anything-test、/cli-anything-validate 和 /cli-anything-list。

第 2 步:一条命令构建 CLI

# Generate a complete CLI for GIMP (all 7 phases)
/cli-anything ./gimp

# Build from a GitHub repo
/cli-anything https://github.com/blender/blender

该命令作为子任务运行,并遵循与 Claude Code 相同的 7 阶段方法论。

第 3 步(可选):优化和改进 CLI

# Broad refinement — agent analyzes gaps across all capabilities
/cli-anything-refine ./gimp

# Focused refinement — target a specific functionality area
/cli-anything-refine ./gimp "batch processing and filters"

⚡ Goose(桌面版 / CLI)Experimental Community

第 1 步:安装 Goose

按照适用于你操作系统的官方 Goose 说明安装 Goose(桌面版或 CLI)。

第 2 步:配置 CLI 提供程序

将 Goose 配置为使用 CLI 提供程序(例如 Claude Code),并确保该 CLI 已安装并完成身份验证。

第 3 步:在 Goose 会话中使用 CLI-Anything

Goose 配置完成后,启动一个会话,并使用上文针对 Claude Code 描述的相同 CLI-Anything 命令,例如:

/cli-anything ./gimp
/cli-anything:refine ./gimp "batch processing and filters"

注意:当 Goose 通过 CLI 提供程序运行时,它会使用该提供程序的能力和命令格式。

⚡ Qodercli Community

第 1 步:注册插件

git clone https://github.com/HKUDS/CLI-Anything.git
bash CLI-Anything/qoder-plugin/setup-qodercli.sh

这会在 ~/.qoder.json 中注册 cli-anything 插件。注册后启动一个新的 Qodercli 会话。

第 2 步:从 Qodercli 使用 CLI-Anything

/cli-anything ./gimp
/cli-anything:refine ./gimp "batch processing and filters"
/cli-anything:validate ./gimp

⚡ OpenClaw Community

第 1 步:安装技能

CLI-Anything 提供了一个原生 OpenClaw SKILL.md 文件。将其复制到你的 OpenClaw 技能目录:

# Clone the repo
git clone https://github.com/HKUDS/CLI-Anything.git

# Install to the global skills folder
mkdir -p ~/.openclaw/skills/cli-anything
cp CLI-Anything/openclaw-skill/SKILL.md ~/.openclaw/skills/cli-anything/SKILL.md

第 2 步:构建 CLI

现在你可以在 OpenClaw 中调用该技能:

@cli-anything build a CLI for ./gimp

该技能遵循与 Claude Code 和 OpenCode 相同的 7 阶段方法论。

⚡ Cursor

Cursor 会获得两条轨道:

轨道 用途 安装
生成器 使用 /cli-anything 构建新的框架(以及优化/测试/验证/列出) cursor-plugin/ 中的 Cursor 插件
消费者 从 CLI-Hub 查找/安装/使用已发布的 CLI npx skills + cli-hub(不变)

生成器 — 安装 Cursor 插件

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

Windows PowerShell:

.\CLI-Anything\cursor-plugin\scripts\install.ps1

使用 --force / -Force 升级。默认安装路径为 ~/.cursor/plugins/local/cli-anything(可通过将 CURSOR_PLUGINS_HOME 指向名为 plugins 的 目录来覆盖)。安装程序会内置 cli-anything-plugin/ 方法 资源,并写入 PLUGIN_ROOT.txt 以及 ~/.cursor/cli-anything-generator.root, 以便 Cursor 代理能够解析绝对方法路径。

重新加载 Cursor 窗口(Developer: Reload Window),然后:

/cli-anything ./gimp
/cli-anything-refine ./shotcut "picture-in-picture workflows"
/cli-anything-test ./libreoffice
/cli-anything-validate ./libreoffice
/cli-anything-list

消费者 — Hub / 技能(与生成器插件相互独立)

npx skills add HKUDS/CLI-Anything --skill cli-hub-meta-skill -g -y
# or a per-app skill, e.g. cli-anything-blender
pip install cli-anything-hub

在本地验证插件安装程序:

bash CLI-Anything/cursor-plugin/tests/test_install.sh

有关本地插件加载的故障排除,请参阅 cursor-plugin/README.md。

⚡ Codex Experimental Community

第 1 步:安装技能

运行捆绑的安装程序:

# Clone the repo
git clone https://github.com/HKUDS/CLI-Anything.git

# Install the skill
bash CLI-Anything/codex-skill/scripts/install.sh

在 Windows PowerShell 上,使用:

.\CLI-Anything\codex-skill\scripts\install.ps1

这会将技能安装到 $CODEX_HOME/skills/cli-anything(如果未设置 CODEX_HOME,则安装到 ~/.codex/skills/cli-anything)。 安装程序还会将规范的 HARNESS.md、命令规范、 按需指南、可复用的辅助脚本、技能模板和预览协议 内置到已安装技能的 references/ 和 scripts/ 目录中。 这样既能让 Codex 技能保持自包含,又以 cli-anything-plugin/ 作为 唯一可信来源。

安装后重启 Codex,以便其被发现。

第 2 步:从 Codex 使用 CLI-Anything

用自然语言描述任务,例如:

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
Use CLI-Anything to list generated harnesses under the current directory

Codex 技能采用了与 Claude Code 插件和 OpenCode 命令相同的方法,同时保持生成的 Python 测试框架格式不变。

要在本地验证自包含的 Codex 安装:

bash CLI-Anything/codex-skill/tests/test_install.sh

⚡ Hermes Experimental Community

第 1 步:安装技能

运行捆绑的安装程序:

# Clone the repo
git clone https://github.com/HKUDS/CLI-Anything.git

# Install the skill
bash CLI-Anything/hermes-skill/scripts/install.sh

在 Windows PowerShell 上,使用:

.\CLI-Anything\hermes-skill\scripts\install.ps1

这会将技能安装到 $HERMES_HOME/skills/cli-anything-hermes(如果未设置 HERMES_HOME,则安装到 ~/.hermes/skills/cli-anything-hermes)。

安装后重启 Hermes Agent,以便其被发现。

第 2 步:从 Hermes 使用 CLI-Anything

用自然语言描述任务,例如:

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

Hermes 技能采用了与 Claude Code 插件和 Codex 技能相同的方法,将 Hermes 的 terminal、execute_code、delegate_task 以及 read_file / write_file / patch 工具绑定到 7 阶段测试框架工作流,同时 保持生成的 Python 测试框架格式不变。

⚡ Reasonix Experimental Community

第 1 步:安装技能

运行捆绑的安装程序:

# Clone the repo
git clone https://github.com/HKUDS/CLI-Anything.git

# Install the skill
bash CLI-Anything/reasonix-skill/scripts/install.sh

在 Windows PowerShell 上,使用:

.\CLI-Anything\reasonix-skill\scripts\install.ps1

这会将技能安装到 Reasonix 的全局技能目录 ~/.reasonix/skills/cli-anything。

安装后重启 Reasonix,以便其被发现。

第 2 步:从 Reasonix 使用 CLI-Anything

用自然语言描述任务,例如:

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

Reasonix 技能采用了与 Claude Code 插件和 Codex/Hermes 技能相同的方法,将 Reasonix 的 bash、write_file、edit_file、 multi_edit、grep、glob 以及可选的 mcp__codegraph__search / mcp__codegraph__context 工具绑定到 7 阶段测试框架工作流,同时保持生成的 Python 测试框架格式不变。

⚡ GitHub Copilot CLI Community

第 1 步:安装插件

git clone https://github.com/HKUDS/CLI-Anything.git
cd CLI-Anything
copilot plugin install ./cli-anything-plugin

这会将 CLI-Anything 插件安装到 GitHub Copilot CLI。该插件现在应该可以在你的 GitHub Copilot CLI 会话中使用了。

第 2 步:从 GitHub Copilot CLI 使用 CLI-Anything

/cli-anything ./gimp
/cli-anything:refine ./gimp "batch processing and filters"
/cli-anything:validate ./gimp

🔮 更多平台(即将推出)

CLI-Anything 被设计为平台无关。计划支持更多 AI 编程代理:

  • Cursor — 可通过 cursor-plugin/ 中的 Cursor 插件(生成器)以及 Hub/技能(消费者)使用
  • Codex — 可通过 codex-skill/ 中捆绑的技能使用
  • Windsurf — 即将推出
  • 你最喜欢的工具 — 欢迎贡献!请参阅 opencode-commands/ 目录以获取参考实现。

使用生成的 CLI

无论你使用哪个平台构建它,生成的 CLI 都以相同方式工作:

# Install to PATH
cd gimp/agent-harness && pip install -e .

# Use from anywhere
cli-anything-gimp --help
cli-anything-gimp project new --width 1920 --height 1080 -o poster.json
cli-anything-gimp --json layer add -n "Background" --type solid --color "#1a1a2e"

# Enter interactive REPL
cli-anything-gimp

现在每个仓库内的 harness 都在 skills/cli-anything-<software>/SKILL.md 处拥有一个规范的 SKILL.md,这使得该 monorepo 可以通过 npx skills add HKUDS/CLI-Anything --list 直接被发现。已安装的 harness 包仍然在 cli_anything/<software>/skills/SKILL.md 处附带一份兼容副本,并且 REPL 横幅在存在时会优先使用仓库根目录的规范文件,否则回退到打包的副本。


🤖 用 CLI-Hub 赋能你的智能体

CLI-Hub 让智能体能够自主发现、安装并使用它们所需的 CLI。

npx skills add HKUDS/CLI-Anything --skill cli-hub-meta-skill -g -y

也可在以下平台获取: ClawHub、SkillHub、SkillHub.cn

然后提示:

Find appropriate CLI software in CLI-Hub and complete the task: ...

该元技能将智能体指向实时的 CLI-Hub 目录,在那里它们可以选择一个 CLI、安装它,并阅读其自身的 SKILL.md 以了解特定任务的用法。


💡 CLI-Anything 的愿景:构建智能体原生软件

• 🌐 通用访问 - 每个软件都能通过结构化 CLI 立即被智能体控制。

• 🔗 无缝集成 - 智能体无需 API、GUI、重新构建或复杂封装即可控制任何应用。

• 🚀 面向未来的生态系统 - 用一条命令将人类设计的软件转变为智能体原生工具。


🔧 何时使用 CLI-Anything

类别 如何做到智能体原生 典型示例
📂 GitHub 仓库 通过自动生成 CLI,将任何开源项目转变为智能体可控的工具 VSCodium、WordPress、Calibre、Zotero、Joplin、Logseq、Penpot、Super Productivity
🤖 AI/ML 平台 通过结构化命令自动化模型训练、推理流水线和超参数调优 Stable Diffusion WebUI、ComfyUI、Ollama、InvokeAI、Text-generation-webui、Open WebUI、Fooocus、Kohya_ss、AnythingLLM、SillyTavern
📊 数据与分析 支持程序化的数据处理、可视化和统计分析工作流 JupyterLab、Apache Superset、Metabase、Redash、DBeaver、KNIME、Orange、OpenSearch Dashboards、Lightdash
💻 开发工具 通过命令接口简化代码编辑、构建、测试和部署流程 Jenkins、Gitea、Hoppscotch、Portainer、pgAdmin、SonarQube、ArgoCD、OpenLens、Insomnia、Beekeeper Studio、iTerm2
🎨 创意与媒体 以程序化方式控制内容创作、编辑和渲染工作流 Blender、GIMP、OBS Studio、Audacity、WaveTone、Krita、Kdenlive、Shotcut、Inkscape、Darktable、LMMS、Ardour
🎮 游戏开发 通过无头引擎接口管理游戏项目、场景、导出和脚本 Godot Engine、s&box
🔬 科学计算 自动化研究工作流、模拟和复杂计算 ImageJ、FreeCAD、QGIS、ParaView、Gephi、LibreCAD、Stellarium、KiCad、JASP、Jamovi
🏢 企业与办公 将业务应用和生产力工具转变为智能体可访问的系统 NextCloud、GitLab、Grafana、Mattermost、LibreOffice、AppFlowy、NocoDB、Odoo (Community)、Plane、ERPNext
📞 沟通与协作 通过结构化 CLI 自动化会议安排、参与者管理、录制检索和报告 Zoom、Jitsi Meet、BigBlueButton、Mattermost
📐 图表与可视化 以程序化方式创建和操作图表、流程图、架构图和可视化文档 Draw.io (diagrams.net)、Mermaid、PlantUML、Excalidraw、yEd
🌐 网络与基础设施 通过结构化 CLI 命令管理网络服务、DNS、广告拦截和基础设施 AdGuardHome
🧪 测试与模拟 控制 HTTP 模拟服务器、管理测试桩、录制和回放 API 流量以进行集成测试 WireMock
🔬 图形与 GPU 调试 分析 GPU 帧捕获、检查管线状态、导出着色器、对比渲染状态 RenderDoc
⚙️ 制造与机器控制 从设计文件到物理输出驱动真实硬件——通过软件真实后端,基于机器配置文件执行安全门控的检测、预检、点动和框选命令 MeerK40t(激光)、Ink/Stitch(刺绣)
🎬 视频与字幕 转写语音、翻译字幕、将样式化字幕烧录进视频——完整的字幕流水线 VideoCaptioner
🔍 AI 原生搜索 通过基于嵌入的 API 进行神经搜索和深度网络搜索,并检索结构化内容 Exa
✨ AI 内容生成 通过 AI 驱动的云端 API 生成专业交付物(幻灯片、文档、图表、网站、研究报告) AnyGen、Gamma、Beautiful.ai、Tome

CLI-Anything 的核心特性

智能体与软件之间的鸿沟

AI 智能体擅长推理,却极不擅长使用真正的专业软件。当前的解决方案要么是脆弱的 UI 自动化,要么是功能受限的 API,要么是丢失了 90% 功能的简化重实现。

CLI-Anything 的解决方案:将任何专业软件转化为智能体原生工具,同时不损失任何能力。

当前痛点 CLI-Anything 的解决之道
🤖 “AI 用不了真正的工具” 直接集成真实的软件后端(Blender、LibreOffice、FFmpeg)——完整的专业能力,零妥协
💸 “UI 自动化总是崩溃” 没有截图,没有点击,没有 RPA 的脆弱性。纯粹的命令行可靠性,配以结构化接口
📊 “智能体需要结构化数据” 内置 JSON 输出,便于智能体无缝消费;同时提供人类可读格式用于调试
🔧 “定制集成成本高昂” 一个 Claude 插件即可通过经过验证的 7 阶段流水线为任何代码库自动生成 CLI
⚡ “原型与生产之间的鸿沟” 2,280+ 项测试,经过真实软件验证。在 18 个主要应用中久经实战考验

🎯 你能用 CLI-Anything 做什么?

🛠️ 让智能体接管你的工作流

无论是专业还是日常——只需把代码库扔给 /cli-anything。创意工作用 GIMP、Blender、Shotcut。日常任务用 LibreOffice、OBS Studio。没有源代码?找一个开源替代品,把它扔进去。你会立刻得到一个智能体可用的完整 CLI。

🔗 将零散的 API 统一为一个 CLI

厌倦了在碎片化的 Web 服务 API 之间来回折腾?把文档或 SDK 手稿喂给 /cli-anything,你的智能体就能获得一个强大、有状态的 CLI,将这些单独的端点包装成连贯的命令组。一个工具取代数十次原始 API 调用——能力更强,同时节省 token。

🚀 替换或增强 GUI 智能体

CLI-Anything 可以直接取代基于 GUI 的智能体方案——不再需要截图,不再有脆弱的像素点击。但有趣的是:一旦你用 /cli-anything 处理了某个 GUI 软件,你就可以完全通过代码和终端合成智能体任务、评估器和基准测试——全自动化、可迭代优化、效率大幅提升。


✨ ⚙️ CLI-Anything 如何工作

🏗️ 全自动 7 阶段流水线

从代码库分析到 PyPI 发布——该插件完全自动地处理架构设计、实现、测试规划、测试编写和文档。

🎯 真实的软件集成

直接调用真实应用程序进行实际渲染。LibreOffice 生成 PDF,Blender 渲染 3D 场景,Audacity 通过 sox 处理音频。零妥协,零玩具实现。

🔁 智能会话管理

具有撤销/重做功能的持久化项目状态,以及统一的 REPL 界面(ReplSkin),在所有 CLI 中提供一致的交互体验。

📦 零配置安装

简单的 pip install -e . 即可将 cli-anything- 直接放入 PATH。代理通过标准的 which 命令发现工具。无需设置,无需包装器。

🧪 生产级测试

多层验证:使用合成数据的单元测试,使用真实文件和软件的端到端测试,以及对已安装命令的 CLI 子进程验证。

🐍 清晰的包架构

所有 CLI 都组织在 cli_anything.* 命名空间下——无冲突、可通过 pip 安装,命名一致:cli-anything-gimp、cli-anything-blender 等。

🤖 SKILL.md 生成

每个生成的 CLI 现在在 skills/cli-anything-<software>/SKILL.md 处都有一个规范的 SKILL.md。这使得当前 monorepo 可以直接被 npx skills 使用,而位于 cli_anything/<software>/skills/SKILL.md 的打包兼容副本则保留了已安装 harness 的行为。

SKILL.md 提供的内容:

  • YAML frontmatter,包含名称和描述,用于代理技能发现
  • 命令组,记录所有可用的子命令
  • 使用示例,用于常见工作流
  • 代理特定指南,用于 JSON 输出、错误处理和编程式使用

SKILL.md 文件在流水线的第 6.5 阶段使用 skill_generator.py 自动生成,它直接从 CLI 的 Click 装饰器、setup.py 和 README 中提取元数据。生成器现在写入规范的仓库根技能文件,并刷新已安装 harness 使用的包本地兼容副本。在此仓库内,REPL 横幅将代理指向规范的根技能路径;在 pip install 之后,它会回退到打包副本。


🎬 真实世界演示

使用生成的 CLI 的 AI 代理生成完整、有用的工件——无需 GUI。

FreeCAD — 好奇号漫游车,通过预览、实时预览和轨迹

Harness: cli-anything-freecad | 预览栈: preview + preview live + trajectory.json | 工件: 代理构建的好奇号风格漫游车

一个代理逐步组装一个受好奇号启发的漫游车,同时发布真实的 FreeCAD 预览包,刷新实时预览会话,并记录命令到预览的历史以供后续回放。最终演示展示了工件在最终展示之前逐步演变的过程。

FreeCAD Curiosity rover demo driven by preview, live preview, and trajectory history

README GIF 由完整的本地演示视频生成,采用速度调整的高质量 ffmpeg 调色板工作流。

Blender — 轨道中继无人机,通过预览、实时预览和轨迹

Harness: cli-anything-blender | 预览栈: preview + preview live + trajectory.json | 工件: 代理构建的轨道中继无人机

一个代理使用 Blender harness 在真实的预览循环下培育一个硬表面轨道中继无人机:每个阶段推送新的渲染支持的包,实时会话跟踪当前头部,轨迹将每个命令与匹配的视觉状态联系起来。演示以完成的场景结束,准备好进行精美的转盘展示。

Blender orbital relay drone demo driven by preview, live preview, and trajectory history

README GIF 由完整本地演示视频生成,采用速度调整的高质量 ffmpeg 调色板工作流。

Draw.io — HTTPS 握手图

测试框架: cli-anything-drawio | 耗时: 约 4 分钟 | 产物: .drawio + .png

智能体完全通过 CLI 命令从零开始创建完整的 HTTPS 连接生命周期图——TCP 三次握手、TLS 协商、加密数据交换以及 TCP 四次挥手。

Draw.io CLI demo: building an HTTPS handshake diagram

最终产物

HTTPS handshake sequence diagram

由 @zhangxilong-43 贡献

Slay the Spire II — 游戏自动化

测试框架: cli-anything-slay-the-spire-ii | 产物: 自动化游戏会话

智能体使用 CLI 测试框架完成一局 Slay the Spire II——读取游戏状态、选择卡牌、选择路径,并实时做出战略决策。

Slay the Spire II CLI gameplay demo

由 @TianyuFan0504 贡献

VideoCaptioner — 自动生成字幕

测试框架: cli-anything-videocaptioner | 产物: 带字幕的视频帧

智能体使用 VideoCaptioner CLI 自动生成样式化字幕并叠加到视频内容上,支持双语文本渲染和可自定义格式。

由 @WEIFENG2333 贡献

ArcGIS Pro — 通过 MCP 桥接实现实时智能体制图

测试框架: arcgis-pro(注册于 public_registry.json) | 模式: live-Pro MCP 桥接 | 产物: 在运行中的 ArcGIS Pro 会话中由智能体驱动的地图导航

智能体通过 MCP 桥接驱动一个实时、打开的 ArcGIS Pro 会话——读取项目、将地图缩放至要素图层、运行地理处理并导出布局——每一步都在你眼前于 Pro 内执行。ArcGIS Pro 是 Esri 的商业 GIS 桌面软件(仅限 Windows,需授权),因此这里封装的是其官方 ArcPy / ArcGIS Pro SDK,而非从源码生成——是 QGIS 测试框架在 ArcGIS Pro 上的对应物。

ArcGIS Pro live-bridge demo: an agent driving a running ArcGIS Pro session over MCP

README GIF 由完整本地演示视频生成,采用高质量 ffmpeg 调色板工作流。

由 @Jasper0122 贡献

更多 CLI 演示即将推出。


🎬 演示

🎯 通用

CLI-Anything 适用于任何有代码库的软件——没有领域限制或架构限制。

🏭 专业级测试

已在 18 个多样且复杂的应用程序上测试,涵盖创意、生产力、通信、图表绘制、AI 图像生成、AI 内容生成、网络广告拦截、本地 LLM 推理、原生调试和图形性能分析等领域,这些领域此前对 AI 智能体而言难以触及。

🎨 多样化的领域覆盖

从创意工作流(图像编辑、3D 建模、矢量图形)到生产工具(音频、办公、直播、视频编辑)。

✅ 完整的 CLI 生成

每个应用程序都获得了完整、生产就绪的 CLI 接口——不是演示,而是保留全部能力的全面工具访问。

软件 领域 CLI 命令 后端 测试
🎨 GIMP 图像编辑 cli-anything-gimp Pillow + GEGL/Script-Fu ✅ 107
🧊 Blender 3D 建模与渲染 cli-anything-blender bpy(Python 脚本) ✅ 208
✏️ Inkscape 矢量图形 cli-anything-inkscape 直接操作 SVG/XML ✅ 202
🎵 Audacity 音频制作 cli-anything-audacity Python wave + sox ✅ 161
WaveTone 音频转录 cli-anything-wavetone JSON 清单 + 真实启动 WaveTone 新增
🌐 浏览器 浏览器自动化 cli-anything-browser DOMShell MCP + 无障碍树 ✅ 新增
Web Yu-pri 日本邮政运输标签 cli-anything-web-yu-pri Playwright + Web Yu-pri 表单 ✅ 新增
📄 LibreOffice 办公套件(Writer、Calc、Impress) cli-anything-libreoffice ODF 生成 + 无头 LO ✅ 158
OpenRefine 数据清洗 cli-anything-openrefine OpenRefine 本地 HTTP API ✅ 76
⚡ n8n 工作流自动化 cli-anything-n8n n8n REST API v1.1.1 ✅ 55+ 条命令
📧 Mailchimp 电子邮件营销与自动化 cli-anything-mailchimp Mailchimp Marketing API v3.0 ✅ 303 条命令
📚 Zotero 参考文献管理 cli-anything-zotero 本地 SQLite + 连接器 + 本地 API ✅ 新增
📖 Calibre 电子书库管理 cli-anything-calibre calibredb + ebook-convert + ebook-meta ✅ 58
📓 Joplin 笔记与待办事项 cli-anything-joplin Joplin 终端 CLI 子进程 ✅ 134
📝 Mubu 知识管理与大纲 cli-anything-mubu 本地 Mubu 数据 + 同步日志 ✅ 96
📹 OBS Studio 直播与录制 cli-anything-obs-studio JSON 场景 + obs-websocket ✅ 153
📱 NSLogger iOS/macOS 日志捕获 cli-anything-nslogger NSLogger 有线协议 + 原生 macOS Bonjour ✅ 139
🎞️ Kdenlive 视频编辑 cli-anything-kdenlive MLT XML + melt 渲染器 ✅ 155
🎬 Shotcut 视频编辑 cli-anything-shotcut 直接 MLT XML + melt ✅ 154
🎬 Openscreen 屏幕录制编辑器 cli-anything-openscreen ffmpeg 后端 ✅ 101
📞 Zoom 视频会议 cli-anything-zoom Zoom REST API (OAuth2) ✅ 22
🎵 MuseScore 乐谱 cli-anything-musescore mscore CLI (MSCX/MusicXML) ✅ 56
📐 Draw.io 图表绘制 cli-anything-drawio mxGraph XML + draw.io CLI ✅ 138
EEZ Studio 嵌入式 UI / 仪器自动化 cli-anything-eez-studio .eez-project JSON + EEZ Studio Node 后端 ✅ 新增
⛓️ ETH2 QuickStart DevOps / 以太坊 cli-anything-eth2-quickstart eth2-quickstart shell 自动化 + JSON 健康检查 ✅ 18
🧜 Mermaid Live Editor 图表绘制 cli-anything-mermaid Mermaid 状态 + mermaid.ink 渲染器 ✅ 10
✨ AnyGen AI 内容生成 cli-anything-anygen AnyGen REST API (anygen.io) ✅ 50
🧠 NotebookLM AI 研究助手 cli-anything-notebooklm NotebookLM CLI 封装(实验性) ✅ 21
🧩 Dify Workflow Dify DSL 编辑 cli-anything-dify-workflow 开源 dify-workflow CLI 的封装 ✅ 11
🖼️ ComfyUI AI 图像生成 cli-anything-comfyui ComfyUI REST API ✅ 70
🛡️ AdGuard Home 全网广告拦截 cli-anything-adguardhome AdGuard Home REST API ✅ 36
🦙 Ollama 本地 LLM 推理 cli-anything-ollama Ollama REST API ✅ 98
🧬 Uni-Mol Tools 分子性质预测(AI4S) cli-anything-unimol-tools Uni-Mol 分子机器学习后端 ✅ 67
🎬 VideoCaptioner AI 视频字幕 cli-anything-videocaptioner videocaptioner CLI (PyPI) ✅ 26
🎨 Sketch UI 设计 sketch-cli sketch-constructor (Node.js) ✅ 19
🎮 Godot Engine 游戏开发 cli-anything-godot Godot 4.x 无头子进程 ✅ 24
📦 s&box 游戏开发 cli-anything-sbox Source 2 游戏引擎 - 对 .scene/.prefab/.vmat/.vsnd JSON 的直接文件 I/O ✅ 244
🐞 LLDB 原生调试 cli-anything-lldb LLDB Python API ✅ 27
🟩 Nsight Graphics CLI GPU 调试与性能分析 cli-anything-nsight-graphics 官方 ngfx / ngfx-capture 编排 + GPU Trace 摘要 + 回放分析 ✅ 51
🔍 Exa AI 原生网络搜索 cli-anything-exa exa-py SDK ✅ 40
📈 Unreal Insights 性能分析 cli-anything-unrealinsights 后台跟踪会话 + 引擎匹配的 UnrealInsights 构建 + 无头导出 ✅ 50
☁️ CloudAnalyzer 点云 / 轨迹质量保证 cli-anything-cloudanalyzer CloudAnalyzer (Python API) ✅ 14
🗺️ QGIS 地理空间分析与制图 cli-anything-qgis PyQGIS + qgis_process ✅ 22
🔩 3MF 用于 3D 打印的网格几何编辑器 cli-anything-3mf numpy、scipy、trimesh ✅ 50
🗄️ Tigris 对象存储(兼容 S3、全局、无出口流量费)——存储桶、对象、快照、IAM、访问密钥 cli-anything-tigris 封装官方 tigris CLI 的 subprocess ✅ 新增
总计 ✅ 2,461

全部 2,461 项测试 100% 通过率——1,732 项单元测试 + 579 项端到端测试 + 19 项 Node.js 测试。


📊 测试结果

每个 CLI 测试框架都经过严格的多层测试,以确保生产可靠性:

层级 测试内容 示例
单元测试 使用合成数据对每个核心函数进行隔离测试 test_core.py——项目创建、图层操作、滤镜参数
E2E 测试(原生) 项目文件生成流水线 有效的 ODF ZIP 结构、正确的 MLT XML、SVG 格式良好
E2E 测试(真实后端) 真实软件调用 + 输出验证 LibreOffice → 带有 %PDF- 魔数字节的 PDF,Blender → 渲染的 PNG
CLI 子进程测试 通过 subprocess.run 安装的命令 cli-anything-gimp --json project new → 有效的 JSON 输出
================================ Test Summary ================================
gimp          107 passed  ✅   (64 unit + 43 e2e)
blender       208 passed  ✅   (150 unit + 58 e2e)
inkscape      202 passed  ✅   (148 unit + 54 e2e)
audacity      161 passed  ✅   (107 unit + 54 e2e)
wavetone       30 passed  ✅   (24 unit + 6 default e2e, 2 backend-gated e2e skipped; 32 passed opt-in)
libreoffice   158 passed  ✅   (89 unit + 69 e2e)
mubu           96 passed  ✅   (85 unit + 11 e2e)
obs-studio    153 passed  ✅   (116 unit + 37 e2e)
nslogger      139 passed  ✅   (97 unit + 42 e2e)
kdenlive      155 passed  ✅   (111 unit + 44 e2e)
shotcut       154 passed  ✅   (110 unit + 44 e2e)
zoom           22 passed  ✅   (22 unit + 0 e2e)
drawio        138 passed  ✅   (116 unit + 22 e2e)
eth2-quickstart 18 passed ✅   (18 unit + 3 e2e skipped)
mermaid        10 passed  ✅   (5 unit + 5 e2e)
anygen         50 passed  ✅   (40 unit + 10 e2e)
notebooklm     21 passed  ✅   (21 unit + 0 e2e)
comfyui        73 passed  ✅   (63 unit + 10 e2e)
adguardhome    36 passed  ✅   (24 unit + 12 e2e)
ollama         98 passed  ✅   (87 unit + 11 e2e)
sketch         19 passed  ✅   (19 jest, Node.js)
renderdoc      59 passed  ✅   (45 unit + 14 e2e)
cloudcompare   88 passed  ✅   (49 unit + 39 e2e)
openscreen    101 passed  ✅   (78 unit + 23 e2e)
lldb           27 passed  ✅   (23 unit + 4 e2e)
nsight-graphics 51 passed ✅   (46 unit/CLI + 5 local e2e)
unrealinsights 50 passed  ✅   (49 unit + 1 e2e, 9 backend-gated e2e skipped)
cloudanalyzer  14 passed  ✅   (7 unit + 7 e2e)
3mf            50 passed  ✅   (50 unit)
joplin        134 passed  ✅   (107 unit + 27 e2e, 1 skipped on Windows)
──────────────────────────────────────────────────────────────────────────────
TOTAL        2,464 passed  ✅   100% pass rate

🏗️ CLI-Anything 的架构

CLI-Anything Architecture

🎯 核心设计原则

  1. 真实的软件集成——CLI 生成有效的项目文件(ODF、MLT XML、SVG),并委托真实应用程序进行渲染。我们构建的是面向软件的结构化接口,而非替代品。

  2. 灵活的交互模式——每个 CLI 都以双模式运行:用于交互式智能体会话的有状态 REPL + 用于脚本/流水线的子命令接口。运行裸命令 → 进入 REPL 模式。

  3. 一致的用户体验——所有生成的 CLI 共享统一的 REPL 界面(repl_skin.py),具有品牌化横幅、样式化提示符、命令历史、进度指示器和标准化格式。

  4. 智能体原生设计——每个命令都内置 --json 标志,为机器消费提供结构化数据,而人类可读的表格则服务于交互式使用。智能体通过标准的 --help 和 which 命令发现功能。

  5. 零妥协依赖——真实软件是硬性要求——没有回退,没有优雅降级。当后端缺失时测试失败(而非跳过),以确保功能的真实性。


📂 项目结构

cli-anything/
├── 📄 README.md                          # You are here
├── 📁 assets/                            # Images and media
│   ├── icon.png                          # Project icon
│   └── teaser.png                        # Teaser figure
│
├── 🔌 cli-anything-plugin/               # The Claude Code plugin
│   ├── HARNESS.md                        # Methodology SOP (source of truth)
│   ├── README.md                         # Plugin documentation
│   ├── QUICKSTART.md                     # 5-minute getting started
│   ├── PUBLISHING.md                     # Distribution guide
│   ├── repl_skin.py                      # Unified REPL interface
│   ├── commands/                         # Plugin command definitions
│   │   ├── cli-anything.md               # Main build command
│   │   ├── refine.md                     # Expand existing harness coverage
│   │   ├── test.md                       # Test runner
│   │   └── validate.md                   # Standards validation
│   └── scripts/
│       └── setup-cli-anything.sh         # Setup script
│
├── 🖱️ cursor-plugin/                     # Cursor Desktop generator plugin
│   ├── .cursor-plugin/plugin.json        # Cursor plugin manifest
│   ├── commands/                         # /cli-anything slash commands
│   ├── skills/                           # Supporting generator skill
│   ├── rules/                            # Phase-gate guidance
│   ├── scripts/                          # Bash/PowerShell installers + vendored helpers
│   └── tests/                            # Installer resource-sync regression tests
├── 🤖 codex-skill/                      # Self-contained Codex skill installer
│   ├── SKILL.md                         # Codex workflow entry point
│   ├── agents/                          # Codex UI metadata
│   ├── scripts/                         # Bash and PowerShell installers
│   └── tests/                           # Installer resource-sync regression test
├── 🧭 hermes-skill/                     # Hermes Agent skill entry point
├── 🧠 reasonix-skill/                   # Reasonix skill entry point
├── 🎨 gimp/agent-harness/               # GIMP CLI (107 tests)
├── 🧊 blender/agent-harness/            # Blender CLI (208 tests)
├── ✏️ inkscape/agent-harness/            # Inkscape CLI (202 tests)
├── 🎵 audacity/agent-harness/           # Audacity CLI (161 tests)
├── wavetone/agent-harness/              # WaveTone CLI (32 tests: 30 default + 2 backend-gated e2e)
├── 🌐 browser/agent-harness/            # Browser CLI (DOMShell MCP, new)
├── 🌐 web-yu-pri/agent-harness/         # Japan Post Web Yu-pri CLI (new)
├── 📄 libreoffice/agent-harness/        # LibreOffice CLI (158 tests)
├── 🧹 openrefine/agent-harness/         # OpenRefine CLI (76 tests: 64 unit + 12 real backend e2e)
├── 📧 mailchimp/agent-harness/          # Mailchimp Marketing API CLI (303 commands, 36 unit tests)
├── 📚 zotero/agent-harness/             # Zotero CLI (new, write import support)
├── 📖 calibre/agent-harness/            # Calibre CLI (58 tests: 38 unit + 20 E2E)
├── 📓 joplin/agent-harness/             # Joplin CLI (134 tests: 107 unit + 27 e2e)
├── 📝 mubu/agent-harness/               # Mubu CLI (96 tests)
├── 📹 obs-studio/agent-harness/         # OBS Studio CLI (153 tests)
├── 📱 nslogger/agent-harness/           # NSLogger CLI (139 tests)
├── 🎞️ kdenlive/agent-harness/           # Kdenlive CLI (155 tests)
├── 🎬 shotcut/agent-harness/            # Shotcut CLI (154 tests)
├── 📞 zoom/agent-harness/               # Zoom CLI (22 tests)
├── 🎵 musescore/agent-harness/          # MuseScore CLI (56 tests)
├── 📐 drawio/agent-harness/             # Draw.io CLI (138 tests)
├── 🧪 eez-studio/agent-harness/         # EEZ Studio CLI (project, LVGL, SCPI automation)
├── ⛓️ eth2-quickstart/agent-harness/    # ETH2 QuickStart CLI (18 unit, 3 e2e skipped)
├── 🧜 mermaid/agent-harness/            # Mermaid Live Editor CLI (10 tests)
├── ✨ anygen/agent-harness/             # AnyGen CLI (50 tests)
├── 🖼️ comfyui/agent-harness/            # ComfyUI CLI (73 tests)
├── 🧠 notebooklm/agent-harness/         # NotebookLM CLI (experimental, 21 tests)
├── 🧩 dify-workflow/agent-harness/      # Dify Workflow CLI wrapper (11 tests)
├── 🛡️ adguardhome/agent-harness/       # AdGuard Home CLI (36 tests)
├── 🦙 ollama/agent-harness/             # Ollama CLI (98 tests)
├── 🎮 godot/agent-harness/              # Godot Engine CLI (24 tests)
├── 📦 sbox/agent-harness/               # s&box CLI (244 tests: 157 unit + 17 orchestrator + 50 e2e + 20 exit-code)
├── 🎨 sketch/agent-harness/             # Sketch CLI (19 tests, Node.js)
├── 🔬 renderdoc/agent-harness/          # RenderDoc CLI (59 tests)
├── 🟩 nsight-graphics/agent-harness/    # Nsight Graphics CLI (51 tests)
├── 🐞 lldb/agent-harness/               # LLDB CLI (27 tests)
├── 📈 unrealinsights/agent-harness/     # Unreal Insights CLI (50 tests)
├── 🎬 videocaptioner/agent-harness/     # VideoCaptioner CLI (26 tests)
├── 🎬 openscreen/agent-harness/         # Openscreen CLI — screen recording editor (101 tests)
├── ☁️ cloudcompare/agent-harness/       # CloudCompare CLI (88 tests)
├── 🔍 exa/agent-harness/               # Exa CLI (40 tests)
└── ⛅ cloudanalyzer/agent-harness/      # CloudAnalyzer CLI (14 tests)
└── 🔩 3MF/agent-harness/               # 3MF Mesh Editor CLI (50+ tests)

每个 agent-harness/ 在 cli_anything.<software>/ 下包含一个可安装的 Python 包,带有 Click CLI、核心模块、工具(包括 repl_skin.py 和后端封装)以及全面的测试。


🎯 插件命令

命令 描述
/cli-anything <software-path-or-repo> 构建完整的 CLI 测试框架——全部 7 个阶段
/cli-anything:refine <software-path> [focus] 完善现有测试框架——通过差距分析扩展覆盖范围
/cli-anything:test <software-path-or-repo> 运行测试并用结果更新 TEST.md
/cli-anything:validate <software-path-or-repo> 对照 HARNESS.md 标准进行验证

示例

# Build a complete CLI for GIMP from local source
/cli-anything /home/user/gimp

# Build from a GitHub repo
/cli-anything https://github.com/blender/blender

# Refine an existing harness — broad gap analysis
/cli-anything:refine /home/user/gimp

# Refine with a specific focus area
/cli-anything:refine /home/user/shotcut "vid-in-vid and picture-in-picture compositing"

# Run tests and update TEST.md
/cli-anything:test /home/user/inkscape

# Validate against HARNESS.md standards
/cli-anything:validate /home/user/audacity

🎮 演示:使用生成的 CLI

以下是智能体使用 cli-anything-libreoffice 可以做的事情:

# Create a new Writer document
$ cli-anything-libreoffice document new -o report.json --type writer
✓ Created Writer document: report.json

# Add content
$ cli-anything-libreoffice --project report.json writer add-heading -t "Q1 Report" --level 1
✓ Added heading: "Q1 Report"

$ cli-anything-libreoffice --project report.json writer add-table --rows 4 --cols 3
✓ Added 4×3 table

# Export to real PDF via LibreOffice headless
$ cli-anything-libreoffice --project report.json export render output.pdf -p pdf --overwrite
✓ Exported: output.pdf (42,831 bytes) via libreoffice-headless

# JSON mode for agent consumption
$ cli-anything-libreoffice --json document info --project report.json
{
  "name": "Q1 Report",
  "type": "writer",
  "pages": 1,
  "elements": 2,
  "modified": true
}

REPL 模式

$ cli-anything-blender
╔══════════════════════════════════════════╗
║       cli-anything-blender v1.0.0       ║
║     Blender CLI for AI Agents           ║
╚══════════════════════════════════════════╝

blender> scene new --name ProductShot
✓ Created scene: ProductShot

blender[ProductShot]> object add-mesh --type cube --location 0 0 1
✓ Added mesh: Cube at (0, 0, 1)

blender[ProductShot]*> render execute --output render.png --engine CYCLES
✓ Rendered: render.png (1920×1080, 2.3 MB) via blender --background

blender[ProductShot]> exit
Goodbye! 👋

📖 标准手册:HARNESS.md

HARNESS.md 是我们通过自动化 CLI 生成使任何软件可被智能体访问的权威 SOP。

它编码了经过自动化生成流程精炼的成熟模式和方法论。

该手册提炼了成功构建全部 18 个多样化、生产就绪测试框架的关键见解。

关键经验

经验 描述
使用真实软件 CLI 必须调用实际应用程序进行渲染。不能用 Pillow 替代 GIMP,不能为 Blender 使用自定义渲染器。生成有效的项目文件 → 调用真实后端。
渲染差距 GUI 应用在渲染时应用效果。如果你的 CLI 操作项目文件却使用朴素的导出工具,效果会被静默丢弃。解决方案:原生渲染器 → 滤镜转换 → 渲染脚本。
滤镜转换 在格式之间映射效果时(MLT → ffmpeg),注意重复滤镜合并、交错流顺序、参数空间差异以及无法映射的效果。
时间码精度 非整数帧率(29.97fps)会导致累积舍入误差。使用 round() 而非 int(),显示时使用整数运算,测试中允许 ±1 帧容差。
输出验证 永远不要因为退出码为 0 就相信导出成功。要验证:魔数字节、ZIP/OOXML 结构、像素分析、音频 RMS 电平、时长检查。

查看完整方法论:cli-anything-plugin/HARNESS.md


📦 安装与使用

面向 CLI-Hub 用户

# Install the package manager
pip install cli-anything-hub

# Browse, search, inspect, and install CLIs
cli-hub list
cli-hub search <query>
cli-hub info <name>
cli-hub install <name>

# Manage installed CLIs
cli-hub update <name>
cli-hub uninstall <name>
cli-hub launch <name> [args...]

面向插件用户(Claude Code)

# Add marketplace & install (recommended)
/plugin marketplace add HKUDS/CLI-Anything
/plugin install cli-anything

# Build a CLI for any software with a codebase
/cli-anything <software-name>

面向生成的 CLI

# Install any generated CLI
cd <software>/agent-harness
pip install -e .

# Verify
which cli-anything-<software>

# Use
cli-anything-<software> --help
cli-anything-<software>                    # enters REPL
cli-anything-<software> --json <command>   # JSON output for agents

运行测试

# Run tests for a specific CLI
cd <software>/agent-harness
python3 -m pytest cli_anything/<software>/tests/ -v

# Force-installed mode (recommended for validation)
CLI_ANYTHING_FORCE_INSTALLED=1 python3 -m pytest cli_anything/<software>/tests/ -v -s

🤝 贡献

我们欢迎贡献!CLI-Anything 被设计为可扩展的:

  • 新的软件目标 — 使用插件为任何有代码库的软件生成 CLI,然后通过 cli-anything-plugin/PUBLISHING.md 提交你的测试框架。
  • 方法论改进 — 向 HARNESS.md 提交 PR,将新经验教训固化下来
  • 插件增强 — 新命令、阶段改进、更好的验证
  • 测试覆盖 — 更多 E2E 场景、边界情况、工作流测试

局限性

  • 需要强大的基础模型 — CLI-Anything 依赖前沿级模型(例如 Claude Opus 4.6、Claude Sonnet 4.6、GPT-5.4)来可靠地生成测试框架。较弱或较小的模型可能生成不完整或错误的 CLI,需要大量手动修正。
  • 依赖可用的源代码 — 7 阶段流水线从源代码进行分析和生成。当目标软件只提供需要反编译的编译后二进制文件时,测试框架的质量和覆盖率将大幅下降。
  • 可能需要迭代改进 — 单次 /cli-anything 运行可能无法完全覆盖所有能力。通常需要运行 /refine 一次或多次,才能将 CLI 的性能和覆盖率提升到生产质量。

路线图

  • 支持更多应用类别(CAD、DAW、IDE、EDA、科学工具)
  • 用于智能体任务完成率的基准测试套件
  • 社区贡献的面向内部/定制软件的 CLI 测试框架
  • 与 Claude Code 之外的更多智能体框架集成
  • 支持将闭源软件和 Web 服务的 API 打包为 CLI
  • 在生成 CLI 的同时生成 SKILL.md,用于智能体技能发现与编排

📖 文档

文档 描述
cli-anything-plugin/HARNESS.md 方法论 SOP — 唯一事实来源
cli-anything-plugin/README.md 插件文档 — 命令、选项、阶段
cli-anything-plugin/QUICKSTART.md 5 分钟快速入门指南
cli-anything-plugin/PUBLISHING.md 分发与发布指南

每个生成的测试框架还包含:

  • <SOFTWARE>.md — 针对该应用的架构 SOP
  • tests/TEST.md — 测试计划与结果文档

⭐ Star 历史

如果 CLI-Anything 帮助你的软件实现 Agent 原生,请给我们一个 star!⭐


📚 引用

如果你觉得 CLI-Anything 有用,请引用我们的技术报告:

@misc{yang2026clianythingagentnativecomputeruse,
      title={CLI-Anything: Towards Agent-Native Computer Use}, 
      author={Yuhao Yang and Tianyu Fan and Chao Huang},
      year={2026},
      eprint={2606.03854},
      archivePrefix={arXiv},
      primaryClass={cs.HC},
      url={https://arxiv.org/abs/2606.03854}, 
}

📄 许可证

Apache License 2.0 — 可自由使用、修改和分发。


CLI-Anything — 让任何有代码库的软件实现 Agent 原生。

面向 AI 智能体时代的方法论 | 18 个专业软件演示 | 2,280 个通过的测试

CLI-Anything Icon

感谢访问 ✨ CLI-Anything!

Views

来源:web-github-trending · github.com