НовостиМакроPerplexity выпустила CLI pplx для доступа к Search API из терминала

Perplexity выпустила CLI pplx для доступа к Search API из терминала

Автор: MarkTechPost·

Ключевые выводы

  • pplx — клиент командной строки для Search API от Perplexity, который возвращает результаты поиска и полученное содержимое страниц в JSON, а не предоставляет чат-интерфейс.
  • Инструмент поддерживает две рабочие командные поверхности: веб-поиск в реальном времени и получение содержимого URL с очищенным текстом страницы.
  • Успешные запросы записывают один JSON-объект в stdout, а ошибки завершаются с кодом 1 и записывают JSON-объект ошибки в stderr.
  • Установка проверяет загруженные бинарные файлы с помощью контрольных сумм SHA256 и в настоящее время поддерживает только macOS Apple Silicon, Linux x86_64 и Linux arm64.
  • Автоматизированные рабочие процессы могут сохранять полные результаты на диск и использовать предварительный вывод stdout для сокращенного вывода, но для preview должен быть настроен каталог вывода.
Perplexity выпустила CLI pplx для доступа к Search API из терминала

Perplexity выпустила pplx, официальный клиент командной строки для своего Search API, который выводит в терминал подтвержденные результаты веб-поиска и извлеченный текст страниц в формате JSON. Согласно документации проекта, инструмент предназначен как для пользователей, так и для кодирующих агентов.

Клиент не является чат-интерфейсом. В нем нет диалогового режима, выбора модели или синтезированных ответов. Вместо этого он предоставляет функции Search API через ограниченный рабочий процесс командной строки с предсказуемым форматом вывода. Это важно для автоматизации: скрипты и агенты могут получать результаты поиска и извлечения как структурированные данные, не завися от браузерной сессии и не разбирая ответ чата на естественном языке.

Две команды и строгий JSON-контракт

pplx предоставляет ровно две рабочие командные поверхности. pplx search web выполняет веб-поиск в реальном времени, а pplx content fetch получает URL и возвращает очищенный текст страницы.

Официальный pplx-cli Agent Skill определяет контракт вывода для этих команд. Успешный запрос завершается с кодом 0 и записывает ровно один JSON-объект в stdout. Для поиска ответ имеет форму {hits: [{url, title, domain, snippet, ...}], total, saved_to?}.

Ошибки обрабатываются отдельно. Любой сбой завершается с кодом 1, оставляет stdout пустым и записывает один JSON-объект ошибки в stderr в форме {"error":{"code","message","command","hint"?}}. Документированные коды ошибок включают AUTHENTICATION, UNKNOWN_ARGUMENT, ARGUMENT_ERROR и BAD_REQUEST. Agent Skill отмечает, что список не является исчерпывающим, поэтому вызывающим сторонам следует выполнять ветвление по error.code, а не предполагать, что появятся только эти коды. Разделение stdout и stderr также соответствует распространенному шаблону Unix, что упрощает вызывающим процессам отделение успешных данных от операционных ошибок.

Установка и поддерживаемые платформы

Установка выполняется одной shell-командой, которая передает установочный скрипт в sh. Скрипт install.sh загружает manifest.json из последнего релиза и извлекает тег и версию. Затем он привязывает все оставшиеся загрузки к этому тегу, чтобы явно избежать гонки с параллельной публикацией.

Скрипт загружает SHA256SUMS и соответствующий бинарный файл для платформы, проверяет контрольную сумму и устанавливает бинарный файл в ~/.local/bin/pplx. sudo не требуется. Квитанция записывается в ~/.config/pplx/pplx-receipt.json, но только после успешного запуска установленного бинарного файла.

Поддержка платформ ограничена тремя целями: macOS на Apple Silicon, Linux x86_64 и Linux arm64. На неподдерживаемых платформах выполнение завершается ошибкой. Сборки для Windows нет, как и сборки для Intel macOS.

Бюджетирование токенов для агентных рабочих процессов

Одна из наиболее ориентированных на агентов функций — бюджетирование токенов. Опция --output-dir записывает полный набор результатов в JSON-файл, а --stdout-preview[=<CHARS>] обрезает длинные строковые поля в stdout и добавляет маркеры ...<truncated>.

Agent Skill подчеркивает важное ограничение: --stdout-preview ничего не делает, если также не настроен каталог сохранения. Он обрезает stdout только тогда, когда полный результат сохраняется через --output-dir или $PPLX_OUTPUT_DIR. При самостоятельном использовании он возвращает вывод полного размера, а отдельные результаты могут занимать по несколько килобайт.

Сохраненные результаты поиска записываются в {dir}/web/{rand}.json, а результаты fetch — в {dir}/fetch/{rand}.json. Файлы записываются только после успешного запроса. Переменная окружения PPLX_OUTPUT_DIR может задать рабочий каталог по умолчанию, чтобы не повторять флаг каталога. Такая конструкция позволяет автоматизированным рабочим процессам сохранять полные артефакты на диске, передавая при этом более короткий предварительный вывод через контекстное окно или поток логов.

Для content fetch документация добавляет проверку корректности, а не контроль стоимости: пользователям следует проверять error и is_paywall в выводе, прежде чем доверять полученному содержимому. Опция --html добавляет поле raw_html, полученное в реальном времени через crawler, а --no-cache принудительно выполняет live fetch.

Аутентификация также важна для автоматизированного использования. pplx auth login работает только в TTY, поэтому агенты и CI-среды должны экспортировать PERPLEXITY_API_KEY. Тарификация Search API указана на уровне $5.00 за 1,000 запросов с лимитом 50 QPS на каждом уровне использования.

Среди источников, приведенных в исходном отчете: perplexityai/perplexity-cli, pplx-cli SKILL.md, api-platform-developers, тарифы Perplexity API, лимиты скорости и уровни использования и краткое руководство по Search API.