Главная / Дневник / № 10
· эссе · AI · август 2026 ·

Из пяти задач агент сделает три. Остальные испарятся

Месяц назад завёл журнал задач на диске, потому что агент молча терял половину запроса. 147 файлов и 5045 пунктов спустя — что сработало, что пришлось доработать после факапов и что нашлось попутно в собственных правилах.

Олег Мифтахов 18 августа 2026 · 5 мин · № 10

Даёшь агенту пять задач в одном сообщении. Три он делает, одну наполовину, одну молча теряет. И бодро отчитывается — по тем трём, что сделал.

Ловить это должен ты. То есть держать в голове, что именно просил сорок минут назад, и сверять с тем, что получил. Я так пробовал. Не работает: к третьему запросу ты помнишь уже не формулировку, а общее ощущение «вроде всё сделал».

Дело не в том, что модель ленивая. Дело в том, что её память — это контекст, а контекст сжимается, чистится и вообще не для хранения. Задачи вымывает из него первыми: они короткие и выглядят выполненными.

Месяц назад я завёл простую штуку — журнал задач на диске.

Как устроено

Правило: если в запросе больше одного действия, агент до начала работы выписывает чеклист в файл. Файл на день на проект.

Внутри:

Отчёт в конце — только после чтения этого файла. По всем пунктам, в исходной нумерации. Не «сначала расскажу, что получилось».

Дословная цитата тут не педантизм. Пересказ теряет ровно те детали, из-за которых всё и затевалось: «поправь X и заодно Y» превращается в «поправить X», и Y испаряется ещё до начала работы.

Что вышло за месяц

147 файлов, 32 проекта, 5045 пунктов. Из них 3265 закрыто, 482 отменено с причиной, остальные висят открытыми.

Вот эти 482 — главное. Раньше отменённое просто исчезало: агент решал, что пункт неважный, и не упоминал его. Теперь на каждый есть строка «не делал, потому что». Решать, важный он или нет, — не его работа.

Открытые тоже никуда не делись. Их видно. Неприятно, но видно.

Три доработки, каждая после факапа

Галочка должна означать «проверено», а не «сделал».

Попросил агента врезать в мои правила несколько принципов из записок Карпаты — тех, что недавно разошлись по сети. Он врезал, отчитался, поставил галочку. Спрашиваю: а оригинальный файл с гитхаба ты скачивал?

Не скачивал. Работал по моему пересказу.

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

Теперь у каждого пункта в чеклисте стоит вторая половина: чем проверю. Команда с кодом возврата, тест, файл на месте, значение в базе. «Выглядит правильно» и «я проверил» — не проверка. Нечем проверить — так и пишем: нечем, только глазами.

Строчка «на чём остановились».

Внизу каждой секции — одна перезаписываемая строка: где встали, какой следующий шаг, якорь (файл и строка, ветка, команда). Она отвечает ровно на один вопрос: что делать первым, если контекст обнулился прямо сейчас.

Раньше после чистки контекста начиналось «так, на чём мы остановились?» и минут пять расспросов. Теперь агент читает журнал и продолжает.

Файл на окно.

Три окна параллельно — отчёт, платежи, багфикс — писали в один файл и затирали друг друга. Починка тупая: файл на окно и запрет перезаписывать его целиком, только дописывать.

Что взяли у Карпаты

Из тех самых записок прижились три строки. Не весь конспект — три.

Каждая изменённая строка трассируется к запросу. Никаких попутных рефакторингов, переименований и «заодно причесал». Увидел мусор рядом — скажи, не трогай.

Цель, а не шаги. Задача формулируется как проверка, которая либо проходит, либо нет: падающий тест, условие, которое должно стать истинным. Нет такой проверки — сначала ищем её, потом пишем код.

Больше проверок, меньше кода. Вот эта оказалась самой ценной, но не сама по себе — а тем, что вскрылось, когда я пошёл её вписывать.

Побочный эффект: правила спорили друг с другом

В файле правил рядом жили две строки. «В сомнениях делай БОЛЬШЕ — лишние проверки, лишние тесты». И «минимум кода, никаких лишних абстракций».

Обе написал я, в разное время, обе по делу. Но агент читает обе и выбирает ту, что удобнее под текущую задачу. И формально он всегда прав.

Развели явно: больше проверок — да, больше кода — нет.

Там же нашлось второе. Антипаттерн «недооцениваешь сложность — спроси реальный объём работ» я писал про себя-человека, для которого «это две недели» — аргумент. Для агента реализация стоит несколько долларов компьюта, и «это много работы» перестало быть аргументом вообще. Переписал на то, что действительно важно: что здесь необратимо — данные, миграции, публичный интерфейс, деньги — и насколько широко разлетится, если рванёт.

Третья находка вообще смешная. Файл, про который у меня написано «читать при необходимости», грузился в каждую сессию целиком — просто потому что не был оформлен ленивым. Полгода я платил за строчку «по требованию» полную цену. Заодно ужал стартовый вес инструкций с 12 800 токенов до 9 900.

И четвёртая, неожиданная. Правило «обращайся ко мне по имени» выглядит косметикой, я готов был выкинуть его как лишний вес. Оказалось — диагностика: под нагрузкой длинного технического ответа агент теряет форматные правила первыми, имя пропадает раньше, чем содержание начинает врать. Перестал звать по имени — пора чистить контекст и перепроверять выводы. Агент, кстати, предложил подставлять имя механически, первым словом ответа. Отказал: подпорка убила бы сигнал.

Экономия токенов тут приятный бонус, не приз. Приз — что в правилах не осталось двух строк, между которыми можно выбрать удобную.

Что забрать

Агенту не нужна память. Ему нужно место, куда он обязан писать, — до работы, а не после.

Три вещи дают почти весь эффект:

Заводится за десять минут. Ловит ровно то, что иначе ловишь ты сам — через сорок минут и на нервах.

#AI #вайбкодинг #Claude Code #процессы
Обсудить в Telegram →