SKILLEMALL.ai

CC github

GitHub через gh CLI: PR, задачи, обзоры, репозитории, аутентификация.

машинный переводПоказать оригиналСкрыть оригинал«GitHub via gh CLI: PRs, issues, reviews, repos, auth.…»

GitHub via gh CLI: PRs, issues, reviews, repos, auth.

NousResearch/hermes-agent Hermes автор: NousResearch MIT 17 файлов · 1 скрипт тело ≈ 510 токенов Открыть источникgithub.com проанализирован 15 ч назад

GitHub через gh CLI: PR, задачи, обзоры, репозитории, аутентификация.

Как процесс C 57/100 · Есть пробелы — слабые места: результат и критерий готовности, когда включается, входы и предусловия

ИнтеграцияGitHubРазработкаДанные и аналитикатип и темы размечены автоматически по тексту скилла
Запускается в: Hermes Agent
JSON
Технический рейтинг
C
66/100
безопасность, качество, тесты
Безопасность 60%
61
Качество 40%
73
Прогон на моделях
не было
Процессный рейтинг
C
57/100
Есть пробелы
Результат и критерий готовности вес 14
0
Входы и предусловия вес 11
0
Отчётность по ходу вес 2
0
три самых слабых из десяти параметров · все десять

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

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

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

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

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

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

Автору

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

Как улучшить

  1. Скажите в description, КОГДА применять скилл («используй, когда…», примеры запросов): это главный сигнал для агента.
Для прогона на моделях — необязательно
  • Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
  • spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.

Находки guard · 11

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

Средние и низкие: 11
  • средняя Утечка данных net-credential-use references/auth.md:256
    Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис)
    curl -s -H "Authorization: token $GITHUB_TOKEN" \
  • средняя Утечка данных net-credential-use references/ci-troubleshooting.md:12
    Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис)
    curl -sL -H "Authorization: token $GITHUB_TOKEN" \
  • средняя Утечка данных net-credential-use references/code-review.md:345
    Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис)
    curl -s -H "Authorization: token $GITHUB_TOKEN" \
  • средняя Утечка данных net-credential-use references/code-review.md:349
    Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис)
    curl -s -H "Authorization: token $GITHUB_TOKEN" \
  • средняя Утечка данных net-credential-use references/code-review.md:407
    Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис)
    HEAD_SHA=$(curl -s -H "Authorization: token $GITHUB_TOKEN" \
  • средняя Утечка данных net-credential-use references/github-api-cheatsheet.md:139
    Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис)
    curl -s -H "Authorization: token $GITHUB_TOKEN" \
  • средняя Утечка данных net-credential-use scripts/gh-env.sh:40
    Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис)
    GH_USER=$(curl -s -H "Authorization: token $GITHUB_TOKEN" \
  • низкая Утечка данных net-credential-use references/auth.md:213
    Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис) (адрес назначения — известный публичный сервис)
    > LOGIN=$(curl -s -H "Authorization: token $TOKEN" https://api.github.com/user \
    известный сервис
  • низкая Утечка данных net-credential-use references/github-api-cheatsheet.md:133
    Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис) (адрес назначения — известный публичный сервис; в кавычках — упоминание, а не команда)
    - Check remaining: `curl -s -H "Authorization: token $GITHUB_TOKEN" https://api.github.com/rate_limit`
    известный сервисв кавычках
  • низкая Утечка данных net-credential-use references/pr-workflow.md:349
    Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис) (адрес назначения — известный публичный сервис; строка таблицы в документации)
    | List my PRs | `gh pr list --author @me` | `curl -s -H "Authorization: token $GITHUB_TOKEN" "https://api.github.com/repos/$OWNER/$REPO/pulls?state=open"` |
    известный сервистаблица
  • низкая Утечка данных net-credential-use references/repo-management.md:29
    Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис) (адрес назначения — известный публичный сервис)
    GH_USER=$(curl -s -H "Authorization: token $GITHUB_TOKEN" https://api.github.com/user | python -c "import sys,json; print(json.load(sys.stdin)['login'])")
    известный сервис

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

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

  • предупреждение description-no-when ни description, ни раздел "## When to Use" не говорят, когда применять скилл

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

  • 0Результат и критерий готовности. Не сказано, что считать результатом
  • 0Входы и предусловия. Не сказано, что нужно иметь на входе
  • 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
  • 20Когда включается. Не сказано, при каком запросе скилл включается
  • 30Повторный запуск. Изменяющих операций: 5, без проверки текущего состояния
  • 60Согласованность. Диалект Hermes требует category и tags
  • 100Инструменты и файлы. Внешние инструменты не нужны
  • 100Шаги. Шагов: 7
  • 100Ошибки и развилки. Развилок: 1, есть раздел про ошибки
  • 100Стоимость исполнения. Тело инструкции 510 токенов

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

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

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

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