Blank white background with no objects or features visible.

We’re sharing complimentary access to the full Gartner Hype Cycle for AI Governance 2026. Get your copy →

Best Claude Code Skills for Developers in 2026

By Ashish Dubey

Updated: November 1, 2026

Published: October 31, 2026

TL;DR:

A skill is the cheapest way to make Claude Code better at your codebase — because it only costs tokens when it is actually used.

  • A skill is a SKILL.md bundle of instructions and resources that loads on demand when the task matches it, instead of sitting in context all session like CLAUDE.md does.
  • Only the name and description stay resident — a few dozen tokens per skill. The body and any bundled files load progressively, and only when needed.
  • Skills are not subagents and not MCP tools. A skill injects knowledge, a subagent isolates work in its own context window, and an MCP server adds external tools. Most teams need all three.
  • The best skills remove exploration. A codebase-overview, a test-runner, a migration playbook or a PR-review checklist stops Claude spending tokens rediscovering what you already know.
  • They save real money. Every file Claude does not have to read is input tokens you do not pay for — and the effect compounds across a team.
  • At team scale, skills need versioning and governance, not copies scattered across laptops — which is where a shared registry and an AI gateway come in.

What a Claude Code skill actually is

A skill is a folder with a SKILL.md at its root: a short description of when it applies, followed by the instructions and any helper files Claude should use when it does. Claude Code reads only the name and description up front; the full body loads into context only when a task matches. That single property — on-demand loading — is what makes skills cheap.

Contrast that with CLAUDE.md, which is loaded at session start and sits in context for the whole conversation. Detailed workflow instructions there cost tokens on every message, even during unrelated work. The guidance is to keep CLAUDE.md lean — essentials only — and move specialised, situational knowledge into skills that load when needed. See our note on this in Claude Code pricing and how to cut spend.

Anatomy of a SKILL.md, and how on-demand loading keeps context small

A skill has three parts, and knowing where each lives in context is the whole trick. The YAML frontmatter — a name and a description — is the only part always resident: Claude Code reads the frontmatter of every installed skill at session start so it knows which skills exist and when each applies. A name plus a one-line description is only a few dozen tokens, so a whole shelf of skills can sit installed for almost nothing.

The body — the Markdown below the frontmatter — holds the real guidance: conventions, step lists, decision rules, snippets. It does not load at session start. It loads only when the model decides, from the description, that the task matches, is read in for that stretch of work, and then effectively falls away. A body read once, when relevant, costs a fraction of the same text pinned in CLAUDE.md all session.

The third part is bundled resources: extra files in the folder — reference docs, templates, fixtures, small scripts — that the body points to, and that load only if the task follows a link to them. This is progressive disclosure: each layer is pulled in only when the previous one says it is needed, so even a large, detailed skill has a near-zero resting cost. The lesson: a skill's cost is not its size, it is its trigger frequency.

LayerWhat it holdsWhen it enters contextCost at rest
Frontmatter (name + description)Which skill this is and when it appliesAlways — read at session startA few dozen tokens per skill
Body (SKILL.md instructions)The conventions, steps and rules themselvesOn match — when the task fits the descriptionZero until triggered
Bundled resourcesReference files, templates, scripts the body links toOn reference — only if that file is neededZero until opened

Skills vs subagents vs MCP tools

These three are constantly confused, and picking the wrong one is how context budgets blow up. They solve different problems:

DimensionSkillSubagentMCP tool
What it isA SKILL.md bundle of instructions and resourcesA separate Claude instance with its own context windowAn external tool exposed over the Model Context Protocol
Loads whenOn demand, when the task matches its descriptionWhen you delegate a high-volume or isolated taskTool definitions are deferred; load when a tool is used
Gives ClaudeKnowledge — what to do and howSomewhere to offload work and return a summarySomething to call — an action or data source
Context effectAdds instructions to the conversation brieflyKeeps verbose output out of the main contextKeeps tool schemas out of context until invoked
Best forConventions, playbooks, review checklistsTests, log triage, large refactors, researchAPIs, databases, SaaS and internal systems

