ActualitésMacroPerplexity lance le CLI pplx pour accéder à son Search API depuis le terminal

Perplexity lance le CLI pplx pour accéder à son Search API depuis le terminal

Auteur: MarkTechPost·

Points clés

  • pplx est un client en ligne de commande pour le Search API de Perplexity qui renvoie les résultats de recherche et le contenu de pages récupérées en JSON, plutôt que de fournir une interface de chat.
  • L’outil prend en charge deux surfaces de commande opérationnelles : la recherche web en direct et la récupération du contenu d’URL avec texte de page nettoyé.
  • Les requêtes réussies écrivent un objet JSON sur stdout, tandis que les échecs se terminent avec le code 1 et écrivent un objet d’erreur JSON sur stderr.
  • L’installation vérifie les binaires téléchargés au moyen de sommes de contrôle SHA256 et ne prend actuellement en charge que macOS Apple Silicon, Linux x86_64 et Linux arm64.
  • Les flux de travail automatisés peuvent enregistrer les résultats complets sur disque et utiliser des aperçus stdout pour réduire la sortie, mais ces aperçus nécessitent qu’un répertoire de sortie soit configuré.
Perplexity lance le CLI pplx pour accéder à son Search API depuis le terminal

Perplexity a publié pplx, un client officiel en ligne de commande pour son Search API, qui apporte dans le terminal des résultats de recherche web sourcés et du texte de pages extrait, au format JSON. Selon la documentation du projet, l’outil est conçu à la fois pour les utilisateurs humains et les agents de codage.

Le client n’est pas une interface de chat. Il ne propose ni mode conversationnel, ni sélection de modèle, ni réponses synthétisées. Il expose plutôt les fonctionnalités du Search API au moyen d’un flux de travail en ligne de commande encadré, avec un format de sortie prévisible. Cette distinction est importante pour l’automatisation : les scripts et les agents peuvent consommer les résultats de recherche et de récupération comme des données structurées, sans dépendre d’une session de navigateur ni devoir analyser une réponse de chat en langage naturel.

Deux commandes et un contrat JSON strict

pplx fournit exactement deux surfaces de commande opérationnelles. pplx search web lance une recherche web en direct, tandis que pplx content fetch récupère une URL et renvoie le texte nettoyé de la page.

Le pplx-cli Agent Skill officiel définit le contrat de sortie autour de ces commandes. Une requête réussie se termine avec le code 0 et écrit exactement un objet JSON sur stdout. Pour la recherche, la réponse prend la forme {hits: [{url, title, domain, snippet, ...}], total, saved_to?}.

Les échecs sont traités séparément. Tout échec se termine avec le code 1, laisse stdout vide et écrit un objet d’erreur JSON sur stderr sous la forme {"error":{"code","message","command","hint"?}}. Les codes d’erreur documentés incluent AUTHENTICATION, UNKNOWN_ARGUMENT, ARGUMENT_ERROR et BAD_REQUEST. L’Agent Skill précise que cette liste n’est pas exhaustive ; les appelants doivent donc bifurquer en fonction de error.code plutôt que de supposer que seuls ces codes peuvent apparaître. La séparation entre stdout et stderr suit également un schéma Unix courant, ce qui facilite, pour les processus appelants, la distinction entre les données valides et les erreurs opérationnelles.

Installation et plateformes prises en charge

L’installation est fournie via une commande shell unique qui envoie un script d’installation vers sh. Le script install.sh télécharge manifest.json depuis la dernière version publiée et en extrait le tag et la version. Il rattache ensuite tous les téléchargements restants à ce tag, explicitement afin d’éviter une concurrence avec une publication simultanée.

Le script télécharge SHA256SUMS ainsi que le binaire adapté à la plateforme, vérifie la somme de contrôle, puis installe le binaire dans ~/.local/bin/pplx. Il ne nécessite pas sudo. Un reçu est écrit dans ~/.config/pplx/pplx-receipt.json, mais seulement après l’exécution réussie du binaire installé.

La prise en charge des plateformes est limitée à trois cibles : macOS sur Apple Silicon, Linux x86_64 et Linux arm64. Les plateformes non prises en charge se terminent avec une erreur. Il n’existe pas de build Windows ni de build macOS Intel.

Budgétisation des tokens pour les flux de travail d’agents

L’une des fonctionnalités les plus orientées agents concerne la budgétisation des tokens. L’option --output-dir écrit l’ensemble complet des résultats dans un fichier JSON, tandis que --stdout-preview[=<CHARS>] tronque les longs champs de chaîne dans stdout et ajoute des marqueurs ...<truncated>.

L’Agent Skill souligne une limite importante : --stdout-preview n’a aucun effet si aucun répertoire d’enregistrement n’est également configuré. L’option ne tronque stdout que lorsque le résultat complet est enregistré via --output-dir ou $PPLX_OUTPUT_DIR. Utilisée seule, elle renvoie une sortie de taille complète, et chaque résultat peut représenter plusieurs kilo-octets.

Les résultats de recherche enregistrés sont écrits dans {dir}/web/{rand}.json, et les résultats de récupération dans {dir}/fetch/{rand}.json. Les fichiers ne sont écrits qu’après une requête réussie. La variable d’environnement PPLX_OUTPUT_DIR peut définir un répertoire par défaut pour l’espace de travail, afin d’éviter de répéter l’option de répertoire. Cette conception permet aux flux de travail automatisés de conserver des artefacts complets sur disque tout en transmettant un aperçu plus court via la fenêtre de contexte ou le flux de journalisation.

Pour la récupération de contenu, la documentation ajoute un contrôle d’exactitude plutôt qu’un contrôle de coût : les utilisateurs doivent vérifier error et is_paywall dans la sortie avant de faire confiance au contenu récupéré. L’option --html ajoute un champ raw_html récupéré en direct via le crawler, et --no-cache force une récupération en direct.

L’authentification est également pertinente pour les usages automatisés. pplx auth login est réservé aux TTY ; les agents et les environnements CI doivent donc exporter PERPLEXITY_API_KEY. La tarification du Search API est indiquée à $5.00 par 1,000 requêtes, avec une limite de 50 QPS sur chaque niveau d’utilisation.

Les sources citées par le rapport original incluent perplexityai/perplexity-cli, pplx-cli SKILL.md, api-platform-developers, la tarification de l’API Perplexity, les limites de débit et niveaux d’utilisation, ainsi que le guide de démarrage rapide du Search API.