Back to all articles
10 MIN READ

Claude Skills: Complete Guide to Creating

By Dorian Laurenceau

Claude Skills: Complete Guide to Creating & Sharing AI Skills

๐Ÿ“… Last reviewed: April 24, 2026. Updated with April 2026 findings and community feedback.

๐Ÿ“š Related articles: Building Skills, Technical Guide | Skills vs Projects vs Plugins | Cowork Plugins


What Is a Claude Skill?

A Claude Skill is a modular package that extends Claude's capabilities with specialized knowledge, workflows, and executable scripts. Unlike traditional system prompts that load everything into memory, Skills use progressive disclosure: instructions are only loaded when the conversation context triggers them.

Skill Components

๐Ÿ“ my-skill/
โ”œโ”€โ”€ SKILL.md          โ†’ Main instructions + trigger
โ”œโ”€โ”€ scripts/
โ”‚   โ””โ”€โ”€ validate.py   โ†’ Executable scripts
โ”œโ”€โ”€ references/
โ”‚   โ”œโ”€โ”€ guide.md      โ†’ Reference documentation
โ”‚   โ””โ”€โ”€ examples.md   โ†’ Concrete examples
โ””โ”€โ”€ templates/
    โ””โ”€โ”€ output.md     โ†’ Output templates
ComponentRoleRequired
SKILL.mdInstructions, YAML trigger, procedureโœ…
scripts/Executable Python/Bash scriptsโŒ
references/Documentation loaded on demandโŒ
templates/Standardized output templatesโŒ
assets/Static files (images, configs)โŒ

The honest read on Claude Skills one year after the Skills announcement from Anthropic, tracked across r/ClaudeAI, r/LocalLLaMA, and the Anthropic Skills GitHub examples: Skills are the customization feature that finally makes Claude feel like a real programmable tool, and they are also the feature that most heavily rewards good writing. A Skill with a sloppy description and a bloated SKILL.md body triggers on the wrong tasks and ignores the ones it was built for; a Skill with a precise description field and tight procedures fires reliably. The mechanics are documented well enough; the craft is underdiscussed.

Where the community correctly pushes back on "just dump your workflow into a SKILL.md" advice: Skills work on the same attention substrate as every other prompt. Stuffing 3,000 tokens of procedure into one file degrades Claude's ability to follow any single step. The emerging patterns from power users favor small Skills that do one thing well, compose with other Skills, and defer heavy reference material to references/ loaded on demand rather than inlined.

Pragmatic rule from people building Skill libraries that survive: write the description field as if your only job is to help a future Claude decide whether to trigger this Skill. Then write the procedure as if the reader has the attention span of a tired junior engineer. If either of those doesn't read clearly, the Skill will not fire when you need it.

Anatomy of the SKILL.md File

The core of every Skill is the SKILL.md file. It contains a YAML frontmatter followed by Markdown instructions:

---
name: "brand-writer"
version: "1.2.0"
trigger: "When the user asks to write or revise brand content"
description: "Applies brand voice guidelines to any document"
author: "marketing-team"
tags: ["writing", "brand", "marketing"]
---

# Brand Writer

## Procedure

1. Read the document provided by the user
2. Load `references/brand_guide.md`
3. Analyze the current tone of the document
4. Rewrite applying the brand voice
5. Run `scripts/check_tone.py` for validation
6. Present the result with annotated changes

The Trigger System

The trigger determines when Claude activates a Skill. It works through intent matching:

Trigger TypeExampleWhen It Fires
Explicit action"When the user requests a code review"User says "review my code"
Implicit context"When a Python file is shared"A .py file is uploaded
Keyword"When the user mentions SEO"The word "SEO" appears
Combined"When the user asks to analyze CSV data"Request + CSV file

Creating a Skill Step by Step

Step 1: Define the Objective

Before coding, answer these questions:

  • โ†’What problem does this Skill solve? (e.g., "standardize code reviews")
  • โ†’When should it trigger? (e.g., "when code is shared for review")
  • โ†’What resources are needed? (guidelines, validation scripts)
  • โ†’What's the expected output format? (Markdown report, corrected file)

Step 2: Structure the Folder

mkdir -p my-skill/{scripts,references,templates}
touch my-skill/SKILL.md

Step 3: Write the SKILL.md

---
name: "code-reviewer"
version: "1.0.0"
trigger: "When the user requests a code review or shares code for analysis"
description: "Performs a structured code review with quality checklist"
tags: ["coding", "review", "quality"]
---

# Code Review

## Review Checklist
1. โœ… Readability and naming
2. โœ… Error handling
3. โœ… Performance
4. โœ… Security
5. โœ… Tests

## Procedure
1. Analyze the submitted code
2. Run `scripts/lint_check.py` if applicable
3. Evaluate each checklist item
4. Generate the report using `templates/review_report.md`
5. Propose priority corrections

Step 4: Add Scripts (Optional)

# scripts/lint_check.py
import subprocess
import sys

def run_lint(filepath):
    """Run basic linting on the file."""
    result = subprocess.run(
        ["python", "-m", "py_compile", filepath],
        capture_output=True, text=True
    )
    if result.returncode == 0:
        return "โœ… Valid syntax"
    return f"โŒ Errors: {result.stderr}"

if __name__ == "__main__":
    print(run_lint(sys.argv[1]))

Step 5: Test the Skill

Test with different phrasings to verify the trigger:

Test QueryExpected Result
"Review this Python code"โœ… Skill activated
"Check my code quality"โœ… Skill activated
"Write me a poem"โŒ Skill not activated
"Translate this text"โŒ Skill not activated

