Skip to content

Skills: teach your coding agent something once

A Claude Code skill is a short written procedure the agent reads when a job matches. Write one for anything you have explained twice.

By Nick

2 min read

Coding toolsAI Agents Intermediate
On this page

Before you start

The second time you explain to your coding agent how to publish a post on this site, you have found a skill. A skill is a short written procedure, kept in the project, that the agent reads when a job matches it. Explain once, write it down, never again.

What goes in one

The steps, in order, for one job. “Publishing a post: run the content lint, check the hero image exists, set the review status, open a pull request to this branch.” The commands. The things that went wrong last time. Anything you would say to a new colleague doing it.

It is a recipe, not a rulebook. Rules that apply to everything go in CLAUDE.md, which stays short because it is read every time. A skill is read only when it matches, so it can be as long as the job is.

The fastest way to write one

Do the job with the agent once. Then paste this.

We just did a job we will do again. Write it up as a skill: a short name, one line on when
it applies, then the steps in order with the exact commands, and a section for things that
went wrong this time and how we fixed them. Keep it under a page. Show me before you save
it, and tell me where it will live.

Read it. Cut anything that was specific to today. Save it.

Why this compounds

After a few months you have a folder of procedures shaped by your own corrections, and a familiar task comes out right without you walking it through. That is not the model getting cleverer. It is a filing habit, and it is the same reason Hermes gets more useful the longer you run it.

Example reply (trimmed). Your app will word it differently.

We just fixed a broken contact form with the agent, plus the prompt above

Name: fix-contact-form

When it applies: the contact form submits but no email arrives.

Steps:

  1. Check the form’s action URL in contact.html.
  2. Run npm run test-email and read the error.
  3. Update the mail key in .env, then restart the site.

Went wrong this time: the key had expired, and the error only said “failed”.

It will live in .claude/skills/fix-contact-form/SKILL.md. Shall I save it?

The first time it goes wrong, add a line to the skill rather than to the chat.

Common questions

What is the difference between a skill and CLAUDE.md?

CLAUDE.md is read every time and should stay short. A skill is read only when a job matches it, so it can be as long as the job needs. Rules of the house go in one; recipes go in the other.

Can the agent write its own skills?

Yes, and that is the quickest way to make one: do the job together once, then ask it to write the skill from what it just did. Read it before you keep it.

Is this only Claude Code?

The name varies. Codex, Hermes and most agents have the same idea: a folder of procedures the agent can pick up. The Hermes comparison covers how it compounds there.

What to do next

Related reading

Last reviewed 9 October 2026 by Nick.

Software changes fast. If something here is out of date, tell me and I'll fix it.

Get new guides by email

Occasional and practical. No spam, no hype, unsubscribe whenever.

Occasional practical guides from UncomplicateAI. You will get a confirmation email before anything else is sent. Unsubscribe any time. Privacy

You are not subscribed until you confirm the email. Unsubscribe any time.