spec · juliusbrussee — скилл для Claude Code: что делает и как установить
Создаёт и обновляет файл SPEC.md в корне проекта, фиксируя цели, инварианты, задачи и найденные баги в лаконичном стиле caveman.
npx skills add JuliusBrussee/cavekit --skill spec -a claude-codeЧто делает spec
Скилл выступает единственным инструментом для изменения SPEC.md в корне проекта. Он создаёт спецификацию с нуля по описанию идеи либо извлекает структуру из существующей кодовой базы. Также поддерживаются точечные правки разделов и протоколирование ошибок.
Для работы требуется файл FORMAT.md в корне репозитория. Оттуда берутся правила разметки caveman и формат таблиц. При обработке ошибок через аргумент bug: скилл находит первопричину в коде и добавляет запись в раздел §B. Если необходимо, он формулирует новый инвариант в §V для предотвращения повторных сбоев.
Все правки выводятся в виде diff и применяются строго после подтверждения пользователем. Скилл выполняется прямо в основном диалоге. Никаких субагентов или фоновых сборок он не запускает.
Какие задачи решает
- составить единый файл SPEC.md по описанию задачи
- извлечь инварианты и архитектурные ограничения из готового кода
- внести точечные изменения в разделы спецификации без перезаписи всего файла
- зафиксировать первопричину бага в таблице §B с новым инвариантом
Примеры запросов агенту
- напиши спецификацию для сервиса обработки платежей
- bug: сброс авторизации при обновлении страницы
- amend §V.3: измени таймаут запроса на десять секунд
Как установить spec
1Через Skills CLI (Vercel)
npx skills add JuliusBrussee/cavekit --skill spec -a claude-code2Вручную: положить файлы
~/.claude/skills/spec/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/spec/
1Через Skills CLI (Vercel)
npx skills add JuliusBrussee/cavekit --skill spec -a codex2Вручную: положить файлы
.agents/skills/spec/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add JuliusBrussee/cavekit --skill spec -a cursor2Вручную: положить файлы
.cursor/skills/spec/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install JuliusBrussee/cavekit spec2Вручную: положить файлы
.github/skills/spec/SKILL.md1Через Skills CLI (Vercel)
npx skills add JuliusBrussee/cavekit --skill spec -a gemini-cli2Командой платформы
gemini skills install https://github.com/JuliusBrussee/cavekit --path skills/specВручную: положить файлы
.devin/skills/spec/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add JuliusBrussee/cavekit --skill spec -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Из того же набора9
Другие версии spec
Похожие
Рядом в теме «Настройка агента: память, контекст, субагенты»
Все скиллы по теме «Настройка агента: память, контекст, субагенты» →Вопросы о spec
Как установить spec в Claude Code?
Выполните команду npx skills add JuliusBrussee/cavekit --skill spec -a claude-code. Навык будет добавлен в файл конфигурации ~/.claude/skills/spec/SKILL.md.
Что делает скилл spec?
Он ведёт и модифицирует файл SPEC.md в корне репозитория, управляя разделами целей, ограничений, интерфейсов, инвариантов, задач и ошибок.
Что нужно подготовить перед запуском spec?
В корне проекта должен присутствовать файл FORMAT.md, из которого скилл считывает правила синтаксиса caveman и форматирование таблиц.
Исходный текст
SKILL.md · MIT
--- name: spec description: | Create, amend, or backprop bugs into SPEC.md at repo root. Sole mutator of the project spec. Triggers when the user asks to write a spec, start a new spec, distill a spec from existing code, add invariants, amend sections (§G, §C, §I, §V, §T, §B), or record a bug via backprop. Common phrasings: "write the spec for...", "new spec", "bug: ...", "amend §V.3", "distill spec from code", "spec this idea". Reads and follows FORMAT.md for the caveman encoding rules and pipe-table shape of §T and §B. --- # spec — spec mutator Read `FORMAT.md` at repo root if not already loaded. Caveman skill applies to all writes here. ## DISPATCH Inspect user request and project state: 1. No `SPEC.md` at repo root AND args describe idea → **NEW** 2. No `SPEC.md` AND `from-code` in args → **DISTILL** 3. `SPEC.md` exists AND args start `bug:` → **BACKPROP** 4. `SPEC.md` exists AND args start `amend` → **AMEND** 5. `SPEC.md` exists, no args → ask user which mode ## INPUTS — spec is the sole mutator The other verbs produce material; spec writes it. Ingest their handoff blocks into the right section, show a diff, write on OK: - **grill** → sharpened §G + §C - **research** → §R rows (add the §R section if absent) - **review** → drafted §V lines + the risk verdict - **deepen** → §I/§V/§T amendments ⊥ rewrite a section the handoff did not name. Sectioned ownership (see FORMAT.md). ## NEW — idea → spec Input: user idea. If it arrived fuzzy, prefer running **grill** first. Steps: 1. Extract goal (1 line, caveman). → §G. 2. List constraints user stated or implied. → §C. 3. List external surfaces user named. → §I. 4. §R only if **research** ran — else omit the section (right-size). 5. Propose initial invariants. → §V (numbered V1…). 6. Break goal into ordered tasks. → §T pipe table, all status `.`, ids T1… 7. §B section with header row only (`id|date|cause|fix`). Write to `SPEC.md`. Show user full file. Ask: "spec OK? `/review` if high-blast-radius, else `/build`." ## DISTILL — code → spec Walk repo. Produce §G (infer from README/package.json/main entry), §C (infer from stack), §I (enumerate public APIs/CLIs/configs), §V (derive from tests and assertions), §T (one task per known TODO or missing test), §B (empty). Caveman everywhere. Flag uncertain items with `?` in text so user can confirm. ## BACKPROP — bug → §B + §V Input: `bug: <description>`. Steps: 1. Parse bug description. 2. Find root cause (read relevant code). 3. Decide: would a new invariant catch recurrence? If yes → draft `V<next>`. 4. Append §B row: `B<next>|<date>|<cause>|V<N>`. 5. Append new invariant to §V. 6. If fix also changes behavior → add/update §T rows. 7. Show diff. Apply only on user OK. Rule: every bug gets a §B entry. Invariant optional but preferred. ## AMEND — targeted edit Input: `amend §V.3` or `amend §T` etc. Read that section. Show current. Ask user what changes. Write. Show diff. Never silently rewrite sections user did not name. ## OUTPUT RULES - Caveman format per `FORMAT.md`. - Preserve identifiers, paths, code verbatim. - Numbering monotonic — never reuse §V.N or §B.N. - §T row `cites` column ! list §V/§I deps: `T5|.|impl auth mw|V2,I.api`. ## NON-GOALS - No sub-agents. Main thread writes. - No dashboards, no logs, no state files beyond SPEC.md itself. - No auto-build after spec. User invokes build explicitly.
© JuliusBrussee · MIT · JuliusBrussee/cavekit