← All posts

How to Create Custom Claude Skills

Lee Harris·

Every time you open a new Claude conversation and start explaining your context, you are doing work the model cannot retain. You write the same things: what the site is about, what tone you use, what you are trying to accomplish, what you have already tried. Then you hope the model picks it up and stays consistent through the session.

Claude skills are a way to stop doing that. A skill is a set of instructions you write once, attach to your Claude profile, and the model carries into every relevant conversation automatically. Your context, your standards, and your constraints are already in the room when you start.

A close-up of a circuit board

Skills versus project instructions

Claude has two places where you can load persistent instructions: project instructions (scoped to a specific project) and skills (scoped to your profile).

Project instructions apply only inside a particular Claude project. Skills apply across all your conversations. If you have a workflow you use repeatedly regardless of which project you are in, a skill is the right place for it. An editorial checklist, a tone guide, a brief template, a research framework, these are good candidates for skills because you reach for them across different contexts.

What a skill actually is

A skill is a folder containing a single file called Skill.md. That file has two parts: a YAML frontmatter block at the top and a markdown body below it.

The frontmatter requires two fields:

---
name: Blog Editorial Review
description: Reviews draft blog posts for tone, structure, and voice consistency against editorial standards.
---

The name field is the human-readable title (64 character limit). The description tells Claude when to invoke the skill automatically. Write it as a clear statement of what the skill does and when it applies. This is what Claude reads to decide whether to activate the skill for a given task, so precision here matters more than you might expect.

The markdown body is where the actual instructions live. Write it the way you would write a brief for someone handling this task consistently: what you want, what good output looks like, what to avoid, and any constraints that apply. Include an example input and output if the expected format is not obvious.

Creating a skill in claude.ai

Step 1: Write your Skill.md file. Create a new folder on your computer named after your skill (no spaces, use hyphens). Inside it, create a file called Skill.md. Write your frontmatter and instructions.

Step 2: Package it as a ZIP. Compress the folder into a ZIP file. The ZIP should contain the skill folder as its root element, not the Skill.md file directly. The structure should be:

my-skill.zip
└── my-skill/
    └── Skill.md

Step 3: Upload it. In claude.ai, open the Customize menu from the sidebar. Navigate to Skills, click the + button, then + Create skill. Upload your ZIP file.

Step 4: Enable and test. After uploading, toggle the skill on in the Customize > Skills list. Start a conversation where the skill should apply and give Claude a task that matches the skill's description. You can review Claude's thinking process to confirm the skill activated. If it does not, tighten the description in the frontmatter to more clearly describe the trigger conditions.

What makes a skill useful versus generic

The skills that do not help are the ones that describe general aspirations. "Be helpful, accurate, and clear" tells the model nothing it does not already know.

The skills that change your workflow are the ones that encode specific decisions you have already made. They answer questions like: what format do you want? What would make you reject an output immediately? What is the one thing most AI writing gets wrong for your use case? What does your ideal first draft look like versus a finished piece?

These are not questions the model can answer for you. They come from having done enough of the work to know where AI consistently misses and what corrections you are always making. The skill is where those patterns get codified so you do not have to correct them manually every time.

Skills as a compounding investment

A skill you write today gets better the more you use it. Every time you catch the model doing something wrong that you did not anticipate, that is an addition to the skill. Every time output comes back in a format that does not quite fit your workflow, that is a constraint to add.

After a few months of refinement, a well-maintained skill does most of the setup work that used to happen in the first third of every session. The model is already calibrated before you type the first line of your actual request.

That compounding effect is the real value. It is not the skill on day one. It is the skill after 50 sessions of catching what it misses.