VibeCoderzVibeCoderz
Все статьи
2026/08/1810 мин чтения

Как перенести PHP на Next.js с Claude Code в 2026

AI миграция кода с PHP на Next.js через Claude Code — это перенос легаси-проекта на современный стек без ручного переписывания каждой строки: агент читает код, документирует его, покрывает характеризационными тестами и переносит модуль за модулем. Ни…

Содержание (12)+

AI миграция кода с PHP на Next.js через Claude Code — это перенос легаси-проекта на современный стек без ручного переписывания каждой строки: агент читает код, документирует его, покрывает характеризационными тестами и переносит модуль за модулем. Ниже — рабочая методология из четырех фаз и разбор реального кейса Anthropic с цифрами по времени и объему кода.

В статье: методология безопасного переноса легаси на Next.js, документированный кейс модернизации COBOL-системы через Claude Code, таблица метрик миграции и разбор инструментов для AI-переноса кода.

Зачем вообще переносить PHP на Next.js в 2026 году?

Старый PHP-код тормозит найм, SEO и скорость фичей. Next.js решает все три проблемы разом, а Claude Code убирает главный барьер — страх сломать бизнес-логику при переносе.

Legacy PHP-проекты без документации и тестов — стандартная ситуация для сайтов старше пяти лет. Разработчик, который писал систему, давно ушел, а найти специалиста, готового чинить чужой процедурный PHP, стало заметно сложнее, чем найти React-разработчика.

Next.js в 2026 году дает то, чего у классического PHP-сайта нет из коробки: серверные компоненты, инкрементальную статику, встроенную оптимизацию под Core Web Vitals и экосистему AI-инструментов. Для портала на органическом трафике это прямое преимущество в выдаче.

Раньше такой перенос стоил месяцы работы команды и риск сломать то, что годами приносило деньги. Сейчас связка Claude Code и пошаговой методологии сокращает этот риск и, что важнее, делает его измеримым.

Изображение

Какие проекты чаще всего переносят с PHP

Обычно это самописные CMS, интернет-магазины на устаревших фреймворках и внутренние админки. У всех трех типов общая боль: бизнес-логика зашита в код без единой строчки документации, а тестов нет вообще.

Как работает методология безопасной AI-миграции легаси?

Безопасная миграция строится на четырех фазах: анализ кодовой базы, характеризационные тесты, пошаговый перенос модулей и верификация побитового соответствия. Пропуск любой фазы резко повышает риск скрытых багов.

Anthropic показала эту методологию на демонстрационном кейсе с модернизацией COBOL-системы управления кредитными картами (около 100 файлов, включая COBOL-программы, copybook и JCL-скрипты). Схема универсальна и работает для переноса PHP на Next.js почти без изменений.

Изображение
ФазаЧто делает Claude CodeРезультат
1. АнализСпециализированный субагент читает код, строит карту зависимостейКаталог файлов, mermaid-диаграммы архитектуры
2. Характеризационные тестыФиксирует текущее поведение до правокТестовый харнесс, снимок реального поведения
3. Перенос модулейПереводит логику файл за файлом, модуль за модулемИдиоматичный код на новом стеке
4. ВерификацияСравнивает старую и новую версию бит в битОтчет о расхождениях или их отсутствии

Ключевой момент методологии — порядок фаз никогда не меняется. Тесты пишутся до переноса, а не после. Это единственный способ доказать, что новый Next.js-код ведет себя так же, как старый PHP.

Как Claude Code анализирует legacy PHP кодовую базу?

На фазе анализа агент строит полную карту зависимостей и переводит непонятные имена функций и файлов в человеческий язык. Без этого шага миграция превращается в угадывание.

В COBOL-кейсе Anthropic Claude Code создал специализированного субагента через команду /agent — «эксперта по документации и переводу COBOL». Субагенты запускаются параллельно и работают в изолированных контекстных окнах, чтобы не засорять основной поток размышлений.

Для PHP-проекта схема та же. Агент читает контроллеры, модели и шаблоны, строит to-do лист по всем файлам и следит, чтобы ни один не обработали дважды. В catalog-файле кириллические и латинские сокращения переводятся в понятные названия, а в relationships-файле фиксируются все зависимости в простом pipe-delimited формате.

Изображение

Из этих индексов Claude Code генерирует mermaid-диаграммы полного цикла обработки данных. В демо-кейсе Anthropic на документирование 94 файлов ушел час непрерывной работы, итог — свыше 100 страниц документации там, где раньше не было ни одной источник: демо Anthropic на YouTube. При этом Claude Code способен работать автономно до 30 часов, и техника масштабируется на кодовые базы куда крупнее демо-примера.

Отдельно про CMS-миграции

