Hook Development for Claude Code Plugins
anthropics/claude-plugins-official
Explains how to write Claude Code plugin hooks, both prompt-based checks and bash commands, for events such as PreToolUse, Stop and SessionStart.
Diagnose and resolve Claude Code plugin and skill issues. An agent skill from daymade/claude-code-skills.
$ npx skills add daymade/claude-code-skills --skill claude-skills-troubleshooting -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install daymade/claude-code-skills claude-skills-troubleshooting --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/daymade/claude-code-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/daymade-claude-code/claude-skills-troubleshooting .claude/skills/claude-skills-troubleshooting && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "claude-skills-troubleshooting" agent skill from https://github.com/daymade/claude-code-skills/tree/main/daymade-claude-code/claude-skills-troubleshooting into .claude/skills/claude-skills-troubleshooting/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "claude-skills-troubleshooting", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/daymade/claude-code-skills/tree/main/daymade-claude-code/claude-skills-troubleshootingType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add daymade/claude-code-skills --skill claude-skills-troubleshooting -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install daymade/claude-code-skills claude-skills-troubleshooting --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/daymade/claude-code-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/daymade-claude-code/claude-skills-troubleshooting .agents/skills/claude-skills-troubleshooting && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "claude-skills-troubleshooting" agent skill from https://github.com/daymade/claude-code-skills/tree/main/daymade-claude-code/claude-skills-troubleshooting into .agents/skills/claude-skills-troubleshooting/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "claude-skills-troubleshooting", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add daymade/claude-code-skills --skill claude-skills-troubleshooting -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install daymade/claude-code-skills claude-skills-troubleshooting --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/daymade/claude-code-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/daymade-claude-code/claude-skills-troubleshooting .cursor/skills/claude-skills-troubleshooting && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "claude-skills-troubleshooting" agent skill from https://github.com/daymade/claude-code-skills/tree/main/daymade-claude-code/claude-skills-troubleshooting into .cursor/skills/claude-skills-troubleshooting/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "claude-skills-troubleshooting", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/daymade/claude-code-skills.git --path daymade-claude-code/claude-skills-troubleshooting--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add daymade/claude-code-skills --skill claude-skills-troubleshooting -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install daymade/claude-code-skills claude-skills-troubleshooting --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/daymade/claude-code-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/daymade-claude-code/claude-skills-troubleshooting .gemini/skills/claude-skills-troubleshooting && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "claude-skills-troubleshooting" agent skill from https://github.com/daymade/claude-code-skills/tree/main/daymade-claude-code/claude-skills-troubleshooting into .gemini/skills/claude-skills-troubleshooting/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "claude-skills-troubleshooting", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install daymade/claude-code-skills claude-skills-troubleshootingInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add daymade/claude-code-skills --skill claude-skills-troubleshooting -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/daymade/claude-code-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/daymade-claude-code/claude-skills-troubleshooting .github/skills/claude-skills-troubleshooting && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "claude-skills-troubleshooting" agent skill from https://github.com/daymade/claude-code-skills/tree/main/daymade-claude-code/claude-skills-troubleshooting into .github/skills/claude-skills-troubleshooting/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "claude-skills-troubleshooting", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add daymade/claude-code-skills --skill claude-skills-troubleshooting -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install daymade/claude-code-skills claude-skills-troubleshooting --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/daymade/claude-code-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/daymade-claude-code/claude-skills-troubleshooting .opencode/skills/claude-skills-troubleshooting && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "claude-skills-troubleshooting" agent skill from https://github.com/daymade/claude-code-skills/tree/main/daymade-claude-code/claude-skills-troubleshooting into .opencode/skills/claude-skills-troubleshooting/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "claude-skills-troubleshooting", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
claude-skills-troubleshootingDiagnose and resolve Claude Code plugin and skill issues. An agent skill from daymade/claude-code-skills.
Claude Skills Troubleshooting is an agent skill from daymade/claude-code-skills. 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.
Its SKILL.md is about 1.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 6 other files, including scripts and reference files (for example `references/architecture.md`, `references/known_issues.md` and `scripts/diagnose_plugins.py`).
The repository describes itself as: Professional Claude Code skills marketplace featuring production-ready skills for enhanced development workflows. The licence is MIT.
2 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 0e52df5. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 2 files in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
claudepython3gitjqFrom the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
github.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Claude Skills Troubleshooting loads about 1.5k tokens when it runs, and up to ~3.8k if it reads all its reference files. Until then it costs about 102 tokens; SKILL.md has 460 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from daymade/claude-code-skills at commit 0e52df5, republished under its MIT licence (© daymade). 460 words, ~1,461 tokens.
.claude/skills/claude-skills-troubleshooting/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.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.pyThe 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": trueMirror 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 listKey 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-nameCommon causes (in order of likelihood):
Local changes not pushed to GitHub - Most common!
git status
git push
claude plugin marketplace update marketplace-namemarketplace.json configuration error
python3 -m json.tool .claude-plugin/marketplace.jsonSkill directory missing
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-nameClaude Code has two types of user-invocable extensions:
Skills (in skills/ directory)
Commands (in 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 architecture© daymade, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 4 other files (scripts, references) in daymade-claude-code/claude-skills-troubleshooting of daymade/claude-code-skills.
Open the folder on GitHubat commit 0e52df5
Claude Skills Troubleshooting next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Claude Skills Troubleshooting this skilldaymade/claude-code-skills | 1.4k | — | ~1.5k | Automated safety check: Pass | MIT | |
| Hook Development for Claude Code Pluginsanthropics/claude-plugins-official | 38k | 10 repos | ~4.1k | Automated safety check: Notes | Apache-2.0 | |
| Claude Code Agent Developmentanthropics/claude-plugins-official | 38k | 7 repos | ~2.8k | Automated safety check: Pass | Apache-2.0 | |
| Claude Code Skill Developer Guidediet103/claude-code-infrastructure-showcase | 10k | 11 repos | ~3.5k | Automated safety check: Pass | MIT | |
| Plugin Settings Patternanthropics/claude-plugins-official | 38k | 7 repos | ~3k | Automated safety check: Pass | Apache-2.0 | |
| MCP Integration for Pluginsanthropics/claude-plugins-official | 38k | 11 repos | ~3.1k | Automated safety check: Pass | Apache-2.0 |
anthropics/claude-plugins-official
Explains how to write Claude Code plugin hooks, both prompt-based checks and bash commands, for events such as PreToolUse, Stop and SessionStart.
anthropics/claude-plugins-official
Explains how to write agents for Claude Code plugins: the markdown file with YAML frontmatter, trigger descriptions, model and color settings, and system prompt design.
diet103/claude-code-infrastructure-showcase
A guide to creating and managing Claude Code skills with auto-activation: skill-rules.json triggers, hooks, enforcement levels, YAML frontmatter and progressive disclosure.
anthropics/claude-plugins-official
Shows how Claude Code plugins keep per-project settings and state in .claude/plugin-name.local.md files with YAML frontmatter and a markdown body.
anthropics/claude-plugins-official
Explains how to bundle Model Context Protocol servers in a Claude Code plugin, covering config files, stdio, SSE, HTTP and WebSocket server types, and authentication.
fossasia/eventyay-interpretation
Set up Claude Code hooks to block dangerous git commands (push, reset --hard, clean, branch -D, etc.) before they execute.
daymade/claude-code-skills
This skill should be used when comparing two videos to analyze compression results or quality differences.
daymade/claude-code-skills
Generates professional animated CLI demos as GIFs using VHS terminal recordings.
daymade/claude-code-skills
Converts DOCX/PDF/PPTX and saved HTML/HTM to high-quality Markdown with automatic post-processing.
daymade/claude-code-skills
Generates several distinct, clickable HTML interaction prototypes for one product surface into a Design Board and collects selection/remix feedback before implementation.
daymade/claude-code-skills
Creates, edits and benchmarks skills; supersedes the official skill-creator plugin, so when both are listed, use this one.
daymade/claude-code-skills
Diagnoses and repairs repository setup and guarded Git workflows for Claude Code or Codex — environment repair, startup sync, hook auditing, collaborator handoff.
Diagnose and resolve Claude Code plugin and skill issues. An agent skill from daymade/claude-code-skills. Claude Skills Troubleshooting is an agent skill from daymade/claude-code-skills. Diagnose and resolve Claude Code plugin and skill issues.
Claude Skills Troubleshooting fits situations like: include plugin not working; skill not showing; installed but disabled; enabledPlugins issues.
Run `npx skills add daymade/claude-code-skills --skill claude-skills-troubleshooting -a claude-code`. Or copy the skill folder (daymade-claude-code/claude-skills-troubleshooting in daymade/claude-code-skills) into .claude/skills/claude-skills-troubleshooting in your project. Claude Code loads it when a task matches its description.
Run `npx skills add daymade/claude-code-skills --skill claude-skills-troubleshooting -a codex`. Or copy the skill folder (daymade-claude-code/claude-skills-troubleshooting in daymade/claude-code-skills) into .agents/skills/claude-skills-troubleshooting in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add daymade/claude-code-skills --skill claude-skills-troubleshooting -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/claude-skills-troubleshooting, .gemini/skills/claude-skills-troubleshooting, .github/skills/claude-skills-troubleshooting and .opencode/skills/claude-skills-troubleshooting in your project.
Going by SKILL.md and its folder, Claude Skills Troubleshooting needs Python for the scripts in its folder and the command-line tools its instructions call (claude, python3, git and jq). Our summary lists: Python 3.
SKILL.md names 1 domain. As links in the text: github.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Claude Skills Troubleshooting is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.5k tokens (SKILL.md is roughly 5.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2.4k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Claude Skills Troubleshooting: Hook Development for Claude Code Plugins (anthropics/claude-plugins-official, 38k stars), Claude Code Agent Development (anthropics/claude-plugins-official, 38k stars), Claude Code Skill Developer Guide (diet103/claude-code-infrastructure-showcase, 10k stars) and Plugin Settings Pattern (anthropics/claude-plugins-official, 38k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
daymade (a GitHub user) maintains it in daymade/claude-code-skills, which has 1,448 GitHub stars. The repository holds 104 skills in this directory. The repository was last updated on October 10, 2026.
Source: daymade/claude-code-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.