Claude Skills: Complete Guide to Creating & Sharing AI Skills
By Learnia Team
Claude Skills: Complete Guide to Creating & Sharing AI Skills
📅 Last updated: March 10, 2026 — Covers the Skills system as available in Claude.ai, Claude Code, and the API.
📚 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
| Component | Role | Required |
|---|---|---|
SKILL.md | Instructions, YAML trigger, procedure | ✅ |
scripts/ | Executable Python/Bash scripts | ❌ |
references/ | Documentation loaded on demand | ❌ |
templates/ | Standardized output templates | ❌ |
assets/ | Static files (images, configs) | ❌ |
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 Type | Example | When 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 Query | Expected 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:
- →Prepare: Add a
README.mdwith description and examples - →Publish: Submit via the Skills portal or
claude skills publishCLI - →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:
| Category | Example Skills | Count |
|---|---|---|
| Development | Code Review, Git Workflow, Testing | 150+ |
| Writing | Blog Writer, SEO Content, Technical Docs | 80+ |
| Analysis | Data Profiler, CSV Analyzer, Report Gen | 60+ |
| Design | UI Review, Accessibility Check, Figma Export | 40+ |
| DevOps | Docker Helper, CI/CD Config, Cloud Deploy | 35+ |
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
Best Practices
Do's ✅
| Practice | Why |
|---|---|
| One Skill = one task | Reduces complexity and improves reliability |
| Precise triggers | Avoids unintended activations |
| Deterministic scripts | Exact calculations shouldn't depend on the LLM |
| Version with semver | Facilitates updates and rollbacks |
| Test with 10+ phrasings | Validates trigger robustness |
Don'ts ❌
| Anti-pattern | Risk |
|---|---|
| Catch-all Skill | Instruction conflicts, poor precision |
| Overly broad trigger | Fires on irrelevant requests |
| No testing | Unpredictable production behavior |
| Ambiguous instructions | Claude interprets differently per context |
| Hardcoded secrets | Security 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:
- →Explore OpenClaw to discover ready-to-use Skills
- →Create your first Skill with the detailed technical guide
- →Compare Skills, Projects, and Plugins in our comparison article
Module 0 — Prompting Fundamentals
Build your first effective prompts from scratch with hands-on exercises.
Weekly AI Insights
Tools, techniques & news — curated for AI practitioners. Free, no spam.
Free, no spam. Unsubscribe anytime.
→Related Articles
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.