Guides

Your first Claude Code skill in 5 steps (with a SKILL.md to copy)

A skill is a folder with a SKILL.md file. Here is how to write one that checks a social post before it ships, step by step.

3 min read 2026-10-11 SocialOS

A skill teaches Claude Code one repeatable job. It is a folder with a SKILL.md file: YAML frontmatter at the top (name and description), plain instructions below.

Where skills live

LocationReach
~/.claude/skills/<skill-name>/SKILL.mdPersonal: all your projects
<project>/.claude/skills/<skill-name>/SKILL.mdProject: shared with your team through git

Claude Code watches these folders, so edits are picked up during a session.

Step 1: pick one repeatable job

Good first skills are boring and frequent: "check a post before it's scheduled", "turn meeting notes into a task list", "write release notes from a diff". One job per skill.

Step 2: write the description

The description tells Claude when the skill applies. Say what it does and when to use it.

Step 3: write steps a new hire could follow

Numbered steps, what to check before finishing, and what never to do. Keep the body short; put long reference material in separate files next to SKILL.md.

Step 4: run it by name

Type /post-check in Claude Code, or ask for the job in plain words and let the description match it. For a skill that should only run when you call it, add disable-model-invocation: true to the frontmatter.

Step 5: test on three real inputs

Use three real drafts: one good, one with a mistake, one edge case. Edit the steps until all three come out right.

A SKILL.md you can copy

Save as ~/.claude/skills/post-check/SKILL.md:

---
name: post-check
description: Check a social media post draft before it is scheduled. Use when the user asks to review, check or proof a post, caption or carousel text.
---

Check the draft the user points to. Report problems as a numbered list, most serious first.
Do not rewrite the post unless asked.

1. Facts: list every number, date, price and claim. For each, say where it comes from
   in the draft or the user's files. If there is no source, flag it as "no source".
2. Links: list every URL. Flag any that look like placeholders or point to a test domain.
3. First line: quote it. Flag it if it could belong to any business ("Happy Monday",
   "We are excited to share").
4. Promise: if the post asks people to comment a keyword, check the draft says what they
   will receive, and ask the user to confirm that thing exists and the link works.
5. Length: Instagram captions max 2,200 characters; flag anything over.
6. Labels: if the post contains AI-generated images of people, remind the user to label them.

Never invent a source. If you cannot check something, say so.

Sources

  • Claude Code docs, "Extend Claude with skills" (code.claude.com/docs/en/skills), checked 2026-10-10.
  • Agent Skills format: agentskills.io, checked 2026-10-10.
  • Example skills by Anthropic: github.com/anthropics/skills , checked 2026-10-10.
  • Instagram caption limit: Instagram Graph API reference, checked 2026-10-10.

Made by SocialOS. We build a tool that plans and drafts a month of posts for small businesses; nothing is published without your approval unless you switch on autopilot.

Keep reading