How a skill changes what a coding agent writes

6 min read

Eduardo Calvo

Eduardo CalvoWrote the skill and the detector this post measures with

“Just prompt it better” is the most common answer to generated-looking UI, and it is the weakest one. Here is the difference between a prompt and a skill, mechanically.

A prompt is a request; a skill is a constraint

A prompt sits in one message. It competes for attention with everything else in that message, it applies to one request, and you retype it — or forget to — next time.

A skill is a file the agent reads before it starts. In Claude Code it is a directory with a SKILL.md and whatever reference files that document points at. The agent loads the front matter, decides the request is relevant, reads the body, and then writes code with those constraints already in context.

The practical difference is where the constraint applies. A prompt asks for a better answer. A skill removes branches before the answer is generated.

Progressive disclosure is the part that matters

A design skill that dumped 30,000 words into context on every request would be worse than nothing — it would crowd out the actual task. So the structure is layered:

  1. Front matter — a few lines, always loaded, enough for the agent to know when the skill applies.
  2. The body — loaded when it does apply. The rules, the decision procedure, the routing table.
  3. References — separate files the body points at, loaded only when relevant. Motion. Data visualisation. Forms. Accessibility. Colour.

Ask for a chart and the dataviz reference gets read. Ask for a sign-in screen and it does not.

What this looks like in the output

The visible change is not “prettier”. It is that the agent makes decisions it otherwise skips: a type ladder with a real jump to display size, one committed colour surface instead of tints everywhere, focus states written at the same time as hover states, a heading hierarchy that does not skip.

And because the constraints are in a file rather than a message, the second request in the session is as good as the first.