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

Использование Wizard Desktop Бета-версия

Познакомьтесь с интерфейсом Wizard Desktop и узнайте, как работать в сеансе с dbt Wizard — с наглядными визуализациями данных, сравнением данных, графом зависимостей и другими возможностями прямо в приложении. Начните с раздела Начало работы.

Эта страница поможет вам сориентироваться в приложении: где что находится, как устроен сеанс, что делать, когда dbt Wizard предлагает изменение, и как он .

Обзор приложения​

Когда вы открываете Wizard Desktop, всё необходимое находится в одном окне: слева — проекты и сеансы, посередине — чат, а справа — панели с вашим проектом, графом зависимостей, изменениями и результатами в виде диаграмм и таблиц.

Новый сеанс с боковой панелью, полем ввода сообщения и панелью ExplorerНовый сеанс с боковой панелью, полем ввода сообщения и панелью Explorer
Тот же интерфейс во время выполнения задачи: диаграмма в чате и результаты валидации на боковой панелиТот же интерфейс во время выполнения задачи: диаграмма в чате и результаты валидации на боковой панели
Элемент интерфейсаНазначение
Боковая панель (слева)+ New запускает сеанс. В разделе Pinned закреплённые чаты и окружения остаются наверху; их порядок можно менять. Projects содержит список проектов и сеансов в каждом из них, Chats — беседы, не привязанные к проекту, а Settings находится внизу
Заголовок сеансаНазвание сеанса, рабочая ветка и меню Open in для перехода к той же ветке в Finder, VS Code, Cursor, iTerm или Terminal
Область чата (посередине)Ваша беседа. Здесь отображаются ответы, диаграммы, таблицы и различия
Панель навигации WayfinderНад полем ввода сообщения: проект, ветка, подключение · окружение, а также Validation и Create PR
Поле ввода сообщенияМесто для ваших запросов. Нажмите ⌘ + L, чтобы перейти к нему. + позволяет прикреплять файлы, а два списка выбора задают режим разрешений и модель ИИ
Боковая панель (справа)Открытая вами панель, под которой расположен терминал. В Explorer можно редактировать текстовые файлы
Панель значков (крайняя справа)Переключение между панелями: Explorer, Lineage, Changes, Queries, Commands, Validation, Summary, CI checks, Metrics и Insights. Значок уведомления означает, что что-то требует внимания

Чтобы изменить или удалить проект, наведите указатель на его название в боковой панели и выберите меню с многоточием (⋮) → Project settings или Remove project.

Меню с многоточием в строке проекта с пунктами Project settings и Remove projectМеню с многоточием в строке проекта с пунктами Project settings и Remove project

Использование панелей​

Выберите значок в правой панели значков, чтобы открыть соответствующую панель сбоку:

ПанельСодержимое
SummaryСводка о работе в этом чате
ChangesРазличия, ожидающие проверки
ValidationПлан валидации и его результаты: что прошло проверку, что не прошло и что требует внимания. См. раздел Валидация
ExplorerПросматривайте и редактируйте файлы проекта здесь или нажимая на пути к файлам в чате. Сохраняйте изменения с помощью Save или Cmd/Ctrl + S. Правки остаются изолированными в окружении чата, несохранённые черновики сохраняются при переходе в другое место или перезапуске, а изменения, внесённые извне, не перезаписываются.
LineageСвязи между вашими моделями dbt
QueriesНаписание и выполнение произвольных SQL-запросов через ваше подключение. См. раздел Исследование данных
CommandsЗапросы, которые запускаете вы, и команды, которые выполняет dbt Wizard, в рамках этого чата
CI checksПроверки CI, запущенные dbt Wizard, и их результаты
InsightsАнализ проекта и данных
MetricsМетрики вашего проекта
TerminalВыполнение команд без выхода из приложения. Расположен под открытой панелью
Выберите значок в правой панели значков, чтобы открыть соответствующую панель сбокуВыберите значок в правой панели значков, чтобы открыть соответствующую панель сбоку

Предпочитаете свой редактор? Выберите Open in, чтобы открыть dbt Wizard и вашу ветку в Finder, VS Code, Cursor, iTerm или Terminal либо скопировать путь к файлу.

Запуск сеанса​

Задайте эти параметры в области ввода запроса перед отправкой первого сообщения. Модель ИИ и режим разрешений можно менять во время сеанса; остальные параметры задаются для всего чата.

ПараметрНазначение
ProjectПроект dbt, в котором работает dbt Wizard. Приложение находит проекты в репозиториях Git в вашей домашней папке; вы также можете добавить папку самостоятельно. Добавлять проект необязательно: dbt Wizard может работать с несколькими проектами
Connection · environmentПодключение к хранилищу данных и окружение для выполнения, например default · dev. Берётся из вашего локального файла profiles.yml
Schema suffixДобавляется к target schema, чтобы результаты сборки в этом чате записывались в отдельные таблицы. См. раздел Суффикс схемы
AI modelМодель ИИ и глубина её рассуждений. Подробнее см. в разделе dbt управляемое подключение инференс.
Permission modeКакие действия dbt Wizard выполняет без вашего подтверждения. См. раздел Режимы разрешений

