Блог

Почему Claude делает не то, о чём его просят: три промпта

Markdown

Почему Claude неверно понимает задачу: разберём роль недостающего контекста и дадим три промпта, которые помогут прояснить намерение до начала работы.

Читать статью полностью

Главное

Claude может сразу перейти к коду и заполнить пробелы в запросе собственными предположениями. Часто они не совпадают с тем, что имел в виду пользователь. Причина обычно не в самой модели: даже мощная система ошибётся, если задача описана расплывчато. Помогает простой порядок: сначала попросить Claude задать вопросы и выяснить детали, а затем приступать к реализации. Ниже приведены три промпта, которые можно скопировать и использовать.

Подробности о сервисе — в документации Ailoot.

Почему Claude неверно понимает запрос?

Главное

Получив короткий запрос, Claude быстро восполняет недостающие детали и начинает работать исходя из собственного понимания задачи. Оно может не совпасть с ожиданиями пользователя. В результате вместо изменения одной строки появляется правка в 14 файлах. Причина — разница между сказанным и тем, что человек подразумевал. Модель здесь обычно ни при чём.

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

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

Ключевое здесь — намерение. Пользователь знает, чего хочет, а Claude видит только текст запроса и предшествующий контекст. Неуказанные детали модель заполняет предположениями. Чем короче и неопределённее запрос, тем больше таких предположений и тем выше вероятность, что результат разойдётся с ожиданиями.

Anthropic предупреждает об этом в официальной документации Claude Code:

Если сразу поручить Claude писать код, он может взяться за решение не той проблемы.

— Документация Claude Code, https://code.claude.com/docs/en/best-practices

Например, просьба исправить один экран авторизации может привести к изменениям в значительной части связанного модуля. Когда исходный запрос состоит из одной строки, Claude приходится самостоятельно додумывать остальные условия. Поэтому любую задачу сложнее исправления опечатки полезно начинать с уточняющих вопросов.

Почему мощная модель тоже может ошибиться?

Главное

Качество модели — не единственный и не всегда главный фактор. На неоднозначную задачу ошибиться может и самая мощная система: ей не хватает исходных данных, и она дополняет их своими догадками. Чёткое описание желаемого результата обычно важнее выбора самой новой модели.

Новые модели регулярно обещают лучше понимать запросы. Они могут быстрее писать код и справляться со сложной логикой, но не способны читать мысли. Если условия сформулированы неясно, даже аккуратно написанная реализация может оказаться ненужной.

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

Что такое грилинг и как он помогает договориться с ИИ?

Главное

Грилинг — это предварительный диалог, в котором ИИ задаёт подробные вопросы о задаче и её условиях, пока стороны не сформируют общее понимание. Такой разговор помогает прояснить требования до начала написания кода.

На первый взгляд, это звучит непривычно: ИИ используют, чтобы ускорить работу, а тут предлагается сначала остановиться и обсудить задачу. Однако несколько минут на уточнение требований могут сэкономить время, которое иначе уйдёт на исправления.

Дело не только в том, что запрос бывает недостаточно подробным. Иногда и сам автор задачи ещё не определил все условия: какие случаи нужно учесть, где проходят границы работы и что важнее. Вопросы помогают выявить эти детали. В итоге проясняется и задача для ИИ, и собственное понимание того, что нужно получить.

Такой подход относится к работе с контекстом: важную часть подготовки выполняют до запроса. Вместо поиска идеальной формулировки пользователь заранее объясняет Claude свои требования и уточняет их по ходу диалога.

Как попросить Claude сначала задать вопросы?

Главное

Кратко опишите задачу и попросите Claude провести интервью до начала работы. Пусть он уточнит реализацию, крайние случаи и ограничения, а затем оформит согласованные требования в файле. В официальной документации Anthropic есть рекомендация использовать такой диалог и пример соответствующего промпта.

В документации Anthropic предлагается дать Claude возможность проинтервьюировать пользователя. Вот вариант промпта для такой беседы:

Промпт: попросить Claude уточнить требования

Я хочу создать [краткое описание задачи].

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

Задавай вопросы по одному и жди моего ответа. С каждым вопросом предлагай свой рекомендуемый вариант ответа.

