Vibeleaderboard
Index / tool

Anthony Fu's Skills

github.com/antfu/skills
Visit github.com
Category
AI Agents
Rank
No. 2062Tools index

Previous survey · No. 2069 ·

Pricing
Open Source
Type
TOOL
Use case
Agent Building
Interfaces
Agent Skill / Plugin
Builder
antfu
Date

About

A curated collection of Agent Skills reflecting Anthony Fu's preferences, experience, and best practices, bundled with usage documentation for the tools they cover. The skills are generated from source documentation and kept in sync with it; the author describes the repository as a proof of concept for that generation approach and notes the skills have not been fully tested in practice. They install through the `skills` CLI, per skill or globally.

What it does

A set of plain markdown instruction packs that a coding agent loads on demand for the Vue, Vite and Nuxt world: Vue, Nuxt, Pinia, Vite, VitePress, Vitest, UnoCSS and pnpm. Two packs are hand-written and opinionated, covering how Anthony Fu sets up projects and opens pull requests. The rest are produced by an agent reading each project's official docs, which the repository pins as git submodules, and each generated pack records the upstream commit it was built from so a later refresh can diff only what changed.

Why it's ranked here

The mechanism is the argument. Pinning upstream docs as submodules and stamping each generated pack with the source commit gives a concrete refresh path: diff the docs since that commit, update the affected references. The packs read as current, naming Vite 8 on Rolldown and pnpm 12 as a Rust rewrite. The hand-written pack is dense with specific, checkable defaults rather than slogans. It is MIT licensed. Against that, the author states plainly that real-world performance has not been fully tested, so treat it as a strong reference set, not a proven one.

What's good

The hand-written pack gives agents rules they can act on: always enable the antislop lint option, expose a single ci script that chains lint, typecheck, unused-code checks and tests, prefer npm trusted publishing over long-lived tokens, and use a small metadata endpoint to check package versions instead of downloading full registry payloads. The generated packs open with a quick reference and index topics into core, features and advanced tables, so an agent pulls one focused reference instead of a whole manual. The generator workflow is reusable: fork, list your own sources, sync, then ask an agent to generate one project at a time.

Tradeoffs

The author has not fully tested how well the skills perform in practice. Skills can be missed: the README concedes agents sometimes fail to pull them in when expected, and suggests referencing them from an always-loaded agent instructions file. Generation is done by an agent, not a script, so quality depends on that run and the per-project instructions. The tooling only manages submodules and stale folders; its cleanup command deletes skill folders not listed in the config, and the yes flag skips confirmation. There is no test script in the manifest, only linting. Nitro is configured as a source but no Nitro pack is listed.

How to use it well

Best fit is someone already working in Vue, Vite or Nuxt who wants agents to follow modern defaults such as Composition API with typed script setup and ESM-only config. Install only the packs you need rather than all of them, and if you rely on one heavily, reference it from your always-loaded instructions so it is not skipped. Expect strong opinions in the hand-written pack, like pnpm catalogs and no new path aliases. For other stacks it offers a template for building your own generated collection, not content you can use directly.

Technical notes+

meta.ts defines a submodules map (vue, nuxt, vite, unocss, pnpm, pinia, vitest, vitepress, nitro) and a manual list (antfu, antfu-create-pr). scripts/cli.ts, run via the package.json start script, exposes init, sync, check and cleanup subcommands using @clack/prompts; sync runs git submodule update --remote --merge, check counts commits behind upstream per submodule, and cleanup removes submodules and skills directories absent from meta.ts, with -y/--yes skipping prompts. AGENTS.md defines the generation contract: per-project SKILL.md index, GENERATION.md with the source git SHA, and category-prefixed references. skills/vue/GENERATION.md records a pinned SHA. instructions/vue.md carries the Vue-specific preferences echoed in skills/vue/SKILL.md. skills/pnpm/SKILL.md cites pnpm/pnpm as its source while meta.ts points the pnpm submodule at pnpm/pnpm.io.

Observed

License
MIT
Language
TypeScript tooling, markdown skill content
Install surface
Installed through the skills CLI, per skill or globally with -g
Interface
Agent Skills markdown files plus a local CLI with init, sync, check and cleanup commands
Source tracking
Upstream documentation pinned as git submodules; generated skills record the source git SHA
Skill types
Hand-written opinionated skills and skills generated from official documentation
Tests
No test script in package.json; only lint, start and prepare
Maturity
Author describes it as a proof of concept not fully tested in practice

Read from README.md, package.json, LICENSE.md, meta.ts, scripts/cli.ts, AGENTS.md, skills/antfu/SKILL.md, skills/vue/SKILL.md, skills/vue/GENERATION.md, skills/vite/SKILL.md, skills/pnpm/SKILL.md, instructions/vue.md, skills/antfu/references/setting-up.md.

Tags

agent-skilljavascripttoolingdocumentationclibest-practices

Tech Stack

Node.jsTypeScript

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.