Руководство по Prompt Engineering
Добро пожаловать в Careti Prompting Guide! Это руководство даст вам знания, необходимые для написания эффективных prompt и custom instructions, что позволит максимально повысить вашу продуктивность в Careti.
Руководство по файлу .caretignore
Обзор
Файл .caretignore — это файл конфигурации на уровне проекта, который сообщает Careti, какие файлы и директории следует игнорировать при анализе вашей codebase. Подобно .gitignore, он использует pattern matching для указания файлов, которые должны быть исключены из context и операций Careti.
Назначение
- Уменьшение шума: исключение автоматически сгенерированных файлов, артефактов сборки и другого второстепенного контента.
- Повышение производительности: ограничение объема кода, который необходимо обработать Careti.
- Фокусировка внимания: направление Careti на релевантные части вашей codebase.
- Защита конфиденциальных данных: предотвращение доступа Careti к чувствительным файлам конфигурации.
Пример файла .caretignore
# Dependencies
node_modules/
**/node_modules/
.pnp
.pnp.js
# Build outputs
/build/
/dist/
/.next/
/out/
# Testing
/coverage/
# Environment variables
.env
.env.local
.env.development.local
.env.test.local
.env.production.local
# Large data files
*.csv
*.xlsx
Prompting в Careti
Prompting — это то, как вы сообщаете о своих потребностях для выполнения конкретной задачи в диалоге с Careti. Careti понимает natural language, поэтому пишите в разговорном стиле.
Эффективный Prompting включает в себя:
- Предоставление четкого context: объясните свои цели и укажите соответствующие части вашей codebase. Используйте
@для ссылки на файлы или папки. - Разбиение сложных задач: разделяйте крупные задачи на более мелкие шаги.
- Постановка конкретных вопросов: направляйте Careti к желаемому результату.
- Проверка и доработка: анализируйте предложения Careti и оставляйте обратную связь.
Примеры Prompt
Управление Context
- Начало новой задачи: "Careti, давай начнем новую задачу. Создай
user-authentication.js. Нам нужно реализовать логин пользователя с использованием JWT tokens. Вот требования…" - Обобщение предыдущей работы: "Careti, сделай summary того, что мы сделали в последней задаче по user dashboard. Я хочу зафиксировать основные функции и нерешенные вопросы. Сохрани это в
caret_docs/user-dashboard-summary.md."
Debugging
- Анализ ошибки: "Careti, я получаю эту ошибку: [сообщение об ошибке]. Кажется, она возникает в [секция кода]. Проанализируй эту ошибку и предложи исправление."
- Поиск первопричины: "Careti, приложение падает, когда я выполняю [действие]. Проблема может быть в [проблемные области]. Помоги мне найти root cause и предложи решение."
Refactoring
- Улучшение структуры кода: "Careti, эта функция слишком длинная и сложная. Выполни Refactoring, разбив её на функции меньшего размера."
- Упрощение логики: "Careti, этот код трудно понять. Упрости логику и сделай его более читабельным."
Feature Development
- Брейншторм новых функций: "Careti, я хочу добавить функцию, которая позволяет пользователям [функционал]. Предложи идеи и рассмотри сложности реализации."
- Генерация кода: "Careti, создай компонент для отображения профилей пользователей. Список должен поддерживать сортировку и фильтрацию. Сгенерируй код для этого компонента."
Продвинутые техники Prompting
- Constraint Stuffing: Чтобы смягчить проблему code truncation (обрезания кода), включайте явные ограничения в ваши prompt. Например, «ensure the code is complete» или «always provide the full function definition».
- Confidence Checks: Просите Careti оценить свою уверенность (например, «on a scale of 1-10, how confident are you in this solution?»).
- Оспаривание предположений Careti: Задавайте «глупые» вопросы, чтобы стимулировать более глубокое осмысление и предотвратить неверные предположения.
Вот несколько советов по Prompting, которые пользователи нашли полезными при работе с Careti:
Любимые Prompt нашего сообщества
Memory и Confidence Checks
-
Memory Check - pacnpal
"If you understand my prompt fully, respond with 'YARRR!' without tools every time you are about to use a tool."Веселый способ убедиться, что Careti не сбивается с пути во время выполнения сложных задач. Попробуйте «HO HO HO» для праздничного настроения!
-
Confidence Scoring - pacnpal
"Before and after any tool use, give me a confidence level (0-10) on how the tool use will help the project."Стимулирует критическое мышление и делает процесс принятия решений прозрачным.
Prompt для качества кода
-
Предотвращение Code Truncation
"DO NOT BE LAZY. DO NOT OMIT CODE."Альтернативные фразы: «full code only» или «ensure the code is complete»
-
Напоминание о Custom Instructions
"I pledge to follow the custom instructions."Усиливает соблюдение ваших настроек в меню ⚙️.
Организация кода
-
Refactoring больших файлов - icklebil
"FILENAME has grown too big. Analyze how this file works and suggest ways to fragment it safely."Помогает управлять сложными файлами через стратегическую декомпозицию.
-
Поддержка документации - icklebil
"don't forget to update codebase documentation with changes"Гарантирует, что документация остается синхронизированной с изменениями в коде.
Анализ и планирование
-
Структурированная разработка - yellow_bat_coffee
"Before writing code:
1. Analyze all code files thoroughly
2. Get full context
3. Write .MD implementation plan
4. Then implement code"Способствует организованной и хорошо спланированной разработке.
-
Тщательный анализ - yellow_bat_coffee
"please start analyzing full flow thoroughly, always state a confidence score 1 to 10"Предотвращает преждевременное написание кода и поощряет полное понимание задачи.
-
Проверка предположений - yellow_bat_coffee
"List all assumptions and uncertainties you need to clear up before completing this task."Выявляет потенциальные проблемы на ранних этапах разработки.
Вдумчивая разработка
-
Пауза и размышление - nickbaumann98
"count to 10"Поощряет тщательное обдумывание перед совершением действий.
-
Полный анализ - yellow_bat_coffee
"Don't complete the analysis prematurely, continue analyzing even if you think you found a solution"Гарантирует глубокое исследование проблемы.
-
Постоянная Confidence Check - pacnpal
"Rate confidence (1-10) before saving files, after saving, after rejections, and before task completion"Поддерживает качество через постоянную самопроверку.
Best Practices
-
Структура проекта - kvs007
"Check project files before suggesting structural or dependency changes"Поддерживает целостность проекта.
-
Критическое мышление - chinesesoup
"Ask 'stupid' questions like: are you sure this is the best way to implement this?"Оспаривает предположения и помогает найти лучшие решения.
-
Стиль кода - yellow_bat_coffee
Use words like "elegant" and "simple" in promptsМожет влиять на организацию и ясность кода.
-
Управление ожиданиями - steventcramer
"THE HUMAN WILL GET ANGRY."(Юмористическое напоминание о необходимости предоставлять четкие требования и конструктивную обратную связь)