Главная/Блог/Гайд/WebAgent от Agent-Net: Открываем…
Гайд7 мин чтения · 15 сентября 2026 г.

WebAgent от Agent-Net: Открываем исходный код для создания защищённых AI-агентов

Команда Agent-Net выпустила WebAgent — open-source фреймворк на Go, позволяющий превратить любой сайт в безопасного AI-агента через декларативный JSON. Разбираем архитектуру, безопасность и готовность к продакшену.

WebAgent от Agent-Net: Открываем исходный код для создания защищённых AI-агентов

В мире искусственного интеллекта, где каждый день появляются новые фреймворки и библиотеки, истинная ценность часто кроется не в сложности кода, а в его способности решать конкретные бизнес-задачи с минимальным порогом входа. Команда Agent-Net, известная своими амбициозными проектами в области создания маркетплейса «агент-к-агенту» (где AI-агенты могут самостоятельно обнаруживать, доверять и оплачивать услуги друг друга), сделала очередной важный шаг. Они открыли исходный код проекта WebAgent — мощного инструмента (harness), который позволяет бизнесам быстро развертывать публичных AI-агентов, интегрированных с их веб-сайтами.

Проще говоря, вы предоставляете системе свой сайт, и она генерирует агента, способного взаимодействовать с другими агентами и пользователями. Ключевое отличие WebAgent от традиционных подходов заключается в отказе от написания сложного оркестрационного кода. Вместо этого бизнес-пользователь заполняет декларативный JSON-спецификацию, выбирает провайдеров для девяти модульных слотов и запускает сервис простой командой webagent serve. Это демократизирует доступ к созданию сложных AI-систем, делая их доступными даже для команд без глубоких знаний в разработке распределенных систем.

01Архитектура модульности: 9 слотов, один контракт

WebAgent написан на языке Go, что сразу говорит о его приоритетах: высокая производительность, конкурентность и компактный бинарный файл. Архитектурно агент представляет собой «Мозг» (Brain) — комбинацию большой языковой модели (LLM) и инструкций, который управляет набором слотов, определенных в директории core/. Каждый слот является сервисным интерфейсом (SPI), имеющим реестр провайдеров в spi/ и назначенный по умолчанию.

Такой подход служит трем аудиториям в рамках единой контрактной модели:

  • Бизнесы-конфигураторы: Они просто выбирают нужные компоненты из меню, не касаясь кода.
  • Бизнесы-расширители: Они могут регистрировать собственные провайдеры, расширяя функциональность.
  • Партнерские компании: Они могут поставлять адаптеры, которые сертифицируются системой.

Важно отметить, что никто не форкает ядро проекта. Каждый провайдер должен пройти серию конформности (conformance suite) своего слота, чтобы получить сертификацию. Это гарантирует стабильность системы даже при использовании сторонних компонентов.

Детальный разбор слотов и провайдеров

Давайте рассмотрим, какие именно компоненты можно конфигурировать. Система предлагает гибкий выбор для каждого аспекта работы агента:

  • Retrieval (Поиск информации): Поддерживаются live (онлайн), keyword (по ключевым словам) и hybrid (гибридный) режимы. По умолчанию используется live-режим.
  • Memory (Память): На данный момент доступен только session-режим, сохраняющий контекст в рамках сессии.
  • Guardrail (Контроль безопасности): Есть базовые фильтры или возможность их отключения. По умолчанию включен базовый режим.
  • Channel (Канал связи): Поддерживаются a2a (агент-к-агенту), web, Slack, WhatsApp (Telegram пока в стадии черновика). По умолчанию выбран a2a.
  • Secrets (Хранение секретов): Поддерживаются env (переменные окружения), file (файлы) и static (статические значения). По умолчанию используется env.
  • Presenter (Вывод): Текстовый вывод, терминал с QR-кодом или веб-интерфейс. По умолчанию — текст.
  • Model (Модель): Echo (для тестов), OpenRouter, Gateway. По умолчанию — Echo.
  • Action (Действия): Пока нет встроенных действий, есть демо-режим и интеграция с MCP. По умолчанию — none.
  • Observability (Наблюдаемость): Нет, логирование или запись в память. По умолчанию — none.
💡
Совет для разработчиков. Обратите внимание, что слот Action по умолчанию пуст. Это означает, что для реальной работы с внешними инструментами вам необходимо явно подключить провайдер MCP или использовать демо-режим. Архитектура требует явного выбора, что исключает случайное использование небезопасных инструментов.

02Безопасность как код, а не как промпт

Самым важным архитектурным решением в WebAgent является модуль action.Guard. В мире AI-агентов одной из главных проблем является «галлюцинация» или несанкционированное выполнение действий. WebAgent решает эту проблему на уровне архитектуры, а не путем надежды на то, что промпт будет достаточно строгим.

WebAgent от Agent-Net: Открываем исходный код для создания защищённых AI-агентов

Каждый инструмент, которым обладает агент — будь то он предоставлен провайдером действий или внедрен хостом — оборачивается так, что выбранный guardrail (фильтр безопасности) запускается перед выполнением действия. Модель не может обойти эту защиту. Это фундаментальный сдвиг парадигмы: безопасность становится неотъемлемой частью выполнения кода, а не просто текстовой инструкцией.

