claude-skills-troubleshooting
About claude-skills-troubleshooting
A Claude Code skill for diagnosing plugin and skill setup problems. It combines a diagnostic script with troubleshooting guidance for installation, enablement, activation, and marketplace cache issues.
Key features
- 01Detect plugin registration mismatches
- 02Check enabled plugin settings
- 03Validate marketplace cache freshness
- 04Troubleshoot installation and activation
- 05Enable missing plugins in batches
Use cases
- 01Find installed plugins missing from skills
- 02Resolve enabled-but-unregistered plugins
- 03Investigate stale marketplace results
- 04Audit plugin configuration metadata
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ daymade/ claude-code-skills --skill claude-skills-troubleshootingAfter installing, type/claude-skills-troubleshootingin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
references/architecture.mdknown_issues.mdscripts/diagnose_plugins.pyenable_all_plugins.pyDetails
From the project READMEClaude Skills Troubleshooting
Overview
Diagnose and resolve common Claude Code plugin and skill configuration issues. This skill provides systematic debugging workflows for plugin installation, enablement, and activation problems.
Quick Diagnosis
Run the diagnostic script to identify common issues:
python3 scripts/diagnose_plugins.py
The script checks:
- Installed vs enabled plugins mismatch in both directions (installed-but-not-enabled and enabled-but-not-registered)
- Missing enabledPlugins entries in settings.json
- Stale marketplace cache using
known_marketplaces.jsonlastUpdated - Missing, malformed, timezone-free, or future
lastUpdatedmetadata - Invalid plugin configurations
Treat 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.
Common Issues
Issue 1: Plugin Installed But Not Showing in Available Skills
Symptoms:
/pluginshows plugin as installed- Skill not appearing in Skill tool's available list
- Plugin metadata exists in
installed_plugins.json
Root 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
Mirror variant — enabled but not registered: If diagnosis instead shows the plugin in enabledPlugins but NOT in installed_plugins.json, the cause is the symlink-skip bug: the install ran under a config dir where installed_plugins.json is a symlink (multi-profile shared setups), and the CLI silently skipped writing it. See references/known_issues.md → "Symlinked installed_plugins.json". Fix:
# Reinstall from the config dir owning the real file
CLAUDE_CONFIG_DIR=~/.claude claude plugin install plugin-name@marketplace-name
# Then confirm
claude plugin list
Issue 2: Understanding Plugin State Architecture
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:
- Exists in
installed_plugins.json(registered) - Listed in
settings.json→enabledPluginswith valuetrue
Issue 3: Marketplace Cache Stale
Symptoms:
- GitHub has latest changes
- Install finds plugin but gets old version
- Newly added plugins not visible
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
Issue 4: Plugin Not Found in Marketplace
Common causes (in order of likelihood):
-
Local changes not pushed to GitHub - Most common!
git status git push claude plugin marketplace update marketplace-name -
marketplace.json configuration error
python3 -m json.tool .claude-plugin/marketplace.json -
Skill directory missing
ls -la skill-name/SKILL.md
Diagnostic Commands Reference
| 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' |
Batch Enable Missing Plugins
To enable all installed but disabled plugins from a marketplace:
python3 scripts/enable_all_plugins.py marketplace-name
Skills vs Commands Architecture
Claude Code has two types of user-invocable extensions:
-
Skills (in
skills/directory)- Auto-activated based on description matching
- Loaded when user request matches skill description
-
Commands (in
commands/directory)- Explicitly invocable via
/command-name - Appears in Skill tool's available list
- Requires command file (e.g.,
commands/seer.md)
- Explicitly invocable via
If a skill should be explicitly invocable, add a corresponding command file.
References
- See
references/known_issues.mdfor GitHub issue tracking - See
references/architecture.mdfor detailed plugin architecture