Create and manage Claude Code skills following Anthropic best practices. Use when creating new skills, modifying skill-rules.json, understanding trigger patterns, working with hooks, debugging skill activation, or implementing progressive disclosure. Covers skill structure, YAML frontmatter, trigger types (keywords, intent patterns, file paths, content patterns), enforcement levels (block, suggest, warn), hook mechanisms (UserPromptSubmit, PreToolUse), session tracking, and the 500-line rule.
From hugin-v0npx claudepluginhub michelve/hugin-marketplace --plugin hugin-v0This skill uses the workspace's default tool permissions.
reference/advanced-patterns.mdreference/enforcement-skip.mdreference/hook-architecture.mdreference/quick-start-workflow.mdreference/skill-types.mdresources/ADVANCED.mdresources/HOOK_MECHANISMS.mdresources/PATTERNS_LIBRARY.mdresources/SKILL_RULES_REFERENCE.mdresources/TRIGGER_TYPES.mdresources/TROUBLESHOOTING.mdGuides browser automation with Playwright, Puppeteer, Selenium for e2e testing and scraping. Teaches reliable selectors, auto-waits, isolation to fix flaky tests.
Provides checklists to review code for functionality, quality, security, performance, tests, and maintainability. Use for PRs, audits, team standards, and developer training.
Enforces A/B test setup with gates for hypothesis locking, metrics definition, sample size calculation, assumptions checks, and execution readiness before implementation.
Comprehensive guide for creating and managing skills in Claude Code with auto-activation system, following Anthropic's official best practices including the 500-line rule and progressive disclosure pattern.
Automatically activates when you mention:
See hook-architecture.md for the two-hook architecture (UserPromptSubmit + Stop Hook) and configuration file details.
See skill-types.md for guardrail skills (block enforcement) and domain skills (suggest enforcement) with examples.
See quick-start-workflow.md for the 5-step workflow: create skill file, add to skill-rules.json, test triggers, refine patterns, follow best practices.
Example: Database column name verification
Example: Frontend development guidelines
Rarely used - most skills are either BLOCK or SUGGEST.
See enforcement-skip.md for session tracking, file markers, and environment variable overrides.
When creating a new skill, verify:
.github/skills/{name}/SKILL.mdskill-rules.jsonjq . skill-rules.jsonSee advanced-patterns.md for comprehensive documentation on:
`!`command `` syntax for live codebase datadefault, Explore, and Plan agentsAll 13 official fields for SKILL.md frontmatter:
| Field | Type | Default | Purpose |
|---|---|---|---|
name | string | dir name | Skill identifier (lowercase, hyphens, max 64 chars) |
description | string | first para | Trigger matching — use phrasing users would say (max 1024 chars) |
version | string | - | Semantic version (e.g., 1.0.0) |
license | string | - | License identifier (e.g., MIT) |
| Field | Type | Default | Purpose |
|---|---|---|---|
user-invocable | boolean | true | Show in / menu. false for background knowledge |
argument-hint | string | - | Autocomplete UI hint: [issue-number], [url] |
| Field | Type | Default | Purpose |
|---|---|---|---|
disable-model-invocation | boolean | false | Prevent auto-triggering. Manual-only workflows |
context | string | - | fork to run in isolated subagent |
agent | string | - | Subagent type: default, Explore, Plan, custom |
model | string | - | Claude model override (e.g., claude-opus-4-20250514) |
| Field | Type | Default | Purpose |
|---|---|---|---|
metadata.allowed-tools | array | - | Whitelist MCP tools (nested under metadata:) |
metadata.mcp-server | string | - | MCP server name (documentation only) |
| Field | Type | Default | Purpose |
|---|---|---|---|
hooks | object | - | Skill-scoped lifecycle hooks (UserPromptSubmit, PreToolUse, PostToolUse) |
---
name: "my-skill"
description: "Short description with trigger keywords users would say."
user-invocable: true
argument-hint: "[url] [options]"
context: fork
agent: default
metadata:
allowed-tools:
- tool_name_1
- tool_name_2
mcp-server: server-name
---
For detailed information on specific topics, see:
Complete guide to all trigger types:
Complete skill-rules.json schema:
Deep dive into hook internals:
Comprehensive debugging guide:
Ready-to-use pattern collection:
Future enhancements and ideas:
.github/skills/{name}/SKILL.md with frontmatter.github/skills/skill-rules.jsonnpx tsx commandsSee TRIGGER_TYPES.md for complete details.
// @skip-validation (permanent skip)SKIP_SKILL_GUARDRAILS (emergency disable)✅ 500-line rule: Keep SKILL.md under 500 lines ✅ Progressive disclosure: Use reference files for details ✅ Table of contents: Add to reference files > 100 lines ✅ One level deep: Don't nest references deeply ✅ Rich descriptions: Include all trigger keywords (max 1024 chars) ✅ Test first: Build 3+ evaluations before extensive documentation ✅ Gerund naming: Prefer verb + -ing (e.g., "processing-pdfs")
Test hooks manually:
# UserPromptSubmit
echo '{"prompt":"test"}' | npx tsx .claude/hooks/skill-activation-prompt.ts
# PreToolUse
cat <<'EOF' | npx tsx .claude/hooks/skill-verification-guard.ts
{"tool_name":"Edit","tool_input":{"file_path":"test.ts"}}
EOF
See TROUBLESHOOTING.md for complete debugging guide.
Configuration:
.github/skills/skill-rules.json - Master configuration.claude/hooks/state/ - Session tracking.claude/settings.json - Hook registrationHooks:
.claude/hooks/skill-activation-prompt.ts - UserPromptSubmit.claude/hooks/error-handling-reminder.ts - Stop event (gentle reminders)All Skills:
.github/skills/*/SKILL.md - Skill content filesSkill Status: COMPLETE - Restructured following Anthropic best practices ✅ Line Count: < 500 (following 500-line rule) ✅ Progressive Disclosure: Reference files for detailed information ✅
Next: Create more skills, refine patterns based on usage