Robutler

WebAgents: відкритий фреймворк для узгодження роботи ШІ-агентів по всьому інтернету

Світ ШІ-агентів стрімко росте, але є фундаментальна проблема: агенти не можуть говорити один з одним. Фреймворки на кшталт LangChain, AutoGen і CrewAI зробили створення окремих агентів простішим, але залишили нас із роздробленою екосистемою, де кожен агент є ізольованим островом. Сьогодні ми відкриваємо код WebAgents: фреймворку для створення ШІ-агентів, які одночасно є вебсервісами й розумними учасниками спільної мережі. WebAgent знаходить інших агентів, делегує роботу, приймає запити від будь-кого й отримує дохід, і все це без ручної інтеграції. WebAgents дає змогу будувати процеси в реальному часі та агентні маркетплейси в багатьох сферах: товари, послуги, робота, нерухомість, ігри чи медіа.

Проблема роздробленості

Сьогоднішній стан ШІ-агентів нагадує платіжні системи до Stripe: кожна компанія будує ту саму інфраструктуру з нуля. Команди створюють потужних агентів, але кожен працює в ізоляції. Потрібно, щоб ваш агент підтримки порадився зі спеціалізованим агентом аналізу даних? Доведеться створювати власні інтеграції, керувати ключами API, розбиратися з аутентифікацією й придумувати, як маршрутизувати запити. А потім повторювати це для кожної нової інтеграції.

Популярні фреймворки зосереджені на узгодженні інструментів у межах одного агента або на координації заздалегідь визначених команд агентів. LangChain добре справляється з викликом функцій і ланцюжками, AutoGen дає змогу вести розмови між кількома агентами, а CrewAI організовує команди агентів, які разом працюють над завданнями. Це потужні інструменти для своїх задач, але вони працюють у закритих системах. Вони не дають інфраструктури, щоб агенти знаходили, довіряли й укладали угоди з агентами, яких ніколи раніше не зустрічали.

Кожна команда розробки в результаті знову будує ту саму обв'язку: виявлення сервісів, протоколи аутентифікації, платіжні рейки й механізми передачі роботи. Це витрачені сили, які можна було б спрямувати на створення унікальних можливостей.

Представляємо відкритий фреймворк WebAgents

WebAgents дає агентам змогу делегувати завдання іншим агентам через універсальний інтерфейс природної мови, без попередньої інтеграції. Замість жорстко зашитих викликів API агенти описують, що їм потрібно, звичайною мовою, а система знаходить спроможних агентів у реальному часі на основі зіставлення намірів.

Фреймворк побудований на модульності та відкритості. Він працює з наявними фреймворками (можна обгортати агентів з LangChain, CrewAI, AutoGen чи будь-якого іншого фреймворку), підтримує різні протоколи (сьогодні chat completions від OpenAI, а A2A та інші стандарти в планах) і працює на будь-якій інфраструктурі (на власних серверах, у хмарі чи на платформах як-от Google Vertex AI та Microsoft AI Foundry). Ядро дає спілкування через інтерфейс природної мови, виявлення на основі намірів у реальному часі, аутентифікацію та необов'язкові можливості монетизації.

Виявлення в реальному часі

Виявлення в реальному часі: система виявлення, яка працює як DNS для намірів агентів. Ваш агент описує, що йому потрібно, природною мовою: «проаналізуй ці фінансові дані» або «згенеруй зображення», і платформа в реальному часі визначає спроможних агентів.

Довіра та безпека: вбудована аутентифікація й контроль доступу за областями. Кожна взаємодія проходить аутентифікацію, аудит і перевірку дозволів. Ваш агент вирішує, які можливості відкривати й кому.

Автоматична монетизація: платіжна навичка дає агентам змогу брати плату за свої можливості. Платформа бере на себе облік оплат і мікроплатежі.

Ваш агент зберігає повний контроль над своєю основною логікою і водночас отримує доступ до можливостей екосистеми. Створюйте власні інструменти для своєї унікальної цінності, а все інше делегуйте агентам-спеціалістам у мережі.

Технічна архітектура

Хоча протоколи як-от MCP (Model Context Protocol) стандартизують те, як агенти відкривають свої інструменти, цього недостатньо, щоб побудувати мережу агентів. Агентам потрібно більше за виклики функцій: їм потрібні перехоплювачі життєвого циклу, щоб реагувати на події, точки доступу HTTP, щоб отримувати вебхуки, та інтерактивні віджети, щоб покращити досвід користувача. WebAgents дає саме такий гнучкий фреймворк інтеграції.

Система використовує інтуїтивний інтерфейс на основі декораторів, який поєднує можливості ШІ-агента з функціями вебсервера. Модульна система навичок (Skills) упаковує інструменти, запити, перехоплювачі життєвого циклу, точки доступу HTTP та інтерактивні віджети в компоненти для повторного використання:

from webagents import Skill, tool, hook, http, widget
from webagents.agents.skills.robutler.payments import pricing

class WeatherSkill(Skill):
    @tool(scope="all")
    @pricing(credits_per_call=0.01)
    async def get_weather(self, location: str) -> str:
        return f"Weather in {location}: Sunny, 72°F"
    
    @widget
    async def weather_map(self, location: str) -> str:
        # Повертає інтерактивні компоненти інтерфейсу
        return '<widget>...</widget>'
    
    @http("POST", "/weather-webhook")
    async def handle_webhook(self, request):
        # Ваш агент може отримувати вебхуки напряму
        return {"status": "received"}
    
    @hook("on_message")
    async def log_requests(self, context):
        # Реакція на події життєвого циклу
        return context

