Советы
Просто добавьте в чат файлы, которые нужно изменить.
Уделите немного времени и подумайте, какие файлы нужно изменить. Aider часто может сам определить, какие файлы нужно отредактировать, но самый эффективный подход — добавить файлы в чат.
Не добавляйте много файлов в чат
Просто добавьте файлы, которые, по вашему мнению, нужно отредактировать. Слишком много ненужного кода будет отвлекать и запутывать LLM. Aider использует карту всего вашего Git-репозитория.
поэтому обычно знает о соответствующих классах/функциях/методах в других местах вашей кодовой базы.
Можно добавить 1-2 очень важных файла, которые не нужно редактировать,
но будьте избирательны.
Разбейте свою цель на небольшие шаги
Выполняйте их по одному за раз. По мере добавления в чат файлов корректируйте их: /drop файлы, которые больше не требуют изменений, /add файлы, которые нужно изменить для следующего шага.
В случае сложных изменений сначала обсудите план.
Используйте команду /ask , чтобы составить план с помощником. Как только вы определитесь с подходом, просто скажите «go continue» без префикса /ask .
Если помощник застрял
Используйте команду/clear, чтобы удалить историю чата и начать заново.
Можете ли вы/dropкакие-нибудь дополнительные файлы?
Используйте/askдля обсуждения плана до того, как помощник начнет редактировать код.
Используйте команду/model, чтобы переключиться на другую модель и повторить попытку. Переключение между GPT-4o и Sonnet часто помогает решить проблемы.
Если помощник безнадёжно застрял, просто напишите следующий шаг самостоятельно, а затем попробуйте попросить помощника написать ещё. По очереди и программируйте в паре с помощником.
Создание новых файлов
Если вы хотите, чтобы Aider создал новый файл, сначала добавьте его в репозиторий с помощью команды /add <file> . Так Aider узнает о существовании файла и выполнит запись в него. В противном случае Aider может записать изменения в существующий файл. Это может произойти даже при запросе нового файла, поскольку LLM, как правило, в большей степени сосредоточены на существующей информации в своих контекстах.
Исправление ошибок и недочётов
Если ваш код выдает ошибку, используйте команду /run
поделиться выводом об ошибке с помощником.
Или просто скопируйте ошибки в чат. Пусть помощник разберётся, как их исправить.
Если тест не пройден, используйте команду /test
для проведения тестов и
поделитесь выводом об ошибке с помощником.
Предоставление документов
Обладатели степени LLM знакомы со многими стандартными инструментами и библиотеками, но могут ошибаться в некоторых тонких деталях, касающихся версий API и аргументов функций.
Актуальную документацию можно предоставить несколькими способами:
Вставляйте фрагменты документов в чат.
Добавьте URL-адрес документа в сообщение чата, и помощник извлечет и прочитает его. Например:Add a submit button like this https://ui.shadcn.com/docs/components/button.
Используйте команду/readдля чтения doc-файлов в чат из любого места вашей файловой системы.
Если у вас есть соглашения по кодированию или постоянные инструкции, которым должен следовать помощник, рассмотрите возможность использования файла соглашений .
Прерывание и ввод
Используйте сочетание клавиш Control-C, чтобы прервать помощника, если он не даёт полезного ответа. Частичный ответ сохраняется в разговоре, и вы можете обратиться к нему, когда будете отвечать с дополнительной информацией или указаниями.
Длинные многострочные сообщения в чате можно отправлять несколькими способами:
Вставьте многострочное сообщение прямо в чат.
Введите один символ{в первой строке, чтобы начать многострочное сообщение, и один символ}в последней строке, чтобы завершить его.
Или начните с{tag(где «tag» — любая последовательность букв/цифр) и закончитеtag}. Это полезно, когда вам нужно включить в сообщение закрывающие фигурные скобки}.
Используйте Meta-ENTER для начала новой строки без отправки сообщения (Esc+ENTER в некоторых средах).
Используйте команду/pasteдля вставки текста из буфера обмена в чат.
Используйте команду/editor(или нажмитеCtrl-X Ctrl-Eесли ваш терминал позволяет), чтобы открыть редактор и создать следующее сообщение чата. Подробнее см. в документации по настройке редактора .
Используйте многострочный режим, который меняет функции Meta-Enter и Enter: Enter вставляет новую строку, а Meta-Enter отправляет команду. Чтобы включить многострочный режим:
Для переключения этого режима во время сеанса используйте команду/multiline-mode.
Используйте параметр--multiline.
Пример с тегом:
{python
def hello():
print("Hello}") # Note: contains a brace
python}
Часто просят использовать сочетание клавиш SHIFT-ENTER для мягкого перевода строки. К сожалению, в терминалах нет переносимого способа определить это нажатие.