CLI
Официальный CLI для работы с Pachca API из терминала. Каждый API-метод доступен как команда с типизированными флагами, валидацией и интерактивными подсказками. Требуется Node.js 20 или новее.
Быстрый старт
Вход в аккаунт
Сохраните API-токен. Получить его можно в интерфейсе Пачки в разделе «Автоматизации» → «API» — подробнее в руководстве Авторизация.
Первая команда
Получите список сотрудников:
Добавьте -o json для JSON-вывода.
Отправка сообщения
Отправьте сообщение в канал или беседу:
Если не указать обязательные флаги — CLI запросит их интерактивно.
Авторизация
Профили
CLI поддерживает несколько профилей — удобно, если вы работаете с персональным токеном и токенами ботов одновременно:
Токены хранятся в ~/.config/pachca/config.toml с правами chmod 600.
Приоритет токена
При выполнении команды CLI определяет токен в следующем порядке:
- Флаг
--token— разовое использование, без сохранения - Переменная
PACHCA_TOKEN— удобно для CI - Флаг
--profileили переменнаяPACHCA_PROFILE— конкретный профиль - Активный профиль — выбранный через
pachca auth switch
Обновление скоупов
Скоупы персональных токенов кешируются навсегда — для обновления нужен повторный auth login. Скоупы токенов ботов обновляются автоматически раз в сутки. Принудительное обновление:
Команды
Паттерн всех команд: pachca [секция] [действие] [--флаги]
Имена команд совпадают с URL документации:
Все команды
Справка
Вывод
Форматы
CLI поддерживает четыре формата вывода. В интерактивном терминале (TTY) по умолчанию используется таблица, в пайпах и CI — JSON.
Колонки и заголовки
По умолчанию таблица показывает 4-5 основных полей. Выбрать конкретные колонки:
Пайпы и перенаправление
В пайпах CLI автоматически выводит JSON и отключает цвет и спиннер. Данные идут в stdout, ошибки и прогресс — в stderr.
Пагинация
Pachca использует cursor-based пагинацию. CLI предоставляет три способа навигации:
При --all CLI показывает прогресс загрузки в stderr, а финальный результат выводит в stdout единым массивом.
Сценарии
CLI включает готовые пошаговые сценарии для типичных задач. Каждый сценарий — это последовательность команд с комментариями: какой метод вызвать, какие параметры передать, на что обратить внимание. Не знаете, какую команду использовать — поищите по задаче:
Скрипты и CI
Глобальные флаги
| Флаг | Короткий | Описание |
|---|---|---|
--output <format> | -o | Формат: table, json, yaml, csv |
--columns <list> | -c | Колонки для table-вывода (через запятую) |
--profile <name> | -p | Профиль для этой команды |
--token <value> | Токен для этого вызова (без сохранения) | |
--quiet | -q | Без вывода, только exit code |
--no-input | Без интерактивных промптов | |
--dry-run | Показать запрос без отправки | |
--force | Пропустить подтверждение DELETE | |
--verbose | -v | Показать HTTP-запросы и ответы |
--timeout <sec> | Таймаут запроса в секундах (по умолчанию 30) | |
--no-color | Отключить цвета | |
--no-header | Скрыть заголовок таблицы | |
--no-truncate | Не обрезать длинные значения | |
--no-retry | Отключить авто-retry при 429/503 |
Имена флагов
Флаги CLI используют kebab-case (через дефис), а не snake_case как в API-документации — это стандартная конвенция для CLI-инструментов:
При отправке запроса CLI автоматически конвертирует имена обратно в snake_case для API. Проверить можно через --dry-run:
Boolean-флаги
Для boolean-параметров API используйте флаг для установки true и --no- префикс для false:
Предпросмотр запроса
Флаг --dry-run показывает HTTP-запрос без отправки — для отладки и проверки параметров:
Деструктивные операции
DELETE-команды требуют подтверждения в терминале. Флаг --force пропускает его:
Exit codes
| Код | Значение |
|---|---|
0 | Успех |
1 | API или runtime ошибка |
2 | Неверные флаги или аргументы |
3 | Ошибка аутентификации (401 / 403) |
4 | Ресурс не найден (404) |
Переменные окружения
| Переменная | Описание |
|---|---|
PACHCA_TOKEN | Bearer-токен (высший приоритет, удобно для CI) |
PACHCA_PROFILE | Активный профиль для команды |
PACHCA_TIMEOUT | Таймаут запроса в секундах (по умолчанию 30) |
PACHCA_PROMPT_DISABLED | Отключить интерактивные промпты (для агентов) |
CI | Автоматический неинтерактивный режим |
NO_COLOR | Отключить цвет |
FORCE_COLOR | Принудительно включить цвет |
PACHCA_SKIP_NEW_VERSION_CHECK | Отключить проверку обновлений |
Неинтерактивный режим
CLI автоматически переходит в неинтерактивный режим при любом из условий: stdin или stdout — не TTY, установлена PACHCA_PROMPT_DISABLED или CI, передан флаг --no-input. В этом режиме нет промптов, спиннера, а при пропущенных обязательных флагах — ошибка вместо запроса.
Прямые API-запросы
Команда pachca api — escape hatch для прямых HTTP-запросов без типизированных команд:
pachca api выводит сырой ответ API без извлечения данных из обёртки dataНастройки
Установите постоянные значения по умолчанию:
Настройки хранятся в ~/.config/pachca/config.toml. Флаги команды всегда имеют приоритет над настройками.
Автодополнение
CLI поддерживает автодополнение для bash, zsh и fish:
Команда выводит инструкцию по установке для выбранного шелла.
Диагностика
Команда pachca doctor проверяет окружение — Node.js, сеть, конфиг, токен и версию CLI:
Обновление
CLI автоматически проверяет наличие новой версии раз в сутки и показывает уведомление в терминале. Для обновления:
Отключить автоматическую проверку можно переменной PACHCA_SKIP_NEW_VERSION_CHECK.