Ergänzend: CrewAI-Gateway, Instructor JSON Schema, LangGraph, IDE-Bridge — damit Ports, Token und Task-Exporte zusammenpassen.
Typische Bruchstellen
- Verlorene Abstammung: Stamm-Flow bricht weg, während HTTP-Retries ohne konsistente
parent_task_idweiterlaufen. - Geteilte Homes: zwei Repositories lesen rotierte Agent-Identitäts-JSON aus demselben Baum und rufen Audit-Trails auf.
- Operativer Drift: niemand archiviert strukturierte JSON-Exports; Störungen enden in Screenshots statt reproduzierbarer grep-Ketten.
Entscheidungsmatrix
| Thema | Flache Liste | Eltern-Kind-Tracing | Hinweis Remote-Mac |
|---|---|---|---|
| Inventur | Schneller Überblick verbirgt Tiefe | Kindzeilen tragen parent_task_id plus Korrelations-ID |
Mehrere SSH-Sessions verdoppeln Shells — IDs gehören auch in Textlogs |
| Abbruch | Root-Kill hinterlässt oft Waisen | Blätter zuerst, dann Eltern; mit pgrep abgleichen |
Gleicher OS-User für launchd und manuelle Tests vermeidet Profil-Verzerrung |
| Identität | ein globales Verzeichnis | Profilunterbaum je Projekt mit Modus 0700 | langlebige Hosts halten absolute Pfade nach Reboot stabil |
| Artefakte | Logs vermischen sich mit Secrets | scratch getrennt von config |
große Caches nur unter scratch auf schneller SSD |
Sicherheits- und Betriebsparameter
| Kontrollpunkt | Empfohlener Nachweis | Risiko ohne Messung |
|---|---|---|
| Profilgrenze | getrennte OPENCLAW_HOME-Bäume je Repo-Slug |
überraschende Token-Rotation oder Querlesen |
| Tracing | identische Korrelationsfelder in Gateway- und Flow-Exports | unvollständige Stornierungsketten |
| Abbruchreihenfolge | Kinder zuerst bis terminaler Status, dann Eltern | Netzwerk- und Hintergrundprozesse bleiben aktiv |
| Dateirechte | 0600 für Token-Dateien, 0700 für Profilwurzel | Backups saugen Klartext mit an |
| Gateway-Kohärenz | ein kanonisches Loopback-Bind-Protokoll dokumentieren | zufällige Port-Kollisionen zwischen Teams |
| Verifikation | openclaw doctor --json nach jeder Profiländerung |
stille Konfigurationabweichung über Wochen |
Initialisierung
Exportieren Sie OPENCLAW_PROFILE je Repo-Slug und OPENCLAW_HOME nach ~/openclaw-profiles/<slug>, legen Sie config, scratch, logs an und führen Sie openclaw doctor --json aus; Profilnamen spiegeln in CI und Runbooks. Loopback-Binds wie bei LiteLLM-Routing dokumentieren, damit Health-curl, Doctor und Task-JSON dieselbe Portlinie teilen.
Parallel-SSH: Profil in Shell- oder tmux-Snippet pinnen, damit ein cd kein fremdes Profil übernimmt.
Flows-Betrieb: Befehlsbeispiele als Platzhalter
Verbennamen ändern sich; Runbooks fassen Absicht, Flags passen Sie der installierten Version an. Keine Tokens in Git.
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"Vor Abbruch immer list, tree, tail; Zeitstempel im Dateinamen sichern Forensik.
Verzeichnisisolation
Tokens und Agent-JSON unter ${OPENCLAW_HOME}/config mit 0600; Bulk-Logs nur unter scratch. Keine Symlinks aus Repos in fremde Homes — Stub .openclaw-local aufs Profil zeigen lassen. Muster wie Haystack und vLLM: Secrets lesen, Caches verwerfen.
Fehler, Abbruch und Waisenprozess-Vermeidung
Kinder mit Sockets oder Shells zuerst beenden, terminalen Status abwarten, dann Eltern. pgrep -fl openclaw und pgrep -fl curl gegen gespeicherte Korrelations-Substringe halten. Detachierte curl-Schleifen brauchen Prozessgruppen oder gezielte Filter statt breitem pkill.
openclaw flows tasks cancel --task CHILD_ID --profile "${OPENCLAW_PROFILE}" --reason breaker-open
openclaw flows tasks cancel --task PARENT_ID --profile "${OPENCLAW_PROFILE}" --reason drained
openclaw flows tasks list --profile "${OPENCLAW_PROFILE}" --state runningBei flatternden Breakern idempotente Abbrüche wiederholen; Reason-Strings im Ticket festhalten.
Schrittkurzliste für den Operateur
- Profil exportiert;
openclaw doctor --jsonohne Warnstufen in der Abnahmeumgebung. - Tasks und Events als datierte JSON- bzw. Textdateien nach
scratchsichern. - Eltern-Kind-Paare aus Baumansicht extrahieren und in der Watchliste markieren.
- Blattaufgaben abbrechen, kurz warten, Prozessliste verifizieren, dann Eltern stufenweise entfernen.
- Laufende Tasks erneut listen, bis nur harmlosen Dämonen übrig bleiben.
- Korrelations-IDs im Ticket-Footer; optional JSON-Schema-Retries.
Zitierbare Leitplanken
- Ein Profil je Projekt verhindert Überraschungen bei Rotation und teilt nie private Schlüsselbäume.
- Parent-IDs in jedem Fan-out alignen Task-Exports mit Gateway-Logs und erleichtern forensische Joins.
- Scratch versus config schützt Backups davor, Klartext-Tokens mit Debug-Logs zu verheiraten.
- Kinder-vor-Eltern plus Prozesslisten ist die kleinste stabil reproduzierbare Antiwaisen-Schicht für gemischte HTTP- und Shell-Arbeit.
FAQ
Warum überleben Worker den Parent-Abbruch? Viele Jobs verlieren die steuernde TTY und detachieren sich. Suchen Sie den Korrelations-Substring aus den gespeicherten Tails und beenden Sie verbliebene Prozess-IDs gezielt nach dokumentiertem Muster.
Wie beweise ich echte Isolation? Zeigen Sie getrennte OPENCLAW_HOME-Bäume, getrennte Token-Labels, gesetzte POSIX-Modi sowie Schema-Restriktionen aus den oben verlinkten Gateway-Artikeln, damit keine Payload heimlich nach oben klettert.
Darf CI automatisch abbrechen? Nur mit identischen Exporten wie in Produktion, Secret-Inject aus dem Vault und einem manuellen Erstanlauf, sobald sich Flows-Verb-Gruppen ändern.
Weichen CLI-Subkommandos je Build ab? Archivieren Sie die Ausgabe von openclaw flows --help versionsgekoppelt im Konfigurations-Repository; Platzhalter in diesem Beitrag fassen Absichten zusammen, keine semver-starren Verträge.
Ohne Login: Hilfezentrum, Tech-Blog, Preise, Kaufen.
Kurz: Mandantenfähige Profile, dokumentierte Flows-Platzhalter, strikte Verzeichnisgrenzen mit harten Modis, sowie kinder-gestütztes Abbrechen mit anschließender Prozessverifikation halten den Task Brain auf lang laufenden Remote-Macs auditierbar.