Разговор о стоимости агента почти всегда сворачивает на токены: как их сосчитать, где урезать, какую модель взять подешевле. Инстинкт понятен, но обманчив - он оптимизирует единицу расхода вместо его причины. Токены не тратятся сами по себе; их тратят итерации, а число итераций задаётся тем, сколько в задаче осталось неснятой неопределённости.
Наивный ход - экономить на входе. Взять модель послабее, урезать контекст, реже запускать проверку - на бумаге каждое из этих действий уменьшает счёт за отдельный turn. На практике оно чаще увеличивает их число: слабее понял - хуже сделал - переспросил - переделал. Экономия на turn оборачивается лишними turn, и суммарный расход растёт именно там, где вы пытались его срезать.
Ломается наивная экономия на том, что главный драйвер стоимости - не цена turn, а количество turn, а его гонит неопределённость. Расход растёт от широкого контекста, от повторного исследования одного и того же, от сильной модели там, где хватило бы простой, от subagents и параллельных вариантов, запущенных без нужды. Все эти статьи объединяет одно: они умножают работу, которую не сузили заранее. Дорого не думать, а гадать многократно. Практический вывод из этого один: счёт растёт не столько там, где выбрана дорогая модель, сколько там, где задача поставлена так, что её приходится проходить дважды и трижды.
Отсюда разворот стратегии: сокращать нужно не проверку, а неопределённость. Маленькая задача вместо расплывчатой, точный reproduction вместо "иногда падает", сохранённый план вместо устного, узкие команды вместо обхода всего репозитория - каждый из этих приёмов срезает не стоимость отдельного шага, а само число шагов. Проверка при этом остаётся: резать её - экономить на том единственном, что отличает сделанное от заявленного.
Перед дорогим turn полезно задать ему один вопрос: какой неизвестный он снимает. Если ответа нет - turn исследует наугад, и его стоимость почти наверняка вернётся повторным заходом. Если ответ есть - вы платите за конкретное снятие неопределённости, и результат этого turn имеет смысл сохранить. Вопрос "что я узнаю" превращает расход из ставки в осознанную покупку знания. И наоборот: turn без внятного ответа на этот вопрос - чаще всего сигнал вернуться на шаг назад и сузить задачу, а не запускать исследование в надежде, что оно само набредёт на нужное.
Второй приём - сохранять артефакт после каждого этапа. Найденную причину, согласованный план, готовый diff, результат прогона тестов - всё, что стоило работы, фиксируют, чтобы следующая сессия не покупала то же исследование заново. Именно повторная закупка уже добытого знания и есть самая незаметная статья расходов: агент без сохранённого контекста честно исследует с нуля то, что вы уже выяснили вчера.
Здесь уместна датированная оговорка о заявленной эффективности. Devin Local описан как "до 30% более token-efficient" на большинстве задач по сравнению с Cascade, с упором на prompt caching. Это заявление производителя без независимого бенчмарка: полезный ориентир, но не гарантия для вашей конкретной задачи и модели. Реальную стоимость показывает не эта цифра, а страница usage - и биллинг устроен так, что неуспешные сообщения расхода не потребляют.
Это не значит, что экономить на модели и контексте нельзя вовсе. На простой, хорошо очерченной задаче лёгкая модель и узкий контекст - именно правильный выбор, и брать тяжёлую модель туда - та же ошибка навыворот. Смысл не в том, чтобы всегда дорого или всегда дёшево, а в том, чтобы мощность turn соответствовала снимаемой им неопределённости: избыток так же расточителен, как недостаток, порождающий переделки.
Проверять управление стоимостью нужно по факту, а не по ощущению экономии. Смотрите на usage до и после, а не на предполагаемую цену модели; считайте, сколько turn ушло на задачу и сколько из них были повторным исследованием уже известного. Хороший признак - число итераций падает от задачи к задаче, потому что растёт запас сохранённых артефактов. Плохой - каждая новая сессия начинает с нуля, и суммарный счёт не связан с реальной сложностью работы.
Типичные провалы лежат по обе стороны. С одной - ложная экономия: срезанная проверка и ослабленная модель дают переделки, которые стоят больше сэкономленного. С другой - расточительность: широкий контекст, тяжёлая модель и параллельные ветки на задаче, которой хватило бы одной узкой. Признак обоих один: стоимостью пытались управлять на уровне токенов, а не на уровне неопределённости и итераций. Снимайте неизвестное дешёвыми ходами, сохраняйте добытое - и счёт сойдётся сам.