Plugin reference

Remplacements d’installation des Plugins

Les substitutions d’installation de Plugin permettent aux mainteneurs d’utiliser, pour les installations de plugins lors de la configuration, un paquet npm spécifique ou une archive locale produite par npm pack, à la place de la source du catalogue, intégrée ou npm par défaut. Elles sont destinées uniquement aux tests E2E et à la validation des paquets ; les utilisateurs ordinaires installent les plugins avec openclaw plugins install.

Environnement

Les substitutions sont désactivées sauf si les deux variables sont définies :

bash
export OPENCLAW_ALLOW_PLUGIN_INSTALL_OVERRIDES=1export OPENCLAW_PLUGIN_INSTALL_OVERRIDES='{  "codex": "npm-pack:/tmp/openclaw-codex-2026.5.8.tgz",  "openclaw-web-search": "npm:@openclaw/web-search@2026.5.8"}'

La table de substitutions est un objet JSON dont les clés sont les identifiants de plugins. Les valeurs prennent en charge :

Préfixe Source
npm:<registry-spec> Paquets du registre, versions exactes ou balises
npm-pack:<path.tgz> Archives locales produites par npm pack ; les chemins relatifs sont résolus depuis le répertoire de travail actuel

Comportement

Lorsqu’un flux de configuration installe un plugin dont l’identifiant figure dans la table, OpenClaw utilise la source de substitution à la place de la source du catalogue, intégrée ou npm par défaut. Cela s’applique à l’intégration initiale et à tout autre flux utilisant le programme d’installation partagé des plugins lors de la configuration.

  • Les substitutions imposent toujours l’identifiant de plugin attendu : une archive associée à codex doit installer un plugin dont l’identifiant de manifeste est codex.
  • Les substitutions n’héritent pas du statut de source officielle approuvée. Même lorsque l’entrée du catalogue représente normalement un paquet appartenant à OpenClaw, une substitution est traitée comme une donnée de test fournie par l’opérateur.
  • Les fichiers .env de l’espace de travail ne peuvent pas activer les substitutions d’installation ; les deux variables d’environnement figurent dans la liste des variables dotenv bloquées pour l’espace de travail. Définissez-les dans l’interpréteur de commandes approuvé, la tâche d’intégration continue ou la commande de test distante qui lance OpenClaw.

Tests E2E des paquets

Utilisez un répertoire d’état isolé afin que les installations de paquets et les enregistrements d’installation ne modifient pas votre état OpenClaw habituel :

bash
npm pack extensions/codex --pack-destination /tmp OPENCLAW_STATE_DIR="$(mktemp -d)" \OPENCLAW_ALLOW_PLUGIN_INSTALL_OVERRIDES=1 \OPENCLAW_PLUGIN_INSTALL_OVERRIDES='{"codex":"npm-pack:/tmp/openclaw-codex-2026.5.8.tgz"}' \pnpm openclaw onboard --mode local

Vérifiez le paquet installé dans le répertoire d’état :

bash
find "$OPENCLAW_STATE_DIR/npm/projects" -path '*/node_modules/@openclaw/codex/package.json' -printgrep -R '"@openclaw/codex"' "$OPENCLAW_STATE_DIR/npm/projects"/*/package-lock.json

Pour les tests E2E avec un fournisseur réel, chargez la véritable clé d’API depuis un interpréteur de commandes approuvé ou un secret d’intégration continue avant de lancer la commande de test. N’affichez pas les clés ; indiquez uniquement la source et si la clé était présente.

Was this useful?
On this page

On this page