Zielgruppe: Entwickler, die OpenClaw und große Modell-Pulls auf einem Remote Mac betreiben (geteilter CI-Runner oder dediziertes Gateway). Kernbegriffe: OpenClaw, Remote Mac, Modell-Cache, Bereinigungsstrategie, Automation. Dieses HowTo ergänzt KI-/Pull-Beschleunigung auf dem Mac, Gateway-Healthcheck & LaunchAgent und die Cache-Strategie für Git/npm-CI. Alle Artikel im Technik-Blog sowie die Hilfe & Einstieg sind ohne Login lesbar.

Voraussetzungen und Umgebungs-Partitionierung

Legen Sie einen Dienst- oder Build-Benutzer fest (kein wechselndes interaktives Login), damit launchd-Umgebung und Dateirechte über SSH-Sessions hinweg identisch bleiben. Trennen Sie gedanklich zwei Ebenen: ein Hot-Tier auf schneller interner NVMe (niedrige Latenz für kleine Shard-Reads) und ein Warm-Tier auf zweitem Volume, USB4/TB-Platte oder Netz-Mount für Archiv-Gewichte. Dokumentieren Sie jede Umgebungsvariable, die Ihr OpenClaw-Stack liest – typisch ein Home-Konfigverzeichnis plus Hersteller-Caches (Hugging Face, Ollama, llama.cpp). Gleichen Sie die Namen mit dem Installations- und Fehler-Leitfaden ab, damit Kolleginnen und Kollegen dieselbe Verzeichnisstruktur reproduzieren.

Installation / Konfiguration – Kurzablauf:

  1. Node 22+ und OpenClaw-Version pinnen; in internem Runbook festhalten.
  2. mkdir -p ~/Library/Logs/OpenClawCache und Rechte 755 für den Dienstbenutzer setzen.
  3. HF_HOME, OLLAMA_MODELS oder Äquivalente in EnvironmentVariables der LaunchAgent-Plist – keine Secrets ins Repository.
  4. diskutil apfs list und stabile /Volumes/…-Namen prüfen (keine flüchtigen „Untitled“-Labels nach Reboot).

Tragen Sie OPENCLAW_HOME oder projektspezifische Pfade in dasselbe Runbook ein wie Gateway-Bindung und Token-Rotation (siehe Deployment-Überblick). Für externe SSDs: Volume-Namen in der Festplattendienstprogramm-Oberfläche eindeutig setzen; bei Scripting diskutil info mit UUID notieren, damit Mount-Reihenfolge nach Neustart nicht Ihre Symlink-Ziele verschiebt.

Cache-Pfade und Schichtungskonzept

Wählen Sie einen kanonischen Pfad, den alle Jobs und Skripte nutzen (z. B. ~/.openclaw/cache/models). Die echten Blobs liegen unter tier-spezifischen Wurzeln wie /Volumes/FastSSD/oc-models und /Volumes/BulkDisk/oc-models-archiv. Ersetzen Sie das kanonische Verzeichnis durch einen Symlink auf das Hot-Tier, damit CI keine Mount-Buchstaben hardcodiert.

# Beispiel: kanonischer Pfad zeigt auf schnelles Tier (OpenClaw-Jobs zuerst stoppen)
mkdir -p "/Volumes/FastSSD/oc-models"
rm -rf "$HOME/.openclaw/cache/models"   # vorher sichern, falls echtes Verzeichnis
ln -s "/Volumes/FastSSD/oc-models" "$HOME/.openclaw/cache/models"
readlink -f "$HOME/.openclaw/cache/models"

Promotion vom Warm- zum Hot-Tier mit rsync -a --partial --inplace oder atomarem mv innerhalb desselben APFS-Volumes. Demotion seltener Gewichte umgekehrt – vorher Prüfsummen oder Manifeste sichern.

Entscheidung Hot-Tier (intern) Warm-Tier (extern / Bulk)
Latenz-Ziel < 5 ms Lese-p95 für kleine Shards Best effort; OK für seltene Pulls
Symlink am kanonischen Pfad Standard für aktive Runway-Modelle Nur wenn Hot voll – sekundärer Symlink
Geteilter Runner Pro Mandant Symlink, falls Multi-Tenant Geeignet für org-weiten Read-only-Spiegel

Checkliste Cache-Verzeichnisstruktur

  • Symlink existiert nach Kaltstart; CI-Preflight führt readlink -f aus.
  • Tmp-/Download-Verzeichnisse liegen auf demselben Volume wie Ziel-Blobs (kein Cross-Device-rename).
  • Manifest oder Lockfile nennt Versions-Pins – Cleanup-Skripte an diese Dateinamen koppeln.
  • Inode-lastige Bäume (viele kleine Dateien) separat von wenigen Multi-GB-Gewichten dokumentieren.

Geplante Bereinigung und Log-Rotation

Löschen Sie nicht blind, solange OpenClaw mmap-Handles hält. Nutzen Sie ein Aufräum-Fenster, wenn CI ruhig ist – typisch 02:00–04:00 Ortszeit auf Remote-Mac-Pools. Auf macOS empfiehlt sich ein Benutzer-LaunchAgent mit StartCalendarInterval (Stunde + Minute) statt crontab, sofern Sie nicht ohnehin Linux-kompatibles Scheduling pflegen; LaunchAgents erben die GUI-Session des Users und sind pro Tenant leichter auditierbar.

Scheduler Ideal für Vorsicht
LaunchAgent + StartCalendarInterval Pro-User-Mac-Runner, Keychain-Zugriff Doppelte Plists bei parallelen Admins
crontab Legacy-Parität zu Linux-Dokumentation Anderer PATH, keine GUI-Session, Rechte-Drift
CI-gesteuertes SSH-Skript Zentrale Policy aus Git Backoff, wenn Runner Zeitzonen überlappen

