For most of last year I treated coding agents like a smarter autocomplete: type a prompt, hope the output matches the shape in my head, fix the 20% that didn’t. The thing that changed my workflow wasn’t a better model — it was skills.
A skill is a small, version-controlled instruction file that teaches Claude Code how to do a recurring task: how you write tests, how you structure a migration, how you reason about a UI before you draw it. Write it once, and Claude loads it when it’s relevant instead of you re-explaining your standards every prompt.
---
name: write-migration
description: Use when adding or altering a database table — enforces
reversible up/down, backfill safety, and zero-downtime ordering.
---
1. Never drop a column in the same deploy that stops writing to it.
2. Backfill in batches; never one unbounded UPDATE.
3. Add the index CONCURRENTLY, in its own migration.
Below, four public libraries — what they are, the exact commands to install and use them, and the honest caveat. Try them in a throwaway repo first; you can always remove a skill.
1. Matt Pocock’s skills — the TypeScript baseline
mattpocock/skills is the contents of Pocock’s own setup — engineering skills grounded in fundamentals, not vibe-coding.
Install (uses the skills CLI):
npx skills@latest add mattpocock/skills
Pick the skills you want in the interactive picker. Select setup-matt-pocock-skills too — then run it inside Claude to configure your issue tracker (GitHub/Linear/local) and where docs get saved:
/setup-matt-pocock-skills
Use: user-invoked skills like /tdd, /grill-me (interrogates your reasoning), /triage, and /to-prd. Model-invoked ones (diagnosing-bugs, domain-modeling, codebase-design) fire automatically when relevant.
Reach for it when: you write TypeScript and want Claude to make the same type-level and design calls a careful library author would. The value is taste.
Caveat: shaped around his stack and preferences. Read a skill before adopting it — don’t import opinions you can’t defend in review.
2. Addy Osmani’s agent-skills — a full delivery lifecycle
addyosmani/agent-skills is 24 skills mapped to phases of shipping software: spec → plan → build → test → review → ship.
Install (Claude Code plugin marketplace):
/plugin marketplace add addyosmani/agent-skills
/plugin install agent-skills@addy-agent-skills
No SSH keys? Use the HTTPS form: /plugin marketplace add https://github.com/addyosmani/agent-skills.git.
Use: slash commands per phase — /spec, /plan, /build, /test, /review, /ship, plus /webperf and /code-simplify. Power move: /build auto approves the plan once, then runs autonomously.
Reach for it when: you want structure around how Claude works — planning before coding, verifying before claiming done — not just what language it writes.
Caveat: “production-grade” is a claim, not a guarantee for your repo. Strong starting template; trim what doesn’t fit.
3. andrej-karpathy-skills — taste distilled, with an asterisk
andrej-karpathy-skills isn’t a slash-command pack — it’s a CLAUDE.md of engineering guidelines derived from Karpathy’s observations about LLM failure modes: don’t assume, don’t overcomplicate, don’t touch code you weren’t asked to.
Install — option A (plugin):
/plugin marketplace add forrestchang/andrej-karpathy-skills
/plugin install andrej-karpathy-skills@karpathy-skills
Option B — drop it straight into a project (append to an existing CLAUDE.md):
echo "" >> CLAUDE.md
curl https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md >> CLAUDE.md
Use: no command needed — Claude reads CLAUDE.md automatically every session, so the guidelines shape behavior on every task.
Reach for it when: you want Claude biased toward clarity and first-principles reasoning over clever abstractions.
Caveat — read this one: the canonical repo is forrestchang/…; you’ll see mirrors (e.g. multica-ai/…). And it’s a community interpretation of a style, not gospel from Karpathy himself. Good ideas are good ideas — just hold the label loosely.
4. ui-ux-pro-max-skill — make a backend agent design-aware
nextlevelbuilder/ui-ux-pro-max-skill gives Claude a design brain: a generator backed by a library of styles, color palettes, and typography pairings, plus anti-pattern checks.
Install (needs Node + Python 3):
npm install -g ui-ux-pro-max-cli
uipro init --ai claude # add --global for all projects
Verify Python first: python3 --version (the search script needs it).
Use: it activates automatically when you ask for UI work — “Build a landing page for my SaaS” — or call the generator directly:
python3 .claude/skills/ui-ux-pro-max/scripts/search.py \
"beauty spa wellness" --design-system -p "Serenity Spa"
Reach for it when: you’re not primarily a frontend person but still have to ship a UI. I live in pipelines — this is what stops me shipping a dashboard that’s technically correct and practically unusable.
Caveat: most off-center pick for backend work, and it pulls in a Node CLI + Python dependency. But that’s the point — a skill is the cheapest way to borrow a discipline you don’t have.
The trap before you install all four
The temptation is to clone everything and walk away with 60 skills. Don’t.
Now write your own
Once you’ve read a few libraries, you start noticing the procedures you repeat in every prompt. Those are your skills. Here’s the whole process:
- Make the folder. In your project:
.claude/skills/<skill-name>/SKILL.md(or~/.claude/skills/…to make it global). - Write the frontmatter. A
nameand a sharpdescription— the description is how Claude decides when to use it, so make it specific: “Use when …”. - Write the body. The actual steps, in plain imperative language. Short. Opinionated. The migration example at the top of this post is a complete skill.
- Test it. Start a task that should trigger it and watch whether Claude reaches for it. If it doesn’t fire, your
descriptionis too vague — sharpen the “Use when”.
That’s the real win. Steal a couple of these to learn the shape, then the moment you catch yourself re-explaining a standard, stop and write the skill instead. Claude goes from autocomplete to a teammate who already knows the house rules.
Part one of a hands-on series on getting real work out of coding agents. Next: context engineering — installing the tools that stop Claude forgetting what it learned and burning tokens it didn’t need.