CLI-Hub Meta-Skill 实战指南:用 cli-hub 发现、安装与编排 Agent 原生 CLI

发布时间:2026/9/11 7:39:04
CLI-Hub Meta-Skill 实战指南:用 cli-hub 发现、安装与编排 Agent 原生 CLI CLI-Hub Meta-Skill 实战指南用 cli-hub 发现、安装与编排 Agent 原生 CLI【免费下载链接】CLI-AnythingCLI-Anything: Making ALL Software Agent-Native -- CLI-Hub: https://clianything.cc/项目地址: https://gitcode.com/GitHub_Trending/cl/CLI-AnythingCLI-Hub 是 CLI-Anything 生态的「应用市场」它把面向专业软件图像编辑、3D 建模、视频制作、知识管理、本地大模型等的 Agent 原生命令行接口整理为可按类别浏览、可搜索、可一键安装的注册表并用「工作流矩阵Matrix」把多个 CLI 打包为 能力 × 提供者 的完整工作流。本文以 skills/cli-hub-meta-skill/SKILL.md 为核心骨架结合 cli-hub 包的真实源码完整讲解cli-hub的安装、检索、安装、矩阵预检与作用域安装、预览消费等全部操作读完即可让 Agent 在一个环境里按需发现并组合任意软件能力。一、CLI-Hub 是什么Agent 原生软件的「应用市场」CLI-Anything 项目的目标是把「所有软件变成 Agent 原生」Making ALL Software Agent-Native。落到工程上它由两部分组成一个个独立的 harness 包每个专业软件对应一个独立的 Python 包cli-anything-name提供独立入口cli-anything-name为真实软件后端提供带状态的操作、JSON 输出、REPL 模式cli-hub包管理器即cli-anything-hub负责从注册表发现这些 CLI、解析名称、安装/卸载/更新并编排多 CLI 的矩阵工作流。SKILL.md 中给出了一组覆盖范围创意工作流图像编辑、3D 建模、视频制作、音频处理、乐谱、生产力工具办公套件、知识管理、直播、AI 平台本地 LLM、图像生成、AI API、研究助手、通信视频会议与协作、开发制图、浏览器自动化、网络管理、内容生成AI 文档与媒体创作。每类 CLI 都支持状态化操作、面向 Agent 的 JSON 输出、REPL 模式并接入真实软件后端——而不是模拟器。二、快速上手安装与发现SKILL.md 的 Quick Start 提供了最小可用链路# 安装 CLI-Hub 包管理器 pip install cli-anything-hub # 浏览所有可用 CLI cli-hub list # 按类别或关键词搜索 cli-hub search image cli-hub search 3d modeling # 安装一个 CLI cli-hub install gimp # 查看某个 CLI 的详细信息 cli-hub info gimp从源码看cli-hub list还支持-c/--category、-s/--sourceharness/public/npm/all过滤以及--json机器可读输出列表会按类别分组并给已安装项打上绿色圆点标记最后汇总「N CLIs availableM harness, K public, X installed」与全部类别清单见 cli-hub/cli_hub/cli.py。cli-hub install name成功后会提示三种运行方式cli-anything-name直接运行、cli-hub launch name启动以及对 npm 类公共 CLInpx方式cli.py。三、底层机制cli-hub 是 pip 之上的轻量包装SKILL.md 明确指出cli-hub是pip的轻量包装。执行cli-hub install gimp时它安装的是另一个独立 Python 包cli-anything-gimp每个 CLI 都是独立的 pip 包cli-hub只负责从注册表解析名字并跟踪安装状态。这一点在源码中有三重印证双注册表合并cli-hub/cli_hub/registry.py 从registry.jsonharness 注册表与public_registry.json公共 CLI 注册表拉取数据为每条记录打上_source标签harness/public合并后统一对外提供fetch_all_clis、get_cli、search_clis、list_categories本地缓存注册表缓存在~/.cli-hub/registry_cache.jsonTTL 为 1 小时CACHE_TTL 3600网络失败时回退到旧缓存见 registry.py。本仓库根目录下的 registry.json 与 public_registry.json 就是这两份注册表的内容源安装策略分发cli-hub/cli_hub/installer.py 根据每条记录的install_strategy或按来源推断分发到五种执行器pipharness 包python -m pip install、npm全局npm install -g package、uv、command通用的install_cmd脚本、bundled随宿主应用自带、仅检测入口是否存在。安装成功后写入~/.cli-hub/installed.json记录版本、入口与策略installer.py。因此「cli-hub install gimp之后运行cli-anything-gimp」在机制上是两个独立 pip 包的协作hub 负责分发harness 负责与真实软件后端交互。四、Workflow Matrices把「一个任务」打包成「能力 × 提供者」SKILL.md 提出了核心概念单个 CLI 只是一件工具而matrix矩阵是把整个工作流打包成 能力capabilities× 提供者providers 的结构——例如video-creation会把text.transcribe、visual.generate这类意图映射到 harness CLI、公共 CLI、Python 库、原生二进制和云 API 上。当任务横跨多个工具产出一个视频、设计一张图、构建一个游戏时应该先找矩阵而不是逐个工具手动拼装。本仓库中的 cli-hub-matrix/video-creation/SKILL.md 就是一个完整的 v3 能力型矩阵实例包含script.storyboard、video.search、video.download、music.download、visual.capture、visual.generate、audio.synthesize、text.transcribe、text.caption、composite.assemble、quality.review等十余项能力每一项能力都列出多个 provider 及其 Kind、Requires、Cost、Quality、Offline 五元组——例如text.transcribe的 provider 从本地cli-anything-videocaptionerharness-cli到openai-whisperpython再到 AssemblyAI / Deepgramapi一应俱全。矩阵注册数据对应 matrix_registry.json。4.1 标准 Agent 序列先预检再安装SKILL.md 给出了矩阵使用的标准动作顺序其设计原则是preflight before you install安装前先预检cli-hub matrix list # 浏览所有矩阵 cli-hub can transcribe audio # 跨矩阵查找该能力 cli-hub matrix search video subtitle # 搜索显示匹配到的能力 cli-hub matrix preflight video-creation --json # 当前环境哪些可用(exit 3 有缺口) cli-hub matrix preflight video-creation -c text.transcribe --fix-hints # 单个能力 安装提示 cli-hub matrix install video-creation --capability text.transcribe # 只安装任务所需的部分 # 安装完成后矩阵 SKILL.md 会在本地渲染出带 provider 选择规则的版本——务必阅读cli-hub can query在所有矩阵的能力粒度上做搜索search_capabilities见 cli-hub/cli_hub/matrix.py每个命中结果都携带当前机器的 provider 可用性无命中时退出码为 1cli-hub matrix preflight name检查矩阵中各 provider 的requiresenv 变量 / 二进制 / Python 包三类在本环境是否齐备matrix.py。--fix-hints会在缺失 provider 下方打印可复制的安装命令优先使用注册表里的install_hint否则推导为cli-hub install cli见provider_install_hintcli-hub matrix install name --capability id通过resolve_install_scope把能力解析为矩阵clis[]的一个子集只安装该能力背后的 CLIinstaller.py。4.2 退出码契约矩阵命令族有严格的退出码约定在 cli.py 定义为EXIT_OK / EXIT_FAIL / EXIT_USAGE / EXIT_PARTIAL并在 preflight、install、doctor 中落实退出码含义0成功 / 全部能力有可用 provider1失败 / 未找到 / 矩阵不存在2用法错误如--capability与--recipe同时使用、未知能力 id3部分成功 / 存在能力缺口如 preflight 发现 gap、install 部分失败4.3 作用域安装绝不无脑装全量SKILL.md 强调不要为「单能力任务」整装一个包含 14 个 CLI 的矩阵。可用的作用域控制有三把闸--capability id只装某个能力背后的 CLI--recipe id只装某个 recipe配方声明工作流需要哪些能力而非顺序用到的 CLI--only a,b直接指定矩阵成员子集逗号分隔。三者互斥同时给出会报用法错误resolve_install_scope在 matrix.py 中显式检查。安装前用--dry-run预览计划且零副作用它会输出「将跳过哪些已装项、将经 pip/npm/uv 安装哪些、哪些不在注册表、哪些是 matrix install 管不到的Python 库/原生二进制/云 API/agent 技能并给出汇总数字与可复制的最终安装命令」_render_dry_runcli.py。所有矩阵子命令都支持--json。安装失败后的两条补救路径# 重试上次失败的 CLI只重试失败的不重复安装成功的 cli-hub matrix install name --resume # 审计安装完整性检查矩阵成员是否已安装、入口是否在 PATH cli-hub matrix doctor name--resume依据~/.cli-hub/matrix_state.json中上次安装的逐项结果只挑出status failed的成员重试且不能与--capability/--recipe/--only混用installer.pymatrix doctor则逐成员核对installed.json记录与入口可执行文件是否存在给出cli-hub install name修复命令installer.py。4.4 安装后本地渲染的矩阵 SKILL.md矩阵安装完成后会在本地渲染一份「带环境事实」的 SKILL.md路径为~/.cli-hub/matrix/name/SKILL.md并把references/与scripts/资产复制到同目录保证文档内相对链接可解析cli-hub/cli_hub/matrix_skill.py。渲染时注入的段落包括Installed CLI Skills成员 CLI 的入口、规范技能路径、本地技能路径、安装状态表、Capability Provider Overview每个能力的 provider、质量/成本/离线/安装状态与 requires、Recipes与Known Gaps。技能内容的来源有三级查找链仓库 checkoutcli-hub-matrix/name/→ wheel 内置数据cli_hub/_matrix_data/由 cli-hub/setup.py 构建时从仓库根目录cli-hub-matrix同步打包→ 发布 URL。也就是说即便没有仓库检出wheel 也自带矩阵内容Agent 阅读本地渲染版即可拿到「这台机器上到底能用谁」的结论。五、Live Catalog自动更新的在线目录SKILL.md 指向一个自动更新的在线目录提供按类别组织的完整 CLI 列表、每个工具一行式的cli-hub install命令、完整描述与用法模式。仓库内的registry.json/public_registry.json/matrix_registry.json即为注册表的离线镜像cli-hub运行时会优先拉取线上版本并按小时缓存。注意目录是动态更新的安装前用cli-hub search/cli-hub list拉到的才是当前最新列表。六、预览消费Preview Consumptionharness 发布hub 消费部分 harness 支持预览工作流SKILL.md 给出了清晰的分工cli-anything-software preview ...创建或更新真实的预览产物cli-hub previews ...检视、渲染、监听或打开这些已存在的产物。典型用法# harness 侧发布预览状态 cli-anything-blender --json --project scene.blend-cli.json preview capture --recipe quick # cli-hub 侧检视或打开生成的 bundle / 实时会话 cli-hub previews inspect /path/to/bundle-or-session cli-hub previews html /path/to/bundle-or-session -o page.html cli-hub previews watch /path/to/session --open cli-hub previews open /path/to/bundle-or-session对于实时会话live sessioncli-hub previews读取三类文件session.json当前头部、trajectory.json追加式历史、当前 bundle 的 manifest 与产物。inspect会先判定目标是 bundle含manifest.json还是 live session含session.json再走不同渲染路径watch/open会渲染live.html、起一个本地静态服务器并轮询默认--poll-ms 1500刷新cli.py解析逻辑见 cli-hub/cli_hub/preview.py。设计意图是「生成与消费解耦」软件侧专注产出可核查的预览证据hub 侧统一负责查看与打开。七、完整使用流程How to Use 六步SKILL.md 的标准流程总结为六步安装 hubpip install cli-anything-hub要求 Python ≥ 3.10依赖仅click8.0与requests2.28见 setup.py找到工具cli-hub search keyword或cli-hub list -c category安装cli-hub install name安装cli-anything-namepip 包公共 CLI 则走 npm/uv/command 策略运行cli-anything-name进入 REPL或cli-anything-name command一次性执行JSON 输出所有 CLI 都支持--json标志输出机器可读结果供 Agent 解析预览能力可用预览的 CLI 先cli-anything-name preview ... --json发布再用cli-hub previews ...检视或打开。八、一个端到端示例工作流# 安装 hub pip install cli-anything-hub # 找到需要的东西 cli-hub search video # 安装它 cli-hub install kdenlive # 用 JSON 输出使用它 cli-anything-kdenlive --json project create --name my-project若任务更复杂比如「给一段录屏加字幕转成成片」则上升为矩阵用法# 1. 找到承载该能力的所有矩阵 cli-hub can transcribe audio # 2. 对候选矩阵做预检确认本机可用性--fix-hints 给出补齐命令 cli-hub matrix preflight video-creation -c text.transcribe --fix-hints # 3. 只安装该能力需要的 CLI而非 14 个全装先用 --dry-run 预览零副作用 cli-hub matrix install video-creation --capability text.transcribe --dry-run cli-hub matrix install video-creation --capability text.transcribe # 4. 阅读本地渲染的矩阵 SKILL.md按其 provider 选择规则干活九、更多资料入口每个软件的具体用法仓库 skills 目录下的cli-anything-name/SKILL.md例如 skills/cli-anything-kdenlive/SKILL.mdregistry.json中每条记录也通过skill_md字段指向它矩阵的完整能力定义与配方cli-hub-matrix/video-creation/SKILL.md 及其 references 参考模块、scripts/video_doctor.pyhub 全部源码cli-hub/cli_hubCLI 入口 cli.py、注册表 registry.py、矩阵逻辑 matrix.py、安装器 installer.py、技能渲染 matrix_skill.py测试见 cli-hub/tests。适用前提说明cli-hub的功能依赖网络可访问注册表与对应软件后端harness 类 CLI 通常要求目标软件已安装如 Kdenlive、OBS、GIMP公共 CLI 与云 API provider 则需要相应运行时或 API 密钥。矩阵的preflight正是为回答「本机缺什么」而设计建议作为每次矩阵任务的第一步。【免费下载链接】CLI-AnythingCLI-Anything: Making ALL Software Agent-Native -- CLI-Hub: https://clianything.cc/项目地址: https://gitcode.com/GitHub_Trending/cl/CLI-Anything创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考