A rule of thumb: if you are teaching Claude what to do, that is a skill; if you are giving it somewhere to offload work, that is a subagent; if you are giving it something to call, that is an MCP server. They are complementary — a skill can describe how to use an MCP tool well, and a subagent can be told to load a skill. Two cost facts worth planning around: subagents inherit the session model unless you set one (model: haiku makes a cheap helper), and running a full agent team can use roughly seven times the tokens of a single session. We unpack the governance angle in tool vs skill vs subagent governance.

The skills worth installing

The best skills encode knowledge your team repeats constantly. These categories earn their place in almost any serious codebase:

SkillWhat it doesWhen it triggers
Codebase overviewDescribes architecture, key directories and naming conventions so Claude does not have to read dozens of files to orient itselfStart of work in an unfamiliar area
Test runnerEncodes how to run and filter the test suite, returning only failures instead of thousands of lines of outputRunning or debugging tests
PR reviewApplies your review checklist — security, style, edge cases — in a consistent orderReviewing a diff or preparing a PR
Migration playbookCaptures the exact steps and gotchas for a database or framework migrationA schema change or dependency upgrade
Doc generationTurns code and comments into docs in your house formatWriting or updating documentation
Data / file format handlingRules for parsing and producing your CSV, JSON or proprietary formatsProcessing a data file or fixture

The why matters as much as the what, so a few deserve a closer look:

Codebase overview

The highest-leverage skill in most repos. It names the architecture, top-level directories, module boundaries and naming conventions in a few hundred tokens, and triggers whenever Claude starts in part of the codebase it has not seen this session — exactly the moment it would otherwise open ten files to infer structure. That inference is pure input-token cost with no output to show for it, so replacing it with a resident map is one of the cleanest wins available.

Test runner and failure triage

A suite can emit thousands of lines, and feeding all of it back is expensive noise. This skill encodes the exact command, how to scope it to the relevant package, and how to return only failures and their stack traces. It triggers on any request to run, fix or add tests, saving both the output tokens of a full run and the turns wasted re-running after a wrong guess at the invocation.

PR review checklist

Review quality degrades when it is improvised. A review skill fixes the order and criteria — security first, then correctness and edge cases, then style — so every diff gets the same pass. It triggers when Claude reviews or prepares a change, and saves tokens by stopping the model re-deriving your standards and wandering into files the review does not need.

Migration playbook

Schema changes, framework bumps and dependency upgrades are where undocumented gotchas live. A migration skill captures the ordered steps, the backfill, the rollback and the specific traps your stack has hit before. It triggers on a migration or upgrade. The token saving is secondary here; the real win is correctness — the model follows your tested path instead of a plausible but wrong one.

Documentation and data-format handling

A doc-generation skill turns code and comments into docs in your house format and triggers whenever docs are written. A data-format skill encodes the rules for your CSV, JSON or proprietary fixtures — required columns, encoding, validation, edge cases — so Claude stops re-reading samples to infer a schema it could have been told. None of these are clever tricks; they are institutional knowledge written down once so every developer, and every Claude session, gets it for free.

Running skills across a whole team instead of one laptop?

Why skills save money, not just time

Token cost scales with context size. Every file Claude reads to understand your project is input tokens you pay for, and a vague prompt in an unfamiliar codebase can trigger a broad, expensive scan. A skill short-circuits that: instead of reading ten candidate files to infer your architecture, Claude invokes the codebase-overview skill and has the answer immediately.

The savings compound. On a subscription the work draws from a shared seat allowance — a 5-hour rolling window plus a weekly one, spanning Claude Code, chat and Cowork — so less exploration means more real work before a limit. On the API or a cloud provider it is billed per token at rates like Sonnet 5.5 at $2 input / $10 output per million, so avoided reads are money you do not spend. The same lever runs through the Opus vs Sonnet vs Haiku routing guide and cost tracking for Claude Code.

