Перейти к основному содержимому

Меню команд

Перейти на страницу или искать в каталоге

ИИ-инструменты и скрипты

Проверка конфигурации Git-хуков

Проверяет настройки хуков pre-commit, lefthook и husky: репозитории хуков по обычному HTTP, ревизии-ветки, хуки, передающие вывод curl в оболочку, токены в файлах хуков, незакреплённые версии инструментов и отсутствующие или пропускаемые сканеры секретов.

$5.00

Что вы получите: 1 файл · 58.59 KB · ZIP

Варианты покупки

Описание товара

Файл .pre-commit-config.yaml с rev: stable выглядит закреплённым, но pre-commit никогда не обновляет ревизию-ветку, и каждый новый клон получает то, что лежит в этой ветке в данный день. Локальный хук с entry вида bash -c 'curl ... | sh' запускает загруженный скрипт при каждом коммите на ноутбуке каждого разработчика. Хук gitleaks, указанный в ci: skip, никогда не сканирует коммиты, которые пропустили его локально. Этот навык находит такие ошибки и другие ошибки Git-хуков, перечисленные ниже, и подсказывает, как исправить каждую из них.

Ваш агент запускает сканер для .pre-commit-config.yaml (вместе с разделом ci: для pre-commit.ci) и .pre-commit-hooks.yaml, конфигураций lefthook в YAML, JSON или TOML (включая файлы lefthook-local и remotes) и скриптов в .lefthook/, скриптов хуков husky в .husky/, скриптов хуков в .githooks/ и похожих папках, simple-git-hooks и старой конфигурации husky в package.json, а также для shell-скриптов, Makefile и скриптов package.json, которые устанавливают хуки или обходят их. Он пропускает комментарии, объединяет перенесённые строки, использует собственную проверку pre-commit для ревизий-веток и считает $VAR и ${{ secrets.X }} значениями, хранящимися вне файла. Он никогда не запускает хуки, git или другие инструменты и никогда не обращается к сети. Результат: BLOCK, REVIEW или NOT FLAGGED с указанием файла, строки, причины и более безопасного подхода. Секреты никогда не выводятся.

Что проверяется

BLOCK (исправить до выпуска)

  • G01: репозитории хуков, загружаемые по http:// или git:// (repo: в pre-commit, git_url в remote lefthook)
  • G02: ревизии pre-commit, указывающие на ветку, HEAD, перемещаемый тег или пустые (rev: main, rev: stable, rev: '')
  • G03: хуки, которые загружают код и запускают его (curl или wget, переданные через конвейер в оболочку или интерпретатор, который читает загруженное как свою программу, sh -c "$(curl ...)", bash <(wget ...), iex (irm ...), или загруженный файл, запускаемый без проверки контрольной суммы); подсказки по установке, которые хук только выводит, не учитываются
  • G04: токены, пароли и ключи в конфигурациях и скриптах хуков (значения env, аргументы --token и --password, заголовки Authorization, пароль в URL репозитория, известные форматы токенов); имена файлов, пути и слова настроек, например enabled, не сообщаются

REVIEW (проверить до релиза)

  • G11: ревизии pre-commit, закреплённые за тегами, а не за SHA коммитов
  • G12: remotes lefthook без ref или с ref на ветку
  • G13: инструменты хуков, загружаемые без версии (additional_dependencies, Docker-образы без тега или с :latest, npx --yes, bunx, pnpm и yarn dlx, uvx, pipx run, go run @latest)
  • G14: проекты с Git-хуками, но без хука сканирования секретов
  • G15: сканеры секретов, пропускаемые в pre-commit.ci, ограниченные стадией manual, исключённые для всех файлов или отключённые через skip в lefthook
  • G16: обход хуков в скриптах и сообщениях хуков (--no-verify, git commit -n, HUSKY=0, LEFTHOOK=0, SKIP= с именем сканера секретов, core.hooksPath со значением /dev/null)
  • G17: скрипты проекта, задающие core.hooksPath с --global или --system
  • G18: отключённые в хуках проверки TLS или ключа хоста (curl -k, http.sslVerify false, NODE_TLS_REJECT_UNAUTHORIZED=0, --trusted-host и другие)
  • G19: конфигурации хуков, которые инструмент никогда не загружает (конфигурация husky v4 при husky 5 или новее, .pre-commit-config.yml, две конфигурации lefthook в одной папке)

Что входит в комплект

  • Сканер (Python 3.9+, только стандартная библиотека)
  • Руководство по правилам с причиной, более безопасным подходом и официальным источником для каждого правила
  • Рискованный и безопасный примеры (API с pre-commit, веб-приложение с lefthook, мобильное приложение с husky) и реальный отчёт сканера по рискованному примеру

Ограничения

Каждый файл читается в том виде, в каком он написан. Удалённые репозитории хуков и удалённые конфигурации lefthook указываются по имени, но не загружаются, поэтому подключаемый ими код не проверяется. Хуки, уже установленные в .git/hooks, core.hooksPath, заданный в вашей конфигурации git, скрипты, которые вызывает хук, и CI-процессы, запускающие pre-commit, не читаются. G11 (ревизии, закреплённые за тегами) и G14 (нет хука сканирования секретов) срабатывают на большинстве конфигураций, включая пример из быстрого старта pre-commit и проекты husky по умолчанию; агент представляет их как рекомендации по усилению защиты, а не как проблемы. G14 не видит сканирование на стороне сервера, например GitHub push protection. NOT FLAGGED не является гарантией.

Содержимое

Один ZIP-файл с 22 файлами: SKILL.md, сканер в scripts/ (10 файлов Python), references/rules.md (все правила с причиной и более безопасным подходом) и examples/ (11 файлов примеров плюс report.md, реальный вывод сканера по рискованному примеру).

Как использовать: Это навык для агента: папка с файлом SKILL.md и скриптами Python, которые может запускать ИИ-агент для программирования, например Claude Code, Cursor или Codex CLI. Распакуйте архив в папку навыков вашего агента (для Claude Code: ~/.claude/skills/), затем попросите агента проверить ваш проект. Скрипты также работают самостоятельно с Python 3.9 или новее, ничего устанавливать не нужно. Они только читают ваши файлы: без доступа к сети, и никуда ничего не отправляется.

Что вы получите

1 файл · 58.59 KB

  • git-hooks-config-check-1.0.0.zipZIP · 58.59 KB
ЛицензияКоммерческое использование разрешено
Проверка пакетаПройдена

Getly открыл загруженные файлы и не нашёл ничего, что помешало бы их открыть. Это не проверка на вирусы и не оценка качества.

Опубликовано12 нояб. 2026 г.
Размер файла58.59 KB
Формат файлаZIP
Версияv1.0

Теги

git-hookspre-commitlefthookhuskysupply-chainai agent skill
R
RR HH

Частые вопросы

Доступ открывается сразу?

Да. Это цифровой товар - скачать его можно сразу после оплаты, прямо из своей библиотеки.

Можно ли использовать в коммерческих проектах?

Да. Коммерческое использование разрешено: в своём бизнесе и в том, что вы продаёте. Перепродавать и распространять сам файл нельзя.

Какие условия возврата?

Запросить возврат можно в течение 30 дней. Если что-то не так, оформите заявку в своём заказе - её рассмотрит команда Getly.

Какие форматы и размеры файлов я получу?

Вы скачаете 1 файл - ZIP - всего 58.59 KB.

Обновления бесплатны?

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

Цена

$5.00