不建议从 laravel 11 直接升级到 laravel 13,须按 11→12→13 逐版升级;laravel boost 是辅助理解差异、验证改动的智能协作者,非自动迁移器。

直接从 Laravel 11 升级到 Laravel 13 不建议跳过中间版本,官方明确推荐逐版升级(11 → 12 → 13),尤其涉及 PHP 版本、核心组件和 AI 工具链的重大变更。Laravel Boost 在这个过程中不是“自动迁移器”,而是辅助你理解差异、验证改动、执行安全操作的智能协作者。
先确认基础兼容性
Laravel 13 要求 PHP 8.3+,而 Laravel 11 默认支持 PHP 8.0–8.2。你必须先将项目环境升级到 PHP 8.3,并确保所有第三方包兼容该版本。检查方式:
- 运行
php -v确认 CLI 使用的是 PHP 8.3 - 在
composer.json中更新"php": "^8.3" - 执行
composer update --dry-run预览依赖冲突,重点关注laravel/framework、symfony/*和常用扩展包(如spatie/laravel-permission)是否提供 PHP 8.3 兼容版本
分步升级路径:11 → 12 → 13
跳过 Laravel 12 会导致大量破坏性变更集中爆发(如 Attributes 全面启用、队列与缓存底层重构、Tinker v3 接口变化),极难调试。正确顺序是:
- 将 Laravel 11 升级至 Laravel 12:按Laravel 12 升级指南逐项检查配置、中间件、模型属性、资源响应等变更点
- 安装并配置 Laravel Boost v2.0:
composer require laravel/boost --dev,再运行php artisan boost:install - 用 Boost 辅助完成 Laravel 12 → 13 升级:在支持 MCP 的 AI 编程环境(如 Cursor 或 Claude Code)中输入
/upgrade-laravel-v13,Boost 会自动分析你的代码,提示需修改的模型注解、命令签名、测试断言等,并生成可审阅的补丁建议
Boost 的关键作用不是替代人工,而是减少盲区
Boost v2.0 在升级中真正帮上忙的地方在于:
-
自动识别旧式写法:比如扫描出仍使用
protected $fillable数组的模型,提示你改用#[Fillable]属性 -
检查 Artisan 命令变更:Laravel 13 中部分命令参数已废弃(如
make:model --migration改为--m),Boost 可定位调用位置并建议替换 -
验证 PHPUnit/Pest 兼容性:检测测试中是否用了已被移除的断言方法(如
assertSeeTextInOrder),并给出对应新版写法 -
环境变量与配置联动分析:提醒你
config/cache.php中某些键名已重命名,避免升级后缓存失效却不报错
升级后必须做的三件事
完成 Composer 更新和代码调整后,别急着上线:
- 运行
php artisan boost:update --discover,让 Boost 扫描新引入的 Laravel 13 包(如laravel/ai),加载对应技能和文档上下文 - 清除全部缓存:
php artisan config:clear && php artisan route:clear && php artisan view:clear && php artisan cache:clear - 用 Boost 启动 MCP 服务后,在 AI 环境中执行
/audit-app-health(若已启用 Health Skill),它会检查数据库连接、队列监听状态、关键中间件是否注册成功











