Перейти до основного вмісту

Меню команд

Перейдіть на сторінку або пошукайте в каталозі

ШІ-інструменти та скрипти

Перевірка конфігурації 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