Для сайтов на самописной CMS или WordPress схема упрощается: агент через Gemini CLI или Claude Code сканирует существующие страницы, сохраняет изображения в отдельную папку, чтобы не терять ссылки, и переиспользует их при сборке на Next.js вместо генерации новых — так сохраняется «дух» оригинального сайта, а не только код источник: гайд по конвертации WordPress в Next.js.

Зачем нужны характеризационные тесты перед миграцией кода?

Характеризационные тесты фиксируют реальное поведение legacy-кода, включая баги, на которые давно завязались пользователи. Без них рефакторинг ломает то, что формально считалось «неправильным», но фактически работало.

Характеризационный тест не проверяет, правильный ли код. Он проверяет, ведет ли себя новая версия точно так же, как старая. Разработчики называют это тестами «после факта» — их пишут не по спецификации, а по фактическому выводу существующей системы.

Изображение

Практический прием: анализировать код на условия if/else, определять диапазоны входных данных и генерировать все комбинации через вложенные циклы, сохраняя тест-кейсы в JSON. Так тест сам документирует, какой конкретно набор данных его сломал источник: разбор техники на Gilded Rose Kata.

Для больших рефакторингов работает связка Golden Master и Mikado Method. Golden Master снимает снапшот поведения системы целиком через логи и трассировки, а не проверяет отдельные функции. Mikado Method разбивает крупный перенос на граф маленьких шагов: пробуешь изменение, ловишь регрессию, добавляешь недостающий шаг в граф как предпосылку и двигаешься дальше источник: разбор Golden Master и Mikado Method.

Максим: «У Нейроскрайба на одну фичу разработчик тратил неделю-две-три. У Нейроштата целая команда ждала фичу месяцами, и мы разочаровывались, потому что сроки в бизнесе решают почти все. Характеризационные тесты снимают этот страх — переносишь модуль и сразу видишь, сломал что-то или нет.»

Как проходит пошаговый перенос модулей с PHP на Next.js?

Перенос идет модуль за модулем, а не файл за файлом: сначала структура проекта, затем модели данных, потом слой ввода-вывода и в последнюю очередь бизнес-логика с сохранением специфического поведения.

В COBOL-кейсе Claude Code в режиме планирования выстроил стратегию из пяти шагов: создание структуры проекта, перевод моделей данных из copybook в классы, построение IO-слоя, совместимого с исходными форматами файлов, перенос бизнес-логики с сохранением специфики COBOL и создание двойного тестового харнесса.

Для PHP на Next.js порядок аналогичен: сначала App Router и структура папок, затем модели данных из PHP-классов или прямых SQL-запросов в TypeScript-типы, потом API-роуты вместо PHP-эндпоинтов, и только затем бизнес-логика — с сохранением тех самых edge-кейсов, которые характеризационные тесты уже зафиксировали.

Изображение

Итоговый код не должен быть дословным переводом синтаксиса. Agent создает нормальные Next.js-паттерны: обработку ошибок, логирование, типизацию — идиоматичный код, который команда действительно сможет поддерживать, а не транслитерацию PHP на TypeScript.

Как верифицировать что AI-миграция ничего не сломала?

Финальная проверка сравнивает не только конечный результат, но и промежуточные вычисления, запись файлов и трансформации данных между старой и новой версией. Цель — побитовое соответствие поведения.

В демо-кейсе Anthropic верификация запускала одинаковые тестовые данные параллельно на оригинальной COBOL-системе (GNU Cobol 3.2.0) и на новой Java-версии. Сравнивались не только финальные суммы, а каждый промежуточный расчет, каждая запись в файл, каждая трансформация данных. Результат — «bit for bit fidelity»: ни один бизнес-кейс не потерялся при переносе.

Для PHP на Next.js аналог — держать обе версии на разных окружениях, прогонять одинаковые запросы и diff-ить ответы API построчно, включая заголовки и структуру JSON. Если расхождение есть, это либо баг миграции, либо давно не задокументированное поведение старой системы, которое стоит обсудить с бизнесом, а не молча чинить.

Сколько времени и денег экономит AI-миграция легаси на практике?

Документированные кейсы показывают кратное ускорение: порт Bun с Zig на Rust занял 11 дней вместо кварталов, COBOL-документация на 94 файла заняла час вместо недель ручной работы. Для среднего PHP-проекта это счет на недели, а не на месяцы.

Летом 2026 года Anthropic добавила в Claude Code Dynamic Workflows — режим, где агент сам пишет оркестрирующий скрипт и запускает до 16 субагентов параллельно, до 1000 за один прогон. Создатель Bun Джарред Самнер использовал эту функцию, чтобы перенести Bun с Zig на Rust: около 750 000 строк кода, 11 дней от первого коммита до мержа, 99,8% исходных тестов прошли без изменений источник: разбор кейса Bun.

Изображение

Для среднего PHP-проекта такой масштаб избыточен, но методология переносится: разбивка на модули, параллельная обработка независимых частей, верификация каждого результата отдельным агентом до того, как он попадет в основную ветку.

