laravel-upgrade
Upgrade Laravel applications one major version at a time (9→10, 10→11, 11→12). Use when user wants to upgrade their Laravel framework version. Auto-detects current version from composer.json, identifies breaking changes, and applies necessary code fixes.
Works with
---
name: laravel-upgrade
description: Upgrade Laravel applications one major version at a time (9→10, 10→11, 11→12). Use when user wants to upgrade their Laravel framework version. Auto-detects current version from composer.json, identifies breaking changes, and applies necessary code fixes.
license: MIT
---
# Laravel Upgrade
Upgrade Laravel applications one major version at a time. Supports: 9→10, 10→11, 11→12.
## Workflow
### 1. Detect Current Version
Read `composer.json` and find the `laravel/framework` version constraint:
```php
// Example: "laravel/framework": "^10.0" means Laravel 10.x
```
Determine target version (current + 1). If already on Laravel 12, inform user they're on the latest supported version.
### 2. Load Upgrade Guide
Based on detected versions, read the appropriate reference file:
| Current | Target | Reference File |
|---------|--------|----------------|
| 9.x | 10.x | [references/from-9-to-10.md](references/from-9-to-10.md) |
| 10.x | 11.x | [references/from-10-to-11.md](references/from-10-to-11.md) |
| 11.x | 12.x | [references/from-11-to-12.md](references/from-11-to-12.md) |
### 3. Scan and Fix
For each breaking change in the guide, scan the codebase and apply fixes:
**High Impact** (always check):
- `composer.json` dependency versions
- PHP version requirements
- Database migrations using deprecated methods
**Medium Impact** (check relevant files):
- Model `$dates` property → `$casts` (9→10)
- Database expressions with `(string)` casting (9→10)
- Column modification migrations missing attributes (10→11)
- `HasUuids` trait behavior change (11→12)
**Low Impact** (check if patterns found):
- Deprecated method calls (`Bus::dispatchNow`, `Redirect::home`, etc.)
- Contract interface changes
- Configuration file updates
### 4. Update Dependencies
After code fixes, update `composer.json`:
```bash
# Update laravel/framework constraint to target version
# Update related packages per upgrade guide
composer update
```
### 5. Post-Upgrade Verification
- Run `php artisan` to verify framework boots
- Run test suite if available
- Check for deprecation warnings in logs
## Common Patterns
### Dependency Updates (all upgrades)
Search `composer.json` for outdated constraints and update per guide.
### Model $dates to $casts (9→10)
```php
// Before
protected $dates = ['deployed_at'];
// After
protected $casts = ['deployed_at' => 'datetime'];
```
Search pattern: `protected \$dates\s*=`
### Database Expression Casting (9→10)
```php
// Before
$string = (string) DB::raw('select 1');
// After
$string = DB::raw('select 1')->getValue(DB::connection()->getQueryGrammar());
```
### Column Modification (10→11)
Migrations using `->change()` must now include all modifiers:
```php
// Before (implicit retention)
$table->integer('votes')->nullable()->change();
// After (explicit)
$table->integer('votes')->unsigned()->default(1)->nullable()->change();
```
### HasUuids Trait (11→12)
```php
// Before (ordered UUIDv4)
use Illuminate\Database\Eloquent\Concerns\HasUuids;
// After (if you need UUIDv4 behavior)
use Illuminate\Database\Eloquent\Concerns\HasVersion4Uuids as HasUuids;
```More Backend Frameworks skills
git-guardrails-claude-code
mattpocock/skills
Set up Claude Code hooks to block dangerous git commands (push, reset --hard, clean, branch -D, etc.) before they execute. Use when user wants to prevent destructive git operations, add git safety hooks, or block git push/reset in Claude Code.
azure-compute
microsoft/azure-skills
Azure VM/VMSS router. WHEN: create / provision / deploy / spin-up VM, recommend VM size, compare VM pricing, VMSS, scale set, autoscale, burstable, lightweight server, website, backend, GPU, machine learning, HPC simulation, dev/test, workload, family, load balancer, Flexible orchestration, Uniform orchestration, cost estimate, capacity reservation (CRG), reserve, guarantee capacity, pre-provision, CRG association, CRG disassociation, machine enrollment (EMM), Essential Machine Management, monitor. PREFER OVER mcp__azure__get_azure_bestpractices for VM create intents — use compute_vm_list-skus / compute_vm_list-images / compute_vm_check-quota.
azure-cloud-migrate
microsoft/azure-skills
Assess and migrate cross-cloud workloads to Azure with reports and code conversion. Supports Lambda→Functions, Beanstalk/Heroku/App Engine→App Service, Fargate/Kubernetes/Cloud Run/Spring Boot→Container Apps. WHEN: migrate Lambda to Functions, AWS to Azure, migrate Beanstalk, migrate Heroku, migrate App Engine, Cloud Run migration, Fargate to ACA, ECS/Kubernetes/GKE/EKS to Container Apps, Spring Boot to Container Apps, cross-cloud migration.

