Exécuter l’assistant AI OpenClaw sur Cloudflare Workers : Un tutoriel pas à pas

Déployer OpenClaw (anciennement Moltbot) sur Cloudflare Workers

OpenClaw est un assistant IA personnel léger et extensible capable de gérer des canaux de discussion tels que Telegram, Discord, Slack et des interfaces web. Le faire fonctionner dans un conteneur Sandbox de Cloudflare vous donne un déploiement bon marché, toujours actif, distribué mondialement sans devoir gérer de VM ou de cluster Kubernetes.

Prérequis * Un compte Workers « Payant » (la fonctionnalité Sandbox n’est disponible que dans le plan Workers Payant). * Une clé API d’un fournisseur LLM supporté – nous recommandons Claude d’Anthropic ou le Gateway AI de Cloudflare. * Facultatif : des identifiants Cloudflare Access pour protéger l’UI d’administration et un bucket R2 pour la persistance.

TL;DR – Exécuter npm install, définir les secrets, déployer (npm run deploy), puis ouvrir https://your‑worker.workers.dev/?token=YOUR_TOKEN.

1. Cloner le dépôt

git clone https://github.com/cloudflare/moltworker
cd moltworker

Le dépôt inclut un Dockerfile, un wrangler.js, et une version bundle Vite de l’UI de contrôle.

2. Installer les dépendances

npm install

3. Configurer les secrets LLM

Accès direct Anthropic

npx wrangler secret put ANTHROPIC_API_KEY

Ou Gateway AI Cloudflare (recommandé pour le suivi des coûts)

npx wrangler secret put AI_GATEWAY_API_KEY
npx wrangler secret put AI_GATEWAY_BASE_URL

Si vous fournissez à la fois le gateway et les secrets Anthropic directs, le gateway a la priorité.

4. Générer un token Gateway

L’UI de contrôle est protégée par un token personnalisé, distinct de Cloudflare Access. Générer une chaîne hexadécimale de 32 bytes et la définir comme secret :

export MOLTBOT_GATEWAY_TOKEN=$(openssl rand -hex 32)
echo "$MOLTBOT_GATEWAY_TOKEN" | npx wrangler secret put MOLTBOT_GATEWAY_TOKEN

Gardez ce token en sécurité – vous l’utiliserez dans l’URL pour accéder à l’UI.

5. Facultatif : Configurer Cloudflare Access

L’UI d’administration (/_admin/) et la poignée de main WebSocket peuvent être protégées par Cloudflare Access pour une couche de sécurité supplémentaire.

  1. Dans le tableau de bord Workers, cliquez sur votre worker > Paramètres > Domaines & Routes > workers.dev > Activer Cloudflare Access.
  2. Dans les paramètres Access, ajoutez votre courriel à la liste d’accès ou configurez un fournisseur OAuth.
  3. Copiez le tag Application Audience (AUD) de l’appli Access et définissez-le comme secret :
    npx wrangler secret put CF_ACCESS_AUD
    
  4. Définissez votre domaine d’équipe (myteam.cloudflareaccess.com) :
    npx wrangler secret put CF_ACCESS_TEAM_DOMAIN
    

Après avoir défini ces secrets, redéployez (npm run deploy).

6. Facultatif : Stockage persistant avec R2

Sans R2, toutes les associations d’appareils et l’historique de discussion disparaissent lorsque le sandbox redémarre. Pour persister les données :

  1. Créez un bucket R2 nommé moltbot-data.
  2. Générez un token API avec les permissions Object Read & Write.
  3. Définissez les secrets :
    npx wrangler secret put R2_ACCESS_KEY_ID
    npx wrangler secret put R2_SECRET_ACCESS_KEY
    npx wrangler secret put CF_ACCOUNT_ID
    

Le worker synchronisera automatiquement la configuration vers R2 toutes les 5 minutes.

7. Déployer le worker

npm run deploy

Pendant le déploiement, Wrangler télécharge le bundle Vite, définit les variables d’environnement dans Cloudflare, et démarre le sandbox. La première requête peut prendre 1–2 minutes car le conteneur démarre.

8. Accéder à l’UI de contrôle

Ouvrez votre navigateur et allez vers :

https://your‑worker.workers.dev/?token=YOUR_GATEWAY_TOKEN

Remplacez your‑worker par le chemin renvoyé après le déploiement et YOUR_GATEWAY_TOKEN par le token que vous avez enregistré à l’étape 4.

Appariement d’appareils

Lorsque un nouveau client (navigateur ou plateforme de chat) se connecte, il attend l’approbation. Utilisez l’UI d’administration à /_admin/ (protégée par Cloudflare Access) pour approuver les appareils.

9. Canaux de chat facultatifs

Vous pouvez activer les bots Telegram, Discord ou Slack en ajoutant les tokens pertinents :

# Telegram
npx wrangler secret put TELEGRAM_BOT_TOKEN

# Discord
npx wrangler secret put DISCORD_BOT_TOKEN

# Slack
npx wrangler secret put SLACK_BOT_TOKEN
npx wrangler secret put SLACK_APP_TOKEN

Puis redéployez.

10. Automatisation du navigateur (CDP)

OpenClaw peut contrôler une instance Chrome sans tête via le Chrome DevTools Protocol (CDP shim). Configurez-le comme suit :

npx wrangler secret put CDP_SECRET
npx wrangler secret put WORKER_URL   # par ex., https://your‑worker.workers.dev

Les points de terminaison CDP (/cdp/json/...) nécessiteront l’en-tête CDP_SECRET.

11. Débogage et journaux

Lorsque DEBUG_ROUTES=true est défini dans .dev.vars, les routes comme /debug/processes et /debug/logs deviennent disponibles. Elles sont utiles lors du développement local ou pour la surveillance en temps réel.

12. Configuration avancée

  • Sommeil du container – Réduisez les coûts en définissant SANDBOX_SLEEP_AFTER à une durée (ex. 10m).
  • Sauvegarde – Vous pouvez déclencher une sauvegarde R2 à la demande via /admin/ si un bucket est configuré.
  • Fournisseurs AI personnalisés – Le worker accepte une clé OPENAI_API_KEY directe ou toute clé supportée par le SDK.

13. Conclusion

Faire tourner OpenClaw sur Cloudflare Workers vous offre :

  • Zero ops – Cloudflare gère l’échelle, le réseau et la sécurité.
  • Géographique à faible latence – Le worker fonctionne sur l’arrière‑plan mondial de Cloudflare.
  • Extensibilité – Ajoutez des compétences, de nouvelles plates‑formes de chat ou l’automatisation du navigateur avec un minimum de friction.

Le code source est open‑source et évolue constamment. Consultez les problèmes GitHub et les pull requests pour les dernières mises à jour. Bon hacking !


Étapes suivantes

  • Explorez la compétence intégrée cloudflare-browser pour le scraping web automatisé.
  • Créez votre propre compétence en ajoutant un nouveau dossier sous skills/ et en le connectant à moltbot.json.
  • Intégrez le Gateway AI de Cloudflare pour l’analyse d’utilisation et le contrôle des coûts.

N’hésitez pas à forker le projet, le modifier et partager vos propres implémentations d’OpenClaw. Bonne chance !

Original Article: Voir l’original

Partager cet article