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

Командный режим (CLI)

Командный режим. это классический интерфейс командной строки для работы с репозиторием метрик. Идеально подходит для автоматизации, скриптов и CI/CD пайплайнов.

Структура команд

Все основные команды работы с репозиторием метрик находятся в группе sl (Semantic Layer):

trisigma sl <команда> [параметры]

Список доступных команд

trisigma sl --help

Основные команды:

  1. validate. валидация репозитория
  2. compile. генерация SQL для источников или метрик
  3. list-sources. список источников
  4. list-dimensions. список дименшенов
  5. list-metrics. список метрик
  6. task. создание ветки для задачи
  7. save. сохранение изменений (commit)
  8. publish. публикация ветки (push + PR URL)
  9. status. статус рабочего процесса

Валидация репозитория

Проверяет структуру и содержимое файлов репозитория на соответствие правилам.

Базовая валидация

trisigma sl validate

Успешная валидация:

CLI покажет зеленое сообщение об успешной валидации.

При обнаружении ошибок:

cli_validate_error.png

CLI покажет список ошибок с указанием файлов, строк и описанием каждой проблемы.

AI-объяснение ошибок

Получи AI-анализ ошибок валидации:

trisigma sl validate --ai-explain

cli_validate_error_ai.png

CLI отправит ошибки в LLM и получит подробное объяснение на русском: для каждой ошибки будет указана проблема, причина, решение и примеры кода для исправления.

Параметры

  1. --ai-explain. получить AI-объяснение ошибок (требует настроенный LLM)

Компиляция SQL

Генерирует SQL-запросы для источников или метрик.

Компиляция источника

trisigma sl compile --source action_returned

Параметры:

ПараметрКороткая формаОписаниеОбязательный
--source-sНазвание источникаДа (или --metrics)
--dimensions-dДименшены через запятуюНет
--columns-cКолонки через запятуюНет
--first-dateНачальная дата YYYY-MM-DDНет
--last-dateКонечная дата YYYY-MM-DDНет
--granularity-gГранулярность: day/week/monthНет (по умолчанию day)
--output-oФайл для сохранения SQLНет
--watch-wРежим мониторинга измененийНет

Пример с параметрами:

trisigma sl compile --source action_returned \
--dimensions vertical,logical_category \
--first-date 2025-01-01 \
--last-date 2025-01-31 \
--granularity day

cli_generate_source.png

CLI покажет сгенерированный SQL-запрос с подсветкой синтаксиса и номерами строк. Ниже отображается таблица с метаданными генерации: найденные столбцы, использованные обогащения.

Компиляция метрик

trisigma sl compile --metrics revenue,sessions

Параметры:

ПараметрКороткая формаОписаниеОбязательный
--metrics-mМетрики через запятуюДа (или --source)
Остальные параметры аналогичны компиляции источника

Пример:

trisigma sl compile \
--metrics revenue,conversion_rate \
--dimensions platform,country \
--granularity week

Сохранение SQL в файл

trisigma sl compile --source action_returned --output generated_events.sql

CLI сохранит сгенерированный SQL в файл generated_events.sql и покажет сообщение об успешном сохранении.

Режим мониторинга (watch)

Автоматически перекомпилирует SQL при изменении файлов:

trisigma sl compile --source action_returned --watch

cli_compile_watch.png

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

!!! tip "Полезно для отладки" Режим watch очень удобен при разработке: редактируешь SQL-файл в редакторе, сохраняешь. CLI автоматически проверяет синтаксис и генерирует результат!

Остановка режима watch:

Нажми Ctrl+C для выхода из режима мониторинга.

Просмотр списков

Список источников

trisigma sl list-sources

CLI покажет таблицу всех источников с колонками: Название, Описание, Таблица. Внизу отображается общее количество источников.

Фильтрация:

# Поиск по названию \{#poisk-po-nazvaniyu}
trisigma sl list-sources | grep user

Список дименшенов

trisigma sl list-dimensions

CLI покажет таблицу всех дименшенов с колонками: Название, Описание, Тип. Внизу отображается общее количество дименшенов.

Список метрик

trisigma sl list-metrics

CLI покажет таблицу всех метрик с колонками: Название, Описание, Тип, Источник. Внизу отображается общее количество метрик.

Git Workflow

CLI предоставляет удобные команды для работы с Git.

