Agent skill

creating-skills

Creates new Claude Code skills following best practices. Guides through skill structure, naming, descriptions, and progressive disclosure. Use when user wants to create a skill, build a skill, make a new capability, or asks about skill best practices.

Stars 232
Forks 15

Install this agent skill to your Project

npx add-skill https://github.com/aiskillstore/marketplace/tree/main/skills/brendanshields/creating-skills

SKILL.md

Creating Skills

Guides creation of Claude Code skills using documented best practices.

Quick Start

For a new skill:

  1. Ask user for skill purpose and target users
  2. Generate using appropriate template
  3. Validate against checklist

For reviewing existing skill:

  1. Read SKILL.md and supporting files
  2. Check against anti-patterns in reference.md
  3. Report issues with fixes

Workflow: Create New Skill

Progress:
- [ ] Gather requirements (purpose, triggers, complexity)
- [ ] Choose template (basic or advanced)
- [ ] Generate skill structure
- [ ] Customize content
- [ ] Validate against checklist

Step 1: Gather Requirements

Ask user with AskUserQuestion:

  • What should this skill do? (purpose)
  • When should it activate? (trigger words)
  • Simple or complex? (affects structure)

Step 2: Choose Structure

Complexity Structure When to Use
Basic Single SKILL.md Simple workflows, < 200 lines
Advanced SKILL.md + references Complex domains, multiple workflows

Step 3: Generate Skill

Use templates from templates/ directory:

  • templates/basic.md - Single file skill
  • templates/advanced.md - Multi-file with references

Create in appropriate location:

  • ~/.claude/skills/ - Personal skills
  • .claude/skills/ - Project skills (git-tracked)

Step 4: Validate

Run through checklist before finishing:

Validation Checklist:
- [ ] Name: gerund format (verb-ing), lowercase, hyphens only
- [ ] Name: max 64 characters, no reserved words
- [ ] Description: explains WHAT and WHEN to use
- [ ] Description: third person, max 1024 characters
- [ ] SKILL.md: under 500 lines (ideally under 300)
- [ ] References: one level deep from SKILL.md
- [ ] No time-sensitive info (dates, versions)
- [ ] Consistent terminology throughout
- [ ] Examples: concrete input/output pairs
- [ ] Paths: Unix-style only (forward slashes)

Naming Rules

Format: verb-ing-noun (gerund form)

  • processing-pdfs
  • analyzing-spreadsheets
  • managing-databases

Constraints:

  • Max 64 characters
  • Lowercase letters, numbers, hyphens only
  • No: anthropic, claude, XML tags

Description Best Practices

The description determines when Claude activates the skill.

Include:

  • What the skill does
  • When to use it
  • Trigger words users might say

Format: Third person, active voice

yaml
# Good
description: |
  Extracts text and tables from PDF files. Use when working with
  PDFs, forms, or document extraction.

# Bad - first person
description: I help you process PDF files

Progressive Disclosure

Keep SKILL.md lean. Move details to reference files:

skill-name/
├── SKILL.md          # Overview, workflow (always loaded)
├── reference.md      # Detailed guidelines (loaded when needed)
├── examples.md       # Extended examples
└── templates/        # Reusable templates

Key rule: References should be one level deep. All reference files link directly from SKILL.md.

See reference.md for detailed best practices and anti-patterns.

Frontmatter Schema

yaml
---
name: skill-name-here
description: |
  What it does and when to use it. Include trigger words.
allowed-tools: Read, Grep  # Optional: restrict available tools
---

Anti-Patterns (Quick Reference)

Avoid Do Instead
Windows paths scripts\file.py Unix paths scripts/file.py
Too many options Provide sensible default
Assuming tools installed List required packages
Vague descriptions Specific with trigger words
Deeply nested references One level deep
Time-sensitive info Avoid dates/versions

Full anti-patterns guide: reference.md

Example: Basic Skill

yaml
---
name: formatting-markdown
description: |
  Formats and lints Markdown files. Use when user mentions
  markdown formatting, MD files, or document styling.
---

# Formatting Markdown

## Workflow

1. Read target file
2. Apply formatting rules
3. Report changes

## Rules

- Headers: ATX style (#)
- Lists: consistent markers
- Code blocks: fenced with language

Expand your agent's capabilities with these related and highly-rated skills.

aiskillstore/marketplace

perigon-backend

Perigon ASP.NET Core + EF Core + Aspire conventions

232 15
Explore
aiskillstore/marketplace

perigon-agent

Pointers for Copilot/agents to apply Perigon conventions

232 15
Explore
aiskillstore/marketplace

perigon-angular

Angular 21+ standalone/Material/signal conventions for Perigon WebApp

232 15
Explore
aiskillstore/marketplace

fastapi-mastery

Comprehensive FastAPI development skill covering REST API creation, routing, request/response handling, validation, authentication, database integration, middleware, and deployment. Use when working with FastAPI projects, building APIs, implementing CRUD operations, setting up authentication/authorization, integrating databases (SQL/NoSQL), adding middleware, handling WebSockets, or deploying FastAPI applications. Triggered by requests involving .py files with FastAPI code, API endpoint creation, Pydantic models, or FastAPI-specific features.

232 15
Explore
aiskillstore/marketplace

context7-efficient

Token-efficient library documentation fetcher using Context7 MCP with 86.8% token savings through intelligent shell pipeline filtering. Fetches code examples, API references, and best practices for JavaScript, Python, Go, Rust, and other libraries. Use when users ask about library documentation, need code examples, want API usage patterns, are learning a new framework, need syntax reference, or troubleshooting with library-specific information. Triggers include questions like "Show me React hooks", "How do I use Prisma", "What's the Next.js routing syntax", or any request for library/framework documentation.

232 15
Explore
aiskillstore/marketplace

browser-use

Browser automation using Playwright MCP. Navigate websites, fill forms, click elements, take screenshots, and extract data. Use when tasks require web browsing, form submission, web scraping, UI testing, or any browser interaction.

232 15
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results