AI Platform Docs
Корпоративные документы

Архитектура ИС "Платформа ИИ"

ООО "ГК "Иннотех", домен Искусственный интеллект, 2026 г.

Глоссарий

ТерминОписание
AgentПрограммный исполнитель, который с помощью модели, правил и инструментов решает пользовательскую или системную задачу.
AgentVersionКонкретная неизменяемая версия Agent. В Agent Registry получает непрозрачный UUIDv7 и связана с неизменяемой версией SemVer.
Agent Registry (Реестр агентов)Централизованный каталог карточек агентов и MCP-серверов, автоматически обнаруживающий развернутых агентов в кластере Kubernetes
AES (Agent Execution Service)Сервис исполнения агентов; системный потребитель реестра для подбора агента под запрос пользователя
Low-code Runtime (Рантайм low-code)Универсальный контейнерный образ на базе lfx, исполняющий один опубликованный поток (flow) агента
Platform Agent GatewayПубличный шлюз маршрутизации вызовов агентов; проверяет тождество вызывающей стороны и права через SpiceDB
Agent PublisherЦелевой компонент проверки и публикации AgentVersion. В поставке 11.08 отсутствует; отдельная версионированная спецификация отсутствует.
PDPТочка принятия решения о политике доступа (Policy Decision Point). Недоступность PDP приводит к запрету доступа (fail-closed).
Рабочее пространствоДоверенная область каталога и прав. Для наблюдения Registry определяется точным соответствием (cluster_id, namespace) → workspace_id.
OIDCOpenID Connect; базовый стандарт аутентификации платформы.
OTelOpenTelemetry — средства метрик, трассировки и распространения контекста.
SLOИзмеримая цель качества сервиса.
RTO / RPOЦелевое время восстановления / допустимая потеря данных при восстановлении.
R1 / R2 / R3Горизонты поставки: обязательный первый выпуск / последующее развитие / отложенные возможности.
A2A (Agent-to-Agent)Протокол взаимодействия между агентами, версия 1.0.0, HTTP+JSON
MCP (Model Context Protocol)Протокол предоставления инструментов, версия 2025-11-25, Streamable HTTP
Agent CardПубличная карточка агента (.well-known/agent-card.json), описывающая его возможности, версию, владельца и endpoint
SpiceDBСистема ресурсной авторизации; хранит отношения между субъектами и агентами, выдаёт решения agent#invoke
Low-code Studio (IDE)Визуальная среда создания и проверки flow. Отделена от Runtime;
PlatformLLMПлатформенная нода (в low-code конструкторе) для вызова языковых моделей через AI Gateway
PlatformRAGПлатформенная нода (в low-code конструкторе) для гибридного поиска по знаниям через RAG Service (отложено до R2)
PlatformMemoryПлатформенная нода (в low-code конструкторе) для краткосрочной и долгосрочной памяти через Memory Service (отложено до R2)
PlatformToolПлатформенная нода (в low-code конструкторе) для вызова внешних информационных систем через Tools Hub (отложено до R2)
PlatformAgentПлатформенная нода (в low-code конструкторе) для вызова других агентов платформы по A2A (отложено до R2)
Platform Memory (Memory Service)Единый управляемый слой памяти платформы; принимает ход диалога, извлекает факты вне критического пути, отдаёт релевантные факты в пределах бюджета токенов; HTTP API порт 8091
Memory APIStateless HTTP-сервис (platform-memory-api); пути /v1/memories, /v1/memories/search, /v1/events, /health; порт 8091, ClusterIP
Worker (Memory)Процесс platform-memory-worker: извлечение фактов из очереди memory.add, вызов пайплайна mem0, индексация в OpenSearch и запись истории в PostgreSQL
Fact / запись памятиАтомарный факт о пользователе, агенте или задаче (поле memory); сохраняется в OpenSearch (текст + вектор) и PostgreSQL (события, история)
Скоуп (Scope)Граница изоляции памяти: user_id (из идентичности), agent_id, run_id; для add/list обязателен минимум один из agent_id/run_id; поиск требует фильтров со скоупом
Workspace (Memory)Рабочая область платформы (X-Workspace-Id); факты разных workspace не смешиваются
Event store (Memory)Таблица platform_memory.memory_event в PostgreSQL — источник истины по async add (статусы: PENDING → RUNNING → SUCCEEDED/FAILED)
Search (Memory)Синхронный гибридный поиск Memory: эмбеддинг запроса через AI Gateway + OpenSearch (семантика + BM25), упаковка в token_budget
AI GatewayЕдинственный разрешённый путь к LLM-извлечению и эмбеддингу для Memory; профили задаются конфигурацией (embedding.model, ai_gateway.llm_model)
OpenSearchИндекс фактов памяти: kNN + BM25; алиас вида mem-facts-<env>; размерность эмбеддинга по умолчанию 1024
RabbitMQБрокер уведомлений о заданиях add: exchange memory.add, очередь memory.add.jobs, DLX memory.add.dlx, DLQ memory.add.dlq; источник истины — PostgreSQL, а не RabbitMQ
Fail-closedПри недоступности RabbitMQ запись не считается принятой: событие помечается FAILED, клиент получает 503 queue_unavailable
lfx (Langflow Executor)Ядро исполнения потоков; stateless executor, загружающий flow из JSON
Flow (Поток)Визуально собираемый агент из платформенных нод; сохраняется как JSON-артефакт
Манифест публикацииНеизменяемое описание исходного flow, образа Runtime, режима исполнения, версии политики компонентов и заявленных возможностей.
Рабочая нагрузкаРазвёрнутый в Kubernetes экземпляр SDK- или Low-code-агента либо MCP-сервера.
Согласование состоянияПовторяемое приведение записей Registry, прав и поисковых проекций к наблюдаемому состоянию Kubernetes.
ПроекцияПроизводное представление исходных данных для конкретной задачи: API, поиска или маршрутизации. Проекция может быть пересоздана из источника истины.
Outbox (исходящий ящик)Механизм надёжной доставки событий каталога через транзакционный механизм в PostgreSQL и Redpanda
RedpandaРаспределённый журнал сообщений (durable change stream); обеспечивает гарантированную (at-least-once) доставку событий
OpenSearchПоисковая система; хранит гибридный индекс agent-catalog для семантического поиска
RAG (Retrieval-Augmented Generation)Метод генерации с предварительным извлечением контекста из хранилища знаний
RAG Service (Platform RAG)Платформенный сервис уровня COMMON: реестр коллекций, приём нормализованных документов, гибридный поиск с обязательной фильтрацией по правам доступа и выдача фрагментов с цитатами; HTTP API, порт 8090
КоллекцияУправляемый индекс знаний: профиль эмбеддинга, модель ACL, стратегия чанкинга, параметры поиска; создаётся через POST /v1/collections, owner определяется через SpiceDB
Канонический документНормализованный документ приёма: content/content_ref, acl, content_hash, idempotency_key; сохраняется в S3 staging на время задания
IngestАсинхронный конвейер приёма: регистрация задания -> чанкинг -> эмбеддинг через AI Gateway -> bulk-индексация в OpenSearch; источник истины — PostgreSQL
Job storeТаблица platform_rag.ingest_job в PostgreSQL — источник истины по заданиям ingest (статусы: PENDING -> RUNNING -> DONE/FAILED/DEDUPLICATED)
RetrievalСинхронный поиск: гибридный kNN+BM25, слияние RRF (Reciprocal Rank Fusion), обязательная фильтрация по tenant_id и ACL вызывающего, выдача фрагментов с цитатами (doc_id, chunk_id, оценка)
RAG APIStateless HTTP-сервис (platform-rag-api); поверхности: collections, ingest, query, /health; порт 8090, ClusterIP
WorkerПроцесс platform-rag-worker, обрабатывающий задания ingest из RabbitMQ; масштабируется независимо, в т.ч. через KEDA по числу PENDING в PostgreSQL; параллелизм app.worker_concurrency
ACLСписок групп и субъектов на документе; перепроверяется в момент retrieval, отзыв прав действует на следующем запросе без переиндексации
Fail-closedПри недоступности SpiceDB сервис отвечает 503 authz_unavailable и не выдаёт данные
RRFReciprocal Rank Fusion — слияние ранжированных списков vector и BM25 с весами, нормализацией min-max и арифметическим средним
KEDAАвтомасштабирование воркеров по SQL-запросу SELECT COUNT(*) FROM platform_rag.ingest_job WHERE status = 'PENDING' с целевым значением на реплику (по умолчанию 4)
GuardrailsСистема проверки входных и выходных данных на prompt injection и безопасность
FileRefПлатформенная ссылка на файл с проверкой владельца, TTL, цели и подписи
Trace IDСквозной идентификатор трассировки по стандарту W3C Trace Context / OpenTelemetry

