Laravel12からLaravel13へアップグレード:Laravel Boost×生成AIで移行(つまずきポイントも解説)

Laravel

Laravel Boostを使って、Laravel 12プロジェクトをLaravel 13にアップグレードした手順をまとめます。

Laravel Boostとは、公式が提供するMCPサーバーです。Laravel×生成AIツールで開発を行う際に非常に便利!

このLaravel Boostに、Laravelバージョンアップ用機能も搭載されたということで、こちらを使って、生成AIに作業をサポートしてもらいながらアップグレードを進めました。

一言でいうと便利ですが、ただ、やはり手動作業は発生しましたね…

実際に経験した手順をこちらにまとめます。なお、公式のアップグレードガイドはこちらです。

Laravel 12→13にアップグレードするための要件

Laravel BoostでLaravel12から13にアップグレードするときには、次のような条件が必要となります。またClaude Codeなどの生成AIツールも必要です。

  • PHP 8.3以上
  • Laravel Boost v2.0以上(今回のAIによるアップグレード機能を使う場合)
  • Laravel v12.41.1以上(Boost v2の前提条件)*

Boost v2のパッケージ依存関係として定義されていました。

Laravel Boostでのアップグレードについて

今回はLaravel Boostの/upgrade-laravel-v13コマンドを使用します。

公式ドキュメントでも、Laravel Boostをつかったアップグレードに「/upgrade-laravel-v13」が使用できると紹介されています。

You can automate your upgrade using Laravel Boost. Boost is a first-party MCP server that provides your AI assistant with guided upgrade prompts — once installed in any Laravel 12 application, use the /upgrade-laravel-v13 slash command in Claude Code, Cursor, OpenCode, Gemini, or VS Code to begin the upgrade to Laravel 13.

出典:Laravel 13.x Upgrade Guide

このコマンドを実行すると、Laravel Boost MCPがプロジェクトの状態を分析し、順番に作業を進めてくれます。

Laravel Boostと生成AI(Claude Codeなど)の役割分担

なお、Laravel Boostと生成AIツールの役割分担を先にお伝えします。

  • Laravel Boostは、Laravelの公式ドキュメントに沿って設計図を渡してくれる。
  • 生成AIはこの設計図に沿って実際に手を動かしてくれる。

そういった分担となります。

わたしは今回、Claude Codeを使いました。下記は役割分担についてClaude Codeに聞いたときの画面です。

Laravel BoostをV2.0以上にする

まずLaravel Boostは2.0以上が必要となります。

  • v2以上が入っている → この節はスキップ
  • v1.8以上が入っている → 次のコマンドだけでOK
  • v1.8未満が入っている → MCPエラーが出ている可能性あり。2段階の作業が必要

v1.8以上の場合

下記コマンドでLaravel Boostを2.0に上げます。

v1.8未満の場合

Claude Codeを最新版にアップデートしたタイミングで Failed to reconnect to laravel-boost エラーが出ることがあります。storage/logs/laravel.log に以下が記録されていたら該当します。

これはClaude Codeの新バージョンが --transport=http オプションを渡すようになった一方、Laravel Boost v1.8未満が未対応なのが原因です。

以下のコマンドでまずMCPエラーを解消します。

MCPエラーが解消したら、続けてv2に上げます。

Laravel 13へのアップグレード(Laravel Boost使用)

Laravel Boost v2が入ったら、いよいよLaravel 13へアップグレードします。

Claude Code等の生成AIツールのチャット欄でスラッシュコマンドを実行します。

実行すると、アップグレード作業が進んでいきます。

エラーが出た場合

私の場合は、pestphp/pest-plugin-laravel のバージョン制約がLaravel 13と競合してエラーになりました。

生成AIが処理をしてくれました。この場合は composer.json の該当箇所を以下のように修正してから composer update を再実行します。

プロジェクトによってエラーが出るところは異なるかと思います。

生成AIが着々と処理してくれますので、とりあえず見守っておくと良いかと。

アップグレード後にAIが修正した点

このあたり、Claude Codeが自動で進めてくれましたが、まとめておきます。

Livewire 4 のデフォルトレイアウト変更

Livewire v3からv4でデフォルトのレイアウトパスが変わりました。

  • v3:components.layouts.app
  • v4:layouts::app(多くのプロジェクトで存在しないパス)

ルートに直接登録されているページコンポーネントに、レイアウトを明示的に指定する必要があります。

対象のコンポーネントは routes/web.php を確認して特定できますが、独自に追加したコンポーネントはブラウザでアクセスして初めてエラーになるケースもあります。

