Public : designers et creative ops livrant des PNG vers DAM ou clients avec métadonnées de droits explicites. OpenClaw sur un Mac distant (chemins stables, Apple Silicon la nuit) et exiftool pour IPTC/XMP reproductibles : dossiers, déclencheur « fichier terminé », tableau de champs, validation et journaux. Base install : guide d’installation OpenClaw (toutes plateformes) ; ICC/sRGB et éviter de stripper les droits : PNG métadonnées, ICC/sRGB et recompression sans perte sur Mac distant.
Sommaire
- OpenClaw / passerelle : installation minimale et permissions
- Gabarit de déclenchement par surveillance de dossier
- Tableau de correspondance des champs IPTC
- Écriture par lot et règles de validation conformité
- Échecs : nouvelle tentative et archivage des journaux
- FAQ : erreurs fréquentes de permissions et de chemins
OpenClaw / passerelle : installation minimale et permissions
Réduisez la surface d’attaque tout en restant aligné sur la façon dont votre équipe exporte réellement depuis Figma, Sketch ou Affinity. Installez la passerelle OpenClaw (Gateway) et les binaires ou runtimes documentés dans un petit README à côté du dépôt de config — la même référence pour SSH interactif et pour les LaunchAgent. Sur le Mac distant, faites tourner le worker sous un seul compte utilisateur macOS : celui qui possède les fichiers et qui reçoit les sessions SSH si vous déclenchez des runs manuels.
Contrat de répertoires (adaptez la racine, gardez les noms) :
~/AssetCompliance/inbox— les applications design y écrivent les PNG ; seuls les observateurs lisent cette arborescence.~/AssetCompliance/staging— fichiers « réservés » pendant l’écriture des métadonnées (évite de taguer un export encore en cours dansinbox).~/AssetCompliance/compliant— PNG ayant passé écriture IPTC/XMP + validation.~/AssetCompliance/failed— entrées en quarantaine avec fichier JSON d’explication à côté.~/AssetCompliance/logs— une ligne JSON par job, rotation quotidienne ou par déploiement.
Checklist permissions : (1) chown sur l’utilisateur worker ; pas de world-writable. (2) Dans launchd, $HOME/AssetCompliance/... via EnvironmentVariables, pas ~ nu. (3) brew install exiftool côté worker. (4) Accès disque complet si TCC bloque Terminal/ssh/binaire. Test : touch partout puis exiftool -ver dans le shell OpenClaw.
Gabarit de déclenchement par surveillance de dossier
Le déclencheur doit réagir aux fichiers terminés, pas à chaque fragment d’autosauvegarde. Combinez un debounce (par exemple 1 à 3 secondes après le dernier événement sur un chemin) et un contrôle de taille stable : deux stat identiques espacés de 400 à 800 ms, ou un marqueur « export terminé » si votre chaîne en fournit déjà un.
Forme de tâche OpenClaw (conceptuelle) :
- Chemin surveillé :
$INBOX; récursion désactivée si tous les PNG arrivent dans un dossier plat (ACL plus simples). - Glob :
*.pnginsensible à la casse ; ignorer les fichiers cachés et*.tmp. - Charge utile en file : chemin absolu, taille, mtime,
project_idoptionnel dérivé du dossier parent. - Worker : déplacer vers
staging, exécuter exiftool avec le jeu de tags validé par le juridique, valider, puis promouvoir verscompliantoufailed.
Sans orchestrateur graphique, fswatch relié à un script shell qui append une file sur disque fonctionne très bien sur un hôte loué ; gardez le processus sous tmux, screen ou launchd. Pour la même philosophie de retry, backoff et rotation des journaux, reportez-vous au guide surveillance PNG, retry et archives de logs sur Mac distant.
Tableau de correspondance des champs IPTC
Les équipes juridiques et DAM s’appuient en général sur un petit noyau de champs interopérables. Sur PNG, écrire à la fois l’IPTC-IIM classique (lorsque l’outil le supporte) et les champs XMP dc:rights / xmpRights:WebStatement améliore la compatibilité navigateurs, imports CMS et validateurs de stocks. Remplacez les exemples par les formulations approuvées en interne.
| Intention conformité | Tag(s) exiftool | Exemple de valeur |
|---|---|---|
| Avis de copyright (lisible humain) | -IPTC:CopyrightNotice=, miroir -XMP-dc:Rights= |
© 2026 Studio Exemple. Tous droits réservés. |
| Créateur / crédit designer | -IPTC:By-line=, -IPTC:By-lineTitle= (optionnel) |
Camille Designer / Direction artistique |
| Ligne de crédit éditeur | -IPTC:Credit= |
Studio Exemple / Campagne Client 2026-T2 |
| Source / titulaire interne | -IPTC:Source= |
Bibliothèque interne Studio Exemple |
| URL de politique (web statement) | -XMP-xmpRights:WebStatement= |
https://exemple.com/legal/conditions |
| Instructions d’usage courtes | -IPTC:SpecialInstructions= |
Licence marketing web + réseaux ; revente interdite. |
Exemple d’écriture sur un fichier (à boucler en lot) :
exiftool -overwrite_original \
-IPTC:CopyrightNotice="© 2026 VotreSociété. Tous droits réservés." \
-XMP-dc:Rights="© 2026 VotreSociété. Tous droits réservés." \
-IPTC:By-line="Nom du studio" \
-IPTC:Credit="VotreSociété / SlugProjet" \
-IPTC:Source="Pipeline assets VotreSociété" \
-XMP-xmpRights:WebStatement="https://votresociete.fr/cgv" \
-IPTC:SpecialInstructions="Usage interne + web client uniquement." \
"/chemin/vers/staging/asset.png"
Stockez les chaînes littérales dans un metadata.env ou YAML versionné chargé par la tâche OpenClaw — jamais de texte client-spécifique sur une branche non relue.
Écriture par lot et règles de validation conformité
La conformité n’est pas « exiftool a retourné 0 ». Définissez des contrôles machine après chaque écriture :
- Tags obligatoires présents : via la sortie JSON d’exiftool (
exiftool -j -IPTC:CopyrightNotice -XMP-dc:Rights), échouer si vide ou plus court qu’un minimum (par ex. 12 caractères) pour détecter les no-op silencieux. - Vocabulaire autorisé (optionnel) : expression rationnelle sur
CopyrightNotice(présence de©ou de(c)selon la charte). - URL de politique : si imposée, exiger
xmpRights:WebStatementconforme à^https://. - Intégrité fichier : comparer un hachage du contenu pixel si votre pipeline le permet ; à défaut, rouvrir avec exiftool et vérifier l’absence d’avertissements de lecture PNG.
- Règle de promotion : déplacer vers
compliant/uniquement si tous les tests passent ; sinonfailed/avec sidecar JSON indiquant la règle violée.
En réutilisant les mêmes étapes et journaux que vos autres playbooks OpenClaw PNG, QA visuelle et métadonnées partagent une traçabilité unique pour les revues sécurité et conformité.
Échecs : nouvelle tentative et archivage des journaux
Séparez les erreurs de données (PNG corrompu, profil incohérent) des erreurs transitoires (latence disque, montage réseau qui clignote sur un partage SMB mal configuré). Une ligne JSON par job suffit pour l’audit : ts, job_id, path, stage (watch|tag|validate), exit_code, duration_ms.
- Politique de retry : pour les transitoires, backoff exponentiel (par ex. 5 s, 20 s, 60 s) avec au plus trois tentatives par fichier et par jour ; persister le compteur dans le sidecar JSON.
- Échec définitif : entrée corrompue ou échec répété de validation →
failed/et append dansfailed.jsonlpour triage humain. - Archivage des logs : fichiers
logs/jobs-AAAAMMJJ.jsonl; compression au-delà de 14 jours ; copie vers stockage objet si l’entreprise exige la conservation probante. - Rejeu : après correction d’un gabarit de tags, rejouer
failed.jsonlavec un passage--dry-runpuis des lots bornés pour éviter de propager une coquille sur des milliers de fichiers.
Chaque PNG promu a ainsi une ligne de log et des règles déterministes — utile quand se mélangent créations internes, stocks sous licence et marques clients.
FAQ : erreurs fréquentes de permissions et de chemins
Q : exiftool indique « Writing is not supported » ou ignore des tags.
A : Vérifiez -overwrite_original ou une sortie vers un nouveau chemin ; certains volumes en lecture seule ou dossiers sandboxés bloquent l’édition in-place. Exécutez le worker hors helper sandboxé sauf droits explicites.
Q : Operation not permitted sur le Mac distant.
A : Accordez l’accès disque complet au terminal ou au binaire daemon ; contrôlez que le UserName du LaunchAgent correspond au propriétaire des fichiers.
Q : le watcher se déclenche avant la fin de l’écriture du PNG.
A : Augmentez le debounce ou la fenêtre de taille stable ; ignorez les fichiers à 0 octet et les préfixes temporaires.
Q : IPTC visible dans exiftool mais pas dans le DAM ou le navigateur.
A : Beaucoup d’outils privilégient XMP ; maintenez XMP-dc:Rights synchronisé avec IPTC:CopyrightNotice. Évitez de stripper les droits après la passe conformité — voir l’article métadonnées/ICC cité en introduction.
Q : les chemins cassent sous launchd.
A : Chemins absolus uniquement ; injectez HOME explicitement dans l’environnement du plist.
Un Mac distant dédié déporte les rafales d’export, aligne OpenClaw et exiftool sur macOS, et rend les garde-fous répétables.
Métadonnées IPTC et automatisation « dossier surveillé » sur Apple Silicon dédié
Lorsque les lots nocturnes et les chemins absolus stables priment sur un ordinateur portable de déplacement, un Mac distant est le lieu naturel pour OpenClaw, la surveillance de répertoires et l’outillage de métadonnées. Parcourez MacPng sans compte obligatoire, comparez les offres de location, puis utilisez l’aide pour brancher SSH ou VNC et déployer ce HowTo tel quel.