ARAgentRunner

Документация

Краткая справка. Полная версия и обновления — в репозитории на GitHub.

Быстрый старт

1. Скачайте файл расширения .cfe со страницы выпусков на GitHub. 2. В 1С откройте «Администрирование → Печатные формы, отчеты и обработки → Расширения» и добавьте расширение из файла. 3. Снимите галочку «Безопасный режим», включите расширение, перезапустите сеанс. 4. Откройте мастер настройки: укажите поставщика нейросети (свой ключ или наш шлюз) и создайте первого агента.

Системные требования

Платформа: 1С:Предприятие 8.3.26 и выше. Режим работы: только клиент-серверный (файловая база не поддерживается). Сетевой доступ: HTTPS к сервису версий и (опционально) к шлюзу нейросетей. Поддержка TLS 1.2+.

Совместимость

Типовые конфигурации: Бухгалтерия предприятия 3.0; Управление торговлей 11; ERP 2; Зарплата и управление персоналом 3.1. Расширение не меняет объекты типовой конфигурации — работа ведётся через расширения и подписки на события.

Агенты

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

Инструменты

Набор действий агента вызывается через единый диспетчер: проверка прав пользователя 1С, запись события в неизменяемый журнал, проверка аргументов. Имена инструментов — латиницей, например search_clients, create_document, post_operation.

Расписания и триггеры

Запуск агента возможен: по расписанию; по событию в 1С (внешняя обработка/подписка); по внешнему HTTP-вызову; по упоминанию @агент в комментарии. На старте рекомендуется по расписанию — предсказуемо и безопасно.

Безопасность и контроль

Изменения — только после подтверждения оператором; журнал действий append-only (отдельная роль для очистки); секретные ключи хранятся в защищённом хранилище 1С и скрываются в логах; работа от прав конкретного пользователя 1С — RLS клиента сохраняется.

Подключение шлюза нейросетей

В мастере настройки выберите «Использовать шлюз AgentRunner» и впишите ключ доступа из личного кабинета (раздел «Доступ»). Шлюз принимает запросы по HTTPS, считает токены из полного ответа модели и списывает стоимость с баланса. Для персональных данных используйте только российские модели — ГигаЧат или YandexGPT.

API-контракт шлюза (для разработчиков 1С)

Эндпоинт: POST https://agentrunner.ru/api/proxy Заголовки запроса: Authorization: Bearer <ключ_из_личного_кабинета> (обязательно) Content-Type: application/json Idempotency-Key: <уникальный_идентификатор> (опционально — повтор запроса не спишет дважды) Тело запроса (JSON): provider — провайдер: GIGACHAT | YANDEXGPT | OPENAI | ANTHROPIC | OPENROUTER | LOCAL | CLOUDRU model — название модели (например: GigaChat-Pro, gpt-4o-mini, claude-3-5-sonnet) messages — массив сообщений: [{role: 'system'|'user'|'assistant', content: '...'}] maxTokens — максимум токенов в ответе (опционально, макс. 64 000) temperature — температура 0–2 (опционально) tag — метка запроса для разреза расходов, до 64 символов (опционально) idempotency_key — альтернативный способ передать ключ идемпотентности (опционально) Успешный ответ 200: content — текст ответа модели model — название модели provider — провайдер usage.input_tokens — количество входных токенов usage.output_tokens — количество выходных токенов usage.cost_rub — списано с баланса (руб.) usage.saved_rub — экономия vs прямое подключение (руб.) usage.direct_rub — стоимость напрямую у поставщика (руб.) balance_rub — остаток баланса после запроса (руб.) low_balance — true, если баланс опустился ниже порога уведомления idempotent — true, если запрос был ранее обработан (возвращён кеш) Коды ошибок: 401 — отсутствует или неверный формат заголовка Authorization 402 — недостаточно средств на балансе или превышен лимит ключа (dailyLimitRub / monthlyLimitRub) 403 — неверный или отозванный ключ доступа 422 — некорректный запрос (ошибка валидации полей или запрос превышает контекстное окно модели) 502/504 — ошибка или таймаут на стороне поставщика нейросети Идемпотентность: при повторе запроса с тем же Idempotency-Key шлюз не вызывает провайдера повторно и не списывает средства второй раз. Провайдер вызывается ровно один раз — при первом успешном запросе.