Agent Skills are portable instruction packs (SKILL.md + optional references) for AI coding assistants. This collection installs into Cursor, Claude Code, OpenCode, and Windsurf skill directories on your machine.
Registry: packages are published on npm under the @its-thepoe scope (search).
Install all skills (recommended):
npx @its-thepoe/skills@latest install --allRestart or reload your editor / agent so new skills are picked up.
Update installs (safe to run anytime):
npx @its-thepoe/skills@latest sync --allCheck that skills are linked and SKILL.md is present:
npx @its-thepoe/skills@latest check(Optional, needs network — compare local versions to the registry:)
npx @its-thepoe/skills@latest check --online| Skill | Command |
|---|---|
| alt-text | npx @its-thepoe/skills@latest install alt-text |
| design-and-refine | npx @its-thepoe/skills@latest install design-and-refine |
| design-engineering | npx @its-thepoe/skills@latest install design-engineering |
| design-motion-principles | npx @its-thepoe/skills@latest install design-motion-principles |
| family-taste | npx @its-thepoe/skills@latest install family-taste |
| canva-app-builder | npx @its-thepoe/skills@latest install canva-app-builder |
| codebase-content-ideas | npx @its-thepoe/skills@latest install codebase-content-ideas |
| write-a-skill | npx @its-thepoe/skills@latest install write-a-skill |
Install several at once:
npx @its-thepoe/skills@latest install alt-text design-engineeringRe-link one skill after an update:
npx @its-thepoe/skills@latest sync alt-textRemove one skill from agent directories:
npx @its-thepoe/skills@latest remove alt-textPreview actions (no files changed):
npx @its-thepoe/skills@latest install --all --dry-runOnly some agents (comma-separated: cursor, claude, opencode, windsurf):
npx @its-thepoe/skills@latest install --all --only=cursor,claudeIf symlinks fail (often on Windows without dev mode), use copy mode:
npx @its-thepoe/skills@latest install --all --strategy copyRemove all skills installed by this tool:
npx @its-thepoe/skills@latest remove --all| npm package | What it does |
|---|---|
@its-thepoe/skills |
CLI — install, sync, check, remove |
@its-thepoe/alt-text |
Image alt text: scan, draft, review table, then apply (Next.js, React, Astro, Vue, CMS-shaped content) |
@its-thepoe/design-and-refine |
Design & Refine / Design Lab style workflow |
@its-thepoe/design-engineering |
UI craft: motion, easing, component polish |
@its-thepoe/design-motion-principles |
Motion audit (multi-file references) |
@its-thepoe/family-taste |
Family Values UI philosophy |
@its-thepoe/canva-app-builder |
Build Canva Apps against SDK docs, UI kit, and review constraints |
@its-thepoe/codebase-content-ideas |
Blog and social content ideas from real repo work and notes |
@its-thepoe/write-a-skill |
How to author and ship Agent Skills |
Skills follow the Agent Skills idea: each folder is self-contained with SKILL.md at the root.
| Problem | What to do |
|---|---|
npx … → 404 Not Found |
The package is not on npm yet, or the name is wrong. Use From source below, or ask the maintainer to publish. |
| EOTP / one-time password | Your npm account uses 2FA for publish; end users normally do not see this when installing. |
check reports MISSING |
Run install or sync again; confirm paths like ~/.cursor/skills/<name> exist. |
| Symlink errors (Windows) | Use --strategy copy. |
| Skills don’t appear | Fully restart the app or reload the window after install. |
If npx @its-thepoe/skills@latest is not available yet, clone and run the same CLI locally:
git clone https://github.com/its-thepoe/skills.git
cd skills
npm install
npm run skills -- install --all
# or one skill: npm run skills -- install alt-textManual symlinks — set SKILLS_ROOT to your clone and SKILL_NAME to the folder name:
SKILLS_ROOT="$HOME/src/skills"
SKILL_NAME=alt-text
mkdir -p ~/.cursor/skills ~/.claude/skills ~/.config/opencode/skills ~/.codeium/windsurf/skills
ln -sfn "$SKILLS_ROOT/$SKILL_NAME" ~/.cursor/skills/"$SKILL_NAME"
ln -sfn "$SKILLS_ROOT/$SKILL_NAME" ~/.claude/skills/"$SKILL_NAME"
ln -sfn "$SKILLS_ROOT/$SKILL_NAME" ~/.config/opencode/skills/"$SKILL_NAME"
ln -sfn "$SKILLS_ROOT/$SKILL_NAME" ~/.codeium/windsurf/skills/"$SKILL_NAME"Official paths vary. After you have a skill folder, symlink or copy it into the directory your product documents (often under ~/.gemini/skills/ or a project .agent/skills/ path).
- docs/publishing-jargon.md — npm terms explained (
npx,semver,files, etc.) and what install feels like per method. - docs/publish-step-by-step.md — maintainers: how to publish to npm (login, OTP, order).
This repo is an npm workspace: one folder per skill plus skills/ for the @its-thepoe/skills CLI. To add a skill, ship SKILL.md, add package.json (name: @its-thepoe/<folder>), a short README.md (npmjs.com shows this per package), list README.md in package.json files, register it in skills/skills.manifest.json and skills/package.json dependencies, then run npm run validate. Publishing order and scripts: scripts/PUBLISH_ORDER.md.
skills/ → @its-thepoe/skills (CLI)
alt-text/ → @its-thepoe/alt-text
codebase-content-ideas/
design-and-refine/
design-engineering/
design-motion-principles/
family-taste/
write-a-skill/
Republish only codebase-content-ideas + CLI (order fixed): see docs/publish-step-by-step.md TL;DR, or after chmod +x:
./scripts/publish-codebase-content-ideas-and-cli.shMaintainer one-liner (after npm login; use a fresh OTP if 2FA is on):
npm install && npm run validate && NPM_OTP=123456 ./scripts/publish-all.shReplace 123456 with your authenticator code, or omit NPM_OTP=... if publish does not require OTP.