ComposerRequireChecker CLI

ComposerRequireChecker находит PHP-символы и расширения, которые использует код без объявления прямых зависимостей Composer.

  • 1 011 ★ репозитория
  • Последний коммит
  • MIT
CLI

Расширенный доступ

Почему такой уровень

  • Для анализа утилита читает исходники и установленное дерево зависимостей локального проекта.
Все причины и проверки

maglnet/composerrequirechecker

Установка

Ручная установка

Текст для агента

Скачай PHAR из первого рекомендованного раздела README и проверь его происхождение. Запускай анализ на подготовленных зависимостях, исправления согласуй отдельно.

Доступ и проверки

Как мы проверяем

Расширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.

  • Для анализа утилита читает исходники и установленное дерево зависимостей локального проекта.

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

ComposerRequireChecker разбирает PHP-код и сопоставляет используемые символы с зависимостями в `composer.json`. Он обнаруживает случаи, когда проект обращается к классу из косвенно установленной библиотеки, которую сам не запросил. Такая находка помогает уточнить зависимости до обновления пакетов. Утилита также проверяет функции расширений PHP и может сканировать дополнительные файлы вне обычной автозагрузки. Она работает с уже установленной структурой каталогов, не устанавливает зависимости и не меняет код. После отчета разработчик решает, что объявить, удалить или добавить в допустимые исключения.

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

Подходит, если

  • После обновления библиотеки нужно проверить прямые зависимости проекта.
  • PHP-пакет использует расширения, которые надо объявить явно.
  • Перед выпуском в CI требуется найти неизвестные символы.
  • Скрипты вне автозагрузки надо добавить в область статической проверки.

Не подходит, если

  • Инструмент должен сам устанавливать пакеты или менять `composer.json`.
  • Нужна полная проверка поведения приложения вместо анализа зависимостей.
  • Структура каталогов после нестандартных установочных плагинов не учтена.

Пример запроса к агенту

Проверь composer.json и PHP-код на неявные зависимости, объясни каждую находку и предложи правки без установки пакетов.

Ограничения

Перед анализом установите зависимости проекта через Composer: утилита читает уже готовое дерево каталогов. Нестандартные плагины установки могут размещать код вне ожидаемых каталогов, из-за чего утилита неверно определит доступные символы. ComposerRequireChecker читает только один конфигурационный файл; добавляя исключения, сохраните в нем нужные стандартные значения. Xdebug может замедлить анализ и вызвать ошибку предела вложенности; запускайте проверку в PHP без этого расширения.

Как отключить. Уберите команду проверки из CI и удалите отдельный PHAR при необходимости. Исходники проекта утилита не изменяет.

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

Меняет ли утилита код?

Нет. Она читает проект и сообщает о зависимостях; правки выполняются отдельно.

Нужно ли ставить ее в зависимости проекта?

Нет. Скачайте отдельный PHAR из Releases и запускайте его для нужного проекта. Зависимости анализируемого проекта подготовьте заранее.

Проверяются ли расширения PHP?

Да. Используемые функции расширений должны быть отражены в требованиях Composer.

Как добавить скрипты вне автозагрузки?

Укажите шаблоны в `scan-files` конфигурации и проверьте охват файлов.

Почему после настройки появились ошибки по базовым символам?

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

Обсуждение

Вопросов и отзывов пока нет.

PHP_CodeSniffer, CLI проверки PHP, применяет правила проекта локально и в CI: команда согласует единый стандарт оформления.

CLIРасширенный доступ1,6 тыс.Звезды репозитория

Скилл состязательного аудита кода: Hunter ищет ошибки, Skeptic их оспаривает, Referee выносит вердикт, а правки без вашего разрешения не вносятся

СкиллРасширенный доступ549Звезды репозитория

Плагин Claude Code проверяет изменение по плану: поднимает стек, прогоняет критерии приемки и дает отчет с доказательствами.

ПлагинШирокий доступ115Звезды репозитория

Qlty CLI показывает дубли и сложные участки кода до рефакторинга; автоматическое форматирование запускается отдельно.

CLIРасширенный доступ3,2 тыс.Звезды репозитория
Выбор редакции

CLI для тестирования и ред-тиминга LLM-приложений: сравнение моделей, автоматические проверки в CI и поиск уязвимостей

CLIРасширенный доступ26,9 тыс.Звезды репозитория
Российский стек

Плагин Claude Code и OpenCode, который не дает закончить сессию, пока правки 1С не прошли проверку стандартов, архитектуры и XML

ПлагинРасширенный доступ49Звезды репозитория

Коротко о README

Собственная конфигурация по умолчанию берется из `composer-require-checker.json`. В документации есть разбор нестандартных каталогов зависимостей.

Бейдж для README

Сообщить о проблеме

Foxx AIComposerRequireChecker
Foxx AI

Я Foxx AI и уже разобрал этот инструмент. Спросите про установку, настройку или что угодно еще, отвечу простыми словами.