One nuance: on Amazon Bedrock, Google Vertex or Microsoft Foundry, usage is billed per token straight to your cloud, and Anthropic's dashboards do not see it. Skills cut the token count the same way, but to attribute that spend per developer you need OpenTelemetry or an LLM gateway in the path — the role TrueFoundry's AI Gateway plays.

Writing your own skill

A skill is deliberately simple to author. The frontmatter names it and, crucially, describes when it should trigger — that description is what Claude matches against:

---
name: codebase-overview
description: Use when orienting in this repo — architecture, key
  directories, and naming conventions.
---

# Architecture
- services/ — one deployable per folder
- packages/ — shared libraries, no side effects
- Naming: kebab-case files, PascalCase components

The steps, in short: (1) pick one repeated task — if you have explained it to newcomers more than twice, it is a candidate; (2) create .claude/skills/<name>/SKILL.md in the repo so it travels with the code; (3) write a description of the situation, not the mechanism (“Use when running or debugging tests” triggers reliably; “Testing utilities” does not); (4) put concrete instructions in the body, and split long reference material into linked files that load only when needed; (5) test the trigger on a task that should fire it and one that should not, and narrow the description until it only loads when it earns its tokens.

A skill that claims to apply to everything loads constantly and defeats the point. We cover the concept itself in more depth in what are Claude Skills.

Governing skills across a team

One developer's skill on one laptop is a convenience. Thirty copies drifting out of sync is a liability — nobody knows which version is correct, and a bad instruction propagates silently. At team scale you want skills versioned, shared and access-controlled in one place, the same way you treat code.

That is what a skills registry provides: a single source of truth for SKILL.md bundles, with versioning and repository-level access control, published once and pulled by every developer and agent. It turns a skill from a personal file into a governed artifact — you can see who published a version, roll back a bad one, and know everyone runs the same guidance. We built exactly this — see the TrueFoundry Skills Registry explained and why we introduced a reusable skills registry.

The registry solves distribution and versioning; the gateway solves the rest. Paired with an AI gateway you get per-developer attribution, model policy, spend limits and one control plane across providers — governance over which tools, skills and models each developer can reach, with only about 3–4 ms of added latency and OpenTelemetry-compliant traces. That matters most on Bedrock, Vertex or Foundry, where native dashboards cannot attribute spend at all.

ConcernOn individual laptopsIn a registry + gateway
Source of truthEach copy is its own; drift is invisibleOne published version everyone pulls
VersioningAd hoc; no history or rollbackVersioned, with rollback and an audit trail
Access controlAnyone can edit their copyWho can publish is controlled
Cost attributionNone per developer, especially on cloudPer-developer spend across every provider
Bad-instruction blast radiusSilent and unboundedCaught in review before it ships

The pattern mirrors how a company already governs other AI coding tools — the same control plane that centralises cost control and observability for Claude Code, Cursor, Gemini CLI and the rest extends naturally to the skills those tools consume.

Gotchas worth knowing

  • A broad description is self-defeating. A skill that matches everything loads on every task and bloats context — the opposite of the goal. Scope the trigger tightly.
  • Skills are knowledge, not actions. If a skill needs to hit an API or a database, that is an MCP tool's job; the skill should tell Claude how to use it, not try to be it.
  • Do not dump CLAUDE.md into a skill unchanged. The win is moving situational instructions out of always-on context; keep genuine always-on essentials where they belong.
  • Unversioned skills drift. Copies on individual machines diverge; treat skills as shared artifacts with a single source of truth.
  • Overlapping skills confuse the trigger. Two skills with near-identical descriptions make the match ambiguous; give each a distinct, non-overlapping scope.

Related reading

Conclusion

The best Claude Code skills are not the flashiest — they are the ones that write down what your team already knows so nobody, human or model, has to rediscover it. A good skill loads exactly when it is relevant, hands Claude the answer, and disappears again, keeping context small and spend low.

