AIKraft/Skills/golang-error-handling

golang-error-handling

Идиоматическая обработка ошибок в Go: создание, обёртывание через %w, проверки errors.Is/As, Join, кастомные типы, сентинелы, panic/recover и структурированное логирование через slog. Применяется при создании, обёртывании, проверке или логировании ошибок в Go-коде. Для специфики samber/oops → golang-samber-oops, для экосистемы slog → golang-samber-slog.

samber official Разработка ★ 3.4k

Что делает навык

Навык обеспечивает идиоматическую обработку ошибок в Go, включая создание, обёртывание через %w, проверки через errors.Is/As, Join, кастомные типы, сентинелы, panic/recover и структурированное логирование через slog. Он гарантирует, что каждая ошибка либо обрабатывается, либо распространяется с контекстом, исключая тихие сбои и дублирование логов.

Когда применять

  • Написание нового кода обработки ошибок с соблюдением лучших практик Go.
  • Ревью изменений в PR, фокусируясь на проглоченных ошибках, отсутствии контекста при обёртывании и misuse panic.
  • Аудит существующей кодовой базы на наличие нарушений правил обработки ошибок с использованием параллельных суб-агентов.
  • Логирование ошибок с использованием структурированного логгера slog.

Как работает

  1. Определить режим работы: Coding (написание), Review (ревью PR) или Audit (аудит кодовой базы).
  2. В режиме Coding следовать лучшим практикам последовательно; опционально запустить фоновый суб-агент для поиска нарушений (проглоченные ошибки, пары log-and-return) в смежном коде.
  3. В режиме Review проверить diff на наличие проглоченных ошибок, отсутствия контекста при обёртывании, пар log-and-return и misuse panic.
  4. В режиме Audit запустить до 5 параллельных суб-агентов для каждой категории (создание, обёртывание, правило единичной обработки, panic/recover, структурированное логирование) и консолидировать результаты.
  5. При использовании Claude Code явно включить многоагентную оркестрацию через ultracode.

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

Проанализируй этот PR на предмет корректности обработки ошибок в Go.
Напиши функцию с идиоматической обработкой ошибок, используя обёртывание через %w и slog.
Проведи аудит кодовой базы на наличие проглоченных ошибок и нарушений правила единичной обработки.

Что понадобится

  • Claude Code (для использования ultracode в режиме оркестрации)
  • samber/oops (для специфичных случаев, см. golang-samber-oops)
  • slog (для структурированного логирования, см. golang-samber-slog)

Описание составлено по SKILL.md навыка, сверено 07.10.2026.

Как подключить

1Скачать навык
# возьмите папку навыка «golang-error-handling» из репозитория: # https://github.com/samber/cc-skills-golang
2Положить папку с SKILL.md к навыкам ассистента
# положите папку навыка туда, где ассистент ищет skills: cp -r golang-error-handling/ ~/.claude/skills/golang-error-handling/

Навык — папка с файлом SKILL.md (описание + инструкции) и опциональными скриптами. Ассистент (Claude, Claude Code и совместимые) подхватывает его по описанию и следует шагам.