AIKraft/Skills/Бэкенд-микросервисы на Go

Бэкенд-микросервисы на Go

Go backend development best practices for microservices with clean architecture, observability, and production-ready patterns

mindrally official Разработка

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

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

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

  • Разработка микросервисов с применением чистой архитектуры и разделения на слои (handlers, services, repositories, domain models).
  • Настройка наблюдаемости через OpenTelemetry, включая распределенный трейсинг, метрики в формате Prometheus и структурированное логирование.
  • Обеспечение безопасности и надежности через валидацию входных данных, безопасное использование goroutines и корректную обработку ошибок.
  • Организация процесса тестирования с использованием модульных и интеграционных тестов, а также тестовых контейнеров.

Как работает

  1. Соблюдать модульную структуру проекта с директориями cmd, internal, pkg, api, configs и test.
  2. Применять интерфейс-ориентированную разработку с явным внедрением зависимостей и писать функции с единой ответственностью.
  3. Использовать контекст (context) как первый параметр для управления временем жизни запросов, таймаутами и отменой операций.
  4. Реализовать обработку ошибок с явной проверкой, обертыванием (fmt.Errorf) и кастомными типами ошибок.
  5. Интегрировать OpenTelemetry для добавления спанов, пропации контекста трейса, сбора метрик и структурированного логирования с trace IDs.
  6. Применять безопасные практики конкурентности: использование каналов или sync-примитивов для защиты общего состояния и реализацию graceful shutdown.

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

Создай микросервис на Go с чистой архитектурой, включающий обработку ошибок и логирование через OpenTelemetry.
Реализуй функцию с использованием goroutines и каналов для безопасной конкурентной обработки данных.
Настрой структуру проекта для Go-приложения с разделением на cmd, internal и pkg, а также добавь тесты.

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

  • Go (язык программирования)
  • OpenTelemetry (для трейсинга и метрик)
  • golangci-lint (для линтинга в CI/CD)

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

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

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

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