Опишите задачу, нажмите Enter — и работа начнётся. Каждый чат сохраняет собственный контекст, ветку и изменения.

Для начала работы необязательно выбирать проект. Пропустите этот шаг, и dbt Wizard сможет работать с несколькими вашими проектами. Это удобно, если вопрос затрагивает несколько проектов или вы ещё не знаете, в каком из них искать ответ. Беседы без привязки к проекту находятся в разделе Chats на боковой панели.

Режимы разрешений​

Выберите режим в списке рядом с кнопкой отправки. Переключать его можно в любой момент, даже во время выполнения.

РежимЧто делает dbt Wizard
Plan changesИзучает проект и описывает, что планирует сделать. Ничего не редактируется
Ask for approvalСначала запрашивает подтверждение. Вы видите различия и принимаете решение по каждому изменению
AutoДействует самостоятельно. Изменения вносятся сразу, а вы проверяете их после

Начинайте крупные задачи в режиме Plan changes, чтобы оценить предложенный подход, а затем переключайтесь на Auto для его выполнения.

Суффикс схемы​

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

Работа в сеансе​

В этом разделе описано, что можно делать во время работы в сеансе чата.

Отправка запросов Wizard​

  • Введите запрос и нажмите Enter. dbt Wizard изучит ваши файлы, граф зависимостей, тесты и метаданные, а затем будет вносить изменения и выполнять действия в соответствии с выбранным режимом разрешений.
  • Прикрепляйте файлы и изображения: например, снимок экрана с ошибкой, диаграмму с неверным результатом или макет того, что вы хотите получить. Выберите + рядом с полем ввода сообщения, перетащите файлы, вставьте их или скопируйте из Finder. Вложения можно просмотреть перед отправкой, а отправленные файлы отображаются в чате в виде удобных для просмотра карточек.
  • Передумали в процессе? Ничего страшного: просто остановите выполнение или введите уточнение и отправьте его — dbt Wizard учтёт его после текущего шага и скорректирует действия.
  • Когда dbt Wizard упоминает модель dbt, выберите её имя, чтобы:
    • Copy name — скопировать имя
    • Add to chat — добавить модель в чат, чтобы dbt Wizard использовал её как контекст
    • Open code — прочитать SQL в Explorer
    • Open lineage — посмотреть связи модели
При выборе имени модели dbt в ответе Wizard открываются пункты Copy name, Add to chat, Open code и Open lineageПри выборе имени модели dbt в ответе Wizard открываются пункты Copy name, Add to chat, Open code и Open lineage

Проверка и валидация изменений​

При работе с Wizard никакие изменения не попадают в коммит без вашего просмотра:

  • Changes показывает различия по каждому файлу.
  • Inline impact показывает, какие модели dbt затрагивает изменение, и позволяет открыть различия прямо на месте.
  • Comments позволяет навести указатель на строку, различие, ячейку таблицы или диаграмму и указать, что именно не так с этим элементом. Оставьте несколько комментариев и отправьте их вместе. Это гораздо быстрее, чем описывать всё абзацем текста.

Когда изменения будут выглядеть правильно, валидация поможет предварительно просмотреть результаты изменений dbt Wizard и выявить проблемы до создания пул-реквеста. Она становится доступна после того, как dbt Wizard создаст сводку изменений.

Валидация​

Сформируйте план валидации, чтобы увидеть, какие затронутые ресурсы и проверки dbt Wizard предлагает проверить. Изучите план, затем запустите одобренные проверки. Результаты покажут, что прошло проверку, что не прошло и что требует вашего внимания.

Валидация охватывает больше, чем предварительный просмотр или компиляция:

  • Preview позволяет изучить результат конкретного изменения. Это помогает определить, выглядит ли результат правильно, но не проверяет остальные затронутые части проекта.
  • Compile генерирует исполняемый SQL из вашего кода dbt. Этот процесс может выявить проблемы компиляции, но не собирает изменённые модели dbt и не сравнивает их данные.
  • Validation оценивает затронутые ресурсы и создаёт план, который может включать компиляцию, сборку, тесты, предварительный просмотр и сравнение данных. Набор проверок зависит от ваших изменений и выбранного уровня Validation level:
    • Small компилирует изменённые модели dbt, проверяет их линтером, запускает их тесты схемы и данных и проверяет наличие антипаттернов dbt, не выполняя запись в хранилище данных
    • Medium дополнительно материализует эти модели dbt и собирает зависящие от них нижестоящие ресурсы
    • Large добавляет сравнение количества строк, схемы и выборочных записей между prod и dev.

    Для каждого уровня список проверок и их влияние на хранилище данных отображаются до того, как вы выберете Run validation.

