Внешняя память агента: почему без неё ИИ в 1С бесполезен на длинной дистанции

25.08.26

Интеграция - Нейросети

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

Проблема, которую замечают не сразу

Первую неделю работы с ИИ-агентом кажется, что всё прекрасно. Он быстро разбирается в конфигурации, пишет код, находит нужные регистры.

На третьей неделе вы ловите себя на том, что объясняете одно и то же в четвёртый раз. Что база называется так-то. Что расширение, которое трогать нельзя, называется так-то. Что тот способ выполнить код, который он сейчас предлагает, вы вдвоём уже проверяли месяц назад и он не работает.

Дело не в том, что модель плохая. У агента нет памяти между сессиями — это не дефект, а свойство. Каждый новый диалог начинается с чистого листа, и весь контекст, который вы вместе наработали, исчезает.

Отсюда следует вывод, до которого я дошёл не сразу: память должна быть частью проекта, а не частью агента. И вести её должен сам агент, а не вы.

У меня эта система живёт около года, журнал по 1С разросся до восьмисот с лишним строк, и она окупилась многократно. Ниже — как она устроена, что в неё писать, а главное — что писать бесполезно.


Два вида памяти

Практика развела память на две категории, и они устроены по-разному.

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

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

Смешивать их в одном файле — верный способ получить документ, который никто не читает. Инструкция должна быть короткой и исполняемой, справочник — полным и структурированным.


Ядро системы: журнал

Главный файл — журнал по теме. У меня отдельный по 1С, отдельный по мобильному приложению, отдельный по сайту.

Структура жёсткая и состоит из двух частей.

Часть первая: «что мы умеем»

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

Это раздел, который агент читает первым и который отвечает на вопрос «что мы уже знаем про эту систему». Он растёт медленно и переписывается по мере накопления опыта.

Пример записи оттуда, которая экономит больше всего времени:

/LoadConfigFromFiles не компилирует, exit 0 на битом коде. Единственная настоящая проверка — /CheckModules -Extension <имя> -Server.

Две строки. Каждый новый агент, прочитав их, не наступает на мину, которая стоила мне выката битого кода в бой.

Часть вторая: журнал сессий

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

Структура записи одинаковая:

  • Дата и одна строка сути — «персональная скидка складывалась со статусной»;
  • Симптом — что увидел пользователь. Не «баг в расчёте», а «клиент со статусом 15% и кампанией 30% получил на кассе 45%»;
  • Что оказалось — реальная причина, с именами модулей и процедур;
  • Починка — что именно изменили, где, с какими последствиями;
  • Грабли этой сессии — отдельный подраздел, самый ценный во всей записи;
  • Открытые хвосты — что не доделано и однажды выстрелит.

Симптом обязателен в формулировке пользователя. Через три месяца вы будете искать по журналу именно так — по тому, как проблема выглядела снаружи, а не по тому, как называлась в коде.


Самое ценное — отрицательные результаты

Вот главная мысль статьи, и она контринтуитивна.

Обычная документация описывает, как надо. Память агента должна в первую очередь описывать, как не работает — потому что агент будет предлагать эти способы снова. Каждую сессию. Уверенно.

У меня есть запись из одного вечера, потраченного впустую:

Внешняя обработка через /Execute — НЕ работает. 1cv8 ENTERPRISE /Execute file.epf просто открывает обработку: тело модуля объекта не исполняется, ПриОткрытии — метод формы, которой у обработки без формы нет. Собрать .epf с формой не удалось: /LoadExternalDataProcessorOrReportFromFiles падает «Исключение XDTO при чтении Form.xml» даже на нетронутом дампе, сделанном той же платформой.

Этот абзац с тех пор сэкономил мне, по ощущениям, три-четыре повторения того же вечера. Без него каждый новый диалог начинался бы с бодрого «давайте сделаем внешнюю обработку и выполним её».

Формулируйте отрицательный результат так, чтобы он закрывал не только конкретную команду, но и очевидный обходной путь. «/Execute не работает» — недостаточно, агент тут же предложит собрать обработку с формой. Нужно сразу: и это не работает, и вот почему, и вот что работает вместо.


