Как OpenCode скармливает нейросетям мусорные промпты за ваши деньги
ИИ-агенты для кодинга обещают нам полную автономность и экономию времени. Российское приложение OpenCode долгое время радовало щедрыми лимитами на бесплатные модели (вроде Big Pickle).
Но за красивым фасадом и платной подпиской Zen скрывается удивительный «костыльный» промпт-инжиниринг.
Недавно я решил разобраться, почему при подключении собственного Google API лимиты RPM сгорают моментально. Я перехватил запросы приложения через прокси-сервер на Python и ужаснулся тому, что разработчики скармливают нейросети под видом «оптимизированного контекста»
Долгое время приложение работало стабильно, пока я не решил перейти на схему BYOK (Bring Your Own Key). Подключив свой ключ Google API, я моментально уперся в ошибку лимита запросов (RPM).
Чтобы понять, почему агент делает так много тяжелых запросов, я залез в конфигурационный файл opencode.json и перенаправил трафик от OpenRouter на локальный сервер, написанный на Python. Мне удалось перехватить «сырой» системный промпт, который отправляется модели перед выполнением команд
Результат реверс-инжиниринга оказался комичным. Судя по всему, кто-то из разработчиков поленился вручную составить чистую и строгую схему вызова инструментов (JSON Schema). Промпт просто сгенерировали в ChatGPT и вставили "как есть", даже не потрудившись очистить от мусора.
В описании инструментов присутствует markdown (жирный шрифт, списки). Для ИИ-модели аргументы, это бесполезно, мусор, который только тратит токены и заставляет модель работать медленее
Текст перегружен типичными для ChatGPT вводными фразами, повторениями и раздутыми примерами.
Каждый раз, когда агент проверяет файлы или запускает терминал, этот огромный, неоптимизированный кусок текста отправляется в контекст. Если вы платите за токены сами — вы буквально оплачиваете плохую работу промпт-инженера стартапа
Надеюсь, разработчики увидят этот пост и наконец-то заменят маркдаун-простыни на валидный, лаконичный JSON