Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
preflight — CLI-инструмент на базе Go, который сканирует кодовые базы на готовность к запуску, обнаруживая отсутствующую конфигурацию, проблемы гигиены безопасности, утечки секретов и пробелы интеграции перед развёртыванием в production. | Kitploit
Инструменты/GitHubGitHub/preflightsh/preflight
Утилиты общего назначенияСканеры уязвимостейАнализ КодаАудит конфигурацииВеб-безопасностьDevSecOpsОбнаружение СекретовБезопасность Цепочки ПоставокНеправильная КонфигурацияАнализ DNSАнализ Журналов
56372 дней назадПроверено Kitploit
GitHub
preflightsh/preflight

preflight

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

РепозиторийСайт

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

Preflight.sh

Agent skill on skills.sh

Preflight.sh — это инструмент командной строки, который сканирует вашу кодовую базу на готовность к запуску. Выявляет отсутствующую конфигурацию, проблемы интеграции, угрозы безопасности, пробелы в SEO-метаданных и другие распространённые ошибки до того, как вы развернёте проект в продакшене.

Не позорьте себя в продакшене. Просто запустите команду.

Установка

Homebrew (macOS/Linux)

root@kitploit:~
brew install preflightsh/preflight/preflight

npm

root@kitploit:~
npm install -g @preflightsh/preflight

Go

root@kitploit:~
go install github.com/preflightsh/preflight@latest

Docker

root@kitploit:~
docker pull ghcr.io/preflightsh/preflight

Shell-скрипт

root@kitploit:~
curl -sSL https://preflight.sh/install.sh | sh

Ручная загрузка

Скачайте последний релиз на GitHub Releases.

Быстрый старт

root@kitploit:~
# Инициализация в каталоге вашего проекта
cd your-project
preflight init

# Запуск всех проверок
preflight scan

# Сканирование конкретного каталога
preflight scan /path/to/project

# Запуск с подробным выводом (показывает, какие файлы соответствуют каждой проверке)
preflight scan --verbose
preflight scan -v  # краткая форма

# Запуск в режиме CI с JSON-выводом
preflight scan --ci --format json

# Запуск только определённых проверок или пропуск некоторых для быстрой итерации
# (разово; в отличие от `preflight ignore` не изменяет preflight.yml)
preflight scan --only seo_meta,og_twitter
preflight scan --skip vulnerability,secrets

# Отключение проверки
preflight ignore sitemap

# Повторное включение проверки
preflight unignore sitemap

# Список всех ID проверок
preflight checks

Навык агента (Agent Skill)

Этот репозиторий включает совместимый со skills.sh навык агента в skills/preflight/SKILL.md. Он даёт агентам кодирования повторяемый рабочий процесс Preflight: проверка preflight.yml, запуск безопасных для CI сканирований, сортировка результатов, избегание небезопасных игнорирований, повторный запуск валидации и отчёт об остаточном риске запуска.

Выведите список навыков из этого репозитория:

root@kitploit:~
# С помощью Bun
bunx --yes skills add preflightsh/preflight --list

# Или с помощью npm
npx --yes skills add preflightsh/preflight --list

Установите только навык Preflight:

root@kitploit:~
# С помощью Bun
bunx --yes skills add preflightsh/preflight --skill preflight

# Или с помощью npm
npx --yes skills add preflightsh/preflight --skill preflight

Панель управления и ИИ-подсказки

Preflight полностью работает из командной строки без учётной записи. Дополнительная панель управления на app.preflight.sh добавляет размещённую историю ваших сканирований и сгенерированные ИИ подсказки по исправлению для каждой находки. Ваш код никогда не покидает вашу машину: сканирование выполняется локально, и при публикации отправляется только сокращённая сводка результатов (ID проверок, статусы и сообщения, но никогда секретные значения или содержимое файлов).

Создайте бесплатную учётную запись, затем подключите CLI:

root@kitploit:~
preflight auth login    # открывает браузер для авторизации этого CLI
preflight auth status   # показывает, под каким пользователем вы вошли
preflight auth logout   # удаляет сохранённые учётные данные

Опубликуйте сканирование на панели управления с помощью --publish. Он выводит ссылку для просмотра запуска. Публикация выполняется по принципу «лучшее усилие»: если вы офлайн или не вошли в систему, сканирование всё равно выполняется и завершается нормально.

root@kitploit:~
preflight scan --publish

На панели управления вы получаете разбивку pass/warn/fail для каждого запуска, полный список находок и историю по каждому проекту, чтобы видеть, что изменилось между развёртываниями.

