Skip to main content

omc-doctor

Diagnoses and resolves installation issues for oh-my-claudecode, ensuring smooth operation and plugin management.

Install this skill

or
0/100

Security score

The omc-doctor skill was audited on May 16, 2026 and we found 27 security issues across 2 threat categories, including 6 high-severity. Review the findings below before installing.

Categories Tested

Security Issues

high line 30

Template literal with variable interpolation in command context

SourceSKILL.md
30Read both `${CLAUDE_CONFIG_DIR:-~/.claude}/settings.json` (profile-level) and `./.claude/settings.json` (project-level) and check if there's a `"hooks"` key with entries like:
high line 31

Template literal with variable interpolation in command context

SourceSKILL.md
31- `bash ${CLAUDE_CONFIG_DIR:-$HOME/.claude}/hooks/keyword-detector.sh`
high line 32

Template literal with variable interpolation in command context

SourceSKILL.md
32- `bash ${CLAUDE_CONFIG_DIR:-$HOME/.claude}/hooks/persistent-mode.sh`
high line 33

Template literal with variable interpolation in command context

SourceSKILL.md
33- `bash ${CLAUDE_CONFIG_DIR:-$HOME/.claude}/hooks/session-start.sh`
medium line 40

Template literal with variable interpolation in command context

SourceSKILL.md
40```bash
medium line 49

Template literal with variable interpolation in command context

SourceSKILL.md
49```bash
medium line 110

Template literal with variable interpolation in command context

SourceSKILL.md
110```bash
high line 179

Template literal with variable interpolation in command context

SourceSKILL.md
179Remove the `"hooks"` section from `${CLAUDE_CONFIG_DIR:-~/.claude}/settings.json` (keep other settings intact)
medium line 182

Template literal with variable interpolation in command context

SourceSKILL.md
182```bash
high line 202

Template literal with variable interpolation in command context

SourceSKILL.md
202Fetch latest from GitHub and write to `${CLAUDE_CONFIG_DIR:-~/.claude}/CLAUDE.md`:
medium line 211

Template literal with variable interpolation in command context

SourceSKILL.md
211```bash
medium line 9

Access to hidden dotfiles in home directory

SourceSKILL.md
9Note: All `~/.claude/...` paths in this guide respect `CLAUDE_CONFIG_DIR` when that environment variable is set.
medium line 30

Access to hidden dotfiles in home directory

SourceSKILL.md
30Read both `${CLAUDE_CONFIG_DIR:-~/.claude}/settings.json` (profile-level) and `./.claude/settings.json` (project-level) and check if there's a `"hooks"` key with entries like:
medium line 122

Access to hidden dotfiles in home directory

SourceSKILL.md
122- If `~/.claude/agents/` exists with files matching plugin agent names: WARN - legacy agents (now provided by plugin)
medium line 123

Access to hidden dotfiles in home directory

SourceSKILL.md
123- If `~/.claude/commands/` exists with files matching plugin command names: WARN - legacy commands (now provided by plugin)
medium line 124

Access to hidden dotfiles in home directory

SourceSKILL.md
124- If `~/.claude/skills/` exists with files matching plugin skill names: WARN - legacy skills (now provided by plugin)
low line 154

Access to hidden dotfiles in home directory

SourceSKILL.md
154| Legacy Scripts (~/.claude/hooks/) | OK/WARN | ... |
low line 158

Access to hidden dotfiles in home directory

SourceSKILL.md
158| Legacy Agents (~/.claude/agents/) | OK/WARN | ... |
low line 159

Access to hidden dotfiles in home directory

SourceSKILL.md
159| Legacy Commands (~/.claude/commands/) | OK/WARN | ... |
low line 160

Access to hidden dotfiles in home directory

SourceSKILL.md
160| Legacy Skills (~/.claude/skills/) | OK/WARN | ... |
medium line 179

Access to hidden dotfiles in home directory

SourceSKILL.md
179Remove the `"hooks"` section from `${CLAUDE_CONFIG_DIR:-~/.claude}/settings.json` (keep other settings intact)
medium line 202

Access to hidden dotfiles in home directory

SourceSKILL.md
202Fetch latest from GitHub and write to `${CLAUDE_CONFIG_DIR:-~/.claude}/CLAUDE.md`:
low line 19

Access to .env file

SourceSKILL.md
19node -e "const p=require('path'),f=require('fs'),h=require('os').homedir(),d=process.env.CLAUDE_CONFIG_DIR||p.join(h,'.claude'),b=p.join(d,'plugins','cache','omc','oh-my-claudecode');try{const v=f.rea
low line 57

Access to .env file

SourceSKILL.md
57node -e "const p=require('path'),f=require('fs'),h=require('os').homedir(),d=process.env.CLAUDE_CONFIG_DIR||p.join(h,'.claude');const base=p.join(d,'CLAUDE.md');let baseContent='';try{baseContent=f.re
low line 99

Access to .env file

SourceSKILL.md
99node -e "const p=require('path'),f=require('fs'),h=require('os').homedir(),d=process.env.CLAUDE_CONFIG_DIR||p.join(h,'.claude'),b=p.join(d,'plugins','cache','omc','oh-my-claudecode');try{const v=f.rea
low line 192

Access to .env file

SourceSKILL.md
192node -e "const p=require('path'),f=require('fs'),d=process.env.CLAUDE_CONFIG_DIR||p.join(require('os').homedir(),'.claude'),b=p.join(d,'plugins','cache','omc','oh-my-claudecode');try{f.rmSync(b,{recur
low line 198

Access to .env file

SourceSKILL.md
198node -e "const p=require('path'),f=require('fs'),h=require('os').homedir(),d=process.env.CLAUDE_CONFIG_DIR||p.join(h,'.claude'),b=p.join(d,'plugins','cache','omc','oh-my-claudecode');try{const v=f.rea
Scanned on May 16, 2026
View Security Dashboard
Installation guide →