やっぱり、アップグレード後は全ページを一通り動作確認が必要です。

cache.php に serializable_classes を追加

config/cache.php の末尾に serializable_classes を追加します。

PHPオブジェクトをキャッシュに保存していなければ false のままでOKです。

注意が必要そうな変更

今回はシンプルなプロジェクトだったので影響は限られましたが、プロジェクトによっては対応が必要な変更があります。
特に VerifyCsrfToken を直接参照している場合は要確認です。

Laravel 13でCSRFミドルウェアが PreventRequestForgery に名称変更されました。 VerifyCsrfTokenは非推奨となっています。

エイリアスは残っていますが、直接指定している箇所は書き換えをご検討ください。

補足① PHPバージョンはチェック必要

なお、composer.json の PHP バージョン要件が古いまま(^8.2)になっていました。

なぜか自動で変えてくれなかったので、書き換えました。

Laravel 13 の公式要件は PHP 8.3 以上ですので、アップグレード後に composer.json"php": "^8.3" への書き換えも確認しておくことをおすすめします。

補足② WindowsでPHPをアップグレードする方法(php.new使用時)

私の方では簡単な PHP を利用できる方法として php.new をご紹介しました。この php.new の場合、PHP 8.3 以上にするには、公式ページのコマンドを使用して再度PHPをいれ直せばOKです。

インストール後に php -v を実行してください。

バージョンが切り替わっていない場合(PATHの問題)

なお、複数のPHPを使用している場合は、php.newでバージョンを上げても古いバージョンが使われることがあります。まず状況を確認します。

※こちらはWindowsの場合です。Macの場合は which php で確認できます。

複数のパスが表示された場合は、一番上に表示されるPHPが、特に何も指定せずPHPコマンドを実行した際に使われます。もし古いPHPが先頭にある場合には、環境変数等の設定を変えてください。

まとめ

Laravel Boostを使うと、手動でアップグレードガイドを読み込む作業と比べてかなり楽になっています。

とはいえ、Laravel Boostのバージョンが古かったりすると、まずはこのバージョンアップが必要になったりと、手こずった部分はありました。

また、Laravel Boostはあくまで公式を参照してくれる設計図で、実際に手を動かすのは生成AIということになります。今回私はClaude Codeを使いましたが、使う生成AIによってはまた違った感じで進むかと思います。

なお、生成AIが直してくれた後は、一度、表示と機能を確認することをおすすめします。

変更漏れがあるとこわいので。やっぱり地道な確認は必要ですよね。

Laravel Boostでのアップグレード、ご興味あれば、ぜひお試しください♪

わたしの方では学習サイト「Laravelの教科書」という学習サイトを運営しています。Laravelの基本から学びつつ、Webアプリをつくれる内容です。

もしあなたが、「Laravelを基礎から分かりやすく知りたい」と思ったら、ぜひご活用ください。

現在、基礎編を無料プレゼント中。詳しくは、こちらのページを見てみてくださいね。

Laravelの教科書について詳しく知る

近々、学習サイトへもLaravel 13への対応を追加予定なので、その点は今しばらくお待ちください。

Laravel Laravelバージョンアップ・ニュース

【Laravelの教科書・プレゼント】

Junko
Laravelの使い方を覚えたい!と思ったら、ぜひ、役立ててほしいです。 基礎編は無料でプレゼント中です♪
ひつじプログラマ
会員制サイトをいちから作っていくよ。ボタンをクリックして詳細を見てね。
Laravelの教科書の詳細を見る

最新版テキストに加え、Laravel8版~Laravel11版もご用意しています♪

【無料プレゼント】

「LaravelでWebアプリをいちから作れるようになりたい!」

そんなLaravel初心者のあなたへ【Laravelの教科書】基礎編プレゼント中! 会員制フォーラムサイトを学習しながら作れます。

詳細はこちらをクリック

最新版テキストに加え、Laravel8版からLaravel11版もご用意しています♪

Laravelの本を書きました。


ひつじが目印♪

Laravelの使い方を分かりやすく解説した書籍を出版しました。 ご好評につき、最新版に対応した改訂版を2025年7月に発売
書店やAmazon等のオンラインショップにて販売中です。 詳しくは下記ボタンをクリック

書籍の詳細を見てみる

Laravelの本書きました。


ひつじが目印♪
クリックするとamazonページへ。

Laravelの使い方を分かりやすく解説した書籍を出版しました。ご好評につき最新版対応の改訂版発売。書店やAmazon等のオンラインショップにて販売中です。

書籍の詳細を見てみる
Twitter始めました。
40代からプログラミング!
タイトルとURLをコピーしました