Статус рабочего процесса

trisigma sl status

cli_sl_status.png

CLI покажет текущую ветку и номер задачи, таблицу незакоммиченных изменений (статус и файл), а также историю последних коммитов с автором и датой.

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

trisigma sl task AB-1234 "Добавление новой метрики"

Что происходит:

  1. CLI проверяет что нет незакоммиченных изменений
  2. Создает ветку feature/AB-1234-dobavlenie-novoj-metriki от master
  3. Переключается на эту ветку

CLI покажет название созданной ветки и подсказку о следующих шагах.

Параметры:

ПараметрОписаниеОбязательный
task_idНомер задачи (например, AB-1234)Да
descriptionОписание задачиДа

Сохранение изменений

trisigma sl save -m "Добавил метрику revenue"

Что происходит:

  1. CLI добавляет все измененные файлы (кроме игнорируемых)
  2. Создает коммит с указанным сообщением
  3. Автоматически добавляет номер задачи из названия ветки

CLI покажет таблицу измененных файлов, хеш коммита, номер задачи и подсказку о публикации.

Параметры:

ПараметрКороткая формаОписаниеОбязательный
--message-mСообщение коммитаДа
--task-tНомер задачи (если не извлекается из ветки)Нет

Указание номера задачи вручную:

trisigma sl save -m "Описание" --task AB-5678

Публикация изменений

trisigma sl publish

Что происходит:

  1. CLI проверяет что нет незакоммиченных изменений
  2. Показывает сводку по ветке
  3. Запрашивает подтверждение
  4. Отправляет ветку на сервер
  5. Генерирует ссылку для создания Pull Request
  6. Предлагает открыть ссылку в браузере

CLI покажет таблицу со сводкой (количество измененных файлов, добавленных/удаленных строк), историю коммитов, запросит подтверждение и после публикации выведет ссылку для создания PR с возможностью открыть её в браузере.

Параметры:

ПараметрКороткая формаОписаниеОбязательный
--yes-yПропустить подтверждениеНет
--no-openНе открывать браузерНет

Автоматическая публикация без подтверждения:

trisigma sl publish --yes --no-open

Управление CLI

Обновление токена авторизации

Если токен истек или нужно переавторизоваться:

trisigma login

Процесс аналогичен первоначальной авторизации: CLI откроет браузер для OAuth.

Обновление CLI

trisigma self-update

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

Просмотр конфигурации

trisigma config --show

CLI покажет все текущие настройки: путь к репозиторию, API URL, backend URL и токен (частично скрыт для безопасности).

Использование в скриптах

CLI возвращает код выхода:

  1. 0. успех
  2. 1. ошибка

Пример скрипта:

#!/bin/bash

# Валидация перед коммитом \{#validatsiya-pered-kommitom}
if trisigma sl validate; then
echo "✓ Валидация прошла"
trisigma sl save -m "Auto commit"
trisigma sl publish --yes
else
echo "✗ Валидация не прошла"
exit 1
fi

Комбинирование с другими инструментами

С grep

trisigma sl list-sources | grep user

С watch (Unix утилита)

# Автоматически валидировать каждые 5 секунд \{#avtomaticheski-validirovat-kazhdye-5-sekund}
watch -n 5 trisigma sl validate

Сохранение вывода в файл

# Сохранить список источников \{#sohranit-spisok-istochnikov}
trisigma sl list-sources > sources.txt

# Сохранить результат валидации \{#sohranit-rezul-tat-validatsii}
trisigma sl validate > validation_result.txt 2>&1

Пайплайны

# Валидация и компиляция \{#validatsiya-i-kompilyatsiya}
trisigma sl validate && trisigma sl compile --source action_returned

Алиасы для частых команд

Добавь в ~/.zshrc или ~/.bashrc:

# Короткие алиасы для Trisigma CLI \{#korotkie-aliasy-dlya-trisigma-cli}
alias tsv='trisigma sl validate'
alias tsc='trisigma sl compile'
alias tss='trisigma sl status'
alias tsl='trisigma' # интерактивный режим

Теперь можно просто:

tsv              # вместо trisigma sl validate
tsc --source events # вместо trisigma sl compile --source action_returned

Что дальше?

Изучи практические сценарии использования CLI:

Практические сценарии | Назад к содержанию