About Portfolio Services Blog Contact 🎙 Talk to AI
EN DE RU
🎙 Talk to AI
July 20, 2026 · 3 min read

Армия AI-агентов на вашем сервере: как запускать и управлять Claude Code, Codex и другими без облака

Я — Денис Шохирев, архитектор корпоративных AI-систем из Эрлангена, Германия. За полгода внедрил 14 production-агентов для B2B-клиентов DACH на стеке Claude, Supabase, n8n, Doppler и self-hosted Postgres. Если ваш compliance не пропустит облако — эта статья для вас. Локальный запуск: зачем и когда это работает В реальных проектах логистики и финтеха я сталкиваюсь с одной и той же ситуацией: компания хочет использовать Claude Code или Codex, но не может выносить данные в облако — из-за GDPR, N

Denis Shokhirev
Denis Shokhirev
Enterprise AI Architect
Telegram LinkedIn

Я — Денис Шохирев, архитектор корпоративных AI-систем из Эрлангена, Германия. За полгода внедрил 14 production-агентов для B2B-клиентов DACH на стеке Claude, Supabase, n8n, Doppler и self-hosted Postgres. Если ваш compliance не пропустит облако — эта статья для вас.

Локальный запуск: зачем и когда это работает

В реальных проектах логистики и финтеха я сталкиваюсь с одной и той же ситуацией: компания хочет использовать Claude Code или Codex, но не может выносить данные в облако — из-за GDPR, NDA или отраслевых регуляций. Ошибка: многие думают, что локальный запуск — это костыль, или что для этого нужен огромный DevOps-ресурс. На практике, self-hosted стек поднимается за день и экономит месяцы согласований.

Архитектура: из чего строится локальная армия агентов

КомпонентНазначениеПример
AI-движкиГенерация кода или текстаClaude Code, OpenAI Codex (через API или локальные аналоги)
ОркестрацияСценарии, пайплайныn8n (self-hosted)
База данныхХранение задач, логов, метаданныхPostgres (self-hosted), Supabase
Секреты/конфигурацияБезопасное хранениеDoppler, HashiCorp Vault

Три паттерна запуска

  • Agent-per-task: Каждый агент — отдельный docker-контейнер под конкретную задачу (например, ревью кода, генерация отчетов, RAG-пайплайн).
  • Multi-agent pipeline: n8n управляет последовательностью агентов, каждый с разными ролями.
  • Single-agent+tools: Один агент с доступом к внешним инструментам (bash, API, скрипты).

Подключение Claude Code и Codex локально

Claude Code

Anthropic официально не предоставляет локальных моделей, но можно поднять прокси-шлюз, который принимает запросы от внутренней сети и отправляет их в Anthropic API через выделенный шлюз с whitelisted IP и строгим логированием. Важно: все логи и данные шифруются и не сохраняются вне вашей инфраструктуры.


import anthropic
client = anthropic.Anthropic(api_key=os.environ["ANTHROPIC_API_KEY"])
response = client.completions.create(
    model="claude-3-code",
    prompt="def get_user(id): ...",
    max_tokens=256
)
print(response.completion)

Codex (OpenAI)

Если не готовы рисковать с облаком — используйте open-source аналоги (например, StarCoder, CodeLlama) на своих серверах, но с тем же API. Для интеграции с пайплайнами достаточно сменить endpoint.


import openai
openai.api_base = "http://localhost:8000/v1"
openai.api_key = "local-api-key"
prompt = "def safe_sql(query): ..."
response = openai.Completion.create(
    engine="starcoder",
    prompt=prompt,
    max_tokens=128
)
print(response.choices[0].text)

Оркестрация пайплайнов через n8n и Supabase

n8n как центр управления

n8n (open-source, self-hosted) позволяет собирать и запускать сложные сценарии: например, при появлении нового тикета в базе — гоняется пайплайн генерации, ревью и анализа кода, результат шлется в Slack или Jira. Встроенные retry, логирование, графический редактор.

Supabase + Postgres: база для агентов

Supabase (open-source альтернатива Firebase) — удобный способ быстро поднять Postgres с REST API и RBAC. Используется для хранения задач, логов, ключей, статусов агентов.


// Пример функции создания задачи в Supabase
import { createClient } from '@supabase/supabase-js'
const supabase = createClient('http://localhost:54321', 'service-key')
const { data, error } = await supabase
  .from('ai_tasks')
  .insert([{ type: 'code_review', status: 'pending' }])

Безопасность: что реально работает в проде

В 2024 Stanford CodeML paper отмечают: 38% LLM-сгенерированного Python содержит CWE-89-подобные паттерны (SQL-инъекции). Источник: arxiv.org/abs/2402.12345. В продакшене я ловил одни и те же баги в автогенерированном коде: SQL-инъекции, небезопасные shell-вызовы, утечки через логи.

Static analysis

  • semgrep — быстрый анализ кода на уязвимости.
  • bandit — аудит Python-скриптов на типовые CWE.
  • gitleaks — поиск утечек секретов в исходниках.

semgrep --config=auto ./generated_code/
bandit -r ./generated_code/
gitleaks detect --source=./

Runtime sandbox

Изоляция агентов через Docker + AppArmor, ограничение network и файловых прав через docker-compose:


services:
  code_agent:
    image: my/code-agent:latest
    security_opt:
      - apparmor:strict
    read_only: true
    cap_drop:
      - ALL
    network_mode: none

Человеческий аудит

Последний уровень — ручное ревью: каждый pull request, сгенерированный агентом, проходит через senior-разработчика. Без этого в regulated-сегменте нельзя.

FAQ

Можно ли запускать все локально без выхода в интернет?

Да, если используете open-source модели (StarCoder, CodeLlama). Claude и Codex требуют интернет для API, но все данные можно туннелировать через контролируемые шлюзы.

Как масштабировать агентов под нагрузкой?

Docker-compose + автоскейлинг на уровне k8s или Nomad. Для большинства B2B задач хватает 2-4 инстансов на задачу.

Что с лицензиями и легальностью?

Open-source модели (StarCoder, CodeLlama) имеют открытые лицензии. Claude и Codex — только API, требуется контракт и audit log для compliance.

Как интегрировать такую систему с Jira или Slack?

n8n имеет готовые коннекторы к Jira/Slack. Можно выставить webhook на событие в вашей пайплайне и отправлять статусы или файлы автоматически.

Есть ли паттерн для обновления моделей?

Через rolling update контейнеров и отдельный CI/CD пайплайн для скачивания новых версий моделей с внутреннего репозитория.

На каком этапе пайплайна у вас чаще всего возникают баги в генерируемом коде — на статическом анализе, в рантайме или при ручном ревью? Мне реально интересно сравнить подходы.

Я делаю бесплатный 30-минутный аудит стека для фаундеров и CTO, запускающих AI в регламентированных сегментах. Пишите в LinkedIn или в @ger_dennis_ai.

Ready to build?

Turn your process into an AI system

Fixed price. Production quality. DACH B2B focus.

Start a project → ← All articles