Keyboard shortcuts

Press or to navigate between chapters

Press ? to show this help

Press Esc to hide this help

Filesystem

Le canal filesystem surveille un ou plusieurs chemins et injecte chaque changement dans la boucle de l’agent ou le moteur SOP. Il est conditionné par la fonctionnalité de compilation channel-filesystem (activée par défaut).

Il s’agit d’une source d’événements SOP. Pour la syntaxe des déclencheurs et la correspondance des chemins, voir SOP Fan-In: Filesystem. Cette page présente ce qui est surveillé et la portée de la sécurité.

Configuration

La liste complète des champs, dérivée du schéma live. Pour un watcher basique, vous définissez paths.

allow_broad_roots bool · default false

Surveiller les racines système étendues (/, /home, /etc, /var, /proc, /sys, /dev, /tmp) malgré le défaut deny-broad-roots. Les pseudo-systèmes de fichiers /proc et /sys exposeraient des chemins d’objets du noyau dans les charges utiles SOP et inonderaient le watcher d’événements. Désactivé sauf si explicitement activé.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/channels/filesystem et définissez le champ channels.filesystem.<alias>.allow_broad_roots.

zerocode

Dans le volet Config, définissez le champ channels.filesystem.<alias>.allow_broad_roots.

zeroclaw config

zeroclaw config set channels.filesystem.<alias>.allow_broad_roots <value>

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

export ZEROCLAW_channels__filesystem__<alias>__allow_broad_roots=
debounce_ms integer · default 500

Regrouper les événements répétés rapides par chemin/type dans cette fenêtre.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/channels/filesystem et définissez le champ channels.filesystem.<alias>.debounce_ms.

zerocode

Dans le panneau Config, définissez le champ channels.filesystem.<alias>.debounce_ms.

zeroclaw config

zeroclaw config set channels.filesystem.<alias>.debounce_ms <value>

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

export ZEROCLAW_channels__filesystem__<alias>__debounce_ms=
events string[] · default ["created","modified","deleted","renamed"]

Types d’événements à émettre (created, modified, deleted, renamed).

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/channels/filesystem et définissez le champ channels.filesystem.<alias>.events.

zerocode

Dans le volet Configuration, définissez le champ channels.filesystem.<alias>.events.

zeroclaw config

zeroclaw config set channels.filesystem.<alias>.events <value>

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

export ZEROCLAW_channels__filesystem__<alias>__events=
exclude string[] · default []

Patterns glob à exclure. Appliqués après include.`

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/channels/filesystem et définissez le champ channels.filesystem.<alias>.exclude.

zerocode

Dans le panneau Configuration, définissez le champ channels.filesystem.<alias>.exclude.

zeroclaw config

zeroclaw config set channels.filesystem.<alias>.exclude <value>

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

export ZEROCLAW_channels__filesystem__<alias>__exclude=
excluded_tools string[] · default []

Outils exclus de la spécification d’outils de ce canal.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/channels/filesystem et définissez le champ channels.filesystem.<alias>.excluded_tools.

zerocode

Dans le panneau Config, définissez le champ channels.filesystem.<alias>.excluded_tools.

zeroclaw config

zeroclaw config set channels.filesystem.<alias>.excluded_tools <value>

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

export ZEROCLAW_channels__filesystem__<alias>__excluded_tools=
follow_symlinks bool · default false

Suivre les liens symboliques lors de la lecture des métadonnées, du hachage et du contenu du chemin d’événement. Désactivé par défaut : un lien symbolique situé sous une racine surveillée est rejeté avant tout traitement des métadonnées/hachage/contenu afin que sa cible ne puisse pas sortir de la racine. Lorsqu’il est activé, la cible canonique doit toujours se résoudre à l’intérieur d’une racine configurée.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/channels/filesystem et définissez le champ channels.filesystem.<alias>.follow_symlinks.

zerocode

Dans le panneau Config, définissez le champ channels.filesystem.<alias>.follow_symlinks.

zeroclaw config

zeroclaw config set channels.filesystem.<alias>.follow_symlinks <value>

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

export ZEROCLAW_channels__filesystem__<alias>__follow_symlinks=
include string[] · default []

Modèles glob à inclure. S’il est vide, cela correspond à tous les chemins sous les racines.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/channels/filesystem et définissez le champ channels.filesystem.<alias>.include.

zerocode

Dans le volet Config, définissez le champ channels.filesystem.<alias>.include.

zeroclaw config

zeroclaw config set channels.filesystem.<alias>.include <value>

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

export ZEROCLAW_channels__filesystem__<alias>__include=
max_content_bytes integer? · default 65536

Nombre maximal d’octets de contenu de fichier admis dans un payload lors de read_content, et le plafond de taille pour le hachage. Some(n) limite les lectures et le hachage à n octets ; les fichiers dont la taille excède cette limite sont ignorés plutôt que tronqués. None supprime le plafond entièrement (lectures sans limite). La valeur par défaut est Some(65536) (64 KiB), de sorte que cette limite s’applique par défaut chaque fois que read_content ou le hachage s’exécute.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/channels/filesystem et définissez le champ channels.filesystem.<alias>.max_content_bytes.

zerocode

Dans le panneau Config, définissez le champ `channels.filesystem.<alias>.max_content_bytes`.`

