2026 OpenClaw Praxis: Auf dem Remote Mac Design-Exportordner überwachen — PNG EXIF-Orientation batchweise korrigieren und verlustfrei rotieren (reproduzierbare Schritte)

Zielgruppe: Design-Ops und Automatisierungsverantwortliche, die PNG aus Figma, Sketch, Browsern oder Fotopipelines exportieren und in manchen Viewern eine falsche Vorschau-Orientierung sehen — oft wegen eines EXIF-Orientation-Tags (häufig im PNG-eXIf-Chunk), das nie normalisiert wurde. Auf einem Remote Mac kann OpenClaw dieselben Shell-Schritte zuverlässig kapseln: Inbox beobachten, Tag lesen, bei Bedarf physisch und verlustfrei drehen, Metadaten nach Policy zurücksetzen, dann unter deterministischem Namen ausliefern. Basis-Installation: OpenClaw-Installationsleitfaden (alle Plattformen); Retry und Logs: Watch, Retry & Log-Archiv sowie PNG-CLI-Kette & Retry (M-Serie).

Inhalt

Diese Ziele ergänzen das Tutorial ohne Installations-Duplikate — nur Seiten, die im deutschsprachigen Blog bereits existieren.

Typische Risiken vor dem ersten Lauf

  1. Tag ohne Pixeländerung: Manche Pipelines wenden Orientation nur in der Vorschau an — Rohbytes bleiben gedreht; andere Tools ignorieren EXIF. Ohne explizite Lesephase rotieren Sie Layout-Assets fälschlich.
  2. Halbfertige Schreibvorgänge: Exporte landen zuerst unter temporärem Namen oder werden von Sync kurz gesperrt; der Worker startet zu früh.
  3. Spiegel-Orientierungen (2, 4, 5, 7): Marken-PNGs sind selten gespiegelt gedacht — ohne Quarantäne-Policy riskieren Sie stille Layout-Fehler.

OpenClaw & Gateway: Minimaldeployment

Halten Sie den Remote Mac bewusst schlicht: ein Dienstbenutzer, eine festgepinnte OpenClaw-Version und ein Gateway, das /health nur auf 127.0.0.1 beantwortet. Folgen Sie dem Installationsleitfaden, legen Sie API-Tokens in ~/.config/openclaw.env (Modus 600) ab und prüfen Sie curl -sS http://127.0.0.1:<port>/health sowohl nach GUI-Login als auch per ssh user@host bash -lc '…' — nicht-interaktive Shells vermissen oft PATH-Einträge für magick und exiftool.

Minimal-Checkliste:

  • Prozessbesitz: Watcher und OpenClaw unter derselben UID wie inbox/ und out/.
  • TCC: Wenn Terminal oder ein Hilfsbinary Ordner nicht lesen darf, unter Systemeinstellungen → Datenschutz & Sicherheit → Festplattenvollzugriff das exakte Binary freischalten.
  • Firewall: Gateway nicht ins WAN stellen; bei Bedarf SSH-Port-Forwarding für Fern-Trigger.
  • Skill-Grenze: EXIF- und Rotate-Schritte als Shell oder Python aus einem OpenClaw-Skill aufrufen — so testen Sie Befehle ohne vollen Agent-Loop.
Smoke-Test: which magick exiftool, magick -version und exiftool -ver aus demselben Wrapper-Skript wie der Watcher.

Ordner-Watch-Strategie

Design-Tools schreiben oft zuerst Teildateien. Lenken Sie Exporte auf eine dedizierte Inbox, z. B. ~/png_jobs/design_export/inbox auf lokaler SSD — nicht iCloud-Desktop oder SMB —, um halbe PNGs und Sync-Latenz zu vermeiden. Orientieren Sie sich an Watch-Folder → PNG-Sets: getrennte inbox, work, out, failed, logs.

