skills-manager
v0.0.7
Published
> 一个简单的 CLI 工具,用于管理技能包
Readme
skills-manager
一个简单的 CLI 工具,用于管理技能包
特性
- ⚡️ 快速安装 - 使用 degit 从 GitHub 仓库快速克隆
- 🎯 简单易用 - 清晰的 CLI 命令和友好的用户反馈
- 📦 全局/本地管理 - 技能包支持全局和本地安装模式
- 🔄 依赖轻量 - 基于 degit,无需 git 配置
- 📁 智能查找 - 自动识别仓库中的技能文件夹(优先查找
skills/目录) - 🚫 自动清理 - 安装前自动清理旧版本,避免冲突
- 💾 智能缓存 - 使用缓存加速重复安装
- 🎨 彩色输出 - 使用 chalk 提供清晰的状态反馈
安装
npm install -g skills-manager或使用 pnpm:
pnpm add -g skills-manager使用
安装技能
# 本地安装
skills-manager add <owner>/<repo> <skill-name>
# 全局安装
skills-manager add <owner>/<repo> <skill-name> --global例如:
# 本地安装
skills-manager add antfu/skills vue列出已安装的技能
# 列出当前目录的技能
skills-manager list
# 或
skills-manager ls
# 列出全局技能
skills-manager list --global删除技能
# 删除当前目录的技能
skills-manager remove <skill-name>
# 或
skills-manager rm <skill-name>
# 删除全局技能
skills-manager remove <skill-name> --global查看版本
skills --version工作原理
安装流程
- 缓存下载 - 使用 degit 下载指定 GitHub 仓库到
~/.cache/skills-manager - 智能查找 - 自动查找技能文件夹:
- 优先查找
skills/{skill-name}目录 - 如果未找到,递归搜索整个仓库
- 显示警告信息并继续查找
- 优先查找
- 准备安装 - 确定目标目录(全局或本地),创建必要的目录结构
- 清理旧版 - 自动删除已存在的技能目录,避免冲突
- 复制安装 - 将技能文件夹复制到最终位置
- 完成反馈 - 显示安装成功的彩色信息
技能目录结构
技能仓库应该包含以下结构之一:
# 推荐结构(优先匹配)
skills/
├── skill-name/
│ └── (技能文件)
└── ...
# 或者直接在根目录
skill-name/
└── (技能文件)架构
src/
├── index.ts # CLI 入口点(使用 cac 框架)
├── manager.ts # 技能管理器(基于 degit)
├── utils.ts # 工具函数(文件操作、颜色输出等)
└── types.ts # TypeScript 类型定义缓存位置
技能包缓存存储在 ~/.cache/skills-manager/ 目录下,每个仓库根据名称创建单独的缓存文件夹。
技能安装位置
- 全局技能:
~/.claude/skills/ - 本地技能:
./.claude/skills/(相对于当前工作目录)
许可证
故障排除
常见问题
技能未找到错误
Error: Skill 'skill-name' not found in repo owner/repo- 确保仓库中包含名为
skill-name的目录 - 技能应该位于
skills/skill-name或仓库的根目录
- 确保仓库中包含名为
权限错误
Error: EACCES: permission denied- 检查对
~/.claude/skills或当前目录的写权限 - 尝试使用
sudo(仅限全局安装)
- 检查对
网络错误
- 确保网络连接正常
- 检查 GitHub 仓库是否可以访问
调试模式
如果遇到问题,可以:
检查缓存目录内容:
ls ~/.cache/skills-manager/清理缓存后重试:
rm -rf ~/.cache/skills-manager/
作者
Jiakun Zhao