Продолжай, пока мы не проясним все существенные детали. Затем оформи полную спецификацию в файле SPEC.md.

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

Anthropic также подчёркивает ценность точного описания задачи:

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

— Anthropic, документация Claude Code, https://code.claude.com/docs/en/best-practices

После интервью можно открыть новую сессию и передать ей готовую спецификацию. Так Claude начнёт работу с чистым контекстом и зафиксированным пониманием задачи.

Как настроить предварительный опрос Claude Code?

Главное

Можно каждый раз задавать вопросы вручную или использовать заранее подготовленную инструкцию для Claude Code. Она должна предлагать уточнять ветви решений по одной, формулировать вариант ответа и не спрашивать о том, что модель может выяснить из кода самостоятельно.

Если удобнее работать с готовой инструкцией, адаптируйте её под свои задачи и добавьте в начало сессии Claude Code. Порядок установки и источник такой инструкции зависят от выбранного инструмента; не запускайте команду установки из непроверенного источника.

В любой инструкции для предварительного опроса полезны следующие правила:

Промпт: последовательное уточнение плана

Подробно расспрашивай меня о каждом аспекте этого плана, пока мы не придём к общему пониманию. Разбирай ветви дерева решений по одной и учитывай зависимости между ними.

Для каждого вопроса предлагай рекомендуемый тобой ответ.

Задавай вопросы по одному и жди ответа, прежде чем продолжать. Несколько вопросов одновременно затрудняют обсуждение.

Если ответ можно найти, изучив код, сначала изучи код самостоятельно, а не спрашивай меня.

Последнее правило особенно полезно: не нужно просить пользователя сообщать то, что можно установить из исходников. Уточнять стоит личные приоритеты, ограничения и предпочтения — сведения, которых может не быть в проекте. Продолжительность интервью зависит от задачи; заранее заданный порядок вопросов помогает не упустить важные решения.

Как попросить ИИ обосновать выбранный план?

Главное

Одного уточнения требований может быть мало: попросите Claude сравнить варианты решения и обосновать выбор до написания кода. Так он проверит, соответствует ли план задаче, и рассмотрит возможные проблемы заранее.

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

Anthropic рекомендует проверять результат и не полагаться на правдоподобный ответ без проверки:

Если результат невозможно проверить, не отправляйте его.

— Anthropic, документация Claude Code, https://code.claude.com/docs/en/best-practices

Для предварительного разбора можно добавить к запросу такой промпт:

Промпт: попросить ИИ аргументировать план

До написания кода оцени задачу критически.

Найди 2-3 способа её решить. Для каждого объясни, как он соответствует моей задаче и почему не добавляет ненужной сложности. Не предлагай код ради самого кода.

Затем выбери один способ и обоснуй, почему он подходит лучше остальных и учитывает возможное развитие проекта. Что может перестать работать по мере роста проекта? Какие детали мы пока упускаем?

Только после этого предложи реализацию.

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

Пре-мортем: как заранее найти возможные причины провала?

Главное

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

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

Промпт: выявить риски до начала проекта

Представь, что прошёл год. Проект, который мы сейчас планируем, завершился неудачей.

Перечисли 10 возможных причин. Что мы не предусмотрели в начале, что недооценили, какие действия выполнили небрежно и какие предположения оказались неверными?

Затем для каждой причины предложи, что можно изменить уже сейчас, чтобы снизить этот риск.

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

Эти приёмы дополняют друг друга: вопросы проясняют намерение, сравнение вариантов помогает проверить план, а пре-мортем выявляет возможные слабые места. Их можно использовать до начала написания кода.

Почему длинный контекст мешает Claude работать точно?

Главное

Контекстное окно ограничено объёмом информации, доступной модели в текущей сессии. По мере накопления истории часть важных деталей может теряться или становиться менее заметной. Поэтому длинный разговор, в котором смешаны разные задачи, повышает риск забытых договорённостей и ответов не по теме.

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

Полезное практическое правило — вести отдельный чат для каждой самостоятельной задачи. После завершения одной работы можно открыть новую сессию для следующей. Если продолжать всё в одном разговоре, ранние детали могут стать менее доступными, а ответы — отклониться от текущей цели.

В Claude Code команду /clear можно использовать, чтобы очистить контекст между несвязанными задачами и не переносить старую историю в новую работу.