The failure mode is not writing too few skills; it is letting them sprawl across laptops with no versioning, no review and no control over who publishes them. Treat skills like code — one source of truth, versioned and governed — and they become a durable advantage instead of a liability.

Give every developer the same governed skills and one cost view.

Try now.

One gateway for all your models, MCP servers, and agents.
No credit card needed.

Start free
Table of Contents

One Gateway for Every LLM, Agent and MCP Server

Book a 30-min with our AI expert

Book a Demo

The fastest way to build, govern and scale your AI

Book Demo
Summarize with
ChatGPT logo by OpenAI
Perplexity AI logo
Blurry red snowflake on white background, symmetrical frosty design with soft edges and abstract shape.

Discover More

No items found.
November 1, 2026
|
5 min read

Agent Identity and On-Behalf-Of (OBO) Delegation: Who Is Really Calling Your Tools?

No items found.
November 1, 2026
|
5 min read

AI Agent Identity with Microsoft Entra Agent ID: Issuing and Governing Agent Identities

No items found.
November 1, 2026
|
5 min read

Claude API Pricing: A Model-by-Model Cost Breakdown

No items found.
November 1, 2026
|
5 min read

The Identity-Broker Pattern for AI Agents: One Trust Boundary for Every Credential

No items found.
No items found.

Recent Blogs

Black left pointing arrow symbol on white background, directional indicator.
Black left pointing arrow symbol on white background, directional indicator.

Frequently asked questions

What are Claude Code skills?

A skill is a SKILL.md bundle of instructions and optional helper files that Claude Code loads on demand when a task matches its description. It gives Claude domain knowledge — your conventions, playbooks or checklists — without keeping that text in context for the whole session.

How are skills different from subagents?

A skill injects knowledge into the current conversation; a subagent runs work in a separate context window and returns only a summary. Use a skill to teach Claude what to do, and a subagent to keep a verbose task — like running tests or processing logs — out of your main context. Subagents inherit the session model unless you set one, so a cheap helper should be given model: haiku.

How are skills different from MCP servers?

An MCP server adds external tools Claude can call — APIs, databases, SaaS systems — and its tool definitions are deferred until used. A skill adds no tools; it adds instructions. They are complementary: a skill can describe how to use an MCP tool well.

Do skills reduce token usage?

Yes, indirectly. Because a skill loads only when relevant and hands Claude the answer instead of making it explore, it avoids the file reads and broad scans that drive input-token cost. Moving situational instructions out of CLAUDE.md into skills also keeps your base context smaller — only the skill's name and description stay resident until it fires.

How do I write a Claude Code skill?

Create a folder with a SKILL.md whose frontmatter has a name and a specific description of when it applies, then put the instructions below it. In a project, place it under .claude/skills/<name>/ so it travels with the repo. Keep the trigger tightly scoped so it loads only when it earns its tokens.

Where do skills live, and how are they loaded?

Each skill is a folder with a SKILL.md and any bundled resources. Claude Code reads every skill's frontmatter at session start but holds only the name and description. The body loads when a task matches, and linked resource files load only when the body references them — progressive disclosure that keeps the resting cost near zero.

How do I manage skills across a team?

Store them in a skills registry with versioning and access control, published once and pulled by every developer and agent, rather than copied across laptops. A gateway on top adds per-developer attribution and governance over which skills, tools and models each person can use.

Do skills work when Claude Code runs on Bedrock or Vertex?

Yes — skills are a client-side concept, so they cut token usage the same way regardless of where inference runs. The difference is attribution: on Amazon Bedrock, Google Vertex or Microsoft Foundry, usage is billed per token to your cloud and Anthropic's dashboards do not see it, so you need OpenTelemetry or an AI gateway in the path to attribute that spend per developer.

Take a quick product tour
Start Product Tour
Product Tour