BC browser-secure
Безопасная автоматизация браузера с поддержкой профилей Chrome, интеграцией хранилища, этапами утверждения и полным журналом аудита. Используйте для аутентифицированных сайтов, конфиденциальных операций или требований соответствия.
машинный переводПоказать оригиналСкрыть оригинал«Secure browser automation with Chrome profile support, vault integrati…»
Secure browser automation with Chrome profile support, vault integration, approval gates, and comprehensive audit logging. Use for authenticated sites, sensitive operations, or compliance requirements.
Безопасная автоматизация браузера с поддержкой профилей Chrome, интеграцией хранилища, этапами утверждения и полным журналом аудита.
Как процесс C 62/100 · Есть пробелы — слабые места: результат и критерий готовности, когда включается, повторный запуск
Чем это грозит
Находки средней серьёзности: скорее всего скилл честный, но прочитайте, что именно насторожило сканер.
Ниже описан худший случай для этой категории. Здесь находка средней серьёзности: guard увидел признак, но не доказательство.
Скилл просит больше прав, чем нужно для задачи: широкий доступ к инструментам, секретные переменные окружения, бинарные файлы. Каждое лишнее право расширяет ущерб при ошибке или взломе.
Сузьте allowed-tools и список переменных до минимума, замените бинарники на исходники или скрипты, которые можно прочитать.
Ниже описан худший случай для этой категории. Здесь находка средней серьёзности: guard увидел признак, но не доказательство.
Инструкции или скрипты отправляют данные наружу: переменные окружения, ключи, содержимое файлов, историю чата. Вы можете не заметить этого в диалоге, потому что агент выполнит отправку как «часть задачи».
Если отправка не нужна для задачи, уберите её: каталоги помечают такие скиллы как подозрительные и снимают с выдачи. Если нужна, назовите адрес явно, объясните, что именно уходит, и дайте пользователю выключатель.
Как улучшить
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 10
✓ Критических и высоких находок нет
Средние и низкие: 10
-
средняя Широкие права
meta-broad-allowed-toolsSKILL.md:1Заранее разрешены широкие инструменты: Bashallowed-tools: Bash
-
средняя Утечка данных
intent-browser-credential-storeSKILL.md:217Доступ к хранилищу паролей / cookies браузера (документация security-скилла)- **Daemon uses a SEPARATE Chrome profile directory** — does not share cookies/logins with your normal Chrome browser. Your normal Chrome tabs are unaffected.
security-скилл -
низкая Утечка данных
intent-browser-credential-storedist/browser/secure-session.js:222Доступ к хранилищу паролей / cookies браузера (с отрицанием — текст это запрещает)// No profile: use Playwright's bundled Chromium (isolated, no cookies from system Chrome)
с отрицанием -
низкая Секреты в коде
secret-high-entropy-tokendist/vault/discovery.js:181Строка, похожая на токен (может быть id, хеш или секрет)const opResult = await inte…ery(domain);
-
низкая Секреты в коде
secret-high-entropy-tokendist/vault/discovery.js:262Строка, похожая на токен (может быть id, хеш или секрет)async function inte…ery(domain) { -
низкая Утечка данных
read-dotenvSKILL.md:324Чтение файла .env (документация security-скилла)cp .env.example .env
security-скилл -
низкая Утечка данных
read-dotenvSKILL.md:368Чтение файла .env (документация security-скилла)cp .env.example .env
security-скилл -
низкая Утечка данных
intent-browser-credential-storesrc/browser/secure-session.ts:288Доступ к хранилищу паролей / cookies браузера (с отрицанием — текст это запрещает)// No profile: use Playwright's bundled Chromium (isolated, no cookies from system Chrome)
с отрицанием -
низкая Секреты в коде
secret-high-entropy-tokensrc/vault/discovery.ts:244Строка, похожая на токен (может быть id, хеш или секрет)const opResult = await inte…ery(domain);
-
низкая Секреты в коде
secret-high-entropy-tokensrc/vault/discovery.ts:349Строка, похожая на токен (может быть id, хеш или секрет)async function inte…ery(
Просканировано файлов: 63. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
✓ По спецификации Agent Skills замечаний нет
Процессный рейтинг: все десять параметров 62/100
- 0Результат и критерий готовности. Не сказано, что считать результатом
- 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
- 20Когда включается. Не сказано, при каком запросе скилл включается
- 30Повторный запуск. Изменяющих операций: 15, без проверки текущего состояния
- 50Ошибки и развилки. Развилок: 0, есть раздел про ошибки
- 70Входы и предусловия. Входные данные и предусловия перечислены
- 70Стоимость исполнения. Тело инструкции 4814 токенов
- 100Инструменты и файлы. Инструменты объявлены во frontmatter
- 100Шаги. Шагов: 53
- 100Согласованность. Имя и обязательные поля на месте
- low Разделов верхнего уровня: 14. Похоже на несколько доменов в одном скилле
- low Ответ описан самодельной разметкой (9 тегов): типизированный вызов надёжнее
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +5В description нет примеров фраз, по которым скилл должен срабатывать
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- +3Формат ответа не описан: модель каждый раз решает сама
- -4Абсолютные локальные пути (C:\Users, /home/…): скилл не переносим
- -2Ссылки на localhost: у другого пользователя не заработает
- -230 эмодзи в инструкциях: шум для модели
- -31 из 1 скриптов не упомянуты в SKILL.md
- +1Лицензия не указана
- +2Инструкции на одном языке
- +3Длина description 201 символов: достаточно сигнала, не съедает бюджет
- +4Структура: 43 заголовков
- +3Пошаговые инструкции: 53 пунктов
- +4Есть примеры (28 блоков кода)
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 73.