
Agent Skills are folders containing a SKILL.md file that extend Claude Code with recurring knowledge and fixed workflows. They're loaded according to the principle of progressive disclosure: first just the name and description, and only when needed the full body and optional resources from references/, scripts/, or assets/. Skills are used either automatically, when the description and context match, or explicitly via a slash command. A precise, concrete description is what determines reliability. Skills are especially well suited to recurring conventions, review processes, or fixed feature workflows. Getting started is low-effort — the real challenge lies in the content, not the technology.
Agent Skills are a tool for working with AI agents. In this article, the focus is on Claude Code and how Skills let you extend it with knowledge and workflows. At its core, a Skill is nothing more than a folder containing a SKILL.md file with instructions, rules, and optional resources. Claude can load a matching Skill on its own if a task calls for it, or a Skill can be invoked explicitly via a slash command. This article covers how Skills are structured, how Claude loads them, why the description is one of the most important aspects in this context, and what matters when developing a Skill.
A Skill is really just a folder with a SKILL.md file. This file defines the Skill's name, a description, and an instruction (the body). When a Skill is invoked (automatically or explicitly), its content is loaded into the context and passed to the agent. Strictly speaking, a Skill doesn't do anything you couldn't achieve without one. But Skills become useful precisely when tasks, guidelines, or processes repeat. They save you from typing everything into the prompt again and again, and they guard against mistakes or deviating from the rules.
The structure of a Skill is lean. As already described, a Skill only needs to consist of a SKILL.md file. Additional directories and files can optionally be added. The folder might look like this:
mein-skill/
├─ SKILL.md
│ Pflicht: Name, Description, Anleitung
├─ references/
│ Doku, wird bei Bedarf gelesen
├─ scripts/
│ ausführbarer Code
└─ assets/
Templates, Fonts, IconsSince a Skill consists purely of files, it can be part of a repository and shared within a team or project. There are basically two ways to store Skills. If a Skill applies to a specific project where Claude Code is used, it's placed in .claude/skills/<name>/... . If a Skill is meant to apply across all projects but is personal, i.e., not part of a repository, it can be placed in the user directory under ~/.claude/skills/<name>/... . Alternatively, Skills can be made available to all members of an organization through Claude. In that case, they aren't stored locally on disk but are made available through the Claude app.
So that many Skills can exist at the same time without overloading the context, they aren't loaded all at once but in three stages. This principle is called progressive disclosure. Information from the Skill definition only becomes visible, or gets loaded, once it's actually needed.
Stage 1: Metadata (always in context)
Claude decides whether to use a Skill based on its name and description. That's why this metadata must always be present in the context, and should be as short as possible while still being precise. All Skills from the personal user directory, all Skills from the current directory (including subfolders), and all Skills from the organization are loaded here with their metadata.
Stage 2: SKILL.md body (on trigger)
Only once a Skill triggers is the actual guidance in the SKILL.md body loaded. The body shouldn't be endlessly long or detailed either. It should be a clear instruction for the agent that points to further resources when needed.
Stage 3: Resources (as needed)
The contents of references/, scripts/, and assets/ are only loaded when the SKILL.md body explicitly refers to them and the agent, while running the Skill, determines that these resources are actually needed.
Overall, there's a clear division of labor: the name and description carry the trigger logic, the body carries the knowledge and the instructions for action, and the resources hold optional detail information.
A SKILL.md file consists of two parts: a YAML frontmatter at the beginning and the actual body in Markdown format. For example:
---
name: mein-skill
description: Meine Beschreibung für den Skill. Hier entscheidet Claude, ob ein Skill automatisch getriggert werden soll, oder nicht.
---
Ab hier folgt der Body in Markdown. Dies kann freier Text sein
# Überschrift
## Unterüberschrift
Oder es wird Markdown für bessere Strukturierung genutzt
KI-Agenten/-Modelle sind sehr gut darin Markdown zu verstehen
Für weitere Details siehe references/details.mdNo field of a Skill is as decisive as the description. It determines whether Claude considers the Skill at all. The difference between a vague description and a concrete, precise one is the difference between a Skill that never kicks in and one that triggers reliably.
There are two ways to use a Skill. Skills can be used automatically by Claude. The Skill's name and description, together with the context of the request, determine whether Claude loads a Skill. In this case, we're talking about conventions. They apply without anyone having to think about them, and are meant to be applied reliably.
Alternatively, a Skill can be invoked explicitly via a slash command — for example, by typing „/my-skill" in the chat. Optionally, you can add further information: „/my-skill Here is additional information relevant to the task". When developing a new Skill, you'll often want to invoke it explicitly more often for testing purposes. Otherwise, Skills are called explicitly when it's not a matter of conventions but of processes or workflows — for example, a specific review process or a specific procedure for implementing new features (discussion -> planning -> implementation).
A good Skill doesn't just fall from the sky, and it doesn't come from someone else's Git repository either. Skills develop over time, iteratively, in combination with a team's individual processes. They help turn recurring knowledge and workflows into a concrete form. Getting started with Skills is very low-effort: a working Skill can be created within a minute. The challenge isn't the technology itself, but the content.
That said, it shouldn't be forgotten that AI and its use in software development are still in their infancy. Proven processes from the past shouldn't be thrown overboard just because a Skill could help. This is a time of experimentation and trying things out, and it's important not to lose sight of the concrete benefit.
It's worth trying out Agent Skills, developing your own Skills, and being among those who generate new insights about Claude Code from hands-on experience. At the same time, decades of accumulated experience shouldn't be lost sight of.
For such capabilities to deliver value in everyday work, they need to be embedded. This is how AI can be integrated into existing software, wherever it delivers real added value.

Praxiswissen, Tipps und Neuigkeiten für den Mittelstand: kompakt und ohne Spam. Abmelden jederzeit möglich.
Praxiswissen, Tipps und Neuigkeiten für den Mittelstand: kompakt und ohne Spam. Abmelden jederzeit möglich.