skill-manager
$
npx mdskill add cat-xierluo/legal-skills/skill-managerInstall, sync, and manage external skills and commands.
- Handles installation from local paths or GitHub repositories.
- Requires Git access and write permissions to Claude directories.
- Creates symbolic links for local items or static copies for remote.
- Executes commands and installs skills based on user input.
SKILL.md
.github/skills/skill-managerView on GitHub ↗
--- name: skill-manager homepage: https://github.com/cat-xierluo/legal-skills author: 杨卫薪律师(微信ywxlaw) version: "1.2.0" description: 管理 Claude Code Skills 和 Commands 的安装、同步、卸载和列表查看,支持从本地路径或 GitHub 仓库/子目录安装。本技能应在用户需要安装外部 skill/command、从 GitHub 仓库同步、批量安装本地目录、查看已安装的 items、或卸载不需要的 item 时使用。 license: Complete terms in LICENSE.txt --- # Skill & Command Manager 管理 Claude Code Skills 和 Commands 的安装、同步、卸载和列表查看。 ## 前置条件 - Git 已安装(用于 GitHub 克隆) - 有写入 `.claude/skills/` 和 `.claude/commands/` 目录的权限 ## 安装行为 - **本地路径 (Skill)** → 符号链接(保持与源同步) - **本地路径 (Command)** → 符号链接(保持与源同步) - **本地集合目录** → 批量符号链接 - **GitHub 仓库/子目录** → 克隆后删除 .git(静态复制)+ 自动安全检查 ## 支持的来源类型 ### 本地路径(符号链接) ```bash # 单个 skill 目录 skill-manager install ~/skills/pdf-tool # 单个 command 文件 skill-manager install ~/commands/deepresearch.md # 包含多个 skills 的目录(批量安装) skill-manager install ~/skills/external-skills/ # 包含多个 commands 的目录(批量安装) skill-manager install ~/commands/ ``` ### GitHub 仓库根目录(克隆,删除 .git) ```bash skill-manager install https://github.com/owner/skill-repo skill-manager install owner/skill-repo ``` ### GitHub 子目录(稀疏克隆,删除 .git) ```bash # 完整 URL 到子目录 skill-manager install https://github.com/jgtolentino/insightpulse-odoo/tree/main/docs/claude-code-skills/community # 简写格式:owner/repo/branch/path/to/skills-directory skill-manager install jgtolentino/insightpulse-odoo/main/docs/claude-code-skills/community ``` ## 工作流程 ### 安装 1. **检测来源类型** - 自动识别本地路径、GitHub 仓库或子目录 2. **检测 Item 类型** - 自动识别是 Skill(目录)还是 Command(.md 文件) 3. **检测是否为集合目录** - 检查目录是否包含多个 items 4. **批量处理模式** - 如果是集合目录,遍历所有 items 并分别安装 5. **本地来源** - 创建符号链接,保持与源同步更新 6. **GitHub 仓库根** - 使用 `git clone --depth 1` 浅克隆 7. **GitHub 子目录** - 使用稀疏克隆(sparse checkout)仅获取指定目录 8. **冲突处理** - 已存在时先备份为 `.backup`,然后安装新版本 #### 安装命令 ```bash # 使用脚本安装 scripts/install.sh <source> # 示例 scripts/install.sh ~/dev/my-skills/pdf-tool scripts/install.sh ~/dev/my-commands/deepresearch.md scripts/install.sh ~/dev/my-skills/ scripts/install.sh ~/dev/my-commands/ scripts/install.sh https://github.com/anthropics/claude-code scripts/install.sh jgtolentino/insightpulse-odoo/main/docs/claude-code-skills/community ``` ### 列出已安装 Items ```bash scripts/list.sh ``` 显示 `.claude/skills/` 和 `.claude/commands/` 目录下所有已安装的 items 及其类型(符号链接或克隆)。 ### 卸载 ```bash scripts/remove.sh <name> ``` 删除指定的 skill 或 command(自动识别类型)。 ### 更新 ```bash scripts/update.sh [name] ``` - 不指定参数:更新所有通过 git 克隆的 skills - 指定名称:更新指定的 skill - **注意**:符号链接的 items 会自动与源同步,无需手动更新 ## 识别规则 ### Skill 目录规则 一个目录被视为有效的 skill 目录,如果它包含: - `SKILL.md` 文件(标准 skill) - 或 `skill.md` 文件(变体) - 或 `.claude` 子目录 ### Command 文件规则 - 文件扩展名为 `.md` ### 集合目录规则 - **Skills 集合**:包含多个 skill 子目录 - **Commands 集合**:包含多个 `.md` 文件 ## 使用示例 ```bash # ========== Skills ========== # 安装本地单个 skill skill-manager install ~/dev/my-skills/pdf-tool # 批量安装本地目录下的所有 skills skill-manager install ~/dev/my-skills/ skill-manager install ../other-project/.claude/skills/ # 从 GitHub 仓库根目录安装 skill-manager install https://github.com/anthropics/claude-code skill-manager install anthropics/claude-code # 从 GitHub 子目录安装 skill-manager install https://github.com/jgtolentino/insightpulse-odoo/tree/main/docs/claude-code-skills/community skill-manager install jgtolentino/insightpulse-odoo/main/docs/claude-code-skills/community # ========== Commands ========== # 安装本地单个 command skill-manager install ~/dev/my-commands/deepresearch.md # 批量安装本地目录下的所有 commands skill-manager install ~/dev/my-commands/ # ========== 通用操作 ========== # 列出已安装的 skills 和 commands skill-manager list # 卸载 skill skill-manager remove pdf-tool # 卸载 command skill-manager remove deepresearch # 更新所有 git 克隆的 skills skill-manager update # 更新指定 skill skill-manager update claude-code ``` ## 安全检查 从 GitHub 安装 skill 时,会自动进行安全检查(本地安装不检查)。 ### 检测内容 | 类别 | 说明 | |------|------| | **危险代码模式** | 命令执行、敏感文件访问、数据外泄、代码混淆、权限提升等 | | **Skill 特有风险** | 安装钩子、MCP 服务器配置等 | | **提示词安全** | 提示注入、数据收集指令、执行指令、欺骗性描述等 | | **硬编码凭证** | API Key、Token、密码等敏感信息 | ### 风险等级 - 🔴 **CRITICAL** - 极高风险,强烈建议不要使用 - 🟠 **HIGH** - 高风险,需审计后使用 - 🟡 **MEDIUM** - 中等风险,使用前请检查 - 🟢 **LOW** - 低风险,建议定期检查 - ✅ **NONE** - 未发现明显风险 ### 注意事项 - 安全检查需要 Python 3 环境,无 Python 时静默跳过 - 检查发现问题不会阻止安装,仅输出警告报告 - 建议在安装外部 skill 后仔细阅读安全报告 ## 目录结构 ``` skill-manager/ ├── SKILL.md # 本文件 ├── scripts/ │ ├── install.sh # 安装脚本 │ ├── list.sh # 列表脚本 │ ├── remove.sh # 卸载脚本 │ ├── update.sh # 更新脚本 │ └── security.py # 安全检查模块 └── CHANGELOG.md # 变更日志 ```
More from cat-xierluo/legal-skills
- clawhub-sync将本地开发的 Skills 批量同步到 ClawHub 平台。支持智能 .gitignore 过滤、白名单控制、增量同步、单个 skill 同步。本技能应在用户需要将本地 skills 发布到 ClawHub、批量同步技能、检查发布状态时使用。
- code2patent从已开发代码项目中提取技术实现证据,围绕候选专利方案生成技术交底书,并以“权利要求布局卡 → 发明专利初稿”两步法继续生成接近可申报版的中国发明专利起草材料。触发场景包括:读取代码仓库后撰写技术交底书、将人工总结的专利方案映射到具体实现、从代码中挖掘可专利技术方案、为专利代理师准备权利要求布局和发明专利初稿。
- course-generator从多个文献内容中系统化提取并生成结构化课程。支持 1-100+ 个文献文件,智能识别内容类型(转录/文献/混合),自动进行主题识别、课程大纲生成、总览与章节内容撰写。采用可选模块架构,适应不同类型内容(理论/实践/案例/历史等)。本技能应在用户需要将多个文献整理为系统化课程、生成学习材料、处理转录内容、或从复杂文稿中提取结构化内容时使用。
- court-sms本技能应在用户收到法院短信(文书送达、立案通知、开庭提醒等)时使用,自动提取案号、当事人、下载链接,下载文书并归档到对应案件目录。
- de-ai-polish检测并去除文章中的AI化表述模式,用于写作润色、文本优化、去AI腔。
- douyin-batch-download抖音视频批量下载工具 - 基于 F2 框架实现高效、增量的视频下载功能。支持单个/批量博主下载,自动 Cookie 管理,差量更新机制。本技能应在用户需要批量下载特定博主视频、服务器部署自动化下载、或定期更新视频库时使用。
- funasr-transcribe使用本地 FunASR 服务将音频或视频文件转录为带时间戳的 Markdown 文件,支持 mp4、mov、mp3、wav、m4a 等常见格式。本技能应在用户需要语音转文字、会议记录、视频字幕、播客转录时使用。
- git-batch-commit智能 Git 批量提交工具。当用户说 "git 提交"、"git commit"、"批量提交"、"拆分提交"、"整理提交" 时使用,或者当用户暂存了多个不同类型的文件需要分开提交时使用。自动将混合的文件修改按类型分类(依赖管理、文档更新、license 文件、配置、源代码等),并创建多个清晰聚焦的提交,使用标准化的提交信息格式。帮助保持清晰的 Git 历史,确保每个提交都有单一、明确的目的。使用英文前缀(docs:、feat:、fix: 等)加中文内容,支持 GitHub 彩色标签显示。
- github-star-managerGitHub Star 项目管理工具,支持从内容自动发现并 Star 项目,同步追踪更新,生成可视化 Dashboard
- legal-proposal-generator根据案件材料或沟通记录生成各类法律服务文档(诉讼方案、咨询报告、非诉方案、建议书、沟通报告、案件分析摘要等)。本技能应在用户需要将案件材料、咨询记录或沟通内容整理为专业法律文档时使用。