Если план включает dbt-compare, его результаты помогут понять, как изменения влияют на ваши данные. Разверните проверку, чтобы увидеть, что выполнялось, или выберите Re-run validation после устранения причины сбоя.

Когда проверки пройдут успешно, создайте коммит из приложения и выберите Create PR. Каждый чат работает в собственной ветке, поэтому пул-реквест включает только работу из этого чата.

Исследование данных​

Для исследовательского анализа вы можете задавать Wizard вопросы о своих данных. Для произвольных SQL-запросов к рабочему окружению, запросов к Semantic Layer и аналитики для бизнес-пользователей используйте платформу dbt.

Иногда хочется самостоятельно изучить данные:

  1. Выберите Queries в панели значков справа.
  2. Напишите произвольный SQL-запрос в редакторе запросов.
  3. Выберите Run. Результаты отобразятся в разделе Results под редактором.

Чтобы выполнить SQL, написанный dbt Wizard, выберите Open in Queries у SQL-кода в чате. Он откроется в той же панели.

Панель расположена рядом с чатом, поэтому вы можете проверить что-то самостоятельно, не теряя нить беседы. Чтобы вместо этого начать другую беседу, выберите + New в левой боковой панели.

Приложение использует ту же конфигурацию, что и CLI, поэтому уже настроенные навыки, субагенты и MCP-серверы работают без дополнительной настройки:

Чаты и рабочие деревья​

Каждый чат, привязанный к проекту, получает собственное worktree Git.

Рабочее дерево — это вторая копия вашего репозитория в отдельной папке и в собственной ветке. Репозиторий и история те же, просто место для работы отдельное. Поэтому, когда чат редактирует stg_orders, он редактирует собственную копию, а не файлы из других ваших задач. Это позволяет Wizard одновременно работать над несколькими ошибками в одном проекте.

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

Поскольку у каждого чата проекта есть изолированное рабочее дерево, начинайте новый чат с помощью + New для каждой отдельной задачи, а не используйте одну длинную беседу для всего. Возвращайтесь к существующему чату, только если продолжаете ту же задачу.

Подробнее о рабочих деревьях см. в документации git worktree.

Имена рабочих деревьев и схем​

dbt Wizard автоматически задаёт имя рабочего дерева каждого чата, сочетая случайное прилагательное со случайным названием животного, например docs-fox. Это имя никак не связано с вашим проектом или данными, поэтому не будет вам знакомо. Затем на основе имени рабочего дерева формируются ветка и схема этого чата:

Элемент интерфейсаПримерОткуда берётся
Имя рабочего дерева, которое также является именем чатаdocs-foxГенерируется при запуске чата
Веткаoz/docs-foxЗначение github.user из вашей конфигурации git или feature, если оно не задано
Цель в profiles.yml рабочего дереваdocs-foxИмя рабочего дерева с заменой дефисов на подчёркивания
Схемаdbt_oz_a1b2Схема вашего проекта со случайным суффиксом из четырёх символов
Проект dbt, имя рабочего дерева git, ветку, цель и схему можно найти над полем ввода сообщенияПроект dbt, имя рабочего дерева git, ветку, цель и схему можно найти над полем ввода сообщения

Суффикс схемы обеспечивает каждому чату отдельную схему, поэтому два чата никогда не записывают данные в одни и те же таблицы.

dbt Wizard записывает эти цели в файл profiles.yml внутри папки рабочего дерева и добавляет его в .gitignore. Ваш собственный profiles.yml остаётся без изменений.

Устранение неполадок​

 В списке выбора подключений ничего не найдено

Список выбора содержит цели из вашего локального файла profiles.yml. Если вы до сих пор запускали этот проект только в dbt platform, скорее всего, такого файла у вас ещё нет.

Писать его вручную не нужно. Баннер в проекте открывает форму, где вы выбираете хранилище данных, вводите учётные данные и позволяете приложению создать профиль за вас. Затем приложение запускает dbt debug, чтобы вместо пустого списка без объяснений вы увидели ошибку самого хранилища данных. Если вы предпочитаете использовать учётные данные хранилища, управляемые платформой, тот же диалог поможет подключить проект через CLI dbt platform. См. раздел Настройка подключения к хранилищу данных.

 Моего проекта нет в списке

Приложение сканирует только репозитории Git в вашей домашней папке. Если проект находится в другом месте, добавьте папку через Settings.

Связанная документация​

Посмотрите, как это работает, и поделитесь отзывом

Хотите увидеть dbt Wizard в действии? Посмотрите демонстрационное видео.

Нам было бы интересно узнать о вашем опыте работы с dbt Wizard. Поделитесь отзывом, выполнив слеш-команду /feedback в интерактивном сеансе терминала или перейдя в канал #dbt-wizard в Slack-сообществе dbt.

Большое спасибо за помощь в улучшении dbt Wizard и процесса разработки данных с помощью dbt!

Нашли ошибку?

0
Loading