If we want to discuss Developer Experience (DX) in 2026, we have to talk about instantaneous feedback and coding agents. At SymfonyLive Paris 2026, I presented “Coding at the Speed of Thought: Symfony DX in 2026“, where I detailed the bleeding-edge features we have brought to the PHP and Symfony ecosystems.
To make this vision a reality, I have recently made dramatic improvements to the Symfony Docker project. While it remains the easiest way to spin up a Docker-based FrankenPHP skeleton for your Symfony applications, it now packs some incredible new capabilities out of the box.
Sandboxed Coding Agents
It is hard to imagine modern development without coding agents. Symfony Docker now ships with first-class integration for Claude Code.
If you have used agents locally, you likely know the friction of constantly approving execution permissions. We have solved this by allowing Claude Code (and other AI coding assistants) to run in a fully autonomous “YOLO” mode. This is achieved safely because the agent is natively sandboxed inside our environment. Security is strictly enforced via a provided default firewall script, which includes a strict allowlist restricted to essentials like Packagist and GitHub.
Read the detailed documentation about this new feature!
Native Dev Containers and Xdebug
Setting up local environments should never be a hurdle. Symfony Docker now supports Dev Containers, leveraging the open specification to define your entire environment. This brings out-of-the-box support for compatible IDEs and editors such as Visual Studio Code, PhpStorm, GitHub Codespaces, and Emacs, as implemented in PR #918.
Building on this foundation, we have seamlessly integrated Xdebug, the most popular step-by-step debugger for PHP. It is now pre-installed and configured to work immediately via the Dev Container setup. You just start the project, add a breakpoint in your editor, and it works flawlessly, even when FrankenPHP’s worker mode is enabled. You can read the technical details of this integration in PR #925.
Hot Reloading with FrankenPHP
On the server side, FrankenPHP has introduced a true game-changer for PHP development: hot reloading. If you have used modern JavaScript frameworks, you know how magical Hot Module Replacement feels. Now, you get that exact same experience in PHP.
FrankenPHP automatically watches your PHP, Twig, JavaScript, and CSS files for changes. When a modification occurs, it dispatches a Mercure update to the browser, reloads worker scripts, and refreshes the Symfony cache in the background. This eliminates the slow cache-repopulation step in development, bringing instantaneous updates directly to your browser. The full setup for this is available in PR #920.
Production-Ready, Rootless Images
Great DX during development is crucial, but deploying safely and efficiently is just as important. We have completely optimized the production images to be leaner and more secure than ever. The setup is now fully production-ready by default, featuring slim, rootless images. You can review the underlying architecture for this in PR #909.
SymfonyLive Paris 2026 Slides
If you missed my talk at SymfonyLive Paris 2026, you can find the complete slide deck embedded below. During the session, I demonstrated all these features, alongside a live demo showing how to remotely control a local Claude Code session straight from a mobile device.
Need Help Modernizing Your Stack?
Transitioning to these new paradigms can be challenging. At Les-Tilleuls.coop, we can help you automate your development workflows using coding agents, and we provide deep expertise for Docker, Symfony, and FrankenPHP. If your team needs assistance building or modernizing its infrastructure, feel free to reach out to us.
Finally, maintaining these tools and continuously pushing the boundaries of PHP takes a massive amount of time. If you or your company rely on Symfony, FrankenPHP, Symfony Docker, or API Platform please consider sponsoring me on GitHub. Your support directly fuels this free and open-source innovation.
