Дисциплина вайб-кодинга: 12 приёмов против «готово» вместо рабочего кода

12 мин. чтения
BYBIT EARN
Крипта лежит?
Bybit Earn: процент капает каждый день
Открыть Earn

Коротко (TL;DR)

В феврале 2025 года Андрей Карпати определил вайб-кодинг как «забудь, что код вообще существует». Для игрушек и прототипов это сработало. Но уже в октябре 2025 года Саймон Уиллисон в своём «vibe engineering» провёл грань между беззаботным вайбом и дисциплиной продакшен-работы агента, а к 2026 году, по сообщениям, то же разграничение публично сформулировал и сам Карпати. Дисциплина вайб-кодинга — это то, что отделяет надёжную работу агента от игрушечного прототипа.

Эта статья — не про то, как начать (это отдельный урок про метод работы). Она про 12 конкретных, копируемых приёмов, которыми продвинутый пользователь закрывает главный разрыв: «код выглядит готовым» против «код реально работает». Под каждым приёмом — готовая фраза, которую можно вставить в промпт или в CLAUDE.md.

Почему это именно PRO-тема, а не для новичка. Новичку сначала нужно, чтобы агент вообще что-то сделал, — тут вайб на месте. Проблемы начинаются, когда агент уже уверенно выдаёт большие куски кода, и цена скрытой ошибки растёт: она уходит в продакшен под видом «готово». Дисциплина — это то, что превращает быстрый, но ненадёжный вайб в предсказуемый рабочий процесс. Ниже приёмы идут по стадиям работы, чтобы их было проще встроить в свой цикл, а не держать в голове списком.

Важная оговорка: часть названий здесь (например, «guard-фраза», «annotation cycle») — наши рабочие ярлыки, а не устоявшиеся термины индустрии. Сами приёмы опираются на документированную практику; названия мы даём для удобства.

BYBIT EARNЗаставь крипту работатьПроценты на USDT и BTC без блокировки — деньги остаются под рукой.Разместить

12 приёмов: обзорная таблица

ПриёмЧто ловитКогда применять
1. Решать задачу, а не писать кодкод ради кода вместо решенияпостановка задачи
2. Ресёрч перед решениемпервое попавшееся решениедо плана
3. Challenge-loop планадырявый планпосле плана, до кода
4. Think-ahead / краевые случаиhappy-path мышлениепри планировании
5. Self-audit после фазы«готово», которое не провереноконец этапа
6. Докажи, что баг реаленoverfix, ломающий соседнееправка бага
7. Impact-analysis перед мержемскрытые последствияперед слиянием
8. Anti-rationalization stopотговорки «не в этой задаче»перед «готово»
9. Правило 40% / progressive disclosureраспухший контекстпо ходу сессии
10. Guard-фраза старта кодакод раньше согласиястарт реализации
11. Annotation cycleправки в никудауточнение задачи
12. Recommend, don’t askпоток лишних вопросоввесь диалог

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

До кода (приёмы 1–4)

1. Решать задачу, а не писать код. Агент Claude Sonnet 5 по умолчанию рад писать код — даже когда задача решается проще, без него. Разворачивайте фокус на проблему.

Промпт: «Сначала сформулируй, какую проблему мы решаем и зачем. Предложи вариант без нового кода, если он есть. Код — только если это лучший способ решить задачу».

2. Ресёрч перед решением. Первое решение, которое приходит модели, редко лучшее. Заставьте её сравнить варианты.

Промпт: «Прежде чем писать, разбери 2–3 подхода к задаче с их минусами и выбери лучший, обосновав почему».

3. Challenge-loop плана. Официальный воркфлоу Claude Code — Explore → Plan → Implement → Commit. Ключевая точка контроля — между планом и кодом: план надо покритиковать до реализации.

Промпт: «Вот план. Прежде чем писать код, найди в нём слабые места, риски и упущенные случаи. Что здесь может пойти не так?»

SpaceX · xStockSpaceX — частная компания. Торгуй её токеном на Bybit за крипту.Торговать SpaceX →

4. Think-ahead / краевые случаи. Модель тяготеет к happy path. Требуйте краевые случаи заранее, а не после первого падения.

Промпт: «Перечисли краевые случаи и невалидные входы для этой задачи и учти их в реализации, а не только основной сценарий».

