Prérequis : Node, CLI openclaw, jetons et moindre privilège
Sur le Mac distant, installez Node 22 LTS ou Node 24 si la documentation OpenClaw le recommande, puis la CLI via les instructions officielles (docs.openclaw.ai). Les commandes openclaw onboard et openclaw doctor doivent tourner sous le même compte que le service launchd : l’écart de PATH entre votre session SSH et le démon est la première cause d’échec silencieux.
Jetons et secrets webhook : fichier 600 dans le plist. Écoute sur 127.0.0.1 ; exposition via tunnel SSH ou reverse proxy TLS sans réécriture du corps POST (sinon la signature casse).
node -videntique en SSH et dans le contexte du daemon.- Certificats d’entreprise déclarés via
NODE_EXTRA_CA_CERTSsi besoin. - Répertoire de travail jetable par livraison, quotas disque surveillés.
- Aucun secret de CircleCI ou de VCS dans les journaux du handler.
| Stratégie | Avantage | Risque principal |
|---|---|---|
| HTTP 200 immédiat + file locale | Évite les timeouts de livraison CircleCI | Nécessite un worker et une persistance légère |
| Traitement inline dans le handler | Simplicité de débogage au début | Dépasse souvent la fenêtre de retry réseau |
| Jeton API étroit + webhook sortant | Audit et rotation simples | Configurer les scopes au plus juste |
Webhook CircleCI et étapes de configuration de la vérification
Créez le webhook (projet ou organisation) vers l’URL publique du handler OpenClaw. Le secret console sert au HMAC sur le corps brut du POST, selon la doc CircleCI de votre version d’événements.
- Ne souscrire qu’aux événements utiles, typiquement workflow completed ou job completed, afin de réduire le bruit et la surface d’attaque.
- Filtrer par branche ou par contexte de workflow dans le handler après validation cryptographique, pas avant, afin de ne pas court-circuiter les journaux d’audit.
- Tester avec
curldepuis une machine du même chemin réseau que CircleCI en rejouant un payload capturé, puis comparez le code HTTP avec la console de livraison.
Si un WAF ou un équilibreur réécrit le JSON, la signature ne correspondra jamais : désactivez la normalisation ou déplacez la vérification derrière un saut TLS direct vers le Mac.
Compétence ou script OpenClaw : analyser les lockfiles et produire un résumé
Parsez le JSON puis la révision et le dépôt. git clone --depth 1 dans un dossier neuf ou mettez à jour un bare mirror local pour les livraisons fréquentes.
Node : git diff sur package-lock.json, pnpm-lock.yaml, yarn.lock ou npm ci --dry-run. Ruby : Gemfile.lock ; PHP : composer.lock + composer validate. Résumé court : statut, fichiers touchés, hash, lien workflow, zéro secret.
Emballez ce bloc en skill OpenClaw ou script ; timeouts < moitié de la fenêtre de retry CircleCI.
FAQ : signature, délais d’attente et permissions
Signature invalide : comparez octet à octet le secret configuré ; vérifiez que vous signez le corps avant désérialisation JSON et que l’encodage UTF-8 n’est pas altéré par un proxy intermédiaire.
Timeout côté CircleCI : la livraison attend une réponse rapide ; déportez clone et diff dans un processus asynchrone et répondez 202 lorsque votre stack le permet, puis poussez le résultat via un second canal.
403 sur l’API CircleCI : le jeton personnel ou le rôle OIDC doit inclure explicitement le projet visé ; évitez les tokens organisation larges lorsque seule la lecture des derniers workflows suffit.
Écarts inexpliqués entre lockfile et log de job : un cache de dépendances réutilisé entre builds peut masquer une dérive ; forcez un répertoire vierge ou un git worktree par événement webhook.
Raccord aux scénarios de tirage CI sur Mac distant
Même machine : souvent runners et miroirs Git/npm. Alignez shallow clone, cache npm et purge disque avec nos guides. La passerelle orchestre événement CircleCI, lockfiles et shell SSH sans allers-retours console.
En synthèse : sécurisez la passerelle, validez chaque webhook avec le secret CircleCI, isolez le checkout, produisez un résumé structuré et reliez le flux à vos optimisations de tirage. Pour louer un nœud Mac stable, ouvrez sans compte les pages achat, tarifs, centre d’aide (guides SSH et mise en route) et accueil — idéal pour héberger OpenClaw et la CI au même endroit.
Choisissez un nœud Mac pour la passerelle et la CI
Accès SSH documenté dans le centre d’aide, sans obligation de connexion pour consulter les tarifs ni l’achat.