npx skills add antfu/skillsMIT6.1k stars7,327 wordsUpdated 5 November 2026
A collection of Agent Skills (opens in a new tab) reflecting Anthony Fu (opens in a new tab)‘s preferences, experience, and best practices, along with usage documentation for the tools.
[!IMPORTANT] This is a proof-of-concept project for generating agent skills from source documentation and keeping them in sync. I haven’t fully tested how well the skills perform in practice, so feedback and contributions are greatly welcome.
This repo mainly hosts the skills. The recommended way to use them is @antfu/skills (opens in a new tab), a skills pack installed with skills-npm (opens in a new tab). Besides my own skills, the pack includes curated skills from other authors, and your package manager keeps them in sync:
pnpm i -D skills-npm @antfu/skills
pnpx skills-npm setupSee antfu/skills-pack (opens in a new tab) for the full list of skills in the pack.
To install skills from this repo directly, use the skills (opens in a new tab) CLI:
pnpx skills add antfu/skills --skill='*'or to install all of them globally:
pnpx skills add antfu/skills --skill='*' -gThis repo includes skills from different sources with different scopes.
Opinionated
Manually maintained by Anthony Fu with his preferred tools, setup conventions, and best practices.
| Skill | Description |
|---|---|
| antfu (opens in a new tab) | Anthony Fu’s preferences and best practices for app/library projects (eslint, pnpm, vitest, vue, etc.) |
| antfu-create-pr (opens in a new tab) | Open reviewable PRs: Conventional Commits title, evidence-based body, before/after screenshots via gh --attach (adapted from moeru-ai/airi (opens in a new tab)) |
| antfu-issue-triage (opens in a new tab) | Triage issues and PRs of the current repo: find fixed, duplicate, and spam items, suggest labels, gauge demand, and confirm an action table before acting |
| antfu-query (opens in a new tab) | Interview the user about a plan or decision in rounds via the agent’s question tool until reaching shared understanding (adapted from mattpocock/skills (opens in a new tab)) |
| antfu-simplify (opens in a new tab) | Simplify the current PR or changes with an ablation study: keep only what is proven needed, with just-right abstraction, minimal, robust, and universal code |
[!TIP] For design, see antfu/design (opens in a new tab), which ships the
antfu-designskill alongside the@antfu/designpackage.
Unopinionated but with tilted focus (e.g. TypeScript, ESM, Composition API, and other modern stacks)
Generated from official documentation and fine-tuned by Anthony.
| Skill | Description | Source |
|---|---|---|
| vue (opens in a new tab) | Vue.js core - reactivity, components, composition API | vuejs/docs (opens in a new tab) |
| nuxt (opens in a new tab) | Nuxt framework - file-based routing, server routes, modules | nuxt/nuxt (opens in a new tab) |
| pinia (opens in a new tab) | Pinia - intuitive, type-safe state management for Vue | vuejs/pinia (opens in a new tab) |
| vite (opens in a new tab) | Vite build tool - config, plugins, SSR, library mode | vitejs/vite (opens in a new tab) |
| vitepress (opens in a new tab) | VitePress - static site generator powered by Vite | vuejs/vitepress (opens in a new tab) |
| vitest (opens in a new tab) | Vitest - unit testing framework powered by Vite | vitest-dev/vitest (opens in a new tab) |
| unocss (opens in a new tab) | UnoCSS - atomic CSS engine, presets, transformers | unocss/unocss (opens in a new tab) |
| pnpm (opens in a new tab) | pnpm - fast, disk space efficient package manager | pnpm/pnpm.io (opens in a new tab) |
This collection is opinionated, but the key difference is that it uses git submodules to directly reference source documentation. This provides more reliable context and allows the skills to stay up-to-date with upstream changes over time.
The project is also designed to be flexible - you can use it as a template to generate your own skills collection.
To me, the value of skills lies in being shareable and on-demand.
Being shareable makes prompts easier to manage and reuse across projects. Being on-demand means skills can be pulled in as needed, scaling far beyond what any agent’s context window could fit at once.
You might hear people say “AGENTS.md outperforms skills”. I think that’s true — AGENTS.md loads everything upfront, so agents always respect it, whereas skills can have false negatives where agents don’t pull them in when you’d expect. That said, I see this more as a gap in tooling and integration that will improve over time. Skills are really just a standardized format for agents to consume—plain markdown files at the end of the day. Think of them as a knowledge base for agents. If you want certain skills to always apply, you can reference them directly in your AGENTS.md.
Fork this project to create your own customized skill collection.
pnpm installmeta.ts with your own projects and skill sourcespnpm start cleanup to remove existing submodules and skillspnpm start init to clone the submodulespnpm start sync to pull the latest source docsGenerate skills for \<project\> (recommended one at a time to manage token usage)See AGENTS.md (opens in a new tab) for detailed generation guidelines.
Skills and the scripts in this repository are MIT (opens in a new tab) licensed.
main, last pushed 5 November 2026.SKILL.md, not by matching a directory convention. One layout observed: skills/*/SKILL.md.h1 and no skipped levels:/antfu/skills.md, and each skill at its own .md URL.