hooks
openclaw hooks
Section intitulée « openclaw hooks »Gérer les hooks d’agent (automatisations basées sur les événements pour les commandes telles que /new, /reset et le démarrage de la passerelle).
Connexe :
- Hooks : Hooks
- Hooks de plugin : Plugin hooks
Lister tous les hooks
Section intitulée « Lister tous les hooks »openclaw hooks listLister tous les hooks découverts dans les répertoires de l’espace de travail, gérés, extra et groupés.
Options :
--eligible: Afficher uniquement les hooks éligibles (conditions remplies)--json: Sortie au format JSON-v, --verbose: Afficher des informations détaillées, y compris les conditions manquantes
Exemple de sortie :
Hooks (4/4 ready)
Ready: 🚀 boot-md ✓ - Run BOOT.md on gateway startup 📎 bootstrap-extra-files ✓ - Inject extra workspace bootstrap files during agent bootstrap 📝 command-logger ✓ - Log all command events to a centralized audit file 💾 session-memory ✓ - Save session context to memory when /new or /reset command is issuedExemple (verbose) :
openclaw hooks list --verboseAffiche les conditions manquantes pour les hooks non éligibles.
Exemple (JSON) :
openclaw hooks list --jsonRenvoie du JSON structuré pour un usage programmatique.
Obtenir les informations sur un hook
Section intitulée « Obtenir les informations sur un hook »openclaw hooks info <name>Afficher des informations détaillées sur un hook spécifique.
Arguments :
<name>: Nom du hook (p. ex.,session-memory)
Options :
--json: Sortie au format JSON
Exemple :
openclaw hooks info session-memorySortie :
💾 session-memory ✓ Ready
Save session context to memory when /new or /reset command is issued
Details: Source: openclaw-bundled Path: /path/to/openclaw/hooks/bundled/session-memory/HOOK.md Handler: /path/to/openclaw/hooks/bundled/session-memory/handler.ts Homepage: https://docs.openclaw.ai/automation/hooks#session-memory Events: command:new, command:reset
Requirements: Config: ✓ workspace.dirVérifier l’éligibilité des hooks
Section intitulée « Vérifier l’éligibilité des hooks »openclaw hooks checkAfficher un résumé de l’état d’éligibilité des hooks (combien sont prêts par rapport à ceux qui ne le sont pas).
Options :
--json: Sortie au format JSON
Exemple de sortie :
Hooks Status
Total hooks: 4Ready: 4Not ready: 0Activer un hook
Section intitulée « Activer un hook »openclaw hooks enable <name>Activer un hook spécifique en l’ajoutant à votre configuration (~/.openclaw/config.json).
Remarque : Les hooks de l’espace de travail sont désactivés par défaut jusqu’à ce qu’ils soient activés ici ou dans la configuration. Les hooks gérés par des plugins affichent plugin:<id> dans openclaw hooks list et ne peuvent pas être activés/désactivés ici. Activez/désactivez plutôt le plugin.
Arguments :
<name>: Nom du hook (p. ex.,session-memory)
Exemple :
openclaw hooks enable session-memorySortie :
✓ Enabled hook: 💾 session-memoryCe qu’il fait :
- Vérifie si le hook existe et s’il est éligible
- Met à jour
hooks.internal.entries.<name>.enabled = truedans votre configuration - Enregistre la configuration sur le disque
Si le hook provient de <workspace>/hooks/, cette étape d’acceptation est requise avant que le Gateway ne puisse le charger.
Après activation :
- Redémarrez la passerelle pour que les hooks se rechargent (redémarrage de l’application de la barre de menus sur macOS, ou redémarrez votre processus de passerelle en développement).
Désactiver un Hook
Section intitulée « Désactiver un Hook »openclaw hooks disable <name>Désactivez un hook spécifique en mettant à jour votre configuration.
Arguments :
<name>: Nom du hook (ex.command-logger)
Exemple :
openclaw hooks disable command-loggerSortie :
⏸ Disabled hook: 📝 command-loggerAprès désactivation :
- Redémarrez la passerelle pour que les hooks se rechargent
Installer des packs de hooks
Section intitulée « Installer des packs de hooks »openclaw plugins install <package> # ClawHub first, then npmopenclaw plugins install <package> --pin # pin versionopenclaw plugins install <path> # local pathInstallez des packs de hooks via l’installateur unifié de plugins.
openclaw hooks install fonctionne toujours comme un alias de compatibilité, mais il affiche un avertissement d’obsolescence et redirige vers openclaw plugins install.
Les specs npm sont uniquement de registre (nom du package + version exacte facultative ou dist-tag). Les specs Git/URL/fichier et les plages semver sont rejetées. Les installations de dépendances s’exécutent avec --ignore-scripts pour plus de sécurité.
Les specs nues et @latest restent sur la voie stable. Si npm résout l’un de ceux-ci vers une préversion, OpenClaw s’arrête et vous demande d’accepter explicitement avec une balise de préversion telle que @beta/@rc ou une version de préversion exacte.
Ce qu’il fait :
- Copie le pack de hooks dans
~/.openclaw/hooks/<id> - Active les hooks installés dans
hooks.internal.entries.* - Enregistre l’installation sous
hooks.internal.installs
Options :
-l, --link: Lier un répertoire local au lieu de le copier (l’ajoute àhooks.internal.load.extraDirs)--pin: Enregistrer les installations npm commename@versionrésolues exactes danshooks.internal.installs
Archives prises en charge : .zip, .tgz, .tar.gz, .tar
Exemples :
# Local directoryopenclaw plugins install ./my-hook-pack
# Local archiveopenclaw plugins install ./my-hook-pack.zip
# NPM packageopenclaw plugins install @openclaw/my-hook-pack
# Link a local directory without copyingopenclaw plugins install -l ./my-hook-packLes packs de hooks liés sont traités comme des hooks gérés à partir d’un répertoire configuré par l’opérateur, et non comme des hooks d’espace de travail.
Mettre à jour les packs de hooks
Section intitulée « Mettre à jour les packs de hooks »openclaw plugins update <id>openclaw plugins update --allMettre à jour les packs de hooks basés sur npm suivis via le metteur à jour unifié des plugins.
openclaw hooks update fonctionne toujours comme un alias de compatibilité, mais il imprime un avertissement d’obsolescence et redirige vers openclaw plugins update.
Options :
--all: Mettre à jour tous les packs de hooks suivis--dry-run: Afficher ce qui changerait sans écrire
Lorsqu’un hachage d’intégrité stocké existe et que le hachage de l’artefact récupéré change, OpenClaw imprime un avertissement et demande une confirmation avant de continuer. Utilisez le --yes global pour contourner les invites lors des exécutions CI/non interactives.
Hooks inclus
Section intitulée « Hooks inclus »session-memory
Section intitulée « session-memory »Enregistre le contexte de la session en mémoire lorsque vous émettez /new ou /reset.
Activer :
openclaw hooks enable session-memorySortie : ~/.openclaw/workspace/memory/YYYY-MM-DD-slug.md
Voir : documentation session-memory
bootstrap-extra-files
Section intitulée « bootstrap-extra-files »Injecte des fichiers d’amorçage supplémentaires (par exemple monorepo-local AGENTS.md / TOOLS.md) pendant agent:bootstrap.
Activer :
openclaw hooks enable bootstrap-extra-filesVoir : documentation bootstrap-extra-files
command-logger
Section intitulée « command-logger »Enregistre tous les événements de commande dans un fichier d’audit centralisé.
Activer :
openclaw hooks enable command-loggerSortie : ~/.openclaw/logs/commands.log
Voir les journaux :
# Recent commandstail -n 20 ~/.openclaw/logs/commands.log
# Pretty-printcat ~/.openclaw/logs/commands.log | jq .
# Filter by actiongrep '"action":"new"' ~/.openclaw/logs/commands.log | jq .Voir : documentation command-logger
Exécute BOOT.md lorsque la passerelle démarre (après le démarrage des canaux).
Événements : gateway:startup
Activer :
openclaw hooks enable boot-mdVoir : documentation boot-md