How to Create a Claude Skill: A Step-by-Step Tutorial (2026)
Build your first Claude Skill in 10 minutes. Step-by-step tutorial covering SKILL.md, templates, scripts, and installing in Claude Desktop or Lovable.
How to Create a Claude Skill: A Step-by-Step Tutorial (2026)
Claude Skills let you teach Claude how to do specialized tasks — follow your brand voice, generate a PDF in your template, run a custom workflow — by bundling instructions and assets into a folder Claude can load on demand. They take about 10 minutes to build and zero infrastructure to run.
This is a hands-on tutorial. By the end you'll have a working skill installed in Claude (or Lovable) doing real work.
What you'll build
A weekly-report skill that takes a CSV of metrics and produces a clean, branded markdown report. Once installed, you just say "generate this week's report from /tmp/metrics.csv" and Claude handles the rest.
Prerequisites
- A text editor
- Claude Desktop, Claude Code, or Lovable
- 10 minutes
That's it. No npm, no compile step, no server.
Step 1: Create the folder structure
Every Claude Skill is a folder containing at minimum a SKILL.md file. Start with:
weekly-report/
SKILL.md
templates/
report.md
scripts/
parse.py
The folder name becomes the skill's identifier — keep it lowercase, hyphenated, descriptive.
Step 2: Write SKILL.md (the most important file)
SKILL.md is what Claude reads to decide whether to use your skill. It has a YAML frontmatter block and a body:
---
name: weekly-report
description: Generate a branded weekly metrics report from a CSV file. Use when the user asks for a weekly report, KPI summary, or wants to convert metrics CSV into a shareable update.
---
# Weekly Report Skill
This skill turns a metrics CSV into a styled weekly report using our standard template.
## When to trigger
Trigger this skill when the user:
- Asks for a "weekly report" or "KPI update"
- Provides a CSV with metric data
- Wants to summarize numbers for stakeholders
## How to use it
1. Read the CSV file the user provides
2. Run scripts/parse.py to compute deltas vs previous week
3. Apply templates/report.md to format the output
4. Return the final markdown
## Conventions
- Use up arrow for increases, down arrow for decreases
- Round percentages to one decimal
- Always include a "what changed" section, even if brief
Critical: the description field is what Claude matches against the user's request to decide if your skill is relevant. Be specific about when to use it, not just what it does. Bad: "Reports tool". Good: "Generate a weekly KPI report from a CSV — use when user asks for weekly summary or metrics update".
Step 3: Add a template
templates/report.md:
# Weekly Report — Week of {{week_start}}
## Highlights
{{highlights}}
## Metrics
{{metrics_table}}
## What changed
{{commentary}}
---
*Generated {{date}}*
Templates can be markdown, HTML, JSON, anything Claude can read. Keep them simple — Claude will fill the slots.
Step 4: Add a script (optional but powerful)
scripts/parse.py:
import csv, sys
from collections import defaultdict
path = sys.argv[1]
rows = list(csv.DictReader(open(path)))
current = defaultdict(float)
previous = defaultdict(float)
for r in rows:
if r["week"] == "current": current[r["metric"]] = float(r["value"])
else: previous[r["metric"]] = float(r["value"])
for metric, val in current.items():
prev = previous.get(metric, 0)
delta = ((val - prev) / prev * 100) if prev else 0
arrow = "up" if delta > 0 else "down" if delta < 0 else "flat"
print(f"{metric}: {val:.0f} {arrow} {abs(delta):.1f}%")
Scripts can be Python, JS, Bash — anything the runtime supports. Claude will execute them and use the output.
Step 5: Install the skill
For Claude Desktop / Claude Code:
Drop the weekly-report/ folder into your skills directory:
~/.claude/skills/weekly-report/
Restart Claude. The skill is now active.
For Lovable:
- Zip the folder:
zip -r weekly-report.zip weekly-report/ - Drag the
.zipinto a Lovable chat - Lovable auto-installs it
Step 6: Test it
Open a new conversation and try:
Generate this week's report from /tmp/metrics.csv
Claude should recognize the trigger, load your skill, run the script, apply the template, and return a formatted report. If it doesn't trigger, refine the description in SKILL.md to better match how you actually phrase the request.
Tips for skills that actually get used
1. Write descriptions like search queries. Claude matches the user's intent against your description. Include the words your users will actually say.
2. One skill, one job. A skill that does "everything for our marketing team" will trigger inconsistently. Split it into weekly-report, tweet-thread, landing-copy.
3. Keep the body short. Long SKILL.md files dilute the trigger signal. Aim for under 50 lines.
4. Bundle reference, not generic knowledge. Don't include "what is markdown" in your skill — Claude knows. Include your brand voice, your templates, your schema.
5. Test the trigger. After installing, try 5 different ways a user might ask. If 4 don't trigger, your description needs work.
What to build next
Once you've got the hang of it, common high-value skills include:
- Brand voice skill — your tone, vocabulary, dos and don'ts
- PR review skill — your team's code review checklist
- Design tokens skill — colors, spacing, components Claude should use
- Customer email skill — templates + signature + voice
- Bug triage skill — your severity ladder, repro template, assignment rules
For inspiration, browse 480+ working examples at the Claude & Lovable Skills directory. Most are open source — clone, adapt, ship.
Wrapping up
A Claude Skill is just a folder. Start with SKILL.md, write a clear trigger description, add templates and scripts as needed, drop it in the skills directory. Total time to a working skill: 10 minutes.
The hard part isn't the technology — it's identifying which repeatable task in your workflow is worth packaging. Pick the thing you explain to Claude every week and bundle it. You'll never have to explain it again.
Related posts
- May 20, 2026What Are Claude Skills? A Complete Guide (2026)
Claude Skills are portable, on-demand bundles of knowledge and assets that extend what Claude can do. Here is what they are, how they work, and how to install one in Lovable.
- May 20, 2026Best Claude Skills 2026: 15 Skills Worth Installing Today
A curated list of the 15 best Claude Skills in 2026, grouped by use case: foundational UI, backend, AI agents, devops, and content. Battle-tested and well-described.
- May 20, 2026Claude Skills vs MCP: Which One Should You Use in 2026?
Claude Skills bundle knowledge and procedures, MCP connects Claude to live systems. A clear, plain-English guide to picking the right one — with side-by-side comparison and real examples.