МетрикаCOBOL-демо AnthropicПорт Bun (Zig → Rust)Типичный PHP → Next.js средний проект
Объем кода~100 файлов, ~94 обработано~750 000 строкобычно 10 000–80 000 строк
Время1 час на документацию, до 30 часов автономной работы11 днейпо опыту сообщества — 2–6 недель с ревью
ПроверкаПобитовое сравнение вычислений99,8% исходных тестов прошлихарактеризационные тесты + diff API-ответов

Цифры по PHP-проектам — ориентировочный диапазон, собранный из практики сообщества и открытых кейсов, а не гарантия для конкретного проекта. Реальный срок сильно зависит от того, сколько скрытой бизнес-логики в коде и есть ли вообще документация.

Какие инструменты выбрать для AI-миграции кода в 2026 году?

Для миграций Anthropic прямо рекомендует Claude Code с Dynamic Workflows: длинные автономные сессии и параллельные субагенты закрывают именно задачи класса «перенести всю кодовую базу». Sonnet 5 — разумный дефолт по цене, Opus 5 — для самых сложных модулей.

На июль-август 2026 года в семействе Claude две модели с прямым отношением к миграциям. Claude Opus 5 вышел 24 июля 2026 и держит цену Opus 4.8 — $5 за миллион входных токенов, $25 за миллион выходных. Claude Sonnet 5 стартовал 30 июня 2026 по цене $2/$10 за миллион токенов (действует до 31 августа 2026, дальше — стандартные $3/$15) и на агентных задачах почти догоняет Opus по качеству при заметно меньшей цене.

Изображение
МодельЦена (вход/выход за 1M токенов)Для чего в миграции
Claude Opus 5$5 / $25Сложные модули, архитектурные решения, финальная верификация
Claude Sonnet 5$2 / $10 (до 31.08.2026)Основной объем переноса модулей, ежедневная работа
Claude Haiku 4.5$1 / $5Массовые однотипные правки, простые файлы

Dynamic Workflows доступны на планах Max, Team и Enterprise начиная с версии Claude Code 2.1.154, а также через Amazon Bedrock, Google Cloud Agent Platform и Microsoft Foundry источник: документация Claude Code. Для проекта уровня «один сайт на PHP» хватает и обычного режима субагентов без полного Dynamic Workflows.

Кроме Claude Code, для миграции CMS-сайтов используют связку Gemini CLI для локальной генерации кода и Vercel для деплоя — рабочий вариант, если нужно быстро перенести витрину без сложной бизнес-логики. Обзор Claude Code с ценами и возможностями смотрите на странице инструмента Claude Code.

Какие риски и ограничения есть у AI-миграции legacy кода?

Главный риск — не сам перенос, а иллюзия завершенности без полноценной верификации. Dynamic Workflows расходуют заметно больше токенов, чем обычная сессия, а параллельные агенты меняют код быстрее, чем команда успевает его вручную вычитать.

Сильные стороны AI-миграции: скорость документирования недокументированного кода, параллельная обработка независимых модулей и готовность агента честно фиксировать расхождения при верификации, а не молчать о них.

Слабые стороны — тоже реальные. Параллельная работа сотен субагентов требует governance и evidence capture, иначе изменения обгоняют возможности команды их проверить источник: обзор Dynamic Workflows на DevOps.com. Есть нюанс и с недетерминированным кодом: random-генераторы, дата-время, параллелизм — для них характеризационные тесты нужно делать детерминированными вручную, фиксируя seed заранее.

Не подойдет этот подход, если в PHP-проекте нет вообще никакой возможности поднять тестовое окружение параллельно с продакшеном — тогда сначала придется решить эту инфраструктурную задачу, а уже потом запускать миграцию.

Итог: стоит ли переносить PHP на Next.js через Claude Code

Для проекта с четкими границами модулей и хотя бы минимальной возможностью поднять тестовое окружение — да, методология из четырех фаз снижает риск до управляемого уровня. Для критичной финансовой или медицинской логики без единого теста имеет смысл сначала закрыть характеризационными тестами хотя бы ключевые модули, а потом уже переносить.

Изображение
СценарийЧто делать
Небольшой сайт, простая CMS-логикаSonnet 5 + обычные субагенты, перенос за 2–3 недели
Средний проект с бизнес-логикойПолная методология: анализ → тесты → перенос → верификация
Крупная кодовая база, тысячи файловClaude Code Dynamic Workflows, Opus 5 на верификации

Если не уверены, с чего начать разбор конкретного PHP-проекта, посмотрите каталог AI-инструментов на VibeCoderz и сравните варианты, либо запишитесь на консультацию к Максиму, чтобы обсудить методологию под ваш кейс.

Глоссарий

