关于 doctor
doctor 是用于诊断和修复 oh-my-claudecode 安装问题的技能。它检查插件版本、旧版钩子、配置文件和缓存,并在用户确认后执行修复。
主要功能
- 01检查插件版本与缓存
- 02检测旧版钩子和脚本
- 03验证 CLAUDE.md 配置
- 04检查旧版安装内容
- 05确认后自动修复问题
适用场景
- 01排查插件未安装或版本过旧
- 02发现重复钩子和陈旧缓存
- 03检查 OMC 配置是否缺失
- 04清理旧版安装文件
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ yeachan-heo/ oh-my-claudecode --skill doctor安装后在 Claude Code 中输入/doctor确认已加载。
详细介绍
Doctor Skill
注意:本指南中所有 ~/.claude/... 路径在设置了 CLAUDE_CONFIG_DIR 环境变量时,都会遵循该变量。
任务:运行安装诊断
你是 OMC Doctor - 负责诊断并修复安装问题。
第 1 步:检查插件版本
# Get installed version
INSTALLED=$(ls ~/.claude/plugins/cache/omc/oh-my-claudecode/ 2>/dev/null | sort -V | tail -1)
echo "Installed: $INSTALLED"
# Get latest from npm
LATEST=$(npm view oh-my-claude-sisyphus version 2>/dev/null)
echo "Latest: $LATEST"
诊断:
- 如果未安装任何版本:CRITICAL - 插件未安装
- 如果 INSTALLED != LATEST:WARN - 插件已过时
- 如果存在多个版本:WARN - 缓存陈旧
第 2 步:检查 settings.json 中的旧版 Hooks
读取 ~/.claude/settings.json,检查是否存在 "hooks" 键,且其中包含如下条目:
bash $HOME/.claude/hooks/keyword-detector.shbash $HOME/.claude/hooks/persistent-mode.shbash $HOME/.claude/hooks/session-start.sh
诊断:
- 如果找到:CRITICAL - 旧版 hooks 导致重复
第 3 步:检查旧版 Bash Hook 脚本
ls -la ~/.claude/hooks/*.sh 2>/dev/null
诊断:
- 如果存在
keyword-detector.sh、persistent-mode.sh、session-start.sh或stop-continuation.sh:WARN - 旧版脚本(可能造成混淆)
第 4 步:检查 CLAUDE.md
# Check if CLAUDE.md exists
ls -la ~/.claude/CLAUDE.md 2>/dev/null
# Check for OMC marker
grep -q "oh-my-claudecode Multi-Agent System" ~/.claude/CLAUDE.md 2>/dev/null && echo "Has OMC config" || echo "Missing OMC config"
诊断:
- 如果缺失:CRITICAL - CLAUDE.md 未配置
- 如果缺少 OMC 标记:WARN - CLAUDE.md 已过时
第 5 步:检查陈旧的插件缓存
# Count versions in cache
ls ~/.claude/plugins/cache/omc/oh-my-claudecode/ 2>/dev/null | wc -l
诊断:
- 如果版本数 > 1:WARN - 存在多个缓存版本(建议清理)
第 6 步:检查旧版通过 curl 安装的内容
检查通过 curl 安装的旧版 agents、commands 和 skills(在插件系统之前):
# Check for legacy agents directory
ls -la ~/.claude/agents/ 2>/dev/null
# Check for legacy commands directory
ls -la ~/.claude/commands/ 2>/dev/null
# Check for legacy skills directory
ls -la ~/.claude/skills/ 2>/dev/null
诊断:
- 如果
~/.claude/agents/存在且包含与 oh-my-claudecode 相关的文件:WARN - 旧版 agents(现由插件提供) - 如果
~/.claude/commands/存在且包含与 oh-my-claudecode 相关的文件:WARN - 旧版 commands(现由插件提供) - 如果
~/.claude/skills/存在且包含与 oh-my-claudecode 相关的文件:WARN - 旧版 skills(现由插件提供)
查找如下文件:
- agents/ 中的
architect.md、researcher.md、explore.md、executor.md等 - commands/ 中的
ultrawork.md、deepsearch.md等 - skills/ 中任何与 oh-my-claudecode 相关的
.md文件
报告格式
运行所有检查后,输出一份报告:
## OMC Doctor Report
### Summary
[HEALTHY / ISSUES FOUND]
### Checks
| Check | Status | Details |
|-------|--------|---------|
| Plugin Version | OK/WARN/CRITICAL | ... |
| Legacy Hooks (settings.json) | OK/CRITICAL | ... |
| Legacy Scripts (~/.claude/hooks/) | OK/WARN | ... |
| CLAUDE.md | OK/WARN/CRITICAL | ... |
| Plugin Cache | OK/WARN | ... |
| Legacy Agents (~/.claude/agents/) | OK/WARN | ... |
| Legacy Commands (~/.claude/commands/) | OK/WARN | ... |
| Legacy Skills (~/.claude/skills/) | OK/WARN | ... |
### Issues Found
1. [Issue description]
2. [Issue description]
### Recommended Fixes
[List fixes based on issues]
自动修复(如果用户确认)
如果发现问题,询问用户:"Would you like me to fix these issues automatically?"
如果同意,则应用修复:
修复:settings.json 中的旧版 Hooks
从 ~/.claude/settings.json 中移除 "hooks" 部分(保持其他设置不变)
修复:旧版 Bash 脚本
rm -f ~/.claude/hooks/keyword-detector.sh
rm -f ~/.claude/hooks/persistent-mode.sh
rm -f ~/.claude/hooks/session-start.sh
rm -f ~/.claude/hooks/stop-continuation.sh
修复:过时的插件
rm -rf ~/.claude/plugins/cache/oh-my-claudecode
echo "Plugin cache cleared. Restart Claude Code to fetch latest version."
修复:陈旧的缓存(多个版本)
# Keep only latest version
cd ~/.claude/plugins/cache/omc/oh-my-claudecode/
ls | sort -V | head -n -1 | xargs rm -rf
修复:缺失/过时的 CLAUDE.md
从 GitHub 获取最新版本并写入 ~/.claude/CLAUDE.md:
WebFetch(url: "https://raw.githubusercontent.com/Yeachan-Heo/oh-my-claudecode/main/docs/CLAUDE.md", prompt: "Return the complete raw markdown content exactly as-is")
修复:旧版通过 curl 安装的内容
移除旧版 agents、commands 和 skills 目录(现由插件提供):
# Backup first (optional - ask user)
# mv ~/.claude/agents ~/.claude/agents.bak
# mv ~/.claude/commands ~/.claude/commands.bak
# mv ~/.claude/skills ~/.claude/skills.bak
# Or remove directly
rm -rf ~/.claude/agents
rm -rf ~/.claude/commands
rm -rf ~/.claude/skills
注意:仅当这些内容包含与 oh-my-claudecode 相关的文件时才移除。如果用户有自定义 agents/commands/skills,请先警告并询问后再移除。
修复后
应用修复后,告知用户:
修复已应用。重启 Claude Code 以使更改生效。
评论
支持 Markdown