Учебник

Как менять код в бизнесе без программиста за вечер: Aider и Git-коммиты на каждое изменение

У вас нет штатного программиста, а доработки сайта или скрипта отдают на аутсорс за 50 000 руб. и ждут неделю. Aider - бесплатный инструмент, который сам редактирует файлы в вашем проекте и делает Git-коммит после каждого изменения. Разбираем, как за 30 минут настроить и применить для типовых бизнес-задач: правка прайса, генерация документов, доработка CRM-скриптов. Без курсов и программистов.

Макс Космов··8 мин чтения

У ваших менеджеров уходит по 4 часа в день на ручную правку договоров и прайсов - половина ошибок остаётся незамеченной. Или вы хотите автоматизировать сбор заявок из мессенджеров, но нанять программиста за 150 000 руб. в месяц не готовы. Aider - это open-source инструмент, который работает прямо из терминала (чёрное окно с командами). Он подключается к AI-моделям (Claude, GPT, DeepSeek) и сам редактирует файлы в вашем проекте, делая Git-коммит после каждого изменения. Никакого редактора кода не нужно - только терминал и API-ключ. За вечер вы сможете внедрить его для типовых задач: правка текстов, генерация документов, доработка простых скриптов. Без программиста. Без курсов.

Установка: pip install aider-chat, настройка API-ключа (Anthropic, OpenAI, DeepSeek, локальные модели)

Aider ставится через pip - это как установка приложения, только через команду. Рекомендуется создать виртуальное окружение, чтобы не засорять системный Python (это просто набор команд, не пугайтесь).

python -m venv ~/.aider-env
source ~/.aider-env/bin/activate # Linux/macOS
# или .aider-env\Scripts\activate на Windows
pip install aider-chat

После установки проверьте версию:

aider --version
# aider v0.XX.X

Настройка API-ключей. Aider читает ключи из переменных окружения - это как логин и пароль для доступа к AI. Вам нужно зарегистрироваться на сайте Anthropic (Claude), OpenAI (GPT) или DeepSeek, получить ключ и вставить его в команду:

export ANTHROPIC_API_KEY=sk-ant-...
export OPENAI_API_KEY=sk-...
export DEEPSEEK_API_KEY=...

Для постоянного хранения добавьте эти строки в файл .bashrc (Linux/macOS) или .env в корне проекта - Aider подхватит его автоматически.

Популярные комбинации и примерная стоимость:

  • aider --sonnet - Claude Sonnet 4, качественный вариант, ~$3-15 за сессию (как за пиццу с доставкой)
  • aider --opus - Claude Opus 4, для сложных задач, дороже
  • aider --model gpt-4o - альтернатива через OpenAI
  • aider --model deepseek/deepseek-coder - бюджетный вариант, в 10-20 раз дешевле Claude (хорошо для правки текстов)
  • aider --model ollama/qwen2.5-coder:32b - бесплатно, но нужна мощная видеокарта (GPU)

Разберём на примере стройфирмы. У вас есть прайс на работы (файл prices.html) и типовой договор подряда (contract.docx). Вы хотите, чтобы при изменении цен договор автоматически обновлялся. Aider может править HTML-файл с прайсом и генерировать новый договор. Это пример, не реальный кейс автора.

Первый запуск: aider --sonnet, добавление файлов в контекст через /add и /drop

Зайдите в корень вашего проекта (папка с файлами) и запустите:

cd /path/to/your/project
aider --sonnet

Aider откроет интерактивный сеанс. Сразу видно:

  • Какая модель используется
  • Список файлов в контексте (пустой при старте)
  • Подсказку для ввода

Добавить файлы в контекст:

> /add src/prices.html src/contract.docx
Added src/prices.html to the chat.
Added src/contract.docx to the chat.

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

Убрать файл из контекста:

> /drop src/prices.html

Дать задачу:

> добавь строку "Укладка плитки - 1200 руб/м2" в прайс

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

Commit abc1234 aider: Add tile laying price

Важный момент: если Git-репозитория нет, Aider предложит инициализировать его. Работать без Git не получится - именно Git-история является системой контроля изменений. Если вы не знакомы с Git, просто соглашайтесь - Aider сделает всё сам.

Как Aider строит карту репозитория (repo-map) и зачем она нужна

