npx skills add antfu/skillsMIT5.9k stars8,268 wordsUpdated 23 June 2026
A curated 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.
pnpx skills add antfu/skills --skill='*'or to install all of them globally:
pnpx skills add antfu/skills --skill='*' -gLearn more about the CLI usage at skills (opens in a new tab).
This collection is aim to be a one-stop collection of you are mainly working on Vite/Nuxt. It 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-design (opens in a new tab) | UnoCSS-centered design principles, semantic tokens, and UI presentation patterns from Anthony Fu’s tooling UIs |
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) |
Synced from external repositories that maintain their own skills.
| Skill | Description | Source |
|---|---|---|
| slidev (opens in a new tab) (Official) | Slidev - presentation slides for developers | slidevjs/slidev (opens in a new tab) |
| tsdown (opens in a new tab) (Official) | tsdown - TypeScript library bundler powered by Rolldown | rolldown/tsdown (opens in a new tab) |
| turborepo (opens in a new tab) (Official) | Turborepo - high-performance build system for monorepos | vercel/turborepo (opens in a new tab) |
| vueuse-functions (opens in a new tab) (Official) | VueUse - 200+ Vue composition utilities | vueuse/skills (opens in a new tab) |
| vue-best-practices (opens in a new tab) | Vue 3 + TypeScript best practices | vuejs-ai/skills (opens in a new tab) |
| vue-router-best-practices (opens in a new tab) | Vue Router best practices | vuejs-ai/skills (opens in a new tab) |
| vue-testing-best-practices (opens in a new tab) | Vue testing best practices | vuejs-ai/skills (opens in a new tab) |
| web-design-guidelines (opens in a new tab) | Web design guidelines for building beautiful interfaces | vercel-labs/agent-skills (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. If you primarily work with Vue/Vite/Nuxt, this aims to be a comprehensive one-stop collection.
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 sync vendored skillsGenerate 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.
Vendored skills from external repositories retain their original licenses - see each skill directory for details.
main, last pushed 23 June 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.