laravel/tinker
56.2
Adequate · 26 September 2026
518
lines of production code
PHP
primary language
4
measurements over time
What this system is
This system is the Laravel Tinker package, an interactive REPL tool for executing PHP code within Laravel and Lumen applications. It provides a configurable environment for debugging and development, featuring custom command registration, class aliasing, and enhanced object inspection via casters. The package supports modern PHP and Laravel versions, ensuring compatibility through deferred service providers and robust testing infrastructure.
Features
Initial Tinker configuration file added
A new \config/tinker.php\ file has been introduced to allow customization of the Tinker environment. Users can now register additional Artisan commands via the \commands\ array, explicitly alias specific vendor classes through the \alias\ array, and prevent automatic aliasing for certain classes (such as \App ova\) using the \dont\_alias\ array. Additionally, the \trust\_project\ setting is configurable via the \TINKER\_TRUST\_PROJECT\ environment variable to control PsySH's project trust warnings.
config · high confidence
Behavioural changes
Enhanced Tinker casting and service provider configuration
Tinker now provides richer inspection for Laravel objects: HtmlString, Stringable, and ProcessResult instances are cast to display their content or status, and Eloquent models now explicitly show hidden and appended attributes in the REPL. The Tinker service provider has been refactored to implement DeferrableProvider for deferred loading, and it now handles configuration merging and publishing for both Laravel and Lumen applications.
src · high confidence
Repository maintenance and CI migration
This update migrates the continuous integration pipeline from Travis CI to GitHub Actions, reflected in the removal of .travis.yml and the addition of .styleci.yml and phpstan.neon.dist for code style and static analysis. The project documentation has been consolidated, with the README now directing users to the official Laravel website for usage instructions and contribution guidelines, while the CHANGELOG.md has been expanded to include historical release notes. Additionally, configuration files have been standardized (renaming phpunit.xml to phpunit.xml.dist), git attributes and ignore lists have been updated to reflect the new CI setup, and the license file format has been changed from .txt to .md.
(repo-wide) · high confidence
Tinker command modernization and new configuration options
The Tinker console command has been updated for Laravel 5.5+ compatibility by replacing the deprecated \fire()\ method with \handle()\. Users can now execute code directly via the new \--execute\ option, which returns the correct exit code on exceptions. The command supports custom Artisan commands via the \tinker.commands\ config, allows disabling the PsySH update check, and trusts project settings from config. New casters have been added for \HtmlString\, \Stringable\, and \ProcessResult\ objects, and custom casters can be registered via the \tinker.casters\ config option.
src/Console · high confidence
Test coverage
Added tests for ClassAliasAutoloader vendor whitelisting and updated test infrastructure
This change adds a new test suite for the ClassAliasAutoloader, specifically verifying that vendor classes are excluded by default but can be explicitly whitelisted via configuration. It also includes fixture files to support these tests and updates the existing TinkerCasterTest to use the modern PHPUnit TestCase namespace and PSR-1 coding standards.
tests · high confidence
Dependencies
Update to version 3.x with Laravel 13 and PHP 8.1+ support
The package has been updated to version 3.x, raising the minimum PHP requirement to 8.1 and expanding Laravel compatibility to include versions 8 through 13. The PsySH dependency has been bumped to version 0.12.19, and Symfony Var-Dumper support now covers versions 5.4 through 8.0. Additionally, the development environment now uses PHPStan for type checking and PHPUnit 10.5/11.5 for testing, while the autoloading namespaces have been updated to reflect the new package structure.
(dependencies) · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
Score
- CAI 44 → 56 (+11.7)
- Rubric changed (rubric-2026.08.15 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 100 → 100 (+0.0)
- Architecture 69 → 69 (+0.0)
- Maturity 38 → 33 (-4.6)
- Readiness 30 → 82 (+51.7)
- Security 77 → 82 (+4.5)
Resolved (5)
- Coverage not measured — test suite did not build
- Dimension evaluation failed
- No exposed public API
- No tests found
- Test reliability not included
New (7)
- Dependency hygiene PARTLY measured — Composer dependencies read, no committed lock to grade for currency
- Documentation: no contributor guidance (README.md)
- Documentation: no installation or build instructions (README.md)
- Documentation: no usage examples (README.md)
- Further sole-owners (lower concentration)
- Off-boarding risk: anonymized user #1
- Orphaned files with no living knowledge
Changes since last survey
- 2 commits — 2 feature/other, 0 fixes
By area
- (root) — 2 commits
Notable commits
- change: Bump minimum PsySH version (#212)
- change: Remove Mockery (#214)
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
laravel/tinker was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 26 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit 8f4063c64bb5a39c2ae46d400995ce7d28a2e593 — the exact code this score is about.
- Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-a15879f6f801.