Echolot
Сценарии

Сценарии

Соединяйте сохранённые запросы, MCP-серверы и инструменты Echolot в небольшие программы на холсте и запускайте их вручную, по расписанию, по вебхуку или как инструмент для агентов.

Сценарий — это небольшая программа, которую вы рисуете: блоки, соединённые связями. Каждый блок делает одно дело: отправляет сохранённый запрос, достаёт значение из ответа, ветвится, повторяется в цикле, о чём-то спрашивает вас, сохраняет переменную или записывает файл. Сценарии нужны для задач, которые иначе приходится делать вручную в несколько шагов: войти по коду устройства, обойти результаты постранично, создать и убрать тестовые данные, проверять API каждое утро или дать ИИ-агенту один инструмент, который выполняет пять запросов.

Сценарии живут в рабочем пространстве, по одному файлу на сценарий в папке flows, поэтому их можно ревьюить и передавать через Git, как запросы. Каждый запрос, который отправляет сценарий, идёт тем же путём, что и отправка со страницы запроса: действуют переменные, авторизация, скрипты, проверки, прокси и история.

Страница «Сценарии»

Выберите Сценарии в переключателе модулей вверху боковой панели или нажмите ⌘5. Боковая панель перечисляет сценарии рабочего пространства. Под каждым именем видно, как он запускается: manual, agent tool, every hour, scheduled или webhook. Знак предупреждения рядом со сценарием означает, что в нём есть проблемы, которые нужно исправить, прежде чем его можно запустить.

Страница «Сценарии» с открытым сценарием Place a test order: сценарии на боковой панели, холст с блоком «Старт», двумя блоками «Запрос», блоком «Одобрить», блоком «Журнал» и блоком Cancel order, справа настройки сценария

На странице три части:

  • Панель инструментов над холстом: имя сценария (с пометкой Изменён, пока изменение не сохранено), число проблем, Упорядочить, По размеру, масштаб, Дублировать, Запуски, Журнал запусков, Блок, Замечание и Запустить.
  • Холст посередине, а в его левом нижнем углу — небольшая карта всего сценария. Нажмите на карту, чтобы перейти туда.
  • Инспектор справа. Если ничего не выбрано, он показывает сам сценарий: Имя, Описание и Входы. Если выбран один блок, он показывает настройки этого блока.

Пока сценарий открыт, на боковой панели также перечислены Запуски сценария (запуски этого окна, новые сверху) и Запросы рабочего пространства, которые можно перетащить на холст.

Создание сценария

  1. На боковой панели нажмите + рядом с Сценарии.
  2. Выберите Пустой сценарий, чтобы получить блок «Старт», соединённый с блоком «Результат», или выберите один из вариантов в Из шаблона (см. шаблоны).
  3. Новый сценарий открывается на холсте. Переименуйте его в инспекторе в поле Имя.

Если в рабочем пространстве ещё нет сценариев, страница предлагает кнопку Новый сценарий.

Чтобы удалить сценарий, выберите его и нажмите − рядом с Сценарии либо щёлкните его, удерживая Control, и выберите Удалить…. Echolot спросит и переместит файл в Корзину. Сценарии, которые запускают удалённый, перестанут работать.

Построение на холсте

Добавление блоков

  • Нажмите Блок на панели инструментов или ⇧⌘B. Открывается список блоков: вводите текст для поиска, затем нажмите на вид блока. Нажмите ↩, чтобы добавить первое совпадение. Новый блок попадает в середину видимой области и выбирается.
  • В списке также перечислены сохранённые запросы рабочего пространства в разделе Запросы. Если выбрать запрос, добавляется блок «Запрос», который уже отправляет его.
  • Перетащите запрос из Запросы на боковой панели на холст. Он станет блоком «Запрос» там, где вы отпустите. Щёлкните запрос, удерживая Control, и выберите Добавить в сценарий, чтобы поместить его блок справа от сценария.

Все виды блоков с их настройками и портами описаны на странице «Блоки».

Список блоков поверх холста: поле поиска, виды блоков по группам «Триггеры», «Действия», «Люди», «Логика», «Циклы», «Данные» и «Результат», в конце сохранённые запросы

Входы находятся на левом краю блока, выходы — на правом. Значение выходит из выхода, идёт по связи и приходит на вход; блок выполняется, когда у каждого связанного входа есть значение.

  • Перетащите с выхода на вход, чтобы соединить их. Порт под указателем подсвечивается, когда связь сюда присоединится. Можно и начать со входа и перетащить на выход.
  • У входа может быть одна связь. Если подключить к нему другой выход, старая связь заменяется. Один выход может питать много входов.
  • Если отпустить новую связь над пустым холстом, на этом месте открывается список блоков. В нём только блоки, которые могут принять связь, а выбранный блок появляется уже соединённым.
  • Чтобы переместить связь, оттащите её от входа, в котором она заканчивается, и бросьте на другой вход. Бросьте над пустым холстом, чтобы разорвать.
  • Наведите указатель на связь, чтобы посередине появилась кнопка, разрывающая её.

Выбор, перемещение и расстановка

  • Нажмите на блок, чтобы выбрать его. ⇧-щелчок или ⌘-щелчок добавляет блоки к выбору или убирает их.
  • Удерживая ⇧ или ⌘, тяните по пустому холсту, чтобы нарисовать рамку выбора. Блоки, которых она касается, входят в выбор.
  • Перетащите блок, чтобы переместить его. Нажмите Esc, чтобы снять выбор.
  • Клавиши со стрелками выбирают ближайший блок в этом направлении, и вид следует за ним. Если ничего не выбрано, они начинают со «Старта».
  • Упорядочить расставляет блоки по столбцам в порядке выполнения.
  • Дублировать (⌘D) копирует выбранные блоки вместе со связями между ними.
  • ⌫ удаляет выбранные блоки вместе с их связями или выбранную связь.

В инспекторе выбранного блока есть Удалить блок. Если выбрано несколько блоков, он показывает их число и Удалить блоки. В сценарии ровно один блок «Старт»: он никогда не копируется и не дублируется, его нельзя приостановить, и в его инспекторе нет Удалить блок.

Прокрутка и масштаб

  • Тяните по пустому холсту или прокручивайте двумя пальцами или колесом мыши, чтобы сдвинуть вид.
  • Сведите или разведите пальцы либо удерживайте ⌘ и прокручивайте, чтобы изменить масштаб. Масштаб меняется от 20 % до 250 %, а панель инструментов показывает текущий.
  • По размеру (⌥⌘0) показывает весь сценарий. Масштаб никогда не уменьшается меньше 50 %, чтобы текст оставался читаемым; более крупный сценарий начинается с левого края.

Копирование и вставка

Правка › Скопировать (⌘C), Вырезать (⌘X) и Вставить (⌘V) работают с выбранными блоками и связями между ними. Вставленные блоки получают новые ID и становятся выбором. В том же сценарии они попадают рядом с оригиналами, в другом — в середину вида. Вставлять можно и в сценарий другого рабочего пространства. Скопированные блоки — это текст JSON, поэтому их можно вставить и в сообщение или issue.

Заметки

Нажмите Замечание на панели инструментов, чтобы добавить стикер и ввести в него текст. Заметки лежат позади блоков и не выполняются.

  • Перетащите заметку, чтобы переместить её, и потяните за уголок в правом нижнем углу, чтобы изменить размер.
  • Дважды щёлкните заметку или щёлкните её, удерживая Control, и выберите Изменить заметку…, чтобы поменять текст.
  • Щёлкните, удерживая Control, и выберите Удалить заметку, чтобы убрать её.

Шаблоны используют заметки, чтобы подсказать, какие запросы выбрать.

Отмена и сохранение

Любое изменение на холсте и в инспекторе можно отменить командой Правка › Отменить (⌘Z) и Повторить (⇧⌘Z): добавление, перемещение, соединение, удаление, настройки, заметки и «Упорядочить».

Сохранять сценарии самому не нужно. Echolot записывает файл через мгновение после вашего последнего изменения; до этого рядом с именем стоит Изменён. Если сохранить не удалось, Echolot сообщает причину и предлагает Повторить, Отменить изменения (вернуться к файлу на диске) и Продолжить правку. Ваши правки остаются на холсте, пока их не сохранят.