О расходе токенов в Claude Code читайте в отдельном руководстве. О настройке файла постоянного контекста — в материале о CLAUDE.md.

Чем грилинг отличается от Plan Mode и как их сочетать?

Главное

Грилинг помогает прояснить требования до составления плана. Plan Mode предназначен для подготовки плана изменений по уже понятой задаче и позволяет ознакомиться с ним до внесения правок. Вместе эти приёмы помогают сначала договориться о цели, а затем проверить предполагаемые действия.

Эти способы решают разные задачи и применяются на разных этапах.

ПризнакГрилингPlan Mode
Когда применяетсяДо плана: уточняет намерениеПосле уточнения задачи: составляет план изменений
Кто задаёт вопросыИИ спрашивает пользователяПользователь изучает и одобряет план
РезультатСпецификация задачиПлан изменений по файлам
Основная пользаСнизить риск неверно понять просьбуСнизить риск лишних изменений

В документации Claude Code описан порядок из четырёх фаз: Explore — изучить проект и уточнить задачу; Plan — подготовить план без внесения изменений; Implement — выполнить работу по плану; Commit — зафиксировать результат. Грилинг помогает на этапе Explore, а Plan Mode — на этапе Plan. Подробнее о втором этапе рассказано в руководстве по Plan Mode в Claude Code.

Anthropic советует не составлять подробный план для каждой мелочи:

Если изменение можно изложить одним предложением, план можно пропустить.

— Anthropic, документация Claude Code, https://code.claude.com/docs/en/best-practices

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

Какие пять ошибок в запросе приводят к неверному результату?

Главное

Частые причины неверного результата — расплывчатый запрос, отсутствие ограничений, требование сразу писать код, неясные критерии готовности и смешение разных задач в одной сессии. Во всех этих случаях Claude приходится самостоятельно восполнять важные детали. Ниже показано, как уточнить каждый пункт.

В таблице собраны типичные неудачные формулировки и способы сделать их конкретнее.

ОшибкаПример формулировкиКак улучшить запрос
Расплывчатая просьба в одну строку«Сделай дашборд лучше»Описать ожидаемый результат и попросить ИИ уточнить детали вопросами
Не указаны ограничения«Добавь авторизацию»Уточнить, что нельзя менять, какие библиотеки не добавлять и что не входит в задачу
Требование сразу писать кодПромпт и немедленная реализацияСначала попросить понять задачу и задать вопросы, затем переходить к коду
Нет критерия готовностиОжидание, что ИИ сам угадает результатПриложить пример, эталонный скриншот или тест, показывающий требуемое поведение
Одна сессия для всех задачОдин чат на весь деньОткрывать отдельный разговор для самостоятельной задачи, чтобы не перегружать контекст

Пересмотрите последний запрос, после которого получили неподходящий ответ. Возможно, в нём не хватало одного из перечисленных условий. Часто проблема начинается с короткой фразы, оставляющей Claude слишком много места для догадок.

Как сделать так, чтобы ИИ лучше понимал задачу?

Главное

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

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

Часть нужных сведений можно сохранить заранее: например, описание проекта и рабочие правила в файле CLAUDE.md, который Claude Code использует как постоянный контекст. Такие материалы помогают системе учитывать цели и ограничения проекта до получения конкретного запроса.

В отчёте Anthropic о тенденциях агентной разработки за 2026 год приведена оценка: разработчики используют ИИ примерно в 60% своей работы, но полностью готовы доверить ему лишь 0-20% задач. Эти оценки показывают, что человеческое понимание, контроль и ясная постановка задачи по-прежнему имеют значение.

Познакомьтесь с Ailoot.

Подробнее

Вопросы и ответы

Когда использовать интервью вместо немедленного написания кода?

Когда результат, крайние случаи или ограничения неясны, а ошибки дороги. Задавайте по одному вопросу и сохраняйте согласованный результат в SPEC.md. Опечатку или понятную правку одной строки можно запросить напрямую.

Что проверить перед принятием плана?

Попросите два-три подхода и сравните соответствие каждого спецификации и ограничениям. Затем выполните запрос pre-mortem, изучите причины возможного провала и учтите существенные риски до реализации.

Все статьи