Легаси-код (legacy) — код в проде без актуальной документации и часто без тестов, обычно написанный давно и другой командой.

Характеризационный тест — тест, который фиксирует текущее поведение кода как есть, включая баги, а не проверяет соответствие спецификации.

Golden Master — техника снятия полного снапшота поведения системы через логи или вывод, используется как эталон при рефакторинге.

Mikado Method — способ разбить крупный рефакторинг на граф маленьких шагов с предпосылками, которые выявляются по ходу работы.

Dynamic Workflows — режим Claude Code, в котором агент сам пишет оркестрирующий скрипт и запускает десятки-сотни субагентов параллельно.

Субагент — отдельный экземпляр Claude Code с изолированным контекстным окном, который решает свою часть задачи независимо от основного потока.

SWE-bench — набор тестов для оценки того, насколько хорошо AI-модель решает реальные задачи по коду.

Частые вопросы про AI-миграцию PHP на Next.js

Сколько стоит перенести PHP-сайт на Next.js через Claude Code?

Основные затраты — токены модели и время разработчика на ревью. При Sonnet 5 по $2/$10 за миллион токенов миграция среднего сайта обычно укладывается в разумный бюджет по API, ощутимо ниже стоимости найма отдельной команды на несколько месяцев.

Можно ли доверить AI перенос без единого теста в старом коде?

Можно, но начинать нужно с фазы характеризационных тестов, а не с переноса. Сначала фиксируется текущее поведение, потом переносится код, иначе никак не проверить, что логика не изменилась.

Чем Claude Code отличается от обычного копирования кода через ChatGPT?

Claude Code работает в терминале с доступом к файловой системе проекта, держит долгие автономные сессии и умеет запускать параллельных субагентов через Dynamic Workflows. Разовый чат с копипастом кода такого не умеет физически.

Нужно ли знать PHP, чтобы контролировать такую миграцию?

Базовое понимание логики проекта нужно всегда, глубокое знание синтаксиса PHP уже не обязательно. Задача разработчика смещается с написания кода на ревью того, что сделал агент, и постановку задач.

Что делать, если после миграции нашлась разница в поведении API?

Сначала проверить, это баг переноса или ранее незадокументированная особенность старой системы. Характеризационные тесты как раз для того и нужны, чтобы такие расхождения ловились до релиза, а не после жалоб пользователей.

Подходит ли эта методология для WordPress-сайтов, а не только для чистого PHP?

Да, схема та же: сканирование существующих страниц и медиа, перенос контента с сохранением структуры, сборка на Next.js с переиспользованием изображений вместо их повторной генерации.

Сколько времени в среднем занимает вся миграция?

По открытым кейсам и практике сообщества — от пары недель для небольшого сайта до нескольких месяцев для крупной системы с сотнями тысяч строк кода. Точный срок зависит от объема скрытой бизнес-логики.


Обновлено: август 2026.

All Posts

Автор

Максим Наговицын
Максим Наговицын

Маркетинг-стратег, IT-предприниматель, ментор по вайбкодингу

2026/08/18

10+ лет в маркетинге, 300+ клиентских проектов: сайты, реклама, боты. Создатель GoBanana (228K+ пользователей, 11.6 млн ₽ выручки) и VibeCoderz. Делаю AI-продукты сам через Claude Code, Cursor, Windsurf и консультирую тех, кто хочет так же.

Об авторе →

Читать далее

📢 Новость

Claude Code: новый CLI-агент от Anthropic

Anthropic выпустила Claude Code — терминальный AI-агент для разработчиков. Инструмент работает прямо в командной строке и умеет писать, редактировать и запускать код.

2026/02/27
📝 Конспект

Zcode AI: Полный гид по визуальному интерфейсу для Claude Code и AI-агентов

Узнайте, как использовать Zcode для управления Claude Code, Gemini и Codex в едином GUI. Настройка провайдеров, MCP-серверов и визуальный вайбкодинг.

2026/02/28
📝 Конспект

YouTube-канал с монетизацией из любой точки мира: Пошаговый гайд 2026

Инструкция по созданию YouTube-канала: обход блокировок SMS, настройка расширенных функций через виртуальные номера и правила безопасности для монетизации.

2026/02/28
📝 Конспект

Windsurf Code Maps: Как глубоко понимать архитектуру проекта перед написанием кода

Полный гайд по Windsurf Code Maps, модели Sway 1.5 и Sway Grep. Узнайте, как визуализировать архитектуру кода и ускорить разработку в 13 раз.

2026/02/28
📝 Конспект

Vk Fast Cash Strategy

Аудитория ВКонтакте — это те же люди, что и в Instagram, но 'социальный контракт' площадки другой. Если Instagram — это 'дорогой ресторан' с демонстрацией успеха, то VK — это 'душевная шашлычная'. Здесь не работает глянцевый 'успешный успех

2026/02/28