采用 submodules / vendors / manual 三层模型维护技能内容。
当前已包含手写技能:
code-review-expertgit-commit-gengit-excludepr-reviewskill-writersmart-planwriting-changelogs
当前已接入外部技能来源:
https://github.com/antfu/skills
.
├── meta.ts # 核心配置(submodules/vendors/manual)
├── scripts/cli.ts # init/sync/check/cleanup
├── eslint.config.mjs # @antfu/eslint-config
├── tsconfig.json
├── instructions/ # 可选:项目级生成提示
├── sources/ # 需要自行整理内容的资料仓库(子模块)
├── vendor/ # 外部现成 skills 来源(子模块,仅做来源索引)
└── skills/ # 分发目录
└── <skill-name>/
├── SKILL.md
├── GENERATION.md
└── SYNC.md
pnpm install
pnpm lint
pnpm typecheckpnpm start:init
pnpm start:check
pnpm start:cleanup说明:当前不把外部仓库内容同步到本仓库
skills/,vendor仅做来源索引。
仓库内置了一个 GitHub Action,会在主分支相关文件变更后全量重写固定的 pinned issue,用于展示当前 skills registry:
Manual Skills:来自meta.ts的manual与skills/<name>/SKILL.mdVendor Sources:来自meta.ts的vendorsSubmodule Sources / Source Repos:来自meta.ts的submodulesConsistency Checks:检查skills/、meta.ts、README.md是否同步
当前 Manual Skills 会基于 name、标题和 description 做规则分类与 tags 生成,并按分类分组展示。
后续如果要接入 AI,建议只用于:
- 润色每个 skill 的一句话摘要
- 在规则无法明确命中时兜底做分类判断
不要让 AI 负责事实提取或目录一致性判断。
本地预览命令:
pnpm registry:build
pnpm registry:test启用该 workflow 前,请先在 GitHub 仓库变量中配置:
PINNED_ISSUE_NUMBER=<固定 issue 编号>
对应 workflow 文件:
.github/workflows/update-pinned-registry.yml
# 交互式选择要安装的技能
pnpx skills add snailuu/skill
# 直接安装指定技能
pnpx skills add snailuu/skill --skill git-exclude
pnpx skills add snailuu/skill --skill code-review-expert
pnpx skills add snailuu/skill --skill git-commit-gen
pnpx skills add snailuu/skill --skill pr-review
pnpx skills add snailuu/skill --skill skill-writer
pnpx skills add snailuu/skill --skill smart-plan
pnpx skills add snailuu/skill --skill writing-changelogs
# 检查并更新已安装技能
pnpx skills check
pnpx skills update这里仅记录 meta.ts 中 vendors 配置的外部来源仓库,不展开列出对方仓库内部的技能清单。
| Vendor | Source |
|---|---|
| antfu | antfu/skills |
- 在
meta.ts的submodules增加你要跟踪的资料仓库。 - 在
meta.ts的vendors增加外部技能映射。 - 仅当你需要二次分发时,再执行
tsx scripts/cli.ts sync。