Claude Skills and Plugins: how to teach it one repeatable job for good
What a Claude Skill is, what a Plugin is, and when to reach for each so a repeatable job runs the same way every time.
To teach Claude one repeatable job, you write a Skill: a file that tells Claude how to do that exact job, so it runs the same way every time instead of improvising. A Plugin is the next step up: it packages that skill (and anything that goes with it) so you can hand the whole thing to your team in one install. Reach for a Skill to teach the job, and a Plugin when you need to distribute it.
What is a Claude Skill?
A skill is a folder with a SKILL.md file inside, holding a simple set of instructions for one specific job. At the top of the file are two fields, a name and a description, then the steps themselves. You can add supporting files: a template, an example of good output, a small script.
Here is the trick: Claude only keeps a skill's name and description in mind at all times. It reads the full instructions only when the job actually comes up. So you can have many skills, and they don't eat context until they're needed.
The key field is the description. Claude uses it to decide whether to load the skill. Write both what the skill does and when to apply it. Describe it vaguely and Claude simply won't think to use it.
Anthropic already ships some skills: reading PDFs, working with Word, Excel, PowerPoint. Your own skills work everywhere you use Claude: on claude.ai, in the app, in Claude Code.
What is a Claude Plugin?
A plugin is an installable package. Into it you can wrap not just skills but a whole set: your own commands (slash commands like /release), subagents, connectors to services (that's MCP, Claude's link to your email, database, GitHub), and hooks (actions that fire automatically).
It installs with one command from a marketplace, a git repository where plugins live. One person builds the plugin, the whole team installs the same thing, and everyone's Claude is set up identically.
If a skill is one instruction for you, a plugin is how you hand a set of abilities to other people without explaining it to each of them by hand.
Skill or plugin: which should I use?
| What to look at | Skill | Plugin |
|---|---|---|
| What it is | a file with instructions (SKILL.md) | an installable package |
| Best for | teaching one repeatable job | handing a set of abilities to a team |
| What's inside | instructions plus templates and scripts | skills, commands, connectors, hooks |
| How you get it | write it yourself or add it in settings | install it with one command from a marketplace |
| Who it's for | mostly you | your team or the community |
| Use it when | you want one job done the same way every time | you want everyone set up identically |
How do I teach Claude one repeatable job?
1. Pick one job you genuinely repeat. Keep it narrow: not "help with marketing" but "turn a changelog into release notes". 2. Write down how you do it yourself: the steps, the rules, an example of good output. Plain words. 3. Put it in a SKILL.md file with a name and a description. The description is the trigger: say what the skill does and when to use it, or Claude won't pick it up. 4. Add supporting files if you need them: a template, an example, a script. Optional. 5. Drop the skill where Claude can see it (claude.ai settings, or the ~/.claude/skills folder in Claude Code) and test it on a real case. Wherever Claude drifts, tighten the instruction. 6. When the same job is needed across the team, wrap the skill (plus any commands or connectors) into a plugin and share it.
When does a job outgrow a skill?
One skill lasts a long time. Move to a plugin when one of three things shows up: the whole team needs the job set up identically; the job needs more than instructions, like its own command, a connector to a service, or an automatic action; or you have several related jobs and it's easier to hand them over as one bundle. Until then, a skill is simpler and faster.
What mistakes should I avoid?
- A vague description. Claude can't tell when to use the skill, so it doesn't. Spell out the situation it's for.
- One giant instruction for everything. One skill, one job. Split them.
- A plugin where a skill would do. Start with a skill, package later.
- Write once and forget. Run it on a couple of real tasks and fix where it drifts.
In short
A skill teaches Claude one job the same way every time; a plugin packages that job and hands it to your team. Start with a skill for the task you repeat most: write down the steps, put them in a SKILL.md, and test it on real work. When it outgrows you, wrap it in a plugin.
In AGINE Academy you work inside the real Claude and leave each lesson with a working result. You can try the format without signing up.
Questions
A skill is a single file of instructions that teaches Claude how to do one repeatable job, and Claude applies it on its own when the job comes up. A plugin is an installable package that can wrap one or more skills together with custom commands, connectors, and automations, and you hand the whole thing to a team in one install. A skill teaches the job; a plugin distributes it.
No. A skill is a plain text file (SKILL.md) written in ordinary words: the steps, the rules, and an example of good output. You only touch code if the job itself needs a script, and even then it's optional. Add the skill in your settings and test it on a real task.
Almost always it's the description. Claude decides whether to load a skill by matching your request against its description, so if the description doesn't say both what the skill does and when to use it, Claude won't reach for it. Rewrite the description to name the exact situation, then test again.