A Claude Code plugin for PHP and Laravel developers. This plugin provides agents, skills, and coding rules tailored for Laravel development.
# Add the marketplace
/plugin marketplace add guetteman/claude-code
# Install the plugin
/plugin install laravel@guettemanA senior Laravel software architect following Taylor Otwell's philosophy: "Code should be like Kenny from South Park, not T1000 from Terminator—disposable, easy to change."
Use when designing features, reviewing architecture decisions, or when you need guidance on "the Laravel way."
An elite TDD specialist using Pest PHP. Activates for writing tests, implementing features with TDD, running test suites, architecture testing, and mutation testing. Follows the sacred RED-GREEN-REFACTOR cycle.
Reviews Laravel code for security vulnerabilities and best practices.
Reviews code against all project rules. Spawns parallel agents to check each rule file and provides a summary of violations with fix suggestions.
Conducts in-depth technical interviews about implementation plans before coding begins. Helps refine and validate your approach by exploring edge cases, failure modes, and tradeoffs.
This plugin includes opinionated coding rules organized by category:
accessors-mutators- Prefer attribute casting over accessors/mutatorsapi-resource-resolution- API resource resolution patternsarrayable-iterations- Iterating over Arrayable objectsclass-imports- Import conventionscollection-higher-order-messages- Use higher-order messages for simple operationsdatabase-transactions- Database transaction best practicesform-request-authorization- Form request authorization patternslocal-scopes- Eloquent local scope conventionsresource-collections- API resource collection patternssingle-action-controllers- When to use invokable controllers
assert-database-empty- Database emptiness assertionsavoid-and-modifier- Avoid theand()modifierchained-higher-order-expectations- Chain expectations elegantlydatabase-assertions-use-models- Use models in database assertionsfactory-count-syntax- Factory count syntax preferencesfactory-relationships- Factory relationship patternshigher-order-expectations- Use higher-order expectationsmagic-factory-relationships- Magic factory relationship methodsminimize-refresh-usage- Minimize model refresh callsmocking- Mocking best practicestest-file-location- Test file organizationuse-test-function- Usetest()overit()
array-destructuring- Array destructuring conventions
enum-options- Enum options in Filament forms
commits- Commit message conventions
Current Limitation: Claude Code plugins do not yet support automatic distribution of rules. The rules included in this plugin will not be automatically applied to your projects.
To use the rules, you need to manually copy them to your project's .claude/rules directory:
# Copy all rules to your project
cp -r ~/.claude/plugins/marketplaces/guetteman/plugins/laravel/rules/* /path/to/your/project/.claude/rules/
# Or copy specific categories
cp -r ~/.claude/plugins/marketplaces/guetteman/plugins/laravel/rules/laravel/* /path/to/your/project/.claude/rules/laravel/
cp -r ~/.claude/plugins/marketplaces/guetteman/plugins/laravel/rules/pest/* /path/to/your/project/.claude/rules/pest/Alternatively, you can symlink the rules directory if you want to keep them in sync:
ln -s ~/.claude/plugins/marketplaces/guetteman/plugins/laravel/rules /path/to/your/project/.claude/rulesThese rules reflect my personal preferences and coding style. They are not universal truths or official Laravel conventions. Your preferences may differ, and that's perfectly fine.
I encourage you to:
-
Review the rules before using them. Read through each rule file to understand what it enforces.
-
Modify rules that don't match your style. Edit the markdown files to reflect your team's conventions.
-
Delete rules you disagree with. If a rule doesn't make sense for your project, remove it.
-
Create your own rules based on patterns you want to enforce.
-
Share your rules with your team by committing them to your project's
.claude/rulesdirectory.
Found a bug or have a suggestion? Feel free to open an issue or submit a pull request.
MIT