Aider не загружает все файлы проекта в контекст - это было бы дорого и неэффективно. Вместо этого он строит компактную «карту репозитория» (repo-map): список всех файлов с их публичным содержанием (например, заголовки, переменные, функции).

Для HTML-файла в карту попадут:

  • Заголовки таблиц
  • Имена классов и id
  • Текстовые блоки

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

Просмотреть карту текущего проекта:

> /map

Для больших проектов (10 000+ файлов) карта может занять значительный объём контекста. В этом случае помогает .aiderignore для исключения ненужных папок.

Автодобавление файлов по карте:

> /add --all-files # добавить всё, на что ссылается задача

Aider сам определит, какие файлы нужны для вашей задачи, используя repo-map как навигатор.

Git-first подход: атомарные коммиты, /undo, просмотр diff перед применением

Главное отличие Aider от интерактивного чата - Git-first подход. Каждое изменение от агента сразу фиксируется в истории. Это даёт несколько практических преимуществ.

Атомарные коммиты. Каждое действие агента - отдельный коммит. Если задача состояла из 5 шагов, в истории будет 5 коммитов с чёткими сообщениями. Это делает историю изменений читаемой и позволяет откатить конкретный шаг.

Откат последнего изменения:

> /undo
Reverted commit abc1234: aider: Add tile laying price
Files restored to previous state.

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

Просмотр diff до применения. По умолчанию Aider показывает diff (разницу между старой и новой версией) и ждёт y / n. Можно включить автоприменение:

aider --auto-commits --sonnet # применять без подтверждения

Но для новичков лучше оставить ручное подтверждение - это хорошая привычка проверять, что делает агент.

Работа с ветками: Aider работает в текущей ветке. Перед большой задачей создайте отдельную ветку:

git checkout -b feature/price-update
aider --sonnet

Если результат не устроил - git checkout main и ветка исчезает.

Режимы редактирования: diff, whole, udiff - что выбрать для каких задач

Aider поддерживает несколько форматов, в которых модель «пишет» изменения. Это влияет на точность и стоимость.

diff (по умолчанию для большинства моделей): модель генерирует стандартный unified diff (список изменений). Экономичный формат, хорошо работает для небольших изменений в существующих файлах.

aider --edit-format diff --sonnet

whole: модель переписывает файл целиком. Дороже по токенам, но надёжнее для больших изменений - нет риска неправильно применить патч. Рекомендуется при работе с файлами, где структура сильно меняется (например, полная смена дизайна прайса).

aider --edit-format whole --sonnet

udiff: расширенный unified diff с дополнительным контекстом. Хорош для сложных изменений с множеством затронутых строк.

Практический совет: для большинства задач оставьте diff по умолчанию. Переключайтесь на whole только если видите ошибки применения патчей (Aider сам предупредит об этом).

Автозапуск линтеров и тестов после каждого изменения (--auto-lint, --test-cmd)

Aider умеет автоматически запускать проверку кода или тесты после каждого коммита и передавать результат обратно агенту для исправления. Это создаёт петлю обратной связи.

Автозапуск линтера (проверка синтаксиса):

aider --sonnet --lint-cmd "flake8 src/"

Если после изменения flake8 вернёт ошибки, Aider сразу увидит их и попробует исправить без вашего участия.

Автозапуск тестов:

aider --sonnet --test-cmd "pytest tests/ -x"

Флаг -x в pytest останавливает после первой ошибки - так агент получает конкретный сигнал, а не длинный список всех упавших тестов.

Комбинирование:

aider --sonnet \
 --lint-cmd "ruff check src/" \
 --test-cmd "pytest tests/ -x --tb=short" \
 --auto-test

С --auto-test Aider сам решает, когда запускать тесты - не после каждого шага, а когда считает задачу завершённой. Это экономит время и деньги.

Если тесты упали и агент не может исправить за 3 попытки, он сообщит об этом и вернёт управление - не уйдёт в бесконечную петлю.

Работа с большими проектами: .aiderignore, многофайловые задачи, /architect-режим

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

Файл .aiderignore работает как .gitignore:

# .aiderignore
node_modules/
.venv/
build/
dist/
*.pyc
legacy/ # старый код, не трогать

Aider исключит эти пути при построении repo-map и при автодобавлении файлов.

