Дисциплина промптов — inputs данные определяют outputs
Дисциплина промптов — inputs определяют outputs
Качество результата от Claude Code напрямую зависит от качества задачи. Дисциплина промптов — это навык, который окупается быстро.
Почему это важно
Claude Code — очень мощный инструмент, но он не читает мысли. Размытая задача → размытый результат. Конкретная задача → конкретный результат.
Принципы хорошего промпта
1. Описывай намерение, а не шаги
❌ Плохо:
Открой src/users.ts, найди функцию getUser, добавь параметр includeDeleted
✅ Хорошо:
Функция getUser должна принимать опциональный параметр includeDeleted: boolean.
Если он true — возвращать в том числе удалённых пользователей (поле deleted_at IS NOT NULL)
2. Давай контекст о том, почему
Добавь кэширование для запроса к /api/products.
Этот эндпоинт вызывается ~1000 раз/мин, данные меняются раз в час.
Используй Redis, который уже настроен в lib/redis.ts
3. Указывай ограничения и требования
Напиши функцию для парсинга CSV.
Требования:
- TypeScript
- Поддержка разных разделителей (, ; )
- Строки могут содержать переносы внутри кавычек
- Возвращать строго типизированный массив
4. Один запрос — одна задача
Не смешивай несколько независимых задач в один промпт. Это усложняет ревью и повышает риск ошибки.
Режим планирования
Для сложных задач сначала попроси план:
Прежде чем писать код — опиши план реализации.
Жди моего подтверждения.
Это позволяет поймать неправильное понимание задачи до того, как написаны сотни строк кода.
Итеративные уточнения
Не нужно описывать всё сразу. Начните с базы:
> Создай простой REST API для задач (Tasks)
> Хорошо, теперь добавь фильтрацию по статусу
> Теперь добавь пагинацию
Итог
- Описывай намерение и результат, а не пошаговые инструкции
- Давай контекст о причинах и ограничениях
- Один запрос — одна связная задача
- Для сложного — сначала план, потом реализация
Практические задания
Перепиши плохой промпт
Вот плохой промпт:
«Сделай мне API»
Перепиши его так, чтобы он давал предсказуемый результат. Включи: контекст проекта, стек, что именно нужно сделать, какого формата ожидается вывод.
Подсказки
Эксперимент с уровнем детализации
Возьми одну и ту же задачу (например, «написать функцию для парсинга CSV») и сформулируй её тремя способами:
- Минимальный промпт (одно предложение)
- Средний (3–5 предложений с контекстом)
- Подробный (с примерами ввода/вывода и ограничениями)
Запусти все три в Claude Code и сравни результаты.
Подсказки