Во время и после фазы (приёмы 5–9)

5. Self-audit после фазы. Прежде чем принять «готово», пусть свежий взгляд посмотрит только на диф и критерии. Anthropic прямо рекомендует адверсариальную самопроверку: отдельный проход ищет пробелы, влияющие на корректность.

Промпт: «Проверь свой диф против исходных критериев как критик, а не автор: где он их не закрывает? Ищи только реальные проблемы корректности».

6. Докажи, что баг реален (анти-overfix). Частая беда: агент «чинит» баг так, что ломает соседнее. AWS в Kiro формализовал это как property-aware подход — задать условие бага (когда он проявляется), постусловие (что значит «исправлено») и свойство сохранения (всё остальное не должно измениться).

Промпт: «Прежде чем чинить: воспроизведи баг, опиши условие его проявления и что будет считаться исправлением. После правки докажи, что не сломал ничего вокруг».

7. Impact-analysis перед мержем. Прежде чем слить, попросите разобрать последствия за пределами изменённых строк.

Промпт: «Что ещё в кодовой базе зависит от этого изменения? Перечисли затронутые места и риски регрессии перед мержем».

8. Anti-rationalization stop. Агенты умеют отговариваться: «это было и раньше», «вне рамок задачи», «сделаем потом». У Trail of Bits есть готовый Stop-хук, который ловит именно эти фразы-рационализации и не даёт закрыть задачу под предлогом. Это пример более широкого принципа: хуки детерминированы, а инструкции в промпте — нет, поэтому надёжный барьер ставят хуком.

Промпт-правило: «Не закрывай задачу с формулировками «pre-existing», «out of scope», «follow-up», если проблема относится к текущему изменению. Либо чини, либо явно спроси».

9. Правило 40% / progressive disclosure. Чем сильнее забито контекстное окно, тем хуже работает модель. Держите окно чистым: выносите справочное вовне, сжимайте историю. (Подробнее механику разбираем в отдельной статье про контекст-инжиниринг.)

Промпт: «Не загружай весь проект в контекст. Работай только с относящимися к задаче файлами; по остальному — ссылайся, а не вставляй целиком».

Перед мержем и по всему диалогу (приёмы 10–12)

10. Guard-фраза старта кода (наш приём). Простое правило: агент не начинает писать код, пока не получил явное «поехали». Опирается на plan-режим Claude Code — сначала план, потом, по команде, реализация.

Промпт-правило: «Не пиши код, пока я не скажу «старт». До этого — только план и вопросы».

11. Annotation cycle (наш приём). Уточнения вносятся не в чат, а маркерами прямо в план/спеку — так правки не теряются и агент видит их в контексте задачи. По духу это Conventional Comments, приложенные к работе агента.

Промпт: «Мои уточнения я буду ставить маркерами [ПРАВКА: …] прямо в плане. Перечитывай их перед каждым шагом».

12. Recommend, don’t ask. Поток уточняющих вопросов — антипаттерн: Anthropic прямо относит избыточные вопросы к нежелательному поведению. Пусть агент предлагает решение с обоснованием, а не заваливает вопросами.

Промпт-правило: «Не задавай вопрос, если можешь принять разумное решение сам и объяснить его. Спрашивай только там, где выбор действительно за мной».

Где границы этого списка

Чтобы не путать приёмы с соседними темами: этот набор — про оперативный контроль агента в моменте. Формальная спецификация как контракт — отдельная дисциплина (Spec-Driven Development). Управление контекстным окном глубже разбирается в контекст-инжиниринге. Гейт «готово = тесты зелёные» — в материале про Test-Driven Development. А базовый метод работы с агентом — в отдельном уроке. 12 приёмов дополняют их, а не заменяют: это слой оперативного контроля поверх более глубоких дисциплин, а не альтернатива им.

Риски: когда дисциплина мешает

У самого подхода есть слабое место — перегнуть тоже вредно. Если навесить все 12 проверок на каждую тривиальную правку, вы получите over-engineering: агент будет тратить время и токены на аудит однострочника, а вы — читать простыни ненужных отчётов о «потенциальных проблемах». Anthropic предупреждает именно об этом обратном эффекте избыточного контроля. Дисциплина — это не «включить максимум проверок всегда», а применять нужный приём к нужной задаче: на прототипе-однодневке достаточно вайба, на продакшене в критичном коде — полный набор.

