← ClaudeAtlas

labrodev-static-analysislisted

Use when configuring, running, or fixing findings from the code-quality toolchain in a Labrodev Laravel project — Pint (pint.json, code style), PHPStan/Larastan (phpstan.neon, levels, baselines, generics errors), or Rector (rector.php, automated refactoring) — or when deciding whether a tool error may be suppressed.
labrodev/laravel-playbook · ★ 0 · AI & Automation · score 73
Install: claude install-skill labrodev/laravel-playbook
# Static Analysis: Pint, PHPStan, Rector Part of the Labrodev playbook. **The law for this component lives in the always-on `labrodev-static-analysis` guideline** (musts, must-nots); the per-file checklist is `rules/static-analysis.md`. This skill holds the craft: configs, run order, and troubleshooting. ## Commands ```bash vendor/bin/rector process app/ src/ # automated refactoring (review the diff!) vendor/bin/pint # code style — config is canonical vendor/bin/phpstan analyse --memory-limit=2G # static analysis (Larastan) — must pass ``` When the local PHP version differs from the project's required version, run the tools through the project runtime (Sail): `vendor/bin/sail bin phpstan analyse --memory-limit=2G` — never against a mismatched local PHP. Composer scripts (recommended, so every agent and CI runs the same thing): ```json "scripts": { "refactor": "rector process", "lint": "pint", "analyse": "phpstan analyse --memory-limit=1G", "check": [ "@refactor", "@lint", "@analyse" ] } ``` ## Pint Pint enforces formatting, imports, spacing, and modern PHP conventions. The `laravel` preset is the base; add the rules that mechanically enforce the playbook's file-header contract instead of relying on discipline: ```json { "preset": "laravel", "notPath": [ "_ide_helper_models.php" ], "rules": { "declare_strict_types": true, "final_class": true, "