Вы также можете прочитать эту историю из терминала с помощью preflight history:

root@kitploit:~
preflight history                       # недавние запуски по всем вашим проектам
preflight history --here                # только запуски текущего проекта
preflight history <run-id>              # полные результаты проверок одного запуска
preflight history --here --format json  # машиночитаемый формат для агентов

Требуется preflight auth login. --here сопоставляет запуски с текущим репозиторием по его git-remote, используя тот же ключ, что и при публикации.

Откройте любую неудачную проверку или проверку с предупреждением в опубликованном запуске, чтобы сгенерировать пошаговое исправление, адаптированное под ваш обнаруженный стек, с готовыми к копированию командами и кодом.

  • Бесплатно включает 5 опубликованных запусков в месяц.
  • Свой ключ: добавьте API-ключ OpenAI или Anthropic в настройках панели управления, и публикация останется бесплатной и безлимитной (вы платите своему провайдеру напрямую).
  • Управляемый ($5/мес): мы покрываем расходы на ИИ, и запуски безлимитны, API-ключ не требуется.

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

ПроверкаОписание
ENV ParityСравнивает .env и .env.example на предмет отсутствующих переменных
Health EndpointПроверяет доступность сайта; автоматически определяет /health, /healthz, /api/health или возвращается к корневому пути
Vulnerability ScanПроверяет уязвимости зависимостей (bundle audit, npm audit и т. д.)
SEO MetadataПроверяет наличие title, description и тегов Open Graph
OG & Twitter CardsПроверяет og:image, twitter:card и метаданные для публикации в соцсетях
Canonical URLПроверяет наличие тега canonical link
ViewportПроверяет правильный метатег viewport для мобильных устройств
Lang AttributeПроверяет атрибут html lang для доступности
Structured DataПроверяет наличие разметки JSON-LD Schema.org
Security HeadersПроверяет HSTS, CSP, X-Content-Type-Options как на продакшене, так и на стейджинге
SSL CertificateПроверяет действительность SSL и предупреждает до истечения срока
WWW RedirectПроверяет редирект www/без-www на канонический URL
Email AuthПроверяет DNS-записи SPF/DMARC для доставляемости почты (по желанию)
Secret ScanningНаходит утёкшие API-ключи и учётные данные в коде
Debug StatementsОбнаруживает console.log, var_dump, debugger, оставленные в коде
Error PagesПроверяет наличие пользовательских страниц ошибок 404/500
Image OptimizationНаходит большие изображения (>500KB), которые замедляют загрузку
Legal PagesПроверяет наличие страниц политики конфиденциальности и условий обслуживания
Cookie ConsentОбнаруживает решение для согласия на cookie (соответствие GDPR/CCPA)

Поддерживаемые сервисы (72)

Preflight автоматически определяет и проверяет конфигурацию для этих сервисов:

Платежи

  • Stripe, PayPal, Braintree, Paddle, LemonSqueezy

Отслеживание ошибок и мониторинг

  • Sentry, Bugsnag, Rollbar, Honeybadger, Datadog, New Relic, LogRocket

Электронная почта и рассылки

  • Postmark, SendGrid, Mailgun, AWS SES, Resend, Mailchimp, Kit, Beehiiv, AWeber, ActiveCampaign, Campaign Monitor, Drip, Klaviyo, Buttondown

Аналитика

  • Plausible, Fathom, Umami, Fullres Analytics, Datafa.st Analytics, Google Analytics, PostHog, Mixpanel, Amplitude, Segment, Hotjar

Аутентификация

  • Auth0, Clerk, WorkOS

Чат

  • Intercom, Crisp

Уведомления

  • Slack, Discord, Twilio

Инфраструктура

  • Firebase, Supabase, Redis, Sidekiq, RabbitMQ, Elasticsearch, Convex

Хранилище и CDN

  • AWS S3, Cloudinary, Cloudflare

Поиск

  • Algolia

SEO

  • IndexNow

ИИ / LLM

  • OpenAI, Anthropic Claude, Google AI (Gemini), Mistral, Cohere, Replicate, Hugging Face, Grok (X/Twitter), Perplexity, Together AI

Конфигурация

Preflight использует файл preflight.yml в корне вашего проекта:

root@kitploit:~
projectName: my-app
stack: rails  # rails, next, react, vite, laravel и т. д.

urls:
  staging: "https://staging.example.com"
  production: "https://example.com"

services:
  stripe:
    declared: true
  sentry:
    declared: true

