К основному содержанию
скилл CX Codex

safe-action-testing — скилл для Claude Code: тесты next-safe-action

Подсказывает агенту, как писать тесты для экшенов и хуков next-safe-action на Vitest: валидация, middleware, серверные ошибки.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add next-safe-action/skills --skill safe-action-testing -a claude-code
Открыть на GitHub

Что делает safe-action-testing

Скилл включается, когда вы просите написать тесты для next-safe-action. Агент получает готовые шаблоны на Vitest: прямой вызов серверного экшена, проверка result.data, validationErrors и serverError, тесты экшенов с bind-аргументами.

Отдельные разделы — про middleware и хуки. Для middleware показано, как собрать клиент с нужной цепочкой и замокать сессию через vi.mock, а для хуков — renderHook из React Testing Library с проверкой состояний isIdle, isExecuting, hasSucceeded и вызовом reset. Есть утилиты flattenValidationErrors и formatValidationErrors и мок next/navigation для редиректов.

Ошибки валидации bind-аргументов выбрасываются как ActionBindArgsValidationError, поэтому в тестах их ловят через rejects.toThrow(), а не через result.validationErrors. Форматы digest у NEXT_REDIRECT — внутренняя деталь Next.js, и в самом скилле отмечено, что между версиями они меняются.

Какие задачи решает

  • написать тесты для серверного экшена next-safe-action
  • проверить, что middleware прокидывает userId в контекст
  • замокать сессию и убедиться, что без неё возвращается serverError
  • протестировать хук useAction через renderHook
  • поймать ошибку валидации bind-аргументов в тесте

Примеры запросов агенту

  • Напиши тесты на Vitest для экшена createUser из @/app/actions, проверь успех и ошибки валидации
  • Протестируй middleware с проверкой сессии: собери клиент и замокай getSession
  • Напиши тест хука useAction через renderHook, проверь состояния и reset

Как установить safe-action-testing

1Через Skills CLI (Vercel)

npx skills add next-safe-action/skills --skill safe-action-testing -a claude-code

2Вручную: положить файлы

~/.claude/skills/safe-action-testing/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/safe-action-testing/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о safe-action-testing

Как установить safe-action-testing в Claude Code?

Выполните npx skills add next-safe-action/skills --skill safe-action-testing -a claude-code. Файл скилла появится по пути ~/.claude/skills/safe-action-testing/SKILL.md.

Что делает safe-action-testing?

Даёт агенту шаблоны тестов на Vitest для экшенов и хуков next-safe-action: прямой вызов экшена, middleware, renderHook, ошибки валидации и серверные ошибки.

Чем тестируются bind-аргументы?

Ошибки валидации bind-аргументов выбрасываются как ActionBindArgsValidationError, поэтому их проверяют через rejects.toThrow(), а не через поле validationErrors в результате.

Похожие скиллы

Все скиллы по теме «Тесты и QA» →
improve-codebase-architecture Matt Pocock Скилл ищет архитектурные узкие места в кодовой базе и показывает варианты углубления модулей в HTML-отчёте. Подойдёт для ревью перед рефакторингом. 1 163 035установок design-taste-frontend Leonxlnx Скилл задаёт арт-дирекцию для публичных страниц и рабочих экранов, а затем проверяет результат в браузере по скриншотам. Нужен, когда интерфейс выглядит шаблонным или недоработанным. CX Codex +1 678 700установок tdd Matt Pocock Скилл управляет циклом красный-зелёный в TDD: проверяет, что тесты пишутся до кода, держит их на уровне публичных интерфейсов и не завязывает на внутреннюю структуру. 1 141 062установок skill-creator официальный anthropics Помогает создать новый скилл, доработать существующий и проверить результат через тестовые промпты и оценки. 414 180установок agent-browser vercel-labs Скилл управляет браузером через CLI: открывает страницы, заполняет формы, нажимает кнопки и проверяет веб-приложения. Подходит для задач, где агенту нужно действовать в интерфейсе. CX Codex +1 1 200 000установок prototype Matt Pocock Создаёт временный прототип, чтобы проверить логику, модель состояния или вид интерфейса до работы над основным кодом. 986 201установок

Из того же набора3

Спонсоры проекта

Компании, которые помогают держать аналитику открытой