zeroclaw config

zeroclaw config set channels.filesystem.<alias>.max_content_bytes <value>

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

export ZEROCLAW_channels__filesystem__<alias>__max_content_bytes=
paths string[] · default []

Chemins racines à surveiller. Au moins un est requis.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/channels/filesystem et définissez le champ channels.filesystem.<alias>.paths.

zerocode

Dans le panneau Config, définissez le champ `channels.filesystem.<alias>.paths`.

zeroclaw config

zeroclaw config set channels.filesystem.<alias>.paths <value>

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

export ZEROCLAW_channels__filesystem__<alias>__paths=
read_content bool · default false

Lire le contenu du fichier dans la charge utile de l’événement. Opt-in.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/channels/filesystem et définissez le champ channels.filesystem.<alias>.read_content.

zerocode

Dans le panneau Config, définissez le champ channels.filesystem.<alias>.read_content.

zeroclaw config

zeroclaw config set channels.filesystem.<alias>.read_content <value>

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

export ZEROCLAW_channels__filesystem__<alias>__read_content=
recursive bool · default true

Surveiller les chemins imbriqués sous chaque racine.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/channels/filesystem et définissez le champ channels.filesystem.<alias>.recursive.

zerocode

Dans le panneau Config, définissez le champ channels.filesystem.<alias>.recursive.

zeroclaw config

zeroclaw config set channels.filesystem.<alias>.recursive <value>

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

export ZEROCLAW_channels__filesystem__<alias>__recursive=
settle_ms integer · default 250

Attendre aussi longtemps après le dernier événement avant de lire les métadonnées ou le contenu, pour laisser le temps aux écritures atomiques et aux copies lentes de se terminer.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/channels/filesystem et définissez le champ channels.filesystem.<alias>.settle_ms.

zerocode

Dans le volet Config, définissez le champ channels.filesystem.<alias>.settle_ms.

zeroclaw config

zeroclaw config set channels.filesystem.<alias>.settle_ms <value>

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

export ZEROCLAW_channels__filesystem__<alias>__settle_ms=

Référence complète des champs : référence de configuration.

Définir le périmètre de ce qui est surveillé

paths liste les racines à surveiller ; recursive contrôle si les sous-répertoires sont inclus. Les globs include et exclude restreignent les chemins qui émettent des événements, et events restreint par type de changement. debounce_ms et settle_ms regroupent les rafales de changements rapides en un seul événement stabilisé.

Sécurité

Les racines système larges /, /home, /etc, /var, /proc, /sys, /dev et /tmp sont rejetées lors de la validation de la configuration sauf si allow_broad_roots est défini. Les chemins d’événements de liens symboliques sont rejetés par défaut avant toute lecture de métadonnées, de hachage ou de contenu ; follow_symlinks active l’option mais exige toujours que la cible canonique se résolve à l’intérieur d’une racine surveillée.

Dépannage

SymptômeCause probableCorriger
L’écouteur ne démarre pasune racine large a été rejetée lors de la validationRestreignez paths en les éloignant des racines larges, ou définissez allow_broad_roots
Changement ignoréexclu par le glob, ou en dehors des kinds eventsVérifier include, exclude et events par rapport au fichier modifié
SOP ne démarre pasle glob path du déclencheur ne correspond pasVérifiez que le trigger path correspond et que le fichier est dans le scope de surveillance

Voir aussi