Как я держу документы и инструкции для агентов в актуальном состоянии
<img src="https://habrastorage.org/getpro/habr/upload_files/40e/afe/b92/40eafeb925ab32a6eb12f4b9725bd7ab.jpeg" /><p>Цепочка такая:</p><p>Сессия заканчивается. Транскрипт остаётся на диске.</p><p>Хук <code>SessionEnd</code> только ставит <code>session_id</code> в очередь (<code>enqueue</code>). Текст уроков он не пишет.</p><p>Systemd-таймер <code>agent-learn-distill</code> раз в ~30 минут будит <code>distill.py</code>.</p><p>Скрипт берёт сессию из очереди или простаивающую. Если с последнего обновления ещё нет примерно 25 минут простоя и сессия не в очереди — ждёт. Нужно минимум два хода пользователя, иначе пропуск и повтор позже. Строит выдержку из <code>chat_history</code>: до 12 ходов пользователя и до 4 коротких хвостов ассистента (лимит около 24k символов), не весь сырой транскрипт.</p><p>Дальше вызывает Grok без интерактива, с готовым промптом и JSON-схемой. В промпт уже вложены текущий <code>LEARNED.md</code>, заголовок сессии и выдержка; модели нельзя звать инструменты и перечитывать файлы. На выход: либо <code>skip</code>, либо новый полный <code>LEARNED.md</code> (замена целиком, до ~80 строк и ~8k символов: живое оставить, устаревшее и дубли выкинуть; дата сверху, русский, без дампов кода) плюс список уроков с метками <code>learned</code> / <code>gotcha</code> / <code>decision</code>. Тот же текст зеркалится в секцию Auto-learned файла <code>MEMORY.md</code> проекта.</p><p>Уроки с меткой <code>learned</code> уже в теле <code>LEARNED.md</code>; <code>gotcha</code> и <code>decision</code> уходят в inbox на воскресный подъём в общие инструкции. В живой сессии тот же прогон можно форсировать командой <code>/learn</code>.</p> <a href="https://habr.com/ru/articles/1079304/?utm_source=habrahabr&utm_medium=rss&utm_campaign=1079304#habracut">Читать далее</a>