Правила ведения, без которых система умирает

Система документов деградирует по предсказуемым сценариям. Правила ниже написаны против каждого из них.

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

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

Не дублировать между файлами. Дубль — это гарантированное расхождение через месяц: одну копию поправят, вторую забудут, и агент прочитает ту, что устарела.

Не раздувать «на всякий случай». Документ, который никто не дочитывает, эквивалентен отсутствию документа. Причём для агента это хуже, чем для человека: он дочитает, потратит контекст и утонет в шуме.

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

Не переформатировать косметически. Правка без содержательных изменений создаёт шум в истории и мешает понять, что реально менялось.

Критерий, по которому я оцениваю, хорошо ли отработала сессия, звучит так:

Если в следующем разговоре спросят «а как мы решили вопрос X?» и ответа нет в документах — работа предыдущей сессии сделана плохо.


Обвязка вокруг журнала

Журнал — ядро, но одного его мало. Что ещё оказалось нужным:

Обзор проекта. Бизнес-контекст, который не выводится из кода: чем занимается компания, как устроены процессы, какие константы откуда взялись, где подводные камни. Агент, не понимающий бизнес, пишет технически корректный и бесполезный код.

План работ. Что делается сейчас, что сделано, что дальше. Отвечает на первый вопрос каждой сессии — «на чём мы остановились».

Changelog по датам. Что происходило вчера и позавчера. Отличается от журнала тем, что это хронология всего проекта, а не разбор конкретных сессий по теме.

Архитектурные решения. Каждое нетривиальное решение — отдельная запись с датой и обоснованием. Не «используем X», а «используем X, потому что Y, альтернатива Z отклонена из-за W».

Глоссарий. Внутренние термины: типы карт, статусы, названия воркеров. Без него агент выдумывает синонимы, и вы получаете три названия для одной сущности.

Runbook. Операционные процедуры и разбор инцидентов. Сюда попадает всё, что начинается с «а что делать, если».

Шаблоны запросов. Удачные формулировки задач, которые сработали. Отдельная тема, о ней ниже.


Процедурная память: инструкции вместо объяснений

Декларативная часть отвечает на «что». Процедурная — на «что делать, когда».

Оформляется она не как документ для чтения, а как инструкция, которая подхватывается по ситуации. У меня это набор коротких файлов, каждый под свой сценарий: перед деструктивной операцией, при выкате бэкенда, при выпуске мобильного релиза, при трассировке заказа, который не доехал, при работе с несколькими организациями сразу.

Разница с документацией принципиальная. Документацию читают, когда вспомнили о ней. Инструкция срабатывает от ситуации: агент видит, что собирается сделать что-то необратимое, и подтягивает соответствующий контур.

Требования к таким инструкциям:

  • короткие, страница максимум;
  • исполняемые — команды, а не рассуждения;
  • с явными запретами, а не только с рекомендациями;
  • со списком «можно без спроса» — иначе агент начнёт спрашивать разрешения на чтение логов.

Последний пункт неочевиден, но важен. Если написать только запреты, агент станет параноидальным и будет согласовывать каждый SELECT. Явно разрешённая зона нужна не меньше запрещённой.


Что писать бесполезно

Раздел, сэкономивший бы мне несколько месяцев, если бы кто-то написал его раньше.

Не пишите то, что агент прочитает в коде. Структура каталогов, список функций, сигнатуры — всё это он посмотрит быстрее, чем вы напишете, и его версия не устареет.

Не пишите то, что есть в истории репозитория. Что и когда меняли — там уже записано.

Не пишите разбор конкретного бага, который закрыт навсегда. Ценна не история починки, а грабля, которая из неё вытекает. Не «в модуле X была опечатка», а «поле Код у этого справочника не существует физически, в объектной модели молча возвращает пустую строку».

Не пишите общеизвестное. «1С — учётная система» в журнале не нужно.

Формулировка правила: в память идёт то, что нельзя вывести из кода и что стоило вам времени. Всё остальное — шум, который жрёт контекст и снижает шанс, что агент дочитает до важного.


Что это даёт

Несколько эффектов, которые проявились не сразу.

Новая сессия стартует за минуту. Агент читает план и последние записи журнала и сразу понимает, где мы. Никакого «расскажи мне про проект».

Ошибки не повторяются. Записанная грабля — это грабля, на которую больше не наступят. Мой список из одиннадцати граблей платформы работает именно так.

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

Знание переживает смену инструмента. Модели меняются, интерфейсы меняются, а журнал в текстовых файлах лежит и работает с любым следующим агентом.

Вы сами начинаете думать чётче. Требование сформулировать грабли одним абзацем заставляет додумать, что именно произошло. Половину своих выводов я довёл до ясности именно в момент записи.


Выводы

1. Память — часть проекта, а не часть модели. Ждать, что агент запомнит, бессмысленно. Стройте внешнее хранилище.

2. Вести его должен агент. Обязанность обновлять документы фиксируется в правилах проекта. Ручное ведение не выживает.

3. Отрицательные результаты ценнее положительных. «Так не работает и вот почему» экономит больше времени, чем любая инструкция, потому что закрывает тупик, куда агент будет ходить снова.

4. Разделяйте «что мы знаем» и «что делать». Справочник и инструкция устроены по-разному и деградируют по-разному.

5. Критерий качества один. Если ответ на вопрос «как мы решили X» отсутствует в документах — сессия отработала плохо, каким бы хорошим ни был написанный код.

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


Опыт годовой работы с ИИ-агентом над боевыми базами УТ 11.5, мобильным приложением и Rust-бэкендом розничной сети.

Вступайте в нашу телеграмм-группу Инфостарт

ИИ агент контекст документация журнал память ADR знания УТ 11.5 процесс разработки

Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

См. также

SALE! %

Банковские операции Обмен с интернет-банком Мастера заполнения Нейросети Программист Бухгалтер Пользователь 1С:Предприятие 8 1C:ERP 1С:Бухгалтерия 3.0 1С:ERP Управление предприятием 2 1С:Управление холдингом 1С:ERP. Управление холдингом 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Управление торговлей 11 1С:Розница 3.0 Платные (руб)

Корректируйте банковские документы быстро и легко! Создайте правило обработки — и оно автоматически применится при загрузке выписки (отбор по любому реквизиту или регулярному выражению). Решение заполняет расшифровку платежа, комиссию эквайринга, подбирает ведомости на выплату зарплаты, помечает дубли из банка на удаление и многое другое. Доплачивать за алгоритмы не нужно — они включены в решение. Обработка работает при загрузке из файлов клиент-банка и через DirectBank. Новое — искусственный интеллект: модель приводит нестандартные назначения платежа к виду, понятному алгоритмам, а ИИ-ассистент прямо в 1С консультирует по решению и разбирает код правил и алгоритмов. Поддерживаются локальные и облачные OpenAI-совместимые модели — данные могут не покидать ваш контур.

15250 руб.

20.12.2024    19073    97    29    

83

Нейросети Системный администратор Программист Бизнес-аналитик Бухгалтер Пользователь Руководитель проекта 1С 8.3 1С:Документооборот 1С:Бухгалтерия 3.0 1С:Зарплата и Управление Персоналом 3.x Россия Платные (руб)

Задавайте вопросы базе 1С обычными словами: получайте данные, находите ошибки и связанные документы, проверяйте права, работайте с вложениями и контролируемо вносите изменения. Всё это работает в самой программе, а Codex и Claude подключаются по желанию.

15989 руб.

30.07.2026    10666    25    4    

24

Инструментарий разработчика Нейросети Платные (руб)

Первые попытки разработки на 1С с использованием больших языковых моделей (LLM) могут разочаровать. LLMки сильно галлюцинируют, потому что не знают устройства конфигураций 1С, не знают нюансов синтаксиса. Но если дать им подсказки с помощью MCP, то результат получается кардинально лучше. Далее в публикации: MCP для поиска по метаданным 1С, справке синтакс-помощника и проверки синтаксиса.

15250 руб.

25.08.2025    70006    139    41    

147

Нейросети Программист Бизнес-аналитик Руководитель проекта Бесплатно (free)

Я принёс команде приём, с которым нейронка наконец начала понимать нашу конфигурацию: у меня он работал, у коллег — нет. Дело было не в постановке задач и не в настройках: причина в том, что на их машинах индекс конфигурации считался бы несколько дней. Замер на одном и том же своде из 26 035 записей: три часа на процессоре против трёх с половиной минут на видеокарте. Разбираю, что такое индексация конфигурации и почему она дорогая ровно один раз, почему наша основная серверная машина — 64 ядра, 768 гигабайт памяти — на этой задаче проигрывает домашнему компьютеру, и почему приём одного человека упирается в вопрос, который никто не любит задавать.

09.09.2026    3766    solbol    9    

9

Нейросети Программист Бесплатно (free)

Первая часть подборки простых приёмов для работы с ИИ-агентами. Без «секретных техник» — скорее сверим часы и посмотрим, какие подходы действительно помогают экономить время, лимиты и нервы. Разберём шесть практических приёмов: как выбирать модель под задачу и не тратить дорогую модель на мелочи; зачем сначала составлять план сложной работы; как сохранять агентские сессии на VPS с помощью tmux и Herdr; почему голосовой ввод даёт больше контекста, но требует проверки; как перепроверять решения одного агента другим; и как организовать параллельную работу через Git worktree. Большинство этих вещей опытным пользователям наверняка знакомо. Но иногда именно «очевидная» мелочь оказывается той, о которой узнаёшь слишком поздно. Возможно, из этой подборки вам пригодится хотя бы один приём.

04.09.2026    2814    Ibrogim    7    

15

Инструментарий разработчика Нейросети Программист 1С:Предприятие 8 Бесплатно (free)

Как мы в 42Clouds научили агента открывать формы, заполнять поля, проверять списки и собирать доказательные отчёты — и чем Answer42 отличается от Vanessa Automation MCP, Тестер, CodexTestBridge UI-worker и браузерных инструментов.

04.09.2026    1665    amoarok    15    

13

Нейросети Программист 1С:Предприятие 8 Россия Бесплатно (free)

Как связать 1С и Cursor через MCP так, чтобы AI-агент сам получал актуальную конфигурацию из информационной базы, находил нужный BSL-код, вносил изменения, загружал конфигурацию обратно и запускал 1С:Предприятие. В статье — настройка 1C: Platform Tools, 1C: Platform Tools MCP, OneScript, vanessa-runner и env.json, а также важные нюансы при работе с несколькими проектами, IPC-портами, большими конфигурациями и длительными операциями загрузки. Покажу полный практический цикл на тестовой базе без ручной выгрузки и загрузки XML через Конфигуратор.

28.08.2026    16870    rinat1c    18    

30

Нейросети Программист 1С:Предприятие 8 Бесплатно (free)

Новый UI-контур CodexTestBridge запускает штатные TestClient/TestManager и даёт ИИ-агенту семантические действия вместо координат. Результаты возвращаются по шагам, долгие операции сопровождаются heartbeat. На реальной БП 3.0 открываем и заполняем приходную накладную без записи.

26.08.2026    2721    Aleksandr    3    

9
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. serferian 28 26.08.26 08:05 Сейчас в теме
>> Внешняя обработка через /Execute — НЕ работает. 1cv8 ENTERPRISE /Execute file.epf

все друг у дружки это перепечатывают что-ли? 2-3 статьи уже с этим утверждением

.да работает она и модуль выполняется - только код в модуле пишите сразу без процедур и функций... либо вызовите в модуле объекта любую стартовую процедуру. "Инициализировать();"
comptr; orakool2; +2 Ответить
Для отправки сообщения требуется регистрация/авторизация