BB Docker
Создает, отлаживает, укрепляет и выпускает Docker-контейнеры, образы и стеки Compose. Используйте при написании или проверке Dockerfile, файла compose или шага сборки CI; когда контейнер немедленно завершается, входит в цикл перезапуска, завершается из-за нехватки памяти (OOM-killed), зависает при остановке или завершается с кодом 137/139/127; когда опубликованный порт недоступен, контейнеры не могут разрешить друг друга или запросы зависают за VPN; когда диск заполняется, а `/var/lib/docker` не очищается; когда сборка медленная, кеш никогда не попадает или терпит неудачу только в CI; когда проблема заключается в `exec format error` или несоответствии musl и glibc; при выборе базового образа или многоэтапной компоновки; когда вход в реестр или ограничение скорости скачивания не удается; когда секрет должен оставаться вне истории образа; и когда тома нуждаются в резервном копировании, восстановлении или исправлении разрешений. Охватывает ловушки Compose и различия Desktop/colima/OrbStack/Podman. Не для манифестов Kubernetes или планирования кластера (`k8s`).
машинный переводПоказать оригиналСкрыть оригинал«Builds, debugs, hardens, and ships Docker containers, images, and Comp…»
Builds, debugs, hardens, and ships Docker containers, images, and Compose stacks. Use when writing or reviewing a Dockerfile, a compose file, or a CI build step; when a container exits instantly, restart-loops, is OOM-killed, hangs on stop, or exits 137/139/127; when a published port is unreachable, containers cannot resolve each other, or requests hang behind a VPN; when the disk fills and `/var/lib/docker` will not prune; when a build is slow, the cache never hits, or fails only in CI; when `exec format error` or a musl-versus-glibc break is the problem; when choosing a base image or a multi-stage layout; when a registry login or pull rate limit fails; when a secret must stay out of image history; and when volumes need backup, restore or a permission fix. Covers Compose traps and Desktop/colima/OrbStack/Podman differences. Not for Kubernetes manifests or cluster scheduling (`k8s`).
Создает, отлаживает, укрепляет и выпускает Docker-контейнеры, образы и стеки Compose.
Как процесс B 72/100 · Почти готов — слабые места: входы и предусловия, повторный запуск
Как улучшить
- Тело SKILL.md длиннее 5 000 токенов: вынесите справочные детали в references/ и подключайте по необходимости.
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 4
✓ Критических и высоких находок нет
Средние и низкие: 4
-
низкая Опасные команды
cmd-privilegedebug.md:66Повышение привилегий / права на запись для всех (с отрицанием — текст это запрещает)- On a bind mount → UID mismatch; fix with matching numeric UID at build, never `chmod 777` (storage.md).
с отрицанием -
низкая Опасные команды
cmd-privilegeSKILL.md:191Повышение привилегий / права на запись для всех (строка таблицы в документации)| `chmod 777` on a bind mount | Makes the symptom go away and the data world-writable; the mismatch is numeric UID, not permission bits | `COPY --chown=<uid>:<gid>` at build and run as that UID (`stor
таблица -
низкая Опасные команды
cmd-privilegestorage.md:17Повышение привилегий / права на запись для всех (в кавычках — упоминание, а не команда)- Permission denied = numeric UID mismatch between the container user and the host owner. Fix at build (`COPY --chown=10001:10001`, run as that UID); `chmod 777` is the finding, not the fix.
в кавычках
Ещё 1 совпадений отнесены к цитатам в документации скилла по безопасности и не считаются находками.
Просканировано файлов: 17. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- предупреждение
name-formatname должен быть в kebab-case (строчные буквы, цифры, дефисы) - предупреждение
body-longтело SKILL.md ≈ 5657 токенов (рекомендуется < 5000); вынесите детали в references/ - заметка
frontmatter-keyнеизвестное поле фронтматтера "slug" - заметка
frontmatter-keyнеизвестное поле фронтматтера "homepage" - заметка
frontmatter-keyнеизвестное поле фронтматтера "changelog"
Процессный рейтинг: все десять параметров 72/100
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 30Повторный запуск. Изменяющих операций: 27, без проверки текущего состояния
- 60Инструменты и файлы. Используются инструменты (bash, web, python, node), но во frontmatter они не объявлены
- 60Результат и критерий готовности. Формат результата описан, критерия завершения нет
- 70Стоимость исполнения. Тело инструкции 5657 токенов
- 100Шаги. Шагов: 43
- 100Когда включается. Сказано, когда применять и когда не применять
- 100Ошибки и развилки. Развилок: 1, есть раздел про ошибки
- 100Согласованность. Имя и обязательные поля на месте
- 100Отчётность по ходу. Скилл сообщает о ходе работы
- medium Правила безопасности и запреты внутри скилла: их место в системном промпте, здесь они не защищают
- low Разделов верхнего уровня: 13. Похоже на несколько доменов в одном скилле
- low Ответ описан самодельной разметкой (3 тегов): типизированный вызов надёжнее
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +5В description нет примеров фраз, по которым скилл должен срабатывать
- +3Длина description 896: рекомендуется 120–800 символов
- +4Нет примеров входа/выхода
- +1Лицензия не указана
- +2Инструкции на одном языке
- +4Описание говорит, когда скилл НЕ применять
- +4Структура: 13 заголовков
- +3Пошаговые инструкции: 43 пунктов
- +3Формат ответа описан явно
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 66.