golang-error-handling
Идиоматическая обработка ошибок в Go: создание, обёртывание через %w, проверки errors.Is/As, Join, кастомные типы, сентинелы, panic/recover и структурированное логирование через slog. Применяется при создании, обёртывании, проверке или логировании ошибок в Go-коде. Для специфики samber/oops → golang-samber-oops, для экосистемы slog → golang-samber-slog.
Что делает навык
Навык обеспечивает идиоматическую обработку ошибок в Go, включая создание, обёртывание через %w, проверки через errors.Is/As, Join, кастомные типы, сентинелы, panic/recover и структурированное логирование через slog. Он гарантирует, что каждая ошибка либо обрабатывается, либо распространяется с контекстом, исключая тихие сбои и дублирование логов.
Когда применять
- Написание нового кода обработки ошибок с соблюдением лучших практик Go.
- Ревью изменений в PR, фокусируясь на проглоченных ошибках, отсутствии контекста при обёртывании и misuse panic.
- Аудит существующей кодовой базы на наличие нарушений правил обработки ошибок с использованием параллельных суб-агентов.
- Логирование ошибок с использованием структурированного логгера slog.
Как работает
- Определить режим работы: Coding (написание), Review (ревью PR) или Audit (аудит кодовой базы).
- В режиме Coding следовать лучшим практикам последовательно; опционально запустить фоновый суб-агент для поиска нарушений (проглоченные ошибки, пары log-and-return) в смежном коде.
- В режиме Review проверить diff на наличие проглоченных ошибок, отсутствия контекста при обёртывании, пар log-and-return и misuse panic.
- В режиме Audit запустить до 5 параллельных суб-агентов для каждой категории (создание, обёртывание, правило единичной обработки, panic/recover, структурированное логирование) и консолидировать результаты.
- При использовании Claude Code явно включить многоагентную оркестрацию через ultracode.
Примеры запросов агенту
Что понадобится
- Claude Code (для использования ultracode в режиме оркестрации)
- samber/oops (для специфичных случаев, см. golang-samber-oops)
- slog (для структурированного логирования, см. golang-samber-slog)
Описание составлено по SKILL.md навыка, сверено 07.10.2026.
Как подключить
SKILL.md к навыкам ассистентаНавык — папка с файлом SKILL.md (описание + инструкции) и опциональными скриптами. Ассистент (Claude, Claude Code и совместимые) подхватывает его по описанию и следует шагам.