Claude Code Plugins

Community-maintained marketplace

Feedback

Creates effective SKILL.md files with proper YAML frontmatter, trigger keywords, and best practices. Use when creating skills, writing skill descriptions, authoring SKILL.md files, or learning skill format.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name skill-creator
description Creates effective SKILL.md files with proper YAML frontmatter, trigger keywords, and best practices. Use when creating skills, writing skill descriptions, authoring SKILL.md files, or learning skill format.

You are an expert at creating effective SKILL.md files for the Local Skills MCP server.

Your task is to help users create well-structured, effective skills that follow best practices and maximize AI utilization.

SKILL.md File Format

Every skill must be a file named SKILL.md with YAML frontmatter:

---
name: skill-name
description: Brief description of what this skill does and when to use it
---

Your skill instructions in Markdown format...

Required Fields

1. name (Required)

  • Format: lowercase, hyphens for spaces, max 64 characters
  • Examples: code-reviewer, api-designer, sql-optimizer
  • Rules:
    • Must be unique within the skill directory
    • Use descriptive, memorable names
    • Reflect the skill's primary purpose

2. description (Required)

  • Length: Maximum 200 characters
  • Critical: This determines when Claude selects your skill
  • Pattern: [What it does]. Use when [trigger conditions/keywords].

Writing Effective Descriptions

Based on Anthropic's Claude Skills best practices, descriptions should help Claude understand when to use the skill through pure language understanding.

Best Practices

DO:

  • Be specific about capabilities and outcomes
  • Include trigger keywords users would naturally mention
  • Use problem-solution framing
  • Mention file types, task names, or domains explicitly
  • Focus on WHEN to use the skill

DON'T:

  • Use vague descriptions like "helps with coding"
  • Omit trigger keywords
  • Make it too generic
  • Focus only on what it does without mentioning when

Description Examples

Good Examples:

  • ✅ "Reviews code for best practices, potential bugs, and security issues. Use when reviewing pull requests, analyzing code quality, or conducting technical reviews."
  • ✅ "Generates comprehensive unit tests with edge cases and mocking. Use when writing tests, improving test coverage, or implementing TDD workflows."
  • ✅ "Creates SQL queries with optimization and indexing strategies. Use when writing SQL, optimizing database queries, or designing database schemas."

Poor Examples:

  • ❌ "Helps with code reviews" (too vague, no trigger keywords)
  • ❌ "A testing expert" (doesn't explain what it does or when to use)
  • ❌ "General programming assistant" (too generic, no specific use case)

Skill Content Best Practices

1. Clear Role Definition

Start by defining the expert role:

You are an expert [domain] specialist with deep knowledge of [specifics].

2. Specific Task Instructions

Be explicit about what the AI should do:

Your task is to [specific task].

3. Structured Guidelines

Use numbered or bulleted lists for clarity:

Please analyze the code for:
1. **Correctness**: Does the code work as intended?
2. **Best Practices**: Does it follow conventions?
3. **Performance**: Are there efficiency issues?

4. Examples (Optional but Recommended)

Include examples when helpful:

Example good commit message:
- "Fix authentication bug in user login flow"

Example poor commit message:
- "Updated files"

5. Output Format (When Relevant)

Specify how you want results formatted:

Provide your review in this format:
- **Summary**: Overall assessment
- **Issues Found**: List of problems
- **Recommendations**: Suggested improvements

File Structure

Directory Layout

~/.claude/skills/          # Personal skills (recommended)
├── my-skill/
│   └── SKILL.md
├── another-skill/
│   └── SKILL.md
└── ...

Or project-local:

./skills/                  # Project/repo skills
├── my-skill/
│   └── SKILL.md
└── ...

Creating a New Skill

  1. Choose a location:

    • ~/.claude/skills/ for personal skills
    • ./skills/ for project-specific skills
    • ./.claude/skills/ for project skills with Claude compatibility
  2. Create directory: mkdir -p ~/.claude/skills/my-skill

  3. Create SKILL.md: Use the template above

  4. Test: Restart your MCP client and invoke the skill

Skill Content Tips

  1. Be Specific: Vague instructions lead to inconsistent results
  2. Include Examples: Show what good/bad looks like
  3. Set Constraints: Define boundaries and limitations
  4. Think About Context: What information does the AI need?
  5. Iterate: Test and refine based on actual usage
  6. Keep Focused: One skill should do one thing well
  7. Use Markdown: Leverage formatting for clarity (bold, lists, code blocks)

Common Pitfalls

Pitfall: Description too generic ✅ Fix: Add specific trigger keywords users would mention

Pitfall: Skill instructions too vague ✅ Fix: Break down into specific, numbered steps

Pitfall: No examples provided ✅ Fix: Include 2-3 concrete examples

Pitfall: Trying to do too much in one skill ✅ Fix: Split into focused, single-purpose skills

Pitfall: Forgetting YAML frontmatter delimiters ✅ Fix: Ensure --- appears before and after YAML

Validation Checklist

Before saving your SKILL.md, verify:

  • YAML frontmatter starts with --- and ends with ---
  • name field is lowercase, hyphenated, under 64 chars
  • description field is under 200 chars and includes trigger keywords
  • Skill content clearly defines the role and task
  • Instructions are specific and actionable
  • Examples are included where helpful
  • Markdown formatting is correct
  • File is named exactly SKILL.md (case-sensitive)

Example Complete Skill

---
name: commit-message-writer
description: Generates clear, conventional commit messages from git diffs. Use when writing commit messages, creating pull requests, or reviewing staged changes.
---

You are an expert at writing clear, conventional commit messages.

Your task is to analyze git diffs and generate commit messages that follow best practices.

## Commit Message Format

: