Оригинальный источник: Agent Harness: Working with your data, safely
Это один из самых полезных постов по инженерии агентов в этом году, потому что он отказывается от распространённой ловушки автономии, ориентированной на демо. Вместо этого он фокусируется на том, как агенты должны действовать вокруг реальных пользовательских данных и реальных последствий.
Три строительных блока, выделенных здесь, абсолютно верны.
Доступ к файлам даёт агентам полезную опору на данные, принадлежащие пользователю.
Механизм утверждений (approval gating) предотвращает молчаливое выполнение значимых действий.
Устойчивая память избавляет от повторяющихся взаимодействий, не жертвуя контролем.
Большинство команд переинвестируют в широту набора инструментов и недоинвестируют в семантику разрешений. Это неправильно. Агент с десятью инструментами и слабыми границами утверждения ценнее меньше, чем агент с тремя инструментами и предсказуемыми точками контроля.
Лучший практический паттерн в этой статье — многоуровневая стратегия утверждений:
Всегда требуйте утверждения для инструментов с высоким воздействием, таких как торговые операции или деструктивные действия.
Автоматически утверждайте чтения с низким риском, чтобы сохранить темп работы.
Используйте ограниченные постоянные утверждения (scoped standing approvals) для повторяющихся доверенных действий в рамках сессии.
Это создаёт здоровый градиент риска. Пользователей не прерывают ради безобидных чтений, но они всё ещё остаются в контуре, когда последствия становятся дорогими или необратимыми.
Мне также нравится явное разделение между файловой памятью и памятью Foundry. Командам стоит перестать пытаться заставить одну модель памяти решать все проблемы. Грубые, явные файловые артефакты отлично подходят для видимого пользователю состояния, такого как отчёты и списки наблюдения. Извлечение памяти на уровне фактов лучше подходит для предпочтений и контекста разговора. Сочетание обоих подходов даёт лучшие результаты, чем попытка притвориться, что достаточно одного из них.
Моё оценочное мнение: будущее качества агентов будет измеряться не столько удачными промптами, сколько эргономикой безопасности. Если ваши запросы на утверждение шумные, пользователи кликают вслепую. Если границы вашей памяти неясны, пользователи перестают доверять ассистенту. Если настройки доступа к данным по умолчанию слишком разрешительны, команды безопасности закроют проект.
Для .NET- и Python-команд, внедряющих этот паттерн, ключевой шаг — относиться к колбэкам политик и правилам утверждения как к основной бизнес-логике, версионируемой и тестируемой так же, как любой другой критичный код. Не оставляйте их разрозненными лямбдами, зарытыми в примерах.
Агентные системы, заслуживающие доверия, — это не те, что делают больше всего. Это те, что делают ровно то, что имели в виду пользователи, не больше и не меньше, с чёткими точками прерывания при росте риска.
В этом и разница между впечатляющим демо и программным обеспечением, которому люди готовы доверить реальную работу.
