--- name: skill-manager description: 自我进化 Skills 管理器。通过自然语言安装、升级、卸载、回滚技能。 --- # Skill Manager - 技能管理器 基于 Git 的 Claude Code 技能管理系统,支持自然语言操作。 --- ## 命令列表 | 命令 | 功能 | 示例 | |------|------|------| | `/skill list` | 列出已安装技能 | `/skill list` | | `/skill install ` | 安装新技能 | `/skill install https://github.com/org/skill-name` | | `/skill upgrade [name]` | 升级技能 | `/skill upgrade coolbuy-paas` | | `/skill uninstall ` | 卸载技能 | `/skill uninstall dev-test` | | `/skill rollback ` | 回滚版本 | `/skill rollback coolbuy-paas v1.1.0` | | `/skill info ` | 查看技能详情 | `/skill info coolbuy-paas` | | `/skill enable ` | 启用技能 | `/skill enable ops-tools` | | `/skill disable ` | 禁用技能 | `/skill disable ops-tools` | | `/skill check` | 检查更新 | `/skill check` | --- ## 自然语言支持 支持中英文自然语言指令: | 自然语言 | 解析为 | |----------|--------| | "升级 coolbuy-paas" | `/skill upgrade coolbuy-paas` | | "更新所有技能" | `/skill upgrade` | | "安装技能 https://..." | `/skill install https://...` | | "卸载 dev-test 技能" | `/skill uninstall dev-test` | | "列出所有技能" | `/skill list` | | "回滚到 v1.1.0" | `/skill rollback v1.1.0` | | "xxx 是什么版本" | `/skill info xxx` | --- ## 命令处理指南 ### `/skill list` **列出所有已安装技能** 执行步骤: 1. 读取 `~/.claude/skills/registry.yaml` 2. 遍历所有技能目录 3. 读取每个技能的 `skill.yaml` 获取版本信息 4. 按名称排序显示 输出格式: ``` 已安装技能 (N个): | 名称 | 版本 | 状态 | 最后更新 | |------|------|------|----------| | skill-name | v1.0.0 | active | 2026-01-20 | ``` --- ### `/skill install ` **从 Git 仓库安装新技能** 执行步骤: 1. 验证仓库地址格式(HTTPS 或 SSH) 2. 从 URL 提取技能名称 3. 检查是否已安装(如已安装,提示使用 upgrade) 4. 执行 `git clone` 到 `~/.claude/skills/repos//` 5. 验证 `skill.yaml` 存在且格式正确 6. 检查并安装依赖技能 7. 更新 `registry.yaml` 8. 创建符号链接或复制到 `~/.claude/skills//` 9. 执行 `post_install` 钩子 10. 显示安装结果 示例: ```bash # HTTPS /skill install https://github.com/org/skill-coolbuy-paas.git # SSH /skill install git@github.com:org/skill-coolbuy-paas.git ``` --- ### `/skill upgrade [name]` **升级指定技能或全部技能** 执行步骤: 1. 如果指定 name,升级单个技能;否则升级全部 2. 读取 `registry.yaml` 获取仓库路径 3. 进入仓库目录执行 `git fetch origin` 4. 比较本地和远程版本 5. 如有更新: - 执行 `git pull origin main` - 读取新版本号 - 更新 `registry.yaml` - 执行 `post_update` 钩子 - 同步文件到 `~/.claude/skills//` 6. 显示更新结果 --- ### `/skill uninstall ` **卸载已安装的技能** 执行步骤: 1. 验证技能存在 2. 检查是否有其他技能依赖此技能 3. 如有依赖,显示警告并询问确认 4. 执行 `post_uninstall` 钩子 5. 删除仓库目录 `~/.claude/skills/repos//` 6. 删除技能目录 `~/.claude/skills//` 7. 从 `registry.yaml` 移除记录 8. 显示卸载结果 --- ### `/skill rollback ` **回滚技能到指定版本** 执行步骤: 1. 验证技能存在 2. 进入仓库目录 3. 验证目标版本存在(`git tag` 或 commit hash) 4. 显示版本差异和警告 5. 询问用户确认 6. 执行 `git checkout ` 7. 更新 `registry.yaml` 中的版本号 8. 同步文件 9. 执行 `post_update` 钩子 10. 显示回滚结果 --- ### `/skill info ` **查看技能详细信息** 执行步骤: 1. 读取 `skill.yaml` 2. 读取 git 仓库信息(当前分支、最新 commit) 3. 显示详细信息 输出格式: ``` 技能: coolbuy-paas 版本: v1.2.0 描述: 酷采3.0 SaaS 租户端开发与测试 作者: your-team 状态: active 仓库: git@github.com:org/skill-coolbuy-paas.git 分支: main Commit: abc1234 (2026-01-20) 依赖: - dev-coding - ops-tools 触发关键词: - coolbuy-paas - 酷采 - 商品管理 ``` --- ### `/skill check` **检查所有技能是否有更新** 执行步骤: 1. 遍历所有已安装技能 2. 对每个技能执行 `git fetch origin` 3. 比较本地和远程 HEAD 4. 显示有更新的技能列表 输出格式: ``` 检查技能更新... 有更新的技能 (2个): - coolbuy-paas: v1.1.0 → v1.2.0 - req: v4.4.0 → v4.5.0 执行 `/skill upgrade` 升级所有技能 ``` --- ## 目录结构 ``` ~/.claude/ ├── skills/ │ ├── registry.yaml # 技能注册表 │ ├── repos/ # Git 仓库存储目录 │ │ ├── coolbuy-paas/ │ │ │ ├── .git/ │ │ │ ├── skill.yaml │ │ │ └── SKILL.md │ │ └── ... │ ├── coolbuy-paas/ # 技能目录(符号链接或复制) │ │ └── SKILL.md │ ├── skill-manager/ # 本技能 │ │ ├── skill.yaml │ │ ├── SKILL.md │ │ └── scripts/ │ └── ... └── settings.json ``` --- ## Registry 结构 `~/.claude/skills/registry.yaml`: ```yaml version: 1 updated_at: 2026-01-26T12:00:00Z config: auto_update_check: true default_branch: main skills: coolbuy-paas: repo: git@github.com:org/skill-coolbuy-paas.git local_path: ~/.claude/skills/repos/coolbuy-paas version: 1.2.0 installed_at: 2026-01-15T10:00:00Z last_updated: 2026-01-20T10:30:00Z status: active ``` --- ## skill.yaml 规范 ```yaml # 必填 name: skill-name # hyphen-case, ≤64字符 version: 1.0.0 # 语义化版本 description: 技能描述 # ≤1024字符 # 可选 author: author-name license: MIT triggers: keywords: [关键词列表] commands: [/command] file_patterns: ["**/pattern/**"] prompt_file: SKILL.md dependencies: - other-skill mcp_servers: - server-name hooks: post_install: [命令列表] post_update: [命令列表] post_uninstall: [命令列表] allowed_tools: - Bash - Read metadata: category: category tags: [tag1, tag2] ``` --- ## 脚本工具 ### scripts/validate.sh 验证 skill.yaml 格式: ```bash ~/.claude/skills/skill-manager/scripts/validate.sh ``` ### scripts/sync.sh 同步技能文件: ```bash ~/.claude/skills/skill-manager/scripts/sync.sh ``` --- ## 注意事项 1. **私有仓库**: 需要配置 SSH key 或 Personal Access Token 2. **依赖循环**: 安装前会检测循环依赖 3. **版本兼容**: 支持语义化版本和 Git commit hash 4. **钩子安全**: 钩子脚本在执行前会显示内容供用户确认