AIREITER

Agents partagés OpenClaw en multijoueur : deux appareils, un seul contexte

Dernière mise à jour: 2026-11-05 19:43:54

Deux appareils peuvent piloter sans risque le même agent OpenClaw, à condition de bien distinguer deux choses : la file d’attente, qui contient du texte, et la persistance, qui doit être gérée séparément. La session partagée conserve le contexte ; des fichiers comme active-tasks.md conservent les engagements.

C’est la clé du fonctionnement. OpenClaw 2.0 (version v2026.8.1, annoncée le 30 août 2026) a ajouté les sessions partagées multijoueur au-dessus d’un Gateway qui reste un domaine de confiance unique. Deux téléphones, deux ordinateurs portables ou deux personnes peuvent ainsi piloter la même exécution sans créer chacun leur propre branche (docs.openclaw.ai). La documentation officielle le précise clairement : propriété, présence et rôles servent à coordonner les utilisateurs, pas à isoler des utilisateurs hostiles sur le plan de la sécurité (docs.openclaw.ai). Entre ce que décrit la documentation et les problèmes rencontrés sur le terrain, trois sujets reviennent sans cesse : la file d’attente, la durée de vie de la session et la mémoire.

Le téléphone sur le canapé, le portable sur le bureau : ce qui casse vraiment

Le scénario à deux appareils le plus courant n’implique d’ailleurs pas forcément deux personnes. Il s’agit souvent d’une seule personne qui utilise son téléphone comme télécommande, tandis qu’un Mac Mini ou un VPS héberge l’agent, généralement via Telegram. Un utilisateur l’a résumé ainsi : demander à « mon agent OpenClaw Monica depuis Telegram d’installer mem0 localement sur mon Mac Mini » (x.com).

Quand un deuxième appareil ou une deuxième personne rejoint le même agent, quatre types de panne reviennent dans les témoignages :

  1. Les messages disparaissent sans prévenir. La combinaison la plus souvent recommandée par la communauté tient en quelques éléments : queue mode enabled so messages never silently drop, active-tasks.md as persistent state for crash recovery et un fichier Boot.md qui relit ce dernier au redémarrage (x.com). Sans cet ensemble, un message envoyé pendant que l’agent traite encore une requête reste du simple texte conversationnel susceptible de disparaître, et non une tâche sauvegardée.
  2. Les consignes s’évaporent après une compression du contexte ou un redémarrage. Un utilisateur de Reddit l’a formulé sans détour :

« Il n’y a pas de file de tâches durable : quand l’agent dit “je vais m’en occuper”, ce n’est qu’une promesse conversationnelle. » — u/Brave_Nobody_6909, r/openclaw

Le même fil rapporte que ces promesses disparaissent après une compression du contexte ou un redémarrage, tandis que l’agent ignore les procédures sauvegardées. Une autre explication, publiée par un mainteneur, décrit le même piège : un agent qui « fonctionne parfaitement pendant 20 minutes », puis « oublie silencieusement vos consignes et part en roue libre » lorsque la gestion de la mémoire est mal comprise (x.com).

  1. La session se réinitialise en cours de route. Les valeurs par défaut des canaux Telegram ont notamment inclus thread: { mode: "idle", idleMinutes: 180 }, ce qui réinitialise la session après quelques heures d’inactivité. Un utilisateur a porté cette durée à 4 jours après avoir rencontré ce problème dans une configuration où le téléphone servait de second écran (x.com). Le dépassement de contexte aggrave encore la situation : un usage excessif des outils peut provoquer la réinjection du dernier message, si bien que l’agent « répond encore et encore à la même chose », puis « se dégrade silencieusement » (x.com).
  2. L’association échoue avant même le démarrage du mode multijoueur. Après une mise à niveau, des appareils associés ont perdu les autorisations operator.read/operator.write et se sont retrouvés bloqués dans une boucle d’association infinie, avec des outils inutilisables. Le fondateur a répondu : « C’est moi qui ai été trop zélé en corrigeant un problème de sécurité potentiel » (x.com). Des utilisateurs sinophones ont rencontré le même blocage avec l’erreur 1008: pairing required, l’appareil local restant dans une file Pending jusqu’à l’exécution de openclaw devices list, puis devices approve <UUID> (x.com).