Regeln, die echte Designer überleben:

  1. Filter *.png; .DS_Store, *.tmp, *.crdownload ignorieren.
  2. Stabile Größe: zwei identische stat-Ergebnisse im Abstand von ca. 500 ms vor Enqueue.
  3. Debounce: 1–3 s bei fswatch; oder launchd WatchPaths mit kurzem Delay-Skript.
  4. Ruhefenster bei Bursts: viele Dateien gleichzeitig — 30–60 s ohne neue PNGs warten, dann sortiert leeren (vgl. ICC-Watch-Pipeline).
  5. Single-Flight: ein Worker, damit parallele Exporte deterministisch serialisiert werden.

Reproduzierbarer Trigger (fswatch): brew install fswatch, Inbox als Pfad, innerer sleep kollabiert Burst-Events; Skriptpfad durch Ihren Worker ersetzen.

INBOX=~/png_jobs/design_export/inbox
fswatch -o "$INBOX" | while read -r; do
  sleep 2
  /usr/local/bin/your_png_exif_rotate_worker.zsh
done

launchd-Alternative: WatchPaths auf die Inbox und ein Wrapper-Skript mit 1–3 s Pause vor dem Worker — plist-Pfad im Repo dokumentieren.

EXIF-Orientation: Verarbeitungsablauf

Die Werte 1–8 beschreiben, wie Viewer Pixel drehen oder spiegeln sollen. Ein PNG wirkt in einer App korrekt, in einer Pipeline falsch, wenn dort nur Rohbytes ohne Tag-Auswertung gelesen werden. Ihre Automation soll zuerst den Tag lesen, dann pass-through, Rotation oder Quarantäne wählen.

Orientierung numerisch lesen:

exiftool -n -Orientation -s3 "$PNG"

Ist die Ausgabe leer oder 1, sind die Pixel meist schon „aufrecht“ — dennoch Breite/Höhe mit dem Design-Export abgleichen. Werte 3 (180°), 6 (90° im Uhrzeigersinn) und 8 (90° gegen den Uhrzeigersinn) sind in Produktpipelines am häufigsten; gespiegelte Werte 2, 4, 5, 7 verdienen eine explizite Policy (viele Teams lehnen Spiegelungen ab).

Policy-Matrix (Vorschlag):

Orientation-Tag Aktion Hinweis
Fehlend oder 1 Keine Rotation; Metadaten später optional strippen UI-PNGs haben oft kein EXIF — nicht „kameraartig“ raten.
3, 6, 8 magick -auto-orient, dann Tag normalisieren Liefert physisch aufrechte Pixel für „dumme“ Consumer.
2, 4, 5, 7 (gespiegelt) Quarantäne oder explizites Flop+Rotate-Skript Marken-Assets spiegeln selten — zur manuellen Sichtung.

Nach der Rotation entweder exiftool -Orientation=1 -overwrite_original setzen oder EXIF gemäß PNG-Metadaten-Runbook entfernen, damit Downstream nicht doppelt anwendet.

Kennzahlen & Policy-Hinweise (zitierfähig)

  • Debounce 1–3 s reduziert Doppeljobs bei Browser- und Plugin-Exports messbar.
  • Drei Retries mit 5 / 20 / 60 s Backoff sind ein üblicher Kompromiss zwischen Robustheit und Warteschlangenlast (siehe CLI-Retry-Leitfaden).
  • Eine JSONL-Zeile pro Datei mit orientation_in, Hashes und Laufzeit-ms ermöglicht spätere Auswertung mit jq ohne Binärparser.

Stapel: verlustfrei rotieren & Archiv-Benennung

Verlustfrei bedeutet hier: keine unbeabsichtigte Neuberechnung der Bildinhalte — 90°/180°-Drehungen an PNG sind typischerweise ohne Farbtiefenwechsel möglich; Neukomprimierung kann die Bytegröße dennoch ändern. Für zugesicherte Byte-Treue Golden-File-Tests und das Kapitel verlustfreies Rekomprimieren beachten.

Einzeldatei (ImageMagick 7):

magick "$IN" -auto-orient "$OUT"
exiftool -overwrite_original -Orientation=1 "$OUT"

Stapel-Skizze (zsh) — im OpenClaw-Skill oder LaunchAgent:

