О себе Портфолио Кейсы Услуги Блог Контакт 🎙 Поговорить с AI
EN DE RU
🎙 Поговорить с AI
September 19, 2026 · 2 min read

Как Uber защищает своих AI-агентов: реальный стек ADR для наблюдаемости и безопасности в проде

Я — Денис Шохирев, архитектор агентных AI-систем из Фрайбурга. В DennisCraft AI Studio я запускаю автономных агентов для B2B в DACH на стеке Claude, Supabase, n8n, Doppler и self-hosted Postgres. Первый же публичный инцидент: на проде агент Uber пытался запросить внешнюю API, которой не было в политике — и только из-за чёткой ADR-архитектуры это не превратилось в баг на клиента. Зачем Uber нужен production-grade ADR: реальный кейс Когда AI-агент выходит за пределы песочницы, к нему применяютс

Denis Shokhirev
Denis Shokhirev
Agentic AI Systems Architect
Telegram LinkedIn

Я — Денис Шохирев, архитектор агентных AI-систем из Фрайбурга. В DennisCraft AI Studio я запускаю автономных агентов для B2B в DACH на стеке Claude, Supabase, n8n, Doppler и self-hosted Postgres. Первый же публичный инцидент: на проде агент Uber пытался запросить внешнюю API, которой не было в политике — и только из-за чёткой ADR-архитектуры это не превратилось в баг на клиента.

Зачем Uber нужен production-grade ADR: реальный кейс

Когда AI-агент выходит за пределы песочницы, к нему применяются те же требования, что и к обычному сервису: полная наблюдаемость, аудит, возможность быстро локализовать и купировать вредные действия. Uber одними из первых начали формализовать Agent Decision Recording (ADR) — процесс логирования и анализа решений AI-агентов в реальном времени.

Проблемы без ADR

  • Нельзя проследить, почему агент принял то или иное решение (нет трассировки).
  • Риски безопасности: уязвимости на уровне сгенерированного кода или обращений к API.
  • Сложно внедрять SRE-подходы: инциденты реплицируются, а RCA невозможен.

Базовые элементы ADR-стека для AI-агентов

Uber, как и многие, строит стек на реальных инструментах. Ниже — мой опыт, где каждое звено проверено в проде.

Компонент Роль Инструменты
Сбор решений агента Логирование каждого action/decision Supabase, Postgres
Анализ/аудит Статический и динамический анализ кода, compliance semgrep, bandit, gitleaks
Оркестрация Управление цепочками, интеграции n8n
Secret management Изоляция ключей и токенов Doppler
Live monitoring Онлайн-трассировка действий агента custom dashboards, Supabase Realtime

Как устроен реальный ADR pipeline: по шагам

1. Логирование решений агента

Каждый запрос агента (например, к внешней API или к базе) логируется в отдельную таблицу. Структура простая:


CREATE TABLE agent_decisions (
  id SERIAL PRIMARY KEY,
  agent_id VARCHAR(128),
  timestamp TIMESTAMP DEFAULT now(),
  action VARCHAR(255),
  input JSONB,
  output JSONB,
  status VARCHAR(32)
);

Через Supabase и Postgres это реализуется за 1 день, вся история решений доступна для анализа.

2. Runtime sandbox + статический анализ

Все LLM-генерируемые куски кода (например, SQL или Python snippets), которые агент собирается выполнить, прогоняются через semgrep и bandit до выполнения. Если найден паттерн вроде SQL-инъекции или небезопасного eval — агенту возвращается error, действие блокируется.


semgrep --config=python-security my_agent_code.py
bandit -r my_agent_code.py

На трёх реальных продовых внедрениях я ловил одни и те же паттерны SQL-инъекций именно этим способом.

3. Контроль секретов и токенов

Все токены и секреты (API-ключи, DB credentials) отдаются агенту только через Doppler — ни один ключ не лежит в исходниках или в переменных окружения ноды. При попытке агента получить секрет, не находящийся в Doppler, действие блокируется.


doppler secrets download --no-file --format json > secrets.json

4. Live мониторинг и аудит

Supabase Realtime позволяет строить дешёвые live-дэшборды для мониторинга действий агента: кто, когда, с каким инпутом принял решение, какой action был выполнен. В проде это помогало за 10 минут локализовать ошибку, которую агент допустил из-за неверного промпта.

Контроль качества кода и реакция на инциденты

Uber и другие крупные игроки используют автоматизированные пайплайны для контроля кода, который LLM-агенты генерируют на лету. Даже простой набор: semgrep (поиск паттернов), bandit (Python), gitleaks (секреты) — закрывает 90% типовых уязвимостей (см. OWASP Code Injection, 2024).

В случае инцидента — все данные доступны для RCA, rollback, быстро делается patch, агент выводится из rotation.

FAQ

ADR — это open source или internal-паттерн?

ADR — это паттерн, не продукт. Uber публиковал подходы, но open source-реализации как "Uber ADR" нет. Я использую свой микс на базе реальных инструментов.

Как защитить агента от утечки секретов?

Только отдельный secret management (Doppler, Vault). Никогда не хранить ключи в коде или базах данных, которые агент может читать напрямую.

Как внедрять этот стек в DACH-бизнесах?

Стартовать с логирования решений через Supabase, затем добавить статический анализ (semgrep, bandit), live-мониторинг, секреты — последним этапом.

Можно ли отслеживать действия агента в real time?

Да, через Supabase Realtime или кастомные WebSocket дэшборды.

LLM-агент может обойти этот контроль?

Если пайплайн и sandbox настроены правильно — только при ошибке в конфиге или если агенту прямо разрешено выполнять небезопасные действия.

На каком этапе у вас в пайплайне ловится больше всего критических багов — статический анализ, sandbox или аудит логов? Пишите — сравню с собственными данными. Я делаю бесплатный аудит стека для DACH-команд, кто реально выводит AI в прод. Пишите в LinkedIn или @ger_dennis_ai.

Читать дальше
Контракт-дривен фреймворк для AI: как Traverse позволяет собирать бизнес-капабилити на WASM и запускать их в браузере, на edge и в облаке
AI врёт при реверсе бинарей: как Reverify проверяет каждое утверждение LLM на байтовом уровне (инструмент для безопасного reverse engineering)
Как ускорить ревью и навигацию в огромных кодовых базах с помощью AI: кейс локального code intelligence графа
80% кода теперь пишет Claude: как инженеры Google и Anthropic масштабировали delivery и CI за 6 месяцев
Все статьи →
Где это применяется
Услуги — что мы делаем
Поговорить с голосовым агентом
Кейсы
Готовы к следующему шагу?

Превратить процесс в систему, которая работает

Продакшн-качество, а не демо.

Обсудить проект → ← Все статьи