typescript-best-practices — скилл для Claude Code: правила TypeScript
Скилл задаёт агенту правила работы с типами в .ts и .tsx: дискриминированные объединения, брендированные типы, проверка на границах.
npx skills add cursor/plugins --skill typescript-best-practices -a claude-codeЧто делает typescript-best-practices
Скилл включается, когда агент читает или правит файлы .ts и .tsx. Внутри — таблица правил: как моделировать варианты через литеральный дискриминант kind, зачем брендировать примитивы через & { readonly __brand: "X" }, почему внешние данные стоит держать в unknown, а не в any.
Отдельный блок про сужение типов: порядок от дискриминантного switch до as, требование к пользовательским type guard реально проверять утверждение, исчерпывающие проверки через const _exhaustive: never = x; в ветке по умолчанию. Схемы предлагается писать до ручных guard-ов и выводить тип из схемы, например через z.infer. Каждый as в коде — повод остановиться: без валидации он оборачивается падением в рантайме.
Скилл ссылается на два принципа — **type-system-discipline** и **boundary-discipline**, — их применяют первыми. Примеры паттернов лежат в references/patterns.md. Установка идёт через npx skills add с флагом под конкретную платформу; для GitHub Copilot команда другая — gh skill install.
Какие задачи решает
- смоделировать варианты состояния так, чтобы невозможные комбинации не компилировались
- заменить россыпь
asна валидацию на границе и именованные типы - вывести тип из схемы вместо ручного type guard по каждому полю
- добавить исчерпывающую проверку, которая ловит новый вариант при сборке
- убрать
console.logиз поставляемого кода в пользу структурного логгера
Примеры запросов агенту
- Проверь этот
.ts-файл по правилам скилла и убери всеas - Перепиши объединение с опциональными полями на дискриминированное по
kind - Добавь исчерпывающую проверку в
switchпо вариантам ответа API
Как установить typescript-best-practices
1Через Skills CLI (Vercel)
npx skills add cursor/plugins --skill typescript-best-practices -a claude-code2Вручную: положить файлы
~/.claude/skills/typescript-best-practices/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/typescript-best-practices/
1Через Skills CLI (Vercel)
npx skills add cursor/plugins --skill typescript-best-practices -a codex2Вручную: положить файлы
.agents/skills/typescript-best-practices/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add cursor/plugins --skill typescript-best-practices -a cursor2Вручную: положить файлы
.cursor/skills/typescript-best-practices/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install cursor/plugins typescript-best-practices2Вручную: положить файлы
.github/skills/typescript-best-practices/SKILL.md1Через Skills CLI (Vercel)
npx skills add cursor/plugins --skill typescript-best-practices -a gemini-cli2Командой платформы
gemini skills install https://github.com/cursor/plugins --path pstack/skills/typescript-best-practicesВручную: положить файлы
.devin/skills/typescript-best-practices/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add cursor/plugins --skill typescript-best-practices -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о typescript-best-practices
Как установить typescript-best-practices в Claude Code?
Выполните npx skills add cursor/plugins --skill typescript-best-practices -a claude-code. Скилл окажется в ~/.claude/skills/typescript-best-practices/SKILL.md.
Что делает typescript-best-practices?
Задаёт агенту набор правил для TypeScript: дискриминированные объединения, брендированные типы, unknown вместо any, валидация на границе и исчерпывающие проверки. Срабатывает при чтении или правке .ts и .tsx.
С какими ещё платформами работает скилл?
Кроме Claude есть установка для Codex, Cursor, GitHub Copilot, Gemini CLI и OpenCode — у каждой свой флаг или команда. Для GitHub Copilot используется gh skill install cursor/plugins typescript-best-practices.