DB calibre-ebooks
Управление и запрос локальной библиотеки Calibre через API книг, используя локальные вспомогательные средства Calibre/RAG только при явной необходимости разрешения файлов или семантического индексирования.
машинный переводПоказать оригиналСкрыть оригинал«Manage and query the local Calibre library through the Books API, usin…»
Manage and query the local Calibre library through the Books API, using local Calibre/RAG helpers only when file resolution or semantic indexing is explicitly needed.
Управление и запрос локальной библиотеки Calibre через API книг, используя локальные вспомогательные средства Calibre/RAG только при явной необходимости…
Как процесс B 67/100 · Почти готов — слабые места: входы и предусловия, стоимость исполнения
Чем это грозит
Находки средней серьёзности: скорее всего скилл честный, но прочитайте, что именно насторожило сканер.
Ниже описан худший случай для этой категории. Здесь находка средней серьёзности: guard увидел признак, но не доказательство.
Скилл содержит команды, которые удаляют файлы, переписывают диски или исполняют код, скачанный из сети. Агент может выполнить их без вопроса, если считает, что так требует инструкция.
Замените разрушительные команды на безопасные аналоги с подтверждением, ограничьте область действия конкретной папкой и не тяните код через curl | bash: укажите версию и контрольную сумму.
Ниже описан худший случай для этой категории. Здесь находка средней серьёзности: guard увидел признак, но не доказательство.
Инструкции или скрипты отправляют данные наружу: переменные окружения, ключи, содержимое файлов, историю чата. Вы можете не заметить этого в диалоге, потому что агент выполнит отправку как «часть задачи».
Если отправка не нужна для задачи, уберите её: каталоги помечают такие скиллы как подозрительные и снимают с выдачи. Если нужна, назовите адрес явно, объясните, что именно уходит, и дайте пользователю выключатель.
Ниже описан худший случай для этой категории. Здесь находка средней серьёзности: guard увидел признак, но не доказательство.
Скилл просит больше прав, чем нужно для задачи: широкий доступ к инструментам, секретные переменные окружения, бинарные файлы. Каждое лишнее право расширяет ущерб при ошибке или взломе.
Сузьте allowed-tools и список переменных до минимума, замените бинарники на исходники или скрипты, которые можно прочитать.
Как улучшить
- Тело SKILL.md длиннее 5 000 токенов: вынесите справочные детали в references/ и подключайте по необходимости.
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 19
✓ Критических и высоких находок нет
Средние и низкие: 19
-
средняя Опасные команды
cmd-privilegecalibre-openclaw-gateway/install_service.sh:315Повышение привилегий / права на запись для всехsudo tee "$SERVICE_FILE" > /dev/null <<EOF
-
средняя Опасные команды
cmd-privilegecalibre-openclaw-gateway/install_service.sh:393Повышение привилегий / права на запись для всехsudo tee "$NIGHTLY_SERVICE_FILE" > /dev/null <<EOF
-
средняя Опасные команды
cmd-privilegecalibre-openclaw-gateway/install_service.sh:424Повышение привилегий / права на запись для всехsudo tee "$NIGHTLY_TIMER_FILE" > /dev/null <<EOF
-
средняя Опасные команды
cmd-privilegecalibre-openclaw-gateway/install_service.sh:527Повышение привилегий / права на запись для всехsudo rm -f "$SERVICE_FILE"
-
средняя Опасные команды
cmd-privilegecalibre-openclaw-gateway/install_service.sh:533Повышение привилегий / права на запись для всехsudo rm -f "$NIGHTLY_SERVICE_FILE"
-
средняя Утечка данных
net-credential-usecalibre-openclaw-gateway/README.md:129Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис)curl -H "X-API-Key: $API_KEY" \
-
средняя Утечка данных
net-credential-usecalibre-openclaw-gateway/README.md:234Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис)curl -H "X-API-Key: $API_KEY" \
-
средняя Утечка данных
net-credential-usecalibre-openclaw-gateway/README.md:482Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис)curl -H "X-API-Key: $API_KEY" \
-
средняя Утечка данных
net-credential-usecalibre-openclaw-gateway/README.md:486Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис)curl -H "X-API-Key: $API_KEY" \
-
средняя Утечка данных
net-credential-usecalibre-openclaw-gateway/README.md:526Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис)curl -H "X-API-Key: $API_KEY" \
-
средняя Широкие права
meta-agent-memory-dumprapport-bibliotecario-agent/HEARTBEAT.mdВ скилле есть файлы памяти агента / рабочего пространства (5) — похоже на дамп с личными данными или токенамиrapport-bibliotecario-agent/HEARTBEAT.md, rapport-bibliotecario-agent/IDENTITY.md, rapport-bibliotecario-agent/MEMORY.md, rapport-bibliotecario-agent/SOUL.md, rapport-bibliotecario-agent/USER.md
-
средняя Утечка данных
net-redirectable-api-keyscripts/books_api_client.py:100Скрипт отправляет API-ключ на хост из переменной окружения — ключ можно перенаправить на другой серверAPI key + configurable base URL from environment
-
низкая Утечка данных
read-dotenvcalibre-openclaw-gateway/install_service.sh:88Чтение файла .env (в кавычках — упоминание, а не команда)print_info " cp .env.example /path/to/.env"
в кавычках -
низкая Опасные команды
cmd-background-processcalibre-openclaw-gateway/install_service.sh:468Запуск фонового / автозапускаемого процессаsudo systemctl enable "$SERVICE_NAME"
-
низкая Опасные команды
cmd-background-processcalibre-openclaw-gateway/install_service.sh:473Запуск фонового / автозапускаемого процессаsudo systemctl enable --now "$NIGHTLY_SERVICE_NAME.timer"
-
низкая Опасные команды
cmd-background-processcalibre-openclaw-gateway/install_service.sh:615Запуск фонового / автозапускаемого процессаsudo systemctl enable "$SERVICE_NAME"
-
низкая Опасные команды
cmd-background-processcalibre-openclaw-gateway/install_service.sh:616Запуск фонового / автозапускаемого процессаsudo systemctl enable --now "$NIGHTLY_SERVICE_NAME.timer"
-
низкая Утечка данных
read-dotenvcalibre-openclaw-gateway/run.sh:85Чтение файла .env (в кавычках — упоминание, а не команда)echo " cp .env.example /path/to/.env"
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenscripts/books_api_client.py:492Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)boundary = "----…0gW"
в кавычках
Просканировано файлов: 55. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- предупреждение
body-longтело SKILL.md ≈ 8503 токенов (рекомендуется < 5000); вынесите детали в references/ - заметка
frontmatter-keyнеизвестное поле фронтматтера "homepage"
Процессный рейтинг: все десять параметров 67/100
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 40Стоимость исполнения. Тело инструкции 8503 токенов: вытесняет саму задачу из окна
- 50Когда включается. Не сказано, при каком запросе скилл включается
- 60Инструменты и файлы. Используются инструменты (bash, web, python), но во frontmatter они не объявлены
- 60Результат и критерий готовности. Формат результата описан, критерия завершения нет
- 100Шаги. Шагов: 160
- 100Ошибки и развилки. Развилок: 26, есть раздел про ошибки
- 100Согласованность. Имя и обязательные поля на месте
- 100Повторный запуск. Изменяющие операции проверяют текущее состояние
- 100Отчётность по ходу. Скилл сообщает о ходе работы
- medium Правила безопасности и запреты внутри скилла: их место в системном промпте, здесь они не защищают
- low Разделов верхнего уровня: 16. Похоже на несколько доменов в одном скилле
- high Скилл велит модели самой совершать необратимое действие, без подтверждения человеком
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +5В description нет примеров фраз, по которым скилл должен срабатывать
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- +1Лицензия не указана
- +2Инструкции на одном языке
- +3Длина description 166 символов: достаточно сигнала, не съедает бюджет
- +4Структура: 19 заголовков
- +3Пошаговые инструкции: 160 пунктов
- +3Формат ответа описан явно
- +4Есть примеры (21 блоков кода)
- +3Все 1 скриптов описаны в инструкциях
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 79.