Введение в Moira
Moira не даёт ИИ-агенту сбиться. Она выдаёт агенту по одному понятному шагу и проверяет каждый результат, прежде чем агент пойдёт дальше, поэтому многошаговая задача выполняется полностью и по порядку. Шаги берутся из флоу (воркфлоу): процесса, который записан один раз и каждый раз выполняется одинаково.
Собирать флоу не нужно
Moira — agent-first инструмент. Вы работаете с агентом как обычно: описываете задачу обычными словами. Остальное агент делает сам:
- Выбирает готовый флоу, если подходящий есть, — например Quick Task, Robust Task или Todo List для понятной задачи без особой логики или Software Development Flow для изменения в репозитории кода.
- Или собирает новый флоу под вашу задачу через Workflow Management Flow — собственный флоу Moira для создания и правки флоу. Флоу может быть простым — несколько шагов подряд — или сложным — процесс с ревью и циклами исправления. Сначала агент договаривается с вами, насколько основательным должен быть флоу: простой собирается быстро и проходит лёгкую проверку, крупный проходит проектирование и независимое ревью. Сделать флоу основательнее можно и позже.
Всё остальное — схемы в веб-приложении, переменные, типы нод, ручная правка флоу — необязательно. Это нужно, чтобы заглянуть внутрь флоу, когда захочется, а не то, что надо выучить заранее.
Как освоиться в веб-приложении
Веб-приложение объясняет себя прямо на экране:
- При первом входе главная предлагает тур. «Покажите, что к чему» открывает меню гидов, «Позже» спросит в следующем сеансе, «Не нужно» запоминается.
- «Покажите, что к чему» всегда в боковой панели: полный тур, тур текущей страницы, продолжение и прогресс по каждому экрану. Полный тур идёт по порядку — главная, обзор, флоу, учебный флоу, запуски, ваш последний запуск, заметки, playbooks, артефакты и настройки. Уход со страницы ставит его на паузу до продолжения. Если запусков нет, на их месте тур объяснит, как начать запуск. «Туториалы» начинают или продолжают «Соберите свой первый флоу» — практику в редакторе флоу.
- «Что это?» запускает тур страницы. Карточка объясняет элемент рядом с ним или у края экрана; на телефоне — сверху или снизу. Длинный текст прокручивается внутри; «Назад», «Дальше» и закрытие остаются видимыми. Стрелка вправо или Enter ведут дальше, влево — назад, Escape закрывает. Точка отмечает новые или изменённые шаги уже просмотренного тура; нажатие показывает только эти шаги.
- Тур есть у каждой страницы приложения: главной, обзора, списка флоу и каждого флоу, списка запусков и каждого запуска, заметок, playbooks, артефактов и настроек. Туры объясняют назначение страницы и основные элементы, пропуская шаги о скрытых вами панелях. У раздела администрирования тура нет.
- Место остановки и просмотренные шаги хранятся в аккаунте и доступны во всех браузерах. Настройки → Предпочтения → Гиды начинают полный тур заново или сбрасывают просмотренное.
Обзор для администратора
Панель администратора показывает состояние системы и сверку управляемых флоу. При включённой аналитике администраторов (Moira Cloud) карточки показывают недавно активных людей и текущую работу, новые аккаунты, запуски, требующие внимания, популярные флоу и аналитику запусков. Кнопки периода независимы для каждой карточки; выбор действует на открытой странице. Короткие интервалы и дни отсчитываются назад от запроса; Сегодня начинается в полночь UTC.
В Исключённых пользователях по умолчанию исключены все текущие администраторы. Выберите людей по имени/email или Включить всех. Выбор сохраняется для аккаунта в этом браузере, без синхронизации браузеров. При загрузке замены карточка сохраняет область загруженных результатов; повтор загрузки при ошибке не скрывает соседние карточки.
Активность означает записанное действие или наблюдённое продление неистёкшей сессии провайдером, а не точный статус онлайн. Регистрация и старые даты сессии не доказывают продление; время продления не заполняется задним числом. Последний шаг — записанный принятый шаг; неизвестное время остаётся неизвестным. Управление всеми пользователями/запусками/флоу открывает полные списки; сведения аккаунта охватывают все периоды. Исключения не влияют на управление и состояние системы. Self-host по умолчанию сохраняет состояние системы и Пользователей, без общей аналитики установки.
Настройки администратора объединяют определения, значения, обслуживание и кодспейсы;
?tab=values открывает раздел. Обновления, ошибки и повтор загрузки локальны; остальные элементы
управления, загруженные данные и черновики сохраняются.
Среды разработки
codespace даёт постоянное окружение GitHub или локальной Docker Sandboxes VM.
Настройки → Разработка: среды, подключение GitHub и локальные компьютеры.
Одобрите подключение на компьютере; его companion применяет ожидающие настройки владельца
в пределах локальных ограничений.
У обоих провайдеров один гостевой workspace service. MCP и прямой гостевой CLI
moira-workspace используют его команды, файлы и сохранённый вывод; собственный
Node runtime не зависит от проекта. Права владельца, сроки разрешений и физические
ресурсы проверяются без квот команд и файлов.
Подключение, разрешения и безопасность.
Постепенный путь
Начните сверху и остановитесь там, где вам уже достаточно:
- Быстрый старт — подключите Moira к AI-клиенту и запустите первый флоу.
- Туториал: первые флоу — три крошечных учебных флоу: простые шаги, одна развилка, несколько путей. Они показывают, как Moira ведёт флоу, по одной идее за раз.
- Какой готовый флоу выбрать — Quick Task, Robust Task и Todo List для повседневных задач и когда вместо них попросить агента сделать новый флоу.
- Концепции и Паттерны — как устроены флоу, если захочется прочитать или собрать флоу самому.
Что идёт не так без структуры
На длинной задаче ИИ-агенты могут:
- Терять фокус в сложных многошаговых задачах
- Пропускать важные шаги или предварительные условия
- Выдавать непоследовательные результаты
- Пропускать проверки качества и валидацию
Флоу даёт каждому шагу:
- директиву — что сделать;
- условие завершения — когда шаг считается сделанным;
- схему ввода — какое подтверждение агент обязан вернуть (необязательно);
- связи — куда процесс идёт дальше, в том числе выбор по ответу агента.
Агент выполняет каждый шаг, возвращает подтверждение, а Moira проверяет его и переходит к следующему шагу флоу.
Как это работает
Дальше на этой странице — для любопытных и для агентов, которые выполняют флоу.
flowchart LR
A[Старт воркфлоу] --> B[Выполнить шаг]
B --> C{Проверить завершение}
C -->|Успех| D[Следующий шаг]
D --> B
C -->|Воркфлоу завершен| E[Конец]
Процесс выполнения
- Агент запускает воркфлоу через MCP инструмент
- Получает директиву текущего шага и условие завершения
- Выполняет директиву
- Возвращает результат через инструмент
step() - Движок проверяет и переходит к следующему шагу
- Повторяет до завершения воркфлоу
Состояние воркфлоу сохраняется на сервере. Если сессия прервана, агент может возобновить выполнение с того же шага, используя 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 | Ветвление выполнения в один из нескольких выходов по case |
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 Compose приложения и ingress на своей инфраструктуре —
бесплатно, single-tenant, данные остаются у вас. Аккаунты участников команды регистрируются с
подтверждением администратора. Это режим по умолчанию (DEPLOYMENT_MODE=self-host). См.
руководство по self-hosting.
Moira Cloud
Управляемый инстанс без необходимости что-либо администрировать — moira-mcp.com. Добавляет SaaS-вход через соцсети, политику юридических согласий и верификации email, а также расширенное администрирование нескольких пользователей.
В self-host регистрация открыта, но новый аккаунт должен одобрить администратор. Верификация email, юридические согласия и вход через соцсети остаются SaaS-функциями и по умолчанию выключены в self-host. Детали режимов развёртывания — в Self-hosting.