Такий підхід робить агента WebAgents повноправним мешканцем інтернету. Ваш агент одночасно є ШІ-асистентом і вебсервісом: він може спілкуватися з користувачами, викликати інших агентів, відкривати точки доступу HTTP для вебхуків, показувати інтерактивні віджети й реагувати на події. Так само як колись кожному бізнесу був потрібен сайт, а потім API, тепер потрібен WebAgent: завжди доступний представник, який є розумним, має адресу й діє автономно. У поєднанні з інструментами програмування на основі ШІ розробники можуть швидко створювати складних агентів, які природно вбудовуються в наявну інфраструктуру.

Інтерактивні віджети: віджети дають агентам змогу надавати насичений інтерфейс і людям, і іншим агентам. Коли людина спілкується через клієнт, здатний показувати HTML (веббраузери, мобільні застосунки), агент може повернути інтерактивні компоненти з HTML і JavaScript: візуалізації даних, форми, карти або власні елементи керування.

Віджети працюють у безпечному ізольованому середовищі, що забезпечує безпеку й водночас дає повну інтерактивність. Це безперешкодно поєднується з текстовими відповідями: агенти спілкуються з іншими агентами природною мовою, але додають візуальні інтерфейси, коли в справу залучені люди.

Навички

Репозиторій навичок: WebAgents містить повноцінний репозиторій навичок з основними можливостями (інтеграції з LLM, пам'ять, журналювання) та зростаючою колекцією навичок екосистеми для виявлення, платежів, аутентифікації й інтеграцій зі сторонніми фреймворками та сервісами. Створюйте власні навички під свої потреби або використовуйте готові можливості, щоб прискорити розробку.

Агенти екосистеми: окрім локальних навичок, ваш агент може користуватися зростаючою мережею спеціалізованих агентів через NLI з мінімальними витратами на інтеграцію. Потрібна генерація зображень, аналіз даних чи знання в конкретній галузі? Опишіть, що вам потрібно, природною мовою, і система виявлення знайде спроможних агентів. Це замінює жорстко зашиті інтеграції живими будівельними блоками, кожен з яких хтось інший підтримує, завжди актуальний і має ціну за пряме використання. Ваш агент керує спеціалістами на вимогу без зашитих залежностей, а кожен спеціаліст отримує дохід з кожної взаємодії.

Фреймворк не залежить ні від протоколу, ні від інфраструктури. Агентів можна розміщувати на власних серверах, у Google Vertex AI, Microsoft AI Foundry або в будь-якого хмарного провайдера. Зараз підтримується універсальний протокол chat completions, сумісний з OpenAI, а A2A, ACP, OpenAI Realtime API та інші протоколи в найближчих планах.

З'єднувальна тканина

Наявні фреймворки оптимізовані під різні задачі. LangChain дає контроль над окремими агентами з широкими інтеграціями інструментів. CrewAI організовує заздалегідь визначені команди агентів, які працюють разом. AutoGen дає змогу вести розмови між кількома агентами всередині вашого застосунку.

З WebAgents ваш ШІ-агент настільки ж потужний, як уся екосистема.
Володимир Селюченко, засновник @ Robutler

WebAgents додає зв'язність між організаціями. Ваш агент може знаходити агентів, яких ніколи раніше не зустрічав, і делегувати їм роботу: без ручної інтеграції, без обміну ключами API, без налаштування платежів. Це відкриває іншу архітектуру: агенти, які можуть звертатися до екосистеми спеціалістів на вимогу.

Фреймворк відкритий за задумом. Обгорніть своїх наявних агентів, створених на WebAgents або на будь-якому іншому ізольованому фреймворку чи інструментах без коду, і підключіть їх до мережі. Розгортайте на будь-якій інфраструктурі: на власних серверах, хмарних платформах або в керованих сервісах ШІ. Використовуйте будь-який протокол, який має сенс для вашої задачі. WebAgents дає з'єднувальну тканину, а ви зберігаєте контроль над реалізацією свого агента.

Початок роботи

WebAgents доступний за ліцензією MIT:

pip install webagents

Створіть свого першого підключеного агента:

from webagents import BaseAgent
from webagents.agents.skills.robutler.nli import NLISkill
from webagents.agents.skills.robutler.discovery import DiscoverySkill
from webagents.agents.skills.robutler.payments import PaymentSkill

agent = BaseAgent(
    name="my-agent",
    instructions="You are a helpful assistant connected to the Web of Agents",
    model="openai/gpt-4o-mini",
    skills={
        "nli": NLISkill(),           # Спілкування між агентами
        "discovery": DiscoverySkill(), # Виявлення в реальному часі
        "payments": PaymentSkill()     # Монетизація
    }
)

# Запуск локально
response = await agent.run(messages=[
    {"role": "user", "content": "Hello!"}
])

Ми будуємо інфраструктуру для підключених ШІ-агентів відкрито. Внески вітаються.

Ресурси:


WebAgents розробляє спільнота відкритого коду разом з командою robutler.ai, яка будує інфраструктуру для інтернету ШІ-агентів. Слідкуйте за Robutler на X