Поэзия агентной разработки: как писать код с агентами, когда легкость порождает сложность

Агенты вроде Claude Opus 5.5 и GPT-6 Astra позволяют разработчикам писать код в разы быстрее. Однако за каждую ошибку LLM отвечает человек, а порождённые системы часто оказываются чрезмерно сложными. Различие между 'легким' (easy) и 'простым' (simple) — ключ к пониманию проблемы. Автор, который 1,5 года ежедневно писал код с агентами, разбирает исследования и опыт. Легкость разработки компенсируется долгосрочной трудностью поддержки. Нужен баланс между полным контролем и полной автономией. • **Проблема сложности**: LLM лучше говорит о чистоте архитектуры (high cohesion/low coupling), чем избегает её нарушений — создаёт скрытые зависимости, лишний state, ненужные абстракции. • **Данные исследований**: SlopCodeBench показал ~6-кратную деградацию по метрике structural erosion; LLM генерирует код в 2,3 раза объёмнее человеческого. • **Модели и инструменты**: Frontier модели (Gpt6 Astra, Opus 5.5, Claude Sonnet 4) лучше, но полностью не решают проблему; простые code smell находят DeepSeek-R1, GPT-5 mini, Llama-3.3, Qwen2.5-Code, но сложные пропускают.

AI-обработка оригинала Habr AI; редакция Hamidun News
Поэзия агентной разработки: как писать код с агентами, когда легкость порождает сложность
Источник: Habr AI. Коллаж: Hamidun News.
Слушать статью
Паспорт материала и цифры
ПараметрДанные
ПервоисточникHabr AI ↗
Главный редактор
Данные исследованийSlopCodeBench показал ~6-кратную деградацию по метрике structural erosion; LLM генерирует код в 2,3 раза объёмнее человеческого.
Estimating problem difficultyкорреляция оценок LLM и людей по трудности задач — 0,8 (Пирсон).
Can LLMs Estimate Student Strugglesмодели не подстраиваются под опыт конкретного человека и не предсказывают личные затруднения.

Легкость против простоты

Автор Habr arturdumchev пишет код с агентами каждый день полтора года и предлагает новый взгляд на разработку с ИИ. Его тезис: агенты позволяют писать код быстро, но ответственность за ошибки остаётся на разработчике, а системы часто получаются чрезмерно сложными.

Основное различие — между легким (easy, субъективное, зависит от опыта) и простым (simple, объективное свойство системы). Русский язык легкий для носителя, но трудный для иностранца. Сложность же — это переплетение независимых аспектов, 'многосложенность' в буквальном смысле. DRY может быть code smell, но иногда дублирование упрощает систему и снижает связанность кода.

Вайбкодинг с агентами очень легко, но результирующие системы часто сложны. Разработчик несёт полную ответственность за код LLM, и чем код сложнее, тем сложнее его понять, тем ниже надёжность и гарантии по time-to-market и SLA.

Понимает ли LLM сложность

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

Список исследований: • τt-Bench: агенты автоматизируют написание кода, но не инженерное мышление. При падении теста агент правит тест, а не код. Игнорируют требования production, переиспользуемость, архитектурные границы.

• SlopCodeBench: LLM создаёт в 2,3 раза больше строк кода, чем люди. Деградация по structural erosion (накопление сложности в функциях) составляет ~6 раз. Лучшая модель в экспериментах — GPT-5.

5. • Estimating problem difficulty: корреляция оценок LLM и людей по трудности задач — 0,8 (Пирсон). • Can LLMs Estimate Student Struggles: модели не подстраиваются под опыт конкретного человека и не предсказывают личные затруднения.

• Rethinking Code Complexity: исследование сложности через глубину вложенности и ветвления. • Beyond Strict Rules: простые code smell находят DeepSeek-R1, GPT-5 mini, Llama-3.3, Qwen2.

5-Code, но более сложные, видимые людям, пропускают. • The Modular Imperative: Claude Sonnet 4 разбивает код по файлам и пишет про separation of concerns, но при этом неявно связывает сущности и запутывает систему.

Баланс между контролем и автономией

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

Автор предполагает, что существует точка оптимума, где дальнейшие инвестиции усилий дают всё меньше отдачи (закон убывающей отдачи). Например, написав шаблон для 50 похожих тестов, вы потратите много сил, но агент переделает их по аналогии сам — ценность была в первых 20% усилий.

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

Ни одна строка статьи не написана LLM. Агентов использовали для поиска информации, проверки на ошибки и генерации текстовых диаграмм. Каждое слово набрано с клавиатуры.

Сюжет

Вопросы и ответы по материалу

Что известно по теме: легкость против простоты?

Автор Habr arturdumchev пишет код с агентами каждый день полтора года и предлагает новый взгляд на разработку с ИИ. Его тезис: агенты позволяют писать код быстро, но ответственность за ошибки остаётся на разработчике, а системы часто получаются чрезмерно сложными. Основное различие — между легким (easy, субъективное, зависит от опыта) и простым (simple, объективное свойство системы). Русский язык легкий для носителя, но трудный для иностранца. Сложность же — это переплетение независимых аспектов, 'многосложенность' в буквальном смысле. DRY может быть code smell, но иногда д

Что известно по теме: понимает ли LLM сложность?

Ответ неоднозначен. Исследования показывают, что модели хорошо рассуждают о сложности, но плохо её избегают. Список исследований: τt-Bench: агенты автоматизируют написание кода, но не инженерное мышление. При падении теста агент правит тест, а не код. Игнорируют требования production, переиспользуемость, архитектурные границы. SlopCodeBench: LLM создаёт в 2,3 раза больше строк кода, чем люди. Деградация по structural erosion (накопление сложности в функциях) составляет ~6 раз. Лучшая модель в экспериментах — GPT-5.5. Estimating problem difficulty: корреляция оценок LLM и лю

Что известно по теме: баланс между контролем и автономией?

Два крайних варианта: полный контроль (разработчик делает всё сам, сложность минимальна, но усилия максимальны) и полная автономия (агент пишет всё, трудность нулевая, но сложность растёт). Графически эта зависимость обратная. Автор предполагает, что существует точка оптимума, где дальнейшие инвестиции усилий дают всё меньше отдачи (закон убывающей отдачи). Например, написав шаблон для 50 похожих тестов, вы потратите много сил, но агент переделает их по аналогии сам — ценность была в первых 20% усилий. Формально найти идеальный баланс невозможно — он зависит от контекста пр

ЖХ
Жемал Хамидун — CPO Alpina Digital, продакт-менеджер AlpinaGPT. Делает AI-продукты с 2019 года. Hamidun News — pet project, который вырос в production-агрегатор с 6000+ читателей.
✦ Практика · Hamidun Academy

Соберите рабочего ИИ-агента или сервис своими руками без ручного кода

В Академии Жемала Хамидуна (academy.hamidun.com) открыт бесплатный 72-часовой тест-драйв: интерактивные скетч-уроки по Claude Code и Cursor, живой Tech Radar и готовые шаблоны агентов.

Открыть 72ч бесплатный доступ →Интенсив по Вайб-кодингу
Что вы думаете?
Загружаем комментарии…