Документация DESIGN.md ссылается на исследование, которое показывает, что архитектура, а не способность модели, определяет успех агента. Цитируется разница в успешности задач на 85% против 50% при использовании одних и тех же моделей, но разной архитектуры. Это подчеркивает важность правильного проектирования системы ограничений.

03Что работает прямо сейчас: Практическое развертывание

По умолчанию «мозг» echo не требует учетных данных, поэтому команды webagent validate и webagent serve работают «из коробки» с двумя примерами спецификаций: zomato.json и bakery.json. Это позволяет быстро протестировать функциональность без настройки сложных сред.

Для подключения реальной модели, например, через OpenRouter, необходимо выполнить команду webagent keys set openrouter, которая сохраняет ключ в директории конфигурации операционной системы с правами доступа 0600. Ключи никогда не записываются в спецификацию, и экспортированная переменная окружения всегда имеет приоритет. Это обеспечивает безопасность данных и соответствие лучшим практикам DevOps.

Оба клиента, openrouter и gateway, являются совместимыми с OpenAI клиентами с циклом вызова инструментов. Это означает, что вы можете использовать широкий спектр современных LLM, поддерживающих этот стандарт.

⚠️
Важно для безопасности. Никогда не храните API-ключи в JSON-спецификациях. Используйте переменные окружения или менеджер секретов. WebAgent принудительно требует этого подхода, что снижает риск утечки данных.

04Интеграция с MCP и мессенджерами

Бизнес, уже имеющий сервер Model Context Protocol (MCP), может превратить его в действующего агента с помощью одного блока спецификации. Провайдер действий mcp подключается через Streamable HTTP (JSON и SSE) с аутентификацией Bearer или API-ключом. Он выполняет рукопожатие на этапе сборки и передает каждый инструмент агенту через фильтр безопасности, так что команда validate сообщает реальное количество инструментов.

Адаптеры для Slack и WhatsApp проверяют каждую входящую подпись вебхука, немедленно подтверждают получение, отвечают через API платформы, игнорируют собственные сообщения и устраняют дубликаты при повторных доставках. Slack указывает на /slack/events, а обратный вызов Meta идет на /whatsapp/webhook. Это обеспечивает надежную интеграцию с популярными каналами коммуникации.

05Управление секретами и наблюдаемость

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

WebAgent от Agent-Net: Открываем исходный код для создания защищённых AI-агентов

Наблюдаемость (Observability) генерирует трассировку каждого хода (TurnTrace), совместимую с конвенциями OpenTelemetry GenAI. Также доступен набор инструментов для оценки (eval/harness), который запускает сценарии с проверками. Это критически важно для мониторинга производительности и выявления узких мест в работе агентов.

📌
Факт. WebAgent использует OpenTelemetry GenAI для трассировки. Это означает, что вы можете интегрировать его с существующими системами мониторинга, такими как Jaeger, Zipkin или коммерческими решениями, поддерживающими этот стандарт.

06Готовность к продакшену: Плюсы и минусы

WebAgent распространяется под лицензией Apache 2.0, написан на Go и находится в версии v0. Он уже поддерживает Slack, WhatsApp и HTTP-агентов, работающих на базе инструментов MCP. Однако есть ряд функций, которые еще не реализованы:

  • Действия в браузере (Browser actions).
  • MCP с аутентификацией OAuth.
  • Экспорт OpenTelemetry (OTel export).
  • Слой идентификации и биллинга AgentNet.

Это означает, что для критически важных производственных сред необходимо внимательно изучить список «отложенного усиления безопасности» (deferred-hardening list) перед развертыванием. Тем не менее, для прототипирования и пилотных проектов WebAgent представляет собой зрелое и надежное решение.

07Что это значит на практике

Для российских разработчиков и компаний WebAgent представляет особый интерес по нескольким причинам. Во-первых, использование Go и декларативного JSON упрощает развертывание в контейнеризованных средах, которые широко распространены в корпоративном секторе. Во-вторых, возможность локального запуска с использованием моделей, совместимых с OpenAI (через Gateway), позволяет обходить ограничения на доступ к зарубежным API, если настроить локальный прокси или использовать отечественные модели.

Модульная архитектура позволяет легко заменять компоненты. Например, можно использовать отечественную LLM в качестве «Мозга», интегрировать её с локальным хранилищем знаний (Retrieval) и настроить каналы связи через Telegram (который, судя по черновику, скоро будет полноценно поддержан) или внутренние корпоративные мессенджеры. Безопасность на уровне кода (Guardrail) особенно важна в условиях ужесточения требований к защите данных и AI-этике.

Таким образом, WebAgent от Agent-Net — это не просто еще один фреймворк, а шаг к стандартизации создания AI-агентов. Он снижает барьер входа, обеспечивая при этом высокий уровень безопасности и гибкости. Для тех, кто хочет создать собственного AI-агента для бизнеса, это отличный старт, требующий минимальных усилий для конфигурации, но предоставляющий максимум возможностей для расширения.

Рекомендуем ознакомиться с репозиторием на GitHub и ознакомительным постом команды. Все заслуги принадлежат исследователям проекта. Не забудьте подписаться на их социальные сети и присоединиться к сообществу, чтобы быть в курсе последних обновлений.

Источник: MarkTechPost ↗