Перейти к содержимому

Введение в Moira

Moira — это Agent Workflow Engine, разработанный специально для AI-агентов. Он направляет агентов через многошаговые процессы, используя структурированные воркфлоу с четкими директивами и критериями успеха.

Проблема

AI-агенты мощные, но нуждаются в структуре. Без направления они могут:

  • Терять фокус на сложных многошаговых задачах
  • Пропускать важные шаги или предварительные условия
  • Выдавать непоследовательные результаты
  • Упускать проверки качества и валидацию

Даже самые способные AI-агенты выигрывают от структурированных воркфлоу. Moira обеспечивает последовательное выполнение и проверяемые результаты.

Решение

Moira предоставляет систему воркфлоу на основе графов узлов, где каждый шаг имеет:

Директива

Четкая инструкция, что нужно сделать

Условие завершения

Критерии успеха, которые должны быть выполнены

Схема входных данных

Ожидаемая структура ответа (опционально)

Соединения

Ссылки на следующие шаги в воркфлоу

Агент выполняет каждый шаг, проверяет завершение и переходит к следующему узлу на основе графа воркфлоу.

Как это работает

flowchart LR
    A[Старт воркфлоу] --> B[Выполнить шаг]
    B --> C{Проверить завершение}
    C -->|Успех| D[Следующий шаг]
    D --> B
    C -->|Воркфлоу завершен| E[Конец]

Процесс выполнения

  1. Агент запускает воркфлоу через MCP инструмент
  2. Получает директиву текущего шага и условие завершения
  3. Выполняет директиву
  4. Возвращает результат через инструмент step()
  5. Движок проверяет и переходит к следующему шагу
  6. Повторяет до завершения воркфлоу

Состояние воркфлоу сохраняется на сервере. Если сессия прервана, агент может возобновить выполнение с того же шага, используя process ID.

Ключевые концепции

Воркфлоу

Воркфлоу — это направленный граф узлов. Каждый узел представляет шаг в процессе. Узлы могут ветвиться по условию, зацикливаться или делегировать подграфам.

{
"id": "my-workflow",
"metadata": {
"name": "Мой воркфлоу",
"version": "1.0.0",
"description": "Пример воркфлоу"
},
"nodes": [
{ "id": "start", "type": "start", "connections": { "default": "task-1" } },
{
"id": "task-1",
"type": "agent-directive",
"directive": "...",
"connections": { "success": "end" }
},
{ "id": "end", "type": "end" }
]
}

Типы узлов

Ниже показаны распространённые типы узлов. Таблица содержит примеры, а не полный перечень; все поддерживаемые типы и их актуальные контракты приведены в разделе Узлы.

ТипНазначение
startТочка входа для выполнения воркфлоу
endТерминальный узел, отмечающий завершение
agent-directiveЗадача для агента с директивой и условием завершения
conditionВетвление выполнения на основе структурированных условий
expressionВычисление значений с помощью арифметических выражений
subgraphДелегирование другому воркфлоу
user-notificationУведомление через настроенные каналы текущего пользователя

Шаблоны

Шаблоны позволяют использовать динамический контент в директивах и условиях через синтаксис {{variable}}:

{
"directive": "Проанализируй {{projectName}} и создай {{reportType}} отчёт"
}

Переменные могут ссылаться на:

  • Начальные данные из start узла
  • Результаты предыдущих шагов
  • Параметры воркфлоу

Выполнения

Выполнение — это работающий экземпляр воркфлоу. Оно поддерживает:

  • Текущая позиция — Какой узел активен
  • Контекст — Переменные и результаты шагов
  • История — Завершенные шаги и их результаты

MCP интеграция

Moira подключается к AI-агентам через Model Context Protocol. MCP сервер предоставляет инструменты для:

ИнструментНазначение
listПросмотр доступных воркфлоу
startПодготовка или выполнение запуска воркфлоу
stepВыполнение текущего шага и переход
manageСоздание, редактирование, получение воркфлоу
sessionПолучение информации о пользователе и активных выполнениях

MCP — это открытый протокол. Moira работает с любым MCP-совместимым клиентом: Claude Code, Cursor и другими.

Self-host или Cloud

Moira — open source (Apache-2.0). Движок, типы узлов и MCP-инструменты одинаковы, хостите ли вы её сами или используете управляемое облако:

Self-host

Запустите весь движок, Web UI и MCP-сервер в одном Docker-контейнере на своей инфраструктуре — бесплатно, single-tenant, данные остаются у вас. Аккаунты участников команды регистрируются с подтверждением администратора. Это режим по умолчанию (DEPLOYMENT_MODE=self-host). См. руководство по self-hosting.

Moira Cloud

Управляемый инстанс без необходимости что-либо администрировать — moira-mcp.com. Добавляет SaaS-вход через соцсети, политику юридических согласий и верификации email, а также расширенное администрирование нескольких пользователей.

В self-host регистрация открыта, но новый аккаунт должен одобрить администратор. Верификация email, юридические согласия и вход через соцсети остаются SaaS-функциями и по умолчанию выключены в self-host. Детали режимов развёртывания — в Self-hosting.

Следующие шаги