Agent Skills — The Closed Gap
A capable AI agent with no way to carry expertise between tasks relearns everything every time. Agent skills close that gap: reusable, self-contained packages of instructions, knowledge, and procedure that an agent loads when relevant, turning a general model into one that reliably does your specific work your specific way. This series is about designing, building, and deploying agent skills — and it starts with the gap they close and why it matters.
This series is for engineers building with AI agents (Claude Code and similar) who want to make them reliably capable at specific, repeated work. It builds on the blog’s agent and context-engineering coverage with a focused treatment of skills as a unit of reusable agent capability. Post 1 defines what an agent skill is and the gap it fills between a general model and a reliably-expert one.
The gap: general capability vs reliable, specific expertise
A modern LLM agent is broadly capable — it can write code, analyze data, draft documents. But broad capability isn’t the same as reliably doing a specific task the right way, and the gap between them is real:
- The agent doesn’t know your way. It knows general programming, but not your team’s conventions, your deployment procedure, your review checklist, the specific steps that a task at your organization requires. Out of the box it improvises, which means inconsistency.
- It relearns every time. Without a way to carry procedure and context forward, each task starts from scratch — you re-explain the same conventions, re-paste the same reference, re-specify the same steps, every single time. The agent has no durable memory of “how we do this.”
- Instructions don’t persist or compose. You can tell the agent what to do in a prompt, but that knowledge evaporates when the conversation ends, can’t be reused across tasks, and can’t be shared with teammates or other agents.
This is the gap: a general model is capable but not reliably expert at your specific recurring work. You can close it ad-hoc (long prompts, pasted context, repeated explanation), but that doesn’t scale, doesn’t persist, and doesn’t compose. Agent skills close it properly: by packaging the instructions, knowledge, and procedure for a specific kind of work into a reusable unit the agent can load whenever that work comes up. The skill is the durable, reusable answer to “how do we do this,” so the agent does it the same right way every time without being re-taught.
What an agent skill is
An agent skill is a self-contained, reusable package that gives an agent the capability to do a specific kind of task well. Concretely, a skill bundles:
- Instructions / procedure — how to do the task: the steps, the method, the conventions, the checklist. This is the core — the encoded know-how for this kind of work.
- Knowledge / context — the domain information the task needs: reference material, definitions, examples, constraints, the specific facts about your domain or organization the general model doesn’t have.
- Triggering / applicability — when this skill is relevant, so the agent knows to load and apply it for the right tasks (and not clutter unrelated ones).
- Optionally, supporting resources — templates, scripts, or files the skill uses.
The defining properties are self-contained (a skill carries everything needed for its task, so it works whenever loaded), reusable (write it once, apply it to every instance of that task, forever), and composable (the agent can draw on multiple skills, and skills can be shared across people and projects). A skill is, in essence, captured expertise made loadable — the way you’d onboard a new team member to “how we do X,” but packaged so an agent absorbs it instantly and applies it consistently.
Crucially, a skill is loaded when relevant, not always — which connects to the central design constraint of the whole series: the context window (post 2). An agent can’t hold all possible knowledge at once, so skills are loaded on demand when a task calls for them, keeping the agent’s working context focused. This on-demand, relevance-triggered loading is what makes skills scale — you can have many skills without overwhelming the agent, because only the relevant ones occupy context at any time.
Why skills matter — reliability, reuse, and scale
Skills aren’t just a convenience; they change what agents can reliably do, which is the point of the series:
- Reliability and consistency. A skill encodes the right way to do a task, so the agent does it that way every time — not improvising, not forgetting a step, not varying by run. For recurring, important work (a deployment, a review, a report), this consistency is the difference between an agent that’s occasionally helpful and one you can depend on. Reliability is skills’ core value.
- Reuse — write the expertise once. Instead of re-explaining a task every time, you capture it once in a skill and reuse it indefinitely. The effort of articulating “how we do X” is paid once and amortized over every future instance — a massive leverage gain for recurring work.
- Scale and sharing. Skills can be shared — across your own projects, across a team, across an organization — so one person’s captured expertise becomes everyone’s (and every agent’s). This turns individual know-how into a shared, reusable asset, much like a library turns one engineer’s code into everyone’s building block.
- Composability. An agent equipped with many skills can handle a wide range of work by composing the relevant ones, extending its reliable capability without a bigger model — you grow the agent’s dependable repertoire by adding skills, not by retraining.
The through-line: the gap between a generally-capable agent and one that reliably does your specific work your way is real, and agent skills close it by packaging instructions, knowledge, and procedure into self-contained, reusable, composable, on-demand-loaded units of captured expertise. This reframes how you make agents useful: not by writing ever-longer prompts or hoping the model improvises well, but by building a library of skills that turn a general model into a reliable specialist at the work that matters to you. The rest of the series is how to design, build, and deploy those skills well — starting with the constraint that shapes everything, the context window (post 2).
The throughline: a generally-capable LLM agent still isn’t reliably expert at your specific recurring work — it doesn’t know your way, relearns every time, and its instructions don’t persist or compose. Agent skills close that gap by packaging a task’s instructions/procedure (how), knowledge/context (the domain facts the model lacks), triggering (when it applies), and optional resources into a unit that is self-contained, reusable, and composable — captured expertise made loadable, and crucially loaded on demand when relevant (the context-window constraint of post 2 is why). Skills matter because they deliver reliability/consistency (the right way, every time — their core value), reuse (articulate the expertise once, amortize forever), scale/sharing (one person’s know-how becomes everyone’s and every agent’s — like a library), and composability (grow a reliable repertoire by adding skills, not retraining). The reframe: make agents useful by building a library of skills, not by longer prompts or hoping the model improvises.
Key takeaways
- There’s a real gap between an agent’s broad capability and reliably doing your specific work your way: out of the box it doesn’t know your conventions/procedures, relearns every task from scratch, and its prompt-given instructions don’t persist, reuse, or compose.
- An agent skill is a self-contained, reusable package that gives an agent a specific capability, bundling instructions/procedure (how to do it — the core), knowledge/context (domain facts the general model lacks), triggering/applicability (when it’s relevant), and optional resources (templates/scripts).
- Skills are self-contained (carry everything the task needs), reusable (write once, apply forever), and composable (draw on many, share across people/projects) — captured expertise made loadable, like onboarding a teammate to “how we do X” but absorbed instantly and applied consistently.
- Skills are loaded on demand when relevant, not always — which is what lets an agent have many skills without overwhelming its context window (post 2, the series’ central constraint); relevance-triggered loading is what makes skills scale.
- Skills matter for reliability/consistency (the right way every time — the core value, turning occasionally-helpful into dependable), reuse (articulate “how we do X” once, amortize over every future instance), scale/sharing (individual know-how → shared asset for the whole team and all agents, like a code library), and composability (grow reliable capability by adding skills, not retraining) — so make agents useful by building a library of skills, not writing ever-longer prompts.
Further reading
- Software agent — the agents skills equip
- Large language model — the general capability skills specialize