Gateway - Neotask by Neotask Documentation | Neotask

Gateway

Qu'est-ce que le Gateway ?

Le Gateway est le cœur d'Open Claw — un service de longue durée unique qui gère toutes les sessions d'agents, les canaux de messagerie, l'exécution des outils et les connexions aux appareils. Tout passe par le Gateway.

C'est un serveur WebSocket qui écoute les connexions des clients (application de bureau, applications mobiles, tableau de bord web) et gère l'ensemble du cycle de vie de l'assistant IA.

Architecture

Composants

  • Serveur WebSocket — Accepte les connexions des clients (port par défaut 18789)
  • Serveur HTTP — Sert l'interface de contrôle, l'hôte canvas et les points de terminaison de santé
  • Adaptateurs de canaux — Maintiennent les connexions aux plateformes de messagerie (WhatsApp, Telegram, Discord, etc.)
  • Gestionnaire de sessions — Persiste et gère l'état de conversation des agents
  • Planificateur cron — Exécute les tâches planifiées et les réveils par battement de cœur
  • Runtime de plugins — Charge et gère le cycle de vie des plugins
  • Service de navigateur — Contrôle les instances Chromium pour l'automatisation web
  • Modes de liaison

    | Mode | Description | |------|-------------| | Boucle locale | Par défaut. Accessible uniquement depuis localhost (127.0.0.1) | | LAN | Accessible sur votre réseau local. Découvrable automatiquement via Bonjour/mDNS | | Tailnet | Accessible via le VPN Tailscale avec MagicDNS | | Personnalisé | Se lier à une adresse spécifique |

    Authentification

    | Méthode | Description | |---------|-------------| | Jeton | Jeton porteur WebSocket (UUID ou chaîne personnalisée) | | Mot de passe | Authentification par mot de passe (haché bcrypt) | | Proxy de confiance | Pour les proxys inverses avec en-têtes de pré-authentification | | Confiance locale | Connexions de boucle locale auto-approuvées |

    Configuration

    Le Gateway est configuré via openclaw.json (format JSON5). Sections clés :

    | Section | Contrôles | |---------|-----------| | agents | Liste des agents, valeurs par défaut, espaces de travail | | gateway | Port, mode de liaison, authentification, comportement de rechargement | | channels | Configuration par canal et identifiants | | tools | Autorisations d'outils, profils, sécurité | | plugins | Chargement des plugins, activation, configuration par plugin | | models | Authentification du fournisseur, replis, paramètres du fournisseur | | skills | Répertoires de compétences, configuration par compétence | | browser | Profils de navigateur, ports, mode headless | | cron | Configuration du planificateur | | session | Règles de réinitialisation, seuils de compaction | | messages | Paramètres TTS, politiques de médias | | memory | Configuration de l'indexation de la mémoire | | security | Sandboxing, mode élevé, approbations |

    Rechargement à chaud

    Les modifications de configuration peuvent être appliquées sans redémarrage :

    | Mode | Comportement | |------|-------------| | Hybride (par défaut) | Appliquer à chaud les modifications sûres, redémarrer pour les autres | | Chaud | Appliquer uniquement les modifications sûres à chaud, ignorer les autres | | Redémarrage | Redémarrer lors de tout changement nécessitant un rechargement | | Désactivé | Pas de rechargement automatique |

    Accès distant

    Tailscale (recommandé)

    Tailscale fournit un accès distant sécurisé sans configuration :

  • Liez le Gateway à votre Tailnet
  • Accédez depuis n'importe quel appareil sur le même réseau Tailscale
  • DNS automatique via MagicDNS
  • Tailscale Serve peut exposer le tableau de bord avec HTTPS
  • Tunnel SSH

    Transférez le port du Gateway via SSH :

  • Simple, sécurisé, aucun changement de configuration nécessaire
  • Fonctionne avec n'importe quelle machine compatible SSH
  • Prend en charge l'intégralité du protocole WebSocket et de l'interface de contrôle
  • Règles de sécurité

  • Boucle locale + SSH/Tailscale est la combinaison la plus sûre
  • La liaison non-loopback nécessite une configuration de jeton d'authentification
  • L'épinglage d'empreinte TLS disponible pour une sécurité supplémentaire
  • Le contrôle du navigateur est désactivé pour les connexions distantes par défaut
  • Surveillance de la santé

    Point de terminaison de santé

    Le point de terminaison HTTP /health retourne :

  • Statut du Gateway
  • Vivacité RPC
  • Santé par canal (connecté, statut d'authentification, nombre de comptes)
  • Disponibilité du navigateur
  • Agents actifs et nœuds connectés
  • Temps de fonctionnement
  • Sondes

  • Vivacité RPC — Test de connexion WebSocket + écho
  • Santé des canaux — Vérification d'authentification + ping API par canal
  • Disponibilité du navigateur — Vérification de port, vérification de processus
  • Connectivité des nœuds — Horodatage du dernier battement de cœur
  • Découverte

    Bonjour/mDNS

    Lorsqu'il est lié au LAN, le Gateway s'annonce via DNS multicast :

  • Type de service : _openclaw-gw._tcp
  • Inclut le port, le transport, le statut TLS et les informations DNS Tailscale
  • Les applications compagnons découvrent le Gateway automatiquement
  • Découverte à grande portée

    Découvrez les gateways sur votre réseau avec des délais d'expiration configurables. Prend en charge la découverte Bonjour locale et DNS Tailscale.

    Plusieurs gateways

    Vous pouvez exécuter plusieurs instances de Gateway sur la même machine en utilisant des profils :

  • Chaque profil a une configuration, un espace de travail, des sessions et un état séparés
  • Des ports différents pour chaque Gateway
  • Utile pour l'isolation (personnel vs travail) ou les tests
  • Diagnostics

    Outil de diagnostic

    L'outil de diagnostic intégré vérifie :

  • Validité de la configuration
  • Permissions de fichiers
  • Connectivité des canaux
  • Statut d'authentification du modèle
  • Compatibilité de la version Node.js
  • Configurations incorrectes courantes
  • Il peut corriger automatiquement de nombreux problèmes lorsque la permission est accordée.

    Journalisation

    Les journaux du Gateway sont écrits dans des fichiers JSONL quotidiens :

  • Suivi de l'utilisation des jetons par complétion
  • Journaux d'événements des canaux
  • Journalisation des erreurs avec contexte structuré
  • Niveaux de journalisation configurables
  • View full documentation