Описание архитектуры

Функциональная архитектура

Бизнес-данные

В периметре платформы определяются следующие сущности данных:

№Наименование сущности данныхИсточник данныхИсточник — мастер-система?Кешируется?
1Карточка агента (Agent Card)Публичный endpoint A2A/MCP workload (.well-known/agent-card.json или tools/list)Нет — мастером является Kubernetes (существование workload)Нет — загружается при реконсиляции
2Запись реестра (RegistryResource / ResourceVersion)PostgreSQL —committed state реестраДа — мастер для API-запросов get / listНет
3Проекция поиска (SearchProjectionState)OpenSearch agent-catalogНет — производная от committed-состояния PostgreSQLНет
4Отношения авторизации (SpiceDB relationships)SpiceDBДа — мастер для решений agent#invokeНет — каждый защищённый запрос выполняет live check
5Флоу-артефакт (Flow source + manifest)Object StorageНет — immutable артефакт публикацииНет
6Коллекция знаний (Collection)PostgreSQL platform_rag.collectionsДа — мастер для API-запросов get/list/deleteНет — создаётся через API, owner в SpiceDB
7Задание ingest (IngestJob)PostgreSQL platform_rag.ingest_jobДа — источник истины по статусам ingestНет — цепочка статусов: PENDING → RUNNING → DONE/FAILED/DEDUPLICATED
8Канонический документ и чанки (CanonicalDoc + Chunk)S3 (staging) + OpenSearch rag-kb-{env}Нет — пересоздаваема из PostgreSQLНет — чанки хранятся в OpenSearch с tenant_id, acl, version
9Проекция поиска RAG (SearchProjectionStateRAG)OpenSearch rag-kb-{env}Нет — производная от PostgreSQL и S3Нет — пересоздаваема; вектор BGE-M3, 1024 dim, BM25
10Запись памяти (Fact / Memory record)OpenSearch mem-facts-{env} + PostgreSQL platform_memory.memory_recordДа — мастер для API list/searchНет — создаётся через async add, обновляется воркером
11Событие async add (MemoryEvent)PostgreSQL platform_memory.memory_eventДа — источник истины по статусам async addНет — цепочка статусов: PENDING → RUNNING → SUCCEEDED/FAILED
12История изменений записи памятиPostgreSQL platform_memory.memory_eventНет — производная от событийНет — журнал ADD/UPDATE/DELETE
13Вектор факта памятиOpenSearch mem-facts-{env} (kNN vector)Нет — производная от факта через AI GatewayНет — размерность 1024, BGE-M3

Категории данных

№КатегорияТип ПнДКоличество субъектов ПнДПостоянное хранение данных
1Внутренняя информация (Internal)——Да — карточки агентов, метаданные, версии, статусы
2Конфиденциальная информация (Confidential)——Да — отношения авторизации, данные владельцев, проекции поиска
3Ограниченные временные данные (Restricted-transient)——Нет — пользовательские запросы, оригинальные bearer-токены, учётные данные, приватные endpoint; не сохраняются в PostgreSQL / OpenSearch / Redpanda / audit / telemetry

Специальные и биометрические персональные данные в описанных сущностях отсутствуют.

Данные RAG Service (коллекции, задания ingest, канонические документы, чанки с ACL, проекты поиска) классифицируются по тем же категориям: метаданные коллекций и job store — Internal; ACL документов, отношения SpiceDB, проекты поиска — Confidential; пользовательские запросы и оригинальные bearer-токены — Restricted-transient (не сохраняются).

Данные Memory Service (факты памяти, события async add, история изменений, векторы фактов) классифицируются аналогично: факты, события и история — Internal (данные об агенте, сессии, задаче); скоупы user_id, agent_id, run_id и workspace_id — Confidential (идентификация субъектов); сообщения диалога (messages) и оригинальные bearer-токены — Restricted-transient (не сохраняются в долговременной памяти). Память не заменяет RAG: Platform RAG отвечает за корпус документов; Platform Memory — за знания о пользователе, агенте и сессии.

Функциональная диаграмма

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

functional-diagram.drawio.png

