Automated summary
Guides users in creating modular packages (skills) that extend Claude's capabilities with specialized knowledge, workflows, and tool integrations.
Strengths
- Provides a clear directory and file structure for skills.
- Emphasizes progressive disclosure to keep context efficient.
- Offers core principles for concise and effective instructions.
- Includes step-by-step creation process and examples.
Limitations
- Assumes familiarity with Claude Code's permissions and tool system.
- Does not cover advanced topics like dynamic tool invocation or error handling.
- The skill itself is meta and may not be intuitive for beginners.
Use when you need to create a new skill or update an existing skill to add structured, reusable expertise for Claude Code.
Do not use for one-off prompts or when the functionality can be achieved with a simple system prompt without packaging.
Security analysis
SafeThe skill instructs the user to run a specific, vetted Python script (init_skill.py) to create a skill directory. The allowed-tools declaration restricts execution to that script only. No destructive commands, external network calls, or data exfiltration are involved. The skill is a meta-skill for creating new skills within the Claude Code environment, posing no meaningful risk.
No concerns found
How this analysis is madeExamples
Create a new skill for Claude Code that provides specialized knowledge for PostgreSQL database management, including common queries, indexing strategies, and backup commands.Update the existing 'web-scraper' skill to add support for JavaScript rendering and error handling for timeouts.name: meta:claude-code:create-skill description: Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Claude's capabilities with specialized knowledge, workflows, or tool integrations. allowed-tools: Bash(python3 ./.claude/commands/meta/claude-code/init_skill.py*)
Skill Creator for Claude Code
Create skills in Claude Code's skill directory.
References:
- @context/blocks/docs/prompting.md - Writing standards
- @context/blocks/construct/claude-code-permissions.md - allowed-tools configuration
About Skills
Skills are modular packages providing specialized knowledge, workflows, and tools. Transform Claude from general to specialized agent with procedural knowledge.
What Skills Provide
- Specialized workflows - Multi-step procedures
- Tool integrations - File formats, APIs
- Domain expertise - Schemas, business logic
- Bundled resources - Scripts, references, templates
Core Principles
Concise is Key
Context window is public good. Only add what Claude doesn't know. Challenge each piece: "Does Claude need this?"
Default: Claude is smart. Add only non-obvious info.
Set Appropriate Degrees of Freedom
High freedom (text): Multiple valid approaches, context-dependent Medium freedom (pseudocode/params): Preferred pattern, some variation Low freedom (scripts): Fragile operations, consistency critical
Critical Structure Requirements
MANDATORY: Every skill MUST be structured as a directory, NOT a single file.
Required structure:
- Directory named
skill-name/(lowercase letters, numbers, hyphens only) - Containing
SKILL.mdfile (UPPERCASE, exactly this filename)
Correct examples:
- ✅
git-commit/SKILL.md - ✅
pdf-processing/SKILL.md - ✅
data-analyzer/SKILL.md
Wrong examples:
- ❌
git-commit.md(single file, not directory) - ❌
git-commit/skill.md(lowercase) - ❌
git-commit/README.md(wrong filename)
Anatomy
skill-name/
├── SKILL.md (required - UPPERCASE)
│ ├── YAML frontmatter (name, description)
│ └── Markdown instructions
├── reference.md (optional - root-level docs)
├── examples.md (optional - root-level docs)
├── scripts/ (optional)
│ └── helper.py - Executable code
└── templates/ (optional)
└── template.txt - Files used in output
SKILL.md (required)
- Frontmatter (YAML):
nameanddescription- triggers when Claude uses skill - Body (Markdown): Instructions for using skill
Bundled Resources (optional)
Scripts (scripts/) - Executable code for deterministic/repeated tasks
- Token efficient, deterministic
- May execute without loading to context
- Examples:
scripts/rotate_pdf.py,scripts/fill_form.py
Reference docs (root-level .md files) - Docs loaded as needed
- Database schemas, API docs, detailed workflows
- Keeps SKILL.md lean
- Load only when Claude determines needed
- Examples:
reference.md,api_docs.md,workflows.md - Note: These are individual files at root, NOT in a
references/subdirectory
Templates (templates/) - Files used as assets/starting points
- Templates, boilerplate code, starter files
- Used in final output by copying/modifying
- Examples:
templates/starter-project/,templates/document.docx
What NOT to Include
No auxiliary docs:
- README.md
- INSTALLATION_GUIDE.md
- QUICK_REFERENCE.md
- CHANGELOG.md
Only info needed for AI agent to work.
Progressive Disclosure
Three-level loading:
- Metadata - Always in context (~100 words)
- SKILL.md body - When triggered (<5k words)
- Bundled resources - As needed (unlimited)
Keep SKILL.md <500 lines. Split when approaching limit.
Pattern: High-level guide with references
## Quick start
[core example]
## Advanced
- **Forms**: See ./forms.md
- **API**: See ./api-reference.md
Skill Creation Process
- Understand skill with concrete examples
- Plan reusable contents (scripts, references, assets)
- Initialize skill (run init_skill.py)
- Edit skill (implement resources, write SKILL.md)
- Iterate based on usage
Step 1: Understanding with Concrete Examples
Skip if usage patterns clear.
Ask for concrete examples:
- "What functionality should skill support?"
- "Examples of usage?"
- "What triggers this skill?"
Avoid overwhelming - ask most important questions first.
Conclude when functionality clear.
Step 2: Planning Reusable Contents
Analyze each example:
- How to execute from scratch?
- What scripts/references/assets help?
Example: pdf-editor
- Query: "Rotate this PDF"
- Analysis: Same code each time →
scripts/rotate_pdf.py
Example: frontend-webapp-builder
- Query: "Build todo app"
- Analysis: Same boilerplate →
templates/hello-world/starter project
Example: big-query
- Query: "How many users logged in today?"
- Analysis: Re-discovering schemas →
schema.md(root-level reference)
Output: List of reusable resources needed.
Step 3: Initialize Skill
Skip if skill exists.
Run init script from repo root:
python3 ./.claude/commands/meta/claude-code/init_skill.py <skill-name> --path <output-directory>
Example:
python3 ./.claude/commands/meta/claude-code/init_skill.py brainwriting --path ./.claude/skills
Creates:
- Skill directory
- SKILL.md template with frontmatter
- Example resource directories
- Example files (customize/delete)
Step 4: Edit Skill
Start with Resources
Implement resources first: scripts, reference docs, templates. May need user input (brand assets, docs).
Test scripts - run to verify no bugs. Delete unused example files.
Update SKILL.md
Writing: Use imperative/infinitive form.
Frontmatter:
name: Skill namedescription: What it does + when to use. Specific, comprehensive, direct. Claude uses this to choose from 100+ skills.
Body: Instructions for using skill and resources.
Step 5: Validate Skill
Script will:
- Validate skill (YAML, structure, naming, descriptions)
Default priority:
./.claude/skills/(project-local)~/.claude/skills/(user-global)- Custom path if specified
Validation checks:
- YAML frontmatter format, required fields
- Naming conventions, directory structure
- Description quality
- File organization, resource references
If validation fails, fix errors and re-run.
Step 6: Iterate
Test skill on real tasks. Notice struggles → identify improvements → implement → test.
From the file to a first result
The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.
View the source and supporting filesThis download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.
1. Download the file
Download SKILL.mdFrom the root of a test project, save the file as .skill-downloads/skill-creator-for-claude-code-mm5t8b9i/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.
Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.
mkdir -p '.skill-downloads/skill-creator-for-claude-code-mm5t8b9i' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/skill-creator-for-claude-code-mm5t8b9i/download' --output '.skill-downloads/skill-creator-for-claude-code-mm5t8b9i/SKILL.md.part' && mv '.skill-downloads/skill-creator-for-claude-code-mm5t8b9i/SKILL.md.part' '.skill-downloads/skill-creator-for-claude-code-mm5t8b9i/SKILL.md'2. Check prerequisites
Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.
Tools declared by the author (check availability in your agent): Bash(python3 ./.claude/commands/meta/claude-code/init_skill.py*)
No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.
The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.
3. Load the skill
This file does not provide a usable name/description header for this native procedure. It remains available to download and inspect; use the manual method below.
Manual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.
4. Try a first task
Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:
Read .skill-downloads/skill-creator-for-claude-code-mm5t8b9i/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.
React Hook Form Best Practices
Development
Master React Hook Form: avoid anti-patterns, manage subscriptions, and handle reset, dirty state, and controlled inputs correctly.
Emotion to Mantine Migration
Development
Migrate Emotion styled-components to Mantine components with style props and CSS modules. Use when converting .styled.tsx files or removing @emotion imports.
Scope Creep Detector
Development
Analyzes git diffs against a stated intent to detect scope creep, unrelated files, broad PRs, and oversized changes, then suggests keep, split, or justify actions.