Был у меня один вечер, который я запомнила надолго. Сломалась мелочь, и мы с Клодом больше часа её чинили. Он правит, я проверяю, не работает. Извиняется, правит снова, опять не работает. Где-то к середине этого веселья выяснилось, что он попутно снёс пару файлов, которые я вообще не просила трогать. И продолжал бодро писать, что теперь-то всё в порядке.
Токены сожгла, вечер сожгла, на выходе минус два файла. Вот эту точку в англоязычных блогах называют prompt purgatory: чистилище, где вы бесконечно переформулируете запрос, а сдвига ноль.
Здесь новички чаще всего и бросают вайбкодинг. Не на установке и не на первом лендинге. Именно тут, когда всё вроде получалось, а потом перестало, и непонятно, что вообще делать.
Как понять, что вы застряли, а не «почти починили»
Ловушка в том, что изнутри всё выглядит нормально. Нейронка же работает. Отвечает, что-то правит, обещает. Кажется, ещё один запрос и вот оно.
Честные признаки, что «ещё один запрос» уже не спасёт:
- Те же правки по второму кругу. В её ответе кусок, который она предлагала двадцать минут назад. Вернулась ровно туда, откуда начинала.
- «Теперь точно работает». Фраза, после которой не работает. Прозвучала третий раз, значит нейронка не понимает причину и тыкает варианты наугад.
- Заплаток становится всё больше. Каждая правка добавляет ещё одно условие «а если вот так, то по-другому». Код обрастает костылями, и вы уже не понимаете, где что.
- Чинит одно, ломает соседнее. Классика. Поправили кнопку, уехал заголовок. Поправили заголовок, отвалилась кнопка.
- Вы перестали читать её ответы. Скроллите до конца и жмёте «продолжай». Это уже не работа, это надежда.
- Она начинает удалять. Самый тревожный сигнал. Когда починить не выходит, нейронка иногда решает, что проще снести и написать заново. И сносит то, что вы не просили.
Совпало два-три пункта, значит пора останавливаться. Не «ещё чуть-чуть», а прям убрать руки от клавиатуры.
Почему так вообще происходит. Нейронка не ищет причину так, как ищет её человек. Человек смотрит, что именно сломалось и почему. Нейронка подбирает самое вероятное продолжение текста, то есть правку, которая похожа на правильную. Первая догадка не сработала, вторая будет из той же области, и третья тоже. Сказать себе «стоп, я иду не туда» она не умеет. Это ваша работа.
Шесть выходов, от мягкого к радикальному
1. Новая сессия с чистого листа
Самый частый приём и самый недооценённый. Закрываете диалог, открываете новый, описываете задачу заново. Коротко, без истории мучений.
Работает потому, что в старой сессии накопился мусор: шесть провалившихся гипотез, три извинения, четыре версии одного файла. Нейронка тащит это всё за собой и продолжает крутиться внутри линии рассуждений, которая уже не сработала. Новая сессия эту линию обнуляет.
Только не пересказывайте в новом чате, что вы пробовали. Соблазн большой, вроде как «чтобы не повторяла ошибки», но так вы просто перетаскиваете тупик за собой. Опишите, что есть сейчас и что нужно получить. Всё.
В файле landing/index.html форма заявки не отправляется:
жму кнопку, ничего не происходит, страница просто перезагружается.
Открой файл, посмотри код формы и скажи, в чём причина.
Пока ничего не правь.
Почему длинная сессия сама по себе портит результат, я разбирала отдельно: «Почему нейросеть тупеет к вечеру».
2. Сузить задачу до одного файла
Когда нейронка держит в голове десять файлов, она правит наугад по всем сразу. Сузьте поле: «работай только с файлом X, остальные не трогай».
У меня это срабатывает раз за разом. Половина хаоса рождается не из сложности задачи. Она рождается из того, что нейронка полезла править там, где её не просили. Явный запрет ничего не стоит, а масштаб бедствия снижает заметно.
3. Попросить диагноз, а не правку
Самый важный пункт из всего списка. По умолчанию нейронка кидается чинить, она так устроена, ей надо выдать результат. И если причину она поняла неправильно, вы узнаете об этом попытке на десятой.
Разрывается это одной фразой: запретить править и потребовать объяснение.
Ничего не меняй в файлах. Сначала объясни своими словами:
1) что именно сломано — какое поведение я вижу вместо нужного;
2) в чём причина, с указанием строки в коде;
3) почему предыдущие три правки не помогли;
4) какие есть варианты решения и чем они различаются.
Если причина непонятна — так и напиши, не выдумывай.
Ждать моего ответа, прежде чем что-то менять.
Последняя строчка про честность. Если не разрешить сказать «не знаю», нейронка охотно сочинит правдоподобное объяснение. А разрешаешь, и она иногда прям признаётся, что не понимает. Это в разы полезнее, чем очередная уверенная неправда. Про её манеру врать уверенным тоном у меня есть отдельная статья.
4. Откатиться к рабочей версии
Самый быстрый выход, если у вас есть точки сохранения. Не разбираться в трёх слоях костылей, а вернуть файл в состояние «час назад, когда всё работало». И зайти на задачу заново, уже зная, чего делать не надо.
Тут есть неприятное «но»: откатываться некуда, если вы не сохранялись. Поэтому правило простое: commit перед крупной переделкой, а не после. Как это выглядит на практике и какие четыре фразы достаточно знать, я расписала в статье «Как не потерять работу целого дня».
В курсе под это выделен отдельный шаг в модуле про деплой. Мы специально ломаем лендинг и откатываем его назад, чтобы страх «сломаю всё» прошёл через руки, а не через теорию.
5. Сменить подход целиком
Иногда нейронка застревает не на ошибке, а на самом способе решения. Пытается прикрутить сложную конструкцию туда, где хватило бы простой, и все её правки это попытки оживить изначально неудачную идею.
Лечится вопросом:
Давай отойдём назад. Задача — [что нужно получить].
Сейчас мы делаем это через [текущий способ], и уже час не выходит.
Предложи 3 принципиально разных способа решить ту же задачу,
для каждого напиши, что может пойти не так и сколько это примерно
шагов. Самый простой вариант поставь первым. Не пиши код.
Сразу оговорка из моей практики. Нейронка обычно выдаёт 3-4 решения, а вариантов на самом деле больше. Остальные ей просто «не видны», их мало в интернете. Так что если все три предложенных выглядят одинаково плохо, догуглить руками это нормальный ход, а не поражение.
6. Выкинуть и собрать заново
Про это не любят писать, звучит как признание провала. А по факту это часто самый быстрый путь.
Полтора часа лепите заплатки на кусок, который изначально собрался за двадцать минут. Арифметика простая: снести и попросить собрать заново, уже точнее понимая, что вам нужно, дешевле, чем спасать. Особенно на мелочах: один блок лендинга, одна форма, один скрипт.
Граница примерно такая. Рабочей версии нет, а починка идёт дольше, чем заняла бы пересборка, значит пересобирайте. Не жалко. Это не ваш ручной труд, это двадцать минут генерации.
Как это выглядит у меня. Свой первый проект я собирала четыре дня, и вышел он неидеально. Часть мелочей я просто забила доделывать. Зато работало. За эти четыре дня я раза три сносила куски и собирала заново, потому что чинить выходило дольше. Это не «я плохо умею», это обычный режим работы, про который не рассказывают в роликах про «прототип за 15 минут».
Что делать, чтобы в этот круг попадать реже
Выбираться из чистилища полезно, но лучше туда вообще не заходить. Четыре привычки, которые реально снижают частоту:
| Привычка | Что она предотвращает |
|---|---|
| Просить план до правки: «покажи, что собираешься менять, я подтвержу» | Половину случаев, когда нейросеть поняла задачу не так и вы узнали об этом в конце |
| Точка сохранения перед крупной переделкой | Ситуацию «откатываться некуда» |
| Одна задача за раз, а не «поправь пять вещей» | Кашу, где непонятно, какая из правок всё сломала |
| Проверять глазами каждый шаг, а не пачкой в конце | Три часа работы поверх сломанного фундамента |
Ни одна не требует технических знаний. Это дисциплина постановки задачи, ровно тот навык, который у маркетолога уже есть. Просто применённый к другому исполнителю.
Где это не поможет
Теперь честно про границы, иначе выйдет очередная статья с обещаниями.
- Если задача изначально не по силам. Личный кабинет с оплатами, интеграция с чужой закрытой системой, что-то под реальные нагрузки. Тут вы кружите не потому, что плохо просите, а потому что задача требует инженера. Новая сессия этого не изменит.
- Если вы не понимаете, что должно получиться. Требования нейронка из вас не вытащит. Не знаете сами, как выглядит «работает», значит и принять работу не сможете. Так и будете уточнять бесконечно.
- Если сломано снаружи. Упал сервис, поменялась апишка, кончилась квота. Нейронка будет героически чинить ваш код, а причина вообще не в нём. Сначала проверьте внешнее.
- Если вы устали. Звучит несерьёзно, а это половина затыков. В час ночи и вы, и нейронка работаете хуже. Час сна честно дешевле трёх часов ковыряния.
Короткий чек-лист на момент, когда вы уже в круге
- Остановиться. Не отправлять следующий запрос на автомате.
- Посмотреть, есть ли точка сохранения, к которой можно вернуться. Есть, значит откатиться и зайти заново.
- Точки нет: новая сессия, описать текущее состояние без истории мучений.
- Запретить править, потребовать диагноз причины своими словами.
- Сузить до одного файла.
- Не сдвинулось за 15 минут — менять подход или пересобирать кусок с нуля.
Если запоминать из всего этого один пункт, пусть будет третий: новая сессия. Бесплатно, мгновенно и почему-то самый непопулярный ход. Люди упорно спорят с уставшим диалогом вместо того, чтобы просто открыть новый.
Частые вопросы
Почему нейросеть говорит «теперь работает», когда не работает?
Она не проверяет результат, если её об этом не попросить. Пишет правку и оценивает её как правдоподобную, а это совсем не то же самое, что запустить и убедиться. Лечится просьбой проверить самой: «открой страницу и опиши, что видишь» или «покажи, как ты убедился, что это работает».
Сколько попыток стоит дать, прежде чем менять подход?
Три. После третьей неудачной правки подряд четвёртая почти наверняка идёт из той же провалившейся логики. По моему опыту порог «пятнадцать минут без сдвига» работает лучше, чем счёт попыток.
Помогает ли перейти на другую нейросеть?
Иногда да, и заметно. Разные модели ошибаются по-разному, и то, во что упёрлась одна, вторая видит сразу. Проще всего скопировать проблемный кусок и описание симптома в другой чат и спросить про причину. Только не тащите туда всю историю переписки.
Правда ли, что проще выкинуть и собрать заново?
На мелких вещах часто правда. Один блок, одна форма, один скрипт пересобираются за минуты, а починка трёх слоёв костылей запросто съедает час. На большом проекте так делать не надо, там нужен откат к сохранённой версии, а не снос.
Как понять, что нейросеть удалила что-то нужное?
Никак, если вы не сохранялись. Это главный аргумент за точки сохранения. А если сохранялись, достаточно попросить показать, что менялось с прошлой сохранённой версии, и увидите список: что добавлено, что удалено. Приятного мало, зато хотя бы видно.