Описание функциональных областей:

  1. Low-code IDE (Langflow Studio) — визуальный редактор для предметных специалистов. Состоит из Backend и Frontend. OIDC-интеграция через Keycloak. Позволяет собирать агента из платформенных нод и экспортировать флоу как JSON. Включает frontend и backend.
  2. Low-code Runtime — универсальный контейнерный образ, исполняющий один опубликованный флоу. Публикует A2A/MCP surface за Platform Agent Gateway. Неотличим от SDK-агента для AES и Registry. В fixture-компонентах доступен как lowcode-linguist-v1 (версия 1.0.3).
  3. Agent Registry API — автоматически обнаруживает агентов в Kubernetes, загружает и валидирует карточки, предоставляет permission-aware каталог и семантический поиск с авторизационной фильтрацией. Включает компоненты: api (основной API сервер), kubernetesReconciler (reconciler Kubernetes-ресурсов), outboxRelay (relay для event-driven интеграций), searchIndexer (индексатор поиска). Jobs: searchReindex (переиндексация поиска), retention (политика хранения данных).
  4. AI Gateway — публичный шлюз для вызовов агентов. Проверяет OIDC-идентичность, выполняет live-проверку прав в SpiceDB, заменяет оригинальный bearer-токен на короткоживущий target-bound identity. Включает Gateway API CRDs (версия 1.5.0), Agentgateway CRDs (4 шт.) и Agentgateway Controller (Deployment в namespace agentgateway-system). Поддерживает Gateway Topology (Local Gateway в dev-local, ST Gateway во внешней среде).
  5. RAG Service (Platform RAG) — платформенный сервис уровня COMMON: реестр коллекций знаний, приём нормализованных документов (ingest), гибридный поиск с обязательной фильтрацией по tenant_id и ACL вызывающего, выдача фрагментов с цитатами. Состоит из Stateless API (platform-rag-api, порт 8090) и воркера ingest (platform-rag-worker). Зависимости: PostgreSQL, RabbitMQ, OpenSearch, S3/MinIO, AI Gateway, SpiceDB. В поставке 11.08 вызов из low-code запрещён (отложено до R2).
  6. Memory Service (Platform Memory) — единый управляемый слой памяти платформы. Принимает ход диалога, извлекает факты вне критического пути ответа пользователю и отдаёт релевантные факты в пределах бюджета токенов. Состоит из Stateless API (platform-memory-api, порт 8091) и воркера извлечения (platform-memory-worker). Зависимости: PostgreSQL (event store, история), RabbitMQ (очередь add), OpenSearch (индекс фактов), AI Gateway (эмбеддинг и LLM-извлечение). Публичный контракт совместим с mem0 (add/search/get_all/history/delete). В поставке 11.08 вызов из low-code запрещён (PlatformMemory отложена до R2).
  7. Инфраструктурные сервисы — Keycloak Identity Provider, PostgreSQL, SpiceDB, OpenSearch , Redpanda , OpenTelemetry Collector , Embeddings stand-in. Team Docs (предварительно подготовленная онлайн документация). Agentgateway Controller и Gateway API (CRD уровня k8s кластера).

Принятые ключевые архитектурные решения