Zur Log-Rotation: schreiben Sie datierte Dateien unter ~/Library/Logs/OpenClawCache/ und ergänzen Sie einen Eintrag unter /etc/newsyslog.d/ oder eine wöchentliche gzip-Runde in derselben Plist. Mindestens sieben Tage Cleanup-stdout aufbewahren, um plötzliche Cache-Misses zu erklären.

#!/bin/bash
set -euo pipefail
find "$HOME/.openclaw/cache/tmp" -type f -mtime +3 -delete
find "$HOME/.openclaw/cache/tmp" -type d -empty -delete

Hinweis: optional vorher mit pgrep -f openclaw oder Job-Lock prüfen, ob gerade geschrieben wird; bei Bedarf Skript mit flock absichern.

Typische Startkalender-Intervalle: Hour = 2, Minute = 15 für ein einmaliges Nachtfenster; für wöchentliche Tiefreinigung zusätzlich Weekday setzen. Nach launchctl bootstrap gui/$(id -u) ~/Library/LaunchAgents/de.macpull.openclaw-cache-cleanup.plist immer launchctl print gui/$(id -u)/de.macpull.openclaw-cache-cleanup prüfen – ein Tippfehler im Label verhindert stilles Nicht-Laufen. Teams über mehrere Zeitzonen: entweder UTC in der Plist vereinbaren oder ein zentrales SSH-Skript aus der CI auslösen, damit sich Fenster nicht überlappen.

Häufige Fehler beim ersten Lauf

  • Operation not permitted — Full-Disk-Access oder Dateischutz für den Dienstbenutzer prüfen.
  • Script exit 127 — Shebang und PATH in der Plist explizit setzen (/bin/bash voll qualifiziert).
  • Leere LogsStandardOutPath/StandardErrorPath auf ein beschreibbares Verzeichnis zeigen, vorher mkdir.

Quotas und Festplatten-Wasserstands-Schwellen

Kombinieren Sie Quota-Ideen mit einfachem df-Parsing in einem Patrol-Skript. Praktische Entscheidungsmatrix für geteilte Apple-Silicon-Runner (2026):

Auslastung Aktion Alarmkanal
≥ 80 % Benachrichtigen; Cleanup im nächsten Fenster planen Slack/Webhook INFO
≥ 85 % Neue experimentelle Modell-Pulls blockieren Pager WARNING
≥ 90 % LRU auf Temp + Demotion ins Warm-Tier Pager CRITICAL

Unterstützt der Host Volumen-Quotas, setzen Sie Soft-Limits knapp unter der Marketing-Kapazität, damit APFS-Snapshots nicht überraschen. Immer df -h und df -i prüfen: Inode-Erschöpfung wirkt wie „Platte voll“, lässt sich aber nicht durch Löschen einer einzelnen 200-GB-Datei beheben.

Fehler, Retry und Fehlersuche

Hüllen Sie Downloads in begrenzten exponentiellen Backoff (z. B. 5 s, 15 s, 45 s) mit Jitter ein, damit eine Flotte von Macs keinen Mirror flattiert. Typische Symptome und Maßnahmen:

  • ENOSPC / „No space left“ — Zielvolume des Symlinks prüfen, nicht nur $HOME.
  • Stale file handle — externes Volume neu einhängen; APFS-Verschlüsselung-Unlock-Reihenfolge beim Boot verifizieren.
  • HTTP 429 / 5xx — Registry-Policy; Parallelität senken, Retry-After respektieren.
  • Permission deniedumask vs. Dienstbenutzer; nach macOS-Updates openclaw doctor erneut ausführen.

Gateway-Stabilität mit Fehlerbehandlung, Recovery und Retry abstimmen, damit Automation nicht gegen einen flappenden Daemon arbeitet. Sicherheitskontext: Gateway-Härtung; CI-Pre-Pull: ClawHub & Pre-Pull.

Go-Live-Abnahme-Checkliste

  • Kanonischer Symlink ist vor dem ersten Job nach Kaltstart aufgelöst.
  • Patrol-Skript druckt lesbare Auslastung und beendet mit Exit ≠ 0 bei > 90 % auf dem Fast-Tier.
  • Destructives Cleanup erst nach zwei grünen Dry-Runs; Logs mit Ticket-ID archiviert.
  • CI referenziert ausschließlich den kanonischen Pfad – keine doppelten Mount-URLs.
  • Rollback-Beschreibung: Symlink in ≤ 5 Min. zurück auf Warm-Tier oder letzte bekannte Struktur.

Zusammenfassung und nächste Schritte

Kurz gefasst: Zuverlässige OpenClaw-Modell-Pulls auf einem Remote Mac brauchen einen kanonischen Cache-Pfad, ein per Symlink angebundenes Hot-Tier, ein dokumentiertes Warm-Archiv, LaunchAgent-Aufräum-Fenster, rotierte Logs und explizite Platten-Wasserstände. Behandeln Sie die Automation wie CI: Plist versionieren, Dry-Runs testen und Netz-Retries klar von Platten-Notfällen trennen.

Ohne Login weiterlesen: MacPull-Hilfe, Preise vergleichen, Remote-Mac bestellen, den gesamten Technik-Blog sowie weitere OpenClaw-Artikel: Deployment-Leitfaden, Abhängigkeits-Sync.

Dedizierte Apple-Silicon-Knoten mit planbarem NVMe-Headroom und ruhigen Wartungsfenstern sind genau die Basis, auf der sich gestufte Caches Woche für Woche gleich verhalten.

Platz für Modell-Caches auf Remote-Mac?

Mac Mini mit schneller NVMe und stabilem SSH – Preise, Kauf und Anleitungen ohne Anmeldung.