Sur cette page : initialisation · gabarits flows · isolation des répertoires · annulation · FAQ
Croisez CrewAI, Instructor, LiteLLM et retries JSON pour un même récit ports et jetons.
Ruptures fréquentes
- Lignée perdue : la racine est annulée alors que des boucles HTTP enfants poursuivent sans
parent_task_iddans les journaux. - Répertoires partagés : deux dépôts réutilisent le même arbre maison et lisent un JSON d’identité agent dans le désordre après rotation.
- Dérive opérateur : aucun export JSON horodaté n’est conservé ; l’astreinte se rabat sur des captures d’écran non grepables.
Matrice de décision
| Sujet | Liste plate | Parent-enfant | Mac distant |
|---|---|---|---|
| Inventaire | liste plate opaque | parent_task_id + corrélation |
SSH : ids aussi sur disque |
| Annulation | racine tuée → orphelins | feuilles puis parents ; pgrep |
même user launchd et shell |
| Identité | home global | profil 0700 par dépôt | chemins absolus stables |
| Artefacts | logs + secrets mélangés | scratch ≠ config |
gros caches → scratch rapide |
Objectif plateforme : chaque graphe agentique publie la même lignée dans Task Brain, les journaux passerelle et les tickets sans improvisation shell. Sur Mac distant, cette discipline coûte moins cher qu’un week-end à traquer des zombies nés d’un cancel racine trop hâtif ou d’un profil importé par erreur depuis une autre équipe.
Initialisation
Exportez OPENCLAW_PROFILE par dépôt et OPENCLAW_HOME vers ~/openclaw-profiles/<slug>. Créez config, scratch, logs, lancez openclaw doctor --json, archivez le couple dans le coffre CI. Alignez la passerelle locale sur LiteLLM pour un port unique.
Sessions parallèles : épinglez le profil dans le shell ou tmux ; un cd vers un autre dépôt ne doit pas emporter d’exports fantômes sous peine de casser la lignée avant fan-out.
Opérations flows : gabarits de commandes
Les verbes évoluent selon les versions ; l’intention reste stable. Remplacez les drapeaux selon votre build ; ne collez jamais de jetons dans un dépôt.
openclaw flows tasks list --profile "${OPENCLAW_PROFILE}" --format json > "${OPENCLAW_HOME}/scratch/tasks-$(date +%Y%m%d-%H%M).json"
openclaw flows tasks tree --parent TASK_PARENT_ID --profile "${OPENCLAW_PROFILE}"
openclaw flows events tail --profile "${OPENCLAW_PROFILE}" --limit 40 > "${OPENCLAW_HOME}/scratch/events.txt"Enchaînez list, tree, tail avant annulation ; horodatez scratch pour l’audit.
Isolation des répertoires
Jetons sous config/*.token en 0600 ; JSON d’identité à côté ; stdout verbeux → scratch seulement. Pas de symlink dépôt → home partagé ; utilisez .openclaw-local. Voir Haystack et vLLM pour caches jetables.
Documentez chemins absolus dans le runbook post-reboot pour éviter les écritures croisées entre profils.
Annulation et gestion des échecs
Annulez d’abord les enfants (sockets, shells), état terminal, puis parents. Comparez pgrep -fl openclaw au tail : curl détaché survit sans groupe ni pkill filtré par corrélation.
openclaw flows tasks cancel --task CHILD_ID --profile "${OPENCLAW_PROFILE}" --reason disjoncteur-ouvert
openclaw flows tasks cancel --task PARENT_ID --profile "${OPENCLAW_PROFILE}" --reason file-vide
openclaw flows tasks list --profile "${OPENCLAW_PROFILE}" --state runningAnnulation idempotente si disjoncteur amont ; journalisez --reason.
Checklist incident (reproductible)
- Vérifier le profil actif ;
openclaw doctor --jsonvert. - Instantané list/tree/events vers scratch horodaté.
- Annoter les paires parent-enfant depuis la sortie tree.
- Annuler les feuilles, contrôler les processus, annuler les parents.
- Relister l’état running jusqu’à vide ou jusqu’aux seuls démons attendus.
- Reporter les identifiants de corrélation dans le pied de ticket ops.
Repères opposables
- Un profil par projet supprime les surprises de rotation sur hôte partagé.
- Identifiant parent sur chaque fan-out aligne exports Task Brain et journaux passerelle.
- Scratch isolé du config évite que les sauvegardes aspirateurs n’avalent les jetons avec les journaux.
- Annulation enfant d’abord plus pgrep reste la garde minimale lorsque coexistent HTTP et shell.
FAQ
Workers après parent ? Jobs détachés : grepez la corrélation, tuez PID résiduels.
Preuve d’isolation ? Arbres distincts, modes, jetons + schémas retries pour borner scratch.
CI ? Mêmes exports que prod, vault, validation manuelle si verbes changent.
Verbes différents ? Versionnez openclaw flows --help ; gabarits = intention.
Parcours sans connexion : prolongez sur le blog technique OpenClaw et agents, le centre d’aide, les pages tarifs et achat — accessibles sans authentification.
Résumé : profils distincts, gabarits flows documentés, répertoires d’identité étanches, annulation ordonnée avec contrôle processus et exports JSON — le Task Brain reste digne de confiance sur Mac distant longue durée.