CLI-Anything:让所有软件都原生支持 Agent
今天的软件服务于人类👨💻。明天的用户将是 Agent🤖。CLI-Anything:架起 AI Agent 与世界软件之间的桥梁
🌐 CLI-Hub: pip install cli-anything-hub 然后 cli-hub install —— 浏览、安装并管理所有社区构建的 CLI。想添加你自己的?提交 PR —— Hub 即时更新。
🎬 查看演示: 观看 AI Agent 使用生成的 CLI,结合预览、实时预览和轨迹循环,产出真实成果 —— 包括 CAD 构建、3D 场景、图表、游戏画面、字幕等。
🙋 [成为贡献者或提交 CLI 请求]: 加入我们!报名构建新的 CLI 封装 —— 一旦审核合并,你将以社区贡献者身份获得访问权限!希望 CLI-Anything 支持某款特定软件或服务?提交心愿单请求!
一条命令:让任何软件支持 Pi、OpenClaw、nanobot、Cursor、Claude Code 等 Agent。中文文档 | 日本語ドキュメント
📰 新闻动态
感谢社区所有宝贵的贡献!更多更新每天持续推进中..
-
2026-04-18 🧩 所有 SKILL.md 文件现已统一归入顶层
skills/目录 —— 每个 CLI skill 都可通过npx skills add HKUDS/CLI-Anything --skill -g -y从统一的规范来源安装。我们还新增了根 skill 验证 CI,将贡献/PR 文档及 REPL skill 路径提示同步至新布局,并围绕新的npx skills流程重新设计了 CLI-Hub 的安装优先前端。 -
2026-04-17 🌐 CLI-Hub 再次优化安装体验 —— 公共注册表元数据和 skill 覆盖范围收紧,访问计数已修正,Web Hub 进一步完善。🧪 Shotcut 渲染输出时长问题已修复(#92)。📝 SKILL 贡献路径已针对新文档流程修正(#224),skill 生成器现可安全处理空介绍(#203)。
-
2026-04-16 🗺️ QGIS CLI 已合并(#207)—— 完整的 GIS / 地图编辑封装正式落地。🧬 UniMol Tools CLI 已合并(#219),用于分子建模工作流。🌐 CLI-Hub 还新增了更多公共 CLI(包括 py4csr),刷新了生成的 meta-skill,修正了 SKILL 贡献文档,并修复了 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 包现支持来自多个安装源(
pip、npm、brew、捆绑/系统工具)的公共 CLI,并由新的public_registry.json提供支持。Hub 前端重新设计,分设 CLI-Anything CLIs 和 Public CLIs 两个卡片区,实时端到端检查现已覆盖 pip 和 npm 包的真实安装、更新及卸载流程。 -
2026-04-14 🧭 Safari CLI 已合并(#212)并加入 Hub 注册表 —— 通过
safari-mcp实现浏览器自动化。🎬 Kdenlive 还针对第 5 代项目输出及无效项目生成进行了兼容性修复。 -
2026-04-13 📓 Obsidian CLI 已合并(#211)—— 通过 Local REST API 实现知识管理封装,包含 48 个单元测试和 7 个 E2E 测试。⛓️ Eth2-Quickstart CLI 已合并(#195)—— Ethereum 质押节点管理封装。📚 Zotero CLI 更新至 v0.4.1(#201)—— 现已从其独立仓库发布,CLI-Hub 同步增加了对远程
skill_mdURL 的支持。 -
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 也随之推出了首个以安装为中心的前端改版和"赋能自己"工具包卡片。
早期动态(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 skill 文档更新 —— 强制使用绝对渲染路径并修正前置条件。
-
2026-03-28 🌐 CLIBrowser 已加入 CLI-Hub 注册表,用于 Agent 可访问的浏览器自动化。
-
2026-03-27 📚 Zotero SKILL.md 增强了面向 Agent 的约束;修复了 REPL 配置和可执行文件解析问题。
-
2026-03-26 📖 Zotero CLI 封装正式落地,用于 Zotero 桌面端(库管理、合集、引用)。Draw.io 自定义 ID 错误修复(#132)及 registry.json 语法修复。
-
2026-03-25 🎮 RenderDoc CLI 已合并,用于 GPU 帧捕获分析。FreeCAD 已针对 v1.1 更新。Blender EEVEE 引擎名称已修正。Zoom 令牌权限已加固。
-
2026-03-24 🏭 FreeCAD CLI 新增,包含 17 个分组下的 258 条命令。iTerm2 和 Teltonika RMS 封装已加入注册表。
-
2026-03-23 🤖 发布 CLI-Hub meta-skill —— Agent 现可自主发现并安装 CLI。Krita CLI 封装已合并,用于数字绘画。
早期动态(3 月 11 日至 22 日)
-
2026-03-22 🎵 MuseScore CLI 已合并,支持移调、导出和乐器管理。
-
2026-03-21 🔧 基础设施改进 —— 多个 CLI 的测试封装和文档得到完善,多个后端的 Windows 兼容性也得到增强。
-
2026-03-20 🌐 Novita AI CLI 新增,用于兼容 OpenAI 的 API 访问。注册表元数据改进,提升 Hub 发现性。
-
2026-03-19 📦 多个封装的包结构优化,SKILL.md 生成改进,命令文档更完善。
-
2026-03-18 🧪 测试覆盖率扩展 —— 跨多个 CLI 新增 E2E 场景和边缘用例验证。
-
2026-03-17 🌐 发布 CLI-Hub —— 一个中央注册表,可通过单条
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 视频会议封装新增,成为第 11 个支持的应用程序。
🤔 为什么选择 CLI?
CLI 是人类和 AI Agent 的通用接口:
• 结构化且可组合 - 文本命令与 LLM 格式契合,可链式组合实现复杂工作流
• 轻量且通用 - 极低开销,无需依赖即可跨所有系统运行
• 自描述 - --help 标志提供自动文档,Agent 可自主发现
• 久经验证 - Claude Code 每天通过 CLI 运行数千个真实工作流
• Agent 优先设计 - 结构化 JSON 输出消除了解析复杂性
• 确定性且可靠 - 一致的结果使 Agent 行为可预测
🚀 快速开始
前置条件
-
Python 3.10+
-
已安装目标软件(如 GIMP、Blender、LibreOffice 或你自己的应用)
-
支持的 AI 编程 Agent:Claude Code | Pi | OpenClaw | OpenCode | Codex | Qodercli | GitHub Copilot CLI | 更多平台
选择你的平台
⚡ Claude Code
第一步:添加插件市场
CLI-Anything 作为托管于 GitHub 的 Claude Code 插件市场进行分发。
# Add the CLI-Anything marketplace /plugin marketplace add HKUDS/CLI-Anything
第二步:安装插件
# 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而失败。
第三步:一条命令构建 CLI
# /cli-anything # 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,请先重点解决插件的安装/加载问题(两种入口形式引用的是同一个 skill,因此切换形式无济于事):
-
重新加载插件命令:
/reload-plugins -
验证插件是否已加载:
/help cli-anything(CLI-Anything 的帮助/命令列表应当显示出来) -
如有需要,从插件市场重新安装:
/plugin marketplace add HKUDS/CLI-Anything -
/plugin install cli-anything -
确认插件可用后,重试入口命令:首选:
/cli-anything ./gimp -
仅限旧版构建:
/cli-anything:cli-anything ./gimp
该命令将运行完整的流水线:
-
🔍 分析(Analyze) — 扫描源代码,将 GUI 操作映射到 API
-
📐 设计(Design) — 设计命令组、状态模型和输出格式的架构
-
🔨 实现(Implement) — 构建带有 REPL、JSON 输出、撤销/重做功能的 Click CLI
-
📋 规划测试(Plan Tests) — 创建包含单元测试和端到端测试计划的 TEST.md
-
🧪 编写测试(Write Tests) — 实现全面的测试套件
-
📝 文档(Document) — 将结果更新至 TEST.md
-
📦 发布(Publish) — 创建
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 Coding Agent
第 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会将扩展文件(包括 HARNESS.md、命令、指南、脚本和模板,均来自cli-anything-plugin/)复制到~/.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 | 构建完整的 CLI harness |
| /cli-anything:refine [focus] | 优化现有的 CLI harness |
| /cli-anything:test | 运行 CLI harness 的测试 |
| /cli-anything:validate | 验证 CLI harness |
| /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)实验性社区版
第 1 步:安装 Goose
按照官方 Goose 说明,根据您的操作系统安装 Goose(桌面版或 CLI 版)。
第 2 步:配置 CLI Provider
将 Goose 配置为使用 CLI provider(如 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 provider 运行时,会使用该 provider 的能力和命令格式。
⚡ Qodercli 社区版
第 1 步:注册插件
git clone https://github.com/HKUDS/CLI-Anything.git bash CLI-Anything/qoder-plugin/setup-qodercli.sh
这会将 cli-anything 插件注册到 ~/.qoder.json。注册后请启动新的 Qodercli 会话。
第 2 步:从 Qodercli 使用 CLI-Anything
/cli-anything ./gimp /cli-anything:refine ./gimp " batch processing and filters " /cli-anything:validate ./gimp
⚡ OpenClaw 社区版
第 1 步:安装 Skill
CLI-Anything 提供原生 OpenClaw SKILL.md 文件。将其复制到您的 OpenClaw skills 目录:
# 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 中调用该 skill:
@cli-anything build a CLI for ./gimp
该 skill 遵循与 Claude Code 和 OpenCode 相同的 7 阶段方法论。
⚡ Codex 实验性社区版
第 1 步:安装 Skill
运行内置安装程序:
# 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
这会将 skill 安装到 $CODEX_HOME/skills/cli-anything(若 CODEX_HOME 未设置,则安装到 ~/.codex/skills/cli-anything)。
安装后重启 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
Codex skill 采用与 Claude Code 插件和 OpenCode 命令相同的方法论,同时保持所生成 Python harness 格式不变。
⚡ GitHub Copilot CLI 社区版
第 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 编码 Agent:
-
Codex — 可通过
codex-skill/中的内置 skill 使用 -
Cursor — 即将推出
-
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- /SKILL.md 处提供了一个规范的 SKILL.md,使得 monorepo 可通过 npx skills add HKUDS/CLI-Anything --list 直接被发现。已安装的 harness 包仍会在 cli_anything/ /skills/SKILL.md 处附带一份兼容性副本,REPL 横幅会优先使用仓库根目录的规范文件(若存在),否则回退至打包副本。
🤖 通过 CLI-Hub 赋能您的 Agent
CLI-Hub 让 Agent 能够自主发现并安装所需的 CLI——无需任何人工干预。
我们发布了一个元 skill,让任何 AI Agent 都能自由探索完整的社区 CLI 目录,并为任务挑选合适的 CLI。
一键安装:
# OpenClaw openclaw skills install cli-anything-hub # nanobot nanobot skills install cli-anything-hub
然后只需提示您的 Agent:
Find appropriate CLI software in CLI-Hub and complete the task:
Agent 将浏览目录、安装适合任务的 CLI 并加以使用——全程自主完成。
底层工作原理:
-
元 skill 指向
https://reeceyang.sgp1.cdn.digitaloceanspaces.com/SKILL.md处的实时目录 -
Agent 读取按类别组织的 20+ 个 CLI,每个 CLI 均附带一行
pip install安装命令 -
Agent 安装适合任务的 CLI,然后读取该 CLI 自带的 SKILL.md 以获取详细用法
每当 registry.json 发生变更时,目录会自动更新——新的社区 CLI 将自动出现。
对于 Claude Code 用户: 将
skills/cli-hub-meta-skill/SKILL.md复制到您的项目或 skills 目录,即可获得相同的自动 CLI 发现能力。
💡 CLI-Anything 的愿景:构建 Agent 原生软件
• 🌐 普遍可达 - 通过结构化 CLI,让每一款软件即刻可被 Agent 控制。
• 🔗 无缝集成 - Agent 无需 API、GUI、重新构建或复杂的包装层,即可控制任意应用程序。
• 🚀 面向未来的生态 - 一键将面向人类设计的软件转化为 Agent 原生工具。
🔧 何时使用 CLI-Anything
| 类别 | 如何实现 Agent 原生 | 典型示例 |
| 📂 GitHub 仓库 | 通过自动 CLI 生成,将任意开源项目转化为可由 Agent 控制的工具 | 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、Krita、Kdenlive、Shotcut、Inkscape、Darktable、LMMS、Ardour |
| 🎮 游戏开发 | 通过无头引擎接口管理游戏项目、场景、导出和脚本 | Godot Engine、s&box |
| 🔬 科学计算 | 自动化研究工作流、仿真和复杂计算 | ImageJ、FreeCAD、QGIS、ParaView、Gephi、LibreCAD、Stellarium、KiCad、JASP、Jamovi |
| 🏢 企业与办公 | 将商业应用和生产力工具转化为 Agent 可访问的系统 | NextCloud、GitLab、Grafana、Mattermost、LibreOffice、AppFlowy、NocoDB、Odoo(社区版)、Plane、ERPNext |
| 📞 通信与协作 | 通过结构化 CLI 自动化会议调度、参与者管理、录制检索和报告 | Zoom、Jitsi Meet、BigBlueButton、Mattermost |
| 📐 图表与可视化 | 以编程方式创建和操作图表、流程图、架构图及可视化文档 | Draw.io (diagrams.net)、Mermaid、PlantUML、Excalidraw、yEd |
| 🌐 网络与基础设施 | 通过结构化 CLI 命令管理网络服务、DNS、广告拦截和基础设施 | AdGuardHome |
| 🧪 测试与 Mock | 控制 HTTP mock 服务器、管理测试桩、录制和回放 API 流量以进行集成测试 | WireMock |
| 🔬 图形与 GPU 调试 | 分析 GPU 帧捕获、检查流水线状态、导出着色器并对比渲染状态 | RenderDoc |
| 🎬 视频与字幕 | 语音转录、字幕翻译、将样式化字幕烧录到视频——完整字幕处理流水线 | VideoCaptioner |
| 🔍 AI 原生搜索 | 通过基于 Embedding 的 API 实现神经搜索和深度网络搜索及结构化内容检索 | Exa |
| ✨ AI 内容生成 | 通过 AI 驱动的云端 API 生成专业交付物(幻灯片、文档、图表、网站、研究报告) | AnyGen、Gamma、Beautiful.ai、Tome |
CLI-Anything 的核心功能
Agent 与软件之间的鸿沟
AI Agent 擅长推理,却极不擅长使用真实的专业软件。现有解决方案要么是脆弱的 UI 自动化,要么是功能有限的 API,要么是阉割版的重新实现——往往损失了 90% 的功能。
CLI-Anything 的解决方案:在不损失任何能力的前提下,将任意专业软件转化为 Agent 原生工具。
| 当前痛点 | CLI-Anything 的解法 |
|---|---|
| 🤖 "AI 无法使用真实工具" | 直接与真实软件后端集成(Blender、LibreOffice、FFmpeg)——完整的专业能力,零妥协 |
| 💸 "UI 自动化频繁崩溃" | 无截图、无点击、无 RPA 脆弱性,纯命令行可靠性配合结构化接口 |
| 📊 "Agent 需要结构化数据" | 内置 JSON 输出,无缝供 Agent 消费;同时提供人类可读格式便于调试 |
| 🔧 "自定义集成成本高昂" | 一个 Claude 插件通过经验验证的 7 阶段流水线,为任意代码库自动生成 CLI |
| ⚡ "原型与生产之间存在差距" | 2,280+ 项测试,经真实软件验证,已在 18 个主流应用上久经考验 |
🎯 CLI-Anything 能做什么?
| ### 🛠️ 让 Agent 接管你的工作流 无论是专业场景还是日常任务——只需将代码库扔给 /cli-anything。创意工作用 GIMP、Blender、Shotcut,日常任务用 LibreOffice、OBS Studio。没有源码?找一个开源替代品扔进去。你将立即获得一个完整的 CLI,供你的 Agent 随时调用。 | ### 🔗 将零散的 API 统一为一个 CLI 厌倦了应付碎片化的 Web 服务 API?把文档或 SDK 手册喂给 /cli-anything,你的 Agent 就能获得一个功能强大、有状态的 CLI,将那些分散的端点整合成连贯的命令组。一个工具替代数十个原始 API 调用——能力更强,同时节省 token。 | ### 🚀 替代或增强 GUI Agent CLI-Anything 可以彻底取代基于 GUI 的 Agent 方案——告别截图,告别脆弱的像素点击。更有趣的是:一旦你用 /cli-anything 处理了某个 GUI 软件,就可以完全通过代码和终端来合成 Agent 任务、评估器和基准测试——全自动化、可迭代优化、效率大幅提升。 |
✨ ⚙️ CLI-Anything 的工作原理
🤖 SKILL.md 生成
每个生成的 CLI 现在都在 skills/cli-anything- /SKILL.md 处拥有一个规范的 SKILL.md 文件。这使得当前 monorepo 可直接被 npx skills 消费,同时位于 cli_anything/ /skills/SKILL.md 的打包兼容副本保留了已安装 harness 的行为。
SKILL.md 提供的内容:
-
YAML frontmatter,包含名称和描述,用于 Agent 技能发现
-
命令组,记录所有可用子命令
-
使用示例,覆盖常见工作流
-
Agent 专属指引,涵盖 JSON 输出、错误处理和编程式使用
SKILL.md 文件在流水线的第 6.5 阶段使用 skill_generator.py 自动生成,该工具直接从 CLI 的 Click 装饰器、setup.py 和 README 中提取元数据。生成器会写入规范的仓库根目录技能文件,并刷新已安装 harness 所使用的包本地兼容副本。在本仓库内,REPL 横幅会将 Agent 指向规范的根目录技能路径;执行 pip install 后,则回退到打包副本。
🎬 真实世界演示
AI Agent 使用生成的 CLI 产出完整、实用的交付物——无需 GUI。
FreeCAD — 通过预览、实时预览与轨迹构建好奇号探测车
Harness:
cli-anything-freecad| 预览栈:preview+preview live+trajectory.json| 产物: Agent 构建的好奇号风格探测车
一个 Agent 以增量方式组装一辆仿好奇号探测车,同时发布真实的 FreeCAD 预览包、刷新实时预览会话,并记录命令到预览的历史轨迹以供后续回放。演示展示了产物逐步演进直至最终呈现的全过程。
README GIF 由完整本地演示视频通过速度调整、高质量 ffmpeg 调色板工作流生成。
Blender — 通过预览、实时预览与轨迹构建轨道中继无人机
Harness:
cli-anything-blender| 预览栈:preview+preview live+trajectory.json| 产物: Agent 构建的轨道中继无人机
一个 Agent 使用 Blender harness,在真实预览循环下逐步构建一架硬表面轨道中继无人机:每个阶段推送新的渲染支撑包,实时会话跟踪当前最新状态,轨迹将每条命令与对应的视觉状态绑定。演示以完成后的场景收尾,可直接进行精细转台展示。
README GIF 由完整本地演示视频通过速度调整、高质量 ffmpeg 调色板工作流生成。
Draw.io — HTTPS 握手流程图
Harness:
cli-anything-drawio| 耗时: 约 4 分钟 | 产物:.drawio+.png
一个 Agent 完全通过 CLI 命令从零创建了一张完整的 HTTPS 连接生命周期图——涵盖 TCP 三次握手、TLS 协商、加密数据交换以及 TCP 四次挥手。
最终产物
由 @zhangxilong-43 贡献
Slay the Spire II — 游戏自动化
Harness:
cli-anything-slay-the-spire-ii| 产物: 自动化游戏会话
一个 Agent 使用 CLI harness 完整体验一局《Slay the Spire II》——读取游戏状态、选择卡牌、规划路径,并实时做出策略决策。
由 @TianyuFan0504 贡献
VideoCaptioner — 自动生成字幕
Harness:
cli-anything-videocaptioner| 产物: 带字幕的视频帧
一个 Agent 使用 VideoCaptioner CLI 自动生成样式化字幕并叠加到视频内容上,支持双语文字渲染和自定义格式。
| 字幕 A | 字幕 B |
|---|---|
由 @WEIFENG2333 贡献
更多 CLI 演示即将推出。
🎬 演示展示
🎯 通用场景
CLI-Anything 适用于任何拥有代码库的软件——无领域限制,无架构约束。
🏭 生产级测试
已在 18 个多样化、高复杂度的应用上完成测试,覆盖创意、生产力、通信、图表绘制、AI 图像生成、AI 内容生成、网络广告拦截、本地 LLM 推理、原生调试以及图形性能分析等此前 AI Agent 无法涉足的领域。
🎨 多元领域覆盖
从创意工作流(图像编辑、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 |
| 🌐 Browser | 浏览器自动化 | cli-anything-browser | DOMShell MCP + 无障碍树 | ✅ New |
| 📄 LibreOffice | 办公套件(Writer、Calc、Impress) | cli-anything-libreoffice | ODF 生成 + headless LO | ✅ 158 |
| ⚡ n8n | 工作流自动化 | cli-anything-n8n | n8n REST API v1.1.1 | ✅ 55+ cmds |
| 📧 Mailchimp | 邮件营销与自动化 | cli-anything-mailchimp | Mailchimp Marketing API v3.0 | ✅ 303 cmds |
| 📚 Zotero | 文献管理 | cli-anything-zotero | 本地 SQLite + connector + Local API | ✅ New |
| 📝 Mubu | 知识管理与大纲 | cli-anything-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 |
| ⛓️ ETH2 QuickStart | DevOps / Ethereum | 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 | 后台 Trace 会话 + 引擎匹配的 UnrealInsights 构建 + 无头导出 | ✅ 50 |
| ☁️ CloudAnalyzer | 点云 / 轨迹质量检验 | cli-anything-cloudanalyzer | CloudAnalyzer(Python API) | ✅ 14 |
| 🗺️ QGIS | 地理空间分析与制图 | cli-anything-qgis | PyQGIS + qgis_process | ✅ 22 |
| 合计 | ✅ 2,280 |
100% 通过率,共 2,280 项测试——1,682 项单元测试 + 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) 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 70 passed ✅ (60 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) ────────────────────────────────────────────────────────────────────────────── TOTAL 2,280 passed ✅ 100% pass rate
🏗️ CLI-Anything 的架构
🎯 核心设计原则
-
真实软件集成 — CLI 生成有效的项目文件(ODF、MLT XML、SVG),并将渲染工作委托给真实应用程序。我们构建的是通往软件的结构化接口,而非软件的替代品。
-
灵活的交互模式 — 每个 CLI 均支持双模式运行:有状态 REPL 模式用于交互式 Agent 会话,子命令接口用于脚本/流水线。直接运行裸命令即可进入 REPL 模式。
-
一致的用户体验 — 所有生成的 CLI 共享统一的 REPL 界面(repl_skin.py),包含品牌 Banner、风格化提示符、命令历史、进度指示器和标准化格式输出。
-
Agent 原生设计 — 每条命令内置
--json标志,为机器消费提供结构化数据,同时以人类可读的表格服务于交互使用。Agent 通过标准--help和which命令发现功能。 -
零妥协依赖 — 真实软件是硬性要求——无回退方案,无优雅降级。当后端缺失时,测试直接失败(而非跳过),以确保功能的真实性。
📂 项目结构
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 │ ├── 🤖 codex-skill/ # Codex 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) ├── 🌐 browser/agent-harness/ # Browser CLI (DOMShell MCP, new) ├── 📄 libreoffice/agent-harness/ # LibreOffice CLI (158 tests) ├── 📧 mailchimp/agent-harness/ # Mailchimp Marketing API CLI (303 commands, 36 unit tests) ├── 📚 zotero/agent-harness/ # Zotero CLI (new, write import support) ├── 📝 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) ├── ⛓️ 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 (70 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)
每个 agent-harness/ 均包含一个位于 cli_anything. / 下的可安装 Python 包,内含 Click CLI、核心模块、工具函数(包括 repl_skin.py 和后端封装),以及完整的测试套件。
🎯 插件命令
| 命令 | 描述 |
|---|---|
/cli-anything | 构建完整的 CLI 测试套件——全部 7 个阶段 |
/cli-anything:refine [focus] | 优化现有测试套件——通过差距分析扩展覆盖范围 |
/cli-anything:test | 运行测试并将结果更新至 TEST.md |
/cli-anything:validate | 对照 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
以下是 Agent 使用 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 生成使任何软件对 Agent 可访问的权威 SOP。
它凝练了经自动化生成流程反复验证的成熟模式与方法论。
本手册从成功构建全部 18 个多样化、生产就绪的测试套件的过程中提炼了关键经验。
关键经验
| 经验 | 描述 |
|---|---|
| 使用真实软件 | CLI 必须调用实际应用程序进行渲染。不得用 Pillow 替代 GIMP,不得用自定义渲染器替代 Blender。生成有效的项目文件 → 调用真实后端。 |
| 渲染鸿沟 | GUI 应用在渲染时才应用效果。若 CLI 操作项目文件时使用简陋的导出工具,效果会被静默丢弃。解决方案:原生渲染器 → 滤镜转换 → 渲染脚本。 |
| 滤镜转换 | 在格式间映射效果(MLT → ffmpeg)时,需注意重复滤镜合并、交错流排序、参数空间差异以及无法映射的效果。 |
| 时间码精度 | 非整数帧率(29.97fps)会导致累积舍入误差。应使用 round() 而非 int(),显示时采用整数运算,测试中允许 ±1 帧的容差。 |
| 输出验证 | 切勿因退出码为 0 就认为导出成功。应验证:魔数字节、ZIP/OOXML 结构、像素分析、音频 RMS 电平、时长检查。 |
查看完整方法论:
cli-anything-plugin/HARNESS.md
📦 安装与使用
插件用户(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
已生成的 CLI
# Install any generated CLI cd /agent-harness pip install -e . # Verify which cli-anything- # Use cli-anything- --help cli-anything- # enters REPL cli-anything- --json # JSON output for agents
运行测试
# Run tests for a specific CLI cd /agent-harness python3 -m pytest cli_anything/ /tests/ -v # Force-installed mode (recommended for validation) CLI_ANYTHING_FORCE_INSTALLED=1 python3 -m pytest cli_anything/ /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、科学工具)
-
用于 Agent 任务完成率的基准测试套件
-
社区贡献的内部/自定义软件 CLI 测试套件
-
与 Claude Code 之外的更多 Agent 框架集成
-
支持将闭源软件和 Web 服务的 API 封装为 CLI
-
在 CLI 旁边生成 SKILL.md,用于 Agent 技能发现与编排
📖 文档
| 文档 | 描述 |
|---|---|
cli-anything-plugin/HARNESS.md | 方法论 SOP——唯一权威参考 |
cli-anything-plugin/README.md | 插件文档——命令、选项、阶段 |
cli-anything-plugin/QUICKSTART.md | 5 分钟快速入门指南 |
cli-anything-plugin/PUBLISHING.md | 分发与发布指南 |
每个已生成的测试套件还包含:
-
.md— 该应用专属的架构 SOP -
tests/TEST.md— 测试计划与结果文档
⭐ Star 历史
如果 CLI-Anything 帮助你的软件实现了 Agent 原生化,请给我们一个 Star!⭐
📄 许可证
Apache License 2.0 — 可自由使用、修改和分发。
CLI-Anything — 让任何有代码库的软件成为 Agent 原生。
AI Agent 时代的方法论 | 18 款专业软件演示 | 2,280 项测试全部通过