If you've pasted the same long prompt into Claude three times, or keep correcting it with the same notes, that job should be a skill. A skill is a folder with a SKILL.md file that tells Claude how you want one job done. Claude loads it by itself whenever a request matches, on claude.ai, the desktop app and Claude Code.
1Decide if it should be a skill
Not everything needs one. Anthropic's own guide to custom skills draws the lines like this:
| The situation | Use this |
|---|---|
| A one-off task | Just ask in the chat |
| Background Claude should always know in one area (your company facts, your tone) | Project instructions or your personal preferences |
| Live data from another tool (Gmail, Stripe, your CRM) | A connector. A skill can tell Claude how to use it |
| A job you repeat, with the same steps and the same format | A skill |
Why a skill beats a saved prompt: you don't have to find and paste it, because it triggers on its own. It can carry templates, examples and scripts. It only loads when needed, so it doesn't crowd your chats. It works in claude.ai and Claude Code, and you can share it. Good first skills for founders: call notes into a CRM row, a weekly metrics summary, a cold email in your voice, a competitor one-pager. Write the job in one sentence, plus what a good result looks like. That sentence becomes your description.
2Know what goes in the folder
call-notes-to-crm/ ├── SKILL.md required: name, description, then instructions ├── references/ optional: longer docs Claude reads only when a step says so ├── assets/ optional: templates and examples Claude fills in or copies └── scripts/ optional: code Claude runs for steps that must be exact
SKILL.md starts with a short header (called front matter) between two --- lines, with two required fields:
- name: lowercase letters, numbers and hyphens, up to 64 characters. It must match the folder name.
- description: what the skill does and when to use it. The open Agent Skills spec allows 1,024 characters, but Claude's help center lists a 200-character limit for uploads. Stay under 200 and it works everywhere.
- instructions: everything below the header, in plain text or simple markdown. Keep
SKILL.mdunder 500 lines and move long material intoreferences/.
3Write a description that triggers
Claude sees only the name and description of each skill until it decides to use one. Then it reads SKILL.md, and opens extra files only when the instructions point to them. So the description decides whether your skill ever runs.
A simple formula: what it does, then "Use when", then the words you'd actually type. Too broad and it fires on everything. Too narrow and it never fires.
| Description | |
|---|---|
| Too vague | Helps with sales. |
| Works | Turns customer call notes or a transcript into one CRM row and a follow-up email draft. Use when I paste call notes or a transcript, or say "log this call". |
4Build it with skill-creator, or by hand
The easiest way: skill-creator, Anthropic's skill for writing and testing skills. On claude.ai, turn it on under Customize → Skills, where it's listed as from Anthropic. Make sure Code execution and file creation is on under Settings → Capabilities. Then open a new chat:
Use the skill-creator skill to help me build a new skill. The job: [one sentence, e.g. turn my customer call notes into one CRM row]. I do this about [how often]. A great result looks like: [paste one]. Rules it must follow: [e.g. never guess a budget, write "unknown"]. Here are 2 real examples of the input and the output I wanted: [paste]. Interview me one question at a time. Then write the SKILL.md, keep the description under 200 characters, and package it as a ZIP with the skill folder inside.
When it's done, save the skill file Claude gives you, then turn it on. In Claude Code, install it with /plugin install skill-creator@claude-plugins-official. There it can also run your test prompts with and without the skill and compare the results.
Prefer to write it by hand? Make a folder, create a plain-text file called SKILL.md in any text editor, and copy the example below.
5Copy this worked example
A complete skill for a job most founders repeat every week. Change the columns to match your CRM.
--- name: call-notes-to-crm description: Turns customer call notes or a transcript into one CRM row and a follow-up email draft. Use when I paste call notes or a transcript, or say "log this call". --- # Call notes to CRM row Turn one customer conversation (notes, transcript or voice-memo summary) into a CRM row and a short follow-up email. If profile.md is available, read our ideal customer profile (ICP) from it. ### Steps 1. Read the whole input once before writing anything. 2. Fill every column below using only what the input says. If something is missing, write "unknown". Never guess. 3. For Pain, quote the customer's own words, 20 words at most. 4. Score Fit from 1 to 5 against our ICP, with one reason. No ICP? Write "no ICP given". 5. Next step needs an owner and a date. If none was agreed, write "none agreed" and suggest one. 6. Draft a follow-up email under 120 words: thank them, restate their problem in their words, confirm the next step. 7. List red flags: no budget owner, "maybe next quarter", a competitor under contract. 8. Never invent a name, number, date or quote. Drafts only: never send anything. ### Output One row per company, columns separated by " | " so it pastes into a sheet: Date | Company | Contact | Role | Pain (quote) | Current tool | Budget | Decision maker | Timeline | Fit (1-5) | Next step | Owner | Due date | Red flags Write dates as YYYY-MM-DD. Then the email under the heading "Follow-up draft".
6Test it on three real tasks
Use three real inputs from past work: one clean, one messy, and one odd case, like a call that went nowhere. Open a new chat for each, don't name the skill, and just paste the input. Claude's thinking should show it's using your skill. If it doesn't trigger, fix the description: add the words you typed. If it triggers but the output is off, fix the steps, or add a good example to assets/. Then run all three again.
7Package and install it
On claude.ai or the desktop app
- Check the folder name matches the
namefield. - Zip the folder itself, not the files inside it. On a Mac, Control-click the folder and choose Compress. In a terminal:
zip -r call-notes-to-crm.zip call-notes-to-crm/ - Go to Customize → Skills, click +, then + Create skill, then Upload a skill, and choose the ZIP.
- Turn the skill on. If the upload fails, Set up Claude lists the usual causes.
In Claude Code
Copy the folder into ~/.claude/skills/ to use it in every project, or into .claude/skills/ inside one project. Claude Code picks up edits without a restart (if the skills folder didn't exist when the session started, run /reload-skills). Run it by describing the task, or type /call-notes-to-crm. If you sign in to Claude Code with your claude.ai account, the skills you turned on there sync down too. See the Claude Code skills docs.
What's next
Chain your skill with free ones in Skill recipes. Give it background with Claude Projects, or live data with connectors. Browse ready-made skills in the Skill Library.