DD loki-mode
Запускает автономную фабрику программного обеспечения, которая знает, что должна поставлять, и доказывает это с помощью подписанной квитанции. Используйте, когда пользователь говорит Loki Mode или просит автономно создавать, исправлять или проверять программное обеспечение.
машинный переводПоказать оригиналСкрыть оригинал«Runs an autonomous software factory that knows what it is supposed to…»
Runs an autonomous software factory that knows what it is supposed to deliver and proves it did, with a signed receipt. Use when the user says Loki Mode or asks to build, fix or verify software autonomously.
Скилл обещает автономный софтверный завод с подписанной квитанцией о выполнении. На деле — папка с 80 файлами и 49 скриптами, но половина ссылок сломана. Проверки выявили 14 находок среднего и низкого уровня: рассогласования в логике, недокументированные зависимости, потенциальные утечки контекста. Модель не тестировалась, песочница не запускалась. Оценки: качество 57, процесс 45 — скилл в стадии сырца.
Проблема в том, что «автономный» здесь означает скорее автономное блуждание. Нет гарантий, что агент поймёт, что ему нужно доставить, и уж точно не будет никакой подписанной квитанции. Ставить только если готовы отлаживать на ходу и проверять каждый прогон вручную.
Запускает автономную фабрику программного обеспечения, которая знает, что должна поставлять, и доказывает это с помощью подписанной квитанции.
Как процесс D 45/100 · Процесс не доведён — Скилл ссылается на файлы, которых нет в архиве: skills/model-selection.md, skills/agents.md, skills/testing.md
Чем это грозит
Находки средней серьёзности: скорее всего скилл честный, но прочитайте, что именно насторожило сканер.
Ниже описан худший случай для этой категории. Здесь находка средней серьёзности: guard увидел признак, но не доказательство.
Скилл содержит команды, которые удаляют файлы, переписывают диски или исполняют код, скачанный из сети. Агент может выполнить их без вопроса, если считает, что так требует инструкция.
Замените разрушительные команды на безопасные аналоги с подтверждением, ограничьте область действия конкретной папкой и не тяните код через curl | bash: укажите версию и контрольную сумму.
Ниже описан худший случай для этой категории. Здесь находка средней серьёзности: guard увидел признак, но не доказательство.
Инструкции или скрипты отправляют данные наружу: переменные окружения, ключи, содержимое файлов, историю чата. Вы можете не заметить этого в диалоге, потому что агент выполнит отправку как «часть задачи».
Если отправка не нужна для задачи, уберите её: каталоги помечают такие скиллы как подозрительные и снимают с выдачи. Если нужна, назовите адрес явно, объясните, что именно уходит, и дайте пользователю выключатель.
Как улучшить
- Тело SKILL.md длиннее 5 000 токенов: вынесите справочные детали в references/ и подключайте по необходимости.
- В тексте есть ссылки на отсутствующие файлы: добавьте файлы или уберите ссылки.
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 14
✓ Критических и высоких находок нет
Средние и низкие: 14
-
средняя Опасные команды
cmd-pipe-to-shell-known-hostapi/README.md:25Установщик через pipe в shell с известного хоста (всё равно выполняет удалённый код)curl -fsSL https://deno.land/install.sh | sh
-
средняя Утечка данных
net-credential-useapi/README.md:65Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис)curl -H "Authorization: Bearer $LOKI_API_TOKEN" http://serv…374/health
-
средняя Опасные команды
cmd-destructive-fsautonomy/config.example.yaml:54Разрушительная команда для файловой системы (корень / домашняя папка / диск) (определение детектора / чёрного списка; строковый литерал в коде, не выполняется; тестовый файл / пример)blocked_commands: "rm -rf /,dd if=,mkfs,:(){ :|:& };:"детекторстрока в кодетестовый файл -
средняя Утечка данных
exfil-read-secret-filesautonomy/docker-run.sh:77Чтение файлов с учётными данными / секретами (в кавычках — упоминание, а не команда)raw="$(cat "${HOME}/.claude/.credentials.json" 2>/dev/null || true)"в кавычках -
низкая Опасные команды
cmd-pipe-to-shell-known-host.github/CONTRIBUTING.md:9Установщик через pipe в shell с известного хоста (всё равно выполняет удалённый код) (в кавычках — упоминание, а не команда)- **Bun 1.3+** (`brew install oven-sh/bun/bun` or `curl -fsSL https://bun.sh/install | bash`) -- powers the TypeScript runner under `loki-ts/`
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenassets/welcome/welcome.html:262Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)var POSTHOG_KEY = "phc_…s87";
в кавычках -
низкая Опасные команды
cmd-background-processautonomy/app-runner.sh:277Запуск фонового / автозапускаемого процесса (комментарий в коде)# from the root. The root PID itself is NOT included. Used by the non-setsid stop
комментарий -
низкая Опасные команды
cmd-background-processautonomy/app-runner.sh:278Запуск фонового / автозапускаемого процесса (с отрицанием — текст это запрещает)# fallback (BUG 1): the app is started as `( ... ) &` WITHOUT setsid, so on stock
с отрицанием -
низкая Опасные команды
cmd-background-processautonomy/app-runner.sh:346Запуск фонового / автозапускаемого процесса (комментарий в коде)# a process group) because in the non-setsid path the app inherits the
комментарий -
низкая Опасные команды
cmd-background-processautonomy/app-runner.sh:364Запуск фонового / автозапускаемого процесса (комментарий в коде)# Used by the non-setsid stop grace-wait so a deep worker that outlived the main
комментарий -
низкая Опасные команды
cmd-background-processautonomy/app-runner.sh:1282Запуск фонового / автозапускаемого процессаif command -v setsid >/dev/null 2>&1; then
-
низкая Опасные команды
cmd-background-processautonomy/completion-council.sh:4886Запуск фонового / автозапускаемого процессаdisown 2>/dev/null || true
-
низкая Опасные команды
cmd-background-processautonomy/docker-run.sh:215Запуск фонового / автозапускаемого процесса (с отрицанием — текст это запрещает)# The container IS the session boundary, so the runner must NOT setsid into
с отрицанием -
низкая Опасные команды
cmd-background-processautonomy/docker-run.sh:216Запуск фонового / автозапускаемого процесса (комментарий в коде)# a new, detached session: setsid detach inside a `--rm` container makes the
комментарий
Просканировано файлов: 79. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- предупреждение
body-longтело SKILL.md ≈ 7424 токенов (рекомендуется < 5000); вынесите детали в references/ - предупреждение
missing-refссылка на отсутствующий файл: skills/model-selection.md - предупреждение
missing-refссылка на отсутствующий файл: skills/agents.md - предупреждение
missing-refссылка на отсутствующий файл: skills/testing.md - предупреждение
missing-refссылка на отсутствующий файл: skills/quality-gates.md - предупреждение
missing-refссылка на отсутствующий файл: skills/production.md - предупреждение
missing-refссылка на отсутствующий файл: skills/troubleshooting.md - предупреждение
missing-refссылка на отсутствующий файл: skills/patterns-advanced.md - предупреждение
missing-refссылка на отсутствующий файл: skills/artifacts.md - предупреждение
missing-refссылка на отсутствующий файл: skills/parallel-workflows.md - предупреждение
missing-refссылка на отсутствующий файл: skills/github-integration.md - предупреждение
missing-refссылка на отсутствующий файл: skills/providers.md - предупреждение
missing-refссылка на отсутствующий файл: skills/openspec-integration.md - предупреждение
missing-refссылка на отсутствующий файл: skills/mirofish-integration.md - предупреждение
missing-refссылка на отсутствующий файл: skills/documentation.md - предупреждение
missing-refссылка на отсутствующий файл: skills/magic-modules.md - предупреждение
missing-refссылка на отсутствующий файл: skills/healing.md - предупреждение
missing-refссылка на отсутствующий файл: skills/compound-learning.md - предупреждение
missing-refссылка на отсутствующий файл: skills/memory.md - предупреждение
missing-refссылка на отсутствующий файл: skills/factory-operations.md - предупреждение
missing-refссылка на отсутствующий файл: skills/release-cadence.md - предупреждение
missing-refссылка на отсутствующий файл: skills/extending.md - предупреждение
missing-refссылка на отсутствующий файл: references/sdk-mode.md - предупреждение
missing-refссылка на отсутствующий файл: references/cursor-learnings.md - предупреждение
missing-refссылка на отсутствующий файл: references/memory-system.md - предупреждение
missing-refссылка на отсутствующий файл: references/core-workflow.md - заметка
edit-residueв тексте есть пометки об устаревшем (строки 4, 14, 16, 204, 233, 257): проверьте, не остались ли старые правила рядом с новыми — полная проверка читает текст на противоречия
Процессный рейтинг: все десять параметров 45/100
- 0Инструменты и файлы. Не хватает 25 файла(ов): skills/model-selection.md, skills/agents.md, skills/testing.md
- 0Результат и критерий готовности. Не сказано, что считать результатом
- 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
- 30Повторный запуск. Изменяющих операций: 15, без проверки текущего состояния
- 40Согласованность. Имя во frontmatter (loki-mode) не совпадает с папкой (claudeskill-loki-mode)
- 50Ошибки и развилки. Развилок: 0, есть раздел про ошибки
- 70Когда включается. Сказано, когда применять, но не сказано, когда не стоит
- 70Входы и предусловия. Входные данные и предусловия перечислены
- 70Стоимость исполнения. Тело инструкции 7424 токенов
- 100Шаги. Шагов: 27
- medium Правила безопасности и запреты внутри скилла: их место в системном промпте, здесь они не защищают
- low Разделов верхнего уровня: 20. Похоже на несколько доменов в одном скилле
- low Ответ описан самодельной разметкой (10 тегов): типизированный вызов надёжнее
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +5В description нет примеров фраз, по которым скилл должен срабатывать
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- +3Формат ответа не описан: модель каждый раз решает сама
- -5В тексте остались TODO / заглушки
- +1Лицензия не указана
- +2Инструкции на одном языке
- +3Длина description 207 символов: достаточно сигнала, не съедает бюджет
- +4Структура: 23 заголовков
- +3Пошаговые инструкции: 27 пунктов
- +4Есть примеры (8 блоков кода)
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 57.