inbox=~/png_jobs/design_export/inbox
out_root=~/png_jobs/design_export/out/$(date +%F)
mkdir -p "$out_root"
for f in "$inbox"/*.png; do
  [ -f "$f" ] || continue
  ori=$(exiftool -n -Orientation -s3 "$f" 2>/dev/null || echo "")
  [[ -z "$ori" || "$ori" == "1" ]] && cp -p "$f" "$out_root/$(basename "$f")" && continue
  base=$(basename "$f" .png)
  magick "$f" -auto-orient "$out_root/${base}_rot_v01.png"
  exiftool -overwrite_original -Orientation=1 "$out_root/${base}_rot_v01.png"
done

Finalnamen mit PNG-Auto-Naming & Batch-Validierung abstimmen: Suffix _rot_v01 nur, wenn Pixel geändert wurden. Pro Datei eine JSONL-Zeile mit sha256_before, sha256_after, orientation_in und Dauer in ms.

Optional: nach der Rotation die ICC-Prüfung aus der ICC-Watch-Pipeline — Drehung sollte eingebettete Profile nicht ungültig machen, schlechte Tool-Ketten können sie aber entfernen; bei verlorenem sRGB-Embed nach quarantine/ verschieben.

FAQ: typische Fehler

exiftool meldet „Unknown file type“ für ein in der Vorschau sichtbares PNG.

Datei evtl. 0 Byte, umbenanntes JPEG oder auf einem Volume, das die Sandbox nicht liest. Magic Bytes mit xxd -l 8 prüfen (erwarte 89 50 4E 47); exiftool als Watcher-Benutzer ausführen.

-auto-orient ändert nichts, Vorschau bleibt gedreht.

Manche Tools speichern Orientierung nur in Sidecar-Metadaten; oder Export ohne EXIF bei nicht-quadratischen Pixeln — mit Design-Quelle abgleichen. Ohne Tag oder Freigabe nicht drehen.

Gateway 401 — Rotation startet nie.

Token-Scope oder fehlende Umgebung in launchd: launchctl print user/<uid>, EnvironmentVariables in der plist oder openclaw.env im Wrapper sourcen.

Datei wurde nach magick größer/kleiner — Fehler?

Nicht zwingend; PNG-Rekompression ändert Bytes. Dekodierte Pixel oder perceptual Hash vergleichen; Marketing kann Byte-identische Lieferung fordern — dokumentieren.

Operation not permitted auf der Inbox.

macOS TCC blockiert Binary oder SSH-Session. ls -leO auf dem Pfad, UID-Abgleich, ggf. Terminal/Hilfsprogramm unter Festplattenvollzugriff.

Fazit: Behandeln Sie EXIF-Orientation als Daten, die Sie vor jeder Pixeltransformation lesen; nutzen Sie auf dem Remote Mac entprellte Watches und Stabilitäts-Gates auf lokaler SSD; wenden Sie magick -auto-orient plus explizites Orientation=1 an, wenn Sie physisch drehen; archivieren Sie datiert mit JSONL, damit derselbe OpenClaw-Skill im nächsten Projekt wieder funktioniert. Für dauerhaft laufende Apple-Silicon-Kapazität ohne blockiertes Laptop — etwa nächtliche Batches und Watch-Folder — lohnt ein Miet-Mac bei MacPng: Angebote und Knoten sind auf den öffentlichen Seiten ohne Login einsehbar (Jetzt mieten / kaufen, Preise & Konfiguration, Hilfe & SSH/VNC). Weitere Pipelines im Technik-Insights-Index.

Nur öffentliche Seiten — kein Login

OpenClaw-PNG-Pipelines (EXIF, Rotation, Archiv) auf dediziertem Remote Mac

Jetzt mieten / kaufen Preise & Knoten Hilfe & SSH/VNC

Vertiefung: OpenClaw-Installation, Watch & Retry-Archiv, ICC & verlustfreies Rekomprimieren.

OpenClaw & Remote Mac 2026 EXIF-Watch · verlustfrei drehen · Archiv
Jetzt mieten