matesofmate/phpstan-extension

PHPStan extension for Symfony AI Mate providing AI assistants with efficient static analysis tools

Maintainers

Package info

github.com/MatesOfMate/phpstan-extension

Type:symfony-ai-mate

pkg:composer/matesofmate/phpstan-extension

Statistics

Installs: 1 416

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

0.2.0 2026-04-14 12:20 UTC

This package is auto-updated.

Last update: 2026-04-25 17:15:18 UTC


README

Token-efficient PHPStan analysis tools for AI assistants. This package runs PHPStan and returns encoded structured results geared toward debugging and iteration.

Features

  • analyse the full project or a selected file or directory
  • clear PHPStan result cache
  • three consistent compact output modes
  • automatic configuration detection

Installation

composer require --dev matesofmate/phpstan-extension
vendor/bin/mate init

In current AI Mate setups, extension discovery is handled automatically after Composer install and update. Run vendor/bin/mate discover when you want to refresh discovery artifacts such as mate/AGENT_INSTRUCTIONS.md.

Useful Mate commands:

vendor/bin/mate debug:extensions
vendor/bin/mate debug:capabilities
vendor/bin/mate mcp:tools:list --extension=matesofmate/phpstan-extension

Use the generated wrapper for Codex:

./bin/codex

Custom Command Configuration

If PHPStan must run through Docker or another wrapper command, configure matesofmate_phpstan.custom_command.

use Symfony\Component\DependencyInjection\Loader\Configurator\ContainerConfigurator;

return static function (ContainerConfigurator $container): void {
    $container->parameters()->set('matesofmate_phpstan.custom_command', [
        'docker', 'compose', 'exec', 'php', 'vendor/bin/phpstan',
    ]);
};

Requirements

  • PHP 8.2+
  • Symfony AI Mate 0.8+ required
  • PHPStan 2.x in the target project

Available Tools

  • phpstan-analyse
  • phpstan-clear-cache

This package returns encoded strings through Mate's core ResponseEncoder. Install the suggested helgesverre/toon package if you want TOON responses; otherwise the same payload falls back to JSON.

Output Modes

  • default
  • summary
  • detailed

Development

composer install
composer test
composer lint
composer fix

License

MIT