Tools
Recherche Perplexity
OpenClaw prend en charge l’API Perplexity Search comme fournisseur web_search.
Elle renvoie des résultats structurés avec les champs title, url et snippet.
Pour la compatibilité, OpenClaw prend également en charge les configurations Perplexity Sonar/OpenRouter héritées.
Si vous utilisez OPENROUTER_API_KEY, une clé sk-or-... dans plugins.entries.perplexity.config.webSearch.apiKey, ou si vous définissez plugins.entries.perplexity.config.webSearch.baseUrl / model, le fournisseur bascule vers le chemin chat-completions et renvoie des réponses synthétisées par IA avec citations au lieu de résultats structurés de l’API Search.
Installer le Plugin
Installez le Plugin officiel, puis redémarrez Gateway :
openclaw plugins install @openclaw/perplexity-pluginopenclaw gateway restartObtenir une clé d’API Perplexity
- Créez un compte Perplexity sur perplexity.ai/settings/api
- Générez une clé d’API dans le tableau de bord
- Stockez la clé dans la configuration ou définissez
PERPLEXITY_API_KEYdans l’environnement Gateway.
Compatibilité OpenRouter
Si vous utilisiez déjà OpenRouter pour Perplexity Sonar, conservez provider: "perplexity" et définissez OPENROUTER_API_KEY dans l’environnement Gateway, ou stockez une clé sk-or-... dans plugins.entries.perplexity.config.webSearch.apiKey.
Contrôles de compatibilité facultatifs :
plugins.entries.perplexity.config.webSearch.baseUrlplugins.entries.perplexity.config.webSearch.model
Exemples de configuration
API Perplexity Search native
{ plugins: { entries: { perplexity: { config: { webSearch: { apiKey: "pplx-...", }, }, }, }, }, tools: { web: { search: { provider: "perplexity", }, }, },}Compatibilité OpenRouter / Sonar
{ plugins: { entries: { perplexity: { config: { webSearch: { apiKey: "<openrouter-api-key>", baseUrl: "https://openrouter.ai/api/v1", model: "perplexity/sonar-pro", }, }, }, }, }, tools: { web: { search: { provider: "perplexity", }, }, },}Où définir la clé
Via la configuration : exécutez openclaw configure --section web. La clé est stockée dans
~/.openclaw/openclaw.json sous plugins.entries.perplexity.config.webSearch.apiKey.
Ce champ accepte aussi les objets SecretRef.
Via l’environnement : définissez PERPLEXITY_API_KEY ou OPENROUTER_API_KEY
dans l’environnement du processus Gateway. Pour une installation de Gateway, placez-la dans
~/.openclaw/.env (ou dans l’environnement de votre service). Consultez Variables d’environnement.
Si provider: "perplexity" est configuré et que la SecretRef de la clé Perplexity n’est pas résolue sans solution de repli dans l’environnement, le démarrage/rechargement échoue rapidement.
Paramètres de l’outil
Ces paramètres s’appliquent au chemin de l’API Perplexity Search native.
querystringrequiredRequête de recherche.
countnumberdefault: 5Nombre de résultats à renvoyer (1-10).
countrystringCode pays ISO à 2 lettres (p. ex. US, DE).
languagestringCode de langue ISO 639-1 (p. ex. en, de, fr).
freshness'day' | 'week' | 'month' | 'year'Filtre temporel - day correspond à 24 heures.
date_afterstringUniquement les résultats publiés après cette date (YYYY-MM-DD).
date_beforestringUniquement les résultats publiés avant cette date (YYYY-MM-DD).
domain_filterstring[]Tableau de domaines autorisés/refusés (max. 20).
max_tokensnumberdefault: 25000Budget total de contenu (max. 1000000).
max_tokens_per_pagenumberdefault: 2048Limite de jetons par page.
Pour le chemin de compatibilité Sonar/OpenRouter hérité :
query,countetfreshnesssont acceptéscountexiste uniquement pour la compatibilité dans ce chemin ; la réponse reste une seule réponse synthétisée avec citations plutôt qu’une liste de N résultats- Les filtres propres à l’API Search comme
country,language,date_after,date_before,domain_filter,max_tokensetmax_tokens_per_pagerenvoient des erreurs explicites
Exemples :
// Country and language-specific searchawait web_search({ query: "renewable energy", country: "DE", language: "de",}); // Recent results (past week)await web_search({ query: "AI news", freshness: "week",}); // Date range searchawait web_search({ query: "AI developments", date_after: "2024-01-01", date_before: "2024-06-30",}); // Domain filtering (allowlist)await web_search({ query: "climate research", domain_filter: ["nature.com", "science.org", ".edu"],}); // Domain filtering (denylist - prefix with -)await web_search({ query: "product reviews", domain_filter: ["-reddit.com", "-pinterest.com"],}); // More content extractionawait web_search({ query: "detailed AI research", max_tokens: 50000, max_tokens_per_page: 4096,});Règles de filtre de domaine
- Maximum 20 domaines par filtre
- Impossible de mélanger liste d’autorisation et liste de refus dans une même requête
- Utilisez le préfixe
-pour les entrées de liste de refus (p. ex.["-reddit.com"])
Notes
- L’API Perplexity Search renvoie des résultats de recherche web structurés (
title,url,snippet) - OpenRouter ou
plugins.entries.perplexity.config.webSearch.baseUrl/modelexplicite fait rebasculer Perplexity vers les chat completions Sonar pour compatibilité - La compatibilité Sonar/OpenRouter renvoie une seule réponse synthétisée avec citations, pas des lignes de résultats structurées
- Les résultats sont mis en cache pendant 15 minutes par défaut (configurable via
cacheTtlMinutes)
Associés
Tous les fournisseurs et règles d’auto-détection.
Résultats structurés avec filtres de pays et de langue.
Recherche neuronale avec extraction de contenu.
Guide de démarrage rapide et référence officiels de l’API Perplexity Search.