CLI

Скрипты

Управляйте CLI из shell-скриптов, CI и кодинг-агентов с выводом JSON, стабильными кодами выхода и без запросов ввода.

CLI создан для управления из shell-скриптов, CI-заданий и кодинг-агентов. Данные идут в stdout, всё остальное в stderr, коды выхода стабильны, и каждый запрос ввода можно выключить.

Вывод

Вывод текстовый, когда stdout является терминалом, и JSON, когда он передаётся по конвейеру или перенаправлен; принудительно задайте формат флагом --output json или --output text, переменной POLYLANE_OUTPUT или файлом конфигурации, в таком порядке приоритета. stdout несёт только данные, будь то JSON, строки таблицы или потоковые токены, так что его безопасно передавать по конвейеру. stderr несёт спиннеры, прогресс, подсказки и ошибки, а в режиме JSON ошибка приходит объектом с code, message и hint, где code совпадает с кодом выхода.

Флаги для скриптов

ФлагОписание
--output jsonПринудительный JSON независимо от состояния терминала
--quietПодавляет спиннеры и прогресс; stdout остаётся чистыми данными
--non-interactiveБыстро завершаться с ошибкой при отсутствии ввода вместо запроса
--yesПропускать подтверждение на разрушительных командах
--dry-runПоказать, что произойдёт, не внося изменений
--fullВозвращать полные объекты в командах списка вместо узкой проекции полей
--api-key <key>Переопределить сохранённый API-ключ для одного вызова
--workspace <id>Переопределить рабочее пространство по умолчанию для одного вызова

С --non-interactive команда polylane cloud disconnect отказывается выполняться, если вы не передали также --yes, тогда как другие подтверждения, например у polylane memory delete, пропускаются, поэтому передавайте --yes явно, чтобы намерение было понятным. POLYLANE_API_KEY и POLYLANE_WORKSPACE_ID задают учётные данные и рабочее пространство из окружения, что подходит для CI; см. Аутентификация.

Коды выхода

КодОписание
0Успех
1Общая ошибка
2Ошибка использования: неверный флаг, отсутствующий аргумент
3Ошибка аутентификации
4Ограничение частоты или требуется повышение плана
5Тайм-аут
6Сетевая ошибка
130Прервано по Ctrl-C

Сначала ветвитесь по коду выхода, чтобы решить, повторять ли попытку, переаутентифицироваться или показать сбой, затем разбирайте объект ошибки в stderr за подробностями.

Пример

Terminal
polylane issue list --active --severity critical --output json --quiet \
  | jq -r '.items[] | "\(.id)\t\(.title)"'

polylane issue list возвращает объект с items и count, а каждый элемент проецируется на id, severity, status, title, resourceKind, resourceId, detectedAt и investigationThreadId; --full возвращает полные объекты. Жизненный цикл, стоящий за каждым статусом, объясняется на странице Проблемы.

См. также

  • Аутентификация: API-ключи и переменные окружения для CI.
  • Конфигурация: настройки вывода и тайм-аута и файл конфигурации.
  • Проблемы: статусы и серьёзности, которые возвращают команды issue.
  • Threads: что запускает thread ask и как развивается тред.