Проблемы

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

Ошибки не дают сценарию запуститься: нет блока «Старт», пуста обязательная настройка (например, у блока «Запрос» нет запроса), запрос или сценарий не существует или связи идут по кругу. Предупреждения не мешают, например блок, в который ничто не ведёт и который поэтому никогда не выполняется. Чтобы сделать что-то ещё раз, используйте «Повторить», «Для каждого» или «Опрос» вместо круга из связей.

Входы и результат

Входы — это значения, с которыми начинается запуск. Добавьте их в инспекторе при пустом выборе: нажмите + рядом с Входы, введите имя и выберите тип (any, text, number, bool, object, list или secret). У блока «Старт» появляется по одному выходу на каждый вход, а также run, который отправляет все входы одним объектом.

Входы приходят из листа Запустить, параметра --input команды echolot flow run, вызова инструмента агентом или из запроса вебхука и JSON-тела. Текст преобразуется к типу входа: 3 в число, true или yes в bool, текст JSON в объект или список. Вход типа secret скрыт в журнале запуска и в том, что видят агенты.

Значение по умолчанию, описание и признак обязательности входа задаются в файле сценария (таблица [[inputs]]: default, description, required; см. файлы рабочего пространства). Лист «Запустить» показывает описание как подсказку поля и подставляет значение по умолчанию.

Блок Результат хранит то, что возвращает запуск: агенту, вызвавшему сценарий, команде echolot flow run, вызывающему вебхук или блоку «Сценарий» родительского сценария. В сценарии не больше одного блока «Результат».

Запуск сценария и наблюдение за ним

Нажмите Запустить или ⌘R. Если у сценария есть входы, сначала открывается лист, где их нужно заполнить; пустые поля используют значение входа по умолчанию. Сценарий сохраняется, затем выполняется с активным окружением окна. Запустить недоступна, пока в сценарии есть ошибки.

Во время запуска:

  • Рамка каждого блока показывает его состояние: выполняется или ждёт вас, пройден (зелёная) или с ошибкой (красная).
  • Под холстом открывается журнал запуска. В нём перечислены блоки по мере завершения: время, строки журнала, результаты тестов (Тесты 3/3 в заголовке) и чем закончился запуск. Нажмите на строку, чтобы выбрать её блок.
  • Блоки, которые о чём-то спрашивают вас («Спросить», «Показать и ждать», «Одобрить»), открывают лист. См. блоки «Люди».
  • Остановить (⌘.) заменяет Запустить и завершает запуск. Вопрос на экране исчезает.

После запуска выберите блок, чтобы увидеть его Последний запуск в инспекторе: сколько он занял и, в разделе Показать, его значения Входные данные и Результат по портам. Так можно найти путь к значению для блока «Выбрать» или шаблона.

Холст после запуска Place a test order: блоки с зелёными рамками, журнал запуска под холстом, а в инспекторе — результат последнего запуска блока Create order

Прежние запуски остаются в окне: нажмите на один из них в Запуски на боковой панели или выберите его в меню Запуски на панели инструментов, чтобы снова показать его на холсте. Очистить холст в этом меню или Очистить в журнале запуска убирают состояния запуска. Если запуск завершился с ошибкой и доступна встроенная модель Mac, кнопка в заголовке журнала запуска объясняет сбой.

Когда активно защищённое окружение, кнопка называется Запустить (Production)…, и Echolot один раз спрашивает подтверждение перед запуском.

Подробнее о запуске, расписаниях, вебхуках, агентах и командной строке: Запуск и триггеры. Пошаговый пример: Автоматизация сценариями.

Сочетания клавиш

СочетаниеДействие
⌘5Показать модуль «Сценарии»
⌘RЗапустить сценарий
⌘.Остановить запуск
⇧⌘BДобавить блок
⌘DДублировать выбранные блоки
⌥⌘0Показать весь сценарий
⌘C, ⌘X, ⌘VСкопировать, вырезать, вставить блоки
⌫Удалить выбранное
⌘Z, ⇧⌘ZОтменить, повторить
Клавиши со стрелкамиВыбрать ближайший блок в этом направлении
EscСнять выбор

На этой странице