checks:
  envParity:
    enabled: true
    envFile: ".env"
    exampleFile: ".env.example"

  healthEndpoint:
    enabled: true
    path: "/health"  # необязательно — автоматически определяет распространённые пути, если не задано

  stripeWebhook:
    enabled: true
    url: "https://api.example.com/webhooks/stripe"  # необязательно — проверяется GET-запросом; сообщается о 404 или отсутствии ответа

  seoMeta:
    enabled: true
    mainLayout: "app/views/layouts/application.html.erb"

  security:
    enabled: true

  secrets:
    enabled: true
    # Пофайловый список разрешений для сканирования секретов. Используйте его, чтобы
    # подавить отдельную находку (например, публичный ключ с ограничением по referrer),
    # не отключая всю проверку.
    allowlist:
      - path: web/js/golden-hour.js
        fingerprint: "sha256:<hex>"   # рекомендуется — привязывает к точному секрету
        reason: "Ключ Google Timezone с ограничением по HTTP-referrer"
      - path: "web/tools/**/*.php"    # поддерживаются glob-шаблоны doublestar

  indexNow:
    enabled: true
    key: "your32characterhexkeyhere00000"

  emailAuth:
    enabled: true  # по желанию, проверяет SPF/DMARC на продакшен-домене

  humansTxt:
    enabled: false  # по желанию, указывает команду

  license:
    enabled: false  # по желанию, для проектов с открытым исходным кодом

# Отключение конкретных проверок или сервисов по ID
ignore:
  - sitemap
  - llms_txt
  - google_analytics

Игнорирование проверок и сервисов

Отключите конкретные проверки или сервисы с помощью preflight ignore <id>:

root@kitploit:~
preflight ignore sitemap        # Игнорировать проверку sitemap
preflight ignore sentry         # Игнорировать проверку сервиса Sentry
preflight unignore sitemap      # Повторно включить проверку sitemap
preflight checks                # Список всех игнорируемых ID

Добавление в список разрешений отдельной находки секретов

Предпочтительнее добавлять в список разрешений отдельную находку, чем отключать всю проверку secrets. Добавляйте разовые исключения из командной строки:

root@kitploit:~
preflight ignore secrets web/js/golden-hour.js

Это добавляет запись пути в checks.secrets.allowlist в вашем preflight.yml. Поле path — это glob-шаблон doublestar (** сопоставляется через каталоги), разрешаемый относительно пути файла в проекте.

Зафиксируйте отпечаток (fingerprint). Список разрешений только по пути молча принимает любой будущий секрет, попавший в этот файл. Отредактируйте запись и добавьте fingerprint: "sha256:<hex>" — SHA-256 обнаруженного значения секрета. Теперь, если ключ будет ротирован или в том же файле появится другой секрет, preflight снова подаст сигнал.

Находки сопоставляются по пути + отпечатку, а не по всему файлу. Отпечаток в списке разрешений в файле не подавляет другие секреты на других строках того же файла.

Игнорируемые ID проверок

SEO и соцсети: seo_meta, canonical, structured_data, index_now (по желанию), og_twitter, viewport, lang

Безопасность и инфраструктура: security_headers, ssl, www_redirect, email_auth (по желанию), secrets

Окружение и здоровье: env_parity, health_endpoint

Качество кода и производительность: vulnerability, debug_statements, error_pages, image_optimization

Юридическое и соответствие: legal_pages

Стандартные веб-файлы: favicon, robots_txt, sitemap, llms_txt, ads_txt (по желанию), humans_txt (по желанию), license (по желанию)

Переименованные ID проверок в 0.22

Теперь каждый ID проверки записывается в snake_case. Старые имена в camelCase продолжают работать везде, где принимается ID (списки ignore:, --only, --skip, preflight ignore) на протяжении всей линейки 1.x, с примечанием в stderr, и будут удалены в 2.0. preflight ignore записывает новое имя. Ключи в checks: в preflight.yml (healthEndpoint, seoMeta, ...) — это отдельная схема и не изменились.

СтароеНовое
seoMetaseo_meta
ogTwitterog_twitter
securityHeaderssecurity_headers
envParityenv_parity
healthEndpointhealth_endpoint
robotsTxtrobots_txt
llmsTxtllms_txt
adsTxtads_txt
humansTxthumans_txt
indexNowindex_now

Примечание о сканировании кода, которому вы не доверяете

