Home › Rules › Claude Code skills examples

Claude Code skills examples: 7 copy-paste SKILL.md files for beginners

Based on Claude Code's "Extend Claude with skills" docs, checked Oct 20, 2026. Sources below.

Short answer: a Claude Code skill is a folder with a SKILL.md file in it. Save it at .claude/skills/<name>/SKILL.md in your project (or ~/.claude/skills/ for every project). The top of the file has a short description that tells Claude when to use it; the rest is the steps. Claude loads a skill when your request matches the description, or you run it yourself by typing /name. Below are 7 skills you can copy, each showing one feature.

Where skill files go

LocationPathWorks in
Project.claude/skills/<name>/SKILL.mdThis project. Commit it so anyone working on it gets it too
Personal~/.claude/skills/<name>/SKILL.mdAll your projects on this computer
Old-style command.claude/commands/<name>.mdStill works. Claude Code merged custom commands into skills, so both make /name

If a personal and a project skill have the same name, the personal one wins. Keep each SKILL.md under about 500 lines; put long reference material in extra files in the same folder and mention them from SKILL.md.

The parts of a SKILL.md

FieldWhat it does
nameThe command you type. Optional in Claude Code (it defaults to the folder name), but set it anyway so the same skill works in Cursor and Codex
descriptionWhat it does and when to use it. Claude reads this to decide when to load the skill, so use words you'd naturally type. Put the main use first: long descriptions get cut off
disable-model-invocation: trueOnly you can run it, with /name. Use it for anything with side effects, like committing or deploying
argument-hintA hint shown while you type, like [page name]
allowed-toolsTools Claude can use without asking, only during the turn you run the skill
pathsOnly load automatically when Claude works on matching files

All fields are optional, but Claude Code's docs recommend always writing a description. The frontmatter must start on the very first line of the file, between two --- lines.

7 Claude Code skills examples

1. Explain an error in plain English (A skill Claude can pick up on its own)

.claude/skills/explain-error/SKILL.md
---
name: explain-error
description: Explain an error message in plain English before fixing it. Use when I paste an error, a stack trace, or say something is broken or red.
---

When I share an error:

1. Say in one or two plain sentences what the error means. No jargon.
2. Point to the file and line most likely causing it, and say why.
3. Suggest the smallest fix. Don't change any code until I say go.
4. If you're not sure, say so and tell me what to check first.

No disable-model-invocation, so Claude can use it whenever an error shows up. The description says when to use it, in words you'd actually type.

2. Add one page, step by step (Passing what you type with $ARGUMENTS)

.claude/skills/add-page/SKILL.md
---
name: add-page
description: Add one new page to the app in small, testable steps.
disable-model-invocation: true
argument-hint: [page name and what it does]
---

Add this page: $ARGUMENTS

1. Restate the page in one sentence and list the files you'll create or change. Wait for my OK.
2. Build the simplest working version. Reuse existing components and styles.
3. Add it to the navigation.
4. Tell me exactly how to check it in the browser, including on a phone-sized screen.

Run it as /add-page pricing page with 3 plans. Everything after the name replaces $ARGUMENTS. disable-model-invocation: true means it only runs when you type it.

3. Commit my changes (Pre-approving tools with allowed-tools)

.claude/skills/commit/SKILL.md
---
name: commit
description: Stage and commit the current changes with a clear message.
disable-model-invocation: true
allowed-tools: Bash(git status *) Bash(git diff *) Bash(git add *) Bash(git commit *)
---

1. Run git status and git diff to see what changed.
2. If you see secret keys, .env files or large build folders, stop and tell me. Don't commit them.
3. Write a one-line commit message in plain English that says what changed and why.
4. Stage the files and commit. Don't push.

allowed-tools lets Claude run those git commands without asking each time, but only during the turn you invoke the skill. It never pushes, because pushing isn't on the list and the steps say not to.

4. What did I change? (Pulling live data in with !`command`)

.claude/skills/what-changed/SKILL.md
---
name: what-changed
description: Summarize my uncommitted changes and flag anything risky. Use when I ask what changed, want a commit message, or ask for a review.
---

## Current changes

!`git diff HEAD`

## Instructions

Summarize the changes above in 2 or 3 plain-English bullets.
Then list anything risky: deleted checks, hard-coded keys or URLs, missing error handling, or tests that need updating.
If there are no changes, say so.

The !`git diff HEAD` line runs before Claude reads the skill, so Claude sees your real changes instead of guessing. This is a Claude Code feature; other tools that read SKILL.md may not run it.

5. Our design rules (Reference knowledge that loads only for matching files)

