Every Laravel Shift upgrade works the same way: Shift opens a pull request with a series of atomic, verified commits. Each commit represents a distinct category of changes — adopting new PHP attributes, refactoring deprecated APIs, bumping Composer and NPM dependencies, updating ENV variables, running cleanup. Clean, reviewable, trustworthy.
But alongside those commits, Shift also leaves comments. And for a long time, I quietly looked at those comments as a personal failure — evidence that I hadn't automated enough.
The reason Shift comments rather than changes is deliberate. When the right answer depends on your specific codebase, your .env, your config — when there's meaningful risk of a false positive — Shift flags it and steps back. A confident wrong change is far worse than no change at all. As one developer in the community put it: "AI for upgrades sounds great until it confidently changes something that breaks prod." That's exactly the kind of outcome Shift is designed to prevent.
So those comments have always been the honest edge of what deterministic automation can do. Until now.
Automate More with AI
Every Laravel upgrade Shift now includes a new "✨ Automate more with AI..." section inside its PR comments.
When Shift leaves a comment flagging an ambiguous change, that comment now includes an expandable section with a curated, ready-to-copy prompt. Paste it into your AI of choice — Claude, ChatGPT, whatever you prefer — and let it handle the rest. The prompt includes full context about what changed, what the risk is, and specific instructions for inspecting your codebase to determine the right fix.
For example, a Shift comment might warn that the default values for CACHE_PREFIX, REDIS_PREFIX, and SESSION_COOKIE have changed in a version, and that if you're not setting these explicitly, you could experience cache or session invalidation after upgrading. The AI prompt that comes with it instructs your AI to check your config files and .env, determine whether you're relying on the old defaults, and suggest the exact values to add to preserve your previous behavior.
No more staring at a comment wondering what to do next. The path forward is right there, one copy-paste away.
Not Either/Or
A natural reaction to this is: "Can't you just point AI at the Upgrade Guide and skip Shift entirely?" You can. But it's not an apples-to-apples comparison.
The Upgrade Guide exists to make your app compatible with the next version. Shift's goal is different: to make your app look like it has always been running the latest version. That means skeleton changes, modernized conventions, new patterns — things that go well beyond any upgrade guide. Doing the same level of work with AI alone takes significant time and tokens, and requires knowing about changes that were never documented anywhere.
One developer in the community tested this: after hours of AI-assisted upgrading (and effectively hundreds of euros in API costs), they just paid for Shift and were done in an hour.
Developers tend to make tools into a binary choice. Tabs vs. spaces. Inertia vs. React. Shift vs. AI. But each has its place. Shift does what it does reliably, thoroughly, and cheaply. AI handles the nuanced remainder with the right context to do it well.
Best of Both Tools
The goal was never automation for its own sake. It was reliable, thorough upgrades — done with confidence.
Shift handles everything it can determine with certainty. When it can't, it now hands you exactly what you need to let AI finish the job. The result is a fully automated upgrade workflow that plays to the strengths of both tools.
This feature is live across all Laravel upgrade Shifts. Run a Shift on your project and see it for yourself.