Код та API
Перевіряй код, конфігураційні файли та формати API. Кожен інструмент указує правила перевірки й наявність мережевого запиту; локальна перевірка не запускає і не розгортає твій код.
21 інструментів у категорії.
Перевірка Dockerfile
Перевіряє Dockerfile за правилами надійності без запуску збірки: закріплені версії образів і пакетів, прибирання кешу apt, sudo, JSON-форма CMD і ENTRYPOINT, наявність pipefail у конвеєрах, COPY замість ADD для локальних файлів, посилання на невідомий етап у COPY --from, останній користувач root, послідовні RUN та застарілий MAINTAINER. Кожне зауваження має код правила, рівень і номер рядка, а результат можна вивантажити як CSV.
Перевірка shell-скриптів
Знаходить типові помилки в shell-скриптах без запуску коду: необгороджені змінні та підстановки команд, застарілі зворотні лапки, cd без перевірки помилки, cat у конвеєрі, використання $@ без лапок, невідомий або відсутній shebang, змінні, які призначено й ніколи не використано. Показано код правила, рівень і рядок, а також підсумок за рівнями.
Перевірка стилю SQL
Перевіряє запити на узгоджений стиль: регістр ключових слів, розташування ком, відступи, довжину рядка, SELECT *, пропущену крапку з комою в кінці, збалансованість дужок і зайві порожні рядки. Правила можна налаштувати, а кожне зауваження має код, рівень і рядок.
Перевірка Python
Швидко знаходить поширені проблеми в Python без запуску коду: невикористані імпорти, порівняння з None і з True, голий except, змінні за замовчуванням, що змінюються, завелика довжина рядка, табуляція, неоднозначні імена, присвоєння, яке ніколи не використано, і відсутній символ нового рядка в кінці.
Compose у Kubernetes
Перетворює власний опис Compose на ресурси Kubernetes: для кожного сервісу створює Deployment із образом, портами, змінними середовища, томами та обмеженнями, а за наявності портів — ще й Service із відповідним селектором. Показує зауваження про прив’язані каталоги, неоголошені томи, образ без тега та посилання на невідомий сервіс, і видає готовий маніфест YAML.
Перевірка GitHub Actions
Перевіряє workflow локально: обчислює порядок виконання залежностей, розкриває матрицю, знаходить кільце в needs, невідомий runner, крок із одночасними uses і run, крок без дії, застарілі команди set-output і старі основні версії офіційних дій. Нічого не надсилається в GitHub.
Оцінка політики доступу
Оцінює політику у зрозумілій підмножині Rego для наданого вхідного документа: package, default, повні правила з тілом, часткові правила deny[msg], заперечення not, порівняння, лічильники, перевірки початку й входження, змінні з := та індексацію зі знаком «будь-який». Показує рішення, спрацьовані правила та причини заборони.
Запити до JSON
Виконує вирази над власним JSON: шлях по полях, масиви та фільтри, зірочка для всіх значень, побудова об’єктів і масивів, змінні, діапазони, об’єднання рядків і десятки функцій — від count, sum, keys і sort до substring, replace і merge. Результат можна вивантажити як JSON.
Перевірка Thrift IDL
Розбирає IDL Thrift, перевіряє його структуру й генерує клієнт: знаходить повторені номери полів і назви, невідомі типи, обов’язкові поля в union, повторені методи, а потім створює інтерфейси, переліки, опис сервісів, схему у JSON і заготовку клієнта для передачі.
Перевірка складу проєкту на вразливості
Зіставляє перелік залежностей власного проєкту з базою записів про вразливості за діапазонами версій: приймає список «назва версія» або JSON переліку компонентів, порівнює версії з урахуванням попередніх випусків і показує, які записи стосуються саме цих версій та до якої версії слід оновитися. Вбудована база є прикладом для перевірки, а не живим каналом даних.
Клієнт власних HTTP API
Складає запит до власного API й показує точний вигляд на дроті: рядок запиту, заголовки, довжину тіла, підстановку базової автентифікації та носія токена. Заголовки перевіряються на приховані переноси рядків, тіло отримує узгоджений тип вмісту, а відповідь розбирається локально: клас статусу, заголовки, розмір, розбір JSON і зауваження про кешування та безпеку. Надсилання запиту в мережу відбувається лише після окремої згоди на цьому екрані.
Імітатор власного API
Описує маршрути у простому текстовому вигляді або JSON і знаходить відповідь на заданий запит: зіставлення шляху з параметрами, вибір точного маршруту замість маршруту з параметром, розділення запиту за методом із відповіддю 405, готові відповіді 404 і 405, а також підстановка значень у тіло відповіді з параметрів шляху, рядка запиту, заголовків і тіла. Підтримано прості випадкові значення з відтворюваним зерном.
Клієнт власного WebSocket
Розбирає рукопостискання WebSocket і перевіряє його за RFC 6455: метод, версію, заголовки переходу, довжину ключа в 16 байтів і правильне значення sec-websocket-accept, обчислене з ключа. Кодує й розбирає кадри: текст, двійкові, закриття, пінг і понг, довжини до 64 бітів, маскування, коди закриття та причини, а також відхиляє службові кадри понад 125 байтів і ненульові зарезервовані біти. Показано шістнадцятковий вигляд кадрів.
Клієнт власного MQTT-брокера
Кодує та розбирає пакети MQTT 3.1.1 власним кодеком: CONNECT із прапорцями чистої сесії, заповіту, імені та пароля, PUBLISH із рівнем якості, збереженням і дублюванням, SUBSCRIBE та SUBACK із кодами надання, CONNACK із причиною відмови. Окремо перевіряє зіставлення тем із шаблонами + та #, як того вимагає специфікація.
Доставка власних webhook
Планує доставку webhook із повторами: розклад затримок із множником і розкидом, підсумковий час очікування, класифікація кожної відповіді на успішну, тимчасову чи остаточну, зупинка після остаточної помилки, продовження після 429 і 5xx та підпис тіла через HMAC-SHA-256. Журнал спроб можна вивантажити, а жодного мережевого запиту не надсилається.
Перевірка API за описом
Читає опис OpenAPI у форматі JSON або YAML, перелічує операції, параметри та відповіді, а тоді будує набір перевірок: коректний запит, хибні типи, значення поза межами, відсутні обов’язкові властивості, зайвий шлях і відсутнє тіло. Окремо перевіряє саму відповідь провайдера: чи оголошено такий статус, чи є заголовок типу вмісту, чи збігається тіло зі схемою за типами, обов’язковими полями, переліками, межами, шаблонами й форматом дати. Знайдені хиби в самому описі теж показуються.
Контрактні тести клієнта й сервера
Читає контракт споживача у стилі Pact і зіставляє його з фактичними відповідями провайдера: точні значення, типи, цілі числа, десяткові числа, логічні значення, регулярні вирази, непорожні значення, дати, масиви з мінімальною кількістю елементів і шаблони повторюваних елементів. Кожна розбіжність має шлях у документі та пояснення, а звіт перевірки можна вивантажити.
Оптимізація власного WebAssembly
Розбирає двійковий модуль WebAssembly, згортає сталі вирази, прибирає код після завершальних інструкцій і невикористані локальні змінні, а тоді видає менший модуль. Результат перевіряється виконанням у власній пісочниці: показано розмір до й після, кожну зміну та справжній результат виклику.
Пісочниця WebAssembly
Виконує дозволений модуль WebAssembly у власній пісочниці з бюджетом кроків, обмеженою пам’яттю та списком дозволених імпортів. Показує результат виклику, витрачені кроки, експортовані функції, а при нескінченному циклі, діленні на нуль або виході за межі пам’яті — точну причину зупинки.
Огляд пакета FlatBuffers
Читає схему FlatBuffers, збирає пакет за нею й одразу читає його назад: таблиці, скалярні поля, рядки, вектори та вкладені таблиці. Показує розмір пакета, розташування полів і те, чи збігається прочитане зі заданим значенням.
Інспектор повідомлень Cap’n Proto
Читає схему Cap’n Proto, збирає повідомлення за нею й читає його назад: скалярні поля, текст, списки та вкладені структури. Показує розмір повідомлення в байтах, кількість слів даних і вказівників та збіг прочитаних значень із заданими.