用途
setup-fernando-skills 用于为当前代码仓库搭建 Fernando Herrera 规范驱动技能(/spec、/spec-impl)所依赖的按仓库配置。它不是一个确定性脚本,而是提示驱动的技能:先探索仓库现状,再逐项询问,最后写入配置。
主要能力
该技能会配置三项内容:
- specs 目录:
/spec保存文件的位置(默认specs/)。 - 响应语言:西班牙语或英语。技能默认镜像用户提示语言,此配置可强制指定一种。
- 分支前缀:
/spec-impl创建分支时使用的前缀(默认spec-)。
使用方式
技能按以下流程运行:
-
探索:读取仓库根目录的
CLAUDE.md和AGENTS.md(是否存在、是否已有## Fernando skills块)、specs/目录(是否存在、内含多少规范)、.git/config(是否为 git 仓库,/spec-impl需要 git)。 -
呈现发现并询问:先总结发现,然后逐项走完三个决策(一次只问一个问题,得到答案后再继续):
- A 节 — specs 目录:
/spec将草稿保存为specs/NN-slug.md。若已在别处跟踪规范/RFC(如docs/specs/、rfcs/等),可将技能指向该路径。默认specs/。仅当仓库文件树中已存在不同约定时才询问。 - B 节 — 响应语言:默认
/spec和/spec-impl以用户初始提示所用语言回答。选项:Auto(镜像提示语言,默认)、Spanish(始终西班牙语)、English(始终英语)。 - C 节 — 分支前缀:
/spec-impl开始实现时创建分支,默认名为spec-NN-slug。若仓库使用不同约定(feature/、feat/等),在此设置。默认spec-。仅当 git 日志显示不同约定时才询问。
- A 节 — specs 目录:
-
写入配置块:按顺序选择目标文件——若
CLAUDE.md存在则用它,否则若AGENTS.md存在则用它,否则创建CLAUDE.md。追加(若已有块则替换)如下内容,并填入答案:
## Fernando skills
This repo is configured for Fernando Herrera's spec-driven skills (`/spec`, `/spec-impl`).
- **specs directory:** `specs/`
- **response language:** auto
- **branch prefix:** `spec-`
State machine for the status header in `specs/NN-slug.md`
(default English; equivalents in any language are accepted):
`Draft` → `In review` → `Approved` → `Implemented` (or `Obsolete`).
Claude must never change the status automatically; transitions are human-driven.
`/spec-impl <NN-slug>` only runs when the spec's status means **Approved**
(`Approved`, `Aprobado`, or the equivalent in the language your team uses).
若已存在 ## Fernando skills 块,则就地替换其内容,不要重复。
- 确认:告知用户写入了哪个文件、当前配置了哪些值,以及可以运行
/spec <topic>开始新规范,规范达到 Approved 后运行/spec-impl <NN-slug>。
适用场景
适用于使用 Fernando Herrera 规范驱动技能(/spec、/spec-impl)的代码仓库,需要为每个仓库配置规范目录、响应语言和分支前缀时。
限制
该技能是提示驱动的,不是确定性脚本。/spec-impl 需要 git 仓库。状态头的状态转换由人工驱动,Claude 不得自动更改状态。/spec-impl <NN-slug> 仅在规范状态为 Approved(或对应语言等价词)时运行。