TuBrief
Subscribed Channels
Videos
Community

Как разобраться со спагетти-кодом от ИИ-агентов и снизить расходы на токены

TuBrief Editorial
August 12, 2026
0
Computing/Software

Written with AI assistance from the source video. The video is the authority.

Русский한국어EnglishEspañol中文العربيةहिन्दीDeutschFrançaisPortuguêsBahasa Indonesia日本語

Related Video

Loop Engineering — новый хайп... и я его уже ненавижу8:12

Loop Engineering — новый хайп... и я его уже ненавижу

Maximilian Schwarzmüller

More from the community

사내 시스템에 llm api 붙일 때 마주하는 현실적인 한계와 대응법

September 13, 2026

레거시 백엔드에 GPT-6 Astra 붙일 때 예산 승인과 보안 통과를 먼저 끝내는 법이 있습니다

September 13, 2026

에이전트끼리 대화하다 6천만 원 청구서가 나오는 이유

September 13, 2026

사내 RAG 벡터 검색에 Okta 권한 필터를 직접 거는 방법

September 13, 2026

브라우저 에이전트에게 내 구글 계정을 통째로 넘기면 안 되는 이유

September 12, 2026

Apple Won the AI Race

September 12, 2026

Comments (0)

Log in to leave a comment

No posts yet

© 2026 . All rights reserved.

TuBrief
Subscribed Channels
Videos
Community
Log in

Как разобраться со спагетти-кодом от ИИ-агентов и снизить расходы на токены

Я поручил агенту написать код, после чего проект разросся до миллиона строк, а счет за API пришел в виде астрономической суммы. Эта статья о том, как с этим справиться.

Избавление от испорченной кодовой базы

Дублированный код, созданный агентом в бесконечном цикле, можно удалить всего за 30 минут. Для этого отлично подойдут knip и jscpd.

Создайте файл knip.json в корне проекта и укажите точки входа. Запустите в терминале команду npx knip, чтобы найти призрачные пакеты, которые агент использовал и бросил. Затем выполните npx jscpd ./src -t 1, чтобы выявить блоки дублирующихся функций, появившиеся из-за копирования и вставки.

В монорепозитории объемом 158 файлов можно избавиться от лишнего кода за один раз. После этого откройте biome.json, включите правило noUnusedVariables и заблокируйте повторное проникновение мертвого кода.

Ограничение расходов на токены с помощью песочницы

Если каждый раз скармливать агенту весь код целиком, токены моментально испаряются. Необходимо применить структуру Repo-Map в стиле Aider, изолируя только те файлы, с которыми идет работа прямо сейчас.

Использование опции --map-tokens 1024 позволяет сократить объем токенов, затрачиваемых на понимание структуры репозитория, до уровня ниже 2 000 даже в проектах с тысячами файлов.

Для установки лимитов по затратам решением станет LiteLLM Proxy. Настройте litellm_config.yaml и ограничьте максимальное количество циклов на сеанс до 15. Установив верхний предел расходов в 2.50 доллара, вы заставите прокси прерывать вызовы в тот момент, когда агент превышает лимит.

Контроль агента с помощью декларативных тестов

Писать длинные промпты на малайском бесполезно. Сначала нужно скормить агенту падающие юнит-тесты, чтобы он не занимался ерундой.

Согласно исследованию SWE-bench Verified, при предварительном внедрении кейсов юнит-тестов частота регрессий снизилась с 6.08 процента до 1.82 процента, а процент успешного решения проблем вырос с 24 процентов до 32 процентов.

Сначала создается файл с падающими тестами, после чего агенту отдается инструкция написать только ту реализацию, которая эти тесты пройдет.

Скрипт проверки также необходимо автоматизировать. Создайте файл local_verifier.sh и последовательно добавьте в него команды npx tsc --noEmit, npx biome check ./src, npx vitest run. Даже если агент утверждает, что весь код готов, любые ненулевые коды завершения этого скрипта заблокируют коммит.

Гибридный рабочий процесс с участием человека

Код, созданный агентом, разбивается на пулреквесты и проверяется человеком лично.

Проверяется, превысило ли количество измененных строк 200, не добавились ли странные пакеты в package.json и не были ли ошибки замазаны с помощью @ts-ignore. Интеграция Husky и lint-staged позволяет блокировать коммит на этапе отправки, если доля дублирующегося кода превышает 2 процента.

Работа разбивается на 3 этапа. Самая мощная модель распределяет задачи и создает TODO.md. Затем модель с оптимальным соотношением цены и качества реализует каждый пункт. Наконец, старший разработчик проверяет git diff. Использование этой структуры позволяет сэкономить более 70 процентов бюджета по сравнению с попытками решить все задачи с помощью одной передовой модели.