plugins/toolkit/skills/skill-development/SKILL.md
This skill should be used when the user asks to "create a skill", "write a skill", "build a skill", or wants to add new capabilities to Claude Code. Use when developing SKILL.md files, organizing skill content, or improving existing skills. Do NOT use for plugin development, hook creation, agent creation, or slash command creation — those have dedicated skills.
npx skillsauth add dwmkerr/claude-toolkit claude-code-skill-developmentInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Create effective Claude Code skills that are concise, discoverable, and well-structured.
You MUST read these references for detailed guidance:
Define 2-3 concrete use cases before writing anything:
Use Case: [Name]
Trigger: User says "[phrase]" or "[phrase]"
Steps:
1. [First action]
2. [Second action]
Result: [What gets produced]
Then identify which category your skill falls into — this determines which techniques to use. See Skill Categories & Patterns.
references/skill-name/
├── SKILL.md # Main instructions (< 500 lines)
├── scripts/ # Optional: executable code (Python, Bash, etc.)
├── assets/ # Optional: templates, fonts, icons
└── references/ # Detailed docs (loaded on demand)
├── guide.md
└── examples/
---
name: my-skill-name
description: This skill should be used when the user asks to "do X", "create Y", or mentions Z. Be specific about triggers.
context: fork # Optional: run in isolated context (prevents side effects)
user-invocable: true # Optional: show in slash command menu (default: true)
---
Name rules:
Description rules:
Optional fields:
context: fork - Run skill in isolated sub-agent context, preventing unintended side effects on main agent stateuser-invocable: false - Hide from slash command menu (skills are visible by default)allowed-tools - Restrict which tools the skill can use (e.g., "Bash(python:*) Bash(npm:*) WebFetch"). Skills with references/ directories should include allowed-tools: Read, Grep to avoid permission prompts when accessing bundled files (claude-code#15757)license - e.g., MIT, Apache-2.0compatibility - Environment requirements (1-500 chars)metadata - Custom key-value pairs (author, version, mcp-server)Structure: [What it does] + [When to use it] + [Key capabilities]
# Good - specific triggers
description: This skill should be used when the user asks to "create a hook", "add a hook", or mentions Claude Code hooks.
# Bad - vague
description: Helps with automation tasks.
Keep SKILL.md under 500 lines. Link to details:
# My Skill
## Quick start
[Essential info here]
## Advanced features
See [detailed-guide.md](./references/detailed-guide.md)
## API reference
See [api-reference.md](./references/api-reference.md)
Claude loads reference files only when needed.
Validate across three dimensions before sharing:
See Testing Guide for test examples and success criteria.
Common issues and fixes:
| Symptom | Fix |
|---------|-----|
| Doesn't trigger | Add specific trigger phrases to description |
| Triggers too often | Add negative triggers, narrow scope |
| Instructions ignored | Make instructions concise, use explicit headers |
| Slow responses | Move content to references/, reduce SKILL.md size |
See Troubleshooting for detailed solutions.
After creating or modifying skills, inform the user:
No restart needed. Skill changes take effect immediately - skills are hot-reloaded.
Before finalizing a skill:
references/development
This skill should be used when the user asks to "create a bash script", "write a shell script", or mentions shell scripting conventions.
development
Deep research into technical solutions by searching the web, examining GitHub repos, and gathering evidence. Use when the user explicitly says "use the research skill", "use a research agent", or asks for deep/thorough research into implementation options or technologies.
tools
This skill should be used when the user asks to "set up release please", "configure automated releases", "manage version numbers", "add changelog automation", or mentions release-please, semantic versioning, or monorepo versioning.
development
This skill should be used when the user asks to "create a Makefile", "write a Makefile", "add a make target", or mentions Makefile conventions.