№РазделОписание
1Agent Registry §1.2Кластер Kubernetes — единственный источник истины о существовании workload. Registry сходится к состоянию кластера (reconcile loop), а не наоборот. Расхождение всегда разрешается в пользу кластера.
2Agent Registry §1.2, AR-D-02Публичный ручной API для создания и удаления агентов запрещён. Publisher (или оператор в поставке 11.08) создаёт workload в Kubernetes, а Registry только наблюдает его через Service/EndpointSlice.
3Agent Registry §1.2, AR-D-12Публичный вызов агента проходит только через Platform Agent Gateway. Исходные Pod/Service адреса агентов наружу не публикуются.
4Agent Registry §1.2, AR-D-06GitOps не является обязательной стратегией деплоя текущих релизов. Registry не принимает команды публикации.
5Agent Registry §1.2, AR-D-14Redis отсутствует в R1. Каждый защищённый запрос выполняет live SpiceDB check; при недоступности PDP — fail-closed (503), без кеширования allow/deny.
6Agent Registry §1.2, AR-D-17SpiceDB выполняет все проверки в режиме fully_consistent. Workspace-видимость не означает invoke-право. Owner проверяется через trusted Owner Directory.
7Agent Registry §1.2, AR-D-16Гибридный поиск: BM25 (лексический) + k-NN (векторный, BGE-M3, 1024 измерения), веса 0.70/0.30, нормализация min-max + арифметическое среднее. Порог релевантности — не ниже 0.30.
8Agent Registry §4, AR-D-07События изменения каталога доставляются через транзакционный outbox в PostgreSQL и Redpanda (at-least-once). Search Indexer и ReindexJob используют отдельные consumer groups, оба обработчика идемпотентны.
9Low-code PRD §1.2Один образ рантайма на базе lfx для всех low-code агентов. Публикация создаёт новый Deployment с флоу-артефактом, а не собирает образ под каждого агента.
10Low-code PRD §1.2Low-code агент неотличим от SDK-агента: тот же A2A-интерфейс, agent-card, авторизация через SpiceDB, наблюдаемость по единому trace_id.
11Low-code PRD §3.2, NODE-4Из форка LangFlow удалены все внешние LLM-провайдеры, облачные vector-store и внешние memory-backend. Только платформенные ноды (PlatformLLM, PlatformRAG, PlatformMemory, PlatformTool, PlatformAgent).
12Low-code Runtime §ArchitectureObject Storage — нормативный источник флоу-артефактов в production.
13Low-code Runtime §ArchitectureRuntime не подключается к базе Studio и не обновляет конфигурацию flow.
14Low-code Runtime §Architecture, LC-RT-D-01Поставка 11.08 не включает Agent Publisher. Runtime разворачивается вручную typed Kubernetes-манифестами, флоу-артефакт выкладывается вручную в Object Storage.
15Low-code Runtime §Requirements, LC-RT-D-11PlatformRAG и PlatformMemory отложены до R2 — сервисы ещё не готовы как platform-контракты. Flow с такими нодами отклоняется с component_not_allowed.
16Agent Registry §ArchitecturePostgreSQL — записи реестра и источник для API; OpenSearch — пересоздаваемый индекс для поиска.
17RAG Service §1.2, RAG-D-01Platform RAG — сервис уровня COMMON; consumers обращаются только через SDK (platform-rag) или low-code компонент; построение собственного retrieval не допускается.
18RAG Service §1.3, RAG-D-02Разделение ответственности: интеграционные сервисы приводят данные к каноническому виду; Platform RAG выполняет чанкинг, эмбеддинг, индексацию, авторизацию и поиск. Прямая запись интеграций в OpenSearch/S3/RabbitMQ запрещена.
19RAG Service §1.3, RAG-D-03Идентичность пользователя (а не агента) определяет видимость чанков: один и тот же агент для разных пользователей возвращает разный набор результатов (RET-2).
20RAG Service §4.2, RAG-D-04SpiceDB — fail-closed: при недоступности сервис отвечает 503 authz_unavailable, не «прощая» запросы.
21RAG Service §1.4, RAG-D-05Автомасштабирование воркеров через KEDA по SQL-запросу SELECT COUNT(*) FROM platform_rag.ingest_job WHERE status = 'PENDING'; источник истины — PostgreSQL, а не глубина очереди RabbitMQ.
22RAG Service §3, RAG-D-06Эмбеддинг и реранк — только через AI Gateway; профили задаются конфигурацией (text-default-v1, rerank-default-v1), не хардкодом; смена профиля без переиндексации делает векторный поиск несовместимым.
23RAG Service §1.4, RAG-D-07Гибридный поиск RAG: BM25 (лексический) + k-NN (векторный, BGE-M3, 1024 измерения), слияние RRF (Reciprocal Rank Fusion).
24Memory Service §1.2, MEM-D-01Platform Memory — единый управляемый слой памяти платформы. Память не заменяет RAG: RAG отвечает за корпус документов, Memory — за знания о пользователе, агенте и сессии. Сборка промпта комбинирует оба источника.
25Memory Service §1.2, MEM-D-02Разделение ответственности: API (синхронное чтение и приём записи) и воркер извлечения (асинхронный write-path). Агент не проектирует хранилище и пайплайн извлечения.
26Memory Service §1.3, MEM-D-03Запись async: API создаёт событие PENDING в PostgreSQL, публикует в RabbitMQ, отвечает 202; воркер захватывает, вызывает mem0 пайплайн (LLM через AI Gateway при infer: true), пишет в OpenSearch и историю PostgreSQL, статус SUCCEEDED/FAILED.
27Memory Service §1.3, MEM-D-04Поиск синхронный: эмбеддинг запроса через AI Gateway, гибридный поиск в OpenSearch (семантика + BM25), упаковка в token_budget. Обязательны фильтры со скоупом.
28Memory Service §2.5, MEM-D-05Воркер в Kubernetes: текущий чарт создаёт Deployment API; воркер запускается отдельным Deployment с командой platform-memory-worker и тем же ConfigMap/Secret (уточняется при внедрении). Без воркера add остаётся в PENDING.
29Memory Service §4.1, MEM-D-06Идентичность передаётся заголовками X-Workspace-Id / X-User-Id; поля в теле запроса не доверяются. Целевой контракт (JWT + SpiceDB check) — R1 по PRD, в текущем API не включён.
30Memory Service §4.2, MEM-D-07Факты изолируются по комбинации workspace, user_id, agent_id, run_id. Удаление по фильтру не позволяет указать чужой user_id (403 Wrong user ID).
31Memory Service §3, MEM-D-08Все вызовы эмбеддинга и LLM-извлечения — только через AI Gateway. Ключи инференса хранятся у шлюза. infer: false позволяет записать факт без LLM (дешевле, предсказуемее).
32Memory Service §5.2, MEM-D-09Fail-closed: при недоступности RabbitMQ запись не принимается — событие помечается FAILED, клиент получает 503 queue_unavailable. Источник истины — PostgreSQL, а не RabbitMQ.
33Memory Service §8.1, MEM-D-10Масштабирование воркеров: параллелизм worker.concurrency (по умолчанию 4), prefetch rabbitmq.prefetch (16), DLQ после rabbitmq.delivery_limit (5). Горизонтальное масштабирование независимо от API.
34Memory Service §2.3, MEM-D-11Размерность эмбеддинга (embedding.dimension и opensearch.embedding_dimension) закрепляется за индексом. Смена модели/размерности без переиндексации делает векторный поиск несовместимым.

Информационная архитектура

Диаграмма информационных потоков

Диаграмма отражает потоки данных и событий между компонентами платформы. Потоки классифицированы по типам: HTTP/API, OIDC/JWT, Message Queue, Event Stream, File/Artifact, Observation.

information-flow-diagram.drawio.png

Таблица информационных потоков

