Diagnose and resolve Claude Code plugin and skill issues. This skill should be used when plugins are installed but not showing in available skills list, skills are not activating as expected, or when troubleshooting enabledPlugins configuration in settings.json. Triggers include "plugin not working", "skill not showing", "installed but disabled", or "enabledPlugins" issues.
npx skills add https://github.com/daymade/claude-code-skills --skill claude-skills-troubleshooting
Diagnose and resolve common Claude Code plugin and skill configuration issues. This skill provides systematic debugging workflows for plugin installation, enablement, and activation problems.
Run the diagnostic script to identify common issues:
python3 scripts/diagnose_plugins.py
The script checks:
known_marketplaces.json lastUpdatedlastUpdated metadataTreat lastUpdated as the only cache-freshness source. Do not fall back to
cache-directory modification times: marketplace updates can refresh nested
files without changing that directory timestamp. The diagnostic exits nonzero
for stale caches or invalid freshness metadata.
Symptoms:
/plugin shows plugin as installedinstalled_plugins.jsonRoot Cause: Known bug (GitHub #17832) - plugins are added to installed_plugins.json but NOT automatically added to enabledPlugins in settings.json.
Diagnosis:
# Check if plugin is in installed_plugins.json
cat ~/.claude/plugins/installed_plugins.json | grep "plugin-name"
# Check if plugin is enabled in settings.json
cat ~/.claude/settings.json | grep "plugin-name"
Solution:
# Option 1: Use CLI to enable
claude plugin enable plugin-name@marketplace-name
# Option 2: Manually edit settings.json
# Add to enabledPlugins section:
# "plugin-name@marketplace-name": true
Key files:
| File | Purpose |
|------|---------|
| ~/.claude/plugins/installed_plugins.json | Registry of ALL plugins (installed + disabled) |
| ~/.claude/settings.json → enabledPlugins | Controls which plugins are ACTIVE |
| ~/.claude/plugins/known_marketplaces.json | Registered marketplace sources |
| ~/.claude/plugins/cache/ | Actual plugin files |
A plugin is active ONLY when:
installed_plugins.json (registered)settings.json → enabledPlugins with value trueSymptoms:
Solution:
# Update marketplace cache
claude plugin marketplace update marketplace-name
# Or clear and re-fetch
rm -rf ~/.claude/plugins/cache/marketplace-name
claude plugin marketplace update marketplace-name
Common causes (in order of likelihood):
git status
git push
claude plugin marketplace update marketplace-name
python3 -m json.tool .claude-plugin/marketplace.json
ls -la skill-name/SKILL.md
| Purpose | Command |
|---------|---------|
| List marketplaces | claude plugin marketplace list |
| Update marketplace | claude plugin marketplace update {name} |
| Install plugin | claude plugin install {plugin}@{marketplace} |
| Enable plugin | claude plugin enable {plugin}@{marketplace} |
| Disable plugin | claude plugin disable {plugin}@{marketplace} |
| Uninstall plugin | claude plugin uninstall {plugin}@{marketplace} |
| Check installed | cat ~/.claude/plugins/installed_plugins.json \| jq '.plugins \| keys' |
| Check enabled | cat ~/.claude/settings.json \| jq '.enabledPlugins' |
To enable all installed but disabled plugins from a marketplace:
python3 scripts/enable_all_plugins.py marketplace-name
Claude Code has two types of user-invocable extensions:
skills/ directory)commands/ directory)/command-namecommands/seer.md)If a skill should be explicitly invocable, add a corresponding command file.
references/known_issues.md for GitHub issue trackingreferences/architecture.md for detailed plugin architectureCreate new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.
Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Claude's capabilities with specialized knowledge, workflows, or tool integrations.
Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Claude's capabilities with specialized knowledge, workflows, or tool integrations.
Replace with description of the skill and when Claude should use it.
Use when facing 2+ independent tasks that can be worked on without shared state or sequential dependencies
This skill should be used when the user wants to "create a skill", "add a skill to plugin", "write a new skill", "improve skill description", "organize skill content", or needs guidance on skill structure, progressive disclosure, or skill development best practices for Claude Code plugins.
Helps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. This skill should be used when the user is looking for functionality that might exist as an installable skill.
Use when creating new skills, editing existing skills, or verifying skills work before deployment
Take daymade/claude-skills-troubleshooting from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.