Многофайловые задачи. Для задачи, затрагивающей много файлов, добавьте их все заранее:

> /add src/prices.html src/contract.docx src/styles.css

Можно добавлять целые директории.

Architect-режим (--architect) - специальный режим для крупного рефакторинга, где одна мощная модель планирует изменения, а другая (дешевле) их выполняет. Подробнее разобрано в продвинутом гайде по Aider.

Полезные команды для навигации в больших проектах:

> /ls # показать файлы в контексте
> /tokens # сколько токенов в текущем контексте
> /clear # очистить контекст, начать заново
> /ask <вопрос> # задать вопрос без редактирования файлов

Сравнение с Codex CLI и Claude Code: когда Aider выигрывает

Aider, Codex CLI и Claude Code - три разных инструмента в одной нише. Выбор зависит от приоритетов.

Aider выигрывает, когда:

  • Важна прозрачность: каждое изменение - отдельный Git-коммит с понятным сообщением
  • Нужна работа с несколькими провайдерами (сегодня Claude, завтра DeepSeek)
  • Важна возможность использовать локальные модели через Ollama (бесплатно)
  • Open-source критичен (Aider полностью открыт, можно изучить и модифицировать код)
  • Работаете в компании с ограничениями на передачу кода в облако

Claude Code выигрывает при длинных автономных сессиях, где агент работает 30+ минут без вмешательства. У него лучше «память» в рамках одной сессии.

Codex CLI выигрывает если уже используете экосистему OpenAI и нужна тесная интеграция с GPT-5-Codex.

Можно использовать Aider и другие инструменты параллельно в разных задачах: Aider для рутинного рефакторинга с контролем через Git, Cursor или Windsurf для интерактивного написания нового кода.

Частые вопросы

Aider бесплатный? Сколько стоят токены при работе с Claude Sonnet?

Aider сам по себе бесплатный и open-source. Расходы - только на токены модели. Типичная сессия с Claude Sonnet 4 на среднем задании (правка 2-3 файлов) обходится в $0.10-0.50. Большой рефакторинг с многими файлами может стоить $2-5. Для снижения расходов используйте DeepSeek Coder - он в 15-20 раз дешевле Claude при сопоставимом качестве для кодирования.

Как Aider работает с монорепозиторием на 100 000 файлов?

Glob-паттерн .aiderignore решает проблему: исключите все пакеты, которые не нужны для текущей задачи. Запускайте Aider из подкаталога конкретного пакета, а не из корня монорепо. Тогда repo-map будет компактной и релевантной. Также помогает флаг --map-tokens 2048 - он ограничивает размер карты.

Можно ли использовать Aider с локальной моделью через Ollama?

Да, через --model ollama/имя-модели. Например, aider --model ollama/qwen2.5-coder:32b. Качество будет ниже, чем у Claude Sonnet, особенно на сложных задачах. Qwen2.5 Coder 32B и DeepSeek Coder V2 - лучшие варианты для локального запуска. Требования: GPU с 24+ GB VRAM для 32B модели.

Как откатить изменения, если агент напортачил?

Команда /undo отменяет последний коммит Aider. Для отката нескольких шагов используйте стандартные Git-команды: git log --oneline чтобы найти нужный коммит, git revert <hash> для безопасного отката. Поскольку каждое действие агента - отдельный коммит, откат хирургически точный.

Чем Aider лучше, чем просто Claude Code в терминале?

Главное отличие - явный Git-first подход и поддержка множества провайдеров. Claude Code работает только с Anthropic-моделями и фокусируется на автономных долгих задачах. Aider даёт больше контроля: вы видите каждое изменение до применения. Можете переключаться между провайдерами в зависимости от задачи и бюджета, и весь код агента открыт для проверки.

Что дальше

Следующий шаг в учебном плане: Codex CLI от OpenAI: терминальный агент с GPT-5 и режимом sandboxed-выполнения.

Разборы свежих AI-новостей - в канале AI Компас.

Больше гайдов - ai-uchebnik.ru/uchebnik.

AI Компас (t.me/ai_kompass) - канал для предпринимателей в РФ и СНГ, которые применяют AI в своём бизнесе без программиста. Разбираем инструменты и схемы - без курсов и теории.