17 категорий — от фронтенда и UI до памяти, тестирования и мониторинга. В каждой категории — основной инструмент с объяснением, зачем он нужен, и проверенные альтернативы с указанием, когда их выбирать.
Если вы хотите собрать ИИ-агента, первый вопрос обычно не «какую архитектуру выбрать», а «с чего вообще начать и что мне нужно».
Агент — это не просто чат-бот. Это система, которая может сама принимать решения, вызывать инструменты, работать с браузером, читать документы, писать и запускать код, общаться голосом и помнить контекст между сессиями.
Проблема в другом: таких инструментов сотни. Одни активно поддерживаются, другие заброшены после хайпа на запуске. Одни реально используются в продакшне, другие существуют только в демо.
Мы прошли через этот слой шума и собрали подборку. Логика простая: если вы собираете агента, вам нужно решить, как он будет получать данные, как рассуждать, какие инструменты вызывать, где выполнять код, что помнить между запусками и как понять, что что-то пошло не так.
Каждый раздел отвечает на один из этих вопросов — и даёт конкретный инструмент в руки.
Большинство агентных стеков дают бэкенд и оставляют пользовательский слой полностью на вас. Здесь — инструменты, которые закрывают этот пробел.
Чат-компоненты, хуки, headless UI для кастомных интерфейсов, персистентные треды, human-in-the-loop, общее состояние и встроенный Inspector для отладки. Поддерживает все три паттерна генеративного UI в одном рантайме — агент может показывать компоненты, а не просто описывать их.
Можно подключиться к любому LLM в несколько строк без какого-либо агентного фреймворка на бэкенде и сделать его контекстно-осведомлённым о вашем приложении. Также есть MCP-сервер для кодинг-агентов, который позволяет им подтягивать живую документацию без ограничений по использованию.
import { CopilotRuntime, copilotRuntimeNextJSAppRouterEndpoint, } from "@copilotkit/runtime"; import { BuiltInAgent } from "@copilotkit/runtime/v2"; import { NextRequest } from "next/server"; const builtInAgent = new BuiltInAgent({ model: "openai:gpt-5.5", }); const runtime = new CopilotRuntime({ agents: { default: builtInAgent }, }); export const POST = async (req: NextRequest) => { const { handleRequest } = copilotRuntimeNextJSAppRouterEndpoint({ runtime, endpoint: "/api/copilotkit", }); return handleRequest(req); };
Поддерживает мультимодальные вложения: изображения, PDF, аудио, видео. Фреймворк-агностичный дизайн построен на протоколе AG-UI — открытом протоколе взаимодействия агента с пользователем, который уже приняли Google, AWS, Microsoft, LangChain и другие. Смена фреймворка или протокола не затрагивает фронтенд.
Anthropic выпустили формат Skills, и экосистема быстро набрала обороты. Скилл — это директория с файлом SKILL.md, содержащая инструкции, скрипты и ресурсы, которые дают агенту дополнительные возможности.
23 production-grade инженерных скилла с 7 слэш-командами, которые покрывают весь цикл разработки: /spec, /plan, /build, /test, /review, /ship. Жёсткие критерии выхода, таблицы анти-рационализации, прогрессивное раскрытие. Кодирует инженерную культуру Google — закон Хайрума, правило Бейонсе, trunk-based разработка.
npx skills add <owner/repo>. Лидерборд показывает, что разработчики реально используют, а не то, что нашумело на запуске.Большинство агентов computer use делают скриншот и просят обобщённую VLM угадать пиксельные координаты. Это работает плохо.
Обучен на GUI-граундинге end-to-end — понимает элементы интерфейса как концепцию первого класса, а не как области изображения, на которые нужно кликать.
Отличительная черта — «System-2 reflection»: после каждого действия модель сравнивает скриншоты до и после и генерирует корректирующий план, если что-то пошло не так, вместо того чтобы продолжать сломанную последовательность. Набирает более высокий балл на OSWorld по сравнению с Claude Computer Use.
В комплекте поставляется Agent TARS — CLI и Web UI, который переносит тот же подход с vision + интеграцией MCP-инструментов в терминал и браузер. Можно сказать: «Помоги мне забронировать ранний рейс из Сан-Хосе в Нью-Йорк 1 сентября» — и агент сделает это.
Sutando — персональный AI-агент для macOS, работающий на подписке Claude Code с минимальными дополнительными расходами. «Присоединись к моему звонку в 14:00» — агент читает календарь, подключается к Zoom или Google Meet, делает скриншоты для идентификации участников, проводит live-исследование при вопросах и пишет саммари. Или: позвонить со смартфона, сказать «summon» — и управлять компьютером голосом. ~300 звёзд на GitHub.
docker-compose up.Как описать цикл рассуждения, сохранять состояние и продолжать с любой точки сбоя.
Stateful граф-рантайм, построенный на LangChain. Самый зрелый фреймворк для построения, управления и деплоя долгоживущих stateful-агентов.
Цикл — это граф. Каждый шаг — узел. Состояние типизировано и чекпоинтируется. Можно поставить на паузу в любом узле, сериализовать всё состояние на диск и возобновить на другой машине через несколько дней.
create_agent. Просто, быстро старт, меньше контроля над состоянием. Если процесс умирает — агент начинает заново.Комбинирование с LangSmith Engine, LangChain и Deep Agents даёт разработчикам полный набор инструментов для построения агентов с возможностью отладки.
Харнес — это всё вокруг модели, что делает её агентом: инструменты, состояние, планирование, память, петли обратной связи, ограждения.
Агент = Модель + Харнес
LangChain подтвердил это: изменения только на уровне харнеса подняли одну и ту же модель с 52,8% до 66,5% на Terminal Bench 2.0 — с места в топ-30 до топ-5. Без смены модели.
Харнес LangChain с батарейками в комплекте, построенный на LangGraph. Планирование, инструменты для файловой системы, саб-агенты и сжатие контекста из коробки.
Ключевая проблема долгоживущих агентов — накопление результатов вызовов инструментов до заполнения контекстного окна, что вызывает отравление контекста и потерю фокуса.
• Большие выходные данные инструментов уходят в виртуальную файловую систему, а не в промпт.
• Скиллы загружают только фронтматтер при старте, полный контент — по требованию.
• История разговора сжимается по мере роста сессии.
• Саб-агенты работают в собственном контекстном окне, основной агент получает только финальный результат.
Claude Code и Codex — отличные инструменты, но привязаны к своим экосистемам.
Нативный терминальный агент с поддержкой 75+ провайдеров, интеграцией LSP, мультисессионностью (несколько агентов параллельно на одном проекте) и приоритетом приватности.
Главное отличие: по-настоящему провайдер-агностичный с первого дня. Можно переключаться между Claude, Gemini, GPT-5 и локальными моделями в одной сессии без перенастройки. Большинство других кодинг-агентов имеют предпочтительную модель в дефолтах.
Также можно поделиться ссылкой на любую сессию для справки или отладки. Доступен как терминальный интерфейс, десктопное приложение и IDE-расширение.
Указываете URL, описываете, что нужно сделать — агент кликает, печатает и навигирует. Вы пишете намерение, а не селекторы.
Агент читает DOM и сам разбирается с взаимодействием. Причина лидерства: команда создала специализированные LLM именно для браузерных задач. Их модель bu-ultra набирает 97% на Mind2Web против 62% у claude-opus-4-6. Open-source библиотека работает с любой моделью, но бенчмарки гоняются на кастомных.
В комплекте — десктопное приложение, которое управляет локальным Chrome напрямую, и Browser Use Box: 24/7 Claude Code агент, который можно задеплоить на любой VPS за $5 и управлять через Telegram.
# pip install browser-use-sdk from browser_use_sdk.v3 import AsyncBrowserUse client = AsyncBrowserUse() result = await client.run( "Go to amazon.com, extract 200 products with name, price" " and reviews, save to products.csv" )
Большинство скраперов отдают сырой HTML с навигационными меню, рекламой и баннерами куки — всё это сжигает токены и путает модель.
Конвертирует любой сайт в чистый Markdown или структурированный JSON, готовый для подачи в LLM. Три базовых эндпоинта:
import Firecrawl from '@mendable/firecrawl-js'; import { z } from 'zod'; const firecrawl = new Firecrawl({ apiKey: 'fc-YOUR-API-KEY' }); const schema = z.object({ companies: z.array(z.object({ name: z.string(), founders: z.array(z.string()), funding: z.string().optional(), website: z.string(), })) }); const result = await firecrawl.agent({ prompt: 'Get all YC W24 companies', schema, });
Навигационный агент FIRE-1 (бета) автономно работает со сложными сайтами: кликает, скроллит, заполняет формы и обрабатывает многошаговые флоу перед извлечением. Страницы за логином или пагинацией больше не проблема.
hub на ingest в любом GitHub URL и получите prompt-friendly выгрузку кодовой базы. Фильтрация по размеру файла, включение/исключение путей, поддержка приватных репозиториев.r.jina.ai/ перед любым URL и получите чистый Markdown. Ноль настроек, ноль SDK. Выбирать для быстрой разовой конвертации страниц.Когда задачу разделяют между несколькими специализированными агентами, как между членами команды.
Самый широко используемый мультиагентный фреймворк на сегодня. Определяете команду агентов с конкретными ролями, целями и инструментами — CrewAI управляет тем, как они взаимодействуют для выполнения задачи.
Ролевая модель (PM, исследователь, инженер) интуитивно понятна: она отображает то, как вы бы реально разделили работу между людьми. Лучшая точка входа в мультиагентные системы: хорошая документация, большое сообщество, примеры почти на всё.
Компромисс по контролю: взаимодействие агент-агент происходит через выходные данные задач, а не через прямые сообщения. Нет встроенного чекпоинтинга для долгоживущих рабочих процессов. CrewAI Flows — событийно-ориентированный режим — частично решает это для предсказуемых пайплайнов. Для циклических рабочих процессов большинство команд в итоге переносят части в LangGraph.
Подать PDF агенту и наблюдать, как он пропускает данные, которые прямо в таблице — знакомая ситуация. Большинство парсеров теряют структуру.
Движок конвертации документов от IBM Research, переданный под управление Linux Foundation. Использует Granite-Docling-258M — специализированную vision-language модель на 258M параметров, созданную именно для конвертации документов и превосходящую системы в несколько раз крупнее.
Вывод использует DocTags — универсальный формат разметки, который фиксирует каждый элемент страницы, его тип, позицию и порядок чтения. Не просто Markdown. Именно это делает последующий RAG точнее.
from docling.document_converter import DocumentConverter source = "https://arxiv.org/pdf/2408.09869" # путь или URL converter = DocumentConverter() doc = converter.convert(source).document print(doc.export_to_markdown())
AI-часть в основном решена. Сложная часть — всё вокруг: обработка прерываний, транспорт, бюджеты задержки на границах STT / LLM / TTS.
Python-фреймворк от Daily для реалтайм-голосовых и мультимодальных AI-агентов. STT, LLM и TTS — компонуемые фрейм-процессоры, как Unix-пайпы, но для голоса.
Ключевое преимущество: можно менять любой STT, LLM или TTS без переписывания пайплайна. Silero VAD обрабатывает прерывания на уровне фреймворка — голосовая активность в середине ответа останавливает аудио и автоматически переподключает LLM. Pipecat Flows добавляет предопределённые пути разговора с динамическими переходами.
import { PipecatAppBase, ConnectButton, UserAudioControl, } from "@pipecat-ai/voice-ui-kit"; <PipecatAppBase transportType="smallwebrtc" connectParams={{ webrtcUrl: "/api/offer" }} > <div> <ConnectButton /> <UserAudioControl /> </div> </PipecatAppBase>
Drag-and-drop без потери возможности расширения кодом.
Drag-and-drop конструктор агентных пайплайнов с поддержкой IBM. Подключается к любому LLM, любой векторной БД, любому инструменту.
Ключевая особенность: флоу становится вызываемым REST-эндпоинтом. Прототипируете визуально — инженеры вызывают результат как API из любой кодовой базы. Каждый компонент открывает свой Python-класс, так что можно расширять кастомной логикой, не покидая инструмент. Есть большая библиотека готовых шаблонов для старта.
MCP-серверы решили вопрос подключения агентов к инструментам. Но управление OAuth, обновлением токенов и поддержкой 1000+ интеграций по-прежнему остаётся вашей проблемой.
Слой интеграции между агентом и реальными инструментами с управляемой авторизацией. Главная особенность — Tool Router: один MCP-эндпоинт, который динамически обнаруживает и загружает нужные инструменты в зависимости от того, что пытается сделать агент. Вместо предзагрузки всех инструментов и раздувания контекста — подгружает только релевантное.
Обычные Docker-контейнеры разделяют ядро хоста — одна уязвимость, и ненадёжный код вырывается наружу.
Изолированные сандбоксы для безопасного выполнения агентом кода, обработки данных и запуска инструментов. Работает на Firecracker microVM: каждый сандбокс получает собственное выделенное ядро. Загрузка ~150 мс, полная Linux-файловая система, Python, Node и стандартные пакеты предустановлены.
import { Sandbox } from 'e2b' // Нужна переменная окружения E2B_API_KEY const sandbox = await Sandbox.create() const result = await sandbox.commands.run('echo "Hello from E2B"') console.log(result.stdout)
Ничто не касается хост-машины. Manus использует E2B для запуска 27 различных инструментов. Perplexity — для анализа данных. Hugging Face — для воспроизведения DeepSeek-R1.
Место, где большинство демо-агентов разваливаются в продакшне. Агент знает что-то в одной сессии и забывает в следующей.
Самый широко задеплоенный автономный слой памяти на сегодня. Вместо хранения сырых чанков разговора запускает фазу извлечения: находит значимые факты и дистиллирует их в компактные воспоминания на естественном языке. Обрабатывает краткосрочную, долгосрочную и сущностную память через один интерфейс.
# Добавить воспоминание messages = [ {"role": "user", "content": "Я вегетарианец и у меня аллергия на орехи."}, {"role": "assistant", "content": "Понял! Запомню ваши пищевые предпочтения."}, ] client.add(messages, user_id="user123") # Найти воспоминания results = client.search( "Какие у меня пищевые ограничения?", user_id="user123", )
mem0 набирает 49% на LongMemEval против 63,8% у Zep — разница в темпоральном рассуждении. Для памяти персонализации — прагматичный выбор. Для агентов, которым нужно рассуждать о том, как факты менялись со временем, лучший вариант — Graphiti.
Большинство команд пропускают оценку полностью до первого сбоя в продакшне. К тому моменту отладка идёт вслепую — непонятно, проблема в промпте, ретривале, модели или во всех трёх.
Встраивает оценку в тестовый набор. Пишете ассерции так же, как пишете юнит-тесты, запускаете в CI и ловите регрессии до деплоя. 50+ метрик, покрывающих RAG, агентов, вызов инструментов, многоходовые разговоры и безопасность.
Агентно-специфичные метрики — самые полезные: завершение задачи, корректность аргументов, корректность инструментов, эффективность шагов. Также генерирует синтетические датасеты для граничных случаев, которые сложно собрать вручную.
Большинство команд узнают, что агент сломан, когда об этом сообщает пользователь. К тому моменту приходится отлаживать чёрный ящик.
De-facto open-source стек наблюдаемости для LLM. Трейсы, оценки, версионирование промптов и трекинг затрат в одном self-hosted пакете. Трейс показывает точно, что делал агент, с какой задержкой и стоимостью. Отладка многошаговых агентов становится значительно проще.
Три протокола управляют современным агентным стеком. Стоит понимать разницу.
| Протокол | Для чего | Кто создал | Кто принял |
|---|---|---|---|
| MCP | Агент ↔ Инструменты | Anthropic, теперь Linux Foundation | OpenAI, Google, Microsoft |
| A2A | Агент ↔ Агент | — | |
| AG-UI | Агент ↔ Пользователь | CopilotKit | Google, AWS, Microsoft, LangChain, Mastra |
github.com/modelcontextprotocol/serversgithub.com/a2aproject/A2Agithub.com/ag-ui-protocol/ag-uiЧтобы собрать рабочего агента, не нужны все инструменты из этого гайда — нужны 5–7. Выберите по одному из ключевых слоёв и соберите первый сквозной прототип.