The Claude Code skills worth having on a website build

A skill is a folder with a SKILL.md in it. Here are the five worth building for web work, the frontmatter fields that actually change behaviour, and the four documented limits that produce no error message.

A skill is a folder with a SKILL.md in it. That is the whole idea. The file carries YAML frontmatter and some Markdown instructions, and from then on Claude either loads it when the description matches what you asked for, or you invoke it directly by typing a slash and its name. On a website build this is the difference between giving the same pre-launch instructions on every project and running one command. The skills documentation is the reference; this is what matters when the work is websites.

The file layout

SKILL.md is required and acts as the overview. Everything else loads only when needed, which is the point: a reference file of two thousand lines costs nothing until the skill actually reaches for it. The documentation advises keeping SKILL.md under 500 lines and moving detail into separate files, and a scripts/ directory holds code that gets executed rather than read into context.

Writing

Want this done on your site?

Book a call

Where a skill can live

ScopePathReaches
Personal~/.claude/skills/<name>/SKILL.mdEvery project on that machine
Project.claude/skills/<name>/SKILL.mdThat repository. Commit it and the team gets it.
Nested<subdir>/.claude/skills/<name>/SKILL.mdSessions in or below that directory, loaded on demand
Plugin<plugin>/skills/<name>/SKILL.mdWherever the plugin is enabled, as a namespaced command
AccountSynced to ~/.claude/skills/synced/Cloud and terminal sessions signed in to that account
Locations read from the Claude Code skills documentation on 1 November 2026. On a name clash, enterprise overrides personal and personal overrides project, which is the opposite of what most people assume.

The frontmatter fields that change behaviour

Every field is optional, which is why so many skills do nothing useful. Four of them matter more than the rest on a website project.

  • description is how Claude decides to load it. It is read, not skimmed, so write the trigger case first and the explanation second.
  • disable-model-invocation: true stops Claude loading it on its own, so it only runs when you type the command. Use it on anything that deploys, publishes or costs money.
  • paths takes glob patterns and limits when the skill loads automatically, which keeps a CSS skill out of the way while you are editing data files.
  • context: fork runs the skill in a forked subagent. Useful for long audits, but the subagent gets only the skill content as its prompt, so the instructions have to be self-contained.

The limits that bite

Four documented behaviours cause most of the confusion, and none of them produce an error message.

  • The combined description and when_to_use text is cut at 1,536 characters in the listing. Anything past that is invisible to the decision about whether to load the skill.
  • If the YAML between the markers does not parse, the skill still loads with no fields set. It does not fail, it just quietly becomes an ordinary instruction file.
  • A failed injected shell command aborts the whole invocation, and Claude never sees the skill content at all.
  • allowed-tools grants permission for the invoking turn only. It clears on your next message, and it does not restrict anything.

The skills worth building for website work

These are the ones that have earned their place for us, in the order we would build them. Each is a workflow we were otherwise repeating by hand on every project.

SkillWhat it does
Pre-launch auditWalks the built output, not the source: every sitemap URL returns 200 and carries no noindex, every indexable page is in the sitemap, every page has its own title and canonical.
Redirect mapDiffs the old URL list against the new one before a migration and writes the redirect config. The single highest-value thing to automate, because this is the most common cause of a post-launch traffic drop.
Similarity checkStrips proper nouns from generated pages and compares every pair, so near-duplicate location or service pages are caught before they are published rather than after.
Visual checkRenders pages in a real browser at several widths and returns the images, because measurement alone passes layouts that are visibly broken.
Copy guardGreps the diff for invented specifics: statistics, client names, testimonials, anything shaped like a claim that nobody supplied.
Build the redirect map first if you are migrating anything. Everything else can wait a project; that one cannot.

Skills, hooks or an agent

They solve different problems and people reach for the wrong one constantly. A skill is a workflow you or Claude choose to run. A hook is a shell command that fires before or after an action whether anybody chose it or not, which is what you want for formatting and linting. A subagent is for work you want done in a separate context so it does not fill the main one, which suits long audits. If a thing must happen every time, it is a hook. If it must happen when asked, it is a skill.

To share a set of these across a team or publish them, they bundle as a plugin, which is also how they end up namespaced when invoked. The full documentation index is at code.claude.com/docs/llms.txt if you would rather read the pages directly than search for them.

The build workflow these sit inside is in building a website with Claude Code, and the checks the pre-launch skill should actually run are enumerated in the SEO checklist for a site an agent built.

Two directions from here. If none of the above fits the job you keep redoing by hand, the answer is to write your own, and the field that decides whether it ever loads is not the one people spend time on: writing a skill that actually fires covers the frontmatter and the test that catches a skill which never triggers. And if what you are missing is not instructions but access to another system, a skill is the wrong tool entirely; the three MCP servers worth connecting covers that side, including the scope decision that controls whether your team gets the connection or only you do.

Let's build the site your business deserves.

Send what you have now and where you want it to go. You get a straight answer on scope, timeline and cost, usually within the hour.

Working across North America, Europe and the Middle East.