Мій кодинг-агент пам'ятав сесії, а не роботу
Кодинг-агент може підтримувати нитку розмови живою, але все одно здаватися забудькуватим.
Я зіткнувся з цією проблемою під час розробки CliGate. Я виправив безперервність сесій, але повторювані завдання все одно виконувалися занадто повільно.
Агент пам'ятав розмову, але не пам'ятав роботу.
Безперервність сесії вирішує одну проблему. Вона допомагає з уточнюючими командами, такими як:
- продовж
- зроби те саме для цього файлу
- спробуй ще раз
Це корисно. Але це не допомагає, коли ви повторюєте робочий процес через кілька днів.
Агенту потрібно згадувати, що зробило попередній запуск успішним. Йому потрібно знати:
- яка кнопка працює
- який крок є тупиковим шляхом
- яке поле потребує особливої обробки
- яке правило ви завжди хочете застосовувати
Перший запуск є найдорожчим. Саме тоді агент досліджує та знаходить деталі, яких немає у вашому промпті.
До мого виправлення ці деталі зберігалися лише в сирих логах. У агента була історія, але не було багаторазової пам'яті. Йому доводилося заново відкривати все щоразу.
Це не інтелект. Це подвійна оплата вартості налагодження.
Неправильний підхід — зберігати більше історії в надії, що модель її використає. Це створює шум.
Замість цього я побудував менший, багаторазовий шар пам'яті. Я зосередився на:
- процедурах
- фактах
- директивах
- посиланнях
Я перестав намагатися зберігати все, що відбувалося. Я почав зберігати те, що варто пам'ятати.
Тепер асистент використовує файловий шар пам'яті, щоб згадати:
- процедуру: найкращі кроки та відомі тупикові шляхи
- факт: URL-адресу або конкретне налаштування
- директиву: як саме ви хочете виконувати завдання
- посилання: де знаходиться документація
Саме так працюють люди.
Мені не потрібне ідеальне відтворення минулого, тому що інтерфейси змінюються, а кнопки переміщуються. Я хочу, щоб агент:
- Згадував найкращу відому процедуру
- Спочатку пробував її
- Перевіряв кожен крок
- Повертався до дослідження, якщо щось не вдалося
- Оновлював пам'ять після успіху
Це перетворює крихку автоматизацію на корисну оперативну пам'ять.
Я також відокремив постійні правила від історії розмови. Правила на кшталт «завжди відповідай китайською» або «не чіпай робочі дані» не є контекстом сесії. Це операційні правила.
Коли я їх розділив, асистент став передбачуваним. Йому більше не потрібно заново відкривати ваші вподобання посеред виконання завдання.
Повторювані завдання тепер виконуються швидше. Асистент діє швидше, тому що він не починає щоразу з порожньою моделлю.
Не плутайте безперервну нитку розмови з системою, яка навчається.
Сесія підтримує розмову живою. Пам'ять підтримує в житті корисні уроки.
Якщо ви створюєте кодинг-агентів, запитайте себе: ваша система пам'ятає нитку розмови чи вона пам'ятає успішну процедуру?
Джерело: https://dev.to/codekingai/my-coding-agent-remembered-sessions-not-work-that-was-the-bug-2fig