Sharing Skills

Via the Community Marketplace

The Claude Skills marketplace lets you publish and discover community-created Skills:

  1. โ†’Prepare: Add a README.md with description and examples
  2. โ†’Publish: Submit via the Skills portal or claude skills publish CLI
  3. โ†’Version: Use semantic versioning (1.0.0 โ†’ 1.1.0)

Via GitHub

# Recommended structure for a Skills repository
๐Ÿ“ my-skills/
โ”œโ”€โ”€ code-reviewer/
โ”‚   โ”œโ”€โ”€ SKILL.md
โ”‚   โ””โ”€โ”€ scripts/
โ”œโ”€โ”€ brand-writer/
โ”‚   โ”œโ”€โ”€ SKILL.md
โ”‚   โ””โ”€โ”€ references/
โ””โ”€โ”€ README.md

Via Claude Enterprise (Teams)

Administrators can deploy Skills organization-wide:

  • โ†’Admin Console > Skills > Deploy to Team
  • โ†’Permission control by group
  • โ†’Centralized versioning

OpenClaw and ClawdBot

OpenClaw, The Open Source Repository

OpenClaw is a community repository that centralizes ready-to-use Skills:

CategoryExample SkillsCount
DevelopmentCode Review, Git Workflow, Testing150+
WritingBlog Writer, SEO Content, Technical Docs80+
AnalysisData Profiler, CSV Analyzer, Report Gen60+
DesignUI Review, Accessibility Check, Figma Export40+
DevOpsDocker Helper, CI/CD Config, Cloud Deploy35+

ClawdBot, The Skills Assistant

ClawdBot is an integrated assistant that helps:

  • โ†’Discover relevant Skills for your needs
  • โ†’Install Skills from OpenClaw in one command
  • โ†’Configure triggers and parameters
  • โ†’Diagnose activation issues
You: "I need a skill to review my professional emails"
ClawdBot: "I recommend 'professional-email-reviewer' (v2.1.0) โ€” 
           4.8โ˜… on OpenClaw. Install?"

Detailed Use Cases

1. Coding, Review and Refactoring

A code review Skill automatically analyzes quality:

  • โ†’Trigger: Code file upload or review request
  • โ†’Actions: Lint, complexity analysis, refactoring suggestions
  • โ†’Output: Structured report with priorities

2. Writing, Brand Voice

A writing Skill applies brand guidelines:

  • โ†’Trigger: Content writing or revision request
  • โ†’Actions: Tone analysis, terminology check, rephrasing
  • โ†’Output: Revised document with annotations

3. Analysis, Data Profiling

An analysis Skill generates automatic reports:

  • โ†’Trigger: CSV/Excel file upload or analysis request
  • โ†’Actions: Descriptive statistics, anomaly detection, visualization
  • โ†’Output: Report with tables and recommendations

Guidelines

Do's โœ…

PracticeWhy
One Skill = one taskReduces complexity and improves reliability
Precise triggersAvoids unintended activations
Deterministic scriptsExact calculations shouldn't depend on the LLM
Version with semverFacilitates updates and rollbacks
Test with 10+ phrasingsValidates trigger robustness

Don'ts โŒ

Anti-patternRisk
Catch-all SkillInstruction conflicts, poor precision
Overly broad triggerFires on irrelevant requests
No testingUnpredictable production behavior
Ambiguous instructionsClaude interprets differently per context
Hardcoded secretsSecurity risk when sharing

Summary

Claude Skills represent a major evolution in AI assistant customization. By structuring expertise into modular packages with triggers, instructions, and scripts, they offer a robust, maintainable, and shareable solution for extending Claude's capabilities. Whether you're a developer, writer, or analyst, Skills let you create an assistant truly tailored to your needs.

Next steps:

GO DEEPER โ€” FREE GUIDE

Module 0 โ€” Prompting Fundamentals

Build your first effective prompts from scratch with hands-on exercises.

D

Dorian Laurenceau

Full-Stack Developer & Learning Designer

Full-stack web developer and learning designer. I spent 4 years as a freelance full-stack developer and 4 years teaching React, JavaScript, HTML/CSS and WordPress to adult learners. Today I design learning paths in web development and AI, grounded in learning science. I founded learn-prompting.fr to make AI practical and accessible, and built the Bluff app to gamify political transparency.

Prompt EngineeringLLMsFull-Stack DevelopmentLearning DesignReact
Published: March 10, 2026Updated: April 24, 2026
Newsletter

Weekly AI Insights

Tools, techniques & news โ€” curated for AI practitioners. Free, no spam.

Free, no spam. Unsubscribe anytime.

FAQ

What exactly is a Claude Skill?+

A Claude Skill is a modular package consisting of a SKILL.md file and optional resources (scripts, references) that teaches Claude a specialized procedure. It triggers automatically when the user's request matches the skill's trigger definition.

How many Skills can be used simultaneously?+

Claude can load multiple Skills in parallel, but only Skills triggered by the user's request are actually activated. In practice, 5 to 10 active Skills work without any performance issues.

Can Skills be shared with other users?+

Yes. Skills can be shared via the community marketplace, public GitHub repositories, or directly between team members in Claude Enterprise.

What's the difference between a Skill and a system prompt?+

A system prompt loads all instructions upfront. A Skill uses progressive disclosure: only relevant instructions are loaded when the trigger fires, saving tokens and improving precision.

What are OpenClaw and ClawdBot?+

OpenClaw is a community-driven open-source repository of ready-to-use Skills. ClawdBot is an integrated assistant that helps discover, install, and configure Skills directly from the Claude interface.