← the journal
Field notes · for whoever decides what to build

What Makes a Good Skill

You do not need to write the code to know a good skill from a poor one. You need to know the two things it must do — and the one line that decides both.

I set out believing a skill was measured by how much it contained — how clever, how thorough, how much ground it covered. I came back knowing the opposite. The best skill in our catalogue is barely a page. What made it good was not its size. It was that it appeared at exactly the right moment, and never at the wrong one, and that when it appeared, the work came out different. Everything else is decoration.

Before anything— should it exist at all?

Before we build a skill, we ask three plain questions. Not a form — the ones that decide whether the thing should exist:

A skill earns its place only when the "without" is visibly worse than the "with", and nothing already closes that gap. Everything after this assumes you cleared that bar.

First— a skill is an instinct you can install

Think of a skill as a good habit you hand to the assistant. "When someone asks you to write a commit message, do it this way." "When you touch a chart, use the house colours." The assistant already knows a great deal; a skill is a nudge that makes it do a specific thing the way you want it done — consistently, without being reminded each time.

Which means a skill only earns its keep if two separate things are true. Miss either and it is dead weight, however good it looks.

Second— the description is the whole game

Here is the part that surprises everyone. The thing that decides whether a skill shows up is not its cleverness. It is one short paragraph — the description — written in plain language, that tells the assistant when to reach for it.

A good description does one job: it routes. It says, in the words a real person would use, "reach for me when the task is X." It names the moments — "when writing a commit", "when converting sizes to scale with the font", "when someone asks what tools exist for this." It does not ramble about how the skill works inside. Nobody reaching for a tool needs its schematics; they need to know it is the right tool.

The most common way a skill fails is quiet and expensive: a description written too broadly, so the skill wakes for a thousand requests that were never its own — forever, in the background, slowing everything and helping nothing. A description that is too shy merely goes unused. A description that is too greedy is a leak that never stops. Aim narrow. Name the real moments; name a near-miss it should ignore.

· ~ · ~ · ~ · ~ · the good ones sleep until they are needed. the poor ones never stop talking. · ~
Third— showing up is not helping

This is the trap, and it is worth stopping on. A skill can appear flawlessly, every single time, and change nothing — a costume the assistant wears over what it would have done anyway. It looks busy. It looks adopted. It is hollow.

So we never trust "it fired" as proof it worked. We check the second thing separately: we run the same real task twice — once with the skill, once without — and compare the two results honestly, without telling the judge which was which. If the output is no better with it than without it, the skill is a costume, and no amount of "it fired reliably" redeems that. A skill has to earn its place by changing the answer.

Fourth— it runs on someone else's machine

One more thing separates a skill you would publish from one you would only keep to yourself. When someone installs your skill, its instructions run in their assistant, on their work. So before anything ships, every skill is walked through an eight-point safety check — could it be tricked, could it leak something, could it run something it shouldn't. A skill that cannot pass that walk does not go out, no exceptions. Publishing is a promise: this is safe to let into your work.

In plain words
skill
an installable habit for the assistant — "when the task is X, do it this way."
description
the one paragraph that decides when the skill shows up. The most important line you write.
fires / shows up
the skill was automatically reached for, without being named.
the catalogue
the browsable list of every skill — what each is for, and whether it was measured.

What to remember

If you skip the rest, take these.

  1. Ask what happens without it — first. Show the result with the skill and without it. If "without" is already fine, don't build it; the best skill is the one you didn't need.
  2. Spend your care on the description. It decides whether the skill is ever used. Write it in the words a real person would ask — name the moments to reach for it.
  3. Aim narrow, not broad. A skill that wakes for everything is worse than one that wakes for nothing — it costs on every request and helps on few. Name a near-miss it should ignore.
  4. A skill must change the answer. "It fired" is not success. If the result is no better with it than without, it is a costume — cut it.
  5. Small is fine. Good is not the same as big. The best skills are short. Cover one thing, cover it well.
  6. If it ships, it must be safe. It runs on other people's work. The eight-point safety check is the price of publishing, and there is no way around it.
  7. Measured, not asserted. A good skill can show its numbers — that it fires when it should, and that it helped. "Trust me" is not a metric.
Chronicle recovered for the marketplace journal · want the engineer's version, with the real numbers and gates? Read The Measurement · or the step-by-step how-to at docs/authoring.md · ← back to the journal