skills/create-skill/SKILL.md
Guide for creating well-structured Claude Code skills with proper YAML frontmatter, focused descriptions, and supporting files. Use when the user wants to create a new skill, build a custom skill, extend Claude's capabilities, or mentions creating/designing/building skills.
npx skillsauth add ronnycoding/.claude create-skillInstall 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.
This skill helps you create new Claude Code skills following official best practices and standards.
When creating a new skill, follow this workflow:
Every skill requires a SKILL.md file with this structure:
---
name: skill-name-here
description: Brief description of what this skill does and when to use it (include trigger terms)
---
# Skill Title
Main skill instructions go here in Markdown format.
Required fields:
name: Lowercase letters, numbers, hyphens only (max 64 characters)description: What the skill does AND when to use it (max 1024 characters)Optional fields:
allowed-tools: Comma-separated list to restrict tool access (e.g., "Read, Grep, Glob")Write descriptions that help Claude discover when to activate the skill:
GOOD - Specific with trigger terms:
description: Extract text and tables from PDF files, fill forms, merge documents. Use when working with PDF files or when the user mentions PDFs, forms, or document extraction.
BAD - Too vague:
description: Helps with documents
Key principles:
skill-name/
└── SKILL.md
skill-name/
├── SKILL.md
├── reference.md # Additional documentation
├── examples.md # Usage examples
├── scripts/
│ ├── helper.py
│ └── utilities.sh
└── templates/
├── template.txt
└── sample.json
Use relative paths within SKILL.md:
For advanced usage, see [reference.md](reference.md).
Run the helper script:
```bash
python scripts/helper.py input.txt
Use this template: template.txt
Claude loads supporting files progressively as needed to manage context efficiently.
## Tool Restrictions
Restrict which tools Claude can use when the skill is active:
```yaml
---
name: read-only-analyzer
description: Analyze code without making changes
allowed-tools: Read, Grep, Glob, Bash
---
This is useful for:
Personal skills (~/.claude/skills/):
Project skills (.claude/skills/):
Plugin skills:
When creating a new skill, ensure:
After creating a skill:
claude --debug to see loading errorsSkill not activating:
Supporting files not found:
Tool access denied:
allowed-tools restrictionsInclude in your SKILL.md for tracking changes:
## Version History
### v1.0.0 (2025-10-30)
- Initial release
- Core functionality for X, Y, Z
### v1.1.0 (2025-11-15)
- Added support for feature A
- Fixed bug in B
- Updated documentation
Best practice: Distribute via plugins for team access
Project sharing:
.claude/skills/skill-name/---
name: pdf-processor
description: Extract text and tables from PDF files, fill forms, merge PDFs, and convert to other formats. Use when working with PDF files or when user mentions PDFs, form filling, document extraction, or PDF conversion.
allowed-tools: Read, Write, Bash, Grep
---
# PDF Processor
This skill handles PDF file operations using various tools.
## Capabilities
- Extract text from PDFs
- Parse tables and structured data
- Fill PDF forms programmatically
- Merge multiple PDFs
- Convert PDFs to text/images
## Usage
When the user asks to work with PDF files, I will:
1. Check if required tools are installed (pdftotext, pdftk, etc.)
2. Perform the requested operation
3. Verify output and report results
## Examples
See [examples.md](examples.md) for detailed usage scenarios.
## Requirements
Requires installation of PDF utilities. See [reference.md](reference.md) for setup instructions.
When a user asks you to create a skill:
Remember: Skills are model-invoked. Claude autonomously decides when to use them based on the description, so make descriptions specific and keyword-rich.
development
Expert guide for WebGL API development including 3D graphics, shaders (GLSL), rendering pipeline, textures, buffers, performance optimization, and canvas rendering. Use when working with WebGL, 3D graphics, canvas rendering, shaders, GPU programming, or when user mentions WebGL, OpenGL ES, GLSL, vertex shaders, fragment shaders, texture mapping, or 3D web graphics.
tools
Guide for using the Sentry CLI to interact with Sentry from the command line. Use when the user asks about viewing issues, events, projects, organizations, making API calls, or authenticating with Sentry via CLI.
development
Guide for performing secure web searches with privacy protection, source verification, and information validation. Use when the user wants to search the web securely, verify sources, fact-check information, or mentions secure search, privacy, source validation, or web research.
development
Drive the OpenWA WhatsApp HTTP API from the terminal with curl. Use when sending WhatsApp messages (text/image/video/audio/document/location/contact/bulk), managing sessions and QR login, listing contacts/groups/chats, registering webhooks, or managing scoped API keys against an OpenWA server. Triggers on "OpenWA", "penwa", "send WhatsApp via API", "WhatsApp session", or mentions of base URL http://0.0.0.0:2785.