La présence permet de voir que quelqu’un est en train d’écrire, mais aucun indicateur ne transforme un message en file de tâches sauvegardée.

Un Gateway, un domaine de confiance : session partagée, agents séparés et droits de propriété

La principale nouveauté d’OpenClaw 2.0 est la session partagée : une autre personne peut rejoindre un travail en cours tout en conservant son contexte. Des analyses indépendantes y voient le passage d’un outil réservé à un seul opérateur à un environnement de travail collaboratif (eesel.ai). Pour choisir la bonne configuration, deux notions de la documentation officielle sont déterminantes.

Le mode multi-utilisateur signifie que plusieurs personnes de confiance pilotent un même agent. Chaque session partagée enregistre trois niveaux : un créateur immuable (createdActor, défini une seule fois), un propriétaire réassignable (à la manière d’un responsable GitHub, modifiable à tout moment) et l’historique des participants ayant effectivement envoyé des requêtes (docs.openclaw.ai). La présence indique qui consulte la session et qui écrit, mais les brouillons en cours de saisie ne parviennent jamais au modèle ni à la transcription. L’attribution des tours reste explicitement indicative, car les interventions de plusieurs personnes peuvent être fusionnées dans un même tour (docs.openclaw.ai). En pratique, un message envoyé depuis un deuxième canal alors que l’agent exécute encore un outil est ajouté à la transcription, mais le tour en cours va jusqu’au bout : la seconde consigne ressemble donc davantage à une indication de pilotage qu’à une interruption (docs.openclaw.ai).

Le mode multi-agent signifie qu’un seul processus Gateway héberge plusieurs cerveaux isolés. Chacun dispose de son propre espace de travail, de son agentDir (profils d’authentification, registre des modèles) et d’une base SQLite de sessions située dans <agentDir>/openclaw-agent.sqlite (github.com). Une règle d’association redirige chaque événement entrant d’un canal vers un agent ; la correspondance la plus précise l’emporte. Ne réutilisez jamais le même agentDir pour plusieurs agents, sans quoi ils écraseront leurs fichiers auth-profiles.json respectifs (stack-junkie.com). Exemple minimal : { agentId: "coding", match: { channel: "telegram", accountId: "coding-bot" } } associe un bot à un agent précis.

La phrase à retenir est la suivante : « Un gateway constitue un seul domaine de confiance » (docs.openclaw.ai). Les rôles, les filtres de propriétaire et les avatars n’isolent pas des utilisateurs hostiles. Pour des utilisateurs qui ne se font pas mutuellement confiance, il faut des Gateways distincts, idéalement sur des utilisateurs ou des hôtes différents.

ÉlémentUn agent partagé (session multi-utilisateur)Agents séparés (multi-agent)
Transcription de la conversationPartagée ; les deux appareils voient le même filIsolée dans la base SQLite propre à chaque agent
Fenêtre de contextePartagée ; les interventions sont fusionnées dans le tour actifIsolée ; aucune recherche inter-agent dans les transcriptions par défaut
Fichiers de mémoire et d’espace de travailAGENTS.md, notes et wiki partagés, sauf s’ils sont limités à un agentEspaces de travail séparés ; compétences partagées uniquement via ~/.openclaw/skills ou extraDirs (github.com)
Identifiants des modèlesComptes individuels possibles ; ils servent uniquement d’étiquette, et des comptes de secours partagés peuvent toujours être utilisés pour la facturation (docs.openclaw.ai)agentDir propre à chaque agent ; les éléments de renouvellement OAuth ne sont pas partageables par défaut et nécessitent une activation explicite (github.com)
Tâches cron et automatisationsVisibles au niveau du Gateway ; un administrateur disposant de operator.admin peut gérer la tâche d’un autre utilisateur (docs.openclaw.ai)Accessibles entre agents uniquement si agentToAgent et les paramètres de visibilité l’autorisent (github.com)
File d’attente en attenteUne file unique pour la sessionChaque agent possède sa propre file et son propre routage

