SKILLEMALL.ai

DC macos-watchdog

Проектирует и проверяет системные службы macOS (launchd): настройка LaunchAgent/LaunchDaemon, редактирование plist-файлов, запланированное самовосстановление, повторные уведомления, повторное открытие приложений после закрытия, циклы сбоев/восстановлений, оповещения Script Editor, остановка/отключение/перезапуск, периоды ожидания/отката, ограничение уведомлений, принятие решений по оповещениям, чтение расписания, триггеры событий WatchPaths/FSEvents. Поддерживает периодические наблюдатели.

машинный переводПоказать оригиналСкрыть оригинал«Designs and audits macOS launchd watchdogs: LaunchAgent/LaunchDaemon s…»

Designs and audits macOS launchd watchdogs: LaunchAgent/LaunchDaemon setup, plist edits, scheduled self-healing, repeated notifications, apps reopening after quit, crash/repair loops, Script Editor alerts, stop/disable/restart, cooldown/backoff, notification throttling, alert decisions, schedule readback, WatchPaths/FSEvents event triggers. Supports periodic observers. launchd 守护进程、常驻任务、开机自启、后台监控、定时自愈、通知来源排查、事件驱动监控。

Не рекомендуетсяесть критические или высокие находки безопасности · низкая оценка D
daymade/claude-code-skills Agent Skills автор: daymade MIT 13 файлов · 5 скриптов тело ≈ 5 422 токенов Открыть источникgithub.com↗ проанализирован 8 дн назад

Проектирует и проверяет системные службы macOS (launchd): настройка LaunchAgent/LaunchDaemon, редактирование plist-файлов, запланированное самовосстановление…

Как процесс C 56/100 · Есть пробелы — Скилл ссылается на файлы, которых нет в архиве: ../macos-permissions/references/uv-fda-trap.md, assets/launchagent.template.plist

АнализаторРазработкаИнфраструктуратип и темы размечены автоматически по тексту скилла
JSON
Технический рейтинг
D
59/100
безопасность, качество, тесты
Безопасность 60%
61
Качество 40%
56
Прогон на моделях
не было
Процессный рейтинг
C
56/100
Есть пробелы
Скилл ссылается на файлы, которых нет в архиве: ../macos-permissions/references/uv-fda-trap.md, assets/launchagent.template.plist
Инструменты и файлы вес 18
0
Когда включается вес 12
20
Повторный запуск вес 4
30
три самых слабых из десяти параметров · все десять

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

Скилл содержит фрагменты, которые в чужих руках стоят денег или данных. Ниже, что рискует потерять тот, кто установит, и что должен сделать автор.

Опасные команды
Если установить

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

Автору

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

Как улучшить

  1. Разберите находки высокой серьёзности: каждая стоит 18 баллов безопасности. Если это ложное срабатывание, добавьте код правила в guard.allow в spec.yaml.
  2. Скажите в description, КОГДА применять скилл («используй, когда…», примеры запросов): это главный сигнал для агента.
  3. Тело SKILL.md длиннее 5 000 токенов: вынесите справочные детали в references/ и подключайте по необходимости.
  4. В тексте есть ссылки на отсутствующие файлы: добавьте файлы или уберите ссылки.
Для прогона на моделях — необязательно
  • spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.

Находки guard · 10

  • высокая Опасные команды cmd-persistence scripts/new-launchagent.sh:130
    Механизм закрепления (cron / launchd / планировщик / автозапуск в реестре)
    $SUDO launchctl bootstrap "$DOMAIN" "$PLIST"
Средние и низкие: 9
  • средняя Опасные команды cmd-privilege scripts/new-launchagent.sh:124
    Повышение привилегий / права на запись для всех
    sudo chown root:wheel "$tmp_plist"
  • средняя Опасные команды cmd-privilege scripts/new-launchagent.sh:125
    Повышение привилегий / права на запись для всех
    sudo chmod 644 "$tmp_plist"
  • средняя Опасные команды cmd-privilege scripts/new-launchagent.sh:127
    Повышение привилегий / права на запись для всех
    $SUDO mv "$tmp_plist" "$PLIST"
  • низкая Опасные команды cmd-persistence references/launchd-plist-reference.md:9
    Механизм закрепления (cron / launchd / планировщик / автозапуск в реестре) (строка таблицы в документации; документация security-скилла)
    | LaunchAgent | `~/Library/LaunchAgents/` | `gui/$(id -u)` | User GUI session: can `open` apps/URL schemes, show notifications, read user TCC grants |
    таблицаsecurity-скилл
  • низкая Опасные команды cmd-persistence references/launchd-plist-reference.md:10
    Механизм закрепления (cron / launchd / планировщик / автозапуск в реестре) (строка таблицы в документации; документация security-скилла)
    | LaunchDaemon | `/Library/LaunchDaemons/` | `system` (sudo) | Root (or `UserName`/`GroupName` override); no GUI session, no per-user TCC |
    таблицаsecurity-скилл

Ещё 4 совпадений отнесены к цитатам в документации скилла по безопасности и не считаются находками.

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

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

  • предупреждение description-no-when description не говорит, КОГДА применять скилл (нет "use when / используй когда")
  • предупреждение body-long тело SKILL.md ≈ 5422 токенов (рекомендуется < 5000); вынесите детали в references/
  • предупреждение missing-ref ссылка на отсутствующий файл: ../macos-permissions/references/uv-fda-trap.md
  • предупреждение missing-ref ссылка на отсутствующий файл: assets/launchagent.template.plist
  • заметка edit-residue в тексте есть пометки об устаревшем (строки 167, 178): проверьте, не остались ли старые правила рядом с новыми — полная проверка читает текст на противоречия

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

Не запустится. Скилл ссылается на файлы, которых нет в архиве: ../macos-permissions/references/uv-fda-trap.md, assets/launchagent.template.plist
  • 0Инструменты и файлы. Не хватает 2 файла(ов): ../macos-permissions/references/uv-fda-trap.md, assets/launchagent.template.plist
  • 20Когда включается. Не сказано, при каком запросе скилл включается
  • 30Повторный запуск. Изменяющих операций: 23, без проверки текущего состояния
  • 40Результат и критерий готовности. Не сказано, что считать результатом
  • 70Входы и предусловия. Входные данные и предусловия перечислены
  • 70Стоимость исполнения. Тело инструкции 5422 токенов
  • 100Шаги. Шагов: 27
  • 100Ошибки и развилки. Развилок: 2, есть раздел про ошибки
  • 100Согласованность. Имя и обязательные поля на месте
  • 100Отчётность по ходу. Скилл сообщает о ходе работы
  • high Скилл велит модели самой совершать необратимое действие, без подтверждения человеком
  • low Ответ описан самодельной разметкой (9 тегов): типизированный вызов надёжнее
  • medium Тестов 3, и все положительные: нет ни одного случая «должен отказать» или «должен переспросить»

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

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

  • +5В description нет примеров фраз, по которым скилл должен срабатывать
  • +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
  • +3Формат ответа не описан: модель каждый раз решает сама
  • +4Нет примеров входа/выхода
  • +1Лицензия не указана
  • +2Инструкции на одном языке
  • +3Длина description 419 символов: достаточно сигнала, не съедает бюджет
  • +4Структура: 13 заголовков
  • +3Пошаговые инструкции: 27 пунктов
  • +4Справочные файлы упоминаются в инструкциях (6 из 6)
  • +3Все 3 скриптов описаны в инструкциях

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