Каждая проверка читает файлы; одна запускает программу. Проверка vulnerability выполняет собственный менеджер пакетов вашего проекта (npm audit, yarn audit, composer audit, bundle audit, pip-audit, govulncheck, cargo audit) внутри каталога проекта, с очищенным окружением и временным домашним каталогом, чтобы она не могла прочитать ваши токены. Менеджеры пакетов по-прежнему учитывают локальную конфигурацию проекта, и некоторая часть этой конфигурации может выполнять код из репозитория (Yarn yarnPath, алиас Cargo, плагин Composer). Сканирование собственных проектов — это то, для чего предназначен Preflight. При сканировании репозитория, которому вы не доверяете, например pull request форка в CI, добавьте --skip vulnerability.

Игнорируемые ID сервисов

Все сервисы имеют проверки валидации, которые подтверждают правильную интеграцию (переменные окружения, паттерны SDK, файлы конфигурации):

Платежи: stripe, paypal, braintree, paddle, lemonsqueezy

Отслеживание ошибок: sentry, bugsnag, rollbar, honeybadger, datadog, newrelic, logrocket

Транзакционная почта: postmark, sendgrid, mailgun, aws_ses, resend

Email-маркетинг: mailchimp, convertkit, beehiiv, aweber, activecampaign, campaignmonitor, drip, klaviyo, buttondown

Аналитика: plausible, fathom, google_analytics, fullres, datafast, posthog, mixpanel, amplitude, segment, hotjar

Аутентификация: auth0, clerk, workos, firebase, supabase

Коммуникации: twilio, slack, discord, intercom, crisp

Инфраструктура: redis, sidekiq, rabbitmq, elasticsearch, convex

Хранилище и CDN: aws_s3, cloudinary, cloudflare

Поиск: algolia

ИИ: openai, anthropic, google_ai, mistral, cohere, replicate, huggingface, grok, perplexity, together_ai

SEO: index_now

Согласие на cookie: cookieconsent, cookiebot, onetrust, termly, cookieyes, iubenda

Коды выхода

КодЗначение
0Все проверки пройдены
1Только предупреждения
2Найдены ошибки
64Preflight не смог выполниться (неверный путь, нечитаемая конфигурация, неизвестный ID проверки)
130Сканирование отменено (Ctrl-C / SIGTERM)

Коды 1 и 2 означают, что сканирование выполнилось и что-то сообщило. Код 64 означает, что оно не дошло до этого этапа, поэтому CI может отличить «у этого проекта есть проблемы» от «этот вызов был некорректен».

Автодополнение в оболочке

Дополнение по Tab для команд, флагов и ID проверок (включая значения --only и --skip):

root@kitploit:~
# bash (добавьте в ~/.bashrc)
source <(preflight completion bash)

# zsh (добавьте в ~/.zshrc)
source <(preflight completion zsh)

# fish
preflight completion fish | source

Вывод также учитывает переменную окружения NO_COLOR.

Поддерживаемые стеки

Бэкенд-фреймворки

  • Ruby on Rails, Laravel, PHP, Go, Python/Django, Rust, Node.js

Фронтенд-фреймворки

  • Next.js, Nuxt, Remix, React, Vue.js, Vite, Svelte, Angular

Традиционные CMS

  • WordPress, Craft CMS, Drupal, Ghost

Генераторы статических сайтов

  • Hugo, Jekyll, Gatsby, Eleventy (11ty), Astro

Headless CMS

  • Strapi, Sanity, Contentful, Prismic

Другое

  • Статические сайты

Интеграция с CI

root@kitploit:~
# Пример GitHub Actions (curl)
- name: Run Preflight
  run: |
    curl -sSL https://preflight.sh/install.sh | sh
    preflight scan --ci --format json
root@kitploit:~
# Пример GitHub Actions (Docker)
- name: Run Preflight
  run: docker run -v ${{ github.workspace }}:/app ghcr.io/preflightsh/preflight scan --ci --format json

Лицензия

MIT

Скачать инструмент
Favicon & IconsПроверяет наличие favicon, apple-touch-icon (.png, .webp, .svg) и web manifest
robots.txtПроверяет, что robots.txt существует и содержит контент
sitemap.xmlПроверяет наличие sitemap или генератора
llms.txtПроверяет наличие файла рекомендаций для LLM-краулеров
ads.txtПроверяет ads.txt для сайтов с рекламой (по желанию)
humans.txtПроверяет наличие humans.txt для указания команды (по желанию)
IndexNowПроверяет файл ключа IndexNow для ускоренной индексации в поиске (по желанию)
LICENSEПроверяет наличие файла лицензии (по желанию, для проектов с открытым исходным кодом)