Pour deux appareils appartenant à une même personne, choisissez la première colonne. Pour deux personnes qui ne doivent pas consulter régulièrement l’historique de l’autre, choisissez la seconde ; si l’accès doit être réellement bloqué pour des utilisateurs non fiables, utilisez deux Gateways. Les conseils Reddit destinés aux couples qui partagent un bot vont dans ce sens : « créer 2 agents, avec le même profil d’authentification, mais l’un orienté vers vous… et l’autre vers votre femme » (u/mr-cto-apps, r/openclaw). Dans un autre fil consacré au partage d’un seul bot Telegram, un utilisateur conseille que « la plupart des gens dans votre situation exécutent simplement deux instances » (u/dertobi, r/openclaw) — un conseil qui reste valable pour des travaux privés distincts, même après l’ajout des sessions partagées dans la version 2.0.

Où va votre deuxième message pendant que l’agent travaille ?

Il faut distinguer trois compartiments, car c’est précisément à leur frontière que les utilisateurs confondent les mécanismes et perdent du travail.

Compartiment 1 : la file de la session. Un texte envoyé pendant que l’agent travaille est ajouté à la session en cours. Le mode file d’attente le fait patienter au lieu de le supprimer, tandis que la présence indique qu’un tour est en cours : votre message orientera alors le tour suivant, sans interrompre celui qui s’exécute. Les aperçus de saisie restent éphémères et n’entrent jamais dans le contexte (docs.openclaw.ai). Depuis le second appareil, privilégiez donc les messages courts et explicites (« une fois ceci terminé, fais X ; ne redémarre pas Y »), car la documentation décrit l’attribution des tours comme approximative lorsque les interventions de plusieurs utilisateurs sont fusionnées (docs.openclaw.ai).

Compartiment 2 : les tâches persistantes. Un message placé dans la file n’est pas une tâche durable. Si le Gateway redémarre, si la session est compactée ou si vous utilisez /new, les promesses conversationnelles peuvent disparaître. La solution communautaire qui résiste aux redémarrages est un fichier, pas un message : active-tasks.md comme état de récupération après incident, accompagné d’un Boot.md que l’agent relit au démarrage de la session et du Gateway (x.com). Les outils de mémoire peuvent réinjecter du contexte, mais une explication largement relayée avertit que la mémoire chargée elle-même peut être résumée : « La mémoire existe sur le disque. L’agent a simplement perdu la capacité de la parcourir » (x.com).

Compartiment 3 : le travail planifié. Cron et les automatisations s’exécutent tant que le Gateway tourne ; si l’hôte se met en veille, les planifications s’arrêtent (eesel.ai). Un utilisateur a signalé que des exécutions cron rendaient l’agent « pratiquement inutilisable pendant ce temps » en saturant le contexte avec l’historique des sessions. Il recommande d’isoler les contextes par sujet Telegram (x.com). Utilisez les tâches planifiées pour le travail récurrent, jamais pour remplacer une consigne de suivi placée dans la file.

L’inspection de la file peut accuser un retard sur la réalité : un fil rapporte que des requêtes apparaissaient bien dans la file alors que /subagents et /tasks n’affichaient rien (reddit.com). Pour vérifier la survie d’une tâche après redémarrage, fiez-vous au fichier du deuxième compartiment, indépendamment de ce qu’affiche l’interface de file.

La configuration à deux appareils qui ne perd pas les consignes

