Claude-skill-registry check-skill-conflicts
This skill should be used when checking for naming conflicts between local skills (~/.claude/skills) and plugin-provided skills (~/.claude/plugins). Use to identify duplicate or similarly named skills that may cause inconsistent agent behavior.
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/check-skill-conflicts" ~/.claude/skills/majiayu000-claude-skill-registry-check-skill-conflicts && rm -rf "$T"
manifest:
skills/data/check-skill-conflicts/SKILL.mdsource content
Check Skill Conflicts
Identifies naming conflicts between local Claude Code skills and plugin-provided skills.
Why This Matters
When a skill exists in both
~/.claude/skills/ (local) and ~/.claude/plugins/ (plugin), agents may:
- Load the wrong skill version
- Get inconsistent results between sessions
- Have unpredictable behavior when skill names are similar
Quick Check
# Run conflict check ~/.claude/plugins/marketplaces/plinde-plugins/check-skill-conflicts/skills/check-skill-conflicts/scripts/check-conflicts.sh # Verbose output (shows all skills found) ~/.claude/plugins/marketplaces/plinde-plugins/check-skill-conflicts/skills/check-skill-conflicts/scripts/check-conflicts.sh --verbose # JSON output for programmatic use ~/.claude/plugins/marketplaces/plinde-plugins/check-skill-conflicts/skills/check-skill-conflicts/scripts/check-conflicts.sh --json
What It Checks
- Exact Matches - Same skill name in both locations
- Similar Names - Names that differ only by suffix/prefix (e.g.,
vsfoo
)foo-skill - Case Variations - Same name with different casing
Output Example
SKILL CONFLICT CHECK ==================== Local Skills: 45 found in ~/.claude/skills/ Plugin Skills: 12 found in ~/.claude/plugins/ EXACT MATCHES (High Priority): ⚠️ kyverno-version-lookup Local: ~/.claude/skills/kyverno-version-lookup/ Plugin: ~/.claude/plugins/marketplaces/plinde-plugins/kyverno-version-lookup/ SIMILAR NAMES (Review Recommended): ⚡ plugin-creator ~ plugin-dev Local: ~/.claude/skills/plugin-creator/ Plugin: ~/.claude/plugins/marketplaces/.../plugin-dev/ No conflicts: ✅ (if none found)
Resolution Options
When conflicts are found:
-
Remove local skill - If plugin version is preferred
cd ~/.claude/skills && git rm -r <skill-name> -
Uninstall plugin - If local version is preferred
/plugin uninstall <plugin-name> -
Rename local skill - If both are needed but different
mv ~/.claude/skills/<old-name> ~/.claude/skills/<new-name> # Update SKILL.md frontmatter name field
Skill Locations
| Type | Path Pattern |
|---|---|
| Local Skills | |
| Plugin Skills | |
| Symlinked Plugins | |
Self-Test
# Verify script exists and is executable test -x ~/.claude/plugins/marketplaces/plinde-plugins/check-skill-conflicts/skills/check-skill-conflicts/scripts/check-conflicts.sh && \ echo "✅ check-conflicts.sh exists" || echo "❌ Script missing" # Run a quick check ~/.claude/plugins/marketplaces/plinde-plugins/check-skill-conflicts/skills/check-skill-conflicts/scripts/check-conflicts.sh --json | jq -e '.local_count >= 0' > /dev/null && \ echo "✅ Script runs successfully" || echo "❌ Script failed"