> ## Documentation Index
> Fetch the complete documentation index at: https://docs.hubtalk.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# 03. Редактор и Begin

> Холст, палитра узлов, инспектор и кнопки в шапке редактора.

# Редактор: холст, палитра, Begin

<Info>
  **Цель модуля:** уверенно двигаться по редактору и понимать, что делает каждая кнопка в шапке.
</Info>

<Frame caption="/editor/‹агент› — три зоны: слева панель (Узлы · Переменные агента · Настройки · Проверка), в центре холст, справа инспектор выбранного узла. Кнопки ◧ и ◨ в шапке скрывают боковые панели, когда нужен весь холст.">
  <img src="https://mintcdn.com/hubtalk/GMvtjWdqWk0BhtuQ/images/tutorial/tut-05-editor-layout.webp?fit=max&auto=format&n=GMvtjWdqWk0BhtuQ&q=85&s=22b49501cf86cea13a007b3fbd40523e" alt="Редактор агента: палитра типов узлов слева, холст в центре, инспектор справа" width="1280" height="787" data-path="images/tutorial/tut-05-editor-layout.webp" />
</Frame>

## Шапка редактора по порядку

* **Сохранить** — пишет **черновик**. Черновик не влияет на боевые звонки.
* **Опубликовать** — фиксирует черновик как новую версию; именно по ней идут звонки.
* **Проверка** — валидация графа: ошибки блокируют публикацию, предупреждения — нет.
* **Тест** — чат и голосовой звонок по черновику или по опубликованной версии.
* **Copilot** — правки флоу словами, всегда через предложение, которое вы принимаете.
* **🔍 Поиск** — поиск по всему документу агента; стоит прямо перед «Выровнять схему», подсказка — «Найти в документе». См. [ниже](#поиск-по-документу).
* **Выровнять схему**, **Импорт**, **Экспорт** — раскладка узлов и обмен JSON.

Узел добавляется кликом по карточке в палитре, связь — перетаскиванием от нижнего порта узла к другому узлу. Клик по узлу открывает инспектор справа: всё содержимое узла настраивается там.

## Поиск по документу

На большом агенте нужный узел быстрее найти поиском, чем глазами.

**Где вход.** Кнопка **🔍 Поиск** — **первая во втором ряду шапки редактора**, слева от «Выровнять схему»; в редакторе компонента такая же кнопка в его шапке. Сочетание **Cmd/Ctrl + F** делает то же самое. Открывается плавающая панель над холстом — это панель, а не кнопка: искать кнопку на самом холсте бесполезно.

<Frame caption="Панель поиска: запрос «оператор», счётчик 1/2, находки сгруппированы по узлам — «Welcome» и «Перевод на оператора». Совпадение подчёркнуто и в списке, и на карточке узла на холсте.">
  <img src="https://mintcdn.com/hubtalk/GMvtjWdqWk0BhtuQ/images/tutorial/tut-05b-editor-find.webp?fit=max&auto=format&n=GMvtjWdqWk0BhtuQ&q=85&s=bd00b8a6e6a98fee2b4b40230337f802" alt="Панель поиска по документу агента с двумя находками" width="1440" height="900" data-path="images/tutorial/tut-05b-editor-find.webp" />
</Frame>

Поиск браузера для этого не годится: он видит только короткие превью на карточках и не умеет промотать холст к найденному.

Что попадает в индекс: имена узлов, промпты, условия переходов, авторские поля узлов и функции конвейера. **Словари, выходные переменные и внутренние идентификаторы в индекс намеренно не входят** — фрагмент JSON в результатах нечитаем и может показать секрет.

Единица навигации — вхождение, а не карточка: если в одном узле нашлось три совпадения, вы пройдёте по всем трём. Счётчик сквозной через **«Диалог»** и **«Конвейер»**, и переход через границу сам переключает вид. Потолок — 500 вхождений; если их больше, панель скажет, что показывает первые.

Найденное подсвечено и в **самом поле**, где текст правится, а текущее вхождение прокручивается к себе.

<Warning>
  **Горячая клавиша уступает полям ввода.** Если курсор стоит в промпте, в любом текстовом поле или в редакторе кода, **Cmd/Ctrl + F** достанется полю — вы получите обычный поиск браузера, а панель не откроется. Это сделано нарочно: автор, правящий длинный промпт, ждёт поиска именно по нему.

  Отсюда самая частая жалоба «поиска нет»: нажали Cmd/Ctrl + F, не сняв фокус с поля. Кликните по пустому месту холста — или просто нажмите **🔍 Поиск** в шапке.
</Warning>

<Info>
  **Про автосохранение и «конфликт»**

  Черновик сохраняется автоматически, с небольшой задержкой после последней правки. Если во время сохранения вы продолжаете набирать текст, холст не откатывается — ответ сервера применяет только служебные данные, а ваши несохранённые изменения остаются на месте.

  Сообщение **«флоу изменён параллельно — откройте флоу заново»** означает именно то, что написано: кто-то правит того же агента в другом окне или под другим пользователем. На него стоит реагировать, а не закрывать по привычке.
</Info>

<Frame caption="Begin. У этого узла одна настройка и она важная: кто говорит первым. Для исходящего обзвона — агент (иначе оба будут молчать). Для входящей линии обычно тоже агент: он здоровается.">
  <img src="https://mintcdn.com/hubtalk/GMvtjWdqWk0BhtuQ/images/tutorial/tut-06-node-begin.webp?fit=max&auto=format&n=GMvtjWdqWk0BhtuQ&q=85&s=6d15942627db5c31b6c4d02083d12ac7" alt="Инспектор узла Begin: кто говорит первым" style={{ width: "100%", maxWidth: "470px", height: "560px", objectFit: "cover", objectPosition: "top", borderRadius: "6px" }} width="760" height="3200" data-path="images/tutorial/tut-06-node-begin.webp" />
</Frame>

<Accordion title="Показать панель целиком">
  <img src="https://mintcdn.com/hubtalk/GMvtjWdqWk0BhtuQ/images/tutorial/tut-06-node-begin.webp?fit=max&auto=format&n=GMvtjWdqWk0BhtuQ&q=85&s=6d15942627db5c31b6c4d02083d12ac7" alt="Инспектор узла Begin: кто говорит первым" width="760" height="3200" data-path="images/tutorial/tut-06-node-begin.webp" />
</Accordion>

<Warning>
  **Грабли**

  Begin нельзя удалить и у него ровно одна исходящая связь — она и задаёт точку входа в диалог. Если после правок разговор начинается «не с того места», проверьте сначала, куда ведёт связь из Begin.
</Warning>