Cette configuration convient à une personne utilisant un ordinateur portable et un téléphone, ou à deux coéquipiers de confiance travaillant dans une même session. Elle reprend les procédures de démarrage rapide et d’exploitation en production officielles (docs.openclaw.ai), avec les protections contre la perte de données retenues par la communauté.

  1. Installez le Gateway sur un hôte toujours allumé et identifiez chaque utilisateur. Un petit VPS, un Mac de bureau ou un Mac Mini fera l’affaire. Liez le Gateway à la boucle locale et placez Tailscale Serve ou Cloudflare Access devant lui, plutôt que d’exposer un port public ou de partager un jeton. L’accès associé à une identité permet d’attribuer les actions à chaque personne dans les sessions et les commits ; avec un jeton partagé, tout le monde utilise le même profil propriétaire (docs.openclaw.ai).
  2. Faites rejoindre les deux appareils à la même session, pas à deux sessions différentes. Ouvrez l’interface Control UI ou le canal de discussion sur chaque appareil, attribuez explicitement le propriétaire de la session (Control UI Assign to me / Assign to, ou l’outil sessions avec assign_owner) et utilisez les mentions @ pour transmettre le relais. Les messages privés et les salons de groupe nécessitent des listes d’autorisation distinctes (docs.openclaw.ai). Réattribuer le propriétaire change la responsabilité, mais pas le partage lié au créateur ni les droits d’archivage : mieux vaut donc conserver un créateur stable.
  3. Activez la file et rendez le travail résistant aux redémarrages. Basculez la session partagée en mode file d’attente afin qu’un message envoyé pendant un tour patiente au lieu d’entrer en concurrence avec lui ; sans cette option, des utilisateurs signalent que des messages peuvent disparaître silencieusement. Conservez un fichier active-tasks.md dans l’espace de travail, avec une ligne par engagement (terminé / en cours / suivant), et ajoutez un Boot.md demandant à l’agent de le lire au démarrage (x.com). Vérifiez que le modèle répond avant de compter sur le second appareil : enregistrer les identifiants ne suffit pas à confirmer que tout fonctionne (docs.openclaw.ai).
  4. Allongez la durée de vie des sessions sur les canaux utilisés depuis un téléphone. Si Telegram sert de second écran et que votre fil utilise la réinitialisation signalée thread: { mode: "idle", idleMinutes: 180 }, augmentez cette durée pour les travaux longs — un utilisateur l’a portée à 4 jours — et séparez les sujets afin que la sortie de cron ne sature pas le contexte partagé.
  5. Donnez à chaque personne son propre compte de modèle. Les profils du Gateway peuvent contenir des identifiants personnels. Les nouvelles sessions privilégient alors la valeur par défaut personnelle sans modifier celle du Gateway, et les autres utilisateurs ne voient qu’une étiquette au niveau de la personne, pas son adresse e-mail ni son identifiant de compte (docs.openclaw.ai). Les identifiants doivent être saisis via une interface protégée ou des invites masquées dans le terminal, jamais collés dans une conversation où ils seraient ajoutés à la transcription partagée.
  6. Testez toute la chaîne. Depuis le second appareil, envoyez un message pendant un tour et vérifiez qu’il est conservé puis traité une fois le tour actif terminé. Redémarrez ensuite le Gateway et confirmez que active-tasks.md restaure bien l’engagement. La checklist officielle de mise en production se termine de la même manière : vérifier le flux complet avant de considérer le travail terminé (docs.openclaw.ai).

Les règles qui empêchent le contexte partagé de se dégrader

Trois règles suffisent à éviter la plupart des dérives décrites par les utilisateurs.

Attribuez chaque écriture en mémoire. Le problème le plus discret est l’accumulation de règles sans auteur, au point que plus personne n’ose les supprimer : « au bout de six mois, le contexte partagé est rempli de règles dont personne ne sait à qui elles appartiennent, et personne ne se sent autorisé à les supprimer ». La solution proposée est simple : « un auteur pour chaque écriture en mémoire » (x.com). Le vrai problème vient des écritures partagées sans attribution. Préfixez les notes durables par le nom de la personne à l’origine de la demande et la date, puis faites le ménage chaque mois.

