Create, review, test, and package Anthropic Agent Skills for Claude.ai and Claude Code. Use when user asks to "create a skill", "build a skill", "generate SKILL.md", "review my skill", "test my skill", "improve my skill", "create skill from documentation", "create skill from project", "analyze docs and make a skill", "scan my project for patterns", "package skill for distribution", "learn about skills", or asks about skill best practices, trigger phrases, or MCP-enhanced skills. Key capabilities: create skills from documentation folders, create skills from project codebases, interactive wizard, beginner tutorial, quick generation, 8 templates, quality auditing, trigger testing, iterative improvement, and distribution packaging. Do NOT use for general YAML editing, resume skills, or non-Anthropic skill systems.
Creates, tests, and packages Anthropic Agent Skills for Claude.ai and Claude Code from documentation or project code.
npx claudepluginhub vcode-sh/vibe-toolsThis skill inherits all available tools. When active, it can use any tool Claude has access to.
references/mcp-patterns.mdreferences/quality-checklist.mdreferences/troubleshooting.mdreferences/yaml-reference.mdtemplates/01-standalone-document.mdtemplates/02-workflow-automation.mdtemplates/03-mcp-basic.mdtemplates/04-multi-mcp-coordination.mdtemplates/05-iterative-refinement.mdtemplates/06-context-aware-selection.mdtemplates/07-domain-intelligence.mdtemplates/08-code-generation.mdCreate high-quality Anthropic Agent Skills following official best practices. Generate properly structured SKILL.md files with YAML frontmatter, supporting references, scripts, and assets.
A skill is a folder containing instructions that teach Claude to handle specific tasks. Structure:
skill-name/
├── SKILL.md # Required - main skill file
├── scripts/ # Optional - executable code
├── references/ # Optional - documentation
└── assets/ # Optional - templates, icons
Claude can load multiple skills simultaneously. Design skills to:
Choose your starting point:
Problem-first produces more user-centric skills. Tool-first maximizes existing infrastructure.
Identify 2-3 concrete use cases before writing anything:
Use Case: [Name]
Trigger: User says "[phrase 1]" or "[phrase 2]"
Steps: 1. ... 2. ... 3. ...
Result: [Expected outcome]
Required fields:
---
name: skill-name-in-kebab-case
description: What it does. Use when user asks to [triggers]. Key capabilities: [list].
---
Rules:
name: kebab-case only, must match folder name, no "claude" or "anthropic"description: MUST include WHAT it does + WHEN to use (trigger phrases) + KEY capabilities< >) in frontmatter--- delimiters (both opening and closing)Optional fields:
license: MIT
allowed-tools: "Bash(python:*) WebFetch"
compatibility: "Requires Python 3.10+"
metadata:
author: Your Name
version: 1.0.0
mcp-server: server-name
category: productivity
tags: [tag1, tag2]
Structure the body with clear sections:
Writing guidelines:
## Important or ## Critical headersreferences/ - Detailed documentation too long for SKILL.md:
api-guide.md, examples.md, patterns.mdscripts/ - Executable code:
assets/ - Static resources (templates, fonts, icons):
assets/ for static resources consumed by outputtemplates/ as an alternative when providing fill-in-the-blank starting pointsRun through the quality checklist (see ${CLAUDE_PLUGIN_ROOT}/skills/skill-maker/references/quality-checklist.md).
When creating skills, handle these common issues:
The description field is the MOST important part. It determines when the skill loads.
Structure: [What it does] + [When to use it] + [Key capabilities]
Good examples:
Analyzes Figma design files and generates developer handoff documentation. Use when user uploads .fig files, asks for "design specs", "component documentation", or "design-to-code handoff".
Manages Linear project workflows including sprint planning, task creation, and status tracking. Use when user mentions "sprint", "Linear tasks", "project planning", or asks to "create tickets".
Bad examples:
# Too vague - won't trigger correctly
Helps with projects.
# Missing triggers - Claude won't know WHEN to load
Creates sophisticated multi-page documentation systems.
# Too technical - no user-facing triggers
Implements the Project entity model with hierarchical relationships.
Anti-over-triggering: Add negative triggers if needed:
Advanced data analysis for CSV files. Use for statistical modeling, regression. Do NOT use for simple data exploration (use data-viz skill instead).
Skills that produce consistent, high-quality output (documents, code, designs).
Key techniques:
Multi-step processes benefiting from consistent methodology.
Key techniques:
Workflow guidance enhancing MCP tool access.
Key techniques:
For detailed MCP patterns, see references/mcp-patterns.md.
SKILL.md (case-sensitive)my-cool-skill)When generating a skill:
./skill-name/./skills/skill-name/~/skills/skill-name/plugin-name/
├── .claude-plugin/plugin.json
└── skills/skill-name/SKILL.md
Skills require the Code Execution Tool beta. Include compatibility field noting this.
User says: "Create a skill that generates changelog entries from git commits"
Resulting structure:
changelog-generator/
├── SKILL.md
└── references/
└── commit-patterns.md
Resulting frontmatter:
---
name: changelog-generator
description: Generates formatted changelog entries from git commit history. Use when user asks to "generate changelog", "create release notes", "summarize commits", or "write changelog entry". Supports conventional commits, semantic versioning, and grouped entries by type.
---
Resulting body structure:
${CLAUDE_PLUGIN_ROOT}/skills/skill-maker/references/quality-checklist.md - Complete validation checklist${CLAUDE_PLUGIN_ROOT}/skills/skill-maker/references/mcp-patterns.md - MCP integration patterns with examples${CLAUDE_PLUGIN_ROOT}/skills/skill-maker/references/yaml-reference.md - Full YAML frontmatter field reference${CLAUDE_PLUGIN_ROOT}/skills/skill-maker/references/troubleshooting.md - Common issues and solutions${CLAUDE_PLUGIN_ROOT}/skills/skill-maker/templates/ - 8 pre-built skill templates (stored as templates/ since they are fill-in-the-blank starting points, not static resources)