返回

CLI-Anything 教程 10:CLI-Hub 与生态建设(社区贡献与 CLI 发现)

CLI-Anything 生态建设指南:介绍 CLI-Hub 平台、如何贡献自己的 CLI、meta-skill 机制,以及社区协作模式。

教程概述

系列目录:CLI-Anything 教程系列索引

CLI-Hub 是 CLI-Anything 项目的中央注册平台,用户可以在这里发现、浏览和安装社区贡献的 CLI 工具。

CLI-Hub 平台

什么是 CLI-Hub?

flowchart TD
    A[CLI-Hub] --> B[CLI 注册表]
    A --> C[搜索发现]
    A --> D[一键安装]
    A --> E[社区贡献]

    B --> F[16+ 软件 CLI]
    C --> G[按类别/标签筛选]
    D --> H[pip install]
    E --> I[提交你的 CLI]

访问 CLI-Hub

CLI 发现机制

手动发现

# 通过 CLI-Hub 网站浏览
# 找到需要的软件 CLI

# 一键安装
pip install cli-anything-gimp

Meta-Skill 自动发现

CLI-Anything 提供了 CLI-Hub Meta-Skill,让 AI Agent 能自动发现和安装 CLI:

# cli-hub-meta-skill/SKILL.md

## 能力

Agent 可以:
1. 查询 CLI-Hub 注册表
2. 搜索特定软件的 CLI
3. 自动安装所需 CLI
4. 学习 SKILL.md 使用 CLI

## 使用示例

User: "帮我用 GIMP 处理这张图片"

Agent:
1. 检查是否已安装 cli-anything-gimp
2. 如未安装,查询 CLI-Hub
3. 执行 pip install cli-anything-gimp
4. 读取 SKILL.md 学习用法
5. 执行用户请求

贡献你的 CLI

贡献流程

flowchart LR
    A[生成 CLI] --> B[本地测试]
    B --> C[创建 PR]
    C --> D[代码审查]
    D --> E[合并发布]
    E --> F[CLI-Hub 更新]

    style C fill:#e3f2fd
    style D fill:#fff3e0
    style E fill:#e8f5e9

提交要求

## 提交清单

### 必需文件
- [ ] agent-harness/ 目录
- [ ] setup.py 或 pyproject.toml
- [ ] README.md
- [ ] SKILL.md
- [ ] tests/ 目录(覆盖率 ≥80%)

### 代码质量
- [ ] 通过所有测试
- [ ] 无 lint 错误
- [ ] 文档完整

### 元数据
- [ ] 在 registry.json 中注册
- [ ] 提供图标和描述
- [ ] 指定依赖版本

registry.json 格式

{
  "name": "gimp",
  "display_name": "GIMP",
  "description": "GNU Image Manipulation Program CLI",
  "category": "graphics",
  "tags": ["image", "photo", "editing"],
  "icon": "assets/icons/gimp.png",
  "package": "cli-anything-gimp",
  "version": "1.0.0",
  "author": "Your Name",
  "repository": "https://github.com/HKUDS/CLI-Anything",
  "license": "MIT",
  "requirements": {
    "software": "gimp >= 2.10",
    "python": ">=3.10"
  },
  "commands_count": 42,
  "tests_count": 107
}

社区协作

贡献类型

类型 说明 示例
新软件 CLI 为未支持的软件生成 CLI FreeCAD、Krita
功能扩展 为现有 CLI 添加命令 新增批处理功能
Bug 修复 修复问题 修复导出失败
文档改进 完善 SKILL.md 添加使用示例
测试增强 提高覆盖率 添加 E2E 测试

社区规范

## 行为准则

### DO
- ✅ 遵循 HARNESS.md 方法论
- ✅ 使用真实软件进行测试
- ✅ 提供完整文档
- ✅ 尊重其他贡献者

### DON'T
- ❌ 提交未经测试的代码
- ❌ 使用模拟代替真实软件
- ❌ 忽视错误处理
- ❌ 破坏向后兼容性(无警告)

生态系统现状

当前支持的软件(16+)

类别 软件 命令数 测试数
图像 GIMP 42 107
图像 Inkscape 38 202
3D Blender 56 208
CAD FreeCAD 89 258
视频 Kdenlive 45 155
视频 Shotcut 43 154
音频 Audacity 52 161
办公 LibreOffice 48 158
文献 Zotero 32 -
图表 Draw.io 28 138

增长趋势

flowchart LR
    2024Q1[1 CLI] --> 2024Q2[5 CLIs]
    2024Q2 --> 2024Q3[10 CLIs]
    2024Q3 --> 2024Q4[16 CLIs]
    2024Q4 --> 2025[30+ CLIs]

未来规划

短期目标(2025 Q2)

  • 支持 30+ 软件
  • 完善测试基础设施
  • 改进文档生成

中期目标(2025 Q4)

  • 支持更多平台(VS Code 扩展、JetBrains 插件)
  • CLI 质量评分系统
  • 自动化测试 CI/CD

长期愿景

让任何软件都能被 AI Agent 使用

flowchart TD
    A[用户请求] --> B{CLI 存在?}
    B -->|是| C[使用现有 CLI]
    B -->|否| D[自动生成 CLI]
    C --> E[完成任务]
    D --> E

    style D fill:#e3f2fd

小结

CLI-Hub 是 CLI-Anything 生态的核心:

  1. CLI 发现 - 集中注册表,便于查找
  2. Meta-Skill - Agent 自动发现能力
  3. 社区贡献 - 开放的贡献流程
  4. 生态建设 - 持续增长的目标

系列导航

参考资源