Placez le profil le moins fiable dans un bac à sable. Les rôles peuvent limiter l’accès aux sessions, les agents autorisés et les autorisations opérateur. Les sessions invitées peuvent aussi être forcées dans des bacs à sable avec workspaceAccess: "none", afin que les outils de fichiers et de shell utilisent un espace de travail privé plutôt que celui de l’agent partagé (docs.openclaw.ai). Gardez les brouillons privés dans des sessions Draft, en sachant qu’ils disparaissent des barres latérales des autres utilisateurs mais ne sont jamais invisibles pour les administrateurs (docs.openclaw.ai).

Sachez quand arrêter de partager. Un opérateur utilisant plusieurs agents qualifie la fuite de contexte de « principal défi pratique » : les agents « empiètent sur le territoire des autres » (u/BP041, r/openclaw). Des utilisateurs sinophones arrivent à une règle plus directe : régler un agent, puis le cloner pour chaque machine — « l’aider à se cloner sur un nouvel appareil » afin que la configuration ajustée devienne « un agent par personne » (x.com) — en synchronisant uniquement la mémoire et les fichiers dot, et en laissant de côté les identifiants et les sessions actives (x.com). Cela rejoint la solution de repli proposée par la documentation : des coffres Memory Wiki propres à chaque agent (vault.scope = "agent"), des répertoires Markdown explicitement partagés plutôt qu’une recherche inter-agent dans les transcriptions, et des Gateways distincts lorsque l’isolation doit être réelle (github.com).

FAQ

Deux appareils peuvent-ils partager simultanément une session d’agent OpenClaw ?

Oui. Les deux appareils rejoignent la même session ; c’est la session, et non l’appareil, qui conserve le contexte. Attribuez un propriétaire et activez le mode file d’attente pour que le message du second appareil patiente (docs.openclaw.ai).

Pourquoi les consignes disparaissent-elles après une compression, /new ou un redémarrage ?

Parce qu’un message de chat n’est pas une tâche stockée. La compression résume le contexte, /new démarre une nouvelle session et les redémarrages effacent l’état conservé en mémoire. Gardez les engagements dans active-tasks.md et utilisez un Boot.md pour le relire (x.com).

Deux personnes doivent-elles partager un agent ou utiliser chacune le sien ?

Partagez un agent lorsque les deux personnes ont besoin du même fil, de la même mémoire et de la même file d’attente. Utilisez un agent par personne — ou un Gateway par personne — lorsque les historiques, les identifiants ou les autorisations ne doivent pas être mélangés ; les fonctions multi-utilisateurs ne constituent pas une isolation de sécurité (docs.openclaw.ai). Le pilotage partagé peut ajouter des trailers de commit Co-authored-by lorsque l’attribution GitHub est configurée (docs.openclaw.ai).

Partager ou cloner : faites votre choix en 30 secondes

Votre situationÀ faire
Une personne, ordinateur portable + téléphoneUne session partagée, mode file d’attente activé, active-tasks.md + Boot.md, délai d’inactivité long
Deux coéquipiers de confiance, une seule tâcheUne session partagée, propriétaire explicite, mentions @ pour les relais, écritures en mémoire signées, bac à sable invité pour le profil junior
Deux personnes, travaux séparésDeux agents — ou deux Gateways —, compétences partagées via ~/.openclaw/skills, et jamais de agentDir partagé
Accès non fiable ou proche de données clientDes Gateways distincts sur des utilisateurs ou hôtes différents ; exposez certaines sessions en lecture seule avec Session Share (docs.openclaw.ai)

Le mode file d’attente empêche deux personnes de taper l’une par-dessus l’autre, mais il ne résout pas les consignes contradictoires : les entrées fusionnées peuvent toujours se mélanger. Le fichier, lui, garantit que leurs consignes survivront au redémarrage.