AIKraft/Skills/Отладка Buttercup

Отладка Buttercup

Debugs the Buttercup CRS (Cyber Reasoning System) running on Kubernetes. Use when diagnosing pod crashes, restart loops, Redis failures, resource pressure, disk saturation, DinD issues, or any service misbehavior in the crs namespace. Covers triage, log analysis, queue inspection, and common failure patterns for: redis, fuzzer-bot, coverage-bot, seed-gen, patcher, build-bot, scheduler, task-server

trailofbits official Дизайн

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

Навык предназначен для диагностики и устранения сбоев в Kubernetes-кластере Buttercup CRS (namespace crs), включая падения подов, циклы перезапуска, проблемы с Redis и нехватку ресурсов. Он охватывает триаж, анализ логов, инспекцию очередей и выявление типичных паттернов сбоев для всех сервисов системы.

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

  • Пода в namespace crs находятся в состояниях CrashLoopBackOff, OOMKilled или постоянно перезапускаются.
  • Наблюдается каскадный сбой: несколько сервисов перезапускаются одновременно из-за недоступности Redis.
  • Redis не отвечает, показывает предупреждения AOF или очереди растут, но задачи не выполняются.
  • Узлы кластера сообщают о DiskPressure, MemoryPressure или PID pressure.
  • Build-bot не может подключиться к Docker daemon (сбои DinD) или Scheduler застрял.

Как работает

  1. Выполнить первичный триаж: проверить статус подов, события (events) и предупреждения с помощью kubectl get pods, events в namespace crs.
  2. Изолировать проблему: использовать kubectl describe pod и kubectl logs (включая --previous для упавших контейнеров) для анализа причин перезапуска и ресурсов.
  3. Проверить инфраструктуру: оценить давление на узлы (kubectl top), использование диска внутри подов и статус Redis (память, AOF, клиенты).
  4. Проанализировать очереди: проверить длину стримов, лаг групп потребителей и количество задач в разных состояниях через redis-cli.
  5. Проверить целостность конфигурации: убедиться, что фактические ресурсы и тома подов соответствуют заявленным Helm values.
  6. При необходимости запустить скрипт автоматического триажа bash { baseDir }/scripts/diagnose.sh для сбора комплексного снимка состояния.

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

Почему под fuzzer-bot постоянно перезапускается с ошибкой OOMKilled?
Redis не отвечает, и все сервисы в crs падают — найди причину каскадного сбоя.
Задачи зависли в очереди fuzzer_build_queue, проверь лаг потребителей и состояние Redis.

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

  • Доступ к Kubernetes-кластеру с namespace crs
  • Утилита kubectl и redis-cli
  • Скрипты из репозитория: deployment/collect-logs.sh, scripts/diagnose.sh

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

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

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

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