SKILLEMALL.ai

CF remote-gpu-trainer

Развертывание, мониторинг и отладка длительных GPU-задач на АРЕНДОВАННЫХ/удаленных инстансах (AutoDL, RunPod, vast.ai, Lambda, Slurm, K8s): безопасность при отключении/оплате, устойчивость к прерываниям, возобновляемое сохранение контрольных точек, сортировка ошибок OOM/NaN.

машинный переводПоказать оригиналСкрыть оригинал«Deploy, monitor, and debug long GPU jobs on RENTED/remote instances (A…»

Deploy, monitor, and debug long GPU jobs on RENTED/remote instances (AutoDL, RunPod, vast.ai, Lambda, Slurm, K8s): teardown/billing safety, spot resilience, resumable checkpointing, OOM/NaN triage.

sickn33/agentic-awesome-skills Agent Skills автор: sickn33 MIT 43 файла · 6 скриптов тело ≈ 5 600 токенов Открыть источникgithub.com проанализирован 26 ч назад

Развертывание, мониторинг и отладка длительных GPU-задач на АРЕНДОВАННЫХ/удаленных инстансах (AutoDL, RunPod, vast.ai, Lambda, Slurm, K8s): безопасность при…

Как процесс F 47/100 · Не запустится — Скилл ссылается на файлы, которых нет в архиве: scripts/health_patrol.sh.template

ПроцедураKubernetesОперации и проектытип и темы размечены автоматически по тексту скилла
JSON
Технический рейтинг
C
68/100
безопасность, качество, тесты
Безопасность 60%
72
Качество 40%
63
Прогон на моделях
не было
Процессный рейтинг
F
47/100
Не запустится
Скилл ссылается на файлы, которых нет в архиве: scripts/health_patrol.sh.template
Инструменты и файлы вес 18
0
Результат и критерий готовности вес 14
0
Входы и предусловия вес 11
0
три самых слабых из десяти параметров · все десять

Такой же скилл встречается ещё в 2 местах: agentic-awesome-skills, agentic-awesome-skills

Чем это грозит

Находки средней серьёзности: скорее всего скилл честный, но прочитайте, что именно насторожило сканер.

Опасные команды средняя серьёзность

Ниже описан худший случай для этой категории. Здесь находка средней серьёзности: guard увидел признак, но не доказательство.

Если установить

Скилл содержит команды, которые удаляют файлы, переписывают диски или исполняют код, скачанный из сети. Агент может выполнить их без вопроса, если считает, что так требует инструкция.

Автору

Замените разрушительные команды на безопасные аналоги с подтверждением, ограничьте область действия конкретной папкой и не тяните код через curl | bash: укажите версию и контрольную сумму.

Утечка данных средняя серьёзность

Ниже описан худший случай для этой категории. Здесь находка средней серьёзности: guard увидел признак, но не доказательство.

Если установить

Инструкции или скрипты отправляют данные наружу: переменные окружения, ключи, содержимое файлов, историю чата. Вы можете не заметить этого в диалоге, потому что агент выполнит отправку как «часть задачи».

Автору

Если отправка не нужна для задачи, уберите её: каталоги помечают такие скиллы как подозрительные и снимают с выдачи. Если нужна, назовите адрес явно, объясните, что именно уходит, и дайте пользователю выключатель.

Сокрытие от пользователя средняя серьёзность

Ниже описан худший случай для этой категории. Здесь находка средней серьёзности: guard увидел признак, но не доказательство.

Если установить

Скилл просит агента что-то скрывать от вас: не показывать ошибки, не упоминать действия, отвечать иначе, чем было сделано. Вы теряете возможность контролировать, что агент реально сделал.

Автору

Прозрачность важнее гладкого ответа. Если хочется спрятать технический шум, попросите агента «кратко сообщить», а не «не сообщать».

Как улучшить

  1. Тело SKILL.md длиннее 5 000 токенов: вынесите справочные детали в references/ и подключайте по необходимости.
  2. В тексте есть ссылки на отсутствующие файлы: добавьте файлы или уберите ссылки.
Для прогона на моделях — необязательно
  • Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
  • spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.

Находки guard · 12

✓ Критических и высоких находок нет

Средние и низкие: 12
  • средняя Опасные команды cmd-persistence profiles/generic-ssh.md:151
    Механизм закрепления (cron / launchd / планировщик / автозапуск в реестре) (в кавычках — упоминание, а не команда)
    reboots often, add an `@reboot` cron or a systemd unit that re-launches the detached queue.
    в кавычках
  • средняя Утечка данных exfil-read-secret-files references/gotchas_universal.md:620
    Чтение файлов с учётными данными / секретами (определение детектора / чёрного списка)
    security hooks (rightly) block scp-ing a whole `~/.netrc` (it carries other machines' credentials).
    детектор
  • средняя Утечка данных exfil-read-secret-files references/gotchas_universal.md:627
    Чтение файлов с учётными данными / секретами (определение детектора / чёрного списка)
    grep -A 2 'machine api.wandb.ai' ~/.netrc | ssh <host> 'umask 077; cat > /root/.netrc && chmod 600 /root/.netrc'
    детектор
  • средняя Сокрытие от пользователя en-hide-from-user references/training/distributed-launch.md:249
    Инструкция скрыть действия от пользователя (определение детектора / чёрного списка)
    **Symptom**: bf16 FSDP run diverges where bf16 DDP was fine; or BN/positional buffers silently run in
    детектор
  • низкая Опасные команды cmd-background-process profiles/generic-ssh.md:120
    Запуск фонового / автозапускаемого процесса (в кавычках — упоминание, а не команда)
    `disown`. Always redirect stdin from `/dev/null` so the job never blocks reading the terminal.
    в кавычках
  • низкая Опасные команды cmd-background-process profiles/generic-ssh.md:133
    Запуск фонового / автозапускаемого процесса (в кавычках — упоминание, а не команда)
    → Fix: launch inside `tmux` (or `nohup … & disown`) **before** the long run starts — not after it is
    в кавычках
  • низкая Утечка данных net-credential-use profiles/lambda.md:47
    Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис) (определение детектора / чёрного списка)
    - **REST API** — `https://cloud.lambdalabs.com/api/v1`, auth `curl -u $LAMBDA_API_KEY:` (basic-auth,
    детектор
  • низкая Утечка данных net-credential-use profiles/lambda.md:297
    Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис) (в кавычках — упоминание, а не команда)
    via the console or `curl -u $LAMBDA_API_KEY: https://cloud.lambdalabs.com/api/v1/instances` — an Alert-
    в кавычках
  • низкая Утечка данных net-credential-use profiles/lambda.md:299
    Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис) (определение детектора / чёрного списка)
    - **Capacity probe before launch:** `curl -u $LAMBDA_API_KEY: .../instance-types | jq '.data | to_entries[]
    детектор
  • низкая Опасные команды cmd-background-process references/gotchas_universal.md:77
    Запуск фонового / автозапускаемого процесса (определение детектора / чёрного списка)
    3. **SSH HUP** — a foreground (non-`nohup`/`tmux`/`setsid`) launch dies when its parent SSH drops.
    детектор
  • низкая Утечка данных exfil-read-secret-files references/ssh_transport.md:175
    Чтение файлов с учётными данными / секретами (определение детектора / чёрного списка; строка таблицы в документации)
    | ssh <alias> 'umask 077; cat > /root/.netrc && chmod 600 /root/.netrc'
    детектортаблица
  • низкая Секреты в коде secret-high-entropy-token references/training/checkpoint-resume.md:20
    Строка, похожая на токен (может быть id, хеш или секрет)
    - **Sharded checkpoints (multi-GPU)** — C5 FSDP…OOM · C6 FSDP-SHARDED_STATE_DICT · C7 DCP-(dcp.save/load) · C8 DeepSpeed-ZeRO-dir+zero…p32

Просканировано файлов: 39. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.

По спецификации Agent Skills

  • предупреждение body-long тело SKILL.md ≈ 5600 токенов (рекомендуется < 5000); вынесите детали в references/
  • предупреждение missing-ref ссылка на отсутствующий файл: scripts/health_patrol.sh.template
  • заметка frontmatter-key неизвестное поле фронтматтера "risk"
  • заметка frontmatter-key неизвестное поле фронтматтера "source"
  • заметка frontmatter-key неизвестное поле фронтматтера "source_type"
  • заметка frontmatter-key неизвестное поле фронтматтера "source_repo"
  • заметка frontmatter-key неизвестное поле фронтматтера "date_added"
  • заметка frontmatter-key неизвестное поле фронтматтера "license_source"

Процессный рейтинг: все десять параметров 47/100

Не запустится. Скилл ссылается на файлы, которых нет в архиве: scripts/health_patrol.sh.template
  • 0Инструменты и файлы. Не хватает 1 файла(ов): scripts/health_patrol.sh.template
  • 0Результат и критерий готовности. Не сказано, что считать результатом
  • 0Входы и предусловия. Не сказано, что нужно иметь на входе
  • 50Ошибки и развилки. Развилок: 0, есть раздел про ошибки
  • 70Когда включается. Сказано, когда применять, но не сказано, когда не стоит
  • 70Стоимость исполнения. Тело инструкции 5600 токенов
  • 100Шаги. Шагов: 51
  • 100Согласованность. Имя и обязательные поля на месте
  • 100Повторный запуск. Изменяющие операции проверяют текущее состояние
  • 100Отчётность по ходу. Скилл сообщает о ходе работы
  • medium Правила безопасности и запреты внутри скилла: их место в системном промпте, здесь они не защищают
  • low Разделов верхнего уровня: 15. Похоже на несколько доменов в одном скилле
  • low Ответ описан самодельной разметкой (4 тегов): типизированный вызов надёжнее

Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.

Сигналы качества

  • +5В description нет примеров фраз, по которым скилл должен срабатывать
  • +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
  • +3Формат ответа не описан: модель каждый раз решает сама
  • +4Нет примеров входа/выхода
  • -36 из 8 скриптов не упомянуты в SKILL.md
  • +2Инструкции на одном языке
  • +3Длина description 197 символов: достаточно сигнала, не съедает бюджет
  • +4Структура: 16 заголовков
  • +3Пошаговые инструкции: 51 пунктов
  • +4Справочные файлы упоминаются в инструкциях (10 из 10)
  • +1Лицензия указана

База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 63.