Второй риск — ложное чувство защищённости. Приёмы снижают процент брака, но не обнуляют его: агент может пройти self-audit и всё равно ошибиться, потому что проверял сам себя. Поэтому финальная приёмка на человеке остаётся всегда — 12 приёмов сужают пространство ошибок, а не гарантируют их отсутствие.

Что бывает без дисциплины

Цена отсутствия контроля у автономного ИИ-агента задокументирована. В июле 2025 года агент Replit удалил продакшен-базу данных и, по сообщениям, подделал результаты тестов, выдав работу за успешную. Тогда же, 26 июля 2025 года, Gemini CLI удалил файлы пользователя из-за неверного предположения о состоянии файловой системы. Оба случая — не про «злой ИИ», а про отсутствие барьеров: агент действовал уверенно и необратимо там, где дисциплина потребовала бы подтверждения, песочницы и проверки.

Отдельный отрезвляющий факт из исследований: под обычным давлением современные модели отказываются подгонять данные под нужный результат (называют это недобросовестностью). Но специально сконструированный «выкручивающий» промпт способен обойти этот отказ. Вывод не «ИИ врёт», а «дисциплина промпта решает, удастся ли уговорить модель на рационализацию».

FAQ

Нужно ли применять все 12 приёмов сразу? Нет. Это набор инструментов, а не обязательный чек-лист на каждую задачу. На прототипе хватит одного-двух (guard-фраза, self-audit), на продакшен-фиче в критичном коде — большинство. Перебор с контролем на мелочах даёт over-engineering и лишний расход токенов.

Работает ли это только в Claude Code? Большинство приёмов — общие: они про то, как вы формулируете задачу и барьеры, а не про конкретный инструмент. Копируемые промпты применимы и в Cursor, и в Codex. И если вам ближе полноценная IDE, а не работа в терминале, Cursor тут сильный вариант: он работает на моделях Claude и держит те же барьеры (plan-режим, правила) прямо в редакторе — что он умеет и сколько стоит, мы разобрали в отдельном обзоре Cursor. Специфична только часть про хуки и plan-режим — их точная механика зависит от инструмента, но идея (детерминированный барьер вместо просьбы) переносится.

Чем это отличается от обычного «пиши хорошие промпты»? Тем, что это не про формулировку одного запроса, а про систему контроля на всех стадиях: до кода (ресёрч, критика плана), во время (self-audit, анти-overfix), перед мержем (impact-analysis, анти-рационализация). Хорошая формулировка — часть, но не вся дисциплина.

Зачем хуки, если можно написать правило в промпте? Промпт — это просьба, которую агент может «забыть» или обойти рационализацией. Хук — детерминированный барьер: он срабатывает всегда, независимо от настроения модели. Для критичных правил (не трогать тесты, не закрывать задачу отговоркой) надёжнее хук, а не текст.

Курс «Claude Code с нуля до продакшена» · модуль «PRO: автономность и дисциплина». Полная программа и два маршрута обучения — на странице курса.

Предыдущий урок: Контекст-инжиниринг: правило 40% · Следующий урок: Claude Agent SDK и headless

BYBIT COPY TRADING
Копируй профи
Bybit повторит сделки трейдера за тебя
Начать
Поделиться
Связаться:
Крипто- и data-аналитик, инженер-программист (факультет компьютерных наук ХНУРЭ). В IT с 2008 года: администрировал корпоративный мониторинг в «Vodafone Украина», семь лет разрабатывал и продвигал веб-проекты, пять лет руководил маркетингом на метриках — конверсия, CTR, ROI, LTV.Криптовалютными рынками занимаюсь с 2021 года: ончейн-метрики, токеномика, макроэкономические индикаторы. Разработал собственную data-driven модель анализа рынка на 30+ метрик. Стек — Python (pandas, NumPy, SciPy, matplotlib), математическая статистика и EDA; сбор и сверку данных автоматизирую AI-агентами.Принцип — «Don't trust, verify»: каждая цифра проверена по первоисточнику, ключевые — минимум по двум независимым; прогнозы — только сценарии с условиями. Тезис без данных не публикуется.