mirror of
https://github.com/hansjone/oclaw.git
synced 2026-10-09 23:53:15 +08:00
同时收敛启动与运维脚本默认行为(含 wiki worker)、更新 Admin 可观测性与相关测试,降低首轮时延并提高运行稳定性。 Made-with: Cursor
3.7 KiB
3.7 KiB
Skill 卸载流程详细指南
本文档详细描述 skill 的卸载流程。
卸载前准备
1. 检测平台
使用与安装相同的平台检测逻辑:
IF OpenClaw:
安装目录 = ~/.openclaw/skills/
配置文件 = ~/.openclaw/config.json
ELSE IF Molili:
安装目录 = ~/.molili/skills/
配置文件 = ~/.molili/config.json
ELSE IF Claude Code:
安装目录 = ~/.claude/skills/
配置文件 = ~/.claude/config.json
ELSE:
安装目录 = ~/.claude/skills/ (clawhub 默认)
配置文件 = ~/.claude/config.json
2. 确认 Skill 存在
检查 skill 目录是否存在:
{安装目录}/{skill-name}/
├── SKILL.md
├── scripts/
├── references/
└── assets/
如果不存在:
- 返回错误 "未找到该 skill,可能已卸载或名称错误"
- 建议用户使用
list命令查看已安装 skills
3. 获取 Skill 信息
读取 SKILL.md 获取基本信息:
- name
- description
- version(如果有)
卸载流程
第一步:用户确认
展示将要卸载的 skill 信息,请求确认:
⚠️ 即将卸载以下 skill:
名称: pdf-processor
描述: PDF processing and manipulation tools
安装路径: ~/.claude/skills/pdf-processor/
⚠️ 此操作将删除该 skill 的所有文件,不可恢复。
是否确认卸载? [y/N]
可选:添加 --force 或 -f 参数跳过确认。
第二步:备份(可选)
如果用户指定 --backup 或 -b 参数:
- 创建备份目录:
~/.cocoloop/backups/ - 打包 skill 目录:
tar -czf ~/.cocoloop/backups/{skill-name}-{timestamp}.tar.gz {skill-path}/ - 提示备份位置
第三步:执行卸载
-
删除 skill 目录
rm -rf {安装目录}/{skill-name}/ -
更新平台配置(如果需要)
- 某些平台维护已安装 skill 列表
- 从列表中移除该 skill
-
清理相关缓存
- 删除 Cocoloop 本地缓存中该 skill 的搜索记录
- 删除安全检查缓存(如果有)
第四步:验证卸载
检查 skill 目录是否还存在:
- 如果存在 → 返回错误 "卸载失败,请检查权限或手动删除"
- 如果不存在 → 卸载成功
批量卸载
支持一次卸载多个 skills:
卸载 skill1 skill2 skill3
处理流程:
- 遍历每个 skill
- 执行单个卸载流程(不询问确认,或统一确认)
- 汇总结果:
📊 卸载结果: skill1: ✅ 已卸载 skill2: ❌ 未找到 skill3: ✅ 已卸载
卸载后处理
依赖检查(可选)
检查是否有其他 skill 依赖被卸载的 skill:
- 遍历所有已安装 skills
- 检查它们的 dependencies(如果有记录)
- 如果有依赖关系,警告用户:
⚠️ 警告: 以下 skill 可能依赖 pdf-processor: - document-workflow 继续使用这些 skill 可能会出现问题。
清理孤立依赖(高级)
如果 skill 安装了独立的依赖(如 node_modules),检查是否可以清理:
- 如果其他 skill 不使用 → 可以删除
- 如果有共享依赖 → 保留
错误处理
| 错误场景 | 处理方式 |
|---|---|
| 权限不足 | 提示使用 sudo 或检查目录权限 |
| 文件被占用 | 提示关闭使用该 skill 的程序后重试 |
| 目录非空但无法删除 | 保留日志,提示手动删除 |
| 配置文件损坏 | 尝试修复或重建配置 |
恢复卸载
如果用户误卸载,提供恢复选项(前提是备份存在):
恢复 pdf-processor
流程:
- 查找备份目录:
~/.cocoloop/backups/pdf-processor-*.tar.gz - 列出可用备份(按时间排序)
- 询问用户选择恢复哪个版本
- 解压到安装目录
- 验证恢复