.claude/skills/ui-style/SKILL.md
---
name: ui-style
description: Design rules for this app's pages and components. Use when creating or editing UI.
paths: src/components/**, src/app/**
---

- Reuse the existing Button, Card and Input components before making new ones.
- Use the Tailwind classes already in the project. No inline styles.
- Mobile first: every layout must work at 375px wide.
- Buttons and links need a visible focus style.
- Keep the color palette to the brand colors in tailwind.config.

paths means Claude only loads it automatically when it's working on matching files, so it doesn't crowd every chat. Good for rules that grew too long for CLAUDE.md.

6. Ask before touching the database (A safety rule tied to risky files)

.claude/skills/database-changes/SKILL.md
---
name: database-changes
description: Rules for any change to the database schema, migrations, row-level security or auth. Use before editing anything in supabase/ or prisma/.
paths: supabase/**, prisma/**
---

Before any database change:

1. Explain the change in plain English and what could break.
2. Show me the migration before running it. Wait for my OK.
3. Never turn off row-level security, and never drop a table or column without asking twice.
4. After the change, tell me how to check that existing data is still there.

Claude Code's docs say a rule that must hold every single time belongs in a hook, not a skill. For beginners this is still a good guard, but keep the most important line near the top.

7. Pre-publish SEO check (A manual checklist you run before launch)

.claude/skills/seo-check/SKILL.md
---
name: seo-check
description: Check every public page's title, description and headings before publishing.
disable-model-invocation: true
---

For every public page:

1. List the title tag and its length. Flag any over 60 characters or duplicated.
2. List the meta description and its length. Flag any missing or over 155 characters.
3. Check there's exactly one h1 and it says what the page is about.
4. Check every image has alt text.
5. Show the results as a table, then the 3 most important fixes. Don't edit anything until I say so.

A skill like this costs almost nothing until you run it, because only its one-line description sits in Claude's context the rest of the time.

Who can run a skill

FrontmatterYou can run itClaude can run it
(default)YesYes
disable-model-invocation: trueYesNo
user-invocable: falseNoYes (for background knowledge)

Skills vs CLAUDE.md

CLAUDE.md is always-on: facts about the project and rules Claude should keep in mind every time. A skill is on-demand. Claude Code's docs suggest making a skill when you keep pasting the same checklist or steps into chat, or when part of CLAUDE.md has turned into a procedure rather than a fact, because "a skill's body loads only when it's used". Start with a short CLAUDE.md (examples here) and add skills as you notice yourself repeating things.

Do these skills work in Cursor and Codex?

Mostly, yes. Claude Code skills follow the Agent Skills open standard, and Cursor also loads skills from .claude/skills/. The parts every tool shares are name, description and the steps. Extras like paths, argument-hint, $ARGUMENTS and the !`command` line are Claude Code features, so other tools may ignore them. More on this: Cursor rules vs skills.

Skill not working?

Next step for Claude Code: Agent Skills

Skills are folders your AI coding agent loads only when the job comes up, and Claude Code, Cursor and OpenAI Codex all read the same SKILL.md format. The Vibe Coder Skills Pack ($9) is 6 ready-to-copy SKILL.md skills (fix-one-bug, stop-the-loop, leak-check, ship-check, explain-project, builder-handoff) for Claude Code, Cursor and OpenAI Codex. Sold separately; not part of the 5-kit bundle.

Get the Skills Pack for $9 on Gumroad → See what's inside

One .zip of skill folders plus one markdown file. 7-day refund, no questions asked.

Best value

Get all 5 kits for $25 with 30% off: code WELCOME30 at checkout (through Nov 30, 2026)

Skills tell Claude Code how to do a job. The kits tell it what to build, step by step: a small game, a Discord bot, an email-triage agent, an MVP, or a cleanup of messy code. Each is a plain markdown file you can use with Claude Code or another AI coding tool.

Get all 5 kits for $25 → See what's in each kit

$25 instead of $39 for the five kits bought separately; WELCOME30 takes 30% off that at checkout ($17.50). Instant download from Gumroad. 7-day refund, no questions asked.

Related

Sources

Checked Oct 20, 2026. These tools change often; if something here no longer matches, tell us at [email protected].

Get the free Starter Rules for Claude Code, Cursor and Codex

  • A copy-paste rules file to save as AGENTS.md or CLAUDE.md, or paste into Lovable, Bolt, v0 or Replit: small steps, ask before risky changes, no fake "it works", secrets kept out of code.
  • A kickoff prompt that makes your AI ask up to 3 questions and plan 5 to 8 small, testable steps before it writes any code.
  • The habit that saves projects: work, test, commit.

After that, an occasional email when we publish a new guide or rules file.

Free. No spam. Unsubscribe anytime. See our privacy note.