№ОткудаКудаТип потокаПротоколОписание
F1Пользователь (Low-code IDE)Gateway api-platformHTTPHTTPSВход в Low-code IDE, аутентификация через SSO
F2Пользователь (Каталог)Gateway api-platformHTTPHTTPSЗапросы к каталогу агентов: GET /agent-registry, POST /search
F3Потребитель агентаGateway api-platformHTTPHTTPSВызов агента: POST /a2a/... (A2A/JSON, SSE streaming)
F4Gateway api-platformKeycloakHTTPHTTPSOIDC-эндпоинты: /.well-known/openid-configuration, /token, /realms/...
F5ПользователиKeycloakOIDCHTTPSАутентификация: Authorization Code Flow (PKCE), Resource Owner Password Credentials
F6KeycloakПользователиJWTJSONAccess Token / ID Token / Refresh Token (Bearer)
F7Gateway api-platformAgent Registry APIHTTPHTTP(S)REST API: /api/v1/agents, /api/v1/agents/search, /health
F8Agent Registry APIPostgreSQLSQL CRUDasyncpgCRUD метаданных агентов, версий, workspace-контекста; транзакционная блокировка
F9Agent Registry APISpiceDBAuthZgRPC / HTTPРекурсивная проверка прав (ReBAC): agent#view, agent#invoke, agent#manage
F10Agent Registry APIOpenSearchHTTPHTTP(S)Поиск агентов: семантическое + лексическое совпадение, фильтрация по правам
F11Agent Registry APIRedpandaEvent StreamKafka protocolEvent-driven интеграции: Outbox-паттерн, события создания/обновления/удаления агентов
F12Kubernetes ReconcilerK8s APIWatchKubernetes APIНаблюдение за Service, EndpointSlice, HTTPRoute; периодический full resync (>300 с)
F13Outbox RelayRedpandaEvent RelayKafka protocolПубликация зафиксированных событий из PostgreSQL в Redpanda; retry + DLQ
F14Search IndexerOpenSearchHTTPHTTP(S)Индексация документов агентов; создание нового поколения индекса; переключение псевдонима
F15Search IndexerSpiceDBHTTPHTTP(S)Обновление разрешений в SpiceDB по событиям; cleanup при потере EndpointSlice
F16Автор Low-code агентаLow-code IDEHTTPHTTPSВизуальное редактирование Потока (Flow): создание, сохранение, проверка схемы
F17Low-code IDEKeycloakSSO / OIDCHTTPSЕдиный вход: login → callback → token refresh → logout; Web Origin валидация
F18Low-code IDELow-code RuntimeFile / ArtifactHTTPS / StorageПередача артефактов: source.json (Поток (Flow), SHA-256), manifest.json (platform.low-code.publish-manifest/v1)
F19Low-code RuntimeKubernetesK8s ResourceKubernetes APIПубликация Service с регистрационными метками (registrable: true, protocol: a2a, workspace, agent-name, version)
F20Kubernetes APIAgent Registry APIAuto-discoveryKubernetes APIReconciler обнаруживает Service, проверяет метки, ждёт EndpointSlice, загружает agent-card.json
F21Low-code RuntimeGatewayHTTPHTTPSA2A 1.0 вызовы: POST /message, POST /message:stream (SSE); MCP интерфейсы
F22Low-code RuntimeAI GatewayHTTPHTTPSВызов LLM и эмбеддинга: /v1/chat/completions, /v1/embeddings (через Scibox / AI Gateway)
F23Low-code RuntimeSpiceDBAuthZgRPC / HTTPПроверка прав до Guardrails и FileRef; fail-closed при недоступности
F24Gateway api-platformLangflow FrontendHTTPHTTPSМаршрутизация к визуальному редактору: GET /ide/*
F25Langflow BackendKeycloakOIDCHTTPSClient langflow-studio, scope openid profile email, admin role admin
F26Langflow BackendAI GatewayHTTPHTTPSLLM вызовы через LiteLLM: https://litellm.ai-dev.inno.tech/v1
F27Low-code IDERAG APISDKHTTP(S)RagClient.query(), RagClient.retrieve_and_pack() — поиск по коллекциям, упаковка контекста
F28Low-code RuntimeRAG APISDKHTTP(S)RagClient.query(), RagClient.retrieve_and_pack() — агент извлекает контекст перед ответом
F29RAG APIPostgreSQLSQL CRUDasyncpgРеестр коллекций, job store (ingest_job), история операций; схема platform_rag
F30RAG APIRabbitMQAMQPAMQP 0-9-1Уведомления о заданиях ingest: exchange rag.ingest, queue rag.ingest.jobs, DLX/DLQ
F31RAG APIOpenSearchHTTPHTTP(S)Гибридный поиск: kNN (vector) + BM25 (text), слияние RRF, фильтрация по tenant_id + ACL
F32RAG APIAI GatewayHTTPHTTPSЭмбеддинг запросов и реранк: bge-m3, text-default-v1, rerank-default-v1
F33RAG APISpiceDBAuthZgRPCПрава на коллекцию: collection.owner, collection.reader, collection.writer; fail-closed
F34RAG WorkerRabbitMQAMQPAMQP 0-9-1Claim заданий: PENDING → RUNNING; prefetch=16, delivery_limit=5
F35RAG WorkerOpenSearchHTTPHTTP(S)Bulk-индексация чанков: embedding (kNN), text (BM25), tenant_id, acl, version
F36RAG WorkerAI GatewayHTTPHTTPSЭмбеддинг документов: bge-m3, dimension=1024, normalize=true
F37RAG WorkerS3 / MinIOHTTPHTTPSStaging канонического JSON: payload_uri, content_hash, idempotency_key
F38Low-code IDEMemory APISDKHTTP(S)MemoryClient.add(), MemoryClient.search(), MemoryClient.get_all(), MemoryClient.delete()
F39Low-code RuntimeMemory APISDKHTTP(S)MemoryClient.add(), MemoryClient.search() — агент запоминает и извлекает факты
F40Memory APIPostgreSQLSQL CRUDasyncpgEvent store (memory_event), история изменений записей; схема platform_memory
F41Memory APIRabbitMQAMQPAMQP 0-9-1Уведомления о заданиях add: exchange memory.add, queue memory.add.jobs, DLX/DLQ
F42Memory APIOpenSearchHTTPHTTP(S)Гибридный поиск фактов: kNN (vector) + BM25 (text), фильтрация по скоупу (user_id, agent_id, run_id)
F43Memory APIAI GatewayHTTPHTTPSЭмбеддинг запросов: bge-m3, dimension=1024
F44Memory WorkerRabbitMQAMQPAMQP 0-9-1Claim заданий: PENDING → RUNNING; concurrency=4 (worker.concurrency)
F45Memory WorkerOpenSearchHTTPHTTP(S)Индексация фактов: текст + вектор; алиас mem-facts-<env>
F46Memory WorkerAI GatewayHTTPHTTPSLLM-извлечение фактов: infer: true через AI Gateway; дедупликация по mem0
F47Agent Registry APIFixturesAuto-discoveryKubernetes APIОбнаружение Smoke Agent (sdk-smoke-v1) и Low-code Fixture (lowcode-linguist-v1) через Service метки

Классификация потоков

ТипПротоколыПримерыХарактер
HTTP / RESTHTTPS, HTTP(S)F1, F2, F3, F7, F10, F21, F24, F31, F42Синхронный запрос-ответ
OIDC / JWTHTTPS, Bearer TokenF5, F6, F17, F25Аутентификация и авторизация
SQL / CRUDasyncpgF8, F29, F40Транзакционная работа с БД
AMQP / QueueAMQP 0-9-1F30, F34, F41, F44Асинхронная обработка заданий
Event StreamKafka protocolF11, F13Event-driven интеграции
AuthZ / ACLgRPC, HTTPF9, F15, F23, F33Рекурсивная проверка прав
Vector SearchHTTP (kNN+BM25)F10, F31, F42Гибридный поиск с RRF
Artifact TransferHTTPS, StorageF18Передача source.json + manifest.json
K8s WatchKubernetes APIF12, F19, F20Наблюдение и discovery
LLM / EmbeddingHTTPS (OpenAI-compatible)F22, F26, F32, F36, F43, F46Вызов моделей через AI Gateway

Техническая архитектура

Сетевое взаимодействие

№ИнициаторСегмент инициатораПолучательСегмент получателяПорт и протоколМежсетевой экранОписание
1Пользователь / AES / Control PlaneНет данныхRegistry API через GatewayНет данныхHTTPS/TLS, TCP-порт — нет данныхGET/LIST/SEARCH, OIDC/delegation, ограничение размера и частоты
2Пользователь / AESНет данныхPlatform Agent GatewayНет данныхHTTPS/TLS, A2A HTTP+JSON или MCP Streamable HTTP; TCP-порт — нет данныхЕдинственная целевая публичная граница вызова
3Platform Agent GatewayНет данныхАдаптер авторизации вызоваНет данныхПротокол extAuth и TCP-порт — нет данныхПередаёт проверенную идентичность и привязанный к маршруту AgentVersion
4Адаптер авторизации / Registry APIНет данныхSpiceDBНет данныхAuthzed API; транспорт и TCP-порт — нет данныхАктуальные проверки view, invoke, diagnose, manage
5Platform Agent GatewayНет данныхA2A/MCP RuntimeНет данныхA2A HTTP+JSON или MCP Streamable HTTP поверх принятого mTLS-профиля; TCP-порт — нет данныхПередаётся краткоживущая идентичность, привязанная к цели
6Registry API / Reconciler / Relay / IndexerНет данныхPostgreSQLНет данныхПротокол PostgreSQL; TCP-порт — нет данныхКаноническое состояние каталога, аудит, outbox и задания
7Registry API / Indexer / ReindexНет данныхOpenSearchНет данныхПротокол и TCP-порт — нет данныхПоиск и запись пересоздаваемой проекции
8ReconcilerНет данныхKubernetes APIНет данныхNative Kubernetes API TLS; TCP-порт — нет данныхget/list/watch Service и EndpointSlice, отдельное чтение HTTPRoute
9ReconcilerНет данныхРабочая нагрузка A2A/MCPНет данныхHTTP для Agent Card; MCP Streamable HTTP; TCP-порт выбирается из проверенного ServiceПолучение только ограниченного описания протокола
10Outbox RelayНет данныхRedpandaНет данныхKafka-совместимый протокол, mTLS либо SCRAM+TLS; TCP-порт — нет данныхПубликация CloudEvents, acks=all в промышленном профиле
11Search Indexer / ReindexНет данныхRedpandaНет данныхKafka-совместимый протокол; TCP-порт — нет данныхЧтение изменений независимыми группами/позициями
12Registry API / Search Indexer / ReindexНет данныхAI GatewayНет данныхПротокол и TCP-порт — нет данныхЭмбеддинги запроса и описаний агента
13Low-code RuntimeНет данныхObject StorageНет данныхS3-совместимый либо OCI-профиль; транспорт и TCP-порт — нет данныхЗагрузка неизменяемого flow и манифеста
14Low-code RuntimeНет данныхVaultНет данныхПротокол и TCP-порт — нет данныхПолучение секретов без записи во flow
15Low-code RuntimeНет данныхAI Gateway / GuardrailsНет данныхHTTP/типизированный клиент; TCP-порт — нет данныхВызов модели и обязательные проверки
16Low-code RuntimeНет данныхRAG Service / Memory ServiceНет данныхНет данныхСвязь целевая и отложена; в поставке 11.08 отсутствует
17Компоненты платформыНет данныхOTel-коллекторНет данныхOTLP; транспорт и TCP-порт — нет данныхЭкспорт метрик и трасс без чувствительных данных
18Low-code RuntimeНет данныхRAG APIНет данныхHTTP/HTTPS, порт 8090; TCP-порт — нет данныхВызов RAG API: POST /v1/documents:submit, POST /v1/query, POST /v1/collections (отложено до R2; в 11.08 запрещено)
19Worker / Search IndexerНет данныхAI GatewayНет данныхПротокол и TCP-порт — нет данныхЭмбеддинг документов (worker) и описаний агентов (Search Indexer) через AI Gateway; профили задаются конфигурацией
20WorkerНет данныхRabbitMQНет данныхAMQP; TCP-порт — нет данныхПодписка на exchange rag.ingest, очередь rag.ingest.jobs, DLX/DLQ для повторной доставки
21WorkerНет данныхOpenSearchНет данныхПротокол и TCP-порт — нет данныхBulk-индексация чанков в индекс rag-kb-{env}; mapping: knn_vector (BGE-M3, 1024 dim) + BM25
22Worker / APIНет данныхS3 / MinIOНет данныхS3-совместимый протокол; TCP-порт — нет данныхStaging канонического JSON (payload_uri) на время ingest-задания; в локальном Compose допускается s3.dry_run: true
23API / WorkerНет данныхPostgreSQLНет данныхПротокол PostgreSQL; TCP-порт — нет данныхРеестр коллекций, job store platform_rag.ingest_job (источник истины), миграции схемы
24APIНет данныхSpiceDBНет данныхgRPC; TCP-порт — нет данныхПроверка прав на коллекцию: read/write/owner; fail-closed при недоступности (503)
25APIНет данныхOpenSearchНет данныхПротокол и TCP-порт — нет данныхГибридный поиск (kNN + BM25) со слиянием RRF, фильтрация по tenant_id и ACL
26Memory API / ConsumerНет данныхMemory APIНет данныхHTTP/HTTPS, порт 8091; TCP-порт — нет данныхВызов Memory API: POST /v1/memories, POST /v1/memories/search, GET /v1/memories, DELETE /v1/memories, GET /v1/events/{id}, /health (заголовки X-Workspace-Id, X-User-Id)
27Memory APIНет данныхPostgreSQLНет данныхПротокол PostgreSQL; TCP-порт — нет данныхEvent store platform_memory.memory_event, история записей, schema platform_memory
28Memory APIНет данныхRabbitMQНет данныхAMQP; TCP-порт — нет данныхПубликация уведомлений: exchange memory.add, очередь memory.add.jobs, DLX memory.add.dlx, DLQ memory.add.dlq
29Memory APIНет данныхAI GatewayНет данныхПротокол и TCP-порт — нет данныхЭмбеддинг запросов (search) и LLM-извлечение (infer: true)
30Memory WorkerНет данныхRabbitMQНет данныхAMQP; TCP-порт — нет данныхПодписка на memory.add.jobs, claim события; DLQ memory.add.dlq после delivery_limit неудач
31Memory WorkerНет данныхAI GatewayНет данныхПротокол и TCP-порт — нет данныхLLM-извлечение фактов (при infer: true) и эмбеддинг
32Memory Worker / APIНет данныхOpenSearchНет данныхПротокол и TCP-порт — нет данныхГибридный поиск (kNN + BM25) и индексация фактов в алиас mem-facts-{env}; размерность 1024
33Memory WorkerНет данныхPostgreSQLНет данныхПротокол PostgreSQL; TCP-порт — нет данныхОбновление статуса события (RUNNING → SUCCEEDED/FAILED), запись истории ADD/UPDATE/DELETE

Инфраструктурные сервисы

№СервисНазначениеПодтверждённый профиль
1KubernetesРазвёртывание Runtime, наблюдение Service/EndpointSlice, маршруты HTTPRoute и выбор ведущего Registry ReconcilerПромышленная базовая версия v1.36.2; поддерживаемый диапазон Registry >=1.27; один кластер, до 100 пространств имён
2PostgreSQLКанонический каталог Registry, наблюдения, аудит, outbox, фазы и задания18.4.0; промышленный внешний управляемый PostgreSQL >=18; резервные копии/PITR 35 дней
3OpenSearchГибридный поиск и пересоздаваемая векторная проекция3.7.0; BGE-M3, 1024 измерения, HNSW/cosine
4RAG Service (Platform RAG)Реестр коллекций, приём документов (ingest), гибридный поиск с ACL-фильтрацией, статус заданий; HTTP API порт 8090, внешние зависимости: PostgreSQL, RabbitMQ, OpenSearch, S3/MinIO, AI Gateway, SpiceDBplatform-rag-api (port 8090) + platform-rag-worker; Helm chart helm/platform-rag; PostgreSQL platform_rag схема; OpenSearch алиас rag-kb-{env}; AI Gateway для эмбеддинга/реранка; SpiceDB для прав на коллекции и ACL документов; S3 для staging канонических документов
5Memory Service (Platform Memory)Единый управляемый слой памяти платформы; async add через RabbitMQ, гибридный поиск памяти в OpenSearch, event store и история в PostgreSQL; HTTP API порт 8091, внешние зависимости: PostgreSQL, RabbitMQ, OpenSearch, AI Gatewayplatform-memory-api (port 8091) + platform-memory-worker; Helm chart helm/platform-memory; PostgreSQL platform_memory схема; OpenSearch алиас mem-facts-{env}; RabbitMQ exchange memory.add, queue memory.add.jobs; AI Gateway для эмбеддинга и LLM-извлечения; публичный контракт совместим с mem0
6SpiceDBРешения авторизации и отношенияv1.54.0, fully_consistent для защищённых проверок
6Redpanda CommunityНадёжный поток изменений каталогаBroker v26.1.13, chart 26.1.9; 3 раздела, replication factor 3, min.insync.replicas=2, хранение 14 дней
7AI GatewayЭмбеддинги Registry и вызовы PlatformLLMДля поиска принят псевдоним agent-platform.agent-registry.embedding.bge-m3-v1
8Object StorageНеизменяемые flow и манифесты по хешуШифрование при хранении, запрет перезаписи, S3- и дополнительный OCI-профиль
9VaultСекреты Runtime и привязка идентичности рабочей нагрузкиСекреты не включаются во flow/журналы
10OTel-коллектор / платформа наблюдаемостиМетрики и распределённая трассировкаW3C Trace Context, OpenTelemetry/OTLP

Аппаратная часть

Серверы и параметры

№Ядра CPUОЗУ (Гб)Дисковая подсистемаОСПООписание

Примечание: все компоненты решения развертываются в kubernetes кластере. Отдельные сервсеры и ВМ не требуются.

Платформа контейнеризации

№КонтурПлатформаЯдра CPUОЗУ (Гб)
1devKubernetes 1.36.x (shared ai-dev)2–44–8
2UATKubernetes 1.36.xв зависимости от ожидаемой нагрузкив зависимости от ожидаемой нагрузки
3PreProdKubernetes 1.36.xв зависимости от ожидаемой нагрузкив зависимости от ожидаемой нагрузки
4ProdKubernetes 1.36.xв зависимости от ожидаемой нагрузкив зависимости от ожидаемой нагрузки

Системное и прикладное программное обеспечение

№ПОВерсияКомментарий
1Python~=3.14.0Язык исполнения low-code Runtime
2lfx (Langflow Executor)1.11.1Ядро исполнения потоков; pinned by digest
3OpenTelemetry / OTLPlatest pinnedТрассировка и наблюдаемость
4OIDC Core1.0 + errataАутентификация
5agentgateway1.3.1Платформенный шлюз агентов
6Gateway API1.5.0Kubernetes Gateway API
7BGE-M3—Модель эмбеддингов (1024 dim)

Лицензирование ПО

нет данных

Мониторинг

Наблюдаемость платформы реализована через OpenTelemetry SDK без sidecar.

КомпонентПокрытие трассировкиПримечание
Registry APIAPI-запросы, get/list/searchServer/application spans
Kubernetes ReconcilerReconciliation loopLifecycle phases
Platform Agent GatewayOIDC validation, extAuth→SpiceDB, routingTransport/application spans
Invocation authz adapterLive SpiceDB agent#invokeDownstream spans
Outbox RelayClaim/retry/publishApplication spans
Search IndexerEmbedding, OpenSearch upsertApplication spans
Low-code Agent PodTransport → use case → lfx graph → platform nodesServer/application/downstream spans

Промпт, вывод, извлечённый текст, память, JWT, содержимое файлов и presigned URL по умолчанию не записываются в telemetry.

Средства журналирования

№ОбъектСобытиеФормат протоколаСредство храненияДоступ к журналуГлубина хранения
1Agent RegistryРегистрация, дерегистрация, деградация, удаление, синхронизация правAuditRecord (actor, action, resource, decision, trace_id, timestamp)Append-only в PostgreSQLЧерез agent#diagnose (требуется permission)По AR-D-18 retention policy
2Platform Agent GatewayАутентификация, авторизация, маршрутизацияOTel spans + structured logOpenSearch / centralized loggingЧерез Trace IDПо AR-D-18 retention policy
3Low-code Agent PodСтарт, readiness, invocation, ошибка нодыOTel spans + structured logOpenSearch / centralized loggingЧерез Trace IDПо AR-D-18 retention policy
4Kubernetes ReconcilerDiscovery, validation, phase transitionRegistry audit + metricsPostgreSQL audit + Prometheus metricsЧерез Registry APIПо AR-D-18 retention policy

Решения по информационной безопасности

Перечень объектов защиты системы

№ОбъектОписание
1Карточки агентов и метаданныеВнутренняя информация: имя, версия, capabilities, endpoint, владелец
2Отношения авторизации (SpiceDB)Конфиденциальная информация: связи principal/service/team ↔ agent
3Флоу-артефактыВнутренняя информация: JSON-поток агента, структура нод
4Пользовательские запросыОграниченные временные данные: не сохраняются
5Bearer-токены (original user)Ограниченные временные данные: не передаются upstream, не сохраняются
6Секреты и учётные данныеОграниченные временные данные: только через Vault/workload identity
7Приватные endpoint workloadОграниченные временные данные: не публикуются, не сохраняются
8Аудит-записиКонфиденциальная информация: actor, action, resource, decision
9Связь кластер–пространство имёнКонфиденциальная информация: deployment configuration

Перечень и политика хранения журналов аудита

События

№СобытиеРешениеКод события в логе
1Регистрация агентаagent-registry.createdУспешная валидация Card, commit в PostgreSQL, создание отношений в SpiceDB
2Отказ регистрацииagent-registry.rejectedНевалидная Card, identity mismatch, unsupported version
3Деградация агентаagent-registry.degradedПотеря usable endpoint, stale projection
4Удаление агентаagent-registry.removedУдаление Service, scope revoked
5Синхронизация правagent-registry.permissions_synced / permissions_sync_failedResult SpiceDB relationship write
6Прямой вызов через Gatewaygateway.invocationAllow / deny / unavailable (typed 401/403/503)
7Проверка авторизации поискаsearch.authz_checkBulkCheckPermission result per candidate

Структура лога

№ПоляView logПравила
1actor/callerЧерез Registry API / Trace IDSafe IDs; JWT и credentials запрещены
2actionЧерез Registry API / Trace IDcreate, reject, degrade, remove, sync, invoke
3resourceЧерез Registry API / Trace IDОpaque UUID, resource kind
4decisionЧерез Registry API / Trace IDallow, deny, unavailable
5trace_idЧерез OTel / Trace IDW3C Trace Context
6timestampЧерез Registry APIUTC, ISO 8601
7safe metadataЧерез Registry APIEnvironment, time; unbounded external текст запрещён

Ролевая модель и права доступа пользователей

Пользовательская ролевая структура

Модель основана на отношениях SpiceDB, а не на единственном поле роли в JWT. Субъектами могут быть principal, service и team#member. Роли рабочего пространства и конкретного агента назначаются независимо. Право видеть каталог не даёт права вызывать агента, а владение агентом не даёт права вызова или полного управления. Все приведённые разрешения относятся к принятой схеме Agent Registry; отдельная ролевая модель Low-code IDE/Publisher/Runtime не определена.

Роли

№РольОписание доступных действий и полномочий
1Участник рабочего пространства (workspace#member)Просмотр каталога своего рабочего пространства; не получает invoke, manage или view_drift автоматически
2Администратор рабочего пространства (workspace#admin)Просмотр и управление каталогом, диагностика агентов и просмотр отчёта о расхождениях; вызов агента требует отдельного назначения invoker
3Аудитор рабочего пространства (workspace#auditor)Просмотр R2-отчёта о текущих расхождениях; доступ к каталогу возникает только при отдельном отношении member/admin
4Владелец агента (agent#owner)Просмотр и диагностика конкретного агента; не получает manage или invoke автоматически. Идентификатор команды проверяется через Platform Owner Directory
5Наблюдатель агента (agent#viewer)Просмотр конкретного агента
6Пользователь агента (agent#invoker)Вызов конкретного агента; это единственный источник разрешения agent#invoke
7Администратор агента (agent#administrator)Просмотр, диагностика и управление конкретным агентом; вызов требует отдельного отношения invoker
8Участник команды (team#member)Наследует только те отношения рабочего пространства или агента, в которых команда явно указана субъектом

Соответствие продуктовых персон — Low-code разработчик, платформенный администратор, DevOps и сотрудник службы ИБ — перечисленным отношениям не определено.

Описание модели служебных ролей

№РольОписаниеПрава
1Служебный субъект SpiceDB (service)Сервис или агент как субъект авторизацииМожет быть участником команды/рабочего пространства и получить viewer/invoker/administrator только через явное отношение
2ServiceAccount Kubernetes ReconcilerНаблюдение Registry в одном кластереget/list/watch для Service и EndpointSlice только через RoleBinding в целевых пространствах имён; без Secret, Pod, logs, exec и write
3Роль координатора ReconcilerВыбор ведущей репликиget/create/update/patch только для именованного Lease в платформенном пространстве имён
4Search IndexerПоддержание поисковой проекцииЧтение своей группы потребителей и PostgreSQL, вызов AI Gateway, запись в OpenSearch;
5Search ReindexПостроение нового поколения индексаЧтение снимка PostgreSQL и собственных позиций Redpanda, вызов AI Gateway, запись и переключение псевдонима OpenSearch;
6Agent Publisher / оператор RuntimeСоздание Kubernetes-ресурсов и размещение артефактаТочные служебные учётные записи и права не определены;

Библиотека API

№Метод / интерфейсНаименованиеОписание
1GET /api/v1/agents/{agentId}Получение агентаR1 Registry API; требует view, а поле интерфейса вызова дополнительно требует invoke
2GET /api/v1/agentsСписок агентовR1 Registry API; фильтры workspace, protocol, implementationType, status, owner; серверная фильтрация view, без числа скрытых объектов
3POST /api/v1/agents/searchГибридный поискR1 Registry API; фильтрация кандидатов по invoke; пустой результат — 200 и matches=[]
4GET /health/liveПроверка процесса Registry/RuntimeПроверка работоспособности процесса (liveness); не проверяет ресурсоёмкие зависимости
5GET /health/readyПроверка готовности Registry/RuntimeRegistry проверяет конфигурацию и критические зависимости; Runtime — артефакт, политику, точку входа, Agent Card и клиентов
6GET /api/v1/driftОтчёт о расхожденияхR2, принят только смысл; конечная точка отсутствует в R1 OpenAPI и Runtime
7GET /.well-known/agent-card.jsonAgent Card RuntimeПроверенное описание A2A-интерфейса и фактических возможностей
8POST /message:sendСинхронный A2A-вызовПоддерживается Low-code Runtime; вызывает выбранный граф lfx и возвращает итоговое Message
9POST /message:streamПотоковый A2A-вызовSSE при streaming=true: Task, упорядоченные статусы/артефакты и закрытие после итогового статуса
10A2A task get/listСнимки задачТолько память процесса одной реплики; после перезапуска задача может отсутствовать
11A2A SubscribeToTaskПодписка на текущую задачуСначала текущее Task, затем обновления; для завершённой задачи — UnsupportedOperationError
12MCP initialize + notifications/initializedУстановление MCP-сессииВерсия 2025-11-25
13MCP tools/listПолучение инструментовRuntime возвращает один неизменяемый flow tool; Registry импортирует ограниченный неизменяемый снимок
14MCP tools/callВызов инструментаПоддерживается Runtime; Registry никогда не вызывает его при обнаружении

На этой странице