Orkestra: оркестрация AI-агентов в масштабе
> Один оркестратор направляет работу специализированным AI-агентам, каждый со своими навыками и памятью. Как Orkestra координирует 46 агентов и 466 скиллов в продакшне.
Цифры в этом посте отражают состояние системы на момент публикации (январь 2026). Актуальные цифры смотрите на нашей странице команды.
Когда мы начали разрабатывать на Claude Code, мы столкнулись с проблемой, с которой рано или поздно сталкивается любая команда, использующая AI-помощников для кода: один агент не может делать всё одинаково хорошо.
Вы можете попросить агента быть специалистом по базам данных. Или аудитором безопасности. Или фронтенд-инженером. Но в тот момент, когда вы просите его быть всеми тремя сразу, качество страдает. Контекст размывается. Инструкции конфликтуют. Агент превращается в универсала, посредственного во всём.
Поэтому мы построили Orkestra.
Что такое Orkestra?
Orkestra — это система оркестрации агентов для Claude Code и похожих AI-инструментов для кода. Она координирует несколько специализированных агентов, каждый со своей экспертизой, под управлением единого оркестратора, который направляет работу нужному специалисту.
Представьте её как кадровое агентство для AI-агентов. Оркестратор получает задачу, определяет, какой специалист должен её обработать, и делегирует её с нужным контекстом. Когда работа сделана, результаты возвращаются к оркестратору для синтеза.
Цифры говорят сами за себя:
| Компонент | Количество |
|---|---|
| Специализированные агенты | 46 |
| Переиспользуемые скиллы | 466 |
| Архетипы личности | 27 |
| Склады мышления | 11 |
| Стили общения | 10 |
| Домены знаний | 21 |
Система персонажей: D&D для агентов
Ключевая идея, лежащая в основе Orkestra, в том, что поведение агента возникает из трёх компонуемых примитивов:
Identity (личность) определяет, чем является агент. Архитектор проектирует структуры систем. Отладчик прослеживает сбои до первопричин. Страж следит за соблюдением норм и границ безопасности. У нас 27 архетипов личности, которые можно комбинировать.
Mindset (склад мышления) определяет, как агент думает. Аналитический склад мышления опирает утверждения на доказательства и количественно оценивает неопределённость. Скептический склад мышления ставит под сомнение допущения и ищет опровергающие свидетельства. Исследовательский склад мышления принимает неоднозначность и пробует несколько подходов.
Style (стиль) определяет, как агент общается. Технический стиль включает точные значения и ссылается на конкретные файлы. Лаконичный стиль отсекает воду и начинает с ответа. Дипломатичный стиль балансирует честность и тактичность.
Агент комбинирует эти примитивы:
# architecture-advisor.yaml
identity:
- knowledge-architect
- architect
- strategist
mindset: analytical
style: concise
Эта комбинация создаёт агента, который проектирует системы (architect), связывает знания между доменами (knowledge-architect), задаёт стратегическое направление (strategist), мыслит доказательствами и данными (analytical) и общается без воды (concise).
Сила — в комбинаторном взрыве. 27 личностей, умноженных на 11 складов мышления и 10 стилей, дают почти 3000 возможных личностей агентов. Но вы определяете только те комбинации, которые важны для вашей работы.
Скиллы: переиспользуемые модули возможностей
Скиллы — это знания и рабочие процессы, которые агенты могут вызывать. Они следуют многоуровневой системе на основе области применимости:
| Уровень | Название | Область | Пример |
|---|---|---|---|
| K0 | Основы | Универсальная методология | Дисциплина test-first, завершение на основе доказательств |
| K1 | Личности | Рабочие процессы на основе роли | Стандарты CLI-интерфейса, плейбук производительности |
| K2 | Домены | Знания, специфичные для домена | Паттерны миграции БД, валидация аутентификации |
| K3 | Стеки | Специфичные для технологии | Деплой на Cloudflare, операции Supabase |
| K4 | Проект | Только эта кодовая база | Проектно-специфичные рабочие процессы и соглашения |
Скиллы загружаются лениво. Агент видит имена и описания скиллов при старте, но полное содержимое скилла загружается только при срабатывании. Это удерживает контекст компактным, делая при этом сотни скиллов доступными для обнаружения.
Каждый скилл включает:
- Чёткие условия срабатывания («Используйте при миграции схем БД»)
- Пошаговое руководство
- Разрешённые инструменты для рабочего процесса
- Критерии успеха и пути восстановления после сбоя
466 скиллов в нашем реестре покрывают всё — от изоляции git worktree до рабочих процессов веб-исследований и валидации здоровья деплоя.
Почему оркестрация важна
Одноагентные архитектуры быстро упираются в стены:
Разбавление контекста. Окно контекста в 200 тысяч токенов звучит объёмно, пока вы не загрузите схемы БД, документацию API, тестовые фикстуры и знания домена. Специалисты могут работать с целевым контекстом.
Конфликты инструкций. Просьба к агенту быть «тщательным, но быстрым» и «всё проверять, но не переусложнять» создаёт напряжение. Специалисты решают это за счёт чёткой области ответственности.
Глубина экспертизы. Агент-универсал знает понемногу обо всём. Специализированный агент, скомпонованный из нужной личности и скиллов, глубоко знает свой домен.
Orkestra реализует плоскую оркестрацию: один оркестратор координирует несколько специалистов. Специалисты не могут порождать субспециалистов. Это предотвращает взрыв сложности, сохраняя при этом возможность параллельной работы.
У оркестратора есть доступ к эффективной ёмкости в 2,2 миллиона токенов: его собственное окно в 200 тысяч плюс 10 параллельных субагентов по 200 тысяч каждый. Работа, которая исчерпала бы одного агента, комфортно выполняется всем флотом.
Конвейер рендеринга
Определения агентов живут в YAML. Claude Code читает Markdown. Orkestra перекрывает этот разрыв детерминированным конвейером рендеринга:
YAML Registries → Jinja Templates → .claude/agents/*.md
Операторы редактируют исходники YAML. Запускают orkestra sync. Отрендеренный Markdown появляется в .claude/agents/. Claude Code подхватывает изменения.
Это разделение служит разным аудиториям:
- Исходники YAML включают метаданные жизненного цикла, теги, правила валидации и заметки об устаревании для инструментария
- Отрендеренный Markdown включает только то, что нужно модели: описание, инструменты, скиллы и поведенческие указания
Конвейер компонует личности, склады мышления, стили и скиллы в единый связный промпт. Агент architect-analytical-concise получает совершенно другой системный промпт, чем агент debugger-skeptical-technical, даже если они используют часть одних и тех же базовых скиллов.
Доменные знания: паттерн из четырёх файлов
Каждый домен знаний следует единообразной структуре:
domain-name/
decisions.md # Key choices, rationale, consequences
patterns.md # Step-by-step guidance and examples
anti-patterns.md # Failure modes and remediation
evolution.md # Dated log of changes
Эта структура служит загрузке контекста агента. Агент, работающий над аутентификацией, загружает authentication/patterns.md для указаний и authentication/anti-patterns.md, чтобы избежать известных ловушек. Файлы подобраны по размеру для эффективной загрузки контекста: достаточно сфокусированы, чтобы быть полезными, и достаточно исчерпывающи, чтобы быть авторитетными.
Мы поддерживаем 21 домен верхнего уровня, включая аналитику, аутентификацию, дата-сайенс, инфраструктуру, машинное обучение, производительность, безопасность и другие. У каждого домена могут быть поддомены для более тонкой детализации.
Ценности: операционная система
Все агенты разделяют базовый слой ценностей, определяющий, как они работают:
Простота прежде всего. Используйте самое простое решение, которое работает. Добавляйте сложность только при обоснованной необходимости.
Исправляйте первопричины. Никогда не латайте сбои сверху. Если ломается пайплайн, отлаживайте пайплайн. Если падает тест, чините код или тест.
На основе доказательств. Помечайте утверждения как «проверено» (с бенчмарками) или «оценочно» (с допущениями). Обнаруженный паттерн не равен подтверждённой проблеме.
Экономика контекста. MCP-инструменты стоят 0,1% контекста. Чтение файла стоит 2% за каждое. Применяйте доменную экспертизу прежде, чем исследовать код.
Эти ценности распространяются на каждого специалиста через конвейер рендеринга. Агент не может обойти их через композицию.
CLI: панель управления
Orkestra поставляется с CLI для управления экосистемой агентов:
# Discovery
orkestra agents search "database"
orkestra agents info database-architect
# Validation
orkestra validate --show-warnings
# Rendering
orkestra sync --dry-run
orkestra sync
# Skills
orkestra skills list
orkestra skills info schema-migration-workflow
# Decisions
orkestra decisions search "authentication"
CLI — источник истины о том, какие агенты существуют, какими скиллами они обладают и здорова ли система. Он запускает валидацию перед синхронизацией, чтобы ловить проблемы на раннем этапе.
Соображения об открытом исходном коде
Мы построили Orkestra, чтобы решить собственную проблему: координацию AI-агентов в масштабе для сложной кодовой базы. Обнаруженные нами паттерны не специфичны для нашего домена.
Система композиции персонажей (identity + mindset + style) применима к любой команде, определяющей личности агентов.
Система уровней скиллов (K0–K4) даёт ментальную модель для организации переиспользуемых возможностей по области применимости.
Паттерн конвейера рендеринга (исходники YAML + шаблоны + сгенерированные артефакты) разделяет заботы между инструментарием и потреблением моделью.
Плоская модель оркестрации (один координатор, много специалистов) избегает сложности, сохраняя параллелизм.
Станет ли Orkestra открытым исходным кодом, зависит от того, представляют ли эти паттерны ценность для других команд, разрабатывающих на Claude Code. Если вы упираетесь в стены, которые мы описали, эта архитектура может помочь.
Чему мы научились
Создание Orkestra научило нас, что оркестрация — это не про то, чтобы сделать агентов умнее. Это про то, чтобы сделать их более сфокусированными.
Один агент с идеальными инструкциями всё равно исчерпает контекст. Один агент со всеми скиллами всё равно запутается, какой из них применить. Один агент, пытающийся быть всем сразу, выдаёт посредственные результаты везде.
Сорок специалистов, каждый превосходен в своём домене, координируемых оркестратором, который знает, когда делегировать: вот как мы отгружаем продукт.
Цифры важны меньше, чем архитектура. Вам может понадобиться пять агентов или пятьдесят. Принцип остаётся прежним: композиция важнее возможностей, специализация важнее универсальности, координация важнее индивидуального героизма.
Orkestra питает экосистему агентов за Maguyva, нашей платформой интеллектуального анализа кода. Хотите узнать больше? Свяжитесь с командой.
Похожие материалы
Ещё из журнала разработки Maguyva
Почему мы обновили поиск по коду до voyage-4-large_
Мы перевели эмбеддинги кода на voyage-4-large — модель, которая сейчас возглавляет публичный рейтинг RTEB по поиску кода. Честная версия: какой компромисс мы принимаем, что мы на самом деле индексируем и почему платим за премиальные эмбеддинги.
Рекурсивное самосовершенствование языков: шлифуем интеллектуальный анализ кода на ~280 языках_
Мы поддерживаем интеллектуальный анализ кода для ~280 языков. Ни один человек не может вручную проверить это. Поэтому мы построили цикл рекурсивного самосовершенствования языков — выборочная проверка, LLM в роли судьи, исправление одной вещи, повторная валидация — и прогоняем его флотом изолированных агентов, пока извлечение не станет по-настоящему верным, а не просто «зелёным».
Мультимодальный фьюжн-поиск: выбор правильного ретривера для каждого запроса_
Запрос вроде «где определён parseConfig» требует другого поиска, чем «как работает аутентификация». Maguyva классифицирует намерение, соответствующим образом взвешивает четыре модальности поиска и сливает результаты с помощью взвешенного Reciprocal Rank Fusion.