Claude Code skills I actually use, cut down to the ones that make sense on someone else's
machine. Each one is a SKILL.md you can read in a minute, and each one earned its place by
fixing a mistake I kept making: concluding "nothing matches" after two sources, naming a
project before saying the name out loud, losing a session's state between days.
A skill is a folder holding a SKILL.md: instructions Claude Code loads when a task matches
the description in its frontmatter, so a workflow you'd otherwise retype becomes /name.
They are plain markdown. Read one before you install it.
# all of them, into ~/.claude/skills/
npx skills add davemaynard/skills -g
# one of them
npx skills add davemaynard/skills --skill idea-name -gOr copy a folder into ~/.claude/skills/ (user-wide) or .claude/skills/ (per project).
Prerequisites. Most skills need nothing but Claude Code. The exceptions, each also stated
at the top of its own SKILL.md: birdseye needs an authenticated gh; normalize-video-audio
needs ffmpeg; disk-cleanup is macOS-only and uses dust; demand-check needs a Python venv
for its Trends commands, and gap-scan calls it when it is installed alongside. Nothing here
calls a metered API or needs a key.
| Skill | Use it when | What you get |
|---|---|---|
idea-check |
you have an idea and want a calibrated read before spending a month on it | obstacles sorted by kind, every claim labelled fact or guess, a month-one test checklist |
demand-check |
you need evidence people want a thing | free search-demand signals: Google/YouTube autocomplete plus Trends, no API key |
gap-scan |
demand exists and you want to know if the market is already served | a supply audit graded against the demand evidence, so you find gaps rather than crowds |
north-star |
a project's roadmap has become a pile of maybes | the one defensible sentence the project is for, and the roadmap restructured under it |
idea-name |
you need a name that survives contact with the real world | a naming gate: partner test first, collision scan second, domain/RDAP check, a kept graveyard of rejects |
| Skill | Use it when | What you get |
|---|---|---|
handoff |
a long session is ending and tomorrow's session needs to pick it up | a durable handoff file: state, decisions, open threads, what to paste next |
pickup |
you're starting the next session | the matching resume from that file, found by topic |
birdseye |
you have many repos and no idea which ones hold uncommitted work | a sweep of every repo: what's worth committing, which branches should merge, what's stale |
| Skill | Use it when | What you get |
|---|---|---|
animation-vocabulary |
you can describe a motion effect ("the bouncy thing") but not name it | the exact term, so you can search for it and ask for it precisely |
product-search |
you're hunting for a physical product with hard dimensions | a dimension-verified shortlist with a floor on how many retailers get checked before "no match" is allowed |
| Skill | Use it when | What you get |
|---|---|---|
disk-cleanup |
a Mac's disk is full | a fast, percentage-based report with ranked cleanup candidates (uses dust/fd if present) |
normalize-video-audio |
dialogue is buried under the action track | an ffmpeg loudness pass that fixes the file, with an optional Plex install step |
The private version of this repo carries the rest: skills wired to my own notes and
dashboards, third-party skills I've installed (those belong to their authors), and the global
CLAUDE.md. The cut here is the set that stands on its own.
A skill is a folder with a SKILL.md: YAML frontmatter (name, description, optional
argument-hint), then the instructions. The description is what makes Claude reach for it
unprompted, so it states the trigger, not the feature. Keep the body imperative and short;
put the rules that fix recurring mistakes near the top. The ones here are the pattern.
MIT