keeping-one-source-of-truth — скилл для Claude Code: одно место
Скилл для агентов, который держит каждый факт в одном месте и мешает копиям расходиться. Пригодится, когда значение так и просится во второй файл.
npx skills add riekelt/principal-engineer --skill keeping-one-source-of-truth -a claude-codeЧто делает keeping-one-source-of-truth
Скилл задаёт правило: у каждого факта о системе ровно один владелец, остальной код читает значение оттуда. По описанию автора он срабатывает в момент, когда скопировать значение кажется быстрее, чем сослаться на источник, — а также когда две копии уже разошлись.
Внутри семь пунктов доктрины. Сначала найти, кто уже владеет данными, и расширить этого владельца, а не заводить второго. Затем выводить значение на чтении, если платформа или существующий источник умеет его отдать, и попутно схлопывать найденные дубли. Отсутствующая запись обязана падать с ошибкой, а не подставлять тихое значение по умолчанию. Сгенерированное помечается отдельно, и правки в него не вносятся. Идентификаторы и состояния, по которым ветвится код, становятся константами или перечислениями, а не строками. При расхождении двух источников скилл велит сначала вслух сказать о противоречии, потом определить живое значение, свести всё к одному источнику и удалить проигравшего. Не молчать и не следовать тому, что прочитал первым: так ошибка тихо закрепляется.
Скилл требует предварительного знакомства с principal-engineering. Кеши и read-модели он допускает, если копия обновляется автоматически, а её устаревание ограничено и заметно; фикстуры могут намеренно замораживать копию реальности. Границы с TypeError: без базового principal-engineering часть ссылок в тексте повиснет.
Какие задачи решает
- найти существующего владельца данных перед добавлением нового поля
- прочитать значение из платформы вместо второй копии в коде
- схлопнуть дубль при правке старого кода
- заменить строковые идентификаторы на константы и перечисления
- разобрать расхождение двух источников и оставить один
Примеры запросов агенту
- Собираюсь добавить лимит в конфиг — проверь, кто уже владеет этим значением, и не заводи вторую копию
- В
settings.pyиservice.yamlразные пороги таймаута: разберись, какое значение живое, оставь один источник - Замени строки статусов в двух сервисах на общий перечислимый тип
Как установить keeping-one-source-of-truth
1Через Skills CLI (Vercel)
npx skills add riekelt/principal-engineer --skill keeping-one-source-of-truth -a claude-code2Вручную: положить файлы
~/.claude/skills/keeping-one-source-of-truth/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/keeping-one-source-of-truth/
1Через Skills CLI (Vercel)
npx skills add riekelt/principal-engineer --skill keeping-one-source-of-truth -a codex2Вручную: положить файлы
.agents/skills/keeping-one-source-of-truth/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add riekelt/principal-engineer --skill keeping-one-source-of-truth -a cursor2Вручную: положить файлы
.cursor/skills/keeping-one-source-of-truth/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install riekelt/principal-engineer keeping-one-source-of-truth2Вручную: положить файлы
.github/skills/keeping-one-source-of-truth/SKILL.md1Через Skills CLI (Vercel)
npx skills add riekelt/principal-engineer --skill keeping-one-source-of-truth -a gemini-cli2Командой платформы
gemini skills install https://github.com/riekelt/principal-engineer --path plugins/principal-engineer/skills/keeping-one-source-of-truthВручную: положить файлы
.devin/skills/keeping-one-source-of-truth/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add riekelt/principal-engineer --skill keeping-one-source-of-truth -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о keeping-one-source-of-truth
Как установить keeping-one-source-of-truth в Claude Code?
Выполните npx skills add riekelt/principal-engineer --skill keeping-one-source-of-truth -a claude-code. Файл скилла окажется по пути ~/.claude/skills/keeping-one-source-of-truth/SKILL.md.
Что делает keeping-one-source-of-truth?
Задаёт агенту доктрину: один владелец на факт, выводить вместо хранения, схлопывать дубли и громко сообщать о расхождении источников.
Что нужно для работы скилла?
Установленный скилл principal-engineering из того же репозитория — он указан как обязательная база.