---
description: Detailed OpenClaw v2026.7.1 release notes for July 13, 2026, covering clients, channels, models, sessions, security, plugins, tools, and administration.
keywords:
    - OpenClaw
    - v2026.7.1
    - release notes
    - Control UI
    - Gateway
    - reliability
summary: Refontes majeures de l’interface de contrôle et de l’intégration, importantes mises à jour d’iOS, d’Android et de macOS, prise en charge étendue des modèles et améliorations substantielles de Telegram, Slack, Discord et Apple Messages.
title: v2026.7.1
x-i18n:
    generated_at: "2026-07-16T13:46:58Z"
    model: gpt-5.6
    postprocess_version: locale-links-v1
    prompt_version: 32
    provider: openai
    source_hash: ce1efb569acfec7b14dcbc05907f9fcb54a065fd6a508d77a785760b0997dcd1
    source_path: releases/2026.7.1.md
    workflow: 16
---

# Notes de version d’OpenClaw v2026.7.1 (2026-07-13)

OpenClaw v2026.7.1 apporte des refontes majeures de l’interface de contrôle et de l’intégration initiale, des mises à jour importantes des applications officielles iOS, Android et macOS, une prise en charge étendue des modèles et des fournisseurs, notamment la compatibilité avec GPT-5.6, Tencent Hy3 et Meta Muse Spark 1.1, ainsi que des workflows renforcés pour Codex et les agents de programmation connectés. Telegram, Slack, Discord et Apple Messages bénéficient chacun de mises à jour substantielles, tandis que les boucles de plantage du Gateway, les tâches planifiées, le contrôle du navigateur à distance, les terminaux d’espace de travail, les sessions et les objectifs sont également améliorés. OpenClaw bénéficie en outre de nombreux correctifs et perfectionnements généraux.

## Points forts

### Refonte de l’interface de contrôle : discussions, sessions, espaces de travail et utilisation

L’[interface de contrôle](/fr/web/control-ui) fonctionne désormais davantage comme un espace de travail unique dans le navigateur pour les conversations et le travail en parallèle. Les discussions bénéficient de titres plus clairs, les sessions récentes sont plus faciles à trouver, épingler, regrouper, renommer, dupliquer, archiver et marquer comme lues, et plusieurs sessions peuvent être affichées dans des volets redimensionnables qui sont restaurés après un rechargement. Le placement par glisser-déposer, une page Sessions plus dense et une vue en direct des tâches facilitent le passage d’une activité en cours à une autre sans jongler entre les onglets du navigateur.

Les commandes de discussion sont plus claires pendant l’exécution des tâches. La zone de rédaction permet de continuer à utiliser les pièces jointes, le choix du modèle, la voix, le raisonnement, les états d’envoi et d’arrêt, ainsi que les actions sur les messages, quelle que soit la taille de l’écran ; les utilisateurs de Talk peuvent choisir ou actualiser un microphone depuis les paramètres et bénéficier d’indications lisibles sur les autorisations sur les écrans étroits ; les réponses citées conservent le passage auquel elles répondent ; et les lignes compactes des outils permettent de garder accessibles les entrées, les résultats, les images, la progression, les erreurs, les approbations et les instructions d’orientation sans surcharger la conversation.

Les informations d’utilisation sont plus faciles à comprendre depuis les [vues d’état](/fr/cli/status) comme depuis le navigateur. La page Utilisation compare les dépenses estimées récentes et les valeurs quotidiennes sans rechargements répétés ni survol, présente la part de chaque fournisseur, modèle, agent ou canal et peut inclure les forfaits, quotas, soldes et budgets communiqués par les fournisseurs, ainsi que les détails de facturation d’Anthropic ou d’OpenAI. Les graphiques sur sept, trente et quatre-vingt-dix jours affichent désormais les jours sans activité, les rapports volumineux couvrant tous les agents limitent les tâches simultanées afin de réduire les ralentissements et la pression sur la mémoire, et les panneaux contextuels au niveau des discussions ainsi que les détails des messages terminés indiquent le modèle actif, les jetons, l’utilisation du cache, la pression sur le contexte et le coût estimé.

L’association avec les appareils mobiles, l’état du Gateway, les approbations des Node de bureau, les travaux GitHub liés, les fichiers des espaces de travail, les tâches planifiées, les arbres de travail, les éléments du Workboard et les tâches en arrière-plan sont désormais accessibles plus près de la conversation. Leur état, leurs autorisations et les étapes suivantes sont également plus clairs.

Cette refonte renforce aussi les mécanismes sous-jacents à ces commandes. Les connexions et reconnexions du tableau de bord utilisent moins de mémoire temporaire du Gateway, ce qui réduit les faux avertissements de pression, tandis que la récupération après les redémarrages temporaires du Gateway et la présence de ressources obsolètes est plus fiable. Les Gateway utilisant un routage par chemin conservent la destination et les identifiants appropriés, les choix enregistrés persistent après une actualisation, et les échecs d’authentification, de protocole, de mise à jour et d’association indiquent des étapes suivantes plus utiles au lieu de laisser la page bloquée ou dans un état ambigu.

Les mises en page adaptatives permettent de continuer à utiliser l’historique et les commandes des discussions sur les téléphones, les tablettes, les petits écrans en orientation paysage et les grands écrans de bureau. Le comportement du clavier et du focus, le contraste, les libellés d’accessibilité, la copie, le défilement et les zones tactiles sont plus cohérents, tandis que les textes relatifs à la navigation, à l’association, à la voix, à la planification et à l’état sont disponibles dans davantage de langues prises en charge.

<Accordion title="Sources et contributeurs">

- Les nouvelles conversations de l’interface de contrôle reçoivent désormais des titres concis dans la barre latérale à partir de leur premier message, et les opérateurs peuvent acheminer la génération des titres du tableau de bord, des sujets Telegram et des fils Discord via un `utilityModel` plus petit. [#87643](https://github.com/openclaw/openclaw/pull/87643) Merci à @juliangsm et @zhangguiping-xydt.
- Les administrateurs appairés peuvent désormais créer un code QR de configuration mobile ou un code copiable depuis les Nodes de l’interface de contrôle et l’utiliser pour connecter une application iOS ou Android officielle. [#94672](https://github.com/openclaw/openclaw/pull/94672) Merci à @bkudiess et @douhualili.
- L’interface de contrôle facilite désormais la création, la recherche et le changement de conversation depuis une barre latérale de sessions renseignée, tout en gardant à portée de main les informations sur la pression du contexte et les quotas des fournisseurs. [#99289](https://github.com/openclaw/openclaw/pull/99289) Voir aussi [#99288](https://github.com/openclaw/openclaw/issues/99288).
- La barre latérale de l’interface de contrôle se concentre désormais sur les sessions et quelques destinations par défaut, tout en permettant aux utilisateurs d’épingler leurs pages préférées et de conserver ces choix après les rechargements. [#100296](https://github.com/openclaw/openclaw/pull/100296)
- Le composeur repensé de l’interface de contrôle rend les pièces jointes, la sélection du fournisseur et du modèle, la voix, l’état d’exécution et les actions sur les messages plus clairs et plus stables dans les dispositions mobiles et de bureau. [#100461](https://github.com/openclaw/openclaw/pull/100461) Merci à @fuller-stack-dev.
- Les utilisateurs de Talk dans l’interface de contrôle peuvent choisir et actualiser un microphone sur les écrans étroits et consulter des instructions claires sur les autorisations lorsque l’accès par le navigateur est bloqué. [#101377](https://github.com/openclaw/openclaw/pull/101377) Merci à @fuller-stack-dev.
- La messagerie de l’interface de contrôle peut désormais afficher plusieurs sessions redimensionnables côte à côte ou empilées, conserver la disposition des volets après les rechargements et maintenir le volet actif utilisable sur les écrans étroits. [#100754](https://github.com/openclaw/openclaw/pull/100754)
- L’interface de contrôle dispose désormais d’une page Tasks en direct, où les opérateurs peuvent examiner les travaux en arrière-plan actifs et récents, ouvrir leur session, actualiser les détails et annuler les tâches en file d’attente ou en cours d’exécution lorsqu’ils y sont autorisés. [#100789](https://github.com/openclaw/openclaw/pull/100789)
- Les listes de sessions sur le Web et les appareils mobiles prennent désormais en charge les groupes épinglés et personnalisés, le statut partagé de lecture et de non-lecture, les indicateurs de sortie en arrière-plan, le branchement des transcriptions ainsi que les actions intégrées de renommage, d’archivage, de déplacement et de suppression. [#100814](https://github.com/openclaw/openclaw/pull/100814)
- La page Sessions de l’interface de contrôle affiche désormais davantage de statuts et d’actions utiles sur un écran standard, les détails des lignes pouvant être ouverts pour révéler les étiquettes, les commandes de réglage et l’historique des points de contrôle au lieu d’imposer un défilement horizontal pour les opérations courantes. [#100943](https://github.com/openclaw/openclaw/pull/100943)
- Les utilisateurs de l’interface de contrôle peuvent faire glisser une session directement dans le volet actuel ou sur n’importe quel côté pour créer une division, avec un aperçu indiquant où elle sera placée. [#101191](https://github.com/openclaw/openclaw/pull/101191)
- Les opérateurs peuvent configurer une fois pour toutes des pieds de réponse indiquant l’utilisation des jetons ou l’utilisation complète par réponse avec `messages.responseUsage`, tandis que les utilisateurs peuvent les désactiver ou réinitialiser une session à la valeur par défaut héritée. [#89762](https://github.com/openclaw/openclaw/pull/89762) Merci à @marvinthebored, @obviyus et @peetiegonzalez.
- La page Usage de l’interface de contrôle facilite désormais la comparaison des coûts récents estimés, des valeurs quotidiennes et de la part de chaque fournisseur, modèle, agent ou canal, sans rechargements répétés ni survol. [#100432](https://github.com/openclaw/openclaw/pull/100432)
- La page Usage affiche désormais les offres, quotas, heures de réinitialisation, soldes, dépenses et budgets signalés par les fournisseurs, ainsi que l’analyse des sessions OpenClaw, notamment pour OpenRouter et Venice. [#100520](https://github.com/openclaw/openclaw/pull/100520)
- La section Usage de l’interface de contrôle peut désormais afficher les dépenses quotidiennes, les jetons, les requêtes, les principaux modèles et les catégories de facturation d’Anthropic et d’OpenAI pour aujourd’hui, sept jours et trente jours lorsque les identifiants d’administration sont configurés. [#100672](https://github.com/openclaw/openclaw/pull/100672)
- Les graphiques quotidiens des jetons et des coûts incluent désormais les jours sans activité dans les plages de dates délimitées, afin que les vues sur 7 jours, 30 jours et 90 jours affichent toute la période calendaire au lieu de se réduire aux jours actifs. [#81467](https://github.com/openclaw/openclaw/pull/81467) Merci à @adapepper.
- Les rapports de coûts de tous les agents sur les installations de grande taille limitent désormais les opérations simultanées du Gateway, afin de réduire le risque de ralentissement, d’expiration ou de pression supplémentaire sur la mémoire du tableau de bord. [#101589](https://github.com/openclaw/openclaw/pull/101589) Merci à @vincentkoc et @zw-xysk.
- Le survol ou la sélection au clavier d’un ticket GitHub public ou d’une demande d’extraction dans la messagerie de l’interface de contrôle affiche désormais un aperçu de son statut, de son titre, de son auteur, de son activité, de ses commentaires et de l’ampleur des modifications sans quitter la conversation. [#100434](https://github.com/openclaw/openclaw/pull/100434)
- Les chemins de fichiers dans les conversations de l’interface de contrôle sont désormais cliquables et ouvrent, à la ligne citée, un aperçu consultable avec coloration syntaxique ainsi que des options permettant de révéler, copier ou ouvrir le fichier dans un éditeur pris en charge. [#100679](https://github.com/openclaw/openclaw/pull/100679)
- Les échecs de connexion de l’interface de contrôle affichent désormais des messages exploitables tels que « Appairage requis » au lieu de les remplacer par un message générique de déconnexion du Gateway. [#54758](https://github.com/openclaw/openclaw/pull/54758) Merci à @ruanrrn.
- Les sessions de l’interface de contrôle utilisant une sortie entièrement détaillée ouvrent désormais par défaut les entrées et les résultats des outils, ce qui réduit les clics répétés pendant le débogage et la révision. [#74398](https://github.com/openclaw/openclaw/pull/74398) Merci à @samrusani.
- L’indicateur de contexte de l’interface de contrôle reste désormais visible avec un total approximatif mis en cache pendant qu’une réponse est active, sans utiliser de données obsolètes pour les avertissements urgents ni pour l’action Compact. [#89772](https://github.com/openclaw/openclaw/pull/89772) Merci à @bladin.
- L’interface de contrôle et WebChat ne laissent plus l’échec interne non terminal d’un outil dominer la transcription avec une bannière d’erreur rouge après que l’assistant a déjà produit une réponse finale normale. [#90122](https://github.com/openclaw/openclaw/pull/90122) Merci à @harjothkhara.
- Un agent par défaut sélectionné dans l’interface de contrôle reste désormais sélectionné après l’actualisation, sans enregistrer les autres paramètres inachevés. [#91457](https://github.com/openclaw/openclaw/pull/91457) Merci à @zengwen-dt.
- Les réponses diffusées en continu par segments dans WebChat de l’interface de contrôle restent désormais regroupées sous un seul avatar d’assistant et un seul pied de réponse, au lieu d’apparaître comme plusieurs réponses distinctes. [#92063](https://github.com/openclaw/openclaw/pull/92063) Voir aussi [#63956](https://github.com/openclaw/openclaw/issues/63956). Merci à @contentfree et @harjothkhara.
- Les utilisateurs de WebChat dans le tableau de bord peuvent effectuer un clic droit sur un message terminé et y répondre avec le contexte de la citation visible, au lieu de devoir le copier et le mettre en forme manuellement. [#92654](https://github.com/openclaw/openclaw/pull/92654) Merci à @programmingwtf et @vincentkoc.
- Après l’installation d’une mise à jour, l’interface de contrôle indique désormais lorsqu’un redémarrage du Gateway est déjà en cours, au lieu de donner l’impression que le bouton Update ne répond pas. [#93082](https://github.com/openclaw/openclaw/pull/93082) Merci à @goutamadwant.
- Dans WebChat de l’interface de contrôle, les réponses en direct utilisant des outils conservent désormais l’introduction de l’assistant avant la carte de l’outil, même lorsque les horloges du navigateur et du Gateway diffèrent. [#93184](https://github.com/openclaw/openclaw/pull/93184) Merci à @pick-cat.
- Quick Create dans l’interface de contrôle permet désormais aux utilisateurs de choisir un modèle pour une tâche Cron de tour d’agent et indique si les tâches existantes utilisent ce modèle ou le modèle par défaut. [#95341](https://github.com/openclaw/openclaw/pull/95341) Merci à @ly85206559.
- WebChat de l’interface de contrôle peut désormais afficher le préambule et les commentaires de Codex pendant l’exécution des outils, avec la possibilité de masquer ou de conserver cette progression après la réponse finale. [#95708](https://github.com/openclaw/openclaw/pull/95708) Merci à @obviyus et @ragesaq.
- Les identifiants de réponse longs contenant des emoji ou d’autres caractères supplémentaires restent désormais valides lorsqu’ils sont raccourcis pour les directives de réponse de WebChat et du Gateway, au lieu d’être tronqués en texte mal formé. [#96938](https://github.com/openclaw/openclaw/pull/96938) Merci à @ly-wang19.
- Les détails longs sur l’activité des outils restent désormais lisibles lorsqu’ils sont raccourcis pour la messagerie, l’interface utilisateur ou les journaux, même lorsqu’un emoji ou un autre caractère supplémentaire se trouve au point de coupure. [#96958](https://github.com/openclaw/openclaw/pull/96958) Merci à @bartok9, @ly-wang19 et @vincentkoc.
- WebChat affiche désormais ensemble les noms longs du fournisseur et du modèle ainsi que le niveau de raisonnement sélectionné dans le composeur, tandis que les écrans étroits conservent une limite de débordement raisonnable. [#96990](https://github.com/openclaw/openclaw/pull/96990) Merci à @maweibin et @xiayingren123.
- Les agents peuvent utiliser `message.send` sans cible pour envoyer des mises à jour de progression ou intermédiaires dans le WebChat actuel, sans destination explicite. [#97167](https://github.com/openclaw/openclaw/pull/97167) Voir aussi [#96840](https://github.com/openclaw/openclaw/issues/96840). Merci à @mantiscartography et @zhangguiping-xydt.
- Les nouvelles conversations de l’interface de contrôle utilisent désormais la fenêtre de contexte actuelle du modèle sélectionné au lieu d’hériter d’une limite obsolète et plus petite provenant d’une session parente. [#97332](https://github.com/openclaw/openclaw/pull/97332) Merci à @galiniliev.
- WebChat reste positionné sur la réponse la plus récente lorsque le contenu audio ou vidéo de l’assistant finit de se charger, tout en respectant les lecteurs qui ont intentionnellement fait défiler la page vers le haut. [#97575](https://github.com/openclaw/openclaw/pull/97575) Merci à @turbotheturtle.
- Les pages de l’interface de contrôle correspondant à plusieurs Gateway sur un même domaine restent désormais connectées au Gateway désigné par leur chemin, au lieu de réutiliser la destination enregistrée d’une page voisine. [#97665](https://github.com/openclaw/openclaw/pull/97665) Merci à @alix-007.
- `/pair qr` fournit désormais un code numérisable dans Telegram et l’interface de contrôle, ou un code lisible dans la TUI, sans stocker le secret de configuration à usage unique dans l’historique des conversations. [#97933](https://github.com/openclaw/openclaw/pull/97933) Merci à @joshavant.
- Les cartes `/pair qr` expirées dans l’interface de contrôle indiquent désormais clairement que le code est inutilisable et invitent les utilisateurs à en générer un nouveau. [#98049](https://github.com/openclaw/openclaw/pull/98049) Voir aussi [#98039](https://github.com/openclaw/openclaw/issues/98039). Merci à @ooiuuii.
- Les codes d’association mobile expirés expliquent désormais comment relancer `/pair qr` dans la langue sélectionnée. Sources : [bb4afe4](https://github.com/openclaw/openclaw/commit/bb4afe40ae6dbd1c711d22cdaee0b36cf404e5f8), [da9308d](https://github.com/openclaw/openclaw/commit/da9308ddb73113b54c860eafe8d8c2a81b860e41), [dfaec18](https://github.com/openclaw/openclaw/commit/dfaec1888d7ab3f5464ddd5a4a0b6f9fa9cfdb68), [6b7986e](https://github.com/openclaw/openclaw/commit/6b7986e14e00978e4a0b30faf324b3a21f35c717), [21af6e7](https://github.com/openclaw/openclaw/commit/21af6e7b19bfcea5da47316bac973eeb2d211ce8), [4e62124](https://github.com/openclaw/openclaw/commit/4e621240e8da1783657b87ea0c53a750274ea377), [6cd0106](https://github.com/openclaw/openclaw/commit/6cd0106bbc20b9d42a3d714f09e3ced3607fb208), [a72a641](https://github.com/openclaw/openclaw/commit/a72a64136ea047a05a0558f41760b57480ae5e5e), [a143ae4](https://github.com/openclaw/openclaw/commit/a143ae4e7dfea84b209948cd26044b8d8aec77e3), [cd30b1c](https://github.com/openclaw/openclaw/commit/cd30b1c3eeef9eb1b20b858aebb805698cded6f2), [f69e27a](https://github.com/openclaw/openclaw/commit/f69e27afa2b4fb99e169c51a49f39c3fb7e09c21), [ccddbee](https://github.com/openclaw/openclaw/commit/ccddbeea6a104fdf292a9d6ba2e8cca60dd21631), [9ed03df](https://github.com/openclaw/openclaw/commit/9ed03df44d812ccb14b2e69897be7e3209b65770), [f84243f](https://github.com/openclaw/openclaw/commit/f84243fe3fb4d83adb97e88baf607329ab9e9aa2), [3d06ee9](https://github.com/openclaw/openclaw/commit/3d06ee9ed78e946cc02d5b7af9e974c331e60e96), [9bd071e](https://github.com/openclaw/openclaw/commit/9bd071ead3d14e533e619acac075dba2c40bc9ec), [405b7a5](https://github.com/openclaw/openclaw/commit/405b7a52c159f996fc9a7dfc3bc899e2f3411ba0), [1a160ce](https://github.com/openclaw/openclaw/commit/1a160cec093e48141912e8b2f92a5c5ea007e6b5).
- La Control UI affiche désormais comme en cours les exécutions d’agents déclenchées par un canal, afin que les utilisateurs puissent voir que les messages provenant de canaux tels que Weixin sont activement traités. [#98257](https://github.com/openclaw/openclaw/pull/98257) Merci à @scotthuang.
- Le volet latéral de l’espace de travail de la Control UI fournit désormais aux longues listes de fichiers de projet leur propre barre de défilement, afin que les fichiers restent consultables sans déborder de l’écran. [#98646](https://github.com/openclaw/openclaw/pull/98646) Voir aussi [#98566](https://github.com/openclaw/openclaw/issues/98566). Merci à @645648406-max et @wuqxuan.
- Les chemins des fichiers de l’espace de travail de session peuvent désormais être copiés depuis Chat, même lorsque la Control UI fonctionne en HTTP simple ou dans un autre contexte dépourvu de l’API Clipboard standard. [#98764](https://github.com/openclaw/openclaw/pull/98764) Voir aussi [#98759](https://github.com/openclaw/openclaw/issues/98759). Merci à @adinballew et @zengwen-dt.
- Les conversations de la Control UI faisant un usage intensif des outils utilisent désormais des lignes d’activité compactes et extensibles : les commandes et les résultats occupent ainsi moins d’espace, tandis que tous les détails restent accessibles en un clic. [#99763](https://github.com/openclaw/openclaw/pull/99763)
- La Control UI reste désormais fixe lors du défilement élastique au pavé tactile sur Mac et dans les navigateurs de bureau, tandis que les fils de discussion et les listes continuent de défiler normalement. [#99830](https://github.com/openclaw/openclaw/pull/99830)
- La conversation de la Control UI est plus facile à parcourir grâce à des commandes de rédaction plus discrètes, un curseur de raisonnement allant de Faster à Smarter et un état de connexion qui ne concurrence plus le texte persistant de la version. [#99838](https://github.com/openclaw/openclaw/pull/99838) Voir aussi [#99837](https://github.com/openclaw/openclaw/issues/99837).
- Les liens profonds montés, Set Default, les avatars authentifiés, les alertes Cron et le défilement de Workboard fonctionnent de nouveau correctement dans toute la Control UI. [#100106](https://github.com/openclaw/openclaw/pull/100106)
- Les administrateurs peuvent désormais ouvrir l’association mobile depuis n’importe quelle page de la Control UI ou depuis Quick Settings, tandis que les opérateurs non administrateurs continuent de voir l’action désactivée, accompagnée d’une explication sur les droits d’accès. [#100157](https://github.com/openclaw/openclaw/pull/100157)
- La Control UI affiche désormais immédiatement un code QR d’association mobile prêt à l’emploi, même lorsque la liste des appareils en attente est lente, puis ajoute les demandes d’approbation à leur arrivée. [#100179](https://github.com/openclaw/openclaw/pull/100179)
- Les utilisateurs de la Control UI peuvent sélectionner et copier l’activité des outils sans basculer sa ligne, et les outils ayant échoué ne répètent plus d’indicateurs d’erreur redondants. [#100199](https://github.com/openclaw/openclaw/pull/100199) Merci à @steipete-oai.
- La page de connexion du tableau de bord du Gateway s’adapte et fonctionne désormais mieux sur les téléphones et dans les fenêtres de faible hauteur, avec des zones tactiles plus grandes, une saisie d’URL plus simple et une aide à la récupération accessible. [#100208](https://github.com/openclaw/openclaw/pull/100208)
- Les utilisateurs de la Control UI peuvent organiser les longues listes de sessions par groupe personnalisé, canal, type, agent ou date, avec des affectations persistantes et une gestion par glisser-déposer. [#100262](https://github.com/openclaw/openclaw/pull/100262)
- Les utilisateurs peuvent ouvrir l’anneau de contexte de la Control UI afin d’examiner l’utilisation exacte du contexte, les derniers nombres de jetons d’entrée et de sortie ainsi que le modèle actif, sans quitter la conversation. [#100264](https://github.com/openclaw/openclaw/pull/100264)
- Les images renvoyées par des outils tels que `read` apparaissent désormais directement dans la conversation de la Control UI au lieu d’être uniquement mentionnées dans le texte. [#100295](https://github.com/openclaw/openclaw/pull/100295) Merci à @lzyyzznl, @pandah97 et @rquinones84.
- L’activité des outils de la Control UI regroupe désormais les appels et résultats correspondants dans une seule ligne cohérente, supprime les libellés et catégories répétés et maintient accessibles les entrées, sorties, aperçus et erreurs réelles. [#100318](https://github.com/openclaw/openclaw/pull/100318)
- Le panneau de contexte de la Control UI affiche désormais le coût total estimé de la dernière exécution ainsi que, lorsqu’elles sont disponibles, les ventilations des entrées, des sorties, des lectures du cache et des écritures dans le cache, à côté du fournisseur et du modèle. [#100379](https://github.com/openclaw/openclaw/pull/100379)
- La barre latérale de la Control UI maintient désormais visibles toutes les conversations épinglées aux côtés de neuf conversations récentes ordinaires, dans une disposition pour ordinateur et tablette plus compacte et centrée sur les conversations. [#100386](https://github.com/openclaw/openclaw/pull/100386)
- La zone de rédaction de la Control UI affiche désormais clairement le niveau de raisonnement, regroupe Talk et ses paramètres et conserve des commandes de modèle utilisables sur téléphone et en orientation paysage. [#100445](https://github.com/openclaw/openclaw/pull/100445)
- Talk dans la Control UI démarre désormais depuis une zone de rédaction simplifiée, tandis que les administrateurs peuvent définir dans Settings des valeurs par défaut persistantes pour le fournisseur, le transport, la temporisation et le raisonnement. [#100453](https://github.com/openclaw/openclaw/pull/100453)
- Les déconnexions temporaires du Gateway ne remplacent plus une page authentifiée de la Control UI par l’écran de connexion, ce qui préserve le contexte du tableau de bord pendant la reconnexion automatique. [#100479](https://github.com/openclaw/openclaw/pull/100479)
- La page Cron Jobs de la Control UI utilise désormais des résumés compacts, des indications d’état claires, des détails extensibles et un menu de débordement, afin d’accélérer l’examen des longues listes de tâches. [#100646](https://github.com/openclaw/openclaw/pull/100646)
- La barre latérale de la Control UI maintient désormais les conversations récentes en place lors des changements, regroupe les points d’accès à la recherche, prend en charge les actions tactiles sur les sessions et réduit les éléments d’interface superflus. [#100648](https://github.com/openclaw/openclaw/pull/100648)
- Les images reçues via Telegram, iMessage et d’autres canaux réapparaissent désormais en ligne lorsque les utilisateurs revisitent l’historique des conversations de la Control UI après un rechargement. [#100725](https://github.com/openclaw/openclaw/pull/100725) Merci à @sweetcornna et @vergissberlin.
- La pastille d’objectif de la Control UI permet désormais de mettre en pause, reprendre, effacer, examiner et préparer une modification, avec des détails en temps réel sur la durée et les jetons, tandis que les utilisateurs des commandes et de la TUI peuvent reformuler un objectif sans réinitialiser son budget. [#100736](https://github.com/openclaw/openclaw/pull/100736)
- La Control UI maintient Overview, Workboard, Agents et More visibles, tout en permettant à la liste des sessions d’utiliser la hauteur disponible et de défiler indépendamment. [#100742](https://github.com/openclaw/openclaw/pull/100742)
- Les documents de l’assistant téléchargés depuis la Control UI conservent désormais des noms de fichiers d’origine reconnaissables au lieu d’exposer des noms de préparation suffixés par un UUID. [#100743](https://github.com/openclaw/openclaw/pull/100743)
- La copie de code depuis une longue réponse de la Control UI conserve désormais la conversation à la même position de lecture au lieu de la faire remonter. [#100807](https://github.com/openclaw/openclaw/pull/100807) Merci à @jvlegod.
- Les utilisateurs de la Control UI sur ordinateur peuvent choisir si Entrée envoie le message ou insère une nouvelle ligne, avec Commande+Entrée ou Ctrl+Entrée comme raccourci d’envoi, et ce choix est conservé pour ce Gateway. [#100810](https://github.com/openclaw/openclaw/pull/100810) Merci à @moomx et @vincentkoc.
- Changer de conversation dans la Control UI ne déplace plus inopinément la session sélectionnée en haut de la liste, et les utilisateurs peuvent choisir pour la barre latérale un ordre stable de création ou un ordre selon la dernière mise à jour. [#100927](https://github.com/openclaw/openclaw/pull/100927) Merci à @shakkernerd et @vyctorbrzezowski.
- Les paramètres de la Control UI utilisent désormais des chemins `/settings/...` cohérents, tandis que les anciens favoris continuent de fonctionner, ce qui fiabilise les rechargements et les liens sur les installations hébergées ou derrière un proxy inverse. [#100928](https://github.com/openclaw/openclaw/pull/100928) Merci à @vyctorbrzezowski.
- La navigation de la Control UI place désormais l’identité visuelle, la recherche et les commandes de la barre latérale là où les utilisateurs sur ordinateur et mobile s’attendent à les trouver, avec des sessions actives plus claires, des horodatages compacts et un accès plus facile au terminal. [#101017](https://github.com/openclaw/openclaw/pull/101017) Merci à @shakkernerd et @vyctorbrzezowski.
- La commande de réduction de la barre latérale de la Control UI se trouve désormais dans la barre latérale qu’elle affecte, au lieu de ressembler à un bouton sans rapport de la barre supérieure ou du terminal. [#101038](https://github.com/openclaw/openclaw/pull/101038)
- Les utilisateurs de Talk dans la Control UI peuvent choisir, à côté du bouton Talk, le microphone système par défaut ou tout microphone visible par le navigateur, et reçoivent un message clair lorsqu’un appareil enregistré est indisponible. [#101100](https://github.com/openclaw/openclaw/pull/101100)
- Les groupes de sessions de la barre latérale peuvent désormais être renommés, supprimés sans effacer les sessions, créés lorsqu’ils sont vides ou désactivés afin de rétablir une seule liste non groupée de sessions récentes. [#101117](https://github.com/openclaw/openclaw/pull/101117)
- La Control UI affiche désormais la navigation Workboard uniquement lorsque Workboard est activé et présente une barre latérale réduite plus épurée, avec des icônes plus claires et un meilleur espacement des états. [#101123](https://github.com/openclaw/openclaw/pull/101123)
- La Control UI place désormais la recherche, l’accès à la barre latérale, le choix du thème et l’identité visuelle de macOS à des emplacements plus clairs et plus prévisibles, avec des libellés précis pour les lecteurs d’écran. [#101497](https://github.com/openclaw/openclaw/pull/101497)
- Les interruptions temporaires du Gateway ne décalent plus le contenu de la Control UI vers le bas avec une bannière pleine largeur : le tableau de bord reste donc en place tandis qu’un avis Retry compact apparaît. [#101812](https://github.com/openclaw/openclaw/pull/101812)
- Les déconnexions temporaires du Gateway utilisent désormais une pastille de reconnexion plus discrète et intégrée au tableau de bord, tout en conservant le même comportement pour Retry et l’accessibilité. [#101844](https://github.com/openclaw/openclaw/pull/101844)
- Les paramètres de commentaires de l’interface de contrôle utilisent désormais la langue sélectionnée dans toutes les traductions prises en charge par cette version. Sources : [34badde](https://github.com/openclaw/openclaw/commit/34badde1d983c247cd6b16ad8f5b4e1f9891c0f1), [a9cb866](https://github.com/openclaw/openclaw/commit/a9cb866f62fe9c2f7c8f9a8c3ef1a23cae556781), [ce9166d](https://github.com/openclaw/openclaw/commit/ce9166d1cd8404db51004bbdd5edc95d229788c8), [6b67ada](https://github.com/openclaw/openclaw/commit/6b67ada87ad934f6dd8afbda95830381b3767247), [006c2f7](https://github.com/openclaw/openclaw/commit/006c2f7a2b28433753521f2f9f729ba0032b51ff), [6bdffa5](https://github.com/openclaw/openclaw/commit/6bdffa501bcf8eb1b3b13122b6e2e76149693f07), [b4476ab](https://github.com/openclaw/openclaw/commit/b4476ab72f9d74a946ef0cc963e4d26dab280e45), [5b5c623](https://github.com/openclaw/openclaw/commit/5b5c6237c236b79a894c6d2c1dd4d3bd7e5188f3), [1520d09](https://github.com/openclaw/openclaw/commit/1520d0980741c85407c4e2037dfd5fb9d8f9d1c4), [6140326](https://github.com/openclaw/openclaw/commit/614032676d16bf2dd98030e7925f14ad52f5618e), [75bd44a](https://github.com/openclaw/openclaw/commit/75bd44a94bfb096010273ae14935b9cd90ccc2d3), [c1aeaf9](https://github.com/openclaw/openclaw/commit/c1aeaf9287ec25428ed1e673d869e193e930ba6b), [49edc0a](https://github.com/openclaw/openclaw/commit/49edc0a8af2f06cca21cd6df2abd81a7d99a574c), [cb69ce7](https://github.com/openclaw/openclaw/commit/cb69ce7ba84f7252acd3b87653a0a91b7442f41d), [bb0af61](https://github.com/openclaw/openclaw/commit/bb0af61d20277cf91205e6fe561dc7cccfc8e969), [0dcfbb0](https://github.com/openclaw/openclaw/commit/0dcfbb09d807800585219a4363eb67438b006f40), [db73ece](https://github.com/openclaw/openclaw/commit/db73ece2de77053433a767bcc587348d5a77fef1), [21e6fc9](https://github.com/openclaw/openclaw/commit/21e6fc948b1977b5702ab4c981dacf4d0b3b6de6).
- Le libellé Toutes les sessions de la barre latérale utilise désormais la langue sélectionnée dans toutes les traductions de l’interface de contrôle prises en charge par cette version. Sources : [b2c3dc2](https://github.com/openclaw/openclaw/commit/b2c3dc2d55f8bef05f2c8107b9c9b867653aec20), [61347a5](https://github.com/openclaw/openclaw/commit/61347a5054e6c4fce8dee39509c104521b087c7e), [a2674b6](https://github.com/openclaw/openclaw/commit/a2674b6aa4333a6c37ddb3cf7a4c7f52924c37c6), [bbabad4](https://github.com/openclaw/openclaw/commit/bbabad4031c3cab4f0e685fb0fcab183520291ab), [8909289](https://github.com/openclaw/openclaw/commit/89092893fea34eefecca09076d643a5b08f62498), [22552d6](https://github.com/openclaw/openclaw/commit/22552d6e667fa8c35ff236f85d3d3e1aa66872fb), [96e3615](https://github.com/openclaw/openclaw/commit/96e361558e7367f452a2b400fc8120c3a4f6fc72), [452351c](https://github.com/openclaw/openclaw/commit/452351cc7152abdd765445a2109726e5278b153f), [5e9a62c](https://github.com/openclaw/openclaw/commit/5e9a62cc1945850b72d7944e937fef969c9f8ed1), [0a9648b](https://github.com/openclaw/openclaw/commit/0a9648ba4766e0c5da87866d6c7299bb07ede4fa), [a803589](https://github.com/openclaw/openclaw/commit/a8035892b1f04b20f1b8e687094e6e7a18dee45c), [7c30ff8](https://github.com/openclaw/openclaw/commit/7c30ff8a60896a290de07af45d0176d2e30069e5), [e3d2878](https://github.com/openclaw/openclaw/commit/e3d2878af44f7095436d6754f73431b9add676b1), [620f2e3](https://github.com/openclaw/openclaw/commit/620f2e3112016622c59350e4aaf71a0e448d0c1a), [aa0f36c](https://github.com/openclaw/openclaw/commit/aa0f36cb0632ae283493f9d01f3d9819548b5107), [c336256](https://github.com/openclaw/openclaw/commit/c336256309956b18ff4c211ab62481c6dcd59d8b), [64dd688](https://github.com/openclaw/openclaw/commit/64dd68899e6b9f8b15c9a3c533e470ba6e36d7a5), [e2ecbc8](https://github.com/openclaw/openclaw/commit/e2ecbc85b7fe30b3096f86ba9cb189fb43807850).
- Le flux d’association mobile de l’interface de contrôle s’affiche désormais dans la langue sélectionnée pour les 18 paramètres régionaux pris en charge, au lieu de mélanger des écrans localisés avec du texte de configuration en anglais. [c78b0d5](https://github.com/openclaw/openclaw/commit/c78b0d59f5a2becf7e3e0f0bb5d470f72e8526ed)
- En cas d’échec de connexion à l’interface de contrôle ou de connexion au Gateway, l’erreur, les étapes de récupération et le lien vers la documentation pertinente s’affichent désormais immédiatement au lieu d’être masqués dans un panneau replié. [f9e194e](https://github.com/openclaw/openclaw/commit/f9e194e4a122f0c142c23f1bc9603466add7eb03)
- La barre latérale Web renseigne désormais de manière fiable les itinéraires de navigation épinglés et supplémentaires, afin que les destinations telles que les arbres de travail restent disponibles. [55a0012](https://github.com/openclaw/openclaw/commit/55a0012c44b52af2f22982cc85568e6e5d0df5c7) Merci à @vincentkoc.
- Les utilisateurs de l’interface de contrôle dans une langue autre que l’anglais voient désormais des libellés traduits pour le menu supplémentaire de Cron et « exécuter si prévu », y compris le libellé d’assistance pour davantage d’actions. [2585d6b](https://github.com/openclaw/openclaw/commit/2585d6b2e8202149576f643259c932406a6f8294)
- L’avertissement d’accès au microphone de l’interface de contrôle pour la saisie vocale en temps réel s’affiche désormais dans la langue sélectionnée par l’utilisateur. [68c85ef](https://github.com/openclaw/openclaw/commit/68c85effcd1e0a1c65673397a206e53bf7d672ac)
- La barre latérale de l’interface de contrôle se compile désormais correctement, tout en conservant le regroupement des sessions et le comportement de glisser-déposer pour diviser l’affichage, après la suppression de texte parasite provenant d’un conflit de fusion. [0e3ce24](https://github.com/openclaw/openclaw/commit/0e3ce24cc8cd16faa78d87b12b114fcf24a42d87)
- Les utilisateurs de langue hindi et russe peuvent désormais bénéficier des traductions correspondantes de l’interface de contrôle, et les opérateurs de la documentation peuvent générer ces éditions linguistiques au moyen du flux de paramètres régionaux existant. [689baa5](https://github.com/openclaw/openclaw/commit/689baa5c1e48be2aa31564fd5c3fd21bf4dfb754) Merci à @vincentkoc.
- Lors de l’association d’un appareil, `/ pair qr` suit désormais le même flux d’association autorisé que `/pair qr`, sans démarrer un tour d’agent ni perturber l’itinéraire existant de l’interface de contrôle. [#98262](https://github.com/openclaw/openclaw/pull/98262) Merci à @brokemac79.
- L’ouverture ou la reconnexion du tableau de bord de l’interface de contrôle utilise désormais beaucoup moins de mémoire temporaire du Gateway, réduisant les faux avertissements `rss_growth` tout en préservant les totaux d’utilisation demandés. [#100054](https://github.com/openclaw/openclaw/pull/100054) Merci à @nianjiuzst.
- Les paramètres de l’interface de contrôle affichent désormais l’identité de l’hôte d’un Gateway distant, son adresse, son système d’exploitation, son environnement d’exécution, sa durée de fonctionnement, la charge du processeur, la mémoire et l’espace disque disponible, sans nécessiter SSH. [#100478](https://github.com/openclaw/openclaw/pull/100478)
- L’interface de contrôle affiche désormais les approbations d’exécution pour les nœuds de bureau pris en charge et rejette les requêtes en attente, non prises en charge ou bloquées par la politique avant qu’elles n’atteignent le nœud. [#100505](https://github.com/openclaw/openclaw/pull/100505) Merci à @vincentkoc.
- Une valeur `ui.seamColor` configurée modifie désormais les boutons, les mises en évidence, les sélections et les anneaux de focus de l’interface de contrôle, tandis que les valeurs non valides reviennent proprement à la valeur par défaut. [#93699](https://github.com/openclaw/openclaw/pull/93699) Merci à @dennis-lynch et @goutamadwant.
- Les codes QR et autres illustrations textuelles en demi-blocs dans l’interface de contrôle conservent désormais leur espacement, défilent si nécessaire et sont copiés avec une marge suffisante pour rester utilisables. [#93869](https://github.com/openclaw/openclaw/pull/93869) Merci à @emg110 et @vincentkoc.
- Les onglets ouverts de l’interface de contrôle basculent désormais vers la version active après une mise à jour du service worker, ce qui réduit les erreurs dues à du JavaScript ou du CSS obsolète ainsi que les incompatibilités de protocole après les mises à niveau. [#96141](https://github.com/openclaw/openclaw/pull/96141) Merci à @andrewccctechlink et @brokemac79.
- Les clients de discussion peuvent désormais faire correspondre chaque message utilisateur en attente au message exact confirmé par le Gateway, ce qui réduit les bulles dupliquées ou non concordantes pendant les tours entrelacés. [#96273](https://github.com/openclaw/openclaw/pull/96273) Merci à @datus1982 et @wyf027.
- Cliquer sur le bouton Historique d’une tâche Cron fournit désormais un retour immédiat et fait défiler directement jusqu’à l’historique d’exécution mis à jour de cette tâche. [#96281](https://github.com/openclaw/openclaw/pull/96281) Merci à @wyf027 et @yzhong52.
- Les totaux de jetons proches d’un million dans l’interface de contrôle s’affichent désormais sous la forme `1.0M` au lieu de l’affichage déroutant `1000k`. [#96298](https://github.com/openclaw/openclaw/pull/96298) Merci à @ly-wang19.
- La mosaïque d’utilisation et les résumés d’utilisation affichent désormais les totaux de jetons proches d’un million sous la forme `1.0M` au lieu de `1000.0K`. [#96450](https://github.com/openclaw/openclaw/pull/96450) Merci à @ly-wang19.
- Les commandes Voix, Modèle et Sensibilité des paramètres de conversation de l’interface de contrôle sont désormais alignées de manière cohérente sur une seule ligne, sans texte dupliqué de la valeur sélectionnée perturbant la mise en page. [#96925](https://github.com/openclaw/openclaw/pull/96925) Merci à @evan-ym.
- Les demandes d’approbation de l’interface de contrôle n’héritent plus des échecs de requêtes antérieures et ne réactivent plus les commandes pendant que la décision actuelle est encore en cours de traitement. [#98394](https://github.com/openclaw/openclaw/pull/98394) Merci à @haruaiclone-droid.
- L’interface de contrôle cesse désormais ses nouvelles tentatives après avoir détecté un protocole de Gateway incompatible et affiche les instructions de mise à jour ou de rechargement nécessaires pour se reconnecter. [#98414](https://github.com/openclaw/openclaw/pull/98414) Merci à @haruaiclone-droid.
- Sur les téléphones et les autres écrans horizontaux de faible hauteur, le composeur de l’interface de contrôle défile désormais dans une zone délimitée afin que l’historique de discussion et toutes les commandes de rédaction restent accessibles. [#98683](https://github.com/openclaw/openclaw/pull/98683) Voir aussi [#98615](https://github.com/openclaw/openclaw/issues/98615). Merci à @jin-li et @qingminglong.
- L’interface de contrôle effectue désormais une nouvelle tentative après un échec temporaire de chargement pendant le redémarrage d’un Gateway ou une transition depuis des ressources obsolètes, au lieu de rester bloquée jusqu’à l’actualisation manuelle de la page. [#99111](https://github.com/openclaw/openclaw/pull/99111) Merci à @zengwen-dt.
- Les grandes captures d’écran PNG collées peuvent désormais être envoyées par l’intermédiaire de la discussion Web de l’interface de contrôle sans échec pendant le traitement des pièces jointes. [#99213](https://github.com/openclaw/openclaw/pull/99213) Merci à @jincheng-xydt et @vincentkoc.
- Le flux d’association mobile de l’interface de contrôle est désormais entièrement localisé pour les utilisateurs de langue hindi et russe, de la création du code de configuration à la gestion des appareils en attente. [#100040](https://github.com/openclaw/openclaw/pull/100040)
- Le rail d’espaces de travail de l’interface de contrôle est désormais aligné avec la fenêtre et occupe moins d’espace lorsqu’il est replié, supprimant ainsi la bande vide sans chevaucher la discussion. [#100088](https://github.com/openclaw/openclaw/pull/100088)
- L’historique des discussions de l’interface de contrôle masque désormais uniquement les miroirs de livraison finale strictement identiques, tout en laissant visibles les envois répétés légitimes, les transferts et les réponses distinctes. [#100136](https://github.com/openclaw/openclaw/pull/100136)
- Les discussions de l’interface de contrôle laissent désormais un espace uniforme au-dessus du premier message sur les téléphones, les ordinateurs de bureau standard et les fenêtres de grande hauteur. [#100144](https://github.com/openclaw/openclaw/pull/100144) Merci à @steipete-oai.
- Les paramètres de l’interface de contrôle proposent désormais un commutateur Simple/Avancé persistant, des commandes d’apparence plus épurées et un libellé En attente uniquement lorsqu’une modification du profil de contexte est réellement préparée. [#100147](https://github.com/openclaw/openclaw/pull/100147)
- Les bulles d’appel d’outil et les badges d’erreur de l’interface de contrôle partagent désormais un alignement net sur le bord droit, ce qui facilite le repérage des activités ayant échoué dans les discussions sur téléphone comme sur ordinateur. [#100163](https://github.com/openclaw/openclaw/pull/100163) Merci à @steipete-oai.
- Les utilisateurs d’OpenAI ne voient désormais que les choix pris en charge Standard et Rapide dans le sélecteur de vitesse de l’interface de contrôle, le mode Rapide hérité étant correctement affiché. [#100190](https://github.com/openclaw/openclaw/pull/100190)
- Les brouillons courts dans le composeur de l’interface de contrôle n’affichent plus de gouttière de barre de défilement superflue, tandis que les brouillons longs continuent de défiler si nécessaire. [#100252](https://github.com/openclaw/openclaw/pull/100252)
- Effacer le libellé d’une session supprime désormais rapidement l’ancien nom des autres clients de l’interface de contrôle abonnés, sans nécessiter d’actualisation complète. [#100266](https://github.com/openclaw/openclaw/pull/100266)
- Les utilisateurs de l’interface de contrôle pour ordinateur peuvent survoler le nom abrégé d’une session récente pour révéler sa fin masquée et distinguer les conversations similaires sans devoir les ouvrir une par une. [#100276](https://github.com/openclaw/openclaw/pull/100276)
- La barre latérale déployée de l’interface de contrôle ne répète plus les informations de quota du fournisseur déjà disponibles dans les vues de discussion, Vue d’ensemble et Utilisation. [#100356](https://github.com/openclaw/openclaw/pull/100356) Merci à @shakkernerd.
- Dans l’interface de contrôle, l’horodatage des messages terminés permet désormais d’ouvrir les détails sur les tokens, le cache, le contexte, le coût et le modèle, au lieu d’ajouter une commande Contexte distincte dans chaque pied de page. [#100391](https://github.com/openclaw/openclaw/pull/100391) Merci à @steipete-oai.
- L’historique des sessions autonomes conserve désormais comme erreur une exécution antérieure de Cron ou planifiée ayant échoué, même après la réussite d’une exécution ultérieure ou le rechargement de la page. [#100514](https://github.com/openclaw/openclaw/pull/100514) Merci à @qingminglong.
- La page Skills de l’interface de contrôle affiche désormais des libellés Agent et Recherche lisibles, avec des filtres alignés et des commandes de sélection correctement dimensionnées. [#100526](https://github.com/openclaw/openclaw/pull/100526) Merci à @evan-ym.
- Une fois une réponse terminée dans l’interface de contrôle, le composeur reste désormais sur Envoyer malgré l’arrivée tardive de l’état d’exécution terminée, tandis qu’une véritable nouvelle exécution le fait toujours passer à Arrêter. [#100527](https://github.com/openclaw/openclaw/pull/100527) Merci à @tiffanychum.
- Les aperçus de fichiers de l’interface de contrôle et de l’atelier de Skills n’affichent désormais qu’une seule indication du raccourci Échap, tout en conservant la fermeture avec Échap. [#100528](https://github.com/openclaw/openclaw/pull/100528) Merci à @xianshishan.
- L’activité détaillée des outils dans l’interface de contrôle ne répète plus le nom et l’icône de l’outil, ce qui permet de parcourir plus rapidement les appels terminés et en cours. [#100606](https://github.com/openclaw/openclaw/pull/100606)
- Effacer le remplacement du modèle d’une session dans l’interface de contrôle affiche désormais le modèle par défaut propre à l’agent sélectionné, plutôt que le modèle global par défaut sans rapport. [#100719](https://github.com/openclaw/openclaw/pull/100719) Merci à @hyspacex.
- Les documents envoyés par l’assistant dans WebChat sont désormais téléchargés avec leur nom de fichier d’origine fourni par le serveur, y compris les noms Unicode, au lieu de s’ouvrir dans le navigateur comme des documents sans nom. [#100728](https://github.com/openclaw/openclaw/pull/100728) Merci à @lptrichor.
- L’interface de contrôle accepte désormais les instructions `/steer` pendant une exécution active, au lieu de répondre incorrectement `No active run`. [#100803](https://github.com/openclaw/openclaw/pull/100803) Merci à @hackerismydream.
- Les nouvelles sessions de l’interface de contrôle restent désormais visibles en tête de la barre latérale lorsque les utilisateurs passent à une autre discussion, sans nécessiter d’actualisation de la page. [#100981](https://github.com/openclaw/openclaw/pull/100981) Merci à @shakkernerd.
- La gestion des arbres de travail se trouve désormais dans les paramètres de l’interface de contrôle au lieu d’occuper un élément de premier niveau dans la barre latérale, tandis que les liens profonds existants restent valides. [#100995](https://github.com/openclaw/openclaw/pull/100995)
- Les longues réponses `/btw` dans l’interface de contrôle pour ordinateur restent désormais dans les limites de la fenêtre du navigateur et défilent à l’intérieur de la carte de résultats, tandis que sur mobile, le défilement de la carte entière est conservé. [#101169](https://github.com/openclaw/openclaw/pull/101169) Merci à @snoutfirst.
- Les discussions terminées ne restent plus bloquées avec un indicateur d’activité dans la barre latérale de l’interface de contrôle, même lorsqu’une ancienne mise à jour du Gateway arrive ensuite. [#101293](https://github.com/openclaw/openclaw/pull/101293) Merci à @fuller-stack-dev.
- Les fichiers annexes volumineux de l’atelier de Skills peuvent désormais défiler, être changés et filtrés, revenir à la ligne et être copiés sans figer ni ralentir fortement l’interface de contrôle. [#101319](https://github.com/openclaw/openclaw/pull/101319) Merci à @shakkernerd et @xianshishan.
- Les utilisateurs peuvent rester connectés à plusieurs Gateways de l’interface de contrôle, acheminés par chemin ou par requête sur une même origine HTTPS, sans que l’un d’eux écrase le token d’appareil d’un autre. [#101352](https://github.com/openclaw/openclaw/pull/101352) Merci à @fuller-stack-dev.
- Les utilisateurs de l’interface de contrôle peuvent saisir `/approve` pour libérer une invite d’exécution en attente sans que la décision soit placée dans la file derrière l’exécution de discussion bloquée. [#101532](https://github.com/openclaw/openclaw/pull/101532) Merci à @vincentkoc.
- Les erreurs de compilation de l’interface de contrôle conservent désormais les émojis et autres caractères supplémentaires lorsque la sortie de commande est raccourcie pour l’affichage. [#101591](https://github.com/openclaw/openclaw/pull/101591) Merci à @maweibin.
- Les cartes du tableau de travail peuvent désormais être modifiées, déplacées, archivées, arrêtées, ouvertes ou supprimées directement depuis le volet de détails, tandis que les utilisateurs disposant d’un accès en lecture seule ne voient toujours aucune commande de modification. [#101658](https://github.com/openclaw/openclaw/pull/101658) Merci à @momothemage et @princebansal.
- Le bouton du microphone de l’interface de contrôle est désormais visuellement plus discret lorsqu’il est inactif et plus distinct pendant l’enregistrement, ce qui facilite l’identification de l’état vocal actuel. [#101843](https://github.com/openclaw/openclaw/pull/101843)
- Les utilisateurs disposant d’identifiants de tableau de bord valides et enregistrés ne voient plus l’écran de connexion s’afficher brièvement pendant la reconnexion de l’interface de contrôle. [#101849](https://github.com/openclaw/openclaw/pull/101849)
- Saisir du texte n’importe où dans la discussion active de l’interface de contrôle place désormais le premier caractère dans le composeur de message sans détourner la saisie de la palette de commandes. [#102210](https://github.com/openclaw/openclaw/pull/102210) Merci à @shakkernerd.

</Accordion>

### Configuration simplifiée, de l’installation à la première conversation

[L’intégration](/fr/cli/onboard) propose désormais des parcours plus clairs pour parvenir à une première conversation utilisable. Les nouvelles installations par CLI lancent la configuration guidée, les installations déjà configurées ouvrent la TUI, et la configuration conversationnelle de Crestodian reste facultative. Android et macOS guident les utilisateurs dans [l’association](/fr/channels/pairing), les autorisations, la configuration locale ou distante et la récupération ; macOS peut également tester les choix détectés parmi Claude Code, Codex, Gemini CLI, les clés API et les catalogues de fournisseurs pris en charge avant de les enregistrer. En cas d’interruption de l’authentification ou de la configuration d’un canal, les choix précédents sont conservés, tandis que les utilisateurs ne disposant pas d’un modèle fonctionnel sont guidés dans la sélection des identifiants et du modèle au lieu d’être dirigés vers une conversation inutilisable. Les propriétaires et administrateurs peuvent également renouveler une connexion Codex ou OpenAI expirée au moyen de commandes privées dans Telegram, l’interface Web, Discord ou Slack, sans accès SSH.

Les installations existantes bénéficient de protections avant toute modification de leur état fonctionnel. [Doctor](/fr/cli/doctor) et les mises à jour refusent de remplacer une configuration illisible, Doctor préserve les réglages des modèles lors de la fusion d’entrées retirées, et les [mises à jour à stabilité étendue](/fr/install/updating) conservent le canal de publication sélectionné. Les mises à niveau de conteneurs terminent les migrations et les réparations de plugins avant de signaler qu’ils sont prêts, et les environnements d’exécution non sûrs sont arrêtés avant de pouvoir ouvrir les bases de données d’état d’OpenClaw.

<Accordion title="Sources et contributeurs">

- `openclaw doctor` et les mises à jour refusent désormais de remplacer un `openclaw.json` illisible, préservant ainsi les paramètres existants du Gateway, des agents, des canaux et des plugins au lieu de rendre l’installation inutilisable. [#96469](https://github.com/openclaw/openclaw/pull/96469) Merci à @obviyus et @yetval.
- `openclaw doctor --fix` préserve désormais les alias, les paramètres, les choix de diffusion en continu, les paramètres d’exécution et les autres réglages de modèles lorsque plusieurs noms de modèles retirés sont fusionnés en un seul modèle actuel, et signale précisément tout conflit de fusion. [#96544](https://github.com/openclaw/openclaw/pull/96544) Merci à @vincentkoc et @yetval.
- Les propriétaires et administrateurs peuvent désormais rétablir depuis un navigateur une connexion Codex ou OpenAI expirée au moyen de commandes privées dans Telegram, l’interface Web, Discord ou Slack, sans accès SSH. [#98006](https://github.com/openclaw/openclaw/pull/98006) Merci à @100yenadmin, @jalehman et @obviyus.
- La CLI guide désormais les nouvelles installations dans la configuration, ouvre directement les installations déjà configurées dans la TUI, préserve les choix existants lors des nouvelles exécutions et termine l’intégration dans une conversation fonctionnelle au sein du terminal. [#98218](https://github.com/openclaw/openclaw/pull/98218) Merci à @fuller-stack-dev.
- Les nouveaux utilisateurs d’Android bénéficient désormais d’un parcours guidé lors du premier lancement, couvrant la saisie d’un code de configuration ou d’un code QR, l’association au Gateway, l’approbation du Node, les autorisations, les étapes de récupération et la confirmation que le téléphone est prêt avant la fin de l’intégration. [#98752](https://github.com/openclaw/openclaw/pull/98752) Merci à @jesse-merhi.
- Les nouveaux utilisateurs de Mac peuvent désormais ouvrir l’application et accéder à un agent local fonctionnel sans Terminal, Homebrew, accès administrateur ni demande d’approbation supplémentaire pour le propre Node de l’application. [#99767](https://github.com/openclaw/openclaw/pull/99767) Voir aussi [#99764](https://github.com/openclaw/openclaw/issues/99764).
- Les installations de paquets peuvent désormais sélectionner et conserver `openclaw update --channel extended-stable`, vérifier sa disponibilité et échouer de manière sûre si ses métadonnées npm sont incomplètes. [#99811](https://github.com/openclaw/openclaw/pull/99811) Merci à @kevinslin.
- Les nouvelles installations peuvent désormais terminer la configuration conversationnelle de Crestodian, approuver une seule fois le plan proposé, connecter des canaux et poursuivre avec l’agent normal, tandis que les modes d’intégration classique et scripté restent disponibles. [#99935](https://github.com/openclaw/openclaw/pull/99935)
- L’intégration sur macOS vérifie désormais la connexion à l’IA choisie avant la première conversation, présente plus clairement les choix de configuration locale et distante et propose une récupération conviviale ou un parcours manuel vérifié par clé API en cas d’échec de l’authentification. [#100288](https://github.com/openclaw/openclaw/pull/100288)
- Lors de la première intégration, les choix antérieurs sont désormais préservés après un problème d’authentification ou d’association, et les utilisateurs reçoivent une prochaine étape exploitable pour configurer le modèle au lieu de voir s’ouvrir une première conversation inutilisable. [#100632](https://github.com/openclaw/openclaw/pull/100632)
- L’intégration sur macOS propose désormais le catalogue de fournisseurs d’inférence de texte pris en charge par le Gateway, plutôt qu’uniquement Anthropic, OpenAI et Google, et teste les identifiants avant de les enregistrer. [#101132](https://github.com/openclaw/openclaw/pull/101132)
- Les mises à niveau de conteneurs terminent désormais les migrations requises et les réparations de plugins avant de signaler que le Gateway est prêt ; en cas d’échec, les réparations s’arrêtent avec des instructions exploitables au lieu de laisser un service faussement indiqué comme fonctionnel. [#101881](https://github.com/openclaw/openclaw/pull/101881) Merci à @sallyom.
- La configuration de Crestodian guide désormais les utilisateurs ne disposant pas d’un fournisseur de modèles utilisable dans la saisie masquée des identifiants et la sélection d’un modèle, tandis que les commandes déterministes de configuration et de réparation restent disponibles jusqu’à ce que l’inférence soit configurée. [#101887](https://github.com/openclaw/openclaw/pull/101887) Merci à @fuller-stack-dev.
- OpenClaw bloque désormais les environnements d’exécution non sûrs avant qu’ils puissent ouvrir un état reposant sur SQLite, guide les anciens services Bun vers Node et sélectionne un environnement d’exécution Node compatible avec WAL pendant la configuration et la réparation. [#106065](https://github.com/openclaw/openclaw/pull/106065) Merci à @vincentkoc.

</Accordion>

### Applications officielles

Les applications officielles pour [iOS](/fr/platforms/ios), [Android](/fr/platforms/android) et [macOS](/fr/platforms/macos) ont bénéficié d’importantes mises à jour concernant la configuration, la navigation, la conversation, la voix, l’Apple Watch, les autorisations, la localisation, les fichiers, les tâches planifiées, les commandes natives de session et la récupération du Gateway. Les conversations récentes restent utiles pendant les déconnexions temporaires : les sessions et transcriptions mises en cache restent consultables, les envois de texte pris en charge peuvent attendre la reconnexion dans la bonne conversation, et il est plus facile de reprendre les longues conversations sans perdre l’emplacement actuel ni confondre un affichage hors ligne avec l’historique en direct.

Ces améliorations rapprochent également les clients natifs. Les files d’attente mobiles survivent aux redémarrages de l’application, l’application [macOS](/fr/platforms/macos) bénéficie d’outils de session et de transcription plus complets, et chaque client actualise la même conversation lorsque le Gateway redevient disponible.

#### Améliorations communes aux applications

<Accordion title="Sources et contributeurs">

- Les conversations sur iOS et Android préservent désormais la position de défilement du lecteur à mesure que de nouveaux messages et de nouvelles activités d’outils arrivent, avec un moyen clair de revenir à la réponse la plus récente. [#98258](https://github.com/openclaw/openclaw/pull/98258) Voir aussi [#98255](https://github.com/openclaw/openclaw/issues/98255). Merci à @christopheraaronhogg.

</Accordion>

#### iOS, iPadOS et Apple Watch

<Accordion title="Sources et contributeurs">

- Sur iPhone et iPad, la conversation s’ouvre désormais sur le dernier échange connu et permet aux utilisateurs de parcourir les sessions récentes mises en cache lorsque le Gateway est indisponible. [#100219](https://github.com/openclaw/openclaw/pull/100219)
- Les utilisateurs d’iOS peuvent placer des messages de conversation en file d’attente pendant la déconnexion, les conserver après les redémarrages de l’application et les envoyer dans l’ordre après la reconnexion, avec des commandes claires pour réessayer et les supprimer. [#100331](https://github.com/openclaw/openclaw/pull/100331)
- Les utilisateurs d’Apple Watch peuvent dicter un message et écouter la réponse finale d’OpenClaw sur la montre, avec des commandes distinctes pour l’envoi silencieux, l’annulation et l’arrêt. [#100283](https://github.com/openclaw/openclaw/pull/100283)

</Accordion>

#### Android

<Accordion title="Sources et contributeurs">

- La conversation sur Android affiche désormais immédiatement la dernière transcription connue et maintient les conversations récentes mises en cache accessibles pendant une panne du Gateway, puis les actualise après la reconnexion. [#100227](https://github.com/openclaw/openclaw/pull/100227)
- Les utilisateurs d’Android peuvent placer du texte en file d’attente lorsque le Gateway est hors ligne, le conserver après un redémarrage de l’application et l’envoyer dans l’ordre après la reconnexion, avec les commandes Retry et Delete en cas d’échec. [#100290](https://github.com/openclaw/openclaw/pull/100290)

</Accordion>

#### macOS

<Accordion title="Sources et contributeurs">

- La conversation sur Mac restaure désormais immédiatement les sessions et transcriptions récentes, reste consultable pendant la déconnexion et place les envois hors ligne en file d’attente pour la bonne identité de Gateway. [#100275](https://github.com/openclaw/openclaw/pull/100275)
- La fenêtre de conversation native de macOS propose désormais une barre latérale complète pour les sessions, la véritable création de nouvelles sessions, la saisie semi-automatique des commandes à barre oblique, la visibilité du contexte et des coûts, la copie des messages, l’exportation des transcriptions ainsi que des actions de Compaction ou d’effacement de l’historique. [#101103](https://github.com/openclaw/openclaw/pull/101103)

</Accordion>

### Modèles et fournisseurs

La [sélection de modèles](/fr/concepts/models) d’OpenClaw s’étend aux principales options hébergées, gérées et locales. Chaque [route de fournisseur](/fr/concepts/model-providers) prise en charge conserve ses propres mécanismes d’authentification, limites de modèles, commandes de raisonnement, comportements des outils, prise en charge des images et rapports d’utilisation.

#### GPT-5.6 et Codex

Les organisations disposant d’un accès à la préversion de GPT-5.6 peuvent sélectionner Sol, Terra ou Luna par l’intermédiaire des routes OpenAI et Codex prises en charge, avec les métadonnées de contexte, les entrées de texte et d’image, les niveaux de raisonnement et la comptabilisation des écritures en cache attendus lorsqu’OpenAI les fournit. Les nouvelles configurations par clé API OpenAI et ChatGPT/Codex choisissent les valeurs GPT-5.6 par défaut prévues sans remplacer un choix explicite de modèle. Les options Ultra prises en charge restent harmonisées entre OpenClaw et Codex natif, et la [supervision Codex](/fr/plugins/codex-supervision) enregistre les agents enfants de Codex natif comme des tâches et renvoie leurs résultats à l’agent parent.

#### Tencent Hy3

Tencent Hunyuan Hy3 dispose désormais d’un parcours de configuration complet par TokenHub ou TokenPlan, notamment des choix d’authentification de premier ordre, l’intégration par CLI, la découverte de modèles et la validation de la configuration. Les configurations TokenHub existantes conservent l’accès à `hy3-preview` aux côtés du modèle stable `hy3`.

#### Meta Model API et Muse Spark 1.1

Les opérateurs peuvent configurer Meta Model API avec `MODEL_API_KEY` ou le choix d’authentification proposé lors de l’intégration, sélectionner `meta-model-api/muse-spark-1.1` et utiliser les commandes prises en charge de diffusion en continu, d’appel d’outils, d’entrée d’images et de niveau d’effort de raisonnement.

#### Modèles Claude

Claude Sonnet 5 peut être sélectionné par l’intermédiaire d’Anthropic en accès direct, de Claude CLI, des régions Vertex prises en charge, des profils d’inférence Bedrock et de Bedrock Mantle, avec son comportement documenté en matière de contexte, de sortie, d’images, de réflexion et de tarification. Les utilisateurs ayant accès à Claude Mythos 5 peuvent le sélectionner par l’intermédiaire des routes prises en charge de la famille Anthropic, avec les comportements requis concernant le contexte, la sortie, la réflexion adaptative, la mise en cache et la relecture.

#### Autres routes de fournisseurs

Les sessions Copilot peuvent utiliser explicitement des fournisseurs personnalisés pris en charge OpenAI, Azure OpenAI, compatibles avec Ollama ou Anthropic, et démarrer une session compatible lorsque les paramètres de connexion ou d’identifiants changent. Les ordinateurs associés peuvent exécuter de courtes tâches sur les modèles Ollama locaux admissibles, tandis que ClawRouter peut exposer les modèles accordés à une clé gérée et rendre compte de leur utilisation et de leur budget. Les utilisateurs peuvent également obtenir les modèles promotionnels actifs sans remplacer les valeurs par défaut existantes, installer LongCat-2.0 par l’intermédiaire de son fournisseur officiel et poursuivre les conversations Gemini latest utilisant des appels d’outils sur les deux transports Google pris en charge.

<Accordion title="Sources et contributeurs">

- Les sessions Copilot peuvent désormais utiliser des fournisseurs personnalisés OpenAI, Azure OpenAI, compatibles avec Ollama ou Anthropic explicitement sélectionnés, et redémarrer proprement lorsque le modèle, le point de terminaison, les identifiants, les en-têtes ou les limites de tokens changent. [#96345](https://github.com/openclaw/openclaw/pull/96345) Merci à @vincentkoc.
- Les utilisateurs de GPT-5.6 peuvent désormais sélectionner les modes Ultra pris en charge de manière cohérente, maintenir les choix de modèle et de réflexion alignés sur toutes les surfaces OpenClaw et recevoir les résultats des agents enfants Codex natifs sous forme de tâches suivies. [#98021](https://github.com/openclaw/openclaw/pull/98021) Merci à @anyech.
- Claude Sonnet 5 peut désormais être sélectionné dans Anthropic, la CLI Claude, les régions Vertex prises en charge, les profils d'inférence Bedrock et Bedrock Mantle, avec le comportement documenté concernant le contexte, la sortie, les images, la réflexion et la tarification. [#98254](https://github.com/openclaw/openclaw/pull/98254) Merci à @vortexopenclaw.
- Les organisations disposant d'un accès à l'aperçu de GPT-5.6 peuvent sélectionner Sol, Terra ou Luna dans les parcours OpenAI et Codex pris en charge, avec les contrôles de raisonnement, les métadonnées de contexte et la comptabilisation des écritures dans le cache appropriés. [#98333](https://github.com/openclaw/openclaw/pull/98333) Voir aussi [#98296](https://github.com/openclaw/openclaw/issues/98296). Merci à @steipete-oai.
- Tencent Hunyuan Hy3 dispose désormais d'un parcours de configuration OpenClaw complet et pris en charge via TokenHub ou TokenPlan, comprenant une authentification de premier ordre, la découverte des modèles, la validation de la configuration, l'intégration via la CLI et la compatibilité avec les configurations `hy3-preview` existantes. [#99076](https://github.com/openclaw/openclaw/pull/99076) Merci à @moncac.
- Les agents OpenClaw peuvent désormais exécuter de courtes tâches sur des modèles Ollama capables de converser, installés sur des Nodes macOS, Linux ou Windows appairés, avec un contrôle distinct permettant de désactiver l'inférence sur les Nodes. [#99234](https://github.com/openclaw/openclaw/pull/99234) Voir aussi [#99228](https://github.com/openclaw/openclaw/issues/99228).
- Un seul `CLAWROUTER_API_KEY` peut désormais exposer uniquement les modèles qui lui sont accordés sur les transports pris en charge et afficher les requêtes gérées, les tokens, les dépenses et le budget mensuel dans les vues d'état habituelles. [#99658](https://github.com/openclaw/openclaw/pull/99658) Voir aussi [#99657](https://github.com/openclaw/openclaw/issues/99657).
- Les utilisateurs peuvent découvrir les modèles promotionnels actifs et les réclamer avec `openclaw promos claim &lt;slug&gt;` sans relancer l'intégration ni remplacer de façon inattendue les valeurs par défaut et les identifiants existants. [#100236](https://github.com/openclaw/openclaw/pull/100236) Merci à @fuller-stack-dev.
- LongCat-2.0 hébergé peut désormais être installé au moyen du Plugin LongCat officiel, configuré avec `LONGCAT_API_KEY` pendant l'intégration et sélectionné comme `longcat/LongCat-2.0` pour l'utilisation d'outils sur plusieurs tours. [#100501](https://github.com/openclaw/openclaw/pull/100501) Merci à @vincentkoc.
- Les alias latest de Gemini poursuivent désormais les conversations avec appels d'outils sur les deux transports Google pris en charge, au lieu de s'arrêter avec une erreur HTTP 400 due à l'absence de signature de réflexion. [#100605](https://github.com/openclaw/openclaw/pull/100605) Merci à @chenxiaoyu209 et @guarismo.
- Les utilisateurs ayant accès à Claude Mythos 5 peuvent le sélectionner via Anthropic, Anthropic Vertex, Amazon Bedrock ou Bedrock Mantle, avec le comportement requis concernant le contexte, la sortie, la réflexion, la mise en cache et la relecture. [#101238](https://github.com/openclaw/openclaw/pull/101238) Merci à @vincentkoc.
- OpenClaw prend désormais en charge la configuration de Meta Model API et le modèle Muse Spark 1.1, notamment la diffusion en continu, l'appel d'outils, l'entrée d'images et les contrôles de raisonnement pris en charge. [#102873](https://github.com/openclaw/openclaw/pull/102873) Merci à @davemorin, @hamidshojanazeri, @jalehman et @solvely-colin.
- Les mises à niveau depuis un état hérité ne se bloquent plus de manière répétée, tandis que les nouvelles configurations OpenAI et ChatGPT/Codex sélectionnent les valeurs par défaut GPT-5.6 prévues et utilisent les comportements pris en charge pour la température et les appels d'outils. [#104656](https://github.com/openclaw/openclaw/pull/104656) Merci à @bdjben, @obviyus et @sallyom.

</Accordion>

### Codex et agents de codage connectés

OpenClaw fonctionne désormais plus proprement avec les agents de codage qui opèrent en dehors de la conversation actuelle. `openclaw attach` peut ouvrir Claude Code sur la session Gateway principale ou sur une session Gateway sélectionnée, avec un accès temporaire et révocable plutôt qu'avec des identifiants valables pour l'ensemble du processus. Les sessions du serveur d'application Codex peuvent reprendre, déléguer à des sous-agents natifs et renvoyer leurs résultats sous forme de travaux suivis, tandis que les sessions Copilot peuvent utiliser des fournisseurs personnalisés explicitement sélectionnés et redémarrer lorsque leurs paramètres de connexion changent.

Le flux de travail environnant des sessions est également plus durable. Les conversations importantes peuvent être épinglées, renommées, archivées, restaurées et surveillées comme des travaux en cours, tandis que les objectifs actifs restent intégrés à la mémoire de travail lors des tours ultérieurs, de la Compaction, des mises en file d'attente et des interruptions.

<Accordion title="Sources et contributeurs">

- Les outils externes peuvent désormais recevoir un accès au Gateway limité à la session, sans identifiants valables pour l'ensemble du processus ni autorisation d'usurper l'identité d'une autre session, ce qui constitue la base sécurisée de `openclaw attach`. [#96351](https://github.com/openclaw/openclaw/pull/96351) Merci à @anagnorisis2peripeteia et @obviyus.
- `openclaw attach` lance désormais Claude Code avec un accès temporaire à la session Gateway principale ou sélectionnée, évite de placer les identifiants dans les arguments et révoque l'autorisation à la fin de la session. [#96454](https://github.com/openclaw/openclaw/pull/96454) Merci à @anagnorisis2peripeteia et @obviyus.
- Les utilisateurs de GPT-5.6 peuvent désormais sélectionner les modes Ultra pris en charge de manière cohérente, maintenir les choix de modèle et de réflexion alignés sur toutes les surfaces OpenClaw et recevoir les résultats des agents enfants Codex natifs sous forme de tâches suivies. [#98021](https://github.com/openclaw/openclaw/pull/98021) Merci à @anyech.
- Les agents du serveur d'application Codex peuvent de nouveau répertorier les agents autorisés, créer des sous-agents OpenClaw ou connectés et céder la main pendant les travaux délégués sans que les Heartbeats repris ne rencontrent des définitions d'outils incompatibles. [#99561](https://github.com/openclaw/openclaw/pull/99561) Voir aussi [#99464](https://github.com/openclaw/openclaw/issues/99464). Merci à @100yenadmin et @joshavant.
- La délégation native de Codex depuis les fils OpenClaw crée de nouveau des enregistrements de tâches natifs, tandis que les versions personnalisées non prises en charge du serveur d'application Codex échouent au démarrage avec une erreur claire indiquant la version minimale requise. [#101221](https://github.com/openclaw/openclaw/pull/101221)
- Les sessions Copilot peuvent désormais utiliser des fournisseurs personnalisés OpenAI, Azure OpenAI, compatibles avec Ollama ou Anthropic explicitement sélectionnés, et redémarrer proprement lorsque le modèle, le point de terminaison, les identifiants, les en-têtes ou les limites de tokens changent. [#96345](https://github.com/openclaw/openclaw/pull/96345) Merci à @vincentkoc.
- Les sessions peuvent désormais être épinglées, archivées sans perte des transcriptions, restaurées, renommées depuis les surfaces de conversation et surveillées pour détecter les exécutions actives, sous forme de fils de conversation durables. [#98510](https://github.com/openclaw/openclaw/pull/98510) Merci à @maziyang2.
- Un `/goal` actif continue désormais de guider les tours ultérieurs et résiste à la Compaction, aux mises en file d'attente et aux interruptions jusqu'à ce que l'objectif soit suspendu, terminé, bloqué ou limité. [#100468](https://github.com/openclaw/openclaw/pull/100468)

</Accordion>

### Telegram

[Telegram](/fr/channels/telegram) a bénéficié d'importantes améliorations concernant la progression en direct, les médias, les documents, les sujets, les commandes, les nouvelles tentatives, le routage des comptes, la configuration et la livraison. Les albums parviennent au modèle avec toutes les images disponibles, les longues réponses restent plus faciles à suivre pendant leur exécution, et les conflits temporaires ou les défaillances réseau risquent moins de bloquer les messages ultérieurs ou de créer des doublons.

Les messages et les actions restent également associés plus systématiquement au bot, au sujet et à la conversation prévus, tandis que les problèmes de configuration et d'état des comptes offrent des moyens de récupération plus clairs.

<Accordion title="Sources et contributeurs">

- Les albums photo Telegram fournissent désormais au modèle chaque image téléchargée avec succès, dans l'ordre, au lieu d'une seule photo et de références de fichiers inutilisables, tandis que les éléments ayant échoué sont omis. [#97045](https://github.com/openclaw/openclaw/pull/97045) Merci à @nianjiuzst et @obviyus.
- La vue de progression en direct de Telegram maintient désormais le raisonnement, les commentaires, la mise en forme et l'activité des outils lisibles et stables, puis conserve un résumé concis de l'achèvement au lieu de disparaître. [#98907](https://github.com/openclaw/openclaw/pull/98907) Merci à @marvinthebored et @peetiegonzalez.
- Les utilisateurs de Telegram devraient constater moins d'échecs des réponses finales ou des envois du bot lors de négociations réseau instables, sans augmenter le risque de messages en double pour les défaillances susceptibles de s'être produites après l'envoi d'une requête. [#101258](https://github.com/openclaw/openclaw/pull/101258) Merci à @lzw112.

</Accordion>

### Signal

Les réponses [Signal](/fr/channels/signal) peuvent désormais citer le message qui les a déclenchées, ce qui facilite le suivi des conversations animées. Des alias conviviaux tels que `signal:me` ou `signal:ops` facilitent également l'adressage des contacts et groupes récurrents sans réutiliser les identifiants bruts.

<Accordion title="Sources et contributeurs">

- Les réponses automatiques Signal citent désormais le message qui les a déclenchées, ce qui facilite le suivi des réponses dans les groupes et les conversations animées. [#95718](https://github.com/openclaw/openclaw/pull/95718) Merci à @jesse-merhi.
- Les utilisateurs de Signal peuvent attribuer des noms stables tels que `signal:me` ou `signal:ops` aux contacts et groupes récurrents au lieu de réutiliser des numéros de téléphone, UUID ou identifiants bruts. [#95738](https://github.com/openclaw/openclaw/pull/95738) Merci à @jesse-merhi.

</Accordion>

### Slack

Les fils [Slack](https://docs.openclaw.ai/channels/slack) conservent plus systématiquement leur historique de conversation, les cartes interactives et la progression restent au bon endroit, et les réponses acceptées risquent moins d'être répétées après une confirmation incertaine. Les conversations de longue durée évitent également davantage d'attentes inutiles avant d'atteindre l'agent.

<Accordion title="Sources et contributeurs">

- Les réponses Slack restent rattachées à l'historique de session du fil racine au lieu de s'accumuler dans des sessions enfants distinctes et presque vides. [#97168](https://github.com/openclaw/openclaw/pull/97168) Voir aussi [#96535](https://github.com/openclaw/openclaw/issues/96535). Merci à @gorkem2020 et @liuwqgit.
- Lorsque Slack accepte une réponse mais que la confirmation est perdue, OpenClaw peut vérifier la publication existante et éviter d'envoyer un doublon. [#97480](https://github.com/openclaw/openclaw/pull/97480) Merci à @joeyfrasier.

</Accordion>

### Discord

[Discord](https://docs.openclaw.ai/channels/discord) améliore la visibilité des réponses, les pièces jointes, les sessions vocales, la progression, les reconnexions et le fonctionnement avec plusieurs comptes. Les réponses terminées produisent des indicateurs de non-lecture plus utiles, les brèves reconnexions du Gateway risquent moins de perdre les messages sortants, et les échecs répétés de reprise de session peuvent être récupérés sans arrêter l'ensemble du Gateway.

<Accordion title="Sources et contributeurs">

- Les réponses Discord terminées issues d'une diffusion partielle arrivent désormais sous forme de nouveaux messages pouvant déclencher les indicateurs de non-lecture habituels après le départ d'un utilisateur du canal. [#99711](https://github.com/openclaw/openclaw/pull/99711) Merci à @davelutztx.
- Les réponses Discord, les rapports Cron et les autres messages sortants risquent moins de disparaître pendant une brève reconnexion du Gateway, sans rejouer les fragments ou les médias déjà acceptés par Discord. [#100896](https://github.com/openclaw/openclaw/pull/100896) Merci à @tiffanychum.
- Les bots Discord peuvent désormais récupérer sur place après des rejets répétés de reprise de session, ce qui réduit les indisponibilités prolongées, les réponses perdues et les redémarrages complets du Gateway. [#103596](https://github.com/openclaw/openclaw/pull/103596)

</Accordion>

### WhatsApp

Les reconnexions et les réponses simultanées [WhatsApp](/fr/channels/whatsapp) risquent moins de perdre, d'ignorer ou de désordonner les messages. Les comptes déconnectés restent arrêtés jusqu'à leur reconnexion délibérée, tandis que les messages acceptés et les réponses terminées continuent de manière plus fiable lors de brèves variations de connexion.

<Accordion title="Sources et contributeurs">

- Les comptes WhatsApp déconnectés ou remplacés restent désormais arrêtés jusqu’à leur reconnexion, au lieu d’entrer dans des boucles de redémarrage répétées susceptibles de consommer des ressources et de ralentir les autres comptes. [#78511](https://github.com/openclaw/openclaw/pull/78511) Merci à @openperf.
- Les messages WhatsApp admissibles reçus pendant une brève reconnexion parviennent désormais à OpenClaw pour recevoir une réponse automatique, au lieu d’être marqués comme lus et ignorés silencieusement. [#80642](https://github.com/openclaw/openclaw/pull/80642) Merci à @vishalj99.
- Les réponses, médias, réactions et messages en file d’attente simultanés de WhatsApp Web sont désormais envoyés un par un pour chaque compte, ce qui réduit les interférences et l’imprévisibilité de l’ordre de livraison. [#99050](https://github.com/openclaw/openclaw/pull/99050) Merci à @ooiuuii.
- La livraison des réponses WhatsApp terminées se poursuit désormais lorsqu’un autre message arrive en cours de livraison, de sorte que les conversations qui se chevauchent risquent moins de devenir silencieuses de manière inattendue. [#100205](https://github.com/openclaw/openclaw/pull/100205)

</Accordion>

### Messages Apple

[Messages Apple](/fr/channels/imessage) bénéficie d’améliorations plus générales concernant les réponses, l’indication de saisie, les médias, le routage, les instructions de configuration et la continuité des discussions. Les pièces jointes provenant d’un Mac distant peuvent parvenir à la conversation active par un chemin local utilisable, les réponses fonctionnent avec davantage de configurations de pont et le texte ordinaire des messages risque moins d’être confondu avec des marqueurs de rôle internes.

<Accordion title="Sources et contributeurs">

- Les photos transmises depuis un Mac iMessage distant vers un hôte Gateway distinct arrivent désormais dans les conversations Codex par un chemin local lisible plutôt que sous la forme d’un nom de fichier utilisable uniquement sur Mac. [#91803](https://github.com/openclaw/openclaw/pull/91803) Merci à @turbotheturtle.
- Les configurations iMessage utilisant uniquement AppleScript, un utilisateur de bot ou SSH transmettent désormais les réponses même lorsque le fil de discussion n’est pas disponible, et les modifications de la base de données ne laissent plus les messages entrants masqués par un état de récupération obsolète. [#100446](https://github.com/openclaw/openclaw/pull/100446) Merci à @omarshahine.
- Les discussions iMessage directes utilisant le pont d’API privée `imsg` affichent désormais l’indication de saisie dès qu’un traitement lent est accepté, sans attendre un accusé de lecture. [#95621](https://github.com/openclaw/openclaw/pull/95621) Merci à @omarshahine.
- Les réponses iMessage ne perdent plus le texte d’une phrase ordinaire se terminant par hasard par `user:`, `system:` ou `assistant:`. [#96392](https://github.com/openclaw/openclaw/pull/96392) Merci à @ly-wang19.

</Accordion>

### Les boucles de plantage s’arrêtent désormais pour permettre la réparation

Un Gateway supervisé qui échoue de manière répétée au démarrage laisse désormais aux opérateurs un processus stable de [redémarrage et de récupération](/fr/gateway/restart-recovery) à inspecter et à réparer. Au lieu de se relancer indéfiniment, le chemin de contrôle reste disponible, tandis que les redémarrages automatiques des canaux et des fournisseurs sont suspendus jusqu’à la résolution du problème sous-jacent.

<Accordion title="Sources et contributeurs">

- Un Gateway supervisé qui plante de manière répétée laisse désormais un processus de contrôle stable disponible pour l’inspection et la réparation, au lieu d’enfermer les opérateurs dans une boucle de redémarrage. [a18708c](https://github.com/openclaw/openclaw/commit/a18708c5c12d93f14eb753b543a6747e8baa8c47) Merci à @obviyus.

</Accordion>

### Tâches planifiées, contrôle distant du navigateur et terminaux d’espace de travail

Les tâches planifiées peuvent se réveiller lorsqu’une commande se termine ou qu’une condition surveillée change, le contrôle distant du navigateur peut associer certains onglets connectés et enregistrer en toute sécurité les téléchargements terminés, et des terminaux d’espace de travail protégés sont disponibles sur le Web et les appareils mobiles.

#### Des tâches planifiées qui ne se réveillent qu’en cas de besoin

Les [tâches planifiées](/fr/automation/cron-jobs) peuvent réagir lorsqu’une commande externe se termine ou qu’une condition surveillée change, afin que l’agent complet ne s’exécute que lorsqu’un nouvel élément doit être traité. La réapplication de la même déclaration met à jour la tâche prévue sur place, en préservant son identité et son historique au lieu de créer des planifications en double.

<Accordion title="Sources et contributeurs">

- Une tâche cron peut désormais surveiller une compilation, un déploiement, un script ou une autre commande, puis reprendre le flux de travail d’origine avec son code de sortie et sa sortie récente lorsqu’elle se termine. [#92037](https://github.com/openclaw/openclaw/pull/92037) Merci à @anagnorisis2peripeteia.
- Les déclarations Cron peuvent désormais être réappliquées en toute sécurité, sans tâches en double ni perte d’historique, tandis que la propriété, la prochaine exécution, le dernier résultat, la livraison et les notifications d’échec sont plus faciles à examiner. [#100480](https://github.com/openclaw/openclaw/pull/100480)
- Les tâches Cron peuvent désormais surveiller une condition externe et n’exécuter leur charge utile réelle que lorsque cet état change, ce qui évite de réveiller entièrement l’agent lors d’interrogations sans changement. [#101195](https://github.com/openclaw/openclaw/pull/101195)

</Accordion>

#### Association et téléchargements à distance dans le navigateur

Le [contrôle du navigateur](/fr/tools/browser-control) est plus facile à utiliser sur plusieurs machines : les opérateurs peuvent associer l’extension Chrome intégrée à un Gateway distant, ne partager que certains onglets connectés, diagnostiquer les détails de connexion sous Windows et WSL2, et révoquer l’accès en retirant un onglet du groupe OpenClaw. Les agents peuvent également attendre les téléchargements différés et enregistrer le fichier terminé dans un chemin local protégé, avec son URL finale et son nom suggéré.

<Accordion title="Sources et contributeurs">

- Les utilisateurs de Windows et WSL2 disposent désormais de vérifications IPv4 et IPv6, ainsi que des instructions portproxy correspondantes nécessaires pour rétablir le contrôle du navigateur Chrome sans élargir l’exposition de CDP. [#100590](https://github.com/openclaw/openclaw/pull/100590) Merci à @owlock et @zengwen-dt.
- L’extension Chrome intégrée permet désormais aux utilisateurs de contrôler certains onglets connectés depuis un téléphone ou un autre canal sans que quelqu’un doive approuver le débogage distant sur l’ordinateur de bureau, et le retrait d’un onglet révoque l’accès. [#100619](https://github.com/openclaw/openclaw/pull/100619)
- Les utilisateurs d’un Gateway distant peuvent associer l’extension Chrome intégrée depuis une autre machine de navigation avec `openclaw browser extension pair --gateway-url wss://...`, sans y installer OpenClaw ni Node.js et sans ouvrir de port entrant. [#101127](https://github.com/openclaw/openclaw/pull/101127)
- Les agents peuvent désormais enregistrer un téléchargement du navigateur dans un chemin protégé choisi ou attendre une exportation différée, et recevoir l’URL finale, le nom du fichier et le chemin local. [#101369](https://github.com/openclaw/openclaw/pull/101369) Merci à @grd-chang.

</Accordion>

#### Terminaux d’espace de travail sur le Web et les appareils mobiles

Les opérateurs authentifiés peuvent ouvrir un terminal d’espace de travail protégé depuis l’[interface de contrôle](/fr/web/control-ui), iOS ou Android, sans quitter l’espace de travail actuel. Les sessions utilisent l’espace de travail de l’agent sélectionné et l’interpréteur de commandes configuré, peuvent être désactivées par une stratégie et suivent les contrôles du [protocole Gateway](/fr/gateway/protocol) concernant la propriété et l’état de la connexion. Les terminaux de navigateur peuvent être ancrés, redimensionnés et exécutés côte à côte, tandis qu’iOS et Android proposent des points d’accès dédiés accompagnés d’instructions de connexion claires.

Le renforcement du navigateur inclus dans cette même version complète cette fonctionnalité : les terminaux peuvent se rattacher après un rechargement, une mise en veille ou une brève interruption du réseau, puis relire la sortie récente ; la prise en charge nouvellement activée apparaît sans actualisation manuelle ; et la fermeture, la réouverture, les thèmes, le focus du curseur, les glyphes d’invite et les commandes de nouvel onglet restent utilisables au fil des sessions.

<Accordion title="Sources et contributeurs">

- Les administrateurs authentifiés peuvent ouvrir un terminal interactif dans l’espace de travail d’un agent depuis des commandes adossées au Gateway, tandis que les agents entièrement isolés restent bloqués et que la fonctionnalité peut être désactivée avec `gateway.terminal.enabled`. [f083f35](https://github.com/openclaw/openclaw/commit/f083f35ddb467fa5ed7077244525913673bc7aa0)
- Les administrateurs de l’interface de contrôle peuvent désormais réunir la discussion, les commandes de session et les interpréteurs de commandes actifs en ouvrant plusieurs onglets de terminal ancrables et redimensionnables dans l’espace de travail du navigateur. [ec72de4](https://github.com/openclaw/openclaw/commit/ec72de41faa71b71d0e479eaa31d791e3b6afe58)
- Les utilisateurs d’iOS peuvent ouvrir Terminal directement depuis le centre de contrôle, voir une invite de configuration du Gateway lorsqu’ils sont déconnectés et maintenir les sessions d’interpréteur de commandes actives pendant des mises à jour d’écran sans rapport. [211e0d7](https://github.com/openclaw/openclaw/commit/211e0d7263c188ef8cbc5956808306b37bbfccc0)
- Les utilisateurs d’Android peuvent ouvrir un interpréteur de commandes dans l’espace de travail d’un agent depuis Settings &gt; Terminal, avec des instructions de connexion claires et, lorsque cela est pris en charge, la transmission des identifiants du Gateway sans placer le jeton dans l’URL. [fcd7eb6](https://github.com/openclaw/openclaw/commit/fcd7eb6130ed0d3de4a850bda6434f6a8b67664f)
- Les sessions de terminal facultatives de l’interface de contrôle peuvent désormais résister aux rechargements de page, à la mise en veille et aux brèves interruptions du réseau, ce qui permet aux opérateurs de les rattacher et de relire la sortie récente au lieu de perdre les commandes en cours d’exécution. [#100089](https://github.com/openclaw/openclaw/pull/100089)
- L’ouverture d’un nouveau terminal dans l’interface de contrôle après la fermeture du dernier onglet démarre désormais avec un nouvel interpréteur de commandes vide, au lieu de restaurer la sortie du terminal fermé. [#100665](https://github.com/openclaw/openclaw/pull/100665)
- Les onglets de terminal de l’interface de contrôle se ferment désormais correctement pendant leur ouverture, suivent les changements de thème et se rouvrent à une taille utilisable, au lieu de laisser des sessions masquées, des couleurs obsolètes ou des commandes inaccessibles. [2399ce7](https://github.com/openclaw/openclaw/commit/2399ce7c854d278276e65c9ed75f273a3c972e39)
- Une page de l’interface de contrôle déjà ouverte détecte désormais l’activation de la prise en charge du terminal et rend celui-ci disponible sans nécessiter d’actualisation manuelle. [3f976f9](https://github.com/openclaw/openclaw/commit/3f976f9f8624ded5af6fc48abf43c25a79661a32)
- L’ouverture d’un nouvel onglet de terminal dans l’interface de contrôle après la fermeture d’un autre n’hérite plus d’un ancien état terminé. [3c03389](https://github.com/openclaw/openclaw/commit/3c033899257210cb46d3c87468bb1a613e4fc831)
- Le terminal de l’interface de contrôle ne plante plus lorsque son composant Web est chargé plusieurs fois dans un registre de navigateur partagé. [f2e5159](https://github.com/openclaw/openclaw/commit/f2e5159f53248800416c15cc3aef50e505968317)
- Les terminaux de l’interface de contrôle utilisent désormais les polices Nerd Font de secours installées, afin que les icônes d’invite et de liste prises en charge s’affichent sous forme de glyphes plutôt que de cases de remplacement. [#100128](https://github.com/openclaw/openclaw/pull/100128)
- Le terminal intégré de l’interface de contrôle affiche désormais un seul curseur au lieu de superposer les curseurs de Chrome et du terminal, ce qui clarifie le focus et l’état de saisie. [#100240](https://github.com/openclaw/openclaw/pull/100240)
- Le bouton de nouvelle session du terminal de l’interface de contrôle est désormais aligné avec les onglets voisins, pour une barre d’onglets plus nette et plus facile à parcourir. [#100256](https://github.com/openclaw/openclaw/pull/100256)

</Accordion>

## Autres améliorations des canaux

### Corrections supplémentaires sur les canaux de messagerie

Les réponses et les médias restent désormais associés plus systématiquement à la conversation prévue sur les canaux d’espace de travail, mobiles et communautaires. [Telegram](/fr/channels/telegram) gère les albums, la progression, les nouvelles tentatives, les sujets, le routage et la livraison avec moins de résultats perdus, dupliqués, obsolètes ou difficiles à lire.

Discord, Slack, WhatsApp, Messages Apple et les autres canaux pris en charge bénéficient également d’un comportement plus clair pour les commandes, les fils de discussion, les pièces jointes, les proxys et la récupération. Dans ce groupe, les chemins de configuration et de livraison de [Messages Apple](/fr/channels/imessage) préservent le contexte de discussion attendu par les lecteurs au lieu d’exposer le travail de routage sous-jacent.

<Accordion title="Sources et contributeurs">

- Les albums photo Telegram transmettent désormais au modèle, dans l’ordre, toutes les images téléchargées avec succès, au lieu d’une seule photo et de références de fichiers inutilisables, tandis que les éléments ayant échoué sont omis. [#97045](https://github.com/openclaw/openclaw/pull/97045) Merci à @nianjiuzst et @obviyus.
- La vue de progression en direct de Telegram maintient désormais le raisonnement, les commentaires, la mise en forme et l’activité des outils lisibles et stables, puis conserve un résumé concis de l’exécution au lieu de disparaître. [#98907](https://github.com/openclaw/openclaw/pull/98907) Merci à @marvinthebored et @peetiegonzalez.
- Les canaux Slack peuvent conserver la participation ambiante d’OpenClaw, tandis que le paramètre facultatif `ignoreOtherMentions` empêche les réponses aux conversations destinées à une autre personne ou à un autre groupe et conserve cette conversation comme contexte pour une mention ultérieure du bot. [#53467](https://github.com/openclaw/openclaw/pull/53467) Merci à @hanamizuki.
- Les opérateurs Slack exécutant plusieurs Gateways au moyen d’une même application Socket Mode reçoivent désormais au démarrage un avertissement expliquant pourquoi les événements peuvent parvenir à une autre connexion et comment choisir une configuration de déploiement plus sûre. [#79938](https://github.com/openclaw/openclaw/pull/79938) Merci à @jeffvsutherland.
- La lecture et la recherche de messages Discord décodent désormais correctement les réponses brutes compressées et renvoient des erreurs claires en cas de données inattendues, au lieu d’un résultat illisible ou d’échecs opaques. [#80788](https://github.com/openclaw/openclaw/pull/80788) Merci à @jbetala7.
- Les opérateurs Slack peuvent désormais choisir `off`, `first`, `all` ou `batched` pour le regroupement des réponses en fils de discussion par canal, les réponses automatiques et les outils de messagerie appliquant le même choix effectif. [#82253](https://github.com/openclaw/openclaw/pull/82253)
- Les interactions avec les boutons et les sélecteurs Slack restent désormais dans le bon fil de discussion de l’assistant et y affichent un état de traitement jusqu’à la fin de l’échange suivant. [#82895](https://github.com/openclaw/openclaw/pull/82895) Merci à @wukongai-cmu.
- Les réponses Discord contenant uniquement des outils ne laissent plus de rafraîchissements de saisie qui se chevauchent et suggèrent qu’une autre réponse est encore en cours, tandis que le comportement de saisie explicitement configuré reste inchangé. [#84288](https://github.com/openclaw/openclaw/pull/84288) Merci à @dr00-eth.
- Les messages Slack planifiés et déclenchés par Heartbeat utilisent désormais le nom et l’icône d’agent configurés, avec un repli transparent sur l’identité de l’application lorsque Slack refuse la personnalisation. [#84335](https://github.com/openclaw/openclaw/pull/84335) Merci à @rohang2005.
- Les réponses plus longues dans les fils de discussion Slack de l’assistant affichent désormais des indications de progression variables afin que les utilisateurs sachent qu’OpenClaw est toujours en cours de traitement. [#85507](https://github.com/openclaw/openclaw/pull/85507) Merci à @emergentash.
- Plusieurs comptes de bots Discord sur un même serveur conservent désormais des sessions vocales indépendantes, et la connexion vocale automatique configurée fonctionne même lorsque Discord est prêt avant la fin du démarrage vocal. [#87530](https://github.com/openclaw/openclaw/pull/87530) Merci à @geekhuashan.
- Lorsqu’une réponse sous forme de note vocale Discord échoue, les utilisateurs reçoivent désormais la réponse de l’assistant sous forme de texte de secours dans le fil de discussion, sans duplication du texte déjà transmis. [#89962](https://github.com/openclaw/openclaw/pull/89962) Merci à @danhayman.
- L’action Discord permettant d’effacer toutes les réactions renvoie désormais une véritable erreur si une réaction du bot subsiste, au lieu d’annoncer une réussite complète. [#90038](https://github.com/openclaw/openclaw/pull/90038) Merci à @masatohoshino.
- La vérification d’un membre Discord absent d’un canal vocal le signale désormais comme déconnecté, au lieu de déclencher une erreur trompeuse de commande ou de Gateway. [#90969](https://github.com/openclaw/openclaw/pull/90969) Merci à @asock.
- Les appels REST Discord échouent désormais avec une erreur claire lorsqu’une réponse est trop volumineuse ou se bloque, au lieu de risquer une utilisation illimitée de la mémoire et une instabilité du processus. [#95412](https://github.com/openclaw/openclaw/pull/95412) Merci à @alix-007.
- Les messages de présentation Slack sont désormais transmis sous forme de cartes Block Kit natives, avec des en-têtes, des contrôles et des accusés de réception fonctionnels, au lieu d’un texte brut aplati. [#95463](https://github.com/openclaw/openclaw/pull/95463) Merci à @zoowh.
- Discord affiche désormais dans le bon ordre le raisonnement Anthropic activé, les notes et l’activité des outils, avec des compteurs précis et des résumés non vides. [#96106](https://github.com/openclaw/openclaw/pull/96106) Merci à @marvinthebored, @obviyus et @peetiegonzalez.
- L’ajout d’un compte Discord nommé ne met plus hors ligne un compte par défaut reposant sur SecretRef et ne le place plus dans une boucle de redémarrage. [#96401](https://github.com/openclaw/openclaw/pull/96401) Merci à @849261680.
- Les actions des blocs de texte enrichi Slack peuvent désormais inclure des emoji à proximité de la limite d’aperçu sans produire de texte d’interaction malformé ni d’échecs d’encodage en aval. [#96577](https://github.com/openclaw/openclaw/pull/96577) Merci à @llagy007 et @weeli-009.
- La première réponse Slack après une réinitialisation quotidienne ou due à l’inactivité peut réutiliser l’historique récent du fil de discussion, afin que la conversation ne reparte pas soudainement de zéro. [#97100](https://github.com/openclaw/openclaw/pull/97100) Merci à @bek91.
- Les réponses Slack restent rattachées à l’historique de session du fil de discussion racine au lieu d’accumuler des sessions enfants distinctes et presque vides. [#97168](https://github.com/openclaw/openclaw/pull/97168) Voir aussi [#96535](https://github.com/openclaw/openclaw/issues/96535). Merci à @gorkem2020 et @liuwqgit.
- Les vérifications de l’état des comptes Discord échouent désormais de manière sûre lorsque les réponses d’identité sont trop volumineuses, au lieu de risquer un plantage du Gateway ou une défaillance par épuisement de la mémoire. [#97278](https://github.com/openclaw/openclaw/pull/97278) Merci à @hugenshen.
- Les réponses Slack n’exposent plus aux utilisateurs les bandeaux internes d’échec des outils, les structures de raisonnement ni le balisage des appels d’outils. [#97367](https://github.com/openclaw/openclaw/pull/97367) Merci à @masatohoshino.
- Lorsque Slack accepte une réponse mais que la confirmation est perdue, OpenClaw peut vérifier la publication existante et éviter d’envoyer un doublon. [#97480](https://github.com/openclaw/openclaw/pull/97480) Merci à @joeyfrasier.
- Les requêtes Discord portant sur les messages, l’historique des fils de discussion et les pièces jointes rejettent désormais les réponses réussies trop volumineuses avant qu’elles ne puissent provoquer une croissance excessive de la mémoire du Gateway. [#97693](https://github.com/openclaw/openclaw/pull/97693) Merci à @alix-007.
- Les recherches PluralKit et la configuration du téléversement vocal dans Discord interrompent désormais les réponses JSON anormalement volumineuses avant qu’elles ne puissent épuiser la mémoire. [#97706](https://github.com/openclaw/openclaw/pull/97706) Merci à @cxbasdev.
- Les conversations vocales Discord en mode `stt-tts` conservent désormais le contexte oral antérieur d’un échange à l’autre, au lieu de recommencer après chaque réponse. [#97746](https://github.com/openclaw/openclaw/pull/97746) Merci à @karabaralex et @sanjays2402.
- Les réponses Discord réussies mais malformées échouent désormais avec un contexte propre au point de terminaison, au lieu d’afficher une erreur brute de l’analyseur ou de faire planter OpenClaw. [#97889](https://github.com/openclaw/openclaw/pull/97889) Merci à @lsr911.
- Une réponse de métadonnées du gateway Discord trop volumineuse consigne désormais une erreur de taille limitée et se replie sur l’URL de gateway par défaut de Discord, au lieu de risquer un plantage du Gateway. [#98682](https://github.com/openclaw/openclaw/pull/98682) Merci à @wings1029.
- Les déploiements Discord sur des réseaux restreints peuvent désormais acheminer le trafic Gateway et REST au moyen d’un DNS explicitement configuré ou d’un proxy HTTP(S) privé, sans ouvrir un vaste accès HTTPS direct sortant. [#99126](https://github.com/openclaw/openclaw/pull/99126) Voir aussi [#98266](https://github.com/openclaw/openclaw/issues/98266). Merci à @joshavant, @sallyom et @svuppala2006.
- Les utilisateurs de Discord reçoivent désormais le texte de la réponse et une notification claire lorsqu’une pièce jointe est trop volumineuse, au lieu de voir disparaître la réponse terminée. [#99577](https://github.com/openclaw/openclaw/pull/99577) Merci à @lin-hongkuan.
- Les réponses Slack sont désormais réessayées après un conflit temporaire au démarrage de la session, au lieu de s’interrompre avant la transmission du message attendu. [#99647](https://github.com/openclaw/openclaw/pull/99647) Merci à @steipete-oai.
- Les réponses Discord terminées issues d’un flux partiel arrivent désormais sous forme de nouveaux messages pouvant déclencher les indicateurs habituels de non-lecture après le départ d’un utilisateur du canal. [#99711](https://github.com/openclaw/openclaw/pull/99711) Merci à @davelutztx.
- Les boutons et menus Slack préservent désormais les libellés temporels tels que `9:00` et renvoient la valeur d’action prévue lorsqu’ils sont sélectionnés. [#99877](https://github.com/openclaw/openclaw/pull/99877) Merci à @qingminglong et @rodja.
- Discord et les autres vues de progression masquent désormais les interrogations internes répétitives du mode Code tout en continuant d’afficher l’activité pertinente des outils. [#99893](https://github.com/openclaw/openclaw/pull/99893)
- Les connexions au Gateway Discord limitent désormais les trames entrantes à 16 MiB, ce qui préserve les événements volumineux de membres ayant été testés tout en rejetant le trafic extrême avant qu’il ne sollicite la mémoire. [#99998](https://github.com/openclaw/openclaw/pull/99998) Merci à @sunlit-deng.
- Les réactions aux messages Slack acceptent désormais les emoji courants ou leurs noms abrégés, peuvent cibler le message actuel sans répéter son identifiant et fournissent des indications plus claires pour rechercher un membre. [#100375](https://github.com/openclaw/openclaw/pull/100375) Merci à @gorkem2020.
- Slack utilise désormais par défaut une seule réaction d’accusé de réception statique parallèlement à son état natif de chargement de l’assistant, évitant ainsi deux affichages de progression concurrents pour la même réponse. [#100462](https://github.com/openclaw/openclaw/pull/100462) Merci à @steipete-oai.
- Les réponses Slack ordinaires dans un fil de discussion ne téléchargent et ne traitent plus une nouvelle fois les pièces jointes du message initial, tandis que les sessions nouvelles ou réinitialisées reçoivent toujours ces fichiers une seule fois. [#100516](https://github.com/openclaw/openclaw/pull/100516)
- L’historique de session identifie désormais les réponses Slack qui ont été générées, mais volontairement remplacées avant leur transmission, afin que les opérateurs ne les prennent pas pour des messages reçus par l’utilisateur. [#100607](https://github.com/openclaw/openclaw/pull/100607) Merci à @bek91.
- Les messages qui échouent avant d’atteindre Discord, Slack, Matrix ou un autre canal peuvent désormais être retransmis une fois la connectivité rétablie, tandis que les résultats incertains après envoi continuent d’éviter les doublons aveugles. [#101024](https://github.com/openclaw/openclaw/pull/101024) Merci à @sunnyshu0925.
- Les résumés Cron, les réponses Teams et Slack ainsi que les autres réponses intégrées de l’assistant n’exposent plus les marqueurs de raisonnement du fournisseur tels que `&lt;/mm:think&gt;`. [#101036](https://github.com/openclaw/openclaw/pull/101036) Merci à @velanir-ai-manager.
- La lecture vocale Discord transforme désormais les sorties de canal ffmpeg rompues en une erreur de lecture normale, au lieu d’une exception non interceptée au niveau du Gateway. [#101088](https://github.com/openclaw/openclaw/pull/101088) Merci à @masatohoshino.
- Les intégrations Discord et Nextcloud Talk de longue durée limitent désormais leurs caches de métadonnées de canaux, au lieu de laisser chaque nouvelle salle rencontrée augmenter indéfiniment l’utilisation de la mémoire. [#101650](https://github.com/openclaw/openclaw/pull/101650) Merci à @alix-007 et @vincentkoc.
- Les réponses Slack dans les fils de discussion très longs et sur les Gateways très sollicités évitent désormais plusieurs attentes inutiles, réduisant les blocages avant que les événements des fils de discussion et des messages directs n’atteignent l’agent. [#101888](https://github.com/openclaw/openclaw/pull/101888) Merci à @obviyus.
- Les bots Discord peuvent désormais récupérer sur place après des rejets répétés de reprise de session, réduisant ainsi les interruptions prolongées, les réponses perdues et les redémarrages complets du Gateway. [#103596](https://github.com/openclaw/openclaw/pull/103596)
- Les aperçus de canaux, les noms de fils de discussion, les extraits et les erreurs abrégées dans les intégrations de navigateur et de messagerie préservent désormais les emoji entiers et les autres caractères Unicode. [c16bb87](https://github.com/openclaw/openclaw/commit/c16bb8725a8a04d5de92855769cf87e13574384f) Merci à @vincentkoc.
- Les longs libellés de contexte Slack, les messages et légendes Zalo, ainsi que la sortie des commandes d’extension sont désormais tronqués sans couper les emoji ni les autres caractères hors du plan multilingue de base. [7e03242](https://github.com/openclaw/openclaw/commit/7e0324263b867d3d47138d1d2b1e9afd1dd2016f) Merci à @hugenshen, @mushuiyu886 et @vincentkoc.
- Les bots LINE par défaut et nommés configurés sous `channels.line.accounts` disposent désormais de routes Webhook fonctionnelles, sauf désactivation explicite, ce qui empêche les messages entrants valides d’aboutir à des réponses 404. [#81471](https://github.com/openclaw/openclaw/pull/81471) Merci à @edenfunf et @honorlin.
- Une connexion Feishu qui cesse de recevoir des messages risque moins de rester faussement indiquée comme saine, car l’activité du transport met désormais à jour l’état du canal. [#90966](https://github.com/openclaw/openclaw/pull/90966) Merci à @acache, @richardataxai-lab et @vincentkoc.
- Les photos transférées depuis un Mac iMessage distant vers un hôte Gateway distinct arrivent désormais dans les conversations Codex par l’intermédiaire d’un chemin local lisible plutôt que d’un nom de fichier propre au Mac. [#91803](https://github.com/openclaw/openclaw/pull/91803) Merci à @turbotheturtle.
- Les utilisateurs d’une passerelle iMessage compatible peuvent créer, lire et voter dans les sondages natifs d’Apple Messages, avec des instructions de mise à niveau pour les installations `imsg` non prises en charge. [#98421](https://github.com/openclaw/openclaw/pull/98421) Merci à @lobster et @omarshahine.
- Les propriétaires de groupes WhatsApp peuvent utiliser de manière fiable `/new`, `/stop`, `/status` et des commandes similaires, même lorsque l’identité de l’expéditeur se présente sous la forme d’un LID interne. [#93379](https://github.com/openclaw/openclaw/pull/93379) Voir aussi [#77755](https://github.com/openclaw/openclaw/issues/77755). Merci à @jiveshkalra et @xialonglee.
- Les téléversements de fichiers LINE conservent désormais des extensions audio reconnaissables telles que `.m4a`, ce qui permet aux enregistrements valides d’être transmis à la transcription au lieu d’être traités comme des fichiers inconnus. [#96403](https://github.com/openclaw/openclaw/pull/96403) Merci à @tancolo et @zaidazmi.
- Les blocs de code délimités contenant des lignes d’exemple ressemblant à des marqueurs de délimitation Markdown restent désormais regroupés au lieu d’être coupés en leur milieu, ce qui pouvait les rendre confus ou entraîner une mauvaise interprétation. [#96745](https://github.com/openclaw/openclaw/pull/96745) Merci à @ly-wang19 et @vincentkoc.
- Les raccourcis de réaction Signal s’appliquent désormais uniquement à l’approbation structurée d’une exécution ou d’un plugin visée, y compris dans les invites de surveillance transférées et segmentées, tandis que les messages ordinaires qui ne font que citer des commandes d’approbation ne reçoivent plus de contrôles ; les anciennes invites déjà distribuées peuvent encore nécessiter `/approve` une fois après la mise à niveau. [#96880](https://github.com/openclaw/openclaw/pull/96880) Merci à @joshavant.
- Le démarrage rapide de Signal affiche désormais un seul échec d’installation clair pour `signal-cli`, puis passe directement à l’invite de chemin personnalisé au lieu de répéter le message signalant l’absence du binaire. [#96932](https://github.com/openclaw/openclaw/pull/96932) Merci à @romneyda.
- Les longs messages sans coupure conservent désormais les emoji intacts lorsqu’ils sont divisés en segments adaptés à la distribution, évitant ainsi l’affichage de caractères de remplacement illisibles pour les utilisateurs et les plugins de canal. [#96951](https://github.com/openclaw/openclaw/pull/96951) Merci à @bartok9 et @ly-wang19.
- Les utilisateurs de Signal reçoivent désormais des réponses propres de l’assistant, sans état interne des outils, balises de raisonnement ni balisage d’appel d’outil. [#97360](https://github.com/openclaw/openclaw/pull/97360) Merci à @masatohoshino.
- Les titres de modèles, le texte de secours et le texte alternatif de LINE conservent désormais les emoji intacts aux limites des champs, évitant ainsi les aperçus corrompus et le rejet des charges utiles. [#97428](https://github.com/openclaw/openclaw/pull/97428) Merci à @ly-wang19 et @vincentkoc.
- Les longs libellés de boutons LINE, les réponses rapides, les données de publication différée et les commandes multimédias préservent désormais les emoji aux limites des champs au lieu de produire du texte mal formé. [#97470](https://github.com/openclaw/openclaw/pull/97470) Merci à @ly-wang19 et @vincentkoc.
- La configuration du plugin Signal gère désormais les métadonnées de versions GitHub lentes, mal formées ou surdimensionnées sans risquer d’épuiser la mémoire du processus. [#97536](https://github.com/openclaw/openclaw/pull/97536) Merci à @hugenshen.
- Le mode conteneur de Signal empêche désormais les réponses `signal-cli-rest-api` surdimensionnées ou incontrôlées de menacer l’ensemble du processus OpenClaw. [#97539](https://github.com/openclaw/openclaw/pull/97539) Merci à @alix-007.
- Un JSON non valide provenant du conteneur REST Signal produit désormais une erreur claire propre à Signal au lieu d’exposer une erreur brute de l’analyseur. [#98073](https://github.com/openclaw/openclaw/pull/98073) Merci à @lsr911 et @vincentkoc.
- Voter pour une option de sondage iMessage libellée par un emoji n’envoie plus de message supplémentaire d’un mot répétant la réponse sélectionnée. [#98691](https://github.com/openclaw/openclaw/pull/98691) Merci à @omarshahine.
- Les agents répondent désormais aux sondages iMessage, y compris ceux qui comportent des commentaires, par un seul vote natif plutôt que par une réponse textuelle ordinaire, une sélection répétée ou une réponse distincte au commentaire. [#98781](https://github.com/openclaw/openclaw/pull/98781) Merci à @omarshahine.
- Les utilisateurs de Signal qui activent les réactions d’état peuvent désormais voir quand OpenClaw accepte un message, travaille, utilise des outils, effectue une Compaction, se bloque ou termine dans les conversations directes et de groupe. [#98791](https://github.com/openclaw/openclaw/pull/98791) Merci à @jesse-merhi.
- Les messages, cartes, menus, emplacements et blocs de code LINE préservent désormais les emoji et les autres caractères composés de plusieurs unités aux limites des champs, au lieu de produire du texte corrompu ou des charges utiles rejetées. [#98994](https://github.com/openclaw/openclaw/pull/98994) Merci à @lexes7 et @vincentkoc.
- Les identifiants de groupe iMessage bruts de 32 caractères provenant de `imsg` acheminent désormais les envois planifiés et directs vers la conversation prévue plutôt que vers un numéro de téléphone inexistant. [#99525](https://github.com/openclaw/openclaw/pull/99525) Voir aussi [#89235](https://github.com/openclaw/openclaw/issues/89235). Merci à @matthewdelprado.
- Avec `channels.whatsapp.actions.calls`, MeowCaller et la synthèse vocale téléphonique configurés, un agent WhatsApp peut désormais appeler le demandeur et énoncer un court message signalant l’achèvement d’une tâche ou une urgence. [#99635](https://github.com/openclaw/openclaw/pull/99635)
- Les échecs de téléchargement de pièces jointes sur WhatsApp, LINE, Signal, iMessage, Teams, Feishu, Mattermost et Zalo restent désormais visibles et permettent d’agir, au lieu de disparaître ou de se faire passer pour des médias correctement reçus. [#100119](https://github.com/openclaw/openclaw/pull/100119)
- Les configurations iMessage utilisant uniquement AppleScript, un utilisateur bot ou SSH distribuent désormais les réponses même lorsque les fils de discussion ne sont pas disponibles, et les modifications de la base de données ne laissent plus les messages entrants masqués par un état de récupération obsolète. [#100446](https://github.com/openclaw/openclaw/pull/100446) Merci à @omarshahine.
- Les numéros de téléphone mal formatés comportant des signes plus supplémentaires correspondent désormais au contact Signal, iMessage ou WhatsApp prévu, tandis que les identités ne contenant aucun chiffre sont rejetées en toute sécurité. [#100467](https://github.com/openclaw/openclaw/pull/100467) Merci à @morluto.
- Les réponses des agents ClickClack aux messages de premier niveau restent désormais dans le canal actif ou le message direct, tandis que les réponses au sein de véritables fils de discussion y restent rattachées. [#100582](https://github.com/openclaw/openclaw/pull/100582) Merci à @marvinthebored et @vincentkoc.
- Les réponses LINE combinant du texte avec une image, une carte ou un emplacement signalent désormais avec précision l’échec de la partie multimédia enrichie, tout en distribuant le texte une seule fois et en évitant les nouvelles tentatives en double. [#100996](https://github.com/openclaw/openclaw/pull/100996) Merci à @masatohoshino.
- La défaillance d’un canal d’assistance iMessage met désormais fin de manière prévisible aux travaux en attente et permet au moniteur de récupérer ou de s’arrêter proprement, au lieu de faire planter le Gateway ou de bloquer les requêtes. [#101084](https://github.com/openclaw/openclaw/pull/101084) Merci à @masatohoshino.
- Les sondages WhatsApp directs respectent désormais le même verrouillage temporel de prise de contact que les autres envois, au lieu d’atteindre les destinataires pendant une période bloquée. [1d128b4](https://github.com/openclaw/openclaw/commit/1d128b4dd23297ee3553142954e4ce0542ba83e6) Merci à @vincentkoc.
- Les sessions Google Meet et Voice Call directes conservent désormais l’identité, l’espace de travail, le routage et l’attribution de la transcription de l’agent ayant lancé l’appel, au lieu de passer silencieusement à l’agent par défaut. [#77763](https://github.com/openclaw/openclaw/pull/77763) Merci à @quangtran88.
- L’historique des appels Google Live conserve désormais les deux côtés de la conversation, tandis que les reconnexions évitent de soumettre des paroles inachevées ou de combiner des énoncés sans rapport. [#84161](https://github.com/openclaw/openclaw/pull/84161)
- Les appels sortants OpenAI Realtime diffusent désormais un seul message d’accueil initial, même lorsque le destinataire parle immédiatement après avoir décroché, tandis que les interruptions ultérieures continuent d’arrêter la parole en cours. [#86285](https://github.com/openclaw/openclaw/pull/86285) Merci à @giodl73-repo et @jnikolaidis.
- Les mises à niveau de QQBot migrent désormais les sauvegardes récupérables d’identifiants vers SQLite sans supprimer les fichiers sources en cas d’échec de l’importation, tandis que les caches jetables sont reconstruits séparément. [#89597](https://github.com/openclaw/openclaw/pull/89597)
- Les appelants utilisant les appels vocaux en temps réel d’OpenAI ou de Google peuvent désormais interrompre la parole de l’assistant et arrêter rapidement le son téléphonique mis en mémoire tampon, tandis que les autres fournisseurs conservent le mécanisme de secours local existant. [#90749](https://github.com/openclaw/openclaw/pull/90749) Merci à @moellenbeck.
- QQBot peut désormais distribuer les documents et médias créés par des agents en bac à sable depuis des chemins d’espace de travail autorisés, tout en continuant de bloquer les échappements de chemin. [#92872](https://github.com/openclaw/openclaw/pull/92872) Merci à @sliverp et @zhangguiping-xydt.
- Les messages envoyés par l’intermédiaire de l’outil de messagerie d’OpenClaw conservent désormais les préfixes de réponse statiques ou liés à l’identité qui ont été configurés, assurant ainsi un libellé cohérent des messages acheminés et diffusés. [#93639](https://github.com/openclaw/openclaw/pull/93639) Merci à @zengwen-dt.
- Les appelants entendent désormais une réponse terminée sans attendre la Compaction de fin de tour, et une lecture anticipée réussie n’est plus répétée. [#94015](https://github.com/openclaw/openclaw/pull/94015) Merci à @xialonglee.
- Lorsque la diffusion en continu des blocs est activée sans cartes diffusées en continu, les réponses Feishu arrivent désormais sous forme de blocs terminés au lieu de disparaître entièrement. [#94250](https://github.com/openclaw/openclaw/pull/94250) Voir aussi [#55027](https://github.com/openclaw/openclaw/issues/55027). Merci à @vincentkoc, @xialonglee et @zichaolong.
- Lorsqu’un bouton de commande interactif se rabat sur du texte, les utilisateurs reçoivent désormais la commande qu’ils peuvent copier, et les commentaires de documents Feishu expliquent l’étape manuelle. [#94385](https://github.com/openclaw/openclaw/pull/94385) Voir aussi [#69754](https://github.com/openclaw/openclaw/issues/69754). Merci à @1yihui et @xialonglee.
- Les opérateurs d’appels vocaux Twilio peuvent sélectionner US1, IE1 ou AU1 afin que le contrôle et les enregistrements des appels utilisent la région prévue, US1 restant la valeur par défaut. [#95832](https://github.com/openclaw/openclaw/pull/95832) Merci à @jodok.
- Les envois et réactions Nextcloud Talk limitent désormais la taille des réponses du serveur, protégeant OpenClaw contre les blocages ou une consommation incontrôlée de mémoire tout en préservant la distribution normale. [#96031](https://github.com/openclaw/openclaw/pull/96031) Merci à @alix-007.
- Les directives de réponse contenant des caractères dangereux masqués produisent désormais des identifiants de réponse stables et sûrs pour l’affichage avant leur utilisation par le routage des conversations. [#96446](https://github.com/openclaw/openclaw/pull/96446) Merci à @lin-hongkuan.
- Les réponses Microsoft Teams aux longs messages parents conservent désormais intactes les émoticônes et les caractères similaires dans le contexte du message parent de l’agent, au lieu d’insérer du texte mal formé. [#96569](https://github.com/openclaw/openclaw/pull/96569) Merci à @llagy007 et @weeli-009.
- Les longs messages IRC conservent désormais intacts les émoticônes et autres caractères supplémentaires lorsqu’ils sont divisés en segments de livraison, y compris avec des limites de segment configurées inhabituellement faibles. [#96572](https://github.com/openclaw/openclaw/pull/96572) Merci à @llagy007 et @weeli-009.
- Les envois et la vérification des requêtes Google Chat limitent désormais la taille des réponses d’API, de certificat et d’erreur surdimensionnées, ce qui laisse passer le trafic normal tandis que les corps défectueux ou hostiles échouent ou sont tronqués sans épuiser la mémoire. [#96772](https://github.com/openclaw/openclaw/pull/96772) Merci à @vincentkoc et @wangmiao0668000666.
- La conversion de la parole en texte de QQBot renvoie désormais rapidement une erreur libellée lorsqu’un point de terminaison de transcription compatible avec OpenAI envoie une réponse surdimensionnée, au lieu de mettre en mémoire tampon l’intégralité du corps. [#96968](https://github.com/openclaw/openclaw/pull/96968) Merci à @mushuiyu886.
- `openclaw channels login --channel feishu` affiche désormais un code QR compact qui reste lisible dans une fenêtre de terminal normale. [#97087](https://github.com/openclaw/openclaw/pull/97087) Merci à @nianjiuzst.
- Les amorces de longs fils de discussion Matrix conservent intactes les émoticônes et autres caractères spéciaux lorsqu’OpenClaw les raccourcit pour le contexte de l’agent. [#97121](https://github.com/openclaw/openclaw/pull/97121) Merci à @bartok9 et @ly-wang19.
- Les utilisateurs IRC reçoivent désormais la réponse prévue sans que des bandeaux internes d’échec d’outil ou des éléments de structure réservés à l’assistant apparaissent dans les messages du canal. [#97214](https://github.com/openclaw/openclaw/pull/97214) Merci à @masatohoshino, @studentzhou-svg et @vincentkoc.
- La configuration, l’interrogation périodique, l’envoi et les contrôles d’intégrité de Zalo rejettent désormais les réponses réussies anormalement volumineuses avant qu’elles ne puissent soumettre le Gateway à une forte pression mémoire. [#97277](https://github.com/openclaw/openclaw/pull/97277) Merci à @hugenshen.
- Les opérateurs Matrix reçoivent désormais un avertissement structuré lorsque la rotation des jetons laisse plusieurs racines de stockage renseignées, avec des détails permettant d’identifier et d’archiver prudemment les dossiers obsolètes. [#97353](https://github.com/openclaw/openclaw/pull/97353) Merci à @eldron81-r2d2 et @outdog-hwh.
- Les réponses Matrix transmettent désormais la réponse prévue sans divulguer les diagnostics internes des outils, les balises de raisonnement ou les éléments de structure réservés à l’assistant. [#97372](https://github.com/openclaw/openclaw/pull/97372) Merci à @masatohoshino.
- Les tableaux Markdown de QQBot conservent désormais les barres verticales échappées à l’intérieur de leurs cellules, afin que les commandes et expressions ne soient pas décalées dans les mauvaises colonnes. [#97429](https://github.com/openclaw/openclaw/pull/97429) Merci à @ly-wang19.
- Les longs résumés de cartes diffusées en continu de Feishu conservent désormais intacts les émoticônes et autres caractères non BMP à la limite de troncature. [#97462](https://github.com/openclaw/openclaw/pull/97462) Merci à @ly-wang19.
- Les longues citations de réponses Matrix envoyées aux agents tronquent désormais les émoticônes et autres caractères à plusieurs unités sans laisser de texte corrompu. [#97471](https://github.com/openclaw/openclaw/pull/97471) Merci à @ly-wang19.
- Les aperçus de brouillons diffusés en continu dans Mattermost raccourcissent désormais les longs textes contenant des émoticônes sans afficher de caractère de remplacement mal formé. [#97472](https://github.com/openclaw/openclaw/pull/97472) Merci à @ly-wang19.
- Les clics sur les boutons des cartes adaptatives Microsoft Teams transmettent désormais la valeur envoyée à l’agent au lieu d’arriver sous forme de messages vides. [#97546](https://github.com/openclaw/openclaw/pull/97546) Merci à @jimmypuckett.
- Les longs commentaires Feishu contenant des émoticônes à la limite de coupure parviennent désormais à l’agent sous forme de texte valide au lieu d’être scindés en caractères mal formés. [#97595](https://github.com/openclaw/openclaw/pull/97595) Merci à @llagy007 et @weeli-009.
- Les téléchargements de médias Matrix appliquent désormais des limites de taille et de délai d’inactivité avant la mise en mémoire tampon, y compris pour les médias chiffrés. [#97662](https://github.com/openclaw/openclaw/pull/97662) Merci à @alix-007.
- Les requêtes d’inscription et de cartes diffusées en continu de Feishu et Lark rejettent désormais les données JSON surdimensionnées du fournisseur avant qu’elles ne puissent exercer une pression illimitée sur la mémoire. [#97782](https://github.com/openclaw/openclaw/pull/97782) Merci à @alix-007.
- La livraison de fichiers et la recherche de conversations Microsoft Teams limitent désormais les réponses Microsoft Graph volumineuses et renvoient une erreur libellée au lieu de risquer un plantage du processus. [#97784](https://github.com/openclaw/openclaw/pull/97784) Merci à @alix-007.
- Les réponses SMS masquent désormais les bandeaux internes d’échec des traces d’outils et n’affichent que la réponse prévue de l’assistant. [#97989](https://github.com/openclaw/openclaw/pull/97989) Merci à @zengwen-dt.
- Les contrôles de compte SMS Twilio gèrent désormais les réponses JSON réussies mais mal formées en fournissant une liste sûre des numéros de téléphone ou une erreur claire du service de messagerie. [#97999](https://github.com/openclaw/openclaw/pull/97999) Merci à @lsr911.
- L’annulation d’une attente de reconnexion, de démarrage ou de nouvelle tentative d’identification du bot Feishu se termine désormais proprement au lieu de risquer un `ReferenceError` pendant le nettoyage. [#98137](https://github.com/openclaw/openclaw/pull/98137) Merci à @zhanglei99586.
- La ponctuation autour du jeton `NO_REPLY` d’un modèle ne le transforme plus en message de discussion visible, tandis que les messages légitimes contenant le jeton continuent d’arriver. [#98224](https://github.com/openclaw/openclaw/pull/98224) Merci à @sunnyshu0925.
- Les résultats des sous-agents, des tâches planifiées, des traitements de médias et des infrastructures d’agents reviennent désormais par le même compte, la même destination et le même fil configurés que ceux à l’origine de la demande. [#98240](https://github.com/openclaw/openclaw/pull/98240) Merci à @yetval.
- Les échecs des canaux Tlon et Urbit limitent désormais les réponses d’erreur surdimensionnées ou mal formées avant qu’elles ne puissent provoquer des pics de mémoire, tout en conservant les messages courts utiles. [#98496](https://github.com/openclaw/openclaw/pull/98496) Merci à @pandah97.
- Les réponses Mattermost affichent désormais la réponse prévue de l’assistant sans exposer les diagnostics internes d’échec des outils. [#98693](https://github.com/openclaw/openclaw/pull/98693) Merci à @zengwen-dt.
- Les réponses du bot Feishu n’exposent plus les bandeaux internes d’échec des outils ou de l’environnement d’exécution avec la réponse prévue. [#98705](https://github.com/openclaw/openclaw/pull/98705) Merci à @zengwen-dt.
- Les opérateurs Zalo peuvent rediriger les appels à l’API du bot vers un autre point de terminaison compatible sans modifier le code, tandis que les fichiers d’environnement ordinaires de l’espace de travail ne peuvent pas rediriger silencieusement le trafic et que les horodatages des messages en millisecondes restent exacts. [#98768](https://github.com/openclaw/openclaw/pull/98768) Merci à @romneyda.
- Les agents ambiants restent désormais plus discrets dans les conversations de groupe observées et respectent les instructions de l’opérateur, par exemple de répondre uniquement lorsqu’on s’adresse à eux. [#99144](https://github.com/openclaw/openclaw/pull/99144) Merci à @obviyus.
- Les conversations de groupe ambiantes restent désormais silencieuses sauf si l’agent envoie délibérément un message, sans lignes d’état parasites, résumés d’outils, avis de Compaction, avertissements de livraison ou messages de suivi en cas de dépassement. [#99145](https://github.com/openclaw/openclaw/pull/99145) Merci à @obviyus.
- La surveillance des canaux Mattermost rejette désormais les événements entrants dépassant 16 Mio et se reconnecte, ce qui limite l’exposition de la mémoire tout en continuant d’accepter les messages volumineux normaux. [#99366](https://github.com/openclaw/openclaw/pull/99366) Merci à @sunlit-deng.
- Les agents de groupe toujours actifs peuvent désormais recevoir et traiter les messages valides ne les mentionnant pas après un repli de Plugin, au lieu de les ignorer silencieusement. [#99506](https://github.com/openclaw/openclaw/pull/99506) Voir aussi [#99457](https://github.com/openclaw/openclaw/issues/99457). Merci à @lzy3538 et @zqchris.
- Les réponses et pièces jointes déjà acceptées par un canal ne sont plus renvoyées après un redémarrage ou un échec de récupération, tandis que les éléments réellement non envoyés peuvent toujours faire l’objet d’une nouvelle tentative. [#99600](https://github.com/openclaw/openclaw/pull/99600) Merci à @zhangguiping-xydt.
- Les envois sortants signalent désormais les messages ayant échoué ou partiellement livrés avec des résultats utiles pour chaque partie, au lieu de présenter chaque tentative comme une réussite. [#99928](https://github.com/openclaw/openclaw/pull/99928) Merci à @masatohoshino.
- ClickClack peut désormais afficher, après consentement et de manière persistante, les commentaires et l’activité des outils pendant une exécution, afin que les utilisateurs ne restent pas face à un canal vide jusqu’à la réponse finale. [#99954](https://github.com/openclaw/openclaw/pull/99954) Merci à @obviyus et @ragesaq.
- Les conversations vocales entrantes de type Telnyx et Plivo peuvent désormais se poursuivre après la première réponse de l’appelant, au lieu de devenir silencieuses avant qu’OpenClaw ne reprenne la parole. [#100255](https://github.com/openclaw/openclaw/pull/100255) Merci à @dvy.
- Les rappels valides de Twilio et Plivo passent désormais les contrôles de signature derrière des proxys inverses IPv4 de confiance, même lorsque Node signale le proxy comme une adresse IPv6 mappée depuis IPv4. [#100261](https://github.com/openclaw/openclaw/pull/100261) Merci à @rohitjavvadi.
- Les livraisons répétées de Webhook d’appel vocal sont désormais acquittées sans répéter les effets secondaires de l’appel ou de la transcription pendant la fenêtre de relecture. [#100263](https://github.com/openclaw/openclaw/pull/100263) Merci à @xialonglee.
- Un échec temporaire du renouvellement de la surveillance Gmail produit désormais une erreur sans faire planter un processus `openclaw webhooks gmail run` de premier plan s’exécutant sur une longue durée. [#100342](https://github.com/openclaw/openclaw/pull/100342) Merci à @cxbasdev et @vincentkoc.
- Les agents qui rattrapent leur retard dans des conversations de groupe très actives reçoivent désormais un historique plus clair, organisé par expéditeur, ce qui facilite le suivi des échanges entre plusieurs personnes sans exposer les chemins locaux ni les URL. [#100366](https://github.com/openclaw/openclaw/pull/100366) Merci à @gorkem2020.
- Tlon arrête désormais les téléchargements d’images externes surdimensionnés ou bloqués avant qu’ils ne consomment une quantité illimitée de mémoire, et peut poursuivre le message avec l’URL d’origine. [#100374](https://github.com/openclaw/openclaw/pull/100374) Merci à @hugenshen.
- Les réponses scry Tlon surdimensionnées échouent désormais avec une erreur claire propre au chemin au lieu de risquer un plantage du Gateway par manque de mémoire. [#100376](https://github.com/openclaw/openclaw/pull/100376) Merci à @hugenshen.
- Les canaux sans diffusion en continu n’envoient plus deux fois le même texte final ou média pour un même message, tandis que les réponses réellement distinctes avec des identités de routage ou de fil différentes continuent d’être transmises. [#100828](https://github.com/openclaw/openclaw/pull/100828) Merci à @vincentkoc et @zhangxiaojiujiayi.
- Les données JSON de cartes interactives prises en charge, envoyées par l’intermédiaire de messages Feishu, de réponses dans un fil ou de charges utiles textuelles, s’affichent désormais sous forme de carte au lieu d’apparaître comme du JSON brut. [#100883](https://github.com/openclaw/openclaw/pull/100883) Merci à @martingarramon, @vincentkoc et @zenorewn.
- La récupération des pièces jointes Microsoft Teams refuse désormais les métadonnées Graph surdimensionnées en fournissant des diagnostics, au lieu de les mettre en mémoire tampon dans la mémoire du Gateway, tandis que les médias hébergés normaux continuent d’être téléchargés dans les limites configurées. [#101082](https://github.com/openclaw/openclaw/pull/101082) Merci à @cxbasdev.
- Les requêtes bloquées de jeton de locataire ou de carte diffusée en continu de Feishu expirent désormais avec une erreur claire et libèrent la file de traitement afin que les autres messages du Gateway puissent continuer. [#102948](https://github.com/openclaw/openclaw/pull/102948) Merci à @hugenshen et @sallyom.
- Le fournisseur d’appels vocaux Twilio rejette désormais les noms d’hôte d’API non pris en charge avant d’envoyer une requête et n’accepte que les hôtes régionaux Twilio pris en charge par OpenClaw. [094c0d4](https://github.com/openclaw/openclaw/commit/094c0d421faff7691d259a26af9cb135f00c6ebc) Merci à @vincentkoc.
- Les envois Cron et les envois sortants vers les canaux ne signalent plus de réussite sans reçu exploitable de la plateforme, de sorte que les notifications manquantes apparaissent comme non distribuées ou supprimées plutôt que faussement distribuées. [#79811](https://github.com/openclaw/openclaw/pull/79811) Merci à @indulgeback.
- Les autocollants Telegram et les autres actions de message des plugins restent désormais dans le sujet de forum ou le fil de discussion actif lorsqu'ils sont envoyés à la conversation correspondante, y compris via la distribution par le Gateway. [#80293](https://github.com/openclaw/openclaw/pull/80293) Merci à @artdaal.
- Les commandes des plugins Telegram et Discord qui envoient leur propre réponse peuvent renvoyer `{ suppressReply: true }`, évitant ainsi un second avertissement trompeur de réponse vide ou un échec. [#80928](https://github.com/openclaw/openclaw/pull/80928) Voir aussi [#80756](https://github.com/openclaw/openclaw/issues/80756). Merci à @alexuser et @unclouded77.
- Avec `messages.ackReactionScope: "all"`, les messages ambiants des salons reçoivent désormais la réaction d'accusé de réception configurée sur Discord, Slack et Telegram. [#87433](https://github.com/openclaw/openclaw/pull/87433) Merci à @paul-phan et @scoootscooob.
- Les sessions de messages privés Telegram déjà établies évitent désormais de renvoyer les messages récents déjà enregistrés dans la transcription, ce qui réduit l'utilisation de jetons ainsi que les réponses répétitives ou confuses. [#89855](https://github.com/openclaw/openclaw/pull/89855) Merci à @sweetcornna.
- Telegram ne fait plus suivre une réponse finale correctement distribuée d'une erreur générique contradictoire lorsqu'une étape de distribution ultérieure échoue, tandis que les échecs exclusivement partiels reçoivent toujours la solution de repli existante. [#90152](https://github.com/openclaw/openclaw/pull/90152) Merci à @zhangguiping-xydt.
- Les documents Telegram reçus via une API Bot locale conteneurisée arrivent désormais avec leur contenu réel lorsque le chemin de données monté diffère entre les conteneurs. [#91984](https://github.com/openclaw/openclaw/pull/91984) Merci à @ailucasdz et @dizesales.
- Les messages Telegram peuvent désormais être envoyés de manière proactive via l'outil `message` ou `openclaw message send`, au lieu d'échouer en indiquant que le canal n'est pas pris en charge. [#92107](https://github.com/openclaw/openclaw/pull/92107) Merci à @bladin et @obviyus.
- OpenClaw reconnaît désormais les enregistrements `.m2a` comme du contenu audio, ce qui leur permet de parcourir les workflows de pièce jointe, de transcription, de mémoire et d'affichage de la discussion sans conversion. [#92167](https://github.com/openclaw/openclaw/pull/92167) Merci à @llljjjwww333.
- Telegram et d'autres canaux peuvent désormais récupérer automatiquement après certaines indisponibilités d'API et certains arrêts ayant dépassé le délai imparti, au lieu de rester silencieux jusqu'au redémarrage du Gateway. [#94016](https://github.com/openclaw/openclaw/pull/94016) Merci à @sheyanmin.
- Les réponses Telegram omettent désormais les lignes internes signalant l'échec d'exécution d'outils et ne distribuent que la réponse prévue de l'assistant. [#95774](https://github.com/openclaw/openclaw/pull/95774) Merci à @mushuiyu886.
- Les réponses enrichies et les messages de progression Telegram contenant des adresses e-mail OAuth arrivent désormais au lieu d'être rejetés par la validation de Telegram. [#95900](https://github.com/openclaw/openclaw/pull/95900) Merci à @obviyus.
- Un envoi mis en file d'attente et partiellement distribué n'est plus aveuglément réexécuté après la reconnexion, ce qui réduit les doublons de messages sur Telegram et les autres canaux. [#96247](https://github.com/openclaw/openclaw/pull/96247) Merci à @obviyus et @rosenlo.
- Les mises à jour de progression Telegram sont désormais tronquées de manière sûre à proximité des émojis et autres caractères composés de plusieurs unités, ce qui évite les glyphes corrompus et le rejet des charges utiles de l'API Bot. [#96456](https://github.com/openclaw/openclaw/pull/96456) Merci à @he-yufeng.
- Les configurations Telegram utilisant l'ancien paramètre `capabilities: []` héritent désormais de la politique normale relative aux boutons intégrés, ce qui rétablit les boutons cliquables sans remplacer les désactivations intentionnelles. [#96468](https://github.com/openclaw/openclaw/pull/96468) Merci à @vincentkoc et @zhangguiping-xydt.
- Les aperçus de brouillons diffusés en continu sur Telegram ne sont plus interrompus et n'affichent plus de texte illisible lorsqu'un émoji se trouve à la limite de taille, ce qui permet aux aperçus longs de continuer à se mettre à jour normalement. [#96504](https://github.com/openclaw/openclaw/pull/96504) Merci à @mushuiyu886 et @obviyus.
- Un conflit temporaire de session de réponse Telegram n'enferme plus un message privé ou un sujet de forum dans des tentatives répétées constantes qui bloquent les messages suivants ; les nouvelles tentatives sont espacées, l'ordre de la conversation est conservé et le traitement des discussions sans rapport se poursuit. [#96550](https://github.com/openclaw/openclaw/pull/96550) Merci à @cnbarrier404 et @vacinc.
- Les fichiers envoyés via Telegram et les autres canaux de discussion pris en charge conservent désormais des noms propres tels que `report.png`, au lieu d'exposer un identifiant de cache interne dans le nom de fichier de la pièce jointe. [#96565](https://github.com/openclaw/openclaw/pull/96565) Merci à @narahariraghava et @obviyus.
- Les utilisateurs de Slack, Discord, Telegram, WhatsApp et Microsoft Teams reçoivent désormais un message clair leur demandant de réessayer et de s'authentifier à nouveau lorsqu'un fournisseur de modèles renvoie une erreur HTTP 401 reconnue, au lieu de ne voir qu'une réaction ou aucune réponse utile. [#96599](https://github.com/openclaw/openclaw/pull/96599) Merci à @sjf-oa.
- Les réactions et suppressions de messages Telegram réessaient désormais après de brèves défaillances réseau de socket ou d'Undici, ce qui réduit les échecs d'actions inutiles sans ajouter de risque de doublon aux envois de messages ordinaires. [#96612](https://github.com/openclaw/openclaw/pull/96612) Merci à @miorbnli.
- Les utilisateurs de Telegram reçoivent toujours une réponse en texte brut lorsque la mise en forme enrichie d'un e-mail, d'une URL, d'une mention, d'un hashtag, d'une commande, d'un numéro de téléphone, d'une carte bancaire ou d'une entité similaire est rejetée, au lieu que le bot reste silencieux. [#96642](https://github.com/openclaw/openclaw/pull/96642) Merci à @moguangyu5-design.
- Les automatisations Telegram peuvent désormais déterminer à partir des métadonnées de la plateforme si un expéditeur est un bot, ce qui rend le routage et la classification moins dépendants des noms d'utilisateur ou des conventions de nommage. [#96810](https://github.com/openclaw/openclaw/pull/96810) Merci à @lin-hongkuan et @ohyeah521.
- Les messages Telegram reçus via une entrée isolée parviennent désormais jusqu'à la réponse de l'agent au lieu de rejouer le même message en boucle. [#96847](https://github.com/openclaw/openclaw/pull/96847) Merci à @obviyus.
- Les tours Telegram de longue durée peuvent désormais se terminer sans être récupérés et retraités en cours d'exécution, ce qui réduit les distributions bloquées ou dupliquées tout en fournissant aux opérateurs un état défaillant plus clair lorsque la file d'attente cesse de se résorber. [#96962](https://github.com/openclaw/openclaw/pull/96962) Merci à @joshavant.
- Les bots Telegram utilisant une interrogation isolée peuvent reprendre le traitement ordonné des messages après le blocage d'une vidange ou le redémarrage du Gateway, sans réparation manuelle de la base de données. [#97118](https://github.com/openclaw/openclaw/pull/97118) Merci à @romneyda et @vincentkoc.
- Les journaux de démarrage de Telegram affichent désormais les défaillances de socket local telles que `EADDRNOTAVAIL`, au lieu d'orienter à tort les opérateurs vers un dépannage DNS. [#97130](https://github.com/openclaw/openclaw/pull/97130) Merci à @zhangguiping-xydt.
- Les boutons intégrés Telegram fournis par les plugins exécutent désormais les actions et le nettoyage prévus, au lieu de publier les données brutes de rappel dans la discussion. [#97174](https://github.com/openclaw/openclaw/pull/97174) Merci à @goldmar.
- Les réponses en texte enrichi de Telegram affichent désormais les formules mathématiques de manière plus fiable, au lieu d'exposer des marqueurs bruts de type LaTeX. [#97197](https://github.com/openclaw/openclaw/pull/97197) Merci à @vincentkoc et @wangwllu.
- Les sondes de bots Telegram, les vérifications de Webhook, les audits d'appartenance et les interrogations rejettent désormais les corps de réponse positive surdimensionnés de l'API Bot avant qu'ils puissent épuiser la mémoire du Gateway. [#97271](https://github.com/openclaw/openclaw/pull/97271) Merci à @hugenshen.
- La recherche d'identifiant de discussion Telegram échoue désormais de manière sûre face aux réponses `getChat` surdimensionnées, au lieu de risquer une utilisation excessive de la mémoire du Gateway pendant l'intégration ou le routage. [#97274](https://github.com/openclaw/openclaw/pull/97274) Merci à @hugenshen.
- Les réponses Telegram conservent désormais les formulations littérales telles que `&lt;think&gt;` lorsqu'elles font partie de la réponse, tandis que le raisonnement réellement marqué reste masqué. [#97286](https://github.com/openclaw/openclaw/pull/97286) Merci à @drickon et @obviyus.
- Les longues réponses non diffusées en continu dans les groupes Telegram conservent désormais tous leurs segments visibles, y compris le début, tandis que les reçus de distribution couvrent tous les segments de texte générés. [#97304](https://github.com/openclaw/openclaw/pull/97304) Merci à @aliseturtle-lu et @obviyus.
- Les longues réponses Telegram diffusées en continu distribuent désormais leurs sections intermédiaires avec la configuration par défaut, au lieu d'omettre silencieusement une partie de la réponse. [#97312](https://github.com/openclaw/openclaw/pull/97312) Merci à @brycemurray et @obviyus.
- Les documents Telegram envoyés peu avant le redémarrage d'un Gateway font désormais l'objet d'une nouvelle tentative après la récupération, au lieu de disparaître silencieusement, tandis que les échecs permanents demandent toujours un nouvel envoi. [#98102](https://github.com/openclaw/openclaw/pull/98102) Voir aussi [#98076](https://github.com/openclaw/openclaw/issues/98076). Merci à @davearcher18, @luoyanglang et @obviyus.
- Les commandes Telegram `/steer` et `/tell` peuvent rediriger une tâche Codex active pendant la diffusion en continu ou l'utilisation d'outils, au lieu d'arriver en retard ou de devenir des messages de suivi. [#98126](https://github.com/openclaw/openclaw/pull/98126) Voir aussi [#81594](https://github.com/openclaw/openclaw/issues/81594). Merci à @100yenadmin et @kyzcreig.
- Dire `wait` dans une conversation de groupe Telegram n'annule plus les tâches OpenClaw actives, tandis que les commandes d'arrêt explicites prennent toujours effet immédiatement. [#98639](https://github.com/openclaw/openclaw/pull/98639) Merci à @ianchen08.
- Les messages enrichis Telegram et les transferts contenant du texte sans légende normale parviennent désormais à l'agent sous forme de contenu de conversation lisible, au lieu d'un espace réservé signalant un message non pris en charge. [#98735](https://github.com/openclaw/openclaw/pull/98735) Merci à @obviyus.
- Les messages privés de suivi Telegram incluent désormais une seule copie de la réponse précédente de l'assistant dans le contexte récent, au lieu de la dupliquer et de gaspiller des jetons. [#98769](https://github.com/openclaw/openclaw/pull/98769) Voir aussi [#98767](https://github.com/openclaw/openclaw/issues/98767). Merci à @rabsef-bicrym.
- L'interrogation Telegram récupère désormais après des limitations de débit temporaires, des défaillances de serveur et des réponses d'erreur mal formées sans désactiver le compte, tandis que les bots très sollicités évitent les écritures dans le cache susceptibles de déclencher de faux redémarrages pour blocage. [#98775](https://github.com/openclaw/openclaw/pull/98775) Voir aussi [#98772](https://github.com/openclaw/openclaw/issues/98772) et [#98773](https://github.com/openclaw/openclaw/issues/98773). Merci à @obviyus.
- Une mise à jour Telegram échouant de manière répétée ne bloque plus les messages suivants dans la même discussion ou le même sujet, et les mises à jour rejouées font l'objet de nouvelles tentatives sûres, sans commandes dupliquées ni avalanche de messages d'excuse. [#98776](https://github.com/openclaw/openclaw/pull/98776) Voir aussi [#98774](https://github.com/openclaw/openclaw/issues/98774). Merci à @obviyus.
- Les réponses finales et les envois de médias Telegram utilisent désormais une solution de repli en texte brut lisible lorsque la mise en forme, les légendes ou les citations sont rejetées, et les attentes ordinaires dues à la limitation de débit allant jusqu'à 60 secondes sont respectées au lieu d'abandonner le message. [#98786](https://github.com/openclaw/openclaw/pull/98786) Voir aussi [#98778](https://github.com/openclaw/openclaw/issues/98778). Merci à @obviyus.
- Les envois et les actions de message Telegram qui omettent un compte utilisent désormais systématiquement le bot par défaut configuré, au lieu d'une ancienne identité susceptible de mal acheminer ou de faire rejeter l'action. [#98789](https://github.com/openclaw/openclaw/pull/98789) Merci à @yetval.
- Les messages Webhook de Telegram survivent désormais aux redémarrages du Gateway et aux échecs temporaires de traitement, tandis que les comptes se rétablissent après de brèves erreurs de démarrage et que les redémarrages répétés ne provoquent plus de fuites de connexions réseau. [#98806](https://github.com/openclaw/openclaw/pull/98806) Associé à [#98777](https://github.com/openclaw/openclaw/issues/98777). Merci à @obviyus.
- Les plugins Telegram peuvent désormais convertir l’appui sur un bouton en réponse utilisateur normale à l’agent, tandis que les envois échoués ou ignorés laissent le bouton disponible pour une nouvelle tentative. [#98922](https://github.com/openclaw/openclaw/pull/98922) Merci à @goldmar.
- Les bots Telegram en mode groupe ambiant voient désormais le contexte récent du salon avant de décider s’ils doivent intervenir, ce qui réduit les réponses à des fragments isolés qui ne leur étaient pas adressés. [#99143](https://github.com/openclaw/openclaw/pull/99143) Associé à [#99142](https://github.com/openclaw/openclaw/issues/99142). Merci à @obviyus.
- Les agents de groupe Telegram reçoivent désormais une seule copie chronologique des messages récents, au lieu d’un historique dupliqué et de détails de livraison répétés qui consomment le contexte. [#99256](https://github.com/openclaw/openclaw/pull/99256) Associé à [#99218](https://github.com/openclaw/openclaw/issues/99218). Merci à @obviyus.
- Les conversations de groupe ambiantes de Telegram peuvent désormais conserver le contexte non mentionné du salon au fil des tours suivants, des redémarrages et de la Compaction, sans relire plusieurs fois la même fenêtre. [#99306](https://github.com/openclaw/openclaw/pull/99306) Associé à [#99257](https://github.com/openclaw/openclaw/issues/99257). Merci à @obviyus.
- Les sessions de groupe ambiantes de Telegram restaurent désormais l’ancien contexte de discussion pertinent après une réinitialisation, au lieu de considérer silencieusement les messages archivés comme déjà visibles. [#99385](https://github.com/openclaw/openclaw/pull/99385) Associé à [#99373](https://github.com/openclaw/openclaw/issues/99373). Merci à @obviyus.
- Les mentions directes adressées aux bots de groupe Telegram et Discord à l’aide de `message_tool_only` produisent désormais des réponses visibles dans le canal, tant pour les nouvelles sessions que pour celles qui reprennent. [#99389](https://github.com/openclaw/openclaw/pull/99389) Associé à [#99371](https://github.com/openclaw/openclaw/issues/99371). Merci à @obviyus.
- Les réponses Telegram maintiennent désormais l’indicateur de saisie visible lors d’un plus grand nombre d’échecs temporaires de l’API et reviennent au texte brut lorsqu’un contenu enrichi valide ne peut pas être livré. [#99745](https://github.com/openclaw/openclaw/pull/99745) Merci à @obviyus, @veda-openclaw.
- `sessions_send` rejette désormais les sessions enfants de sujets Telegram avant leur distribution et redirige les appelants vers le groupe parent, ce qui réduit les tâches d’agent mal acheminées. [#99845](https://github.com/openclaw/openclaw/pull/99845) Merci à @nianjiuzst, @qingminglong.
- Les tableaux, classements et sauts de ligne littéraux de Telegram restent désormais lisibles, avec des journaux explicites lorsqu’un contenu enrichi doit revenir au texte brut. [#99861](https://github.com/openclaw/openclaw/pull/99861) Associé à [#99833](https://github.com/openclaw/openclaw/issues/99833). Merci à @obviyus.
- Les agents de groupe Telegram publient désormais des réponses visibles lorsqu’ils sont directement mentionnés ou qu’un utilisateur leur répond, tout en continuant à ignorer les discussions de fond qui ne leur sont pas adressées. [#99866](https://github.com/openclaw/openclaw/pull/99866) Associé à [#99854](https://github.com/openclaw/openclaw/issues/99854). Merci à @obviyus.
- Les sondages suivent désormais le canal direct ou hybride sélectionné au lieu d’être mal acheminés par le Gateway, avec des erreurs claires pour les options de durée ou d’anonymat non prises en charge. [#99950](https://github.com/openclaw/openclaw/pull/99950) Merci à @nianjiuzst.
- Telegram indique désormais aux utilisateurs lorsqu’une pièce jointe ne peut pas être téléchargée, signale la limite de taille réelle pour les fichiers trop volumineux et réessaie toujours après des échecs transitoires tels que les limitations de débit. [#100051](https://github.com/openclaw/openclaw/pull/100051) Merci à @batyaro777.
- Les réponses et transferts Telegram préservent désormais le texte visible des détails enrichis, listes, expressions mathématiques, légendes et crédits, afin que l’agent reçoive le contexte réellement vu par les utilisateurs. [#100570](https://github.com/openclaw/openclaw/pull/100570) Merci à @veda-openclaw, @wangwllu.
- Les messages de suivi dans les conversations privées Telegram incluent désormais une seule copie fidèle de chaque réponse antérieure de l’assistant, au lieu de dupliquer une version contenant des instructions masquées. [#100573](https://github.com/openclaw/openclaw/pull/100573) Merci à @momothemage, @mooresoftware.
- La synthèse vocale MP3 de Piper, Kokoro et d’autres points de terminaison TTS compatibles avec OpenAI arrive désormais dans Telegram sous forme de message vocal natif plutôt que de pièce jointe audio présentée comme un nom de fichier. [#100715](https://github.com/openclaw/openclaw/pull/100715) Merci à @hemantsudarshan.
- Les solutions de repli du Heartbeat de Telegram masquent désormais le marqueur de contrôle `notify=false` et assurent une livraison silencieuse comme demandé, y compris en supprimant les réponses contenant uniquement ce marqueur. [#100735](https://github.com/openclaw/openclaw/pull/100735) Merci à @hackerismydream, @vincentkoc.
- Les indicateurs de saisie de Telegram réessaient désormais après des échecs réseau transitoires, rétablissant le retour d’état sans ajouter de risque de messages en double aux envois normaux. [#100762](https://github.com/openclaw/openclaw/pull/100762) Merci à @lzw112, @vincentkoc.
- Le démarrage du Webhook Telegram libère désormais son écouteur, son bot et ses ressources réseau après une erreur d’inscription fatale, telle que des identifiants non valides ou révoqués. [#100863](https://github.com/openclaw/openclaw/pull/100863) Merci à @machine3at.
- Les messages Telegram qui ne peuvent pas être réorientés vers un tour Codex actif sont désormais conservés pour être traités ensuite, au lieu de disparaître sans réponse. [#103916](https://github.com/openclaw/openclaw/pull/103916) Merci à @jalehman.
- Lorsque des requêtes Telegram se chevauchent, le message autorisé le plus récent l’emporte désormais, sans qu’une réponse obsolète soit envoyée ni qu’une tâche mise en file d’attente et remplacée soit lancée. [#103965](https://github.com/openclaw/openclaw/pull/103965)
- Les mises à jour Telegram en file d’attente peuvent désormais être relues jusqu’à ce que la récupération après redémarrage soit enregistrée de manière sûre, ce qui réduit la perte de messages en cas de plantage au démarrage du traitement. [#104032](https://github.com/openclaw/openclaw/pull/104032) Merci à @obviyus, @vincentkoc.
- Le récapitulatif final condensé de la progression dans Telegram inclut désormais l’activité de réflexion de Claude CLI affichée pendant l’exécution, au lieu de donner l’impression que ce travail a disparu. [4212de9](https://github.com/openclaw/openclaw/commit/4212de9e08d6e69357d937e399db3df63c1b66d7) Merci à @vincentkoc.
- Les réactions de fin et d’erreur de Discord restent désormais visibles pendant les durées configurées dans `doneHoldMs` et `errorHoldMs`, au lieu d’utiliser des délais par défaut fixes. [#94736](https://github.com/openclaw/openclaw/pull/94736) Merci à @liuwqgit.
- Les actions de lecture de Slack peuvent de nouveau accéder aux noms de canaux intentionnellement autorisés lorsque Slack fournit un ID et que `dangerouslyAllowNameMatching` est activé. [#95313](https://github.com/openclaw/openclaw/pull/95313) Merci à @jontsai.
- Les réponses vocales de Discord conservent désormais le texte qui les accompagne et les médias supplémentaires joints au message d’origine, même lorsque le mode de réponse à usage unique est activé. [#95978](https://github.com/openclaw/openclaw/pull/95978) Merci à @nxmxbbd.
- Les pièces jointes Discord mises en file d’attente pendant qu’OpenClaw est occupé restent désormais disponibles lorsque le message est enfin traité, au lieu de disparaître après l’expiration des liens de téléchargement temporaires. [#96183](https://github.com/openclaw/openclaw/pull/96183) Merci à @judsonnudson, @zacharyyw.
- Le texte des messages et pièces jointes de Slack n’est désormais plus copié dans les journaux détaillés ou de débogage pendant le traitement entrant. [#96312](https://github.com/openclaw/openclaw/pull/96312) Merci à @steipete-oai.
- Les messages Slack et les libellés Block Kit sont désormais tronqués sans scinder les émojis en caractères de remplacement corrompus ni produire de texte de charge utile non valide. [#96382](https://github.com/openclaw/openclaw/pull/96382) Merci à @ly-wang19.
- Les noms de fils de discussion Discord générés préservent désormais plusieurs segments d’emphase Markdown sans supprimer ni isoler les marqueurs de mise en forme. [#96394](https://github.com/openclaw/openclaw/pull/96394) Merci à @ly-wang19.
- Les longs aperçus de commandes Slack et d’approbations de plugins conservent désormais les émojis intacts à la limite de longueur, évitant ainsi les textes ou charges utiles d’approbation mal formés. [#96576](https://github.com/openclaw/openclaw/pull/96576) Merci à @llagy007, @weeli-009.
- OpenClaw peut utiliser un remplacement approuvé pour un point de terminaison d’API Slack compatible, tandis que les espaces de travail normaux continuent d’utiliser l’API publique de Slack et que les fichiers .env de projet non fiables ne peuvent pas rediriger les requêtes contenant un jeton au porteur. [#97154](https://github.com/openclaw/openclaw/pull/97154) Merci à @romneyda.
- Les boutons de modèles récents de Discord raccourcissent désormais les noms longs sans altérer les émojis ni produire de charges utiles de sélecteur non valides. [#97600](https://github.com/openclaw/openclaw/pull/97600) Merci à @llagy007, @weeli-009.
- Les agents Slack peuvent désormais lire les messages de fil de discussion dont le contenu visible se trouve uniquement dans les pièces jointes ou les blocs, y compris les alertes dont le texte de premier niveau est vide. [#97727](https://github.com/openclaw/openclaw/pull/97727) Merci à @chthtlo.
- Les agents Slack peuvent désormais identifier, au moyen de `is_bot: true`, les messages admis rédigés par des bots, ce qui facilite la prévention des réponses indésirables entre bots. [#97822](https://github.com/openclaw/openclaw/pull/97822) Merci à @masatohoshino, @vincentkoc.
- Les agents Discord reçoivent désormais `is_bot: true` pour les messages admis provenant de bots, tandis que le comportement des expéditeurs humains et PluralKit reste inchangé. [#97824](https://github.com/openclaw/openclaw/pull/97824) Merci à @masatohoshino, @vincentkoc.
- Les menus de choix des commandes slash de Slack raccourcissent désormais les libellés longs sans scinder les émojis à la limite de 75 caractères. [#97923](https://github.com/openclaw/openclaw/pull/97923) Merci à @lexes7.
- Les diagnostics du relais Slack en Socket Mode distinguent désormais les trames WebSocket mal formées des échecs de transport, ce qui facilite l’identification des problèmes de canal. [#98587](https://github.com/openclaw/openclaw/pull/98587) Merci à @lsr911, @vincentkoc.
- Les descriptions des commandes de Skills restent désormais plus complètes lorsqu’elles sont prises en charge et demeurent valides dans Discord et Mattermost lorsqu’un émoji apparaît près d’une limite de plateforme. [#99593](https://github.com/openclaw/openclaw/pull/99593) Merci à @pick-cat.
- Le démarrage et les vérifications de compte Slack avertissent désormais lorsqu’un identifiant OAuth utilisateur est configuré comme jeton de bot, avant qu’une confusion d’identité n’affecte les mentions ou les réponses. [#99931](https://github.com/openclaw/openclaw/pull/99931) Merci à @ooiuuii.
- Les réponses Slack conservent désormais le nom et l’avatar personnalisés de chaque agent lors de la livraison en continu ou de repli, au lieu de revenir à l’identité de l’application. [#100084](https://github.com/openclaw/openclaw/pull/100084) Merci à @moerai.
- Les conversations Slack avec Codex conservent désormais une seule réponse finale de l’assistant dans l’historique, au lieu de la dupliquer à la fois via la transcription du serveur d’application et la livraison de repli. [#100160](https://github.com/openclaw/openclaw/pull/100160) Merci à @steipete-oai.
- Les réponses implicites Discord longues ou riches en médias citent et notifient désormais une seule fois l’utilisateur référencé en mode `first` ou `batched`, tandis que les réponses explicites et `all` conservent toutes les références prévues. [#100784](https://github.com/openclaw/openclaw/pull/100784) Merci à @qingminglong, @revision-co-ltd.
- Les réponses Discord, rapports Cron et autres messages sortants risquent moins de disparaître lors d’une brève reconnexion du Gateway, sans renvoyer les segments ou médias déjà acceptés par Discord. [#100896](https://github.com/openclaw/openclaw/pull/100896) Merci à @tiffanychum.
- La lecture vocale de Discord libère désormais ffmpeg après des échecs du canal de sortie, ce qui réduit à la fois les plantages du Gateway et les processus de transcodage résiduels. [#101124](https://github.com/openclaw/openclaw/pull/101124)
- Le compte Discord principal configuré démarre désormais en premier dans les configurations multicomptes, afin que le bot principal ne soit pas retardé par des entrées secondaires ou non valides après un redémarrage. [#101292](https://github.com/openclaw/openclaw/pull/101292) Merci à @turbotheturtle.
- Les titres automatiques des fils Discord gèrent désormais les messages longs et les détails de canaux contenant des emoji sans générer de texte d’invite mal formé. [#101551](https://github.com/openclaw/openclaw/pull/101551) Merci à @alix-007.
- Les intégrations Slack de longue durée maintiennent désormais la mise en cache des métadonnées de conversation dans une limite fixe, ce qui empêche l’utilisation de la mémoire d’augmenter indéfiniment à mesure que davantage de canaux et d’espaces de travail sont rencontrés. [#101562](https://github.com/openclaw/openclaw/pull/101562) Merci à @vincentkoc et @zhangguiping-xydt.
- Les échecs de lecture vocale sur Discord produisent désormais une erreur lisible respectant la limite de 8,192 octets, y compris lorsque la sortie de ffmpeg contient du texte non anglais ou des emoji. [#104230](https://github.com/openclaw/openclaw/pull/104230) Merci à @qingminglong.
- Les comptes Weixin configurés avec des identifiants opaques contenant des caractères tels qu’une arobase ou `.` démarrent désormais normalement et conservent leur routage propre au compte. [#93686](https://github.com/openclaw/openclaw/pull/93686) Voir aussi [#93556](https://github.com/openclaw/openclaw/issues/93556). Merci à @htkillermax-gif et @zhangguiping-xydt.
- Les configurations Feishu capables d’envoyer des notifications du bot, mais qui perdaient silencieusement les réponses des utilisateurs, transmettent désormais les messages entrants à OpenClaw au lieu d’échouer lors du démarrage de la surveillance. [#94013](https://github.com/openclaw/openclaw/pull/94013) Merci à @xydt-tanshanshan.
- Les réponses aux messages de groupe WhatsApp rédigés par OpenClaw restent désormais visibles dans WhatsApp Desktop et les autres clients multiappareils, avec le contexte de leur citation intact. [#94879](https://github.com/openclaw/openclaw/pull/94879) Merci à @bartok9.
- Les conversations iMessage directes utilisant la passerelle d’API privée `imsg` affichent désormais l’indicateur de saisie dès qu’un tour lent est accepté, sans attendre un accusé de lecture. [#95621](https://github.com/openclaw/openclaw/pull/95621) Merci à @omarshahine.
- Les réponses iMessage ne perdent plus le texte ordinaire d’une phrase qui se termine par hasard par `user:`, `system:` ou `assistant:`. [#96392](https://github.com/openclaw/openclaw/pull/96392) Merci à @ly-wang19.
- Les envois directs et les réponses automatiques WhatsApp affichent désormais correctement le Markdown combinant gras et italique sans astérisques parasites, y compris lorsque le texte mis en forme contient des emoji. [#96570](https://github.com/openclaw/openclaw/pull/96570) Merci à @llagy007 et @weeli-009.
- Les aperçus des longues réponses automatiques et des messages entrants WhatsApp préservent désormais les emoji et indiquent précisément le nombre de caractères tronqués, ce qui rend les diagnostics concernés lisibles sans modifier la livraison. [#96580](https://github.com/openclaw/openclaw/pull/96580) Merci à @llagy007 et @weeli-009.
- Le démarrage rapide de Signal sur macOS installe désormais `signal-cli` via Homebrew au lieu de télécharger un paquet Linux incompatible, et fournit des instructions propres à la plateforme lorsque Homebrew n’est pas disponible. [#96909](https://github.com/openclaw/openclaw/pull/96909) Merci à @romneyda.
- Les rafales de longs messages iMessage peuvent désormais être regroupées sans couper un emoji en deux ni envoyer de texte corrompu à l’agent. [#97598](https://github.com/openclaw/openclaw/pull/97598) Merci à @weeli-009.
- Les valeurs `OPENCLAW_WHATSAPP_WEB_SOCKET_URL` non valides échouent désormais immédiatement avec une erreur de configuration claire au lieu de provoquer une panne ultérieure lors du démarrage du socket. [#97697](https://github.com/openclaw/openclaw/pull/97697) Merci à @romneyda.
- Les vérifications au démarrage de Nextcloud Talk affichent désormais un échec concis de l’API d’administration du bot sans mettre en mémoire tampon un corps d’erreur de taille arbitraire. [#97811](https://github.com/openclaw/openclaw/pull/97811) Merci à @pick-cat.
- Les agents Google Chat peuvent désormais distinguer les messages de bot autorisés via `is_bot: true` et traiter les expéditeurs automatisés différemment des personnes. [#97825](https://github.com/openclaw/openclaw/pull/97825) Merci à @masatohoshino et @vincentkoc.
- WhatsApp peut désormais restaurer une session d’appareil associé enregistrée à partir d’une sauvegarde d’identifiants valide lorsque le fichier principal est interrompu ou corrompu, évitant ainsi un réappairage inutile par code QR. [#99070](https://github.com/openclaw/openclaw/pull/99070) Merci à @leonidaslux.
- Les réceptions du conteneur Signal rejettent désormais les trames JSON surdimensionnées avant de les mettre en mémoire tampon, ce qui limite la pression sur la mémoire sans affecter les messages normaux ni les pièces jointes récupérées séparément. [#99992](https://github.com/openclaw/openclaw/pull/99992) Merci à @sunlit-deng.
- Les avertissements au démarrage d’iMessage distinguent désormais les configurations de groupe fonctionnelles avec expéditeurs autorisés des configurations réellement bloquées, et orientent les opérateurs concernés vers la correction appropriée. [#100046](https://github.com/openclaw/openclaw/pull/100046)
- `openclaw channels login --channel whatsapp` remplace désormais sur place les codes QR expirés afin que les terminaux interactifs affichent un seul code actuel et lisible. [#100159](https://github.com/openclaw/openclaw/pull/100159)
- Un message WhatsApp interrompu par un conflit temporaire de session de réponse peut désormais être réessayé au lieu d’être marqué comme livré puis silencieusement ignoré lors d’une nouvelle livraison. [#101106](https://github.com/openclaw/openclaw/pull/101106) Merci à @andersonjeccel.
- Les messages en file d’attente reprennent désormais à un rythme plus modéré après une panne, un redémarrage ou une reconnexion, réduisant les rafales évitables atteignant les limites de débit des canaux et des fournisseurs tout en maintenant une reprise bornée. [#101118](https://github.com/openclaw/openclaw/pull/101118) Merci à @zengwen-dt.
- Les messages directs WhatsApp bloqués par un délai de verrouillage des prises de contact échouent désormais immédiatement avec une explication explicite au lieu de sembler acceptés avant une erreur de livraison ultérieure. [#101264](https://github.com/openclaw/openclaw/pull/101264) Merci à @mcaxtr.
- Les échecs d’envoi et d’action de la CLI iMessage causés par des tubes de sortie rompus renvoient désormais une erreur contrôlée au lieu de risquer de faire planter un processus de travail du Gateway. [#101401](https://github.com/openclaw/openclaw/pull/101401) Merci à @cxbasdev.
- OpenClaw peut utiliser une substitution approuvée pour diriger le socket Baileys normal vers un point de terminaison WebSocket local compatible, tandis que les connexions WhatsApp normales continuent d’utiliser le chemin par défaut sauf substitution explicite. [#97155](https://github.com/openclaw/openclaw/pull/97155) Merci à @romneyda.
- Les conversations individuelles Feishu peuvent de nouveau recevoir des réponses textuelles, multimédias, sous forme de carte et de secours au lieu de perdre la réponse après le traitement du message entrant. [#94760](https://github.com/openclaw/openclaw/pull/94760) Merci à @obviyus et @xydigit-zt.
- Un message vocal accepté qui arrive alors qu’OpenClaw est déjà en train de répondre peut tout de même recevoir une réponse vocale lorsque `tts.auto: "inbound"` est configuré. [#95596](https://github.com/openclaw/openclaw/pull/95596) Merci à @mcaxtr.
- Les appels à l’API Mattermost interrompent désormais les réponses réussies surdimensionnées ou sans fin avant qu’elles ne puissent consommer une quantité illimitée de mémoire, tandis que les requêtes et téléversements normaux restent inchangés. [#96033](https://github.com/openclaw/openclaw/pull/96033) Merci à @alix-007.
- Les reconnexions IRC font désormais alterner les pseudonymes de secours après un conflit 433 au lieu de réessayer sans cesse le même nom déjà utilisé. [#96108](https://github.com/openclaw/openclaw/pull/96108) Merci à @wendy-chsy.
- La carte de bienvenue des conversations personnelles Microsoft Teams affiche désormais son message d’accueil avec l’emphase moyenne en gras prévue. [#96290](https://github.com/openclaw/openclaw/pull/96290) Merci à @ly-wang19 et @vincentkoc.
- L’historique des fils Microsoft Teams préserve désormais le texte littéral des entités, comme `&lt;APIKEY&gt;`, au lieu de le transformer en un balisage différent avant que l’agent ne le voie. [#96342](https://github.com/openclaw/openclaw/pull/96342) Merci à @ly-wang19.
- Les longues cartes d’approbation Google Chat préservent désormais les emoji à la limite de texte, ce qui empêche la corruption du texte d’approbation ou la création de charges utiles de carte mal formées. [#96573](https://github.com/openclaw/openclaw/pull/96573) Merci à @llagy007 et @weeli-009.
- Les longs messages Synology Chat et leurs aperçus de diagnostic sont désormais tronqués sans couper en deux un emoji ou un autre caractère supplémentaire, ce qui préserve la validité du texte en aval. [#96574](https://github.com/openclaw/openclaw/pull/96574) Merci à @weeli-009.
- Les rappels QQBot créés à partir d’un texte long reçoivent désormais des noms de tâche lisibles même lorsqu’un emoji se trouve au point de coupure, au lieu d’enregistrer un caractère corrompu. [#96575](https://github.com/openclaw/openclaw/pull/96575) Merci à @llagy007 et @weeli-009.
- Les commentaires Microsoft Teams sur les longues réponses transmettent désormais des emoji intacts au traitement de réflexion, ce qui empêche une coupure de corrompre les invites, les journaux ou l’encodage. [#96578](https://github.com/openclaw/openclaw/pull/96578) Merci à @llagy007 et @weeli-009.
- Les en-têtes de carte Feishu affichent désormais proprement l’emoji et le nom de l’agent au lieu du texte descriptif provenant de `identity.emoji`, tandis que les drapeaux, les variantes de couleur de peau, les emoji de famille et les autres séquences valides restent intacts. [#96587](https://github.com/openclaw/openclaw/pull/96587) Merci à @harjothkhara et @leedongyu1128.
- Les notifications d’approbation Tlon préservent désormais les emoji à la limite de l’aperçu, ce qui empêche la création d’aperçus de message mal formés. [#97599](https://github.com/openclaw/openclaw/pull/97599) Merci à @llagy007 et @weeli-009.
- Le texte IRC sortant préserve désormais les emoji échappés et conserve les échappements de substituts non valides sous forme littérale au lieu de les remplacer silencieusement par des caractères corrompus. [#97683](https://github.com/openclaw/openclaw/pull/97683) Merci à @llagy007 et @weeli-009.
- Les échecs de l’API Mattermost avec un corps JSON vide produisent désormais une erreur claire fondée sur le statut au lieu d’un plantage `Unexpected end of JSON input`. [#97851](https://github.com/openclaw/openclaw/pull/97851) Merci à @pick-cat.
- Les réponses Matrix réussies mais mal formées produisent désormais une erreur contrôlée du serveur domestique au lieu d’un échec opaque et non géré de l’analyse JSON. [#97973](https://github.com/openclaw/openclaw/pull/97973) Merci à @lsr911.
- Les messages vidéo Feishu affichent désormais la durée des clips MP4 locaux et chargés à distance lorsque la détection de la durée est disponible. [#98235](https://github.com/openclaw/openclaw/pull/98235) Merci à @areslp.
- Les installations Mattermost réparées après une mise à niveau se chargent et se reconnectent désormais lors du redémarrage du Gateway sans nécessiter de réglage manuel d’activation du plugin, y compris dans les configurations dotées d’une liste d’autorisation restrictive. [#98608](https://github.com/openclaw/openclaw/pull/98608) Voir aussi [#98564](https://github.com/openclaw/openclaw/issues/98564). Merci à @jacobtomlinson et @shakkernerd.
- La publication répétée de profils Nostr efface désormais les minuteurs d’expiration des relais après une réussite, réduisant l’accumulation de ressources obsolètes dans les agents de longue durée. [#98720](https://github.com/openclaw/openclaw/pull/98720) Voir aussi [#98463](https://github.com/openclaw/openclaw/issues/98463). Merci à @wangmiao0668000666 et @zhanglei99586.
- Les équipes Mattermost comptant plus de 200 membres peuvent désormais découvrir et contacter des pairs valides au-delà de la première page de l’annuaire de l’équipe. [#98877](https://github.com/openclaw/openclaw/pull/98877) Voir aussi [#98871](https://github.com/openclaw/openclaw/issues/98871). Merci à @qingminglong.
- Les longues réponses IRC arrivent désormais complètes lorsqu’elles contiennent du chinois, du cyrillique, des emoji ou d’autres textes non ASCII, tout en respectant `messageChunkMaxChars`. [#99138](https://github.com/openclaw/openclaw/pull/99138) Merci à @yetval.
- La sortie de démarrage du Gateway Zalo affiche désormais le nom du compte de bot connecté lorsque la Bot Platform le fournit. [#99274](https://github.com/openclaw/openclaw/pull/99274) Merci à @romneyda.
- Les échecs temporaires d’actualisation des cartes de streaming Feishu sont désormais contenus et consignés à des fins de diagnostic, au lieu de se manifester sous forme d’erreurs non gérées. [#99301](https://github.com/openclaw/openclaw/pull/99301) Merci à @lwy-2.
- L’état de QQBot signale désormais avec précision les déconnexions et les motifs de fermeture fatale, puis ne revient à l’état connecté qu’après un événement READY ou RESUMED. [#100127](https://github.com/openclaw/openclaw/pull/100127) Merci à @masatohoshino et @vincentkoc.
- Les commandes textuelles telles que `/model fable` affichent désormais leur confirmation de manière fiable, même dans les flux qui suppriment les réponses ordinaires à la source. [#100151](https://github.com/openclaw/openclaw/pull/100151)
- Les bots IRC se reconnectent désormais et rejoignent à nouveau les canaux configurés après une déconnexion temporaire du serveur ou du réseau, au lieu de rester silencieux jusqu’au redémarrage d’OpenClaw. [#100799](https://github.com/openclaw/openclaw/pull/100799) Merci à @zhangguiping-xydt.
- Les messages directs Feishu reçus alors que l’identité du bot est temporairement indisponible ne transforment plus les mentions ordinaires d’utilisateurs en cibles de transfert accidentelles. [#100891](https://github.com/openclaw/openclaw/pull/100891) Merci à @zhangguiping-xydt.
- Les téléversements de médias Tlon s’arrêtent désormais en toute sécurité lorsque Memex renvoie une réponse surdimensionnée ou malformée, au lieu de laisser la tentative de téléversement consommer une quantité excessive de mémoire. [#101115](https://github.com/openclaw/openclaw/pull/101115) Merci à @cxbasdev.
- Les invites vocales en temps réel restent désormais lisibles lorsque de longs noms d’agents ou un contexte injecté contenant des émojis doivent être raccourcis. [#101304](https://github.com/openclaw/openclaw/pull/101304) Merci à @alix-007.
- Les journaux d’erreurs Feishu raccourcissent désormais le texte contenant des émojis à une limite de caractères valide, ce qui facilite la lecture des échecs liés aux actions de carte et au nettoyage WebSocket. [#101364](https://github.com/openclaw/openclaw/pull/101364) Merci à @zengwen-dt.
- Les plugins de canal peuvent reprendre la récupération automatique après une longue période de fonctionnement stable, de sorte qu’une déconnexion ultérieure occasionnelle ne soit pas bloquée par un ancien quota de redémarrages, tandis que les véritables boucles de plantage rapide restent limitées. [#101413](https://github.com/openclaw/openclaw/pull/101413) Merci à @clintoncodewell.
- Les cartes d’approbation, aperçus de messages, journaux, chemins de médias et avertissements de nouvelle tentative de QQBot raccourcissent désormais le texte contenant des émojis sans produire de caractères de remplacement corrompus. [#101421](https://github.com/openclaw/openclaw/pull/101421) Merci à @wangmiao0668000666.
- Les aperçus, erreurs, commandes, messages de transcription vocale, diagnostics de médias et journaux de QQBot restent désormais valides lorsque du texte contenant des émojis atteint une limite de longueur. [#101516](https://github.com/openclaw/openclaw/pull/101516) Merci à @vincentkoc et @wangmiao0668000666.
- Les longs libellés d’agents contenant des émojis produisent désormais des noms et des introductions de fils de discussion natifs propres dans les canaux, au lieu de caractères corrompus. [#101527](https://github.com/openclaw/openclaw/pull/101527) Merci à @lsr911.
- Les opérateurs Zalo peuvent envoyer de manière proactive, par la CLI ou par script, des messages à des valeurs `chat_id` non numériques valides sans rejet `Unknown target`. [#101548](https://github.com/openclaw/openclaw/pull/101548) Merci à @goutamadwant.
- Feishu Drive peut désormais répertorier les fichiers au-delà de la première page d’un grand dossier partagé en acceptant la valeur `next_page_token` renvoyée, tandis que les tailles de page non valides sont clairement rejetées avant la requête. [#101572](https://github.com/openclaw/openclaw/pull/101572) Merci à @zhangguiping-xydt.
- Les passerelles audio locales de Google Meet s’arrêtent désormais proprement et consignent un avertissement lorsqu’un canal de commande de capture ou de lecture échoue, au lieu de planter à cause d’une erreur de flux non gérée. [#101596](https://github.com/openclaw/openclaw/pull/101596) Merci à @alix-007.
- La configuration des dépendances de Matrix arrête désormais son processus enfant de manière prévisible et signale l’échec lorsque le canal de sortie d’une commande locale se rompt. [#101597](https://github.com/openclaw/openclaw/pull/101597) Merci à @alix-007.
- Les destinations Telegram réellement nommées `current`, `self`, `this` ou `me` sont désormais accessibles par l’intermédiaire des entrées configurées, tandis que les mots de session nus accidentels échouent de manière sécurisée. [#94107](https://github.com/openclaw/openclaw/pull/94107) Merci à @obviyus, @silver-state et @zhangguiping-xydt.
- Les messages enrichis Telegram utilisant `richMessages: true` et le mode de tableau Markdown `block` affichent désormais des tableaux bordés et à lignes alternées, avec l’alignement des colonnes de la source. [#95822](https://github.com/openclaw/openclaw/pull/95822) Merci à @obviyus et @zhangguiping-xydt.
- Les messages de repli Telegram remplacent désormais en toute sécurité les entités numériques de substitution Unicode non valides au lieu d’émettre du texte malformé, tandis que les entités numériques d’émojis valides continuent de s’afficher. [#96581](https://github.com/openclaw/openclaw/pull/96581) Merci à @llagy007 et @weeli-009.
- Les utilisateurs de Telegram disposant de `/reasoning on` reçoivent désormais les messages de raisonnement enregistrés du modèle en plus de la réponse finale. [#97875](https://github.com/openclaw/openclaw/pull/97875) Merci à @fuller-stack-dev et @marvinthebored.
- Les groupes et sujets de forum Telegram affichent désormais un indicateur de saisie dès qu’un message adressé est accepté, sans signaler d’activité pour les conversations ignorées. [#99965](https://github.com/openclaw/openclaw/pull/99965) Merci à @moeedahmed.
- L’intégration initiale de Telegram propose désormais à la fois le flux de discussion classique de BotFather et l’interface web officielle pour créer un bot et copier son jeton dans OpenClaw. [#100540](https://github.com/openclaw/openclaw/pull/100540)
- Les envois Telegram vers un `username` utilisent désormais le proxy configuré du compte ou le point de terminaison personnalisé de l’API Bot, tant pour la résolution de la cible que pour la livraison du message. [#100868](https://github.com/openclaw/openclaw/pull/100868) Merci à @machine3at.
- Les libellés en gras chinois, japonais et coréens immédiatement suivis de texte s’affichent désormais en gras au lieu d’exposer les marqueurs littéraux `**` dans Telegram et les autres canaux utilisant le Markdown partagé. [#101230](https://github.com/openclaw/openclaw/pull/101230) Merci à @nicknmorty.
- Les envois Telegram réessaient désormais après un délai d’expiration sûr de connexion TCP ou TLS, ce qui réduit la perte de réponses finales lors d’établissements de connexion instables sans réessayer les échecs susceptibles d’avoir déjà atteint Telegram. [#101258](https://github.com/openclaw/openclaw/pull/101258) Merci à @lzw112.
- La commande nue `/think` affiche désormais rapidement les niveaux de réflexion disponibles dans Telegram, Slack et Discord, sans attendre la lente découverte des modèles. [#101926](https://github.com/openclaw/openclaw/pull/101926) Merci à @vincentkoc.
- Une réponse Telegram déjà commencée n’est plus annulée de manière inattendue lorsqu’une autre commande autorisée arrive. [52a3314](https://github.com/openclaw/openclaw/commit/52a331466882ca0b6befa56c883355c758305813) Merci à @vincentkoc.
- Après la réussite de `/login codex` dans Telegram, une nouvelle tentative de la requête utilise désormais le profil OpenAI nouvellement authentifié au lieu du compte précédent. [fca0c81](https://github.com/openclaw/openclaw/commit/fca0c81791a5040536d4907913ed975bfcde1642) Merci à @100yenadmin.

</Accordion>

## Autres améliorations apportées aux modèles et aux fournisseurs

### Connexion, choix du modèle, médias et fiabilité

Pour Anthropic et Claude, Gemini, OpenAI et Codex, les modèles locaux et les autres routes prises en charge, les [fournisseurs](/fr/concepts/model-providers) gèrent désormais les identifiants, les catalogues, les limites, les solutions de repli, la diffusion en continu et les appels d’outils de manière plus cohérente. Les demandes devraient moins souvent échouer parce que la route sélectionnée a utilisé des métadonnées de modèle incorrectes, rejoué un raisonnement incompatible, perdu l’état d’authentification ou mal interprété une réponse du fournisseur.

Le [catalogue de modèles](/fr/concepts/models) indique également plus précisément la disponibilité et les capacités, tandis que la [supervision de Codex](/fr/plugins/codex-supervision) maintient les choix de modèles connectés et le comportement des sessions en phase avec le backend effectivement sélectionné.

<Accordion title="Sources et contributeurs">

- Les utilisateurs d’Amazon Bedrock peuvent désormais analyser des images et des PDF avec le même profil AWS, rôle, SSO, environnement ou les mêmes identifiants d’instance que ceux déjà utilisés pour le chat. [#72092](https://github.com/openclaw/openclaw/pull/72092) Merci à @truffle-dev.
- Les réponses de la CLI Claude correctement diffusées en continu sont désormais conservées lorsque l’enveloppe finale de réussite ne contient aucun texte, ce qui empêche la réponse terminée de disparaître ou de déclencher un mécanisme de repli pour réponse vide. [#90450](https://github.com/openclaw/openclaw/pull/90450) Merci à @totobusnello.
- Les utilisateurs d’OpenCode Zen peuvent parcourir et exécuter les modèles Claude, GPT, Gemini, GLM, DeepSeek, MiniMax, Qwen et autres qu’il prend en charge sans définir manuellement chaque route. [#92495](https://github.com/openclaw/openclaw/pull/92495) Merci à @mushuiyu886 et @sallyom.
- L’échange et l’actualisation des jetons OAuth Anthropic rejettent désormais rapidement les réponses de point de terminaison surdimensionnées au lieu de lire en mémoire un corps sans limite. [#96644](https://github.com/openclaw/openclaw/pull/96644) Merci à @solodmd.
- Les exécutions de Claude et Fable avec raisonnement adaptatif sur Amazon Bedrock respectent désormais les limites élevées configurées de jetons de sortie afin de permettre des réponses, raisonnements et appels d’outils plus longs. [#97343](https://github.com/openclaw/openclaw/pull/97343) Merci à @lilan0125 et @prasithg.
- Les vérifications d’utilisation d’Anthropic limitent désormais les réponses d’erreur anormalement volumineuses afin qu’une page de CDN, de pare-feu ou de proxy ne puisse pas épuiser la mémoire d’OpenClaw. [#97614](https://github.com/openclaw/openclaw/pull/97614) Merci à @cxbasdev.
- Les conversations Anthropic rejetées en raison d’un résultat d’outil manquant indiquent désormais aux utilisateurs de réessayer ou de démarrer une nouvelle session avec `/new` au lieu d’afficher uniquement une erreur générique du fournisseur. [#98163](https://github.com/openclaw/openclaw/pull/98163) Merci à @masatohoshino.
- Les sessions de raisonnement natif de Claude peuvent désormais récupérer automatiquement après le rejet par Anthropic d’un bloc de raisonnement relu, sans Compaction manuelle ni perte de transcription. [#98411](https://github.com/openclaw/openclaw/pull/98411) Voir aussi [#98308](https://github.com/openclaw/openclaw/issues/98308). Merci à @clearhorizoninvestments et @sunlit-deng.
- Les utilisateurs de Claude Code 2.1 peuvent de nouveau approuver et exécuter Bash, WebFetch, Grep, Glob, AskUserQuestion et d’autres outils natifs dans les sessions claude-cli. [#98665](https://github.com/openclaw/openclaw/pull/98665) Voir aussi [#95171](https://github.com/openclaw/openclaw/issues/95171). Merci à @carterdawson et @yetval.
- Claude Fable 5 fonctionne désormais via Anthropic Vertex pour les tâches de complétion simple, telles que la génération d’intitulés de conversation, au lieu d’échouer avant que la requête n’atteigne Vertex. [#98932](https://github.com/openclaw/openclaw/pull/98932)
- Les exécutions d’agents Claude CLI basculent désormais vers une solution de repli au lieu de présenter des erreurs de fournisseur ou des données de flux brutes comme réponses, préservent les sorties multilingues et les émojis, et interrompent les sorties ponctuelles incontrôlées avant qu’elles n’épuisent la mémoire du Gateway. [#98942](https://github.com/openclaw/openclaw/pull/98942) Voir aussi [#98896](https://github.com/openclaw/openclaw/issues/98896). Merci à @obviyus.
- Les utilisateurs de Claude CLI peuvent combiner plusieurs fichiers `--mcp-config` sans perdre de serveurs ni corrompre l’invite, et les exécutions simultanées de Gemini CLI risquent moins d’interférer avec les fichiers d’identifiants partagés. [#98983](https://github.com/openclaw/openclaw/pull/98983) Voir aussi [#98944](https://github.com/openclaw/openclaw/issues/98944), [#98945](https://github.com/openclaw/openclaw/issues/98945). Merci à @obviyus.
- Les agents reposant sur Claude CLI affichent désormais le raisonnement natif dans `/reasoning stream` ou `/reasoning on`, tandis que `/reasoning off` le masque systématiquement, y compris pour les suivis en attente. [#99401](https://github.com/openclaw/openclaw/pull/99401) Merci à @marvinthebored.
- La découverte des modèles Bedrock Mantle expire désormais et limite les réponses de catalogue surdimensionnées au lieu de rester bloquée ou de consommer trop de mémoire, tandis que les modèles mis en cache restent disponibles. [#99961](https://github.com/openclaw/openclaw/pull/99961) Merci à @zhangguiping-xydt.
- Anthropic Opus 4.8 peut désormais s’exécuter avec `tools.profile=coding` sans que chaque tour échoue avec une erreur de schéma HTTP 400 avant la réponse de l’assistant. [#100492](https://github.com/openclaw/openclaw/pull/100492) Merci à @lin-hongkuan et @vincentkoc.
- Les requêtes compatibles avec Anthropic échouent désormais rapidement avec une erreur de transport limitée lorsqu’un flux en amont envoie un événement partiel surdimensionné, au lieu de rester bloquées et de consommer de la mémoire. [#100686](https://github.com/openclaw/openclaw/pull/100686) Merci à @zhangguiping-xydt.
- Les conversations longues d’agents intégrés, utilisant intensivement les outils ou les médias, réutilisent désormais davantage le cache d’invite entre les tours, ce qui réduit le traitement répété des jetons, la latence et le coût chez les fournisseurs mettant les préfixes en cache. [#102610](https://github.com/openclaw/openclaw/pull/102610) Merci à @ugiezzz.
- Les utilisateurs de proxys compatibles avec Anthropic Messages ne voient plus le XML brut antml des appels d’outils ni leurs arguments apparaître dans les réponses visibles de Claude. [b2787a1](https://github.com/openclaw/openclaw/commit/b2787a1c7a7ae1a20d05411bba1dbf9091490c23) Merci à @jerry-xin.
- Les requêtes d’abonnement OAuth Anthropic incluent désormais l’identité de facturation de style Claude Code, ce qui les aide à emprunter la route d’abonnement prévue au lieu d’échouer ou d’être traitées comme un type de requête incorrect. [709be93](https://github.com/openclaw/openclaw/commit/709be93ca8987009540eb56ed1b6bfda136427de) Merci à @vincentkoc.
- La synthèse vocale Google Gemini rejette désormais les réponses surdimensionnées avant de les mettre en mémoire tampon, tandis que les résultats vocaux normaux continuent de suivre le processus audio existant. [#96984](https://github.com/openclaw/openclaw/pull/96984) Merci à @mushuiyu886.
- La diffusion en continu de Gemini peut désormais réessayer avec une autre clé API configurée après une réponse réessayable liée au quota ou à la limite de débit, au lieu d’échouer dès la première clé. [#97328](https://github.com/openclaw/openclaw/pull/97328) Merci à @monkeyleet.
- Les téléversements par lots, la création et les vérifications d’état des intégrations vectorielles de mémoire de Gemini échouent désormais en toute sécurité lorsqu’un point de terminaison compatible renvoie une réponse de contrôle surdimensionnée. [#97535](https://github.com/openclaw/openclaw/pull/97535) Merci à @hugenshen.
- La connexion à Google Gemini CLI rejette désormais les réponses OAuth, de profil, de projet et d’intégration surdimensionnées avec des erreurs libellées, au lieu de risquer une utilisation excessive de la mémoire. [#97587](https://github.com/openclaw/openclaw/pull/97587) Merci à @hugenshen.
- Les échecs OAuth de Google Gemini CLI maintiennent désormais les réponses surdimensionnées ou mal formées du fournisseur dans des limites définies, tout en préservant les détails d’erreur utiles. [#99605](https://github.com/openclaw/openclaw/pull/99605) Merci à @mushuiyu886.
- La génération d’images Google peut désormais utiliser `models.providers.google.apiKey` et un `baseUrl` personnalisé facultatif, sans identifiants d’environnement distincts ni profil d’authentification. [#100779](https://github.com/openclaw/openclaw/pull/100779) Merci à @amknight.
- La configuration du fournisseur cesse désormais de lire les réponses incontrôlées de découverte des modèles avant qu’elles ne puissent bloquer le processus ou épuiser la mémoire, tandis que les réponses normales des serveurs auto-hébergés continuent de fonctionner. [#95244](https://github.com/openclaw/openclaw/pull/95244) Merci à @alix-007 et @sallyom.
- La découverte des modèles Ollama interrompt désormais les réponses de point de terminaison surdimensionnées ou interminables avant qu’elles ne puissent épuiser la mémoire ou laisser la configuration bloquée. [#96027](https://github.com/openclaw/openclaw/pull/96027) Merci à @alix-007.
- Les expirations de modèles permettant une relecture sûre peuvent désormais passer au fournisseur configuré suivant, ce qui permet aux exécutions d’agent, de chat et Cron de récupérer sans répéter des opérations susceptibles d’avoir des effets secondaires. [#96142](https://github.com/openclaw/openclaw/pull/96142) Merci à @brokemac79 et @riazrahaman.
- `openclaw models list` indique désormais comme disponibles les modèles Ollama locaux configurés lorsqu’ils sont en cours d’exécution et utilisables. [#97491](https://github.com/openclaw/openclaw/pull/97491) Merci à @lingfeizi et @qingminglong.
- La configuration d’Ollama Cloud interrompt désormais les réponses d’authentification surdimensionnées ou malveillantes avant qu’elles ne puissent consommer trop de mémoire, tandis que la connexion normale reste inchangée. [#97581](https://github.com/openclaw/openclaw/pull/97581) Merci à @hugenshen.
- La réexécution de l’intégration d’un fournisseur ou l’actualisation des modèles préserve désormais les délais d’expiration, les paramètres de transport, les modèles MiniMax et les identifiants SecretRef gérés par l’opérateur, au lieu de les effacer silencieusement. [#100107](https://github.com/openclaw/openclaw/pull/100107) Merci à @frank-beans.
- Les requêtes Ollama dont le flux de réponse natif s’interrompt prématurément peuvent désormais passer à un modèle de repli configuré au lieu de s’arrêter avec `LLM request failed`. [#100482](https://github.com/openclaw/openclaw/pull/100482) Merci à @turbotheturtle.
- Les exécutions Codex planifiées et lancées depuis la CLI avec un délai d’expiration explicite supérieur à 30 minutes peuvent désormais utiliser la totalité de ce délai au lieu d’être interrompues par la protection contre l’inactivité du terminal. [#85296](https://github.com/openclaw/openclaw/pull/85296) Merci à @alkor2000 et @vincentkoc.
- Les sessions vocales et de transcription OpenAI Realtime démarrent désormais derrière Clash, Surge, sing-box et les configurations de proxy TUN similaires qui résolvent `api.openai.com` vers des plages de fausses adresses IP. [#86526](https://github.com/openclaw/openclaw/pull/86526) Merci à @shushushv.
- Les sessions vocales en temps réel omettent désormais un outil personnalisé individuel dont le nom propre au fournisseur est invalide et émettent un avertissement à son sujet, au lieu de laisser cet outil interrompre l’ensemble de la session OpenAI, Azure ou Google. [#89175](https://github.com/openclaw/openclaw/pull/89175) Merci à @vincentkoc.
- Pour les modèles OpenAI reposant sur Codex, `/status` identifie désormais l’authentification par connexion à ChatGPT comme `oauth (codex-cli)` au lieu de l’identifier à tort comme une clé API d’environnement. [#91240](https://github.com/openclaw/openclaw/pull/91240) Voir aussi [#91099](https://github.com/openclaw/openclaw/issues/91099). Merci à @849261680 et @ukstem.
- Les utilisateurs d’OpenAI et de Codex authentifiés via le serveur d’application peuvent de nouveau consulter leurs fenêtres de quota de cinq heures et hebdomadaires dans le chat, la CLI et la sortie d’état JSON. [#92520](https://github.com/openclaw/openclaw/pull/92520) Merci à @brokemac79.
- Un résultat manquant ou bloqué d’un outil Codex local ne fait plus basculer la session active vers un autre fournisseur incapable de résoudre l’échec local. [#95543](https://github.com/openclaw/openclaw/pull/95543) Merci à @mikasa0818.
- Ollama Cloud et les autres chats Ollama compatibles avec OpenAI peuvent désormais continuer après un appel d’outil au lieu d’échouer au tour suivant avec une erreur 400 du fournisseur. [#96474](https://github.com/openclaw/openclaw/pull/96474) Merci à @849261680.
- vLLM, les proxys Ollama et les autres passerelles compatibles avec OpenAI peuvent fournir des réponses diffusées en continu même lorsqu’ils identifient à tort un flux d’événements comme du JSON, évitant ainsi un échec d’analyse précoce qui interrompait auparavant l’exécution de l’agent. [#96503](https://github.com/openclaw/openclaw/pull/96503) Merci à @zengwen-dt.
- La diffusion en continu d’OpenAI ChatGPT Responses annule désormais les corps de fournisseur surdimensionnés ou interminables avec une erreur claire avant qu’ils ne puissent consommer trop de mémoire du processus, tandis que les réponses normales continuent d’utiliser l’analyseur existant. [#96762](https://github.com/openclaw/openclaw/pull/96762) Merci à @vincentkoc et @wangmiao0668000666.
- Les requêtes d’intégrations vectorielles compatibles avec OpenAI ferment désormais rapidement les réponses surdimensionnées avec une erreur claire du fournisseur, au lieu de les mettre en mémoire tampon jusqu’à ce qu’OpenClaw se bloque ou manque de mémoire, tandis que les intégrations vectorielles normales continuent de fonctionner. [#96868](https://github.com/openclaw/openclaw/pull/96868) Merci à @alix-007.
- La génération de vidéos OpenAI interrompt désormais les réponses de soumission surdimensionnées ou interminables avec une erreur limitée du fournisseur avant qu’elles ne puissent bloquer la requête ou épuiser la mémoire. [#96905](https://github.com/openclaw/openclaw/pull/96905) Merci à @alix-007.
- Les flux des fournisseurs et proxys compatibles avec OpenAI interrompent désormais les corps surdimensionnés, malformés ou sans fin au niveau de la requête concernée, au lieu de les laisser déstabiliser ou faire planter le processus OpenClaw. [#96989](https://github.com/openclaw/openclaw/pull/96989) Merci à @vincentkoc et @wangmiao0668000666.
- Les Chat Completions compatibles avec OpenAI utilisent désormais le chemin réseau protégé d’OpenClaw, avec les mêmes contrôles de sécurité des réponses que les autres appels de modèles protégés. [#97228](https://github.com/openclaw/openclaw/pull/97228) Merci à @vincentkoc et @wangmiao0668000666.
- Azure OpenAI Responses limite désormais la taille des flux et des corps d’erreur surdimensionnés, protégeant ainsi la mémoire tout en préservant les erreurs normales et l’annulation. [#97349](https://github.com/openclaw/openclaw/pull/97349) Merci à @wangmiao0668000666.
- L’interrogation des lots d’embeddings OpenAI et la configuration Realtime annulent désormais rapidement les réponses réussies surdimensionnées et renvoient une erreur de taille limitée au lieu de laisser l’utilisation de la mémoire croître sans limite. [#97533](https://github.com/openclaw/openclaw/pull/97533) Merci à @hugenshen.
- Les vérifications d’utilisation OAuth d’OpenAI limitent désormais les réponses surdimensionnées de limitation de débit WHAM avant qu’elles ne puissent déstabiliser le processus. [#97702](https://github.com/openclaw/openclaw/pull/97702) Merci à @cxbasdev.
- GPT-5.5 et les autres modèles peuvent envoyer des événements de flux valides de plus de 64 KiB via ChatGPT Responses sans faire échouer la requête, tandis que les flux malformés et non bornés restent limités. [#98198](https://github.com/openclaw/openclaw/pull/98198) Merci à @marvinthebored, @obviyus et @peetiegonzalez.
- Les modèles Xiaomi MiMo personnalisés et les autres modèles compatibles avec OpenAI sans limite de sortie connue peuvent désormais terminer les discussions au lieu d’échouer à cause d’une limite surdimensionnée inventée. [#98312](https://github.com/openclaw/openclaw/pull/98312) Merci à @peole et @sanjays2402.
- `openclaw agent --local` signale désormais clairement un délai d’attente du premier événement lorsqu’un fournisseur ouvre un flux sans jamais envoyer de sortie exploitable, au lieu de sembler rester bloqué indéfiniment. [#98525](https://github.com/openclaw/openclaw/pull/98525) Merci à @osolmaz.
- Les téléchargements de lots d’embeddings compatibles avec OpenAI traitent désormais les sorties volumineuses valides tout en interrompant les fichiers ou enregistrements JSONL surdimensionnés avant qu’ils ne puissent épuiser la mémoire. [#98554](https://github.com/openclaw/openclaw/pull/98554) Merci à @sunlit-deng et @vincentkoc.
- Les développeurs de bibliothèques et d’intégrations peuvent désormais installer un paquet de version correspondante, créer des environnements d’exécution d’IA indépendants et réutiliser les transports de modèles pris en charge par OpenClaw sans intégrer l’application complète. [#99059](https://github.com/openclaw/openclaw/pull/99059)
- Les connexions vocales en temps réel d’OpenAI et Azure ferment désormais les messages entrants de plus de 16 MiB, limitant la pression évitable sur la mémoire du Gateway. [#99450](https://github.com/openclaw/openclaw/pull/99450) Merci à @sunlit-deng.
- La connexion et l’actualisation OAuth de ChatGPT rejettent désormais proprement les réponses de jetons anormalement volumineuses au lieu de risquer d’épuiser la mémoire du Gateway. [#99479](https://github.com/openclaw/openclaw/pull/99479) Merci à @pandah97.
- Les fournisseurs compatibles avec OpenAI acheminés par l’environnement BYOK de GitHub Copilot conservent désormais l’authentification par jeton porteur, ce qui réduit les fausses erreurs 401 pour les identifiants valides. [#99955](https://github.com/openclaw/openclaw/pull/99955) Merci à @hxy91819.
- Un échec sans détails provenant d’un fournisseur compatible avec OpenAI ne place plus un profil de clé API valide en période de récupération et ne provoque plus de trafic de repli évitable. [#100617](https://github.com/openclaw/openclaw/pull/100617) Merci à @fengjikui.
- La voix OpenAI Realtime dans Talk, Voice Call et Discord peut désormais utiliser une connexion OAuth Codex/OpenAI existante lorsqu’aucune clé API explicite n’est configurée. [#100671](https://github.com/openclaw/openclaw/pull/100671) Merci à @steipete-oai.
- La génération d’images OpenAI peut désormais être activée depuis `models.providers.openai` avec une clé API utilisable et une URL de base personnalisée, sans exiger également `OPENAI_API_KEY` ni un profil d’authentification. [#100745](https://github.com/openclaw/openclaw/pull/100745) Merci à @amknight.
- Les utilisateurs de Codex peuvent acheminer les modèles `codex/*` et `openai/*` via l’environnement d’exécution intégré, et les anciennes conversations reprennent sans reprojection inutile du contexte. [#105034](https://github.com/openclaw/openclaw/pull/105034)
- Le plugin Codex intégré peut de nouveau terminer les requêtes au backend après la mise à jour de son environnement d’exécution app-server géré, sans nécessiter de migration du sélecteur de modèle ni de la configuration. [#106098](https://github.com/openclaw/openclaw/pull/106098)
- Les pages de résultat OAuth d’OpenAI/Codex et Anthropic affichent désormais l’identité visuelle d’OpenClaw au lieu de l’ancien logo Pi. [1834592](https://github.com/openclaw/openclaw/commit/1834592be17668cbfc9ea834c57df73e05b71f14)
- Le workflow Codex géré d’OpenClaw utilise désormais app-server 0.143.0, et les installations autogérées doivent utiliser la version 0.143.0 ou ultérieure pour assurer la compatibilité du protocole. [366258d](https://github.com/openclaw/openclaw/commit/366258dee6e4a3ea0bb04b1316e5a0c419c60188) Merci à @vincentkoc.
- L’environnement Codex géré affiche désormais les modèles GPT-5.6 Sol, Terra et Luna pris en charge et renvoyés par le catalogue du compte, et fournit aux utilisateurs autogérés des indications de version à jour. [f80ce21](https://github.com/openclaw/openclaw/commit/f80ce219fcf0c5cbe9871b9ad05b7570fbfeba6e) Merci à @vincentkoc.
- Les utilisateurs de Codex géré sous macOS, Linux et Windows reçoivent désormais app-server 0.144.1 au lieu de 0.144.0. [5dcba9f](https://github.com/openclaw/openclaw/commit/5dcba9fae725c080b62c4b4e19533f5fcd59b964) Merci à @vincentkoc.
- Lorsque `models.mode` est défini sur `replace`, le démarrage de l’agent utilise désormais uniquement les fournisseurs explicitement configurés et ignore l’analyse implicite lente des fournisseurs. [#82638](https://github.com/openclaw/openclaw/pull/82638) Voir aussi [#66957](https://github.com/openclaw/openclaw/issues/66957). Merci à @eldar702 et @wangzhengshu.
- Les alias de fournisseurs intégrés acceptent désormais les paramètres de substitution pris en charge, tels que les délais d’attente des requêtes, sans exiger des champs de fournisseur personnalisé comme `baseUrl` et `models`. [#88400](https://github.com/openclaw/openclaw/pull/88400) Merci à @pluviobyte.
- Les exécutions d’agents peuvent passer au modèle configuré suivant après l’interruption d’un flux par un fournisseur, tandis que les véritables annulations continuent de s’arrêter rapidement. [#90908](https://github.com/openclaw/openclaw/pull/90908) Merci à @shengting.
- Le passage du mode de réflexion désactivé à un modèle nécessitant un raisonnement sélectionne désormais son niveau d’effort pris en charge le plus faible au lieu de choisir silencieusement le niveau le plus coûteux. [#93335](https://github.com/openclaw/openclaw/pull/93335) Merci à @obuchowski.
- Les réponses de MiniMax M3, y compris celles acheminées via Fireworks, n’exposent plus le raisonnement `mm:` masqué dans la discussion visible ni dans la sortie de progression. [#93767](https://github.com/openclaw/openclaw/pull/93767) Merci à @drhack1 et @vincentkoc.
- Le raisonnement masqué de MiniMax n’apparaît plus sous forme de nouvel iMessage et n’est plus réinjecté dans la conversation comme message entrant déclenchant un écho. [#93820](https://github.com/openclaw/openclaw/pull/93820) Merci à @alix-007.
- Les requêtes de synthèse vocale et de liste de voix d’Inworld échouent désormais de manière sûre face à des réponses surdimensionnées, malformées ou sans fin, au lieu de rester bloquées ou de consommer sans limite la mémoire du Gateway. [#95416](https://github.com/openclaw/openclaw/pull/95416) Merci à @alix-007 et @vincentkoc.
- Les exécutions d’agents intégrés peuvent désormais essayer le modèle de repli configuré suivant après une erreur temporaire `LLM request failed` en amont. [#95542](https://github.com/openclaw/openclaw/pull/95542) Merci à @altaywtf et @mikasa0818.
- La découverte des modèles et le démarrage de LM Studio interrompent désormais les réponses pathologiques du serveur à une taille fixe et signalent une erreur claire au lieu de les mettre indéfiniment en mémoire tampon. [#96042](https://github.com/openclaw/openclaw/pull/96042) Merci à @alix-007.
- Les tâches Cron isolées peuvent désormais utiliser les modèles fournis par les plugins intégrés activés sans échouer parce qu’ils sont inconnus ni être silencieusement résolues vers le mauvais fournisseur. [#96070](https://github.com/openclaw/openclaw/pull/96070) Merci à @sallyom et @sunnyshu0925.
- La configuration d’appareil OAuth de MiniMax limite désormais la taille de la réponse d’autorisation afin qu’un point de terminaison défaillant, transmis par proxy ou auto-hébergé, ne puisse pas épuiser la mémoire du Gateway. [#96322](https://github.com/openclaw/openclaw/pull/96322) Merci à @lsr911.
- La génération d’images s’arrête désormais avec une erreur claire de limite de taille lorsqu’un fournisseur ou un point de terminaison personnalisé envoie une réponse surdimensionnée ou sans fin, ce qui évite les blocages et l’utilisation incontrôlée de la mémoire, tandis que les images et modifications valides continuent de fonctionner normalement. [#96495](https://github.com/openclaw/openclaw/pull/96495) Merci à @hugenshen et @sallyom.
- Azure Speech, Microsoft Speech, ElevenLabs, MiniMax TTS, la transcription OpenRouter et la transcription xAI interrompent désormais les réponses surdimensionnées ou sans fin avant qu’elles ne puissent bloquer le traitement vocal ou solliciter la mémoire du Gateway, tandis que les réponses ordinaires restent inchangées. [#96496](https://github.com/openclaw/openclaw/pull/96496) Merci à @hugenshen.
- La découverte des modèles et la recherche en mémoire de GitHub Copilot rejettent désormais les réponses surdimensionnées ou malformées au lieu de les mettre en mémoire tampon sans limite, tandis que les résultats valides de catalogue et d’embedding continuent de fonctionner normalement. [#96499](https://github.com/openclaw/openclaw/pull/96499) Merci à @hugenshen et @sallyom.
- La compréhension vidéo de Moonshot renvoie désormais une erreur prévisible pour les réponses surdimensionnées ou malformées au lieu de rester bloquée ou de consommer indéfiniment de la mémoire, y compris avec des URL de base personnalisées. [#96502](https://github.com/openclaw/openclaw/pull/96502) Merci à @hugenshen.
- La découverte des modèles vidéo d’OpenRouter interrompt désormais rapidement les réponses de catalogue surdimensionnées ou incontrôlées au lieu de les laisser consommer de la mémoire sans limite, tout en préservant le comportement normal de découverte. [#96505](https://github.com/openclaw/openclaw/pull/96505) Merci à @mushuiyu886.
- La compréhension vidéo de Qwen interrompt désormais les réponses surdimensionnées ou malformées des points de terminaison avec une erreur claire au lieu de rester bloquée ou de poursuivre la lecture sans limite, tandis que les descriptions normales restent inchangées. [#96604](https://github.com/openclaw/openclaw/pull/96604) Merci à @alix-007.
- La génération vidéo Google Veo met désormais fin rapidement aux réponses surdimensionnées de création ou d’état avec une erreur claire et bornée, empêchant un point de terminaison défaillant de bloquer OpenClaw ou de consommer indéfiniment de la mémoire. [#96605](https://github.com/openclaw/openclaw/pull/96605) Merci à @alix-007.
- La génération vidéo BytePlus interrompt désormais les réponses surdimensionnées de soumission de tâche ou d’état avec une erreur claire avant qu’elles ne puissent bloquer OpenClaw ou épuiser la mémoire, tandis que les réponses normales restent inchangées. [#96606](https://github.com/openclaw/openclaw/pull/96606) Merci à @alix-007.
- Les vérifications d’utilisation de GitHub Copilot traitent désormais les réponses surdimensionnées ou sans fin des points de terminaison comme une erreur d’utilisation au lieu de les mettre indéfiniment en mémoire tampon, tandis que les données d’utilisation normales continuent de se charger. [#96607](https://github.com/openclaw/openclaw/pull/96607) Merci à @alix-007.
- Les tâches de lots d’embeddings Voyage interrompent désormais les réponses surdimensionnées d’état, d’échec et de fichier d’erreur avant qu’elles ne puissent rester bloquées ou épuiser la mémoire du processus de traitement, tandis que les diagnostics surdimensionnés sont dégradés de manière sûre et que les réponses ordinaires restent inchangées. [#96608](https://github.com/openclaw/openclaw/pull/96608) Merci à @alix-007.
- Les alias et noms partiels de modèles tels que `opus` sont désormais résolus vers la version correspondante la plus récente, même lorsque les catalogues atteignent des numéros de version à deux chiffres, ce qui évite un acheminement silencieux vers un ancien modèle. [#96609](https://github.com/openclaw/openclaw/pull/96609) Merci à @yetval et @zw-xysk.
- La connexion, la recherche d’utilisateur et l’actualisation des jetons de Chutes interrompent désormais les réponses OAuth anormalement volumineuses avec une erreur bornée au lieu de les mettre en mémoire tampon sans limite. [#96777](https://github.com/openclaw/openclaw/pull/96777) Merci à @wangmiao0668000666.
- L’intégration de Chutes échoue désormais clairement lorsque les réponses d’échange de jeton ou d’informations utilisateur sont surdimensionnées, empêchant un trafic d’authentification anormal de provoquer une croissance non bornée de la mémoire. [#96779](https://github.com/openclaw/openclaw/pull/96779) Merci à @wangmiao0668000666.
- L’envoi et l’interrogation de vidéos compatibles avec DashScope rejettent désormais les réponses JSON surdimensionnées avec une erreur bornée, au lieu de risquer une pression mémoire ou une instabilité du processus, tandis que les réponses ordinaires continuent d’être traitées normalement. [#96782](https://github.com/openclaw/openclaw/pull/96782) Merci à @wangmiao0668000666.
- La génération vidéo d’OpenRouter rejette désormais les réponses surdimensionnées d’envoi et d’interrogation avant qu’elles puissent bloquer OpenClaw ou entraîner une consommation incontrôlée de mémoire, tandis que les réponses malformées de taille normale conservent leur gestion des erreurs habituelle. [#96873](https://github.com/openclaw/openclaw/pull/96873) Merci à @alix-007.
- Volcengine, BytePlus Seed Speech et Xiaomi TTS interrompent désormais les réponses surdimensionnées des fournisseurs avant qu’une requête vocale puisse bloquer ou déstabiliser OpenClaw. [#96874](https://github.com/openclaw/openclaw/pull/96874) Merci à @alix-007.
- La génération d’images, de vidéos et de contenus vocaux de Vydra échoue désormais avec une erreur bornée en cas de réponses de contrôle surdimensionnées ou interminables, au lieu de se bloquer ou d’épuiser la mémoire, tandis que les réponses valides continuent d’être traitées normalement. [#96875](https://github.com/openclaw/openclaw/pull/96875) Merci à @alix-007.
- La génération de musique et de vidéos de fal interrompt désormais les réponses réussies surdimensionnées avec une erreur claire de limite de taille avant qu’elles puissent provoquer un blocage ou épuiser la mémoire, tandis que la génération normale se poursuit comme auparavant. [#96886](https://github.com/openclaw/openclaw/pull/96886) Merci à @alix-007.
- La génération vidéo de MiniMax rejette désormais les réponses surdimensionnées de tâche, d’état ou de métadonnées de fichier avant le début d’une utilisation non bornée de la mémoire ou du téléchargement binaire, tandis que les réponses normales continuent de fonctionner. [#96889](https://github.com/openclaw/openclaw/pull/96889) Merci à @alix-007.
- La génération vidéo de xAI interrompt désormais les réponses surdimensionnées de création ou d’état avec une erreur claire de limite de taille, au lieu de les mettre en mémoire tampon jusqu’à ce qu’OpenClaw se bloque ou consomme trop de mémoire. [#96903](https://github.com/openclaw/openclaw/pull/96903) Merci à @alix-007 et @vincentkoc.
- La génération vidéo de Together et PixVerse renvoie désormais une erreur de taille indiquant le fournisseur pour les réponses réussies surdimensionnées, au lieu de continuer jusqu’à une forte pression mémoire ou une défaillance du processus. [#96904](https://github.com/openclaw/openclaw/pull/96904) Merci à @alix-007.
- La génération vidéo de Runway interrompt désormais les réponses surdimensionnées de création et d’état, au lieu de continuer à consommer de la mémoire ou de se bloquer, tandis que l’interrogation normale et les erreurs propres au fournisseur restent intactes. [#96907](https://github.com/openclaw/openclaw/pull/96907) Merci à @alix-007.
- La compréhension audio et vidéo de Google interrompt désormais les réponses surdimensionnées du fournisseur à la limite partagée de 16 MiB avec une erreur claire, au lieu de leur permettre de consommer trop de mémoire. [#96920](https://github.com/openclaw/openclaw/pull/96920) Merci à @mushuiyu886 et @vincentkoc.
- Les workflows de génération d’images de Comfy interrompent désormais les réponses ComfyUI surdimensionnées avec l’erreur réelle de limite de taille, au lieu de risquer un épuisement de la mémoire ou de signaler à tort que la réponse contient du JSON malformé. [#96927](https://github.com/openclaw/openclaw/pull/96927) Merci à @wangmiao0668000666.
- ClickClack interrompt désormais les réponses REST réussies surdimensionnées à la limite du fournisseur, offrant aux utilisateurs et aux opérateurs un échec prévisible au lieu d’une diffusion continue et d’une croissance de la mémoire. [#96970](https://github.com/openclaw/openclaw/pull/96970) Merci à @mushuiyu886 et @vincentkoc.
- Les catalogues paginés des fournisseurs présentent désormais les modèles situés au-delà de la première page, tandis que les catalogues malformés, interminables ou redirigés échouent de manière sûre, au lieu de mettre en cache une liste incomplète ou de transférer des en-têtes sensibles entre différentes origines. [#97012](https://github.com/openclaw/openclaw/pull/97012) Merci à @zhangguiping-xydt.
- Les longues exécutions de modèles opencode-go risquent moins d’être interrompues à tort pour blocage alors que des événements valides du fournisseur continuent d’arriver. [#97128](https://github.com/openclaw/openclaw/pull/97128) Merci à @liuwqgit, @vincentkoc et @yetval.
- Les fournisseurs de transcription Voice Call configurés, tels que xAI, restent sélectionnables lorsqu’un autre registre de fournisseurs est actif, ce qui permet aux sessions Talk de démarrer normalement. [#97170](https://github.com/openclaw/openclaw/pull/97170) Merci à @solavrc.
- Les modèles DeepSeek V4 Flash et Pro d’OpenRouter peuvent répondre avec la réflexion activée sans échouer avec une erreur HTTP 400. [#97208](https://github.com/openclaw/openclaw/pull/97208) Voir aussi [#97196](https://github.com/openclaw/openclaw/issues/97196). Merci à @nianjiuzst et @patelmm79.
- Les flux de modèles passant par un proxy échouent désormais avec des erreurs bornées et plus claires lorsque les réponses sont surdimensionnées, malformées, incomplètes ou inactives, au lieu de se bloquer ou de consommer une quantité non bornée de données. [#97235](https://github.com/openclaw/openclaw/pull/97235) Merci à @vincentkoc et @zhangguiping-xydt.
- La connexion OAuth à xAI et Grok fonctionne désormais sur les hôtes SSH, les conteneurs, les systèmes VPS et les autres environnements sans interface graphique, sans transférer un port de rappel localhost. [#97249](https://github.com/openclaw/openclaw/pull/97249) Merci à @fuller-stack-dev et @jaaneek.
- L’absence de fournisseurs multimédias officiels produit désormais des erreurs contenant les commandes de récupération exactes nécessaires pour rétablir la transcription et les autres workflows multimédias. [#97484](https://github.com/openclaw/openclaw/pull/97484) Merci à @wangmiao0668000666.
- La génération vidéo de DeepInfra rejette désormais les réponses réussies surdimensionnées avec une erreur bornée, au lieu de risquer un plantage par manque de mémoire. [#97486](https://github.com/openclaw/openclaw/pull/97486) Merci à @hugenshen.
- Le suivi des coûts d’OpenRouter plafonne désormais les réponses de métadonnées anormalement volumineuses et conserve l’estimation diffusée d’origine, au lieu d’interrompre le tour de l’agent. [#97490](https://github.com/openclaw/openclaw/pull/97490) Merci à @hugenshen.
- Les vérifications de connexion, d’actualisation et de liste des modèles de GitHub Copilot échouent désormais avec des limites de taille libellées lorsque GitHub ou un proxy renvoie une réponse surdimensionnée. [#97499](https://github.com/openclaw/openclaw/pull/97499) Merci à @wangmiao0668000666.
- Les utilisateurs de Z.AI peuvent récupérer un profil ayant enregistré accidentellement une commande d’intégration comme clé API sans effacer tout l’état d’authentification. [#97520](https://github.com/openclaw/openclaw/pull/97520) Merci à @zhangguiping-xydt.
- La détection du point de terminaison et du modèle de Z.AI échoue désormais proprement en cas de réponses d’erreur surdimensionnées ou interminables, au lieu d’épuiser la mémoire de l’hôte. [#97540](https://github.com/openclaw/openclaw/pull/97540) Merci à @alix-007.
- Les chaînes de repli configurées essaient désormais un autre modèle lorsque le fournisseur principal signale `model_not_found`, ce qui réduit les échecs après des changements de disponibilité des modèles. [#97571](https://github.com/openclaw/openclaw/pull/97571) Merci à @liuhao1024.
- La connexion à GitHub Copilot et l’actualisation des jetons rejettent désormais les réponses surdimensionnées du service avec une erreur claire avant qu’elles puissent épuiser la mémoire d’OpenClaw. [#97579](https://github.com/openclaw/openclaw/pull/97579) Merci à @hugenshen.
- La connexion par appareil à GitHub Copilot échoue désormais proprement en cas de réponse réussie surdimensionnée, au lieu de risquer un plantage par manque de mémoire. [#97583](https://github.com/openclaw/openclaw/pull/97583) Merci à @hugenshen.
- Lorsqu’un modèle d’exécution configuré n’est plus disponible, le chat explique désormais qu’une nouvelle session ne résoudra pas le problème et invite les opérateurs à choisir un modèle disponible. [#97611](https://github.com/openclaw/openclaw/pull/97611) Merci à @romneyda.
- La connexion, l’actualisation des jetons et l’approbation des appareils de xAI interrompent désormais les réponses OAuth surdimensionnées avant qu’elles puissent consommer une quantité non bornée de mémoire. [#97615](https://github.com/openclaw/openclaw/pull/97615) Merci à @cxbasdev.
- Le traitement des documents Google Meet rejette désormais les exportations Google Drive surdimensionnées avant qu’elles puissent déstabiliser OpenClaw, tandis que les documents ordinaires sont toujours exportés sous forme de texte. [#97620](https://github.com/openclaw/openclaw/pull/97620) Merci à @alix-007 et @vincentkoc.
- La connexion OAuth à Google, l’échange de jetons et la découverte de projets renvoient désormais une erreur bornée pour les réponses surdimensionnées, au lieu de risquer un plantage du processus. [#97628](https://github.com/openclaw/openclaw/pull/97628) Merci à @vincentkoc et @wangmiao0668000666.
- Les points de terminaison compatibles avec Mistral interrompent désormais les réponses diffusées surdimensionnées avec une erreur libellée avant qu’OpenClaw puisse manquer de mémoire. [#97648](https://github.com/openclaw/openclaw/pull/97648) Merci à @wangmiao0668000666.
- Les vérifications d’utilisation partagées de MiniMax et d’autres fournisseurs échouent désormais de manière sûre en cas de réponses surdimensionnées ou malformées, au lieu de les mettre en mémoire tampon sans limite. [#97659](https://github.com/openclaw/openclaw/pull/97659) Merci à @cxbasdev et @vincentkoc.
- Les erreurs de connexion et d’actualisation des jetons de Chutes incluent désormais un extrait utile et borné, sans permettre à un point de terminaison de diffuser une réponse illimitée en mémoire. [#97808](https://github.com/openclaw/openclaw/pull/97808) Merci à @pick-cat.
- Les tests de connexion à Microsoft Foundry interrompent désormais les réponses d’erreur surdimensionnées ou diffusées en continu, tout en conservant des diagnostics de configuration concis. [#97812](https://github.com/openclaw/openclaw/pull/97812) Merci à @pick-cat.
- Z.AI et les réponses HTTP 429 similaires distinguent désormais une surcharge temporaire du service d’une limitation de débit ordinaire et conservent le délai avant nouvelle tentative fourni par le fournisseur. [#98165](https://github.com/openclaw/openclaw/pull/98165) Merci à @sunnyshu0925.
- Les sondes de modèles et les requêtes d’agents d’OpenRouter utilisent désormais correctement les clés API découvertes dans l’environnement ou le profil, au lieu d’échouer avec une erreur d’en-tête d’authentification manquant. [#98187](https://github.com/openclaw/openclaw/pull/98187) Voir aussi [#97934](https://github.com/openclaw/openclaw/issues/97934). Merci à @laurencebrown et @sunlit-deng.
- Les outils d’image et de vidéo peuvent désormais sélectionner automatiquement les modèles de Plugin de fournisseur configurés et authentifiés au moyen de variables d’environnement. [#98623](https://github.com/openclaw/openclaw/pull/98623) Merci à @medns.
- Une réponse malformée des voix Inworld produit désormais une erreur claire propre au fournisseur, au lieu d’une exception d’analyse peu utile ou d’un plantage du processus. [#98660](https://github.com/openclaw/openclaw/pull/98660) Merci à @solodmd.
- Nemotron 3 Super expose désormais son budget contextuel complet de 1,048,576 jetons dans le catalogue de repli NVIDIA intégré à OpenClaw, au lieu d’effectuer une Compaction à l’ancienne limite de 262,144 jetons. [#98726](https://github.com/openclaw/openclaw/pull/98726) Merci à @eleqtrizit.
- Les réponses Google Meet, Calendar ou OAuth anormalement volumineuses s’interrompent désormais avec une erreur avant de pouvoir consommer de manière incontrôlée la mémoire du Gateway. [#98850](https://github.com/openclaw/openclaw/pull/98850) Merci à @pandah97.
- Les échecs des fournisseurs maintiennent désormais le texte d’erreur de repli dans la limite de taille configurée, empêchant les réponses surdimensionnées de submerger les journaux ou les diagnostics visibles. [#99340](https://github.com/openclaw/openclaw/pull/99340) Merci à @pick-cat.
- Les modèles ClawRouter sélectionnés dans les valeurs par défaut de l’agent sont désormais résolus à l’exécution lorsque l’identifiant est stocké dans un profil d’authentification plutôt que dans l’environnement. [#99759](https://github.com/openclaw/openclaw/pull/99759)
- La compréhension vidéo configurée automatiquement utilise désormais les valeurs par défaut du fournisseur, comme le modèle vidéo prévu par Moonshot, sauf si l’utilisateur a explicitement sélectionné un modèle. [#99791](https://github.com/openclaw/openclaw/pull/99791) Merci à @vincentkoc et @zhangguiping-xydt.
- Les configurations génériques de fournisseurs pour les points de terminaison officiels DashScope/Qwen, Moonshot, Z.AI, DeepSeek, Groq, Cerebras et Chutes conservent désormais le comportement de compatibilité requis par ces services, même sans plugins facultatifs. [#100125](https://github.com/openclaw/openclaw/pull/100125)
- Les sessions Responses adossées à l’OAuth de ChatGPT conservent désormais l’affinité avec le backend d’un tour à l’autre, ce qui améliore la réutilisation du cache des prompts et réduit le retraitement du même contexte de conversation. [#100233](https://github.com/openclaw/openclaw/pull/100233) Merci à @marvinthebored, @obviyus et @peetiegonz.
- Les sessions vocales Google Live peuvent désormais enregistrer et appeler les outils OpenClaw au lieu de rejeter leurs déclarations avant le début d’un tour reposant sur un outil. [#100260](https://github.com/openclaw/openclaw/pull/100260)
- Les requêtes `mistral-medium-3-5` directes envoient désormais à Mistral le niveau de raisonnement ajustable sélectionné par l’utilisateur sous la forme `reasoningEffort`. [#100688](https://github.com/openclaw/openclaw/pull/100688) Merci à @aniruddhaadak80 et @wm0018.
- La compréhension d’images de MiniMax interrompt désormais à une limite définie les réponses réussies surdimensionnées ou mal formées, protégeant ainsi la mémoire tout en renvoyant un diagnostic utile. [#100694](https://github.com/openclaw/openclaw/pull/100694) Merci à @zhangguiping-xydt.
- Le préchargement des plongements de LM Studio respecte désormais la limite de contexte configurée, ce qui réduit les erreurs de mémoire GPU insuffisante lors des recherches en mémoire sur du matériel aux ressources limitées. [#100750](https://github.com/openclaw/openclaw/pull/100750) Merci à @hxz398, @zak-li et @zoowh.
- La découverte des modèles Hugging Face se rabat désormais sur le catalogue intégré lorsque la réponse d’un fournisseur est mal formée ou surdimensionnée, au lieu de risquer une utilisation excessive de la mémoire. [#101079](https://github.com/openclaw/openclaw/pull/101079) Merci à @cxbasdev.
- Featherless AI dispose désormais d’un parcours officiel d’installation et d’intégration du fournisseur, comprenant `FEATHERLESS_API_KEY`, une valeur par défaut `featherless/Qwen/Qwen3-32B` sélectionnée avec soin et la prise en charge des identifiants exacts des modèles Featherless. [#101092](https://github.com/openclaw/openclaw/pull/101092) Merci à @vincentkoc.
- Meta Model API est désormais disponible par l’intermédiaire du fournisseur public `meta`, avec `meta/muse-spark-1.1`, une documentation canonique du fournisseur et des parcours d’installation autonome via npm ou ClawHub. [#103070](https://github.com/openclaw/openclaw/pull/103070) Merci à @vincentkoc.
- Le fournisseur Meta intégré utilise désormais `https://api.meta.ai/v1`, annonce la limite de sortie documentée de 131,072 jetons de Muse Spark 1.1 et applique les protections des requêtes destinées à l’hôte officiel. [#103680](https://github.com/openclaw/openclaw/pull/103680) Merci à @vincentkoc.
- Les fournisseurs externes officiels de confiance peuvent désormais afficher les choix de réflexion propres au modèle avant l’activation complète de l’environnement d’exécution, notamment désactivé, faible, élevé et maximal pour Z.AI GLM 5.2. [b4fce16](https://github.com/openclaw/openclaw/commit/b4fce16971995438ee416eee90569a37d6a592dc) Merci à @vincentkoc.
- Les agents Anthropic acheminés par AWS Bedrock peuvent conserver les outils d’écriture Feishu Bitable activés sans que les définitions d’outils bloquent toutes les conversations. [#94990](https://github.com/openclaw/openclaw/pull/94990) Merci à @twinslee et @vincentkoc.
- La connexion à Anthropic rejette désormais les substitutions non prises en charge de l’hôte de rappel, maintient l’autorisation sur les adresses de bouclage locales standard et évite les échecs ou l’exposition du rappel par l’intermédiaire d’un écouteur non local. [#96917](https://github.com/openclaw/openclaw/pull/96917) Merci à @xialonglee.
- Une authentification Claude CLI expirée affiche désormais la commande exacte de récupération `claude auth login && openclaw models auth login --provider anthropic --method cli` au lieu d’un échec générique. [#97669](https://github.com/openclaw/openclaw/pull/97669) Merci à @alix-007.
- Les requêtes directes admissibles adressées à Claude Fable 5 à l’aide d’une clé d’API renvoient désormais une réponse d’Opus 4.8 lorsque le classificateur de sécurité d’Anthropic refuse Fable, avec des diagnostics et une facturation Opus clairement indiqués. [#99906](https://github.com/openclaw/openclaw/pull/99906)
- Claude Fable 5 utilise désormais la configuration de flux Anthropic `context1m` attendue lorsque le contexte 1M est activé, sans affecter les identifiants de modèles similaires. [#100572](https://github.com/openclaw/openclaw/pull/100572) Merci à @zhangguiping-xydt.
- Les requêtes de modèles compatibles avec Anthropic utilisent désormais systématiquement le transport protégé d’OpenClaw, la normalisation des réponses et le nettoyage géré des flux, plutôt que de les contourner par l’intermédiaire du SDK. [#101357](https://github.com/openclaw/openclaw/pull/101357) Merci à @wangmiao0668000666.
- Les conversations Claude passant par GitHub Copilot peuvent se poursuivre après l’échec d’un outil sans sortie visible, au lieu d’enchaîner les échecs liés au schéma du fournisseur. [#101373](https://github.com/openclaw/openclaw/pull/101373) Merci à @galiniliev.
- Les appels compatibles avec Anthropic dont les plafonds de jetons sont trop faibles pour la réflexion manuelle s’exécutent désormais normalement sans réflexion, au lieu d’échouer lors de la validation par le fournisseur. [#101415](https://github.com/openclaw/openclaw/pull/101415) Merci à @pick-cat.
- L’analyse des médias par Gemini CLI renvoie désormais sa description même lorsque la réponse valide contient également des données d’utilisation imbriquées ou d’autres métadonnées. [#96432](https://github.com/openclaw/openclaw/pull/96432) Merci à @lin-hongkuan.
- Les outils MCP qui attendent des tableaux ou des objets peuvent désormais accepter ces valeurs lorsque Xiaomi MiMo, Ollama ou un autre fournisseur concerné les renvoie sous forme de chaînes JSON, évitant ainsi un échec de validation avant l’exécution. [#96922](https://github.com/openclaw/openclaw/pull/96922) Merci à @liuhao1024.
- Les appels d’outils en texte brut réparés provenant de LM Studio, xAI et Ollama émettent désormais un événement final d’achèvement afin que les plugins et les autres consommateurs de flux puissent les terminer de manière fiable. [#104714](https://github.com/openclaw/openclaw/pull/104714)
- Les résumés d’état respectent désormais les alias de modèles propres au fournisseur, affichant l’alias sélectionné sans avertissement erroné d’incompatibilité avec le modèle épinglé. [1d4e789](https://github.com/openclaw/openclaw/commit/1d4e7899a47f4483d29848eac02e1fb89de2a2ee)
- Les défis Cloudflare 403 sur les requêtes OAuth OpenAI ou Codex produisent désormais des instructions relatives au blocage par la passerelle au lieu d’indiquer à tort aux utilisateurs que leur authentification a échoué. [#94440](https://github.com/openclaw/openclaw/pull/94440) Lié à [#94432](https://github.com/openclaw/openclaw/issues/94432). Merci à @lzyyzznl et @pbm9z95m6z-hue.
- Les configurations utilisant l’identifiant d’API retiré `openai-codex-responses` reçoivent désormais un message de validation nommant son remplacement pris en charge au lieu d’un échec générique. [#96257](https://github.com/openclaw/openclaw/pull/96257) Merci à @james-16 et @yetval.
- Les références héritées à `openai-codex` orientent désormais les opérateurs vers `openclaw doctor --fix` et `openclaw models status` au lieu de suggérer une configuration qui échoue à la validation. [#100120](https://github.com/openclaw/openclaw/pull/100120) Merci à @jason-vaughan, @sunnyshu0925 et @vincentkoc.
- Les erreurs d’authentification OpenAI orientent désormais les utilisateurs de l’OAuth ChatGPT/Codex vers un modèle compatible avec leur connexion existante au lieu de recommander une valeur par défaut obsolète. [#100579](https://github.com/openclaw/openclaw/pull/100579) Merci à @zhangguiping-xydt.
- Les exécutions du serveur d’application Codex avec une session OAuth ChatGPT non valide affichent désormais rapidement l’erreur de connexion réelle au lieu d’attendre un délai d’expiration d’authentification trompeur de dix secondes. [#100713](https://github.com/openclaw/openclaw/pull/100713) Merci à @lin-hongkuan.
- Les conversations poursuivies avec des points de terminaison personnalisés stricts compatibles avec OpenAI Responses n’échouent plus à cause d’un champ `input[n].status` non pris en charge et ne basculent plus inutilement vers un modèle de secours. [#100831](https://github.com/openclaw/openclaw/pull/100831) Merci à @chenxiaoyu209.
- Les exécutions Codex interrompues par la limite de rejets du gardien indiquent désormais pourquoi elles se sont terminées, afin que les opérateurs ne confondent pas le résultat avec un plantage, une annulation ou une interruption générique. [#101220](https://github.com/openclaw/openclaw/pull/101220) Merci à @darren2030.
- La délégation native Codex depuis les fils OpenClaw crée de nouveau des enregistrements de tâches natifs, tandis que les versions personnalisées non prises en charge du serveur d’application Codex échouent au démarrage avec une erreur claire indiquant la version minimale. [#101221](https://github.com/openclaw/openclaw/pull/101221)
- Les conversations de configuration et de réparation de Crestodian lors des exécutions reposant sur Codex peuvent désormais accéder à l’outil d’état et de réparation dont elles ont besoin, au lieu de s’interrompre avec une réponse signalant un outil manquant. [#101281](https://github.com/openclaw/openclaw/pull/101281)
- Les clients partagés du serveur d’application Codex conservent désormais les limites d’utilisation, les délais de récupération de l’authentification, les abonnements aux fils et les connexions reprises associés au compte et à la conversation qui les possèdent réellement. [#101376](https://github.com/openclaw/openclaw/pull/101376)
- Les sessions vocales en temps réel OpenAI utilisent désormais `gpt-realtime-2.1` par défaut lorsqu’aucun modèle n’est spécifié, tandis que les modèles explicitement épinglés continuent de fonctionner. [#101390](https://github.com/openclaw/openclaw/pull/101390) Merci à @vincentkoc.
- Les sessions Codex utilisant `gpt-5.5-pro` ou `gpt-5.4-pro` limitent désormais les niveaux de raisonnement non pris en charge avant le premier tour, évitant ainsi le rejet immédiat de la requête lorsque les métadonnées en direct ne sont pas disponibles. [#101484](https://github.com/openclaw/openclaw/pull/101484) Merci à @zhangguiping-xydt.
- Les échecs de la sortie standard du serveur d’application Codex mettent désormais fin proprement aux requêtes concernées, tandis qu’un échec de la sortie d’erreur servant uniquement au diagnostic n’interrompt plus un tour par ailleurs sain. [#101505](https://github.com/openclaw/openclaw/pull/101505) Merci à @mushuiyu886 et @vincentkoc.
- Lorsqu’un modèle de complétion de chat OpenAI ou compatible avec OpenAI refuse une requête, les utilisateurs voient désormais l’explication du fournisseur au lieu d’une réponse vide de l’assistant. [#102344](https://github.com/openclaw/openclaw/pull/102344) Merci à @wuqxuan et @yetval.
- La génération d’images OpenAI et la modification à partir d’images de référence ne plantent plus lorsque les identifiants ou une URL de base personnalisée sont prêts avant la fin du chargement du catalogue de modèles du fournisseur. [#105518](https://github.com/openclaw/openclaw/pull/105518) Merci à @vincentkoc.
- Après que `/model` a modifié le fournisseur d’une session, `/status` et `session_status` indiquent désormais l’utilisation, l’authentification, l’environnement d’exécution et les détails de contexte de ce fournisseur, plutôt que des valeurs par défaut obsolètes. [#93384](https://github.com/openclaw/openclaw/pull/93384) Merci à @obviyus, @osolmaz, @rollingshmily, @samiralibabic et @zhangguiping-xydt.
- Les traces d’appels de modèles incluent désormais la taille du prompt et les détails d’utilisation des jetons pour chaque appel, aidant les opérateurs à étudier les coûts et la croissance des prompts sans capturer le contenu brut. [#95770](https://github.com/openclaw/openclaw/pull/95770) Merci à @amknight.
- Les échecs liés au format des requêtes et aux schémas affichent désormais le diagnostic pertinent sans imposer aux utilisateurs des étapes inutiles de connexion au fournisseur ou de reconfiguration. [#95779](https://github.com/openclaw/openclaw/pull/95779) Merci à @pick-cat.
- La recherche Web parallèle renvoie désormais une erreur bornée lorsqu’une réponse en amont est mal formée, surdimensionnée ou sans fin, au lieu de risquer un blocage ou un plantage dû à une mémoire insuffisante. [#96035](https://github.com/openclaw/openclaw/pull/96035) Merci à @alix-007.
- Les recherches Exa rejettent désormais les réponses dépassant la limite prise en charge, empêchant une sortie excessive du fournisseur de bloquer OpenClaw ou de créer une pression sur la mémoire. [#96038](https://github.com/openclaw/openclaw/pull/96038) Merci à @alix-007.
- Les sessions OAuth xAI et Grok existantes utilisant le point de terminaison de jeton retiré peuvent désormais être renouvelées après expiration sans imposer une nouvelle connexion par navigateur ou par tunnel SSH. [#96146](https://github.com/openclaw/openclaw/pull/96146) Merci à @fuller-stack-dev et @jaaneek.
- Les analyses OpenRouter interprètent désormais les noms de modèles tels que `8b-70b` en fonction de leur plus grand nombre de paramètres, ce qui améliore les filtres de taille minimale et les avertissements de sécurité concernant les petits modèles. [#96288](https://github.com/openclaw/openclaw/pull/96288) Merci à @ly-wang19.
- `/model default` renvoie désormais effectivement une session active vers son modèle configuré après un pilotage, un repli ou une précédente sélection manuelle. [#96318](https://github.com/openclaw/openclaw/pull/96318) Merci à @marsman-lab et @sunnyshu0925.
- Les catalogues de génération de médias conservent désormais le bon indicateur de modèle par défaut, même lorsque les métadonnées du fournisseur comportent des espaces superflus inoffensifs. [#96430](https://github.com/openclaw/openclaw/pull/96430) Merci à @lin-hongkuan.
- La connexion à OpenRouter échoue désormais de manière sûre lorsque les réponses sont trop volumineuses, et les envois par webhook Discord restent réussis lorsque leur corps de réponse facultatif est absent, mal formé ou trop volumineux. [#98098](https://github.com/openclaw/openclaw/pull/98098) Merci à @lwy-2.
- Les modifications d’images de référence avec Grok Imagine et Nano Banana 2 Lite hébergés par Fal atteignent désormais le bon service, tandis que les replis entre différents modèles respectent les résolutions et les limites de références prises en charge par chaque candidat. [#98688](https://github.com/openclaw/openclaw/pull/98688) Merci à @davenicoll et @vincentkoc.
- Les lots d’intégrations vectorielles Voyage mal formés ferment désormais leurs connexions de téléchargement après un échec d’analyse, ce qui réduit l’accumulation de ressources lors de charges de travail répétées ou importantes. [#98840](https://github.com/openclaw/openclaw/pull/98840) Merci à @solodmd.
- Les courts extraits audio dans une langue autre que l’anglais conservent désormais l’indication de langue configurée sans invite en anglais sans rapport, ce qui réduit les traductions accidentelles lorsque les utilisateurs attendent une transcription dans la langue parlée. [#99023](https://github.com/openclaw/openclaw/pull/99023) Merci à @flyveryhigh et @nianjiuzst.
- Le changement de modèle d’une session active de l’interface de contrôle ou de la TUI au moyen d’un alias de modèle qualifié par le fournisseur enregistre désormais le fournisseur et le modèle canoniques, empêchant ainsi le rejet de la requête suivante. [#100209](https://github.com/openclaw/openclaw/pull/100209) Merci à @sahilsatralkar.
- Le chat du Gateway classe désormais les messages mixtes des fournisseurs comme des limitations de débit lorsque la limitation est la cause réelle de l’échec, afin de fournir aux utilisateurs des conseils de récupération adaptés au problème. [#100755](https://github.com/openclaw/openclaw/pull/100755) Merci à @pick-cat.
- Les agents créés par copie d’identifiants conservent désormais la priorité portable des profils de fournisseur de l’agent source au lieu de sélectionner de manière inattendue un autre identifiant. [#100833](https://github.com/openclaw/openclaw/pull/100833) Merci à @machine3at.
- Les complétions OpenRouter facturées 0 $ par le fournisseur restent désormais enregistrées comme gratuites dans les transcriptions, les résumés, les journaux et les totaux d’utilisation, au lieu d’être remplacées par une estimation tarifaire issue du catalogue. [#101177](https://github.com/openclaw/openclaw/pull/101177)
- Les identifiants de fournisseur nouveaux ou mis à jour saisis via la CLI apparaissent désormais dans le sélecteur de modèles du Gateway et de l’interface de contrôle en cours d’exécution, sans rechargement manuel des secrets ni redémarrage. [#101256](https://github.com/openclaw/openclaw/pull/101256) Merci à @fuller-stack-dev.
- `openclaw status` et `session_status` indiquent désormais lorsqu’une session utilise un modèle de repli et affichent à côté le modèle principal configuré. [#101337](https://github.com/openclaw/openclaw/pull/101337) Merci à @lzy3538.
- MiniMax TTS explique désormais précisément que le volume doit être supérieur à 0 et peut atteindre 10 lorsqu’une directive est invalide. [#101359](https://github.com/openclaw/openclaw/pull/101359) Merci à @quratulain-bilal.
- Les erreurs de fournisseur de MiniMax VLM et de PDF natifs restent désormais lisibles lorsqu’un emoji ou d’autres caractères supplémentaires atteignent la limite de l’extrait de diagnostic. [#101728](https://github.com/openclaw/openclaw/pull/101728) Merci à @wings1029.
- Les identifiants de modèle OpenRouter Fusion très longs restent désormais en Unicode valide dans l’invite de l’agent, au lieu d’afficher un caractère corrompu lorsqu’un emoji atteint la limite d’affichage. [#104433](https://github.com/openclaw/openclaw/pull/104433) Merci à @zhangguiping-xydt.
- Les modèles reposant sur OAuth deviennent désormais disponibles dans la navigation des modèles du Gateway après le renouvellement des identifiants depuis un autre processus CLI, sans nécessiter de redémarrage du Gateway. [#104732](https://github.com/openclaw/openclaw/pull/104732) Merci à @fuller-stack-dev.
- L’intégration d’un fournisseur n’écrit plus de bloc `request` vide lorsqu’aucune substitution de requête n’a été fournie. [3a0a736](https://github.com/openclaw/openclaw/commit/3a0a736843af2877d66f5b8b8bcc78786d8f04a0) Merci à @vincentkoc.
- La chronologie des diagnostics indique désormais quand les appels aux modèles du fournisseur ont été exécutés, leur durée et s’ils ont réussi, sans enregistrer le contenu des invites ni des réponses. [7253552](https://github.com/openclaw/openclaw/commit/7253552c68d0ac8c6098126d373f185bb6df22a2) Merci à @vincentkoc.

</Accordion>

## Mémoire et conversations

### Rappel, longues conversations et continuité des sessions

L’indexation, le rappel, la synchronisation du wiki et la recherche de la [mémoire](/fr/concepts/memory) récupèrent les pages présentant davantage d’anomalies, les états obsolètes, les index volumineux, les lectures transitoires et les incompatibilités de fournisseurs, sans masquer le contexte stocké utile ni écraser les notes de l’utilisateur. Lorsqu’un résultat est incomplet ou qu’un fournisseur de mémoire configuré est indisponible, l’échec est indiqué plus clairement au lieu de donner l’impression que la réponse est complète.

Les [sessions](/fr/cli/sessions), les transcriptions, la Compaction, les objectifs et le routage conservent également plus systématiquement la conversation prévue lors des redémarrages, des réinitialisations, des suivis différés, des exécutions faisant un usage intensif des outils et des changements de client. En pratique, cela réduit les pertes d’historique, le nombre de réponses stockées dans la mauvaise session et permet de poursuivre plus fiablement les travaux de longue durée.

<Accordion title="Sources et contributeurs">

- La promotion vers la mémoire durable exclut désormais les marqueurs de Dreaming gérés par OpenClaw et le contenu géré adjacent de `MEMORY.md` lorsqu’une plage rappelée touche la limite d’un bloc. [#83718](https://github.com/openclaw/openclaw/pull/83718) Merci à @grifjef.
- Les modes QMD `search` et `vsearch` ignorent désormais le reclassement par LLM, ce qui réduit la latence et évite les défaillances GPU inutiles, tandis que le mode `query` complet conserve le reclassement. [#88887](https://github.com/openclaw/openclaw/pull/88887) Merci à @potterdigital.
- Les engagements de suivi déduits sont désormais replacés dans la file d’attente après des échecs temporaires d’extraction dus au modèle ou au réseau, ce qui réduit les rappels manqués sans traitement en double. [#89817](https://github.com/openclaw/openclaw/pull/89817) Merci à @masatohoshino.
- Les pages du wiki de mémoire intitulées `Index` restent désormais stockées, consultables et récupérables au lieu d’être masquées ou remplacées par des pages de répertoire générées. [#94326](https://github.com/openclaw/openclaw/pull/94326) Merci à @vincentkoc et @yetval.
- Active Memory avertit désormais lorsque les détails opérationnels rappelés peuvent être obsolètes et signale clairement les résumés tronqués, afin qu’un état ancien ou incomplet soit moins susceptible de paraître actuel. [#95888](https://github.com/openclaw/openclaw/pull/95888) Merci à @spencer2211.
- Les pages du wiki de mémoire situées dans des sous-dossiers apparaissent désormais dans la recherche, la consultation, les index compilés, les synthèses et le décompte du coffre, tout comme les pages de premier niveau. [#96022](https://github.com/openclaw/openclaw/pull/96022) Merci à @machine3at et @vincentkoc.
- Les index de mémoire volumineux peuvent désormais renvoyer des correspondances filtrées au-delà des 4 096 premiers candidats de sqlite-vec sans échouer ni omettre silencieusement des résultats valides. [#96157](https://github.com/openclaw/openclaw/pull/96157) Merci à @itsuzef et @vincentkoc.
- Les requêtes répétées `memory_search` et `openclaw memory search` reposant sur QMD peuvent répondre plus rapidement après la première consultation, tandis que les diagnostics distinguent le temps de configuration du temps de recherche et que les collections manquantes déclenchent toujours une réparation. [#96655](https://github.com/openclaw/openclaw/pull/96655) Merci à @bek91.
- La recherche en mémoire fonctionne désormais avec les Plugins d’intégration génériques installés, comme llama.cpp en local, y compris avec leur modèle par défaut et leurs paramètres de connexion. [#97095](https://github.com/openclaw/openclaw/pull/97095) Merci à @849261680.
- Une page du wiki de mémoire dont le YAML est défectueux n’empêche plus les pages saines d’être recherchées, compilées, analysées, comptées ou mises à jour. [#97177](https://github.com/openclaw/openclaw/pull/97177) Voir aussi [#96125](https://github.com/openclaw/openclaw/issues/96125). Merci à @cow11023 et @sunnyshu0925.
- Le Dreaming léger de Memory Core ne répète plus un bloc de résumé du travail inchangé dans `DREAMS.md`, tandis que les véritables mises à jour des notes quotidiennes peuvent toujours apparaître ultérieurement. [#97446](https://github.com/openclaw/openclaw/pull/97446) Merci à @aaajiao et @qingminglong.
- Memory Wiki marque désormais comme inconnues les affirmations dont les horodatages explicites de fraîcheur sont mal formés, au lieu de masquer les métadonnées incorrectes avec la date de la page. [#97465](https://github.com/openclaw/openclaw/pull/97465) Merci à @ly-wang19.
- Le mode détaillé `/status plugins` avertit désormais lorsqu’un fournisseur configuré d’intégration de mémoire est indisponible et que le rappel sémantique s’est rabattu sur la recherche par mots-clés. [#97968](https://github.com/openclaw/openclaw/pull/97968) Merci à @masatohoshino.
- L’analyse de Memory Wiki ignore désormais le texte ressemblant à un lien dans le code en ligne et les blocs de code délimités, tout en continuant à signaler les véritables liens rompus dans le texte. [#98095](https://github.com/openclaw/openclaw/pull/98095) Merci à @durambar, @vincentkoc et @zhangqueping.
- Les mises à jour des sources du wiki de mémoire préservent désormais les notes rédigées manuellement lorsqu’un échec temporaire de lecture empêche OpenClaw de charger la page existante en toute sécurité. [#98360](https://github.com/openclaw/openclaw/pull/98360) Voir aussi [#98345](https://github.com/openclaw/openclaw/issues/98345). Merci à @qingminglong, @vincentkoc et @yetval.
- Le rappel de mémoire QMD transforme désormais les sorties mcporter mal formées ou remplies d’avertissements en une erreur claire et filtrée, au lieu d’exposer le texte brut du sous-processus. [#98381](https://github.com/openclaw/openclaw/pull/98381) Merci à @miorbnli.
- La synchronisation des sources du wiki de mémoire peut désormais récupérer lorsqu’une page est absente ou entre en conflit avec un élément qui n’est pas un fichier, tout en préservant le contenu existant lorsqu’une nouvelle tentative reste dangereuse. [#99276](https://github.com/openclaw/openclaw/pull/99276) Merci à @obviyus.
- `memory_get` avec `corpus=all` peut désormais renvoyer un complément wiki disponible lorsque le fichier de mémoire demandé est absent, au lieu de s’arrêter avec un résultat vide. [#100904](https://github.com/openclaw/openclaw/pull/100904) Merci à @mushuiyu886 et @vincentkoc.
- Les notes vocales iOS restent désormais associées à la discussion prévue et récupèrent plus fiablement après une mise en file d’attente hors ligne, une recréation de l’application, un envoi incertain ou une utilisation concurrente du microphone. [#101236](https://github.com/openclaw/openclaw/pull/101236)
- Les importations de Memory Wiki se poursuivent désormais lorsqu’une page source entre en conflit avec une entrée protégée du coffre, au lieu d’interrompre toute l’importation. [76db9a3](https://github.com/openclaw/openclaw/commit/76db9a3376228db6a6f58cd705fc236aa697446c) Merci à @vincentkoc.
- Avec `memorySearch.provider: none`, OpenClaw démarre désormais la mémoire FTS uniquement sans analyser inutilement les capacités des Plugins. [fbf574a](https://github.com/openclaw/openclaw/commit/fbf574ad9db2658652e442aab4be3d597e1a9c14)
- Après `/new` ou `/reset`, la conversation précédente reste disponible pour les résumés quotidiens de mémoire et les recherches dans l’historique complet au moyen de la skill session-logs. [#71537](https://github.com/openclaw/openclaw/pull/71537) Merci à @injinj.
- Lorsque le vidage de la mémoire est activé, le contexte important de la conversation peut désormais atteindre la mémoire durable avant la Compaction automatique, ce qui réduit les lacunes silencieuses dans les notes enregistrées. [#84792](https://github.com/openclaw/openclaw/pull/84792) Merci à @turbotheturtle.
- Les images partagées depuis iOS ou via le Node `agent.request` restent désormais jointes au bon tour de conversation après le rechargement de l’historique, afin que les messages ultérieurs puissent toujours les utiliser. [#86936](https://github.com/openclaw/openclaw/pull/86936) Merci à @peterdsp.
- Une discussion de groupe ou une session Gateway peut désormais reprendre à la prochaine requête visible après l’échec, l’expiration ou l’arrêt forcé d’un tour, sans nécessiter `/new` ni de modification manuelle du fichier de session. [#89045](https://github.com/openclaw/openclaw/pull/89045) Merci à @jerry-xin.
- L’historique des appels vocaux reste désormais associé à l’agent correctement configuré après les redémarrages et les mises à niveau du Gateway, tandis que l’état historique ambigu demeure intact avec des avertissements exploitables. [#89884](https://github.com/openclaw/openclaw/pull/89884) Merci à @mushuiyu886.
- Les recherches interactives dans la mémoire QMD sans correspondance renvoient désormais rapidement un résultat vide, au lieu de sembler bloquées pendant une maintenance inutile de l’index. [#90030](https://github.com/openclaw/openclaw/pull/90030) Voir aussi [#90023](https://github.com/openclaw/openclaw/issues/90023). Merci à @ruben2000de et @sahibzada-allahyar.
- Au démarrage, le Gateway et la TUI intégrée récupèrent désormais les anciens fichiers temporaires de session laissés par des arrêts brutaux, ce qui réduit l’occupation cachée du disque tout en préservant les états récents ou potentiellement récupérables. [#90503](https://github.com/openclaw/openclaw/pull/90503) Merci à @sahibzada-allahyar.
- Les transcriptions partagées des groupes et des canaux conservent désormais l’identifiant de l’expéditeur, son nom d’affichage et son nom d’utilisateur pour chaque tour utilisateur durable, ce qui permet aux traitements ultérieurs de l’historique et de la mémoire d’attribuer correctement les participants. [#90552](https://github.com/openclaw/openclaw/pull/90552) Merci à @pick-cat.
- `/export-session` avertit désormais lorsqu’une exportation reposant sur la CLI ou ACP ne contient que les messages utilisateur et oriente les utilisateurs vers la transcription du backend pour obtenir les détails manquants sur l’assistant, les outils, l’utilisation et les coûts. [#90867](https://github.com/openclaw/openclaw/pull/90867) Merci à @tank-x3, @vincentkoc et @xydigit-sj.
- Les gateways exécutés pendant de longues périodes peuvent supprimer les sessions obsolètes de vérification ponctuelle du modèle avant qu’elles n’encombrent l’historique réel des conversations, avec un rapport CLI dédié à leur examen. [#91057](https://github.com/openclaw/openclaw/pull/91057) Merci à @jalehman et @wangwllu.
- `openclaw export-trajectory` et `/export-trajectory` incluent désormais les messages expurgés des anciennes sessions de version 1 au lieu de produire une transcription vide malgré une opération réussie. [#93814](https://github.com/openclaw/openclaw/pull/93814) Merci à @yetval.
- Les fichiers de mémoire de session créés autour de `/new` et `/reset` conservent désormais une seule copie de chaque réponse de l’assistant au lieu de dupliquer les réponses des modèles de raisonnement. [#94401](https://github.com/openclaw/openclaw/pull/94401) Merci à @sallyom et @sunnyshu0925.
- Les nouvelles mémoires promues à long terme omettent désormais la transcription brute, le résumé, l’en-tête de session, l’invite de vidage et les éléments parasites de notation, afin que les notes utiles soient plus faciles à trouver. [#94636](https://github.com/openclaw/openclaw/pull/94636) Merci à @josephur, @pinghe-learn et @tayoun.
- Les longues sessions riches en caractères CJK utilisant un moteur de contexte comme lossless-claw ne s’arrêtent plus sur un précontrôle `prompt too large` erroné après que le moteur a déjà géré l’invite. [#95342](https://github.com/openclaw/openclaw/pull/95342) Merci à @jalehman et @mpz4life.
- La taille des résultats d’outils volumineux en chinois, japonais et coréen est désormais estimée plus précisément, ce qui réduit les interruptions erronées dues au dépassement du contexte et les Compactions prématurées. [#95447](https://github.com/openclaw/openclaw/pull/95447) Merci à @moguangyu5-design et @vincentkoc.
- `openclaw doctor --fix` peut désormais transférer les anciens index Memory Core issus des mises à niveau de la version 2026.6.9 vers le stockage actuel sans imposer une nouvelle intégration complète. [#95631](https://github.com/openclaw/openclaw/pull/95631) Merci à @mushuiyu886 et @vincentkoc.
- Les exécutions intégrées abandonnées ou arrivées à expiration libèrent désormais le verrou d’écriture de leur session, afin que le message suivant puisse être traité sans attendre plusieurs minutes ni nettoyer manuellement les fichiers. [#96100](https://github.com/openclaw/openclaw/pull/96100) Merci à @richwilson-bloom, @sallyom et @xialonglee.
- La taille des invites contenant des caractères est-asiatiques pleine chasse est désormais estimée plus précisément, ce qui permet à la gestion du contexte de démarrer avant qu’une requête surdimensionnée n’atteigne le modèle. [#96442](https://github.com/openclaw/openclaw/pull/96442) Merci à @lin-hongkuan.
- Dreaming exclut désormais de son ensemble de sessions apprises les archives de transcription supprimées ou réinitialisées ainsi que les conversations enfants créées par Cron, ce qui réduit la duplication de l’historique et le bruit des automatisations sans retirer les archives conservées de la recherche historique. [#96517](https://github.com/openclaw/openclaw/pull/96517) Merci à @adam-researchh, @jalehman et @xialonglee.
- L’historique compacté de l’agent répertorie désormais les véritables échecs d’outils au lieu de qualifier à tort et de façon répétée les lancements réussis de sous-agents, y compris lorsque d’anciens enregistrements de transcription contiennent l’indicateur d’erreur incorrect. [#96842](https://github.com/openclaw/openclaw/pull/96842) Merci à @nxmxbbd.
- Les réponses qui chevauchent une réinitialisation quotidienne ou pour inactivité automatique restent désormais regroupées dans une seule transcription accessible au lieu de perdre les sorties ultérieures. [#97164](https://github.com/openclaw/openclaw/pull/97164) Merci à @joshavant et @yetval.
- Les entrées de transcription non valides provoquent désormais une erreur d’écriture visible au lieu de devenir des lignes JSONL `undefined` qui disparaissent silencieusement après le rechargement. [#97356](https://github.com/openclaw/openclaw/pull/97356) Merci à @miorbnli.
- Les résumés d’importation de Memory Wiki raccourcissent désormais le texte ChatGPT contenant des emoji sans laisser de caractères de remplacement corrompus. [#97362](https://github.com/openclaw/openclaw/pull/97362) Merci à @mushuiyu886.
- `openclaw sessions cleanup --fix-missing` préserve désormais les nouvelles sessions Cron dotées de transcriptions valides et signale clairement les entrées réparées. [#97495](https://github.com/openclaw/openclaw/pull/97495) Merci à @qingminglong.
- Les longues conversations reprennent désormais la Compaction après les déconnexions temporaires du fournisseur, au lieu de remplacer l’historique utile par un résumé substitutif dégradé. [#97504](https://github.com/openclaw/openclaw/pull/97504) Merci à @hugenshen.
- La récupération automatique après les conflits d’ordre des rôles du fournisseur archive désormais la totalité de la transcription précédente dans un fichier JSONL horodaté avant de relire une portion finale plus courte. [#97544](https://github.com/openclaw/openclaw/pull/97544) Merci à @yungchentang.
- Les longues conversations utilisant `historyLimit` ou `dmHistoryLimit` conservent désormais leur résumé antérieur enregistré après la Compaction, ce qui aide l’assistant à se souvenir du contexte précédent. [#97591](https://github.com/openclaw/openclaw/pull/97591) Merci à @liuhao1024 et @yetval.
- La reprise du travail depuis un projet n’ouvre désormais que la session d’agent enregistrée pour ce projet, empêchant ainsi le mélange de transcriptions sans rapport. [#97785](https://github.com/openclaw/openclaw/pull/97785) Voir aussi [#96542](https://github.com/openclaw/openclaw/issues/96542). Merci à @qingminglong et @yetval.
- `openclaw memory status` avertit désormais lorsque les transcriptions de session doivent encore être indexées, au lieu d’indiquer à tort que la mémoire est à jour. [#97857](https://github.com/openclaw/openclaw/pull/97857) Voir aussi [#97814](https://github.com/openclaw/openclaw/issues/97814). Merci à @che10x et @zw-xysk.
- Les conversations de groupe compactées conservent désormais les longs messages identiques provenant de participants différents, tout en supprimant les nouvelles tentatives accidentellement dupliquées d’un même expéditeur. [#98336](https://github.com/openclaw/openclaw/pull/98336) Merci à @sunnyshu0925 et @yetval.
- Les tâches Cron récurrentes de la CLI du fournisseur et les exécutions locales de `openclaw agent` conservent désormais leur conversation existante avec le fournisseur au-delà de la limite de réinitialisation quotidienne, au lieu de perdre silencieusement le contexte. [#98356](https://github.com/openclaw/openclaw/pull/98356) Merci à @yetval.
- Les lectures de résumés et d’importations de transcriptions ferment désormais les fichiers de manière fiable après la détection de données mal formées, empêchant les processus de longue durée d’épuiser progressivement les descripteurs de fichiers. [#98493](https://github.com/openclaw/openclaw/pull/98493) Voir aussi [#98467](https://github.com/openclaw/openclaw/issues/98467). Merci à @wangmiao0668000666 et @zhanglei99586.
- La nouvelle exécution de la synthèse du wiki de mémoire ou des importations ChatGPT ne risque plus d’effacer les notes manuscrites, le frontmatter ou l’état d’importation lorsqu’une page existante ne peut temporairement pas être lue. [#98787](https://github.com/openclaw/openclaw/pull/98787) Merci à @vincentkoc et @yetval.
- Discord, WebChat et les autres conversations en cours peuvent continuer à recevoir des réponses lorsqu’une activité en arrière-plan accède à la même session pendant le démarrage de la réponse, sans faux conflit d’initialisation ni perte de message. [#98835](https://github.com/openclaw/openclaw/pull/98835) Voir aussi [#98672](https://github.com/openclaw/openclaw/issues/98672). Merci à @aaronfaby, @jalehman et @moguangyu5-design.
- Les sessions rouvertes peuvent désormais relire correctement les anciens résultats d’outils sous forme de chaîne ou d’objet unique, au lieu de considérer une sortie réussie comme vide ou d’échouer en raison de sa forme enregistrée. [#98891](https://github.com/openclaw/openclaw/pull/98891) Voir aussi [#98825](https://github.com/openclaw/openclaw/issues/98825). Merci à @obviyus.
- Les sessions anciennes ou importées contenant des messages d’assistant sous forme de chaînes simples sont désormais relues correctement dans les parcours du fournisseur et de diffusion en continu, au lieu d’envoyer un historique de conversation mal formé. [#98908](https://github.com/openclaw/openclaw/pull/98908) Merci à @obviyus.
- Les agents des sessions directes de longue durée sur WebChat, Discord et d’autres plateformes peuvent continuer à lire les nouvelles sorties de commandes, de fichiers, du navigateur et d’état, au lieu de les voir disparaître ou se transformer en un substitut d’image. [#98955](https://github.com/openclaw/openclaw/pull/98955) Voir aussi [#98874](https://github.com/openclaw/openclaw/issues/98874). Merci à @lamkan0210 et @momothemage.
- La réinitialisation d’un salon multi-agent rétablit désormais rapidement la livraison des messages, au lieu de bloquer pendant plusieurs minutes les accusés de réception et les réponses en file d’attente de la plupart des agents. [#99091](https://github.com/openclaw/openclaw/pull/99091) Merci à @gorkem2020 et @zengwen-dt.
- Les longues conversations Codex faisant un usage intensif des outils peuvent désormais être compactées à une véritable limite de l’historique et se poursuivre avec un résumé des résultats d’outils pertinents, au lieu de conserver la transcription complète. [#99391](https://github.com/openclaw/openclaw/pull/99391) Voir aussi [#99375](https://github.com/openclaw/openclaw/issues/99375). Merci à @imchloe92 et @lzy3538.
- Les suivis rapides dans une même discussion ne bloquent plus les deux messages pendant que la première réponse automatique se termine. [#99549](https://github.com/openclaw/openclaw/pull/99549) Merci à @shagrat2.
- Les réponses interactives reposant sur la CLI Claude conservent désormais leur session enregistrée de manière plus cohérente, préservant la continuité et réduisant les relectures répétées de l’historique complet. [#99595](https://github.com/openclaw/openclaw/pull/99595) Voir aussi [#99372](https://github.com/openclaw/openclaw/issues/99372). Merci à @obviyus.
- Les agents reposant sur une CLI dans les discussions de groupe à plusieurs personnes conservent désormais le contexte conversationnel lorsque les participants alternent, sans étendre les autorisations d’outils des personnes autres que le propriétaire. [#99640](https://github.com/openclaw/openclaw/pull/99640) Voir aussi [#99633](https://github.com/openclaw/openclaw/issues/99633). Merci à @obviyus.
- Le rechargement de l’historique des discussions de la CLI Claude n’affiche plus l’enveloppe interne de réinitialisation d’OpenClaw comme s’il s’agissait d’un message saisi par l’utilisateur. [#99653](https://github.com/openclaw/openclaw/pull/99653) Voir aussi [#99646](https://github.com/openclaw/openclaw/issues/99646). Merci à @harjothkhara, @jeehut, @vincentkoc et @zoowh.
- Les sessions de modèles locaux conservent désormais les informations de suivi de la Compaction automatique, ce qui réduit les rechargements répétés du contexte et les absences de réponse qu’ils pouvaient provoquer. [#99678](https://github.com/openclaw/openclaw/pull/99678) Voir aussi [#99677](https://github.com/openclaw/openclaw/issues/99677). Merci à @headbouyjb et @vincentkoc.
- Les agents de groupe reposant sur une CLI conservent désormais une même conversation active entre les suivis avec ou sans mention, au lieu de la réinitialiser et de perdre le contexte. [#99722](https://github.com/openclaw/openclaw/pull/99722) Voir aussi [#99696](https://github.com/openclaw/openclaw/issues/99696). Merci à @obviyus.
- Les longues sessions d’agent faisant un usage intensif des outils conservent désormais pour le modèle le résultat le plus récent d’une commande, d’un fichier ou du navigateur, tout en raccourcissant d’abord l’historique plus ancien. [#99756](https://github.com/openclaw/openclaw/pull/99756) Merci à @acosx.
- Les agents reposant sur une CLI maintiennent désormais la continuité de la conversation lors des modifications qui concernent uniquement le prompt, évitant les redémarrages à froid inutiles tout en continuant à se réinitialiser lorsque les conditions de sécurité ou d’exécution l’exigent. [#99822](https://github.com/openclaw/openclaw/pull/99822) Voir aussi [#99729](https://github.com/openclaw/openclaw/issues/99729). Merci à @obviyus.
- L’historique importé de la CLI Claude conserve désormais la visibilité des échanges contenant uniquement des images ou comportant des pièces jointes lors de la suppression de l’ancien texte vide de réinitialisation. [#99839](https://github.com/openclaw/openclaw/pull/99839) Merci à @vincentkoc.
- Le repli vers un autre modèle de la CLI Claude transmet désormais la séquence précédente d’appels d’outils avec les résultats de ces outils, fournissant au modèle de remplacement suffisamment de contexte pour poursuivre de manière cohérente. [#99851](https://github.com/openclaw/openclaw/pull/99851) Merci à @vincentkoc.
- Les longues sessions d’outils Anthropic mises en cache sont désormais compactées à proximité du seuil de contexte configuré, au lieu d’interrompre prématurément le travail parce que le cumul des jetons du cache semblait correspondre au contexte actif. [#99864](https://github.com/openclaw/openclaw/pull/99864) Merci à @jrex-jooni, @lzy3538 et @vincentkoc.
- Les agents de longue durée dotés de grandes fenêtres de contexte conservent désormais les nouvelles sorties d’outils, effectuent une Compaction sous la pression globale et avertissent les utilisateurs d’exécuter `/compact` ou `/new` si la pression persiste. [#100077](https://github.com/openclaw/openclaw/pull/100077) Merci à @obviyus.
- Les agents de longue durée peuvent désormais récupérer la sortie complète des commandes et le contenu tronqué de `web_fetch` après le nettoyage de l’historique, ce qui réduit la répétition de tâches coûteuses et la perte du contexte des pages. [#100135](https://github.com/openclaw/openclaw/pull/100135) Merci à @obviyus.
- L’historique reposant sur une transcription considère désormais un fichier manquant comme vide, tout en signalant clairement les véritables échecs d’accès, de répertoire ou de flux, au lieu de laisser des résultats partiels ou non gérés. [#100524](https://github.com/openclaw/openclaw/pull/100524) Merci à @cxbasdev et @zhanglei99586.
- Les échecs temporaires de maintenance de la mémoire ne remplacent plus la réponse de l’agent, et les sessions qui restent excessivement volumineuses peuvent être restaurées dans une nouvelle session tout en préservant la transcription précédente. [#100618](https://github.com/openclaw/openclaw/pull/100618) Merci à @jerry-xin et @rhclaw.
- Les modèles locaux à faible capacité de contexte peuvent désormais commencer et poursuivre des conversations sans entrer immédiatement dans une boucle de Compaction due au dépassement avant que suffisamment d’espace utile soit disponible pour le prompt. [#100621](https://github.com/openclaw/openclaw/pull/100621) Merci à @vincentkoc.
- Les longues sessions compactées par étapes préservent désormais un ordre plus clair de l’ancien vers le récent lorsque les résumés sont combinés, ce qui réduit le risque qu’un contexte obsolète paraisse tout aussi récent. [#100684](https://github.com/openclaw/openclaw/pull/100684) Merci à @vincentkoc et @zw-xysk.
- Les échecs temporaires de lecture des transcriptions ne déstabilisent plus les diagnostics des journaux de session et n’autorisent plus une analyse incomplète de l’utilisation à remplacer le dernier cache complet des coûts comme s’il était à jour. [#101062](https://github.com/openclaw/openclaw/pull/101062) Merci à @cxbasdev et @vincentkoc.
- Les plugins de moteur de contexte peuvent désormais identifier la session exacte qui se poursuit après la Compaction, tandis que les anciennes intégrations utilisant `sessionFile` restent compatibles. [#101182](https://github.com/openclaw/openclaw/pull/101182) Merci à @jalehman.
- Une première interaction composée uniquement d’une commande dans un flux de réponse automatique conserve désormais la mise à jour de sa session, même lorsqu’aucune ligne de session n’existait auparavant. [76d686c](https://github.com/openclaw/openclaw/commit/76d686cf61f29b4b26ef67066d0b88f405ddfe5c)
- Memory Core préserve désormais dans les balises les concepts autonomes courts tels que `kv` et `s3`, améliorant ainsi leur rappel sans les faire correspondre à l’intérieur de mots sans rapport. [#96304](https://github.com/openclaw/openclaw/pull/96304) Merci à @ly-wang19.
- Le Dreaming de la mémoire enregistre désormais des résultats structurés de réussite ou d’échec pour les phases légère, REM et profonde, afin que les tableaux de bord et les contrôles d’intégrité puissent les surveiller de manière fiable. [#97723](https://github.com/openclaw/openclaw/pull/97723) Merci à @lg320531124 et @momothemage.
- `openclaw wiki lint` ignore désormais les motifs ressemblant à des liens wiki dans les exemples de code, afin que les véritables liens rompus de Memory Wiki soient plus faciles à repérer. [#97954](https://github.com/openclaw/openclaw/pull/97954) Merci à @durambar, @liuhao1024 et @vincentkoc.
- Les utilisateurs de Mac bénéficient désormais d’une protection renforcée des données SQLite locales d’OpenClaw après une coupure de courant soudaine ou une panne du système d’exploitation, sans aucune modification de configuration. [#99067](https://github.com/openclaw/openclaw/pull/99067) Merci à @ooiuuii.
- `openclaw wiki lint` reconnaît désormais les liens Obsidian importés valides selon leur titre, leur slug, leur chemin sans fragment ou le suffixe du chemin source, ce qui réduit les faux avertissements de liens rompus. [#100017](https://github.com/openclaw/openclaw/pull/100017) Merci à @ishangodawatta, @k-kerrigan et @vincentkoc.
- L’état de la passerelle du wiki de mémoire renvoie désormais un avertissement exploitable au lieu de planter sur des artefacts de plugin mal formés, et `readMemoryArtifacts: false` empêche désormais ces lectures de manière fiable. [#100900](https://github.com/openclaw/openclaw/pull/100900) Merci à @huveewomg.
- La recherche et la récupération dans le wiki expliquent désormais lorsqu’un Plugin de mémoire ancien ou partiel ne prend pas en charge la recherche partagée et proposent une solution de contournement pratique au lieu d’exposer une TypeError brute. [#100902](https://github.com/openclaw/openclaw/pull/100902) Merci à @huveewomg, @vincentkoc et @xuanmingguo.
- Les agents intégrés reçoivent désormais des résumés bien formés des longues valeurs multimédias ou JSON, au lieu de caractères corrompus aux limites de troncature Unicode. [#101311](https://github.com/openclaw/openclaw/pull/101311) Merci à @alix-007.
- Les mémoires contenant des émojis ou des caractères CJK supplémentaires peuvent désormais être indexées sans que du texte mal formé ne bloque l’opération. [#101574](https://github.com/openclaw/openclaw/pull/101574) Merci à @jensenwang560-blip.
- Lorsque la lecture principale d’une mémoire et son complément wiki échouent tous deux, `memory_get corpus=all` renvoie désormais l’erreur de lecture structurée d’origine au lieu de faire échouer l’appel d’outil. [#101902](https://github.com/openclaw/openclaw/pull/101902) Merci à @aniruddhaadak80, @vincentkoc et @zw-xysk.
- Les journaux de débogage de l’index de mémoire indiquent désormais si un lot d’incorporations s’est terminé ou a échoué, ce qui facilite le suivi des problèmes d’indexation. [#94732](https://github.com/openclaw/openclaw/pull/94732) Merci à @doubleji817-lang et @xydt-tanshanshan.
- `openclaw memory status --fix` répare désormais l’état du corpus de sessions sans confondre les enregistrements sains de mémoire quotidienne avec des données obsolètes. [#93389](https://github.com/openclaw/openclaw/pull/93389) Merci à @alix-007 et @vincentkoc.
- `openclaw memory status` n’affiche plus de totaux d’indexation de sessions impossibles, où le nombre de fichiers indexés dépasse le nombre total de fichiers. [#95452](https://github.com/openclaw/openclaw/pull/95452) Merci à @buyitsydney et @liuhao1024.
- Les lignes de transcription mal formées produisent désormais un avertissement global indiquant le nombre d’éléments ignorés et chargés, tandis que le reste de l’historique de session exploitable continue à se charger. [#98669](https://github.com/openclaw/openclaw/pull/98669) Merci à @cxbasdev.
- Les sessions renommées avec `/name` conservent désormais ce nom personnalisé dans les listes de sessions, au lieu de revenir à un titre automatique ou à un libellé semblable à un UUID. [#98841](https://github.com/openclaw/openclaw/pull/98841) Voir aussi [#98742](https://github.com/openclaw/openclaw/issues/98742). Merci à @bsg2000 et @sunnyshu0925.
- La préparation de la réinitialisation d’une session de longue durée évite désormais d’analyser l’intégralité de la transcription, ce qui réduit l’activité des fichiers au démarrage et l’utilisation de la mémoire à mesure que l’historique s’allonge. [#99335](https://github.com/openclaw/openclaw/pull/99335) Merci à @gmschasiepen et @momothemage.
- Les outils de transcription peuvent désormais reconnaître les miroirs de distribution aux canaux comme des données de suivi d’OpenClaw, au lieu de les confondre avec une sortie d’OpenAI Responses. [#99855](https://github.com/openclaw/openclaw/pull/99855) Merci à @vincentkoc.
- Une conversation de l’agent principal terminée avec succès se poursuit désormais dans la même session au message suivant, au lieu de se réinitialiser de manière inattendue et d’archiver sa transcription. [#99985](https://github.com/openclaw/openclaw/pull/99985) Merci à @sunnyshu0925.
- Les exécutions ACP avec proxy de débogage s’arrêtent désormais proprement, marquent les sessions de capture comme terminées et ferment leurs bases de données de capture sans signaler d’erreur de base de données intempestive. [#100827](https://github.com/openclaw/openclaw/pull/100827) Merci à @amknight.
- Les détails d’audit des fournisseurs de médias contenant des émojis restent désormais valides et lisibles lorsqu’ils sont raccourcis, au lieu de se terminer par des caractères mal formés. [#101298](https://github.com/openclaw/openclaw/pull/101298) Merci à @alix-007.
- Les longues données d’invite d’agent contenant des émojis ou d’autres caractères Unicode appariés restent désormais bien formées lorsqu’elles sont limitées, ce qui évite du texte corrompu dans le contexte des agents et des automatisations. [#101303](https://github.com/openclaw/openclaw/pull/101303) Merci à @alix-007.
- Les mémoires archivées autour des messages utilisateur qui commencent par `[cron:]` restent consultables après la réinitialisation ou la suppression d’une session, tandis que les véritables archives générées par Cron restent masquées. [#101322](https://github.com/openclaw/openclaw/pull/101322) Merci à @ly-wang19.
- `openclaw sessions tail` rejette désormais les instantanés et mises à jour de trajectoire trop volumineux avec une erreur de limite explicite avant qu’ils ne puissent épuiser la mémoire. [#101450](https://github.com/openclaw/openclaw/pull/101450) Merci à @cxbasdev et @vincentkoc.
- Les longs messages des journaux d’utilisation et de session tronquent désormais proprement les émojis au lieu d’afficher des artefacts de caractères mal formés. [#101517](https://github.com/openclaw/openclaw/pull/101517) Merci à @maweibin.
- Les libellés et les noms d’affichage des sessions du tableau de bord restent désormais associés lorsqu’une session est renouvelée après une journée ou une période d’inactivité. [#101576](https://github.com/openclaw/openclaw/pull/101576) Merci à @merlin-zhou et @zengwen-dt.
- Les diagnostics de mémoire de session affichent désormais les chemins corrects de l’espace de travail et des fichiers de mémoire pour les répertoires voisins dont les noms ressemblent simplement au chemin du dossier personnel de l’utilisateur. [#101577](https://github.com/openclaw/openclaw/pull/101577) Merci à @cxbasdev.

</Accordion>

## Agents, travail en arrière-plan et connexions

### Maintenir l’avancement du travail et assurer la remise des réponses

Le [Gateway](/fr/gateway) démarre, se connecte, se recharge et signale désormais son état de santé avec un comportement plus clair concernant la configuration, le réseau, le routage des tâches et la remise des résultats. Les agents sont moins susceptibles de perdre l’espace de travail ou la conversation sélectionnés, le travail en arrière-plan atteint plus systématiquement la bonne destination et les échecs d’outils peuvent rester à l’écart de la progression affichée dans la discussion lorsqu’une réponse finale utile reste disponible.

Les parcours du [protocole Gateway](/fr/gateway/protocol) et de [récupération après redémarrage](/fr/gateway/restart-recovery) rejettent également plus clairement les états non valides et maintiennent les fonctions d’inspection disponibles lors des échecs courants du cycle de vie. Le chargement des Skills et la surcharge des invites sont également plus stables, les [contrôles des Skills](/fr/cli/skills) évitant les opérations inutiles et préservant les empreintes de cache pour le texte que les fournisseurs reçoivent réellement.

<Accordion title="Sources et contributeurs">

- Les sessions de sous-agents héritées suivent désormais leur niveau d’imbrication réel, de sorte que les limites et contrôles des agents imbriqués ne reviennent plus au comportement de premier niveau. [#54593](https://github.com/openclaw/openclaw/pull/54593) Merci à @ruanrrn.
- Les tâches Cron arrivées à expiration, les requêtes d’agent expirées et les clients HTTP déconnectés s’arrêtent désormais rapidement au lieu de consacrer davantage de temps et d’appels au fournisseur au repli de modèle. [#62682](https://github.com/openclaw/openclaw/pull/62682) Merci à @altaywtf, @cinapbot, @simonusa.
- Les réponses des canaux peuvent désormais reprendre dès la fin d’un tour d’agent intégré, au lieu d’attendre environ 50 secondes la gestion administrative de l’authentification après l’exécution. [#85829](https://github.com/openclaw/openclaw/pull/85829) Merci à @turbotheturtle.
- Les défaillances de fournisseur contenant des BigInt, des objets circulaires ou d’autres valeurs inhabituelles produisent désormais l’erreur de transport structurée prévue au lieu de faire planter le chemin de signalement des erreurs. [#88401](https://github.com/openclaw/openclaw/pull/88401) Merci à @pluviobyte.
- Le mode allégé expérimental pour les modèles locaux propose désormais par défaut un menu d’outils plus restreint pour les modèles aux ressources limitées, tandis que les opérateurs peuvent conserver explicitement les outils multimédias, vocaux ou PDF au moyen de listes d’autorisation. [#88881](https://github.com/openclaw/openclaw/pull/88881) Merci à @vincentkoc.
- Les agents intégrés conservent désormais les limites de réserve de Compaction configurées lorsque les mécanismes de protection de l’exécution enregistrent les paramètres, ce qui réduit les diminutions inattendues du budget de contexte pendant les travaux prolongés. [#92237](https://github.com/openclaw/openclaw/pull/92237) Merci à @sercada.
- Les notifications d’achèvement des sous-agents n’arrivent désormais qu’une seule fois au lieu d’être répétées lorsque la session demandeuse change pendant la livraison. [#92274](https://github.com/openclaw/openclaw/pull/92274) Associé à [#91527](https://github.com/openclaw/openclaw/issues/91527). Merci à @fsdwen, @obviyus, @zackchiutw.
- Les tâches Cron isolées peuvent annoncer un résultat intersession sans réinjecter la réponse du destinataire dans l’exécution Cron et créer des boucles de messages en double. [#92283](https://github.com/openclaw/openclaw/pull/92283) Associé à [#92257](https://github.com/openclaw/openclaw/issues/92257). Merci à @harjothkhara, @nailujac, @vincentkoc.
- Demander à un agent de mémoriser une préférence ne déclenche plus l’avertissement sans rapport utilisé pour les promesses de planification d’un rappel automatique. [#93862](https://github.com/openclaw/openclaw/pull/93862) Merci à @arkyu2077.
- Les tours Slack et des canaux similaires utilisant des plugins qui injectent du contexte n’envoient désormais chaque libellé système entrant au modèle qu’une seule fois au lieu de le dupliquer. [#95349](https://github.com/openclaw/openclaw/pull/95349) Merci à @gorkem2020, @openperf, @vincentkoc.
- Les sessions Anthropic bloquées par une erreur de relecture de signature de réflexion peuvent désormais réessayer une fois sans les blocs de réflexion non valides et continuer sans `/new` ni réparation de la transcription. [#95430](https://github.com/openclaw/openclaw/pull/95430) Associé à [#95429](https://github.com/openclaw/openclaw/issues/95429). Merci à @alexelgier, @lzyyzznl, @vincentkoc.
- Les journaux d’agent tronqués et les aperçus de diagnostic conservent désormais intacts les émojis et les autres caractères Unicode étendus au point de coupure. [#96296](https://github.com/openclaw/openclaw/pull/96296) Merci à @ly-wang19.
- Les exécutions `openclaw agent --local` intégrées utilisant des fournisseurs compatibles avec OpenAI signalent et enregistrent désormais l’utilisation des jetons diffusés au lieu d’afficher zéro, ce qui améliore les enregistrements de session, de contexte, de coût et de surveillance. [#96523](https://github.com/openclaw/openclaw/pull/96523) Merci à @ly85206559, @vincentkoc.
- Les lancements réussis de sous-agents par des agents intégrés restent désormais indiqués comme réussis dans les transcriptions et les résumés de Compaction ultérieurs au lieu d’être enregistrés comme des échecs d’outil, tandis que les véritables échecs de lancement restent visibles. [#96851](https://github.com/openclaw/openclaw/pull/96851) Merci à @neomail2, @parveshsaini.
- Les transcriptions et les résumés de Compaction de l’environnement d’exécution Codex excluent désormais des enregistrements d’échec les lancements réussis de sous-agents et les opérations sur les objectifs, tandis que les véritables échecs restent visibles et que les hooks de lancement accepté peuvent s’exécuter. [#96856](https://github.com/openclaw/openclaw/pull/96856) Merci à @nxmxbbd.
- Les longues lignes grep des agents tronquent désormais proprement les émojis et les caractères CJK peu courants au lieu de se terminer par des symboles de remplacement corrompus. [#97559](https://github.com/openclaw/openclaw/pull/97559) Merci à @zenglingbiao.
- Les PDF et autres documents Telegram fournissent désormais aux agents un chemin local utilisable afin que les outils d’exécution ordinaires puissent ouvrir la pièce jointe. [#97647](https://github.com/openclaw/openclaw/pull/97647) Merci à @gallup007, @joshavant.
- Les agents peuvent désormais lire les résultats structurés JSON et ceux des outils de ressources pendant la relecture du fournisseur au lieu de recevoir un résultat vide ou un espace réservé multimédia générique. [#97742](https://github.com/openclaw/openclaw/pull/97742) Merci à @obviyus.
- Les sessions comportant une sortie de commande ou des résumés volumineux effectuent désormais une Compaction avant de dépasser le contexte du modèle, ce qui évite les requêtes au fournisseur ayant échoué et les budgets de jetons trompeurs. [#97861](https://github.com/openclaw/openclaw/pull/97861) Merci à @yetval.
- Les sessions longues, utilisant intensivement les outils ou ayant subi une Compaction, budgétisent désormais la taille réelle de la sortie des commandes et des résumés avant d’envoyer une invite, ce qui réduit les échecs dus au dépassement du contexte. [#97928](https://github.com/openclaw/openclaw/pull/97928) Associé à [#97927](https://github.com/openclaw/openclaw/issues/97927). Merci à @liuhao1024, @yetval.
- Les conversations de la CLI Claude qui épuisent leur contexte récupèrent désormais automatiquement dans une nouvelle session réinitialisée, et les nouvelles tentatives après expiration conservent les fichiers temporaires nécessaires à leur achèvement. [#98934](https://github.com/openclaw/openclaw/pull/98934) Associé à [#98897](https://github.com/openclaw/openclaw/issues/98897). Merci à @obviyus.
- Les tours d’agent CLI locaux reposant sur Ollama peuvent désormais continuer lorsque le moteur de contexte signale une transcription ayant déjà subi une Compaction, permettant ainsi à la réponse de l’assistant ou au résultat de l’outil MCP de parvenir à l’utilisateur. [#99136](https://github.com/openclaw/openclaw/pull/99136) Merci à @mushuiyu886, @peterskwang, @pkoserowski, @psedd.
- Les exécutions reposant sur Codex peuvent désormais fournir une réponse finale achevée au lieu d’expirer ou de sembler interrompues lorsque l’événement d’achèvement final est absent. [#99217](https://github.com/openclaw/openclaw/pull/99217) Merci à @100yenadmin, @fuller-stack-dev, @sedrak-hovhannisyan.
- Les requêtes de discussion interactive qui se terminent par un échec terminal reçoivent désormais une réponse d’erreur visible au lieu de sembler ignorées. [#99304](https://github.com/openclaw/openclaw/pull/99304) Merci à @grox2012, @moeedahmed.
- Les sous-agents démarrés avec succès restent désormais visibles dans `/subagents list` et `subagents(action="list")`, y compris lorsque des sessions différentes détiennent le contrôle et gèrent l’achèvement. [#99410](https://github.com/openclaw/openclaw/pull/99410) Associé à [#75593](https://github.com/openclaw/openclaw/issues/75593). Merci à @aaajiao, @sheyanmin.
- Les agents du serveur d’application Codex peuvent de nouveau répertorier les agents autorisés, lancer des sous-agents OpenClaw ou ACP et céder la main pendant le travail délégué sans que les Heartbeats de reprise rencontrent des définitions d’outils incompatibles. [#99561](https://github.com/openclaw/openclaw/pull/99561) Associé à [#99464](https://github.com/openclaw/openclaw/issues/99464). Merci à @100yenadmin, @joshavant.
- OpenClaw ne plante plus lorsqu’un flux de sortie d’un processus enfant supervisé échoue immédiatement après son lancement. [#99802](https://github.com/openclaw/openclaw/pull/99802) Merci à @cxbasdev, @vincentkoc.
- Les sessions stdio MCP signalent désormais les défaillances du tube stderr comme des erreurs de transport sans arrêter OpenClaw ni perdre les diagnostics disponibles. [#99803](https://github.com/openclaw/openclaw/pull/99803) Merci à @cxbasdev, @vincentkoc.
- Les proxys MCP ACPX transforment désormais les tubes d’entrée ou de sortie fermés en une défaillance claire du proxy au lieu d’un plantage non intercepté du flux Node. [#99852](https://github.com/openclaw/openclaw/pull/99852) Merci à @sunlit-deng, @vincentkoc.
- Les images jointes à une invite reposant sur la CLI survivent désormais au repli du modèle intégré, préservant le contexte visuel nécessaire pour répondre. [#99891](https://github.com/openclaw/openclaw/pull/99891) Merci à @vincentkoc.
- Les messages qui mélangent des images incorporées et déportées préservent désormais la position de chaque pièce jointe afin que les instructions au modèle dépendant de l’ordre restent exactes. [#99902](https://github.com/openclaw/openclaw/pull/99902) Merci à @vincentkoc.
- Les agents demandeurs reçoivent désormais un suivi lorsqu’une livraison `sessions_send` acceptée échoue ultérieurement parce que la session cible est verrouillée, afin qu’ils puissent réessayer ou choisir un autre itinéraire. [#99907](https://github.com/openclaw/openclaw/pull/99907) Merci à @849261680, @alex-heyuqing.
- Les opérateurs peuvent désormais définir `OPENCLAW_SANDBOX_IMAGE` afin de créer des balises d’image de bac à sable propres à une révision pour un déploiement et un retour arrière contrôlés. [#99915](https://github.com/openclaw/openclaw/pull/99915)
- Les sessions d’agent sont désormais moins susceptibles de perdre leur sortie, de modifier une mise en forme sans rapport, de se bloquer après des erreurs temporaires du fournisseur, de rejeter les images BMP ou d’interrompre les connexions ChatGPT prolongées. [#99949](https://github.com/openclaw/openclaw/pull/99949)
- Les images de l’invite actuelle parviennent désormais aux tentatives de repli de la CLI dans le bon ordre, sans récupérer de références d’images obsolètes provenant de tentatives antérieures ou de l’historique. [#100035](https://github.com/openclaw/openclaw/pull/100035) Merci à @vincentkoc.
- Les longues exécutions reposant sur la CLI Claude affichent désormais fidèlement l’activité `Thinking... (~N tokens)` pour les travaux directs et mis en file d’attente, au lieu de sembler bloquées lorsqu’aucun texte de raisonnement lisible n’est disponible. [#100148](https://github.com/openclaw/openclaw/pull/100148) Merci à @obviyus.
- Les corrections de cas limites préservent désormais le texte littéral de la mémoire et les caractères Unicode valides, améliorent le nettoyage des appels vocaux et les vérifications des ports, indiquent avec exactitude les modèles Claude et les limites de contexte, et conservent les erreurs de connexion ClickClack utiles. [#100204](https://github.com/openclaw/openclaw/pull/100204) Merci à @cxbasdev, @harjothkhara, @lilan0125, @lin-hongkuan, @liuhao1024, @mikasa0818, @pandah97, @sunlit-deng, @zoowh.
- Les émojis et autres caractères supplémentaires restent désormais intacts lorsque les longs textes de progression d’un agent ou de rappel d’Active Memory sont raccourcis. [#100244](https://github.com/openclaw/openclaw/pull/100244) Merci à @vincentkoc, @xialonglee, @zengwen-dt.
- Les sous-agents et autres clients MCP de bouclage HTTP peuvent de nouveau recevoir des captures d’écran du navigateur ainsi que des résultats valides d’image ou de ressource intégrée sans échec de schéma. [#100336](https://github.com/openclaw/openclaw/pull/100336) Merci à @tzy-17.
- Les tours interactifs qui se terminent réellement sans sortie visible envoient désormais une réponse d’échec claire, tandis que le silence intentionnel et les actions déjà achevées restent silencieux. [#100474](https://github.com/openclaw/openclaw/pull/100474)
- Les réponses multimédias groupées peuvent désormais s’achever avec succès après leur livraison sans signaler à tort un échec lié au changement de session, tandis que les vérifications de propriété de la conversation active restent appliquées. [#100490](https://github.com/openclaw/openclaw/pull/100490) Merci à @scotthuang.
- Les nouveaux espaces de travail de la CLI Claude exécutent désormais un `BOOTSTRAP.md` en attente lors de la première réponse afin que les étapes requises d’identité, de mémoire et de configuration soient terminées avant la conversation normale. [#100560](https://github.com/openclaw/openclaw/pull/100560) Merci à @bill-starfoundry, @kruegerb, @vincentkoc.
- Les réponses achevées des tâches utilisant des outils parviennent désormais à l’utilisateur au lieu d’être remplacées par une erreur de tour incomplet, les métadonnées d’exécution étant jointes à la même réponse finale. [#100655](https://github.com/openclaw/openclaw/pull/100655) Merci à @liuwqgit.
- La capture et la validation des instantanés du shell ne font plus planter OpenClaw lorsqu’un tube de sortie inutilisé d’un processus auxiliaire signale une erreur de flux. [#100744](https://github.com/openclaw/openclaw/pull/100744) Merci à @lsr911, @vincentkoc.
- Un échec de flux `system.run` de l’hôte Node renvoie désormais un résultat d’échec clair au lieu de faire planter l’hôte Node, et un processus enfant qui ne s’arrête pas est terminé après une seconde. [#100849](https://github.com/openclaw/openclaw/pull/100849) Merci à @cxbasdev.
- Les agents de longue durée risquent moins de perdre, pendant un tour, les instructions de l’espace de travail telles que `AGENTS.md`, `SOUL.md` ou `MEMORY.md` lors d’une erreur temporaire du système de fichiers. [#100910](https://github.com/openclaw/openclaw/pull/100910) Merci à @masatohoshino.
- Les commandes de fichiers et de shell de bac à sable reposant sur Docker échouent désormais rapidement avec l’erreur d’origine du flux d’entrée, au lieu de planter, de se bloquer ou de rester en attente. [#101032](https://github.com/openclaw/openclaw/pull/101032) Merci à @cxbasdev.
- Les sessions Codex existantes peuvent reprendre leurs fils de discussion associés de manière plus fiable après des mises à niveau, des réinitialisations et une Compaction, sans dépendre de fichiers JSON résiduels liés à la transcription. [#101210](https://github.com/openclaw/openclaw/pull/101210)
- Les agents allégés utilisant des modèles locaux peuvent désormais choisir directement l’outil familier `exec` lorsque la politique le permet, tandis que les listes d’autorisation, le bac à sable, les approbations et les hooks existants continuent de régir l’exécution des commandes. [#101607](https://github.com/openclaw/openclaw/pull/101607) Merci à @vincentkoc.
- Le texte raccourci dans les sorties de la CLI, les diagnostics, les messages de plugins, les aperçus, les erreurs, les résumés de tâches et les envois Zalo préserve désormais les emoji complets et les autres caractères supplémentaires. [#101654](https://github.com/openclaw/openclaw/pull/101654) Merci à @lsr911, @maweibin, @wm0018.
- Dans OpenClaw, les noms, libellés, résumés, aperçus, titres et diagnostics longs sont désormais tronqués sans couper les emoji ni les autres caractères Unicode supplémentaires. [#101685](https://github.com/openclaw/openclaw/pull/101685) Merci à @lsr911, @ly85206559, @maweibin, @wings1029.
- Le texte limité dans les recherches Parallel, la Compaction, la télémétrie, la présence, Workboard, les badges et les métadonnées de l’interface de contrôle conserve ou omet désormais des caractères Unicode entiers au lieu de laisser des fragments malformés. [#101711](https://github.com/openclaw/openclaw/pull/101711)
- Les longues réponses diffusées en continu ne sont désormais divisées qu’entre des caractères Unicode complets, ce qui préserve les emoji dans le texte brut et le Markdown délimité, même avec des limites de message strictes. [#104441](https://github.com/openclaw/openclaw/pull/104441) Merci à @mushuiyu886.
- Les exécutions d’agents intégrés qui omettent une clé de session conservent désormais de manière plus fiable le contexte de session de repli prévu. [31a65e0](https://github.com/openclaw/openclaw/commit/31a65e0647ae85eb4c9048051145f07003722caf) Merci à @vincentkoc.
- Les longs messages d’état et les sorties de commandes restent désormais lisibles lorsqu’ils sont raccourcis, sans transformer les emoji ou les caractères non anglais en texte corrompu. [2e7ffca](https://github.com/openclaw/openclaw/commit/2e7ffca8fff001d1d962611a70d76640c920fc6f) Merci à @vincentkoc.
- L’utilisation de `/stop` pendant l’interruption tardive d’une requête ne laisse plus de verrou de session obsolète bloquant le tour suivant dans la même conversation. [f8016c4](https://github.com/openclaw/openclaw/commit/f8016c44a4ba44ba2865938bcb4f7248a91d76fe)
- Un outil personnalisé malformé dans Talk en temps réel ne supprime plus de la session l’outil de consultation intégré ni les autres outils personnalisés valides. [170150a](https://github.com/openclaw/openclaw/commit/170150a306e39204ebe1ab7be47450b73005de1f) Merci à @vincentkoc.
- Les hôtes occupés ou plus lents accordent désormais davantage de temps aux vérifications d’autorisation natives de Codex et aux hooks précédant les outils, ce qui réduit la perte de décisions de politique. [123ec16](https://github.com/openclaw/openclaw/commit/123ec165bb5638ea9587c9e72566c081159bce5c) Merci à @vincentkoc.
- L’achèvement d’un sous-agent natif Codex ayant cédé l’exécution atteint désormais son exécution parente avant le nettoyage de la connexion partagée au serveur d’application. [2f89de8](https://github.com/openclaw/openclaw/commit/2f89de81655accf71f5fac5cdabcdf0c3488eab7) Merci à @vincentkoc.
- Les longues exécutions d’agents peuvent désormais reprendre à partir d’une limite de conversation valide après une récupération de Compaction, au lieu de se bloquer ou de rétrograder à tort le modèle sélectionné. [486033b](https://github.com/openclaw/openclaw/commit/486033b18344d134d089e654ab0dbb278ce69008) Merci à @mettlyz11, @neltomw, @obviyus.
- Les tâches d’agents intégrés disposant explicitement d’un délai d’expiration plus long conservent désormais leur file jusqu’à l’échéance demandée, au lieu d’être récupérées à la limite par défaut. [1437512](https://github.com/openclaw/openclaw/commit/143751282c60a34a6e2ad6c5629f421441929993) Merci à @vincentkoc.
- Une notification Heartbeat correctement distribuée ne laisse plus d’état de récupération obsolète susceptible de bloquer les alertes ou les prises de contact Heartbeat ultérieures. [#83187](https://github.com/openclaw/openclaw/pull/83187) Merci à @agocs.
- Une réponse Codex distribuée via `sourceReplyDeliveryMode: "message_tool_only"` termine désormais rapidement son tour, au lieu de se conclure plus tard comme une réponse incomplète. [#95942](https://github.com/openclaw/openclaw/pull/95942) Merci à @omarshahine.
- Les conversations utilisant des modèles locaux conservent désormais le travail de requête réutilisable lors du passage entre les discussions interactives et les tâches en arrière-plan, évitant ainsi des délais répétés de préchauffage de plusieurs minutes. [#98267](https://github.com/openclaw/openclaw/pull/98267) Voir aussi [#98261](https://github.com/openclaw/openclaw/issues/98261). Merci à @headbouyjb.
- Les clients mobiles, WebChat, de consultation et autres clients `chat.send` peuvent appliquer un niveau de réflexion ponctuel sans perdre la réponse de l’assistant ni voir le message interprété à tort comme une commande textuelle. [#98855](https://github.com/openclaw/openclaw/pull/98855) Merci à @jesse-merhi.
- Les réponses automatiques exécutées dans un bac à sable attendent désormais la fin de la copie des médias distants via SCP et signalent les échecs de transfert sans planter ni effectuer le nettoyage trop tôt. [#100861](https://github.com/openclaw/openclaw/pull/100861) Merci à @cxbasdev.
- Les installations du serveur d’application Codex utilisant la politique d’approbation retirée `on-failure` passent désormais au comportement pris en charge `on-request` sans perdre les associations enregistrées. [70153f7](https://github.com/openclaw/openclaw/commit/70153f7f9c12be2ff025802c019e428047d1f579) Merci à @vincentkoc.
- Les conversations existantes du serveur d’application Codex comportant des outils dynamiques peuvent reprendre malgré la mise à niveau du format d’empreinte des outils, au lieu de démarrer inutilement un fil de remplacement. [3051748](https://github.com/openclaw/openclaw/commit/305174845f38f075bfd5096a0a4912b8d7d2559a) Merci à @vincentkoc.
- Les anciennes associations Codex comportant d’importantes configurations d’outils ou MCP peuvent désormais être migrées sans dépasser la capacité des enregistrements d’état du plugin ni copier les secrets de configuration bruts. [23228b6](https://github.com/openclaw/openclaw/commit/23228b67a47bf32fc9b662d13037757f51d329b8) Merci à @vincentkoc.
- Les installations Codex mises à niveau peuvent désormais terminer la migration des anciennes associations et archiver les anciens fichiers annexes, au lieu de les conserver de manière répétée après une importation partielle antérieure. [39fac06](https://github.com/openclaw/openclaw/commit/39fac06f48745dcd4d7a840f8261631614bb1926) Merci à @vincentkoc.
- Les sessions Codex créées dans la bêta 5 peuvent conserver leur conversation existante après la mise à niveau lorsque la configuration MCP de l’utilisateur reste inchangée, sans conserver son jeton d’autorisation. [272750d](https://github.com/openclaw/openclaw/commit/272750daed354029c1968dce7cd6747163e0957a) Merci à @vincentkoc.
- Les approbations d’exécution terminées ou expirées n’ajoutent plus d’avertissements de suivi trompeurs, ce qui rend les avertissements de distribution restants plus utiles pour repérer les véritables échecs de livraison. [#66685](https://github.com/openclaw/openclaw/pull/66685) Merci à @pfrederiksen.
- Les charges de travail importantes d’agents et de sous-agents exercent désormais moins de pression sur la mémoire du Gateway, car les instantanés des exécutions terminées sont limités tandis que les résultats restent accessibles aux processus actifs en attente. [#77973](https://github.com/openclaw/openclaw/pull/77973) Voir aussi [#77976](https://github.com/openclaw/openclaw/issues/77976). Merci à @fede-kamel, @vincentkoc.
- Les échecs locaux de lecture ou d’écriture des approbations du Gateway renvoient désormais une réponse `UNAVAILABLE` cohérente au lieu d’une erreur générique du gestionnaire. [#79861](https://github.com/openclaw/openclaw/pull/79861) Merci à @martins-oss.
- Les sessions parentes en attente d’un sous-agent reçoivent désormais la phase réelle du délai d’expiration ferme et les horodatages du sous-agent, au lieu d’un délai d’expiration générique. [#89367](https://github.com/openclaw/openclaw/pull/89367) Merci à @pick-cat.
- Les requêtes d’agents comportant plusieurs serveurs MCP initialisent désormais ces serveurs simultanément, ce qui réduit l’attente avant le démarrage du modèle tout en isolant les serveurs lents ou défaillants. [#94230](https://github.com/openclaw/openclaw/pull/94230) Merci à @mmyzwl, @vincentkoc.
- Le redémarrage du Gateway pendant le rechargement différé d’un canal ne démarre plus deux fois le même canal, ce qui évite les conflits de ports de Webhook et les échecs répétés de redémarrage. [#94964](https://github.com/openclaw/openclaw/pull/94964) Voir aussi [#79487](https://github.com/openclaw/openclaw/issues/79487). Merci à @lzyyzznl, @tseller.
- Les outils externes peuvent désormais recevoir un accès au Gateway limité à la session, sans identifiants valables pour l’ensemble du processus ni autorisation d’usurper l’identité d’une autre session, constituant ainsi la base sécurisée de `openclaw attach`. [#96351](https://github.com/openclaw/openclaw/pull/96351) Merci à @anagnorisis2peripeteia, @obviyus.
- Les pièces jointes cycliques malformées ne peuvent plus faire planter la collecte des preuves de livraison des sous-agents, de sorte que la transmission de la réponse s’achève tout en renvoyant les URL des médias accessibles. [#97041](https://github.com/openclaw/openclaw/pull/97041) Merci à @pick-cat.
- Une session parente en attente de plusieurs sous-agents reprend désormais et renvoie leurs résultats combinés lorsque le dernier travail en attente s’achève, sans que l’utilisateur ait à envoyer un autre message. [#97090](https://github.com/openclaw/openclaw/pull/97090) Merci à @galiniliev.
- Les exécutions enfants ACP lancées manuellement apparaissent désormais une seule fois dans le registre des tâches, au lieu de créer des lignes en double visibles par le demandeur. [#97131](https://github.com/openclaw/openclaw/pull/97131) Merci à @moeedahmed.
- Une réponse interrompue au milieu d’un appel d’outil n’exécute ni n’enregistre plus cette action incomplète, ce qui empêche la création accidentelle de sessions enfants et d’autres effets secondaires involontaires. [#97140](https://github.com/openclaw/openclaw/pull/97140) Merci à @galiniliev.
- Les opérateurs peuvent examiner les outils effectifs des sessions globales attribuées à n’importe quel agent configuré, et non plus uniquement à celui par défaut. [#97265](https://github.com/openclaw/openclaw/pull/97265) Merci à @pick-cat.
- Les résultats utiles d’outils JSON, de données de ressources et de CLI restent désormais visibles dans les transcriptions au lieu de disparaître derrière un espace réservé de pièce jointe. [#97268](https://github.com/openclaw/openclaw/pull/97268)
- Les aperçus des limites d’utilisation de Codex et les libellés d’état des forfaits tronquent désormais proprement les emoji et les caractères Unicode peu courants aux limites de leur affichage. [#97299](https://github.com/openclaw/openclaw/pull/97299) Merci à @zenglingbiao.
- L’annulation d’une tâche ACP depuis la CLI atteint désormais l’exécution active détenue par le Gateway, signale les véritables échecs et évite les lignes de tâches actives en double. [#97352](https://github.com/openclaw/openclaw/pull/97352) Merci à @aliahnaf2013-max.
- Un résultat d’outil vide qui n’est pas une image ne devient plus `(see attached image)` dans le contexte d’un agent compatible avec OpenAI, ce qui évite un comportement de suivi trompeur. [#97423](https://github.com/openclaw/openclaw/pull/97423) Merci à @scribe-dandelion-cult.
- Les notifications poussées du relais APNs rejettent désormais les corps de réponse surdimensionnés en tant que `RelayResponseTooLarge`, au lieu d’épuiser la mémoire du Gateway ou de signaler à tort une livraison. [#97550](https://github.com/openclaw/openclaw/pull/97550) Merci à @alix-007.
- `/subagents list` raccourcit désormais les noms longs et les descriptions de tâches contenant des emoji ou des caractères CJK peu courants sans afficher de glyphes corrompus. [#97557](https://github.com/openclaw/openclaw/pull/97557) Merci à @zenglingbiao.
- Les conversations CLI gérées par le fournisseur conservent désormais la même session et la même transcription lors de la réinitialisation quotidienne par défaut, sauf si une politique de réinitialisation explicite ou `/reset` s'applique. [#97931](https://github.com/openclaw/openclaw/pull/97931) Merci à @yetval.
- Les nouveaux fils de discussion reposant sur Codex préservent désormais les applications de plugins configurées, peuvent activer des plugins sélectionnés à distance et exécutent Guardian lors du premier tour natif OpenAI admissible. [#98042](https://github.com/openclaw/openclaw/pull/98042) Merci à @kevinslin.
- Une entrée endommagée de la file de livraison SQLite ne bloque plus la récupération de toutes les autres sessions valides en attente ni les livraisons sortantes après un redémarrage. [#98354](https://github.com/openclaw/openclaw/pull/98354) Merci à @pick-cat.
- Un démarrage bloqué de la CLI Claude ne fait désormais échouer que le tour concerné au lieu d'arrêter le Gateway, et l'activité Heartbeat n'entraîne plus la perte de l'historique de conversation CLI lors du tour utilisateur suivant. [#98933](https://github.com/openclaw/openclaw/pull/98933) Lié à [#98894](https://github.com/openclaw/openclaw/issues/98894), [#98895](https://github.com/openclaw/openclaw/issues/98895). Merci à @obviyus.
- Les exécutions d'agents via la CLI Claude échouent désormais avec un message clair lorsque les outils de messagerie sont indisponibles, récupèrent lorsque Claude se ferme sans résultat, préservent davantage la continuité des longues sessions et nettoient les images d'invite ainsi que les fichiers de préparation ayant échoué. [#99159](https://github.com/openclaw/openclaw/pull/99159) Lié à [#98946](https://github.com/openclaw/openclaw/issues/98946). Merci à @obviyus.
- Les échecs de verrouillage au démarrage du Gateway nettoient désormais les fichiers partiels et les descripteurs ouverts, ce qui permet à un démarrage ultérieur d'acquérir normalement le verrou. [#99291](https://github.com/openclaw/openclaw/pull/99291) Lié à [#98958](https://github.com/openclaw/openclaw/issues/98958). Merci à @chenyangjun-xy, @zhanglei99586.
- L'état du Gateway signale désormais proprement et rapidement l'indisponibilité de SSH au lieu de planter ou d'attendre indéfiniment lorsque le démarrage du tunnel échoue. [#99800](https://github.com/openclaw/openclaw/pull/99800) Merci à @cxbasdev, @vincentkoc.
- L'arrêt d'un sous-agent efface désormais sa tâche en cours de manière fiable et empêche les achèvements tardifs de réactiver ou d'écraser l'état annulé. [#99806](https://github.com/openclaw/openclaw/pull/99806) Merci à @masatohoshino, @timofa.
- Les exécutions d'agents, Doctor et les vues des outils du Gateway décrivent désormais les accès selon la politique qui régit réellement l'exécution, ce qui réduit les incohérences déroutantes d'autorisations. [#99817](https://github.com/openclaw/openclaw/pull/99817)
- Les tâches Heartbeat et Cron sous macOS et Linux risquent moins d'échouer avec `Unknown system error -11` lorsque des reconnexions chevauchent des mises à jour de session ou d'espace de travail. [#100389](https://github.com/openclaw/openclaw/pull/100389) Merci à @ogarciarevett.
- Les échecs de livraison d'événements du Gateway produisent désormais des avertissements exploitables plutôt que des rejets de promesses inexpliqués au niveau du processus, tandis que les abonnements sans rapport continuent de fonctionner. [#100401](https://github.com/openclaw/openclaw/pull/100401) Merci à @cxbasdev.
- L'échec d'un gestionnaire d'événements du Gateway ACP produit désormais un diagnostic concis au lieu d'arrêter le processus ACP ou de corrompre la sortie du protocole. [#100558](https://github.com/openclaw/openclaw/pull/100558) Merci à @ajwan8998.
- Le démarrage du Gateway n'effectue plus de détection non sollicitée de l'authentification des fournisseurs pour chaque agent configuré, ce qui aide les canaux et les commandes locales à rester réactifs pendant que l'authentification est chargée à la demande. [#100667](https://github.com/openclaw/openclaw/pull/100667) Merci à @vincentkoc.
- Les clients Gateway approuvés peuvent désormais parcourir les répertoires de l'espace de travail et prévisualiser les fichiers pris en charge, ce qui permet aux applications iOS et Android d'inspecter et de partager les sorties des agents sans SSH. [#100738](https://github.com/openclaw/openclaw/pull/100738)
- La fermeture inattendue du flux de diagnostic d'un tunnel SSH ne fait plus planter le Gateway pendant les vérifications du tunnel ou son arrêt. [#100855](https://github.com/openclaw/openclaw/pull/100855) Merci à @cxbasdev, @vincentkoc.
- Les clients dont la portée d'écriture est limitée peuvent désormais renommer, épingler, archiver, catégoriser et marquer des sessions comme non lues sans accès administrateur, tandis que les libellés utilisateur et l'ordre stable des listes persistent après actualisation. [#100964](https://github.com/openclaw/openclaw/pull/100964)
- Un sous-processus `tool_search_code` incontrôlé ne peut plus faire croître sans limite la mémoire du Gateway via stderr, tandis que les rapports d'échec conservent les dernières informations de diagnostic utiles. [#101007](https://github.com/openclaw/openclaw/pull/101007) Merci à @hugenshen, @vincentkoc.
- Les défaillances du flux grep intégré deviennent désormais des erreurs d'outil ordinaires au lieu de faire planter l'environnement d'exécution de l'agent, de bloquer la recherche ou de laisser des résultats incomplets sans explication. [#101014](https://github.com/openclaw/openclaw/pull/101014) Merci à @cxbasdev.
- Les commandes et téléversements de bac à sable reposant sur SSH s'arrêtent désormais proprement, nettoient les processus enfants et préservent l'erreur utile lorsqu'un flux d'entrée ou de sortie échoue. [#101031](https://github.com/openclaw/openclaw/pull/101031) Merci à @cxbasdev.
- Un flux d'historique de session déconnecté ou défaillant ne fait plus planter le Gateway ni n'interrompt le service pour tous les autres utilisateurs. [#101571](https://github.com/openclaw/openclaw/pull/101571) Merci à @vincentkoc, @zengwen-dt.
- Le démarrage du Gateway peut désormais être relancé immédiatement après le rejet d'une modification de configuration, au lieu d'être bloqué jusqu'à cinq minutes par un bail de migration obsolète. [#103157](https://github.com/openclaw/openclaw/pull/103157)
- Discord présente désormais les commentaires, le raisonnement et l'activité des outils dans un ordre plus clair au fil des tours en attente, tandis que les clients MCP en boucle locale peuvent se rattacher à une session Gateway à l'aide d'un jeton révocable et assorti d'une expiration. [35af831](https://github.com/openclaw/openclaw/commit/35af831fd0bc549d9333a197a90abbecbc55ff35) Merci à @dwc1997, @lsr911, @ooiuuii, @romneyda, @solodmd, @vincentkoc, @wendy-chsy, @yeager, @zenglingbiao.
- Après le redémarrage d'un Gateway, un sous-agent réorienté poursuit désormais l'instruction la plus récente de l'utilisateur au lieu de reprendre un travail obsolète. [7b5d86e](https://github.com/openclaw/openclaw/commit/7b5d86e89a5f74bd4c9bac1453d045e4c415a367) Merci à @amittell.
- Les terminaux intégrés peuvent désormais s'ouvrir, être redimensionnés, diffuser leur sortie et se fermer de manière cohérente dans le Gateway, l'interface de contrôle et les applications natives. [6601576](https://github.com/openclaw/openclaw/commit/66015762a39030584d6a7cc91fad09f4709f8d3f)
- Les avertissements relatifs aux canaux lors du démarrage du Gateway utilisent désormais les mêmes manifestes de plugins que le processus de démarrage en cours, ce qui réduit les avertissements incohérents et les détections répétées. [10ca94e](https://github.com/openclaw/openclaw/commit/10ca94ef1a6a98a0033574ba537492453b6b3c4f) Merci à @vincentkoc.
- Un appel de fournisseur bloqué libère désormais son canal d'agent intégré après l'expiration d'un délai de surveillance limité, au lieu de bloquer indéfiniment les tâches en attente lorsque les délais d'exécution sont désactivés. [ec28935](https://github.com/openclaw/openclaw/commit/ec289357a450f50491723a86a8a771f5d512541c) Merci à @arismontclair, @obviyus, @patelmm79.
- Les conversations du Gateway comportant une tâche active orpheline peuvent désormais récupérer grâce aux diagnostics, au lieu de laisser les tours ultérieurs bloqués jusqu'au redémarrage. [b1da734](https://github.com/openclaw/openclaw/commit/b1da734a1e7d5b608d6fccc4b2c0b3f2c9dc9347) Merci à @arismontclair, @obviyus, @ralf003.
- Un agent ne reste plus silencieux après une Compaction lorsque le hook de réponse finale d'un plugin se bloque ; OpenClaw interrompt le hook à l'expiration du délai et livre tout de même la réponse. [b2baf79](https://github.com/openclaw/openclaw/commit/b2baf799b41edce512b1945b6dec3ad637b9c814) Merci à @dserious, @obviyus, @villa-feng.
- Le démarrage du Gateway ignore désormais les traitements inutiles liés à la politique de raisonnement du fournisseur lorsqu'un paramètre explicite ou le catalogue de modèles détermine déjà le résultat de la bannière. [b18af41](https://github.com/openclaw/openclaw/commit/b18af41f52d401223cad5913ed06650828aacdd6)
- Les développeurs peuvent désormais compiler en utilisant les résultats de session d'arbres de travail gérés du paquet de protocole Gateway et les exploiter sans échec dû à des noms en double. [8ce620f](https://github.com/openclaw/openclaw/commit/8ce620f3e675b25111dcbed6d1e124fedd4756a3) Merci à @vincentkoc.
- Le travail de continuité des sessions Codex de cette même version couvre désormais le démarrage et la reprise des fils de discussion du serveur d'applications, avec des empreintes de liaison dont la taille reste limitée en permanence. [78edf1c](https://github.com/openclaw/openclaw/commit/78edf1cec15c4a45881386b94e06c71c64f90fa4) Merci à @vincentkoc.
- Les agents exécutés sous macOS 26 reçoivent désormais la version du produit macOS dans leur invite d'exécution au lieu de la version du noyau Darwin. [#95225](https://github.com/openclaw/openclaw/pull/95225) Merci à @sunlit-deng.
- Les causes inhabituelles d'échec ACP produisent désormais des informations de diagnostic stables et lisibles au lieu d'une explication manquante ou non valide. [#96270](https://github.com/openclaw/openclaw/pull/96270) Merci à @ly-wang19.
- Les recherches de session à partir d'une exécution ACP renvoient désormais l'exécution active actuelle au lieu d'une association obsolète provenant d'une exécution antérieure. [#96427](https://github.com/openclaw/openclaw/pull/96427) Merci à @lin-hongkuan.
- Les directives de niveau telles que `/verbose` et `/think` ne suppriment plus le premier mot du message de l'utilisateur lorsqu'elles sont envoyées ensemble. [#97929](https://github.com/openclaw/openclaw/pull/97929) Merci à @yetval.
- Les outils d'agent qui réussissent et renvoient du texte brut sûr affichent désormais cette sortie au lieu de laisser aux utilisateurs un résultat apparemment vide. [#99526](https://github.com/openclaw/openclaw/pull/99526) Lié à [#99523](https://github.com/openclaw/openclaw/issues/99523). Merci à @snowzlm.
- Les entités HTML de substitution mal formées dans la sortie du fournisseur ne corrompent plus les arguments des outils d'agent, les transcriptions ni les URL, tandis que les entités légitimes et les emoji continuent d'être décodés normalement. [#99564](https://github.com/openclaw/openclaw/pull/99564) Merci à @mikasa0818.
- Les listes compactes de sous-agents maintiennent désormais les libellés longs et le texte des tâches dans l'espace d'affichage qui leur est alloué, sans scinder les emoji ni rompre l'alignement. [#100013](https://github.com/openclaw/openclaw/pull/100013) Merci à @qingminglong.
- Laisser une réponse vide dans une invite comportant plusieurs questions ne décale plus les autres réponses saisies vers les mauvaises questions. [#100832](https://github.com/openclaw/openclaw/pull/100832) Merci à @machine3at.
- Les sessions parentes ne répètent plus un précédent message de progression d'un agent enfant lorsque celui-ci signale ensuite l'achèvement de sa tâche. [#101042](https://github.com/openclaw/openclaw/pull/101042) Merci à @mushuiyu886.
- Les contrôles d'exécution ACP peuvent désormais réellement effacer les paramètres enregistrés de modèle, de raisonnement, de répertoire de travail, d'autorisation, de délai d'expiration, de mode et les paramètres supplémentaires du backend, afin que les tours ultérieurs ne réutilisent pas de valeurs obsolètes. [#101044](https://github.com/openclaw/openclaw/pull/101044) Merci à @mushuiyu886.
- Les très longues conversations d'agents risquent moins de boucler sur des tentatives infructueuses de récupération après dépassement de capacité, car la Compaction reflète désormais l'invite qu'OpenClaw a réellement préparée. [#101181](https://github.com/openclaw/openclaw/pull/101181) Merci à @jalehman.
- Les textes raccourcis du Web, des médias, de la synthèse vocale, de l'état, du transport et des appels vocaux préservent désormais les caractères Unicode complets au lieu de produire des symboles de remplacement ou du contenu en aval mal formé. [#101355](https://github.com/openclaw/openclaw/pull/101355) Merci à @alix-007, @vincentkoc.
- Les notifications de bureau Codex raccourcissent désormais les longs aperçus de l'assistant contenant des emoji ou du texte CJK sans produire de caractères mal formés. [#101534](https://github.com/openclaw/openclaw/pull/101534) Merci à @lsr911.
- Les titres des outils ACP, les demandes d’autorisation, les avertissements et les erreurs conservent désormais la lisibilité des longs aperçus d’arguments contenant des emoji ou des caractères CJK lorsqu’ils sont raccourcis. [#101535](https://github.com/openclaw/openclaw/pull/101535) Merci à @lsr911.
- Les aperçus de réponses automatiques supprimés dans les journaux détaillés préservent désormais les emoji complets et les autres caractères supplémentaires au lieu d’afficher du texte corrompu à la limite de longueur. [#101575](https://github.com/openclaw/openclaw/pull/101575) Merci à @wm0018.
- Les exécutions d’agents et de sous-agents terminées normalement n’apparaissent plus comme des entrées de journal de niveau erreur, ce qui réduit les fausses alertes tandis que les échecs réels restent signalés à un niveau élevé. [#101703](https://github.com/openclaw/openclaw/pull/101703) Merci à @zengwen-dt.
- Les résultats d’outils d’agent trop volumineux préservent désormais les emoji complets et les caractères Unicode similaires lorsqu’ils sont raccourcis avant d’être envoyés au modèle. [#102087](https://github.com/openclaw/openclaw/pull/102087) Merci à @chengzhichao-xydt.
- Lorsque `messages.suppressToolErrors` est activé, les échecs d’outils ne sont plus divulgués dans la discussion sous forme de mises à jour de progression, tandis que la progression normale et les réponses finales continuent de s’afficher. [#98063](https://github.com/openclaw/openclaw/pull/98063) Merci à @amittell et @moeedahmed.
- Les sessions de l’atelier Skills disposent désormais d’une invite plus claire, avec environ 1,8 Ko de surcharge répétée en moins pour l’invite et le schéma, tout en conservant le même processus de proposition vérifiable. [#100481](https://github.com/openclaw/openclaw/pull/100481)
- La mise en cache des invites et les traces de cache calculent désormais l’empreinte du texte entrant malformé de façon cohérente avec le texte nettoyé reçu par les fournisseurs, évitant ainsi les défauts de cache inutiles et les diagnostics trompeurs. [#101009](https://github.com/openclaw/openclaw/pull/101009) Merci à @qingminglong.
- Les échecs de connexion au Gateway indiquent désormais la dernière phase de négociation terminée, ce qui aide les opérateurs à distinguer les blocages liés à la mise à niveau, aux informations d’identification, à l’authentification, à la session et à l’état prêt. [#93402](https://github.com/openclaw/openclaw/pull/93402) Merci à @849261680, @bzelones, @vincentkoc et @youngting520.
- Les opérateurs reçoivent désormais les diagnostics `payload.large` ou `truncated`, ainsi qu’un décompte précis, chaque fois que `chat.history` omet des messages plus anciens, ce qui rend visible l’élagage masqué de l’historique sans modifier les réponses des clients. [#96788](https://github.com/openclaw/openclaw/pull/96788) Merci à @zengwen-dt.
- Les journaux du Gateway indiquent désormais lorsqu’OpenClaw ne peut pas enregistrer l’état final du cycle de vie d’une session de terminal, ce qui permet de diagnostiquer les échecs silencieux de persistance. [#97839](https://github.com/openclaw/openclaw/pull/97839) Voir aussi [#97795](https://github.com/openclaw/openclaw/issues/97795). Merci à @aniruddhaadak80 et @lzy3538.
- Les journaux MCP du Gateway sont désormais moins verbeux et identifient l’outil responsable en cas de problème de schéma, tandis que les conflits distincts restent visibles. [#98821](https://github.com/openclaw/openclaw/pull/98821) Merci à @alvelda et @harjothkhara.
- Les arguments `tools/call` malformés du MCP du Gateway renvoient désormais une réponse claire signalant des paramètres non valides avant qu’un hook ou un outil puisse les traiter. [#99180](https://github.com/openclaw/openclaw/pull/99180) Merci à @vectorpeak.
- Les demandes de rattachement MCP dépourvues d’une clé de session valide renvoient désormais l’erreur de validation prévue au lieu de faire planter le Gateway avec une TypeError. [#99488](https://github.com/openclaw/openclaw/pull/99488) Merci à @zhanglei99586.
- L’interface de contrôle et les autres clients du Gateway affichent désormais les consignes correctes concernant l’association ou la version du protocole, même lorsque les codes détaillés contiennent des espaces superflus. [#99555](https://github.com/openclaw/openclaw/pull/99555) Merci à @ly85206559.
- Les échecs WebSocket du Gateway préservent désormais la lisibilité des motifs de fermeture contenant des caractères non ASCII et respectent la limite en octets, au lieu de couper les caractères et de produire du texte illisible. [#100047](https://github.com/openclaw/openclaw/pull/100047) Merci à @narahariraghava.
- La progression du mode Code de Discord n’est plus encombrée de lignes Wait répétitives dues à l’interrogation en arrière-plan, tandis que les outils personnalisés ordinaires et ceux des plugins restent visibles. [#100164](https://github.com/openclaw/openclaw/pull/100164)
- Les erreurs d’authentification par remplacement du Gateway indiquent désormais aux utilisateurs de la CLI et de la TUI s’ils doivent ajouter un jeton ou un mot de passe, supprimer `--url` ou associer les variables d’environnement concernées. [#100418](https://github.com/openclaw/openclaw/pull/100418) Merci à @gmays.
- Les tours interactifs et mis en file d’attente qui se terminent sans réponse visible renvoient désormais un message d’échec clair et assaini, au lieu de donner l’impression que la discussion est bloquée. [#100456](https://github.com/openclaw/openclaw/pull/100456) Merci à @mushuiyu886.
- Le démarrage d’une nouvelle session Codex n’émet plus de faux avertissement concernant l’historique avant que sa transcription n’existe, tandis que les véritables échecs de l’historique restent visibles. [#100484](https://github.com/openclaw/openclaw/pull/100484) Merci à @litang9 et @vincentkoc.
- Les rapports d’utilisation du Gateway indiquent désormais les dates de début et de fin dans le fuseau horaire demandé, avec une gestion correcte des jours calendaires lors des transitions locales liées à l’heure d’été. [#100567](https://github.com/openclaw/openclaw/pull/100567) Merci à @nianjiuzst.
- Les détails d’utilisation des sessions récupèrent désormais les dates de transcription malformées à partir des horodatages de messages disponibles et renvoient des valeurs finies, ordonnées de façon cohérente, plutôt que des valeurs nulles. [#100687](https://github.com/openclaw/openclaw/pull/100687) Merci à @sheyanmin.
- Les clients ACP autonomes ferment désormais la base de données d’état SQLite partagée lors de l’arrêt, afin que les rechargements à chaud et les redémarrages immédiats puissent la rouvrir sans verrous ni rappels obsolètes. [#100691](https://github.com/openclaw/openclaw/pull/100691) Merci à @lzy3538.
- La configuration initiale sous macOS reconnaît désormais une connexion Codex correctement enregistrée et risque moins de se terminer par un avertissement obsolète concernant le Gateway ou les Skills intégrées. [#101218](https://github.com/openclaw/openclaw/pull/101218)
- La configuration du Webhook d’appel vocal via ngrok ou Tailscale échoue désormais proprement en cas d’erreur du flux du tunnel au lieu de faire planter le Gateway, et l’arrêt évite d’attendre un tunnel déjà terminé. [#101394](https://github.com/openclaw/openclaw/pull/101394) Merci à @cxbasdev.

</Accordion>

## Comptes, appareils et données privées

### Identifiants, autorisations, appairage et protection des fichiers

Les actions sensibles en matière de confiance s’interrompent plus tôt et expliquent plus précisément les points qui requièrent votre attention. L’[audit d’activité](/fr/gateway/audit) persistant peut être filtré et exporté après les redémarrages, les installations ClawHub distinguent les versions bloquées de celles qui nécessitent une confirmation explicite, et la mise en réseau protégée prend en charge les chemins approuvés passant exclusivement par un proxy sans affaiblir les contrôles de destination.

La résolution et la rédaction des identifiants couvrent désormais davantage de chemins de modèles et de plugins, tandis que l’[isolation et les approbations](/fr/gateway/sandboxing) imposent des limites plus claires entre les appareils, les autorisations et les espaces de travail. Le processus de gestion des [secrets](/fr/gateway/secrets) évite également d’exposer les identifiants de modèle résolus dans les chemins ordinaires de requête et d’erreur.

<Accordion title="Sources et contributeurs">

- ClawHub vérifie désormais les versions des plugins et Skills de la communauté avant leur téléchargement, bloque les versions interdites et exige une confirmation explicite pour celles qui sont suspectes, tout en conservant les installations existantes lorsqu’une mise à jour est ignorée. [#81364](https://github.com/openclaw/openclaw/pull/81364) Merci à @jesse-merhi.
- Les opérateurs autorisés disposent désormais d’un historique d’audit durable de l’activité des agents et des outils, avec des filtres, une pagination stable, une exportation JSON limitée, un enregistrement configurable et des limites de conservation automatiques. [#98704](https://github.com/openclaw/openclaw/pull/98704)
- Les requêtes des fournisseurs, des canaux, des médias et du Web peuvent désormais atteindre des destinations publiques par l’intermédiaire d’un proxy géré, même lorsque le DNS local est indisponible ou diffère de celui du proxy. [#98951](https://github.com/openclaw/openclaw/pull/98951) Voir aussi [#98925](https://github.com/openclaw/openclaw/issues/98925). Merci à @momothemage et @sandl99.
- Les clés de fournisseurs de modèles stockées avec des SecretRefs bénéficient désormais d’une protection supplémentaire contre toute exposition accidentelle dans les journaux, les erreurs, les captures de proxy, la configuration du SDK et l’inspection à l’exécution, avec une option de compatibilité pour les sentinelles de secrets. [#102009](https://github.com/openclaw/openclaw/pull/102009)
- Les opérateurs peuvent utiliser l’analyse ciblée de Doctor pour détecter les résidus d’identifiants dans les entrées historiques `config-audit.jsonl` et prévisualiser la rédaction avant d’exécuter `openclaw doctor --fix`. [#84450](https://github.com/openclaw/openclaw/pull/84450) Merci à @giodl73-repo.
- Le contrôle du navigateur exige désormais la même autorisation d’administrateur lors d’un appel direct au Node que par le chemin standard des requêtes du navigateur, ce qui empêche les identifiants limités à l’écriture ou les plugins tiers d’obtenir un accès élevé. [#85916](https://github.com/openclaw/openclaw/pull/85916) Merci à @eleqtrizit et @laphilosophie.
- Les salons Slack qui exigent une mention ne réveillent plus OpenClaw pour les messages ordinaires lorsque l’identité du bot est absente ou non fiable, et les avertissements de configuration orientent les opérateurs vers un Bot User OAuth Token lorsque cela est nécessaire. [#91584](https://github.com/openclaw/openclaw/pull/91584) Merci à @hiragram.
- L’exécution d’une vérification locale du Gateway en lecture seule ne laisse plus d’autorisations d’appairage obsolètes qui bloquent ensuite une commande d’agent, d’administration, d’écriture ou d’approbation d’appareil. [#96002](https://github.com/openclaw/openclaw/pull/96002) Merci à @vincentkoc.
- La régénération du service Gateway exclut désormais des définitions d’unités Linux les secrets fournis par l’environnement et préserve les identifiants résolus des fournisseurs et des canaux sous macOS. [#96065](https://github.com/openclaw/openclaw/pull/96065) Merci à @darren2030 et @obviyus.
- Lorsque `strictInlineEval` est activé, les commandes Python et PyPy versionnées, ainsi que des formes supplémentaires en ligne de PHP et R, exigent désormais une nouvelle approbation explicite au lieu d’hériter de la confiance accordée à l’exécutable. [#96216](https://github.com/openclaw/openclaw/pull/96216) Merci à @eleqtrizit.
- Les agents utilisant les outils Cron d’OpenClaw sont désormais limités à leurs propres tâches planifiées et cibles de session, tandis que le Cron géré par les opérateurs reste inchangé et que les configurations comportant plusieurs versions échouent de manière sécurisée avec une instruction `openclaw gateway restart`. [#96883](https://github.com/openclaw/openclaw/pull/96883) Merci à @joshavant.
- Les configurations Feishu à plusieurs comptes peuvent désormais démarrer le canal par défaut avec une SecretRef de premier niveau fournie par l’environnement et des secrets intégrés distincts pour les comptes nommés, sans remplacer le secret protégé par du texte en clair. [#96965](https://github.com/openclaw/openclaw/pull/96965) Merci à @zw-xysk.
- `openclaw doctor --fix` préserve désormais des comptes OAuth distincts pour un même fournisseur, notamment la référence et le nom d’affichage enregistré de chaque compte. [#97541](https://github.com/openclaw/openclaw/pull/97541) Merci à @liuhao1024 et @yetval.
- Seul le propriétaire configuré peut désormais modifier, par l’intermédiaire de `/activation`, si un groupe répond aux mentions ou à chaque message. [#97838](https://github.com/openclaw/openclaw/pull/97838) Merci à @pgondhi987.
- Les actions de réveil Cron lancées par un agent restent désormais dans les files de session propres à cet agent, ce qui réduit le risque de réveiller la conversation d’un autre agent. [#97949](https://github.com/openclaw/openclaw/pull/97949) Merci à @eleqtrizit.
- Le démarrage ou la modification de sessions Codex natives exige désormais un accès de propriétaire ou `operator.admin`, tandis que les autres expéditeurs autorisés conservent un accès d’inspection en lecture seule. [#97952](https://github.com/openclaw/openclaw/pull/97952) Merci à @eleqtrizit.
- Les contrôles du cycle de vie des sessions ACP et de l’environnement d’exécution exigent désormais un propriétaire ou un administrateur interne du Gateway, au lieu d’être accessibles à tout utilisateur autorisé du canal. [#97953](https://github.com/openclaw/openclaw/pull/97953) Merci à @eleqtrizit.
- Les agents placés dans un bac à sable pour lesquels le contrôle du navigateur hôte est désactivé ne peuvent plus accéder à un navigateur hôte connecté par l’intermédiaire d’un Node de navigateur appairé. [#97958](https://github.com/openclaw/openclaw/pull/97958) Merci à @eleqtrizit.
- Les échecs OAuth MCP mal formés renvoient désormais un diagnostic de statut HTTP de taille limitée au lieu de permettre à une réponse d’erreur non limitée d’épuiser la mémoire de l’agent. [#98143](https://github.com/openclaw/openclaw/pull/98143) Merci à @pick-cat.
- Les clés d’API Fireworks brutes sont désormais masquées dans les journaux, les erreurs du fournisseur, les détails des commandes, la sortie des outils et les diagnostics de l’interface de contrôle, même sans libellé de champ sensible à proximité. [#98226](https://github.com/openclaw/openclaw/pull/98226) Voir aussi [#98225](https://github.com/openclaw/openclaw/issues/98225). Merci à @ooiuuii.
- Dans les canaux partagés, seule la personne ayant lancé une commande Claude Code peut approuver ou refuser ses demandes d’autorisation d’outil. [#98256](https://github.com/openclaw/openclaw/pull/98256) Merci à @eleqtrizit.
- Les listes d’autorisation IRC rejettent désormais par défaut les entrées `nick!user` dépourvues d’hôte et orientent les opérateurs vers des masques d’hôte complets vérifiés, ce qui réduit le risque d’usurpation d’identité. [#98339](https://github.com/openclaw/openclaw/pull/98339) Merci à @yetval.
- `/pair` refuse désormais les codes de configuration qui pointent vers des adresses `0.0.0.0` ou `::` non routables et fournit plutôt aux opérateurs des conseils pour utiliser une URL de Gateway sécurisée. [#98617](https://github.com/openclaw/openclaw/pull/98617) Merci à @crh-code.
- Les échecs d’actualisation des identifiants OpenAI ou Codex indiquent désormais qu’une nouvelle authentification est requise et identifient de manière confidentielle le profil concerné, au lieu de sembler sains jusqu’à l’échec des échanges avec le modèle. [#99134](https://github.com/openclaw/openclaw/pull/99134) Voir aussi [#99120](https://github.com/openclaw/openclaw/issues/99120). Merci à @100yenadmin et @fuller-stack-dev.
- Les nouvelles tentatives d’authentification du Gateway n’envoient désormais les jetons d’appareil stockés qu’à de véritables points de terminaison de bouclage, et non à des noms d’hôte distants qui ressemblent simplement à des adresses `127.*`. [#99859](https://github.com/openclaw/openclaw/pull/99859) Merci à @ly85206559.
- Un échec temporaire de lecture du flux de sortie d’un fournisseur SecretRef basé sur une exécution ne provoque plus le plantage d’OpenClaw lors de la résolution des identifiants. [#100521](https://github.com/openclaw/openclaw/pull/100521) Merci à @cxbasdev.
- Les clients du Gateway limités à l’écriture peuvent toujours effectuer les actions de messagerie prises en charge, mais ne peuvent plus fournir des champs d’identité leur permettant de se faire passer pour un demandeur ou un propriétaire de confiance. [#102031](https://github.com/openclaw/openclaw/pull/102031) Merci à @pgondhi987.
- L’approbation d’un Node capable de traiter du trafic de navigateur sensible exige désormais une autorisation d’administrateur, conformément au niveau de sécurité déjà requis pour utiliser cette capacité. [#104491](https://github.com/openclaw/openclaw/pull/104491) Merci à @yetval.
- Les journaux de charges utiles des agents et les traces de cache rédigent désormais les clés des fournisseurs, même lorsque ces identifiants apparaissent dans des valeurs de diagnostic en texte libre. [d8ee630](https://github.com/openclaw/openclaw/commit/d8ee630b203c86fd5d91331156614a441ec9e52c) Merci à @joshavant.
- Les participants autorisés qui ne sont pas propriétaires ne peuvent plus inspecter ni modifier la configuration des serveurs MCP contrôlée par le propriétaire par l’intermédiaire de `/mcp`. [ad5a26c](https://github.com/openclaw/openclaw/commit/ad5a26cf699afd7a387a187aee77bbc7d04793df) Merci à @joshavant.
- Les diagnostics de réponse automatique restent désormais réservés au propriétaire, au lieu de permettre aux participants non propriétaires d’exécuter la commande. [170bf72](https://github.com/openclaw/openclaw/commit/170bf72e64a9b85933e156244cccda7bd0270df4) Merci à @joshavant.
- Les Webhooks Cron ayant échoué ne transmettent plus de résumés bruts de commandes ni de diagnostics susceptibles de contenir des invites de configuration, des codes ou une sortie ressemblant à un secret. [1d17263](https://github.com/openclaw/openclaw/commit/1d172637d6dda23a0b108c624239264eae0e5042) Merci à @joshavant.
- La détection des cibles de secrets fonctionne désormais de manière cohérente pour les requêtes limitées à une portée comme pour l’ensemble du registre compilé, au lieu d’échouer lorsqu’aucun sous-ensemble autorisé n’est fourni. [e490171](https://github.com/openclaw/openclaw/commit/e490171ff24b4165b68b9835e76c1baf8903a149)
- Avec une politique SSRF stricte, la détection de navigateur distant ne peut plus rediriger OpenClaw depuis le point de terminaison CDP configuré vers un autre hôte, port ou mode de sécurité. [cbc833a](https://github.com/openclaw/openclaw/commit/cbc833a7f33804db11f11274678770a1b55be3ca) Merci à @vincentkoc.
- `/login codex` fait désormais basculer la discussion active vers le compte qui vient d’être authentifié sans écraser un choix manuel de profil plus récent, et fournit des instructions de récupération en cas d’échec du changement. [02c3de9](https://github.com/openclaw/openclaw/commit/02c3de947169acdafbf60dd5ce76f655c34e37c7) Merci à @vincentkoc.
- Les changements de profil effectués par l’intermédiaire de `/login` utilisent désormais le chemin standard d’enregistrement de session, ce qui préserve les sélections simultanées plus récentes et le comportement de récupération existant. [f07c478](https://github.com/openclaw/openclaw/commit/f07c4782fa6a109df7f4345f51a88caa9d8439c9) Merci à @vincentkoc.
- Les liaisons de sessions Codex conservent désormais les configurations MCP volumineuses et les identifiants Authorization renouvelés dans des empreintes de taille limitée, sans conserver de valeurs de porteur lisibles. [491e42e](https://github.com/openclaw/openclaw/commit/491e42e6d5a334f850e2ad790a19c936c8daa07e) Merci à @100yenadmin.
- Les hooks et les Skills ne s’activent plus à partir de valeurs de configuration héritées non sécurisées, tandis que les chemins configurés ordinaires et les valeurs par défaut explicites continuent de fonctionner. [#59694](https://github.com/openclaw/openclaw/pull/59694) Merci à @yonganzhang.
- Après la suppression d’un agent, ses sessions restantes ne peuvent plus lancer de nouvelles exécutions de modèle par l’intermédiaire du Gateway. [#97260](https://github.com/openclaw/openclaw/pull/97260) Merci à @obviyus et @pick-cat.
- Les archives des utilitaires fd et ripgrep non sécurisées, mal formées ou anormalement volumineuses échouent désormais de façon précoce et se nettoient elles-mêmes, au lieu de compromettre la configuration de l’agent. [#98988](https://github.com/openclaw/openclaw/pull/98988) Merci à @leonidaslux et @vincentkoc.
- Les métadonnées de pièces jointes de discussions personnelles Microsoft Teams trop volumineuses ou mal formées échouent désormais de manière sécurisée avec un avertissement, au lieu de consommer une quantité non limitée de mémoire du Gateway. [#99125](https://github.com/openclaw/openclaw/pull/99125) Merci à @ly85206559.
- Les opérations d’affichage, de définition et de suppression de configuration ne portent désormais que sur les valeurs réellement stockées dans la configuration de l’utilisateur, ce qui empêche l’état hérité d’un objet de se faire passer pour des paramètres enregistrés. [#99846](https://github.com/openclaw/openclaw/pull/99846) Merci à @vincentkoc et @zenglingbiao.
- Le contenu Canvas d’Android ne peut plus accéder aux services Web locaux de l’appareil, tandis que les pages distantes ordinaires et celles hébergées par le Gateway continuent de fonctionner. [#99874](https://github.com/openclaw/openclaw/pull/99874) Merci à @ly85206559.
- Les réponses trop volumineuses ou interminables des fournisseurs externes pris en charge s’arrêtent désormais à une limite fixe avec une erreur libellée, au lieu de consommer de la mémoire jusqu’à la réception du corps complet. [0a14444](https://github.com/openclaw/openclaw/commit/0a14444924e34e031133c997b00d30573353c5a0) Merci à @joshavant.
- Les requêtes de terminal comportant un ID d’agent inconnu échouent désormais de manière explicite au lieu de revenir aux valeurs globales par défaut et de risquer d’ouvrir un shell hôte en dehors de la limite prévue pour l’agent. [3601dca](https://github.com/openclaw/openclaw/commit/3601dcad24fea8924c52d8abbafb85e50fc247ce)
- Le programme d’installation Windows accepte désormais les environnements d’exécution SQLite corrigés, rejette ceux qui sont dangereux ou illisibles et indique la version détectée lorsqu’une autre mise à niveau de Node.js est requise. [28db140](https://github.com/openclaw/openclaw/commit/28db14005a77ca146c1f10979501dcfd375e8d01) Merci à @vincentkoc.
- QQBot évite désormais les rappels accidentels, limite l’exposition des détails relatifs aux médias privés et exige une confirmation explicite avant toute action destructive sur un canal ou une annonce. [#98032](https://github.com/openclaw/openclaw/pull/98032) Merci à @patrick-erichsen.
- Les opérateurs qui utilisent les réparations d’espace de travail peuvent désormais exécuter `doctor --fix` pour désactiver les points de terminaison HTTP du Gateway refusés par la politique sans supprimer les paramètres imbriqués de récupération d’URL. [#99731](https://github.com/openclaw/openclaw/pull/99731) Merci à @giodl73-repo.
- La récupération de contenu web et les intégrations de fournisseurs appliquent désormais des limites à la taille des réponses sans allouer en mémoire l’intégralité d’une réponse non standard. [#99884](https://github.com/openclaw/openclaw/pull/99884) Merci à @zenglingbiao.
- Les hôtes de fournisseurs personnalisés approuvés sont désormais protégés contre le rebinding DNS vers des services locaux ; les alias de bouclage intentionnels doivent utiliser une origine locale explicite ou activer `allowPrivateNetwork`. [#100835](https://github.com/openclaw/openclaw/pull/100835) Merci à @machine3at.
- Les requêtes de contrôle du navigateur rejettent désormais les réponses JSON réussies trop volumineuses avec une erreur `BrowserServiceError` avant qu’elles ne puissent consommer une quantité excessive de mémoire, tandis que les résultats volumineux pris en charge par le navigateur continuent de fonctionner. [#100889](https://github.com/openclaw/openclaw/pull/100889) Merci à @mushuiyu886.
- Le processus de configuration mobile `/pair` accepte désormais les adresses Gateway IPv6 ULA locales et link-local sans exiger TLS ni un autre hôte annoncé, tandis que les URL publiques non chiffrées restent bloquées. [#101008](https://github.com/openclaw/openclaw/pull/101008) Merci à @zhangguiping-xydt.
- L’exécution de `/prose` affiche désormais aux opérateurs les importations distantes transitives et leur demande leur consentement avant qu’OpenProse ne récupère ces dépendances de code. [259877d](https://github.com/openclaw/openclaw/commit/259877dccf1c6e2e8abce5deb92450af1a8b53a6) Merci à @joshavant.
- Les utilisateurs du plugin Codex peuvent autoriser les actions d’application en lecture seule tout en exigeant une nouvelle approbation pour chaque action d’écriture ou destructive. [#97123](https://github.com/openclaw/openclaw/pull/97123) Merci à @kevinslin.
- Les applications du plugin Codex évitent désormais les demandes d’approbation pour les actions en lecture seule, conservent les politiques d’écriture propres à chaque application après une récupération et actualisent leur inventaire d’applications après les mises à niveau. [#97327](https://github.com/openclaw/openclaw/pull/97327) Merci à @kevinslin.
- Après une reconnexion, les propriétaires d’appareils peuvent approuver l’ID de requête affiché le plus récemment par `openclaw devices list`, sans affaiblir la protection contre les portées nouvellement étendues. [#98145](https://github.com/openclaw/openclaw/pull/98145) Merci à @romneyda.
- Sous Windows, les approbations d’exécution par chemin exact lancent désormais l’exécutable approuvé plutôt qu’un programme portant le même nom dans le répertoire de travail. [#98260](https://github.com/openclaw/openclaw/pull/98260) Merci à @eleqtrizit.
- `openclaw security audit` avertit désormais que les listes d’autorisation de Skills propres à chaque agent n’empêchent pas les agents capables d’utiliser un shell d’accéder aux serveurs MCP configurés globalement. [#98352](https://github.com/openclaw/openclaw/pull/98352) Merci à @momothemage.
- Le plugin Codex nomme désormais le mode d’approbation destructive propre à chaque action `ask`, ce qui indique clairement que chaque action d’écriture ou destructive reste disponible, mais nécessite une confirmation. [#98501](https://github.com/openclaw/openclaw/pull/98501) Voir aussi [#98499](https://github.com/openclaw/openclaw/issues/98499). Merci à @kevinslin.
- Les déploiements gérés peuvent désormais exiger des entrées telles que `system.run` dans `gateway.nodes.denyCommands`, et le diagnostic de politique avertit lorsqu’une dérive de configuration laisse disponible une commande Node privilégiée. [#99121](https://github.com/openclaw/openclaw/pull/99121) Merci à @giodl73-repo.
- Les outils d’hôte gérés n’héritent plus de l’environnement Conda actif du shell ayant lancé OpenClaw, ce qui évite des comportements involontaires de Python et du gestionnaire de paquets. [#99425](https://github.com/openclaw/openclaw/pull/99425) Voir aussi [#99424](https://github.com/openclaw/openclaw/issues/99424). Merci à @krissding et @ooiuuii.
- Les longs aperçus d’approbation Discord préservent désormais les emoji et les drapeaux complets lorsqu’ils sont raccourcis, ce qui évite les caractères de remplacement corrompus. [#99539](https://github.com/openclaw/openclaw/pull/99539) Merci à @zhangguiping-xydt.
- Les demandes d’approbation d’exécution affichent et transmettent désormais les longs textes de commande contenant des emoji ou des caractères Unicode mal formés sans caractères corrompus ni erreurs d’encodage. [#99566](https://github.com/openclaw/openclaw/pull/99566) Merci à @mikasa0818.
- `policy check --json` indique désormais aux administrateurs si chaque constat peut être réparé automatiquement, nécessite un examen ou une intervention manuelle, relève uniquement de la validation ou n’est pas pris en charge. [#99686](https://github.com/openclaw/openclaw/pull/99686) Merci à @giodl73-repo.
- Les opérateurs qui activent explicitement les réparations d’espace de travail de politique peuvent désormais restreindre automatiquement plusieurs paramètres dangereux, tandis qu’OpenClaw reste en lecture seule sans cette activation volontaire. [#99690](https://github.com/openclaw/openclaw/pull/99690) Merci à @giodl73-repo et @omarshahine.
- Les réparations d’espace de travail de politique peuvent désormais ajouter les outils requis à la liste de refus concernée tout en préservant les entrées existantes et en évitant un élargissement involontaire de la politique racine. [#99700](https://github.com/openclaw/openclaw/pull/99700) Merci à @giodl73-repo.
- Les réparations d’espace de travail de politique peuvent désormais faire passer les groupes de canaux ouverts signalés en mode liste d’autorisation et exiger des mentions sans modifier les valeurs par défaut héritées. [#99720](https://github.com/openclaw/openclaw/pull/99720) Merci à @giodl73-repo et @omarshahine.
- `doctor --fix` affiche désormais la modification exacte de `gateway.bind=loopback` ou `gateway.nodes.denyCommands` requise pour les constats sensibles sans l’appliquer automatiquement. [#99776](https://github.com/openclaw/openclaw/pull/99776) Merci à @giodl73-repo.
- Le terminal de l’interface de contrôle nécessite désormais une activation explicite, ouvre les onglets dans l’espace de travail et selon la politique de l’agent sélectionné, et ferme les shells concernés lorsque les restrictions d’accès acceptées deviennent plus strictes. [#100081](https://github.com/openclaw/openclaw/pull/100081) Merci à @rayncc.
- Les tentatives répétées de réparation de l’association produisent désormais une seule demande d’approbation macOS utilisable par appareil, au lieu d’empiler des alertes obsolètes qui ne permettent pas de terminer l’approbation. [#100976](https://github.com/openclaw/openclaw/pull/100976)
- Les politiques d’exécution des nœuds compagnons Windows peuvent désormais être consultées et mises à jour au moyen de commandes d’approbation tenant compte des nœuds, et s’affichent correctement dans l’interface de contrôle. [#101669](https://github.com/openclaw/openclaw/pull/101669) Merci à @vincentkoc.
- Les utilisateurs non propriétaires du chat du Gateway ne se voient plus proposer les outils de contrôle protégés `cron`, `gateway` ou `nodes`, même lorsque ces outils figurent par ailleurs dans la liste d’autorisation. [#102030](https://github.com/openclaw/openclaw/pull/102030) Merci à @pgondhi987.
- L’utilisation de `jq` au moyen de l’exécution exige désormais une entrée explicite dans la liste d’autorisation approuvée ou une approbation, au lieu d’être considérée comme un binaire sûr et inoffensif utilisant uniquement l’entrée standard. [#102032](https://github.com/openclaw/openclaw/pull/102032) Merci à @pgondhi987.
- Les approbations permanentes pour les wrappers `npm exec`, `npx`, `pnpm` et `yarn` s’appliquent désormais à la commande réelle plutôt que d’approuver involontairement de futures charges utiles différentes. [#102035](https://github.com/openclaw/openclaw/pull/102035) Merci à @pgondhi987.
- Les opérations sur les fichiers de l’espace de travail OpenShell restent désormais à l’intérieur du miroir local validé du bac à sable ; les cas dangereux impliquant des liens symboliques, des liens physiques, un franchissement de racine ou un changement de répertoire échouent proprement. [c6f5725](https://github.com/openclaw/openclaw/commit/c6f5725906dcaaaeeb0b5942addc844ffc579caf) Merci à @joshavant.
- Les clients Swift natifs prennent désormais en charge les approbations de Skills propres à chaque appareil, le champ de l’appareil examinateur étant encodé dans leurs modèles Gateway générés. [1403c64](https://github.com/openclaw/openclaw/commit/1403c64799ae62785e36327b6fc4c5235b10d8ba)
- Le suivi des connexions au Gateway maintient désormais une utilisation mémoire limitée lors d’afflux de tentatives infructueuses provenant de nombreuses adresses, tout en préservant les verrouillages existants. [#96224](https://github.com/openclaw/openclaw/pull/96224) Merci à @eleqtrizit.
- Les caractères de contrôle cachés du terminal sont désormais supprimés des clés et jetons de fournisseurs copiés avant la préparation des en-têtes de requête, tandis que les espaces intentionnels restent intacts. [#96444](https://github.com/openclaw/openclaw/pull/96444) Merci à @lin-hongkuan.
- Les identifiants mal formés et masqués restent désormais sur une seule ligne sûre dans les diagnostics de configuration et d’authentification, même lorsque l’entrée d’origine contient des sauts de ligne ou d’autres octets de contrôle. [#96445](https://github.com/openclaw/openclaw/pull/96445) Merci à @lin-hongkuan.
- Les audits de sécurité ne considèrent plus à tort les clés d’espace réservé intégrées pour LM Studio, Ollama et d’autres fournisseurs locaux sans clé comme des identifiants exposés en texte brut. [#97622](https://github.com/openclaw/openclaw/pull/97622) Merci à @xydigit-sj.
- Les exportations de trajectoires depuis le chat nécessitent désormais l’autorité du propriétaire, ce qui empêche les autres utilisateurs de canaux autorisés à exécuter des commandes de récupérer des artefacts de session sensibles. [#97840](https://github.com/openclaw/openclaw/pull/97840) Merci à @pgondhi987.
- L’Active Memory à l’échelle du Gateway ne peut désormais être modifiée que par les propriétaires ou les administrateurs, tandis que les autres utilisateurs autorisés conservent les contrôles au niveau de la session. [#97841](https://github.com/openclaw/openclaw/pull/97841) Merci à @pgondhi987.
- Seuls les propriétaires et les clients administratifs du Gateway peuvent désormais activer ou désactiver le Dreaming de Memory Core au moyen de `/dreaming`, tandis que l’état et l’aide restent accessibles aux autres utilisateurs. [#97869](https://github.com/openclaw/openclaw/pull/97869) Merci à @eleqtrizit.
- Les utilisateurs non administrateurs de Telegram et Discord ne peuvent plus modifier la voix Talk du Gateway, mais peuvent toujours consulter la voix actuelle et les voix disponibles. [#97874](https://github.com/openclaw/openclaw/pull/97874) Merci à @eleqtrizit.
- L’installation ou la reconfiguration des ressources Codex Computer Use nécessite désormais un accès de propriétaire ou d’administrateur, tandis que les autres expéditeurs autorisés peuvent toujours consulter l’état. [#97955](https://github.com/openclaw/openclaw/pull/97955) Merci à @eleqtrizit.
- Le renommage des groupes iMessage, la modification des icônes ou des membres et le fait de quitter des groupes nécessitent désormais une autorité vérifiée de propriétaire ou d’administrateur. [#97961](https://github.com/openclaw/openclaw/pull/97961) Merci à @eleqtrizit.
- Les Skills créés par les agents restent désormais en attente d’examen et d’approbation par Skill Workshop au lieu de devenir immédiatement actifs sans les mesures de protection prévues. [#98346](https://github.com/openclaw/openclaw/pull/98346) Voir aussi [#96054](https://github.com/openclaw/openclaw/issues/96054). Merci à @momothemage et @xianshishan.
- Les listes d’autorisation de lecture Discord bloquent désormais les métadonnées des serveurs, les détails des canaux et les listes de fils de discussion avant toute requête au fournisseur lorsque ces ressources se trouvent hors de la portée configurée. [#98966](https://github.com/openclaw/openclaw/pull/98966) Merci à @pgondhi987.
- Les journaux d’expiration de délai de Telegram masquent désormais les jetons de bot intégrés aux chemins de l’API Bot, y compris les racines personnalisées et de proxy, tout en conservant un contexte utile sur le point de terminaison. [#99428](https://github.com/openclaw/openclaw/pull/99428) Associé à [#96982](https://github.com/openclaw/openclaw/issues/96982). Merci à @liuhaiyang14 et @xialonglee.
- Les aperçus d’activité de l’interface de contrôle masquent désormais les clés d’API stockées sous des noms de configuration à notation pointée ou renvoyées dans la sortie structurée des outils. [#99460](https://github.com/openclaw/openclaw/pull/99460) Associé à [#99459](https://github.com/openclaw/openclaw/issues/99459). Merci à @ooiuuii.
- Les mécanismes personnalisés de masquage des erreurs ACP conservent désormais le nettoyage intégré des secrets d’OpenClaw, empêchant les jetons connus, les identifiants et les données de clés privées de fuiter dans les erreurs mises en forme. [#100191](https://github.com/openclaw/openclaw/pull/100191) Merci à @lin-hongkuan.
- Les commandes SMS Android distinguent désormais clairement l’autorisation du téléphone de l’activation facultative distincte du Gateway, ce qui permet l’accès en lecture seule à `sms.search` sans activer également `sms.send`. [#100993](https://github.com/openclaw/openclaw/pull/100993) Merci à @narcissus0702.
- L’automatisation du navigateur maintient désormais le trafic de contrôle de Chrome lié à l’hôte CDP configuré ou explicitement autorisé, réduisant le risque qu’une adresse de débogueur découverte redirige les identifiants ou le contrôle ailleurs. [#101171](https://github.com/openclaw/openclaw/pull/101171)
- Les propriétaires authentifiés peuvent utiliser dans WebChat les outils d’interpréteur de commandes, de fichiers, de processus, de Skill Workshop et de plugins qui leur ont déjà été accordés, sans étendre ces autorisations aux invités ou aux expéditeurs externes. [#101271](https://github.com/openclaw/openclaw/pull/101271) Merci à @fuller-stack-dev.
- Lorsqu’un autre processus OpenClaw actualise les identifiants OAuth OpenAI, les opérateurs voient désormais une seule erreur de conflit utile, sans formulation dupliquée ni exposition des chemins de fichiers locaux. [#101573](https://github.com/openclaw/openclaw/pull/101573) Merci à @vincentkoc.
- Sous macOS, un `OPENCLAW_STATE_DIR` explicite reste désormais isolé de l’identité d’appairage App Group et des jetons d’appareil existants de la machine. [#101779](https://github.com/openclaw/openclaw/pull/101779)
- Les jetons de bot Telegram restent désormais masqués même lorsqu’ils franchissent des limites internes au sein de journaux très volumineux ou de messages d’erreur d’outils. [#103861](https://github.com/openclaw/openclaw/pull/103861) Merci à @vincentkoc.
- Les caractères de contrôle masqués ne peuvent plus rompre les limites des hyperliens du terminal ni injecter un comportement de contrôle via le texte des liens de documentation. [#96440](https://github.com/openclaw/openclaw/pull/96440) Merci à @lin-hongkuan.
- Les filtres d’inclusion et d’exclusion MCP comportant de nombreux segments génériques rejettent désormais rapidement les éléments non correspondants au lieu de bloquer la découverte des outils pendant plusieurs minutes. [#100330](https://github.com/openclaw/openclaw/pull/100330) Merci à @lsr911.
- Les pièces jointes Signal provenant de fichiers locaux qui sont surdimensionnées ou utilisent des chemins suspects échouent désormais rapidement avec une erreur claire avant de consommer une quantité excessive de mémoire du Gateway. [#101391](https://github.com/openclaw/openclaw/pull/101391) Merci à @cxbasdev.
- Les passerelles multi-utilisateurs employant `openclaw agent --agent ... --channel ... --to ...` conservent désormais les destinataires dans des sessions distinctes lorsque l’isolation par destinataire est configurée. [#101507](https://github.com/openclaw/openclaw/pull/101507) Merci à @pingfanfan et @vincentkoc.
- L’analyse des PDF par Anthropic et Gemini bloque désormais par défaut les redirections dangereuses vers des réseaux privés et les réponses surdimensionnées, tout en continuant à prendre en charge les points de terminaison locaux configurés. [#97872](https://github.com/openclaw/openclaw/pull/97872) Merci à @eleqtrizit.
- Les requêtes Anthropic transitant par Cloudflare AI Gateway bénéficient désormais du blocage standard d’OpenClaw pour les adresses privées, des délais d’expiration, des recommandations de nouvelle tentative et des protections gérées des réponses. [#98003](https://github.com/openclaw/openclaw/pull/98003) Merci à @wangmiao0668000666.
- La récupération de la configuration avertit désormais lorsque le fichier a été réparé, mais que ses autorisations finales n’ont pas pu être renforcées, préservant ainsi la récupération tout en signalant le problème de sécurité. [#95348](https://github.com/openclaw/openclaw/pull/95348) Merci à @hugenshen.
- `openclaw security audit` ne signale désormais l’exposition du navigateur que lorsque la politique des plugins autorise effectivement l’exécution du plugin Browser. [#97732](https://github.com/openclaw/openclaw/pull/97732) Merci à @amtellezfernandez.
- L’état en lecture seule des appels vocaux omet désormais les numéros de téléphone, les transcriptions, les détails de routage, les identifiants d’événements traités et les métadonnées brutes. [#97870](https://github.com/openclaw/openclaw/pull/97870) Merci à @eleqtrizit.
- Les outils d’état et de diagnostic peuvent désormais identifier les suivis obsolètes d’approbation d’exécution intentionnellement supprimés après `/new` ou `/reset`, au lieu de les traiter comme des échecs de livraison inexpliqués. [#98293](https://github.com/openclaw/openclaw/pull/98293) Merci à @bsniznd.
- Les conversations parallèles Codex `/btw` préservent désormais l’obligation, pour une application de plugin en mode demande, d’obtenir une approbation avant les actions destructrices. [#98812](https://github.com/openclaw/openclaw/pull/98812)
- Les versions de publication Android n’exposent plus les paramètres détaillés de `camera.clip`, les données de l’appareil, les chemins temporaires et les événements d’enregistrement dans les journaux de production. [#99484](https://github.com/openclaw/openclaw/pull/99484) Merci à @nianjiuzst.
- Les longs détails d’approbation et aperçus de commandes du serveur d’application Codex préservent désormais les émojis et les caractères Unicode étendus au lieu d’afficher du texte corrompu. [#100177](https://github.com/openclaw/openclaw/pull/100177) Merci à @xialonglee.
- Le transfert des notifications Android laisse désormais les messages WhatsApp, Telegram, Discord et Signal dans leurs sessions de canal dédiées, empêchant les réponses en double ou dans la mauvaise conversation, tandis que les autres applications sélectionnées continuent de suivre les règles de transfert. [#101170](https://github.com/openclaw/openclaw/pull/101170)
- L’installation ou la mise à jour des Skills, plugins et paquets ClawHub sous Linux ne risque plus de modifier les autorisations partagées de `/tmp` ni de perturber des services sans rapport. [#101246](https://github.com/openclaw/openclaw/pull/101246) Merci à @ch3ch2cho2021 et @yangxiansheng.
- L’approbation stricte d’exécution conserve désormais les commandes de code en ligne d’interpréteurs regroupées ou enchaînées, telles que `python3 -xcprint`, comme des approbations ponctuelles plutôt que comme des entrées réutilisables de la liste d’autorisation. [#101353](https://github.com/openclaw/openclaw/pull/101353) Merci à @pgondhi987.
- Les longues explications de vérification automatique d’exécution contenant des émojis ou des caractères CJK supplémentaires sont désormais raccourcies proprement au lieu d’afficher un symbole de remplacement corrompu. [#101513](https://github.com/openclaw/openclaw/pull/101513) Merci à @wm0018.
- Les titres et descriptions d’approbation des plugins restent désormais lisibles lorsque des émojis ou des caractères CJK supplémentaires se trouvent à la limite de texte du Gateway. [#101580](https://github.com/openclaw/openclaw/pull/101580) Merci à @wm0018.

</Accordion>

## Détails des applications officielles

### Modifications communes aux applications

Sur l’ensemble des interfaces clientes propriétaires, les listes de conversations, les palettes de commandes, les notifications, les médias, l’état de la connexion et les vues de fichiers ou de différences se comportent de manière plus cohérente. La TUI reste ouverte en affichant des erreurs utiles, les commandes de différences restent limitées à la comparaison affichée à l’écran, et les comportements communs liés au clavier, aux chemins, à l’état, à Talk et à la voix sont moins susceptibles de diverger entre les clients.

Les applications officielles bénéficient d’une localisation native plus étendue, de processus améliorés pour les messages vocaux, de plusieurs profils Gateway, de conversations mises en cache et d’un état de connexion plus clair lors du passage d’une installation à une autre.

### Autres modifications pour iOS, iPadOS et Apple Watch

[iOS](/fr/platforms/ios) propose une navigation et une interface de chat actualisées, des notes vocales, des fichiers d’espace de travail, une récupération plus sûre après un échec de configuration, plusieurs profils Gateway, ainsi que la dictée et les réponses rapides sur Apple Watch.

### Autres modifications pour Android

[Android](/fr/platforms/android) améliore la configuration initiale, la navigation, les outils de chat et de session, la voix, les autorisations, les notifications, les tâches planifiées, la localisation, la gestion de plusieurs profils Gateway et le rétablissement de la connexion.

### Autres modifications pour macOS

[macOS](/fr/platforms/macos) améliore la configuration initiale de l’agent local, les commandes natives de chat et de session, les tunnels en mode distant, le lancement d’applications, l’efficacité en arrière-plan et l’identité de l’appareil lors des mises à niveau et des reconnexions.

### Interface utilisateur du terminal et autres clients

Les conversations du terminal restent ouvertes en affichant des erreurs utiles, les listes de sessions conservent des aperçus lisibles et les actions de différences restent associées à la comparaison actuellement affichée à l’écran.

<Accordion title="Sources et contributeurs">

- Les utilisateurs d’Android dont la langue est prise en charge voient désormais les principales invites de configuration, de connexion, d’approbation, d’interface système et de récupération du Gateway dans la langue de leur appareil. [#97111](https://github.com/openclaw/openclaw/pull/97111) Merci à @vincentkoc.
- Les écrans Contrôle, Chat, Conversation, Agent, Réglages, Gateway et Vue d’ensemble d’iOS proposent désormais une navigation, des indications d’état et des commandes plus claires, ainsi qu’un composeur de chat compact et extensible. [#98452](https://github.com/openclaw/openclaw/pull/98452) Merci à @joelnishanth.
- Les écrans Contrôle, Agents et Réglages d’iOS sont désormais plus faciles à parcourir, avec moins de destinations en double, des commandes plus compactes, une navigation standard et un raccourci direct vers le Gateway depuis les vues détaillées. [#98811](https://github.com/openclaw/openclaw/pull/98811) Associé à [#98803](https://github.com/openclaw/openclaw/issues/98803).
- Le Chat iOS natif accorde désormais plus d’espace à la conversation, utilise un composeur compact qui s’agrandit avec les longs brouillons et conserve des commandes de pièce jointe, de Conversation et d’envoi faciles à toucher. [#98953](https://github.com/openclaw/openclaw/pull/98953) Associé à [#98929](https://github.com/openclaw/openclaw/issues/98929).
- Le Chat, la Conversation, les Réglages, la navigation et l’intégration sur iPhone et iPad utilisent désormais des commandes natives, une apparence et un comportement de retour plus cohérents. [#99231](https://github.com/openclaw/openclaw/pull/99231) Associé à [#99195](https://github.com/openclaw/openclaw/issues/99195). Merci à @marvkr.
- Les utilisateurs d’iOS peuvent enregistrer et envoyer une note vocale de trois minutes maximum depuis le composeur de chat, ajouter éventuellement du texte et voir la durée de l’enregistrement dans le chat. [#100946](https://github.com/openclaw/openclaw/pull/100946)
- Les utilisateurs d’Android peuvent enregistrer et envoyer une note vocale de trois minutes maximum depuis le composeur de chat sans passer en mode Conversation en direct. [#101193](https://github.com/openclaw/openclaw/pull/101193)
- Les versions Android tierces peuvent autoriser les vérifications de localisation demandées par le Gateway lorsque l’application est en arrière-plan en sélectionnant Location &gt; Always et en accordant l’autorisation de localisation permanente d’Android. [#100967](https://github.com/openclaw/openclaw/pull/100967) Merci à @ioridev.
- Android peut désormais conserver plusieurs Gateways associés et passer de l’un à l’autre sans répéter la configuration, chaque Gateway conservant ses propres identifiants, son état de chat, ses messages en file d’attente et ses données locales supprimables. [#100947](https://github.com/openclaw/openclaw/pull/100947)
- Les utilisateurs d’iOS peuvent associer plusieurs Gateways une seule fois et passer de l’un à l’autre tout en conservant les identifiants, l’approbation, les chats, les préférences, l’accès à l’appareil et l’inscription aux notifications push rattachés au bon Gateway. [#100948](https://github.com/openclaw/openclaw/pull/100948)
- Le Chat Android comprend désormais une action Nouveau chat et un navigateur de commandes `/` qui filtre les commandes annoncées par l’agent actuel sans supprimer leurs arguments. [#98796](https://github.com/openclaw/openclaw/pull/98796) Merci à @iwhatsskill et @solvely-colin.
- Le Chat Android permet désormais aux utilisateurs de choisir et de vérifier l’agent configuré pour les nouveaux messages, le Chat, le mode Conversation et le canevas d’accueil restant alignés sur cette sélection. [#80422](https://github.com/openclaw/openclaw/pull/80422) Merci à @bcperry.
- Les chats Android affichent désormais de manière cohérente les liens, listes, citations, emphases, codes et textes bruts grâce au moteur de rendu Markdown partagé. [#88899](https://github.com/openclaw/openclaw/pull/88899) Associé à [#88014](https://github.com/openclaw/openclaw/issues/88014). Merci à @iman-sharif et @pluviobyte.
- Les automatisations de notifications Android placent désormais les événements acceptés en file d’attente pendant la connexion ou la reconnexion au Gateway et les transmettent dans l’ordre une fois la liaison prête. [#92602](https://github.com/openclaw/openclaw/pull/92602) Associé à [#79552](https://github.com/openclaw/openclaw/issues/79552). Merci à @ashishpatel26 et @hectorrp13.
- Les utilisateurs d’Android peuvent ouvrir une tâche planifiée pour examiner sa programmation, sa charge utile, son état de livraison, ses résultats récents, ses erreurs et son identifiant exact. [#95107](https://github.com/openclaw/openclaw/pull/95107) Merci à @tosko4.
- Les captures ponctuelles de l’appareil photo sur Android désactivent désormais rapidement l’appareil photo et l’indicateur de confidentialité après une réussite, un échec ou une annulation. [#98040](https://github.com/openclaw/openclaw/pull/98040) Merci à @nianjiuzst.
- Les demandes Android d’appui pour parler en arrière-plan renvoient désormais `NODE_BACKGROUND_UNAVAILABLE` au lieu de tenter d’activer le microphone, ce que le système d’exploitation pourrait refuser. [#98055](https://github.com/openclaw/openclaw/pull/98055) Merci à @nianjiuzst.
- L’autorisation Android d’accès aux photos sélectionnées compte désormais comme un accès utilisable, ce qui permet `photos.latest` tout en indiquant clairement comment gérer la sélection limitée. [#98059](https://github.com/openclaw/openclaw/pull/98059) Merci à @nianjiuzst.
- Les actions du Gateway sur Android s’arrêtent désormais rapidement lorsque leur connexion se ferme, tandis que les requêtes lancées après la reconnexion ne sont pas annulées par un ancien nettoyage. [#98067](https://github.com/openclaw/openclaw/pull/98067) Merci à @nianjiuzst.
- La récupération de connexion sur Android identifie désormais les codes de configuration expirés, les identifiants obsolètes et l’authentification absente ou non valide, avec l’étape suivante appropriée. [#98094](https://github.com/openclaw/openclaw/pull/98094) Merci à @qingminglong.
- Android indique désormais séparément si la Conversation en temps réel et la Dictée sont prêtes, n’ouvre la configuration que pour le mode qui en a besoin et conserve visibles les informations utiles sur les échecs du fournisseur. [#98269](https://github.com/openclaw/openclaw/pull/98269) Associé à [#98268](https://github.com/openclaw/openclaw/issues/98268). Merci à @solvely-colin.
- Android peut se reconnecter au même Gateway sans effacer l’accès enregistré lorsque les champs d’identifiants sont vides, tandis que les modifications du point de terminaison et du code de configuration évitent de conserver silencieusement des identifiants obsolètes. [#98277](https://github.com/openclaw/openclaw/pull/98277) Merci à @solvely-colin.
- Android fournit désormais des instructions plus claires sur la vérification TLS pour les Gateways distants et Tailnet accessibles et accorde davantage de temps aux négociations valides lentes pour afficher l’invite d’approbation. [#98366](https://github.com/openclaw/openclaw/pull/98366) Associé à [#98365](https://github.com/openclaw/openclaw/issues/98365). Merci à @joshavant.
- Android peut désormais s’associer à des Gateways locaux annoncés par des noms `.local` standard en texte clair, tout en continuant à refuser les adresses distantes dangereuses ou ambiguës en texte clair. [#98439](https://github.com/openclaw/openclaw/pull/98439) Merci à @joshavant.
- La lecture d’un code QR de configuration de Gateway valide sur Android lance désormais immédiatement l’association et passe à la récupération ou à l’approbation au lieu de laisser les utilisateurs sur l’écran de configuration. [#98483](https://github.com/openclaw/openclaw/pull/98483) Merci à @joshavant.
- La configuration du Gateway sur Android remplace désormais un avertissement d’authentification générique par des libellés de récupération précis pour les codes de configuration expirés, les identifiants absents ou non valides, l’authentification enregistrée obsolète et l’identité d’appareil requise. [#98698](https://github.com/openclaw/openclaw/pull/98698) Associé à [#98046](https://github.com/openclaw/openclaw/issues/98046). Merci à @ccaprani et @masatohoshino.
- La navigation Retour d’Android ramène désormais les utilisateurs depuis les réglages du Gateway ou de Conversation, les Sessions et les Fournisseurs vers l’onglet Voix, Chat ou palette de commandes depuis lequel ils sont partis. [#98914](https://github.com/openclaw/openclaw/pull/98914) Merci à @lokimorty.
- L’intégration Android n’indique désormais les Contacts et le Calendrier comme prêts qu’une fois les accès en lecture et en écriture disponibles, y compris lorsque ces autorisations sont accordées dans des invites distinctes. [#99158](https://github.com/openclaw/openclaw/pull/99158) Merci à @nianjiuzst.
- Android indique désormais que l’accès aux Contacts et au Calendrier est accordé uniquement lorsque la lecture et l’ajout d’entrées sont tous deux autorisés, ce qui évite des résultats de configuration trompeurs. [#99204](https://github.com/openclaw/openclaw/pull/99204) Merci à @nianjiuzst.
- La Conversation et la Dictée sur Android utilisent désormais le microphone d’un casque Bluetooth connecté pour une capture mains libres et basculent proprement sur la solution de repli lorsqu’il se déconnecte. [#99259](https://github.com/openclaw/openclaw/pull/99259) Associé à [#96241](https://github.com/openclaw/openclaw/issues/96241). Merci à @gwtaylor.
- Les utilisateurs d’Android peuvent désormais consulter directement les mentions de licences tierces et open source incluses depuis Settings &gt; Licenses. [#99299](https://github.com/openclaw/openclaw/pull/99299) Merci à @joshavant.
- La configuration du Gateway sur Android propose désormais des actions de récupération précises pour les codes expirés, les identifiants obsolètes, l’approbation de Node en attente et les échecs d’authentification définitifs. [#99414](https://github.com/openclaw/openclaw/pull/99414) Associé à [#98045](https://github.com/openclaw/openclaw/issues/98045) et [#98046](https://github.com/openclaw/openclaw/issues/98046). Merci à @ccaprani.
- L’application compagnon Android ne renvoie plus les propres notifications d’OpenClaw vers le Gateway, même lorsque d’anciennes listes d’autorisation contiennent encore le paquet de l’application. [#99568](https://github.com/openclaw/openclaw/pull/99568) Merci à @ly85206559.
- La configuration manuelle du Gateway sur Android attribue désormais par défaut le port 18789 aux hôtes TLS ordinaires et en texte clair lorsque le port est vide, tout en conservant le port 443 pour Tailscale MagicDNS. [#99865](https://github.com/openclaw/openclaw/pull/99865) Merci à @ly85206559.
- L’appui pour parler sur Android prend désormais le contrôle exclusif du microphone pendant le mode Conversation et réactive ensuite le bon écouteur en temps réel, ce qui empêche les captures en double. [#99986](https://github.com/openclaw/openclaw/pull/99986) Merci à @nianjiuzst.
- Le chat Android ajoute désormais la coloration syntaxique en modes clair et sombre au code clôturé pris en charge, ce qui facilite le parcours des réponses contenant beaucoup de code sans retarder les messages partiels ou trop volumineux. [#100217](https://github.com/openclaw/openclaw/pull/100217)
- Les sessions de Gateway enregistrées sur Android se reconnectent désormais rapidement lorsque l’accès Internet validé revient, sans tentatives inutiles lors de changements de réseau captif ou partiel. [#100347](https://github.com/openclaw/openclaw/pull/100347) Merci à @ly85206559.
- Les réglages du Gateway sur Android accordent désormais un espace plus stable aux détails de connexion, aux champs de configuration et au texte d’aide sur les écrans de taille téléphone, ce qui réduit les coupures et l’encombrement. [#100363](https://github.com/openclaw/openclaw/pull/100363) Merci à @iwhatsskill.
- Android présente désormais des onglets inférieurs régulièrement espacés et évite le plantage du cache de chat au démarrage qui pouvait empêcher l’accès à l’interface système après l’intégration. [#100382](https://github.com/openclaw/openclaw/pull/100382) Merci à @iwhatsskill.
- Le chat Android restaure désormais une réponse active avec le texte mis en mémoire tampon après une reconnexion ou une réouverture, et récupère les intervalles d’événements manqués sans dupliquer les lignes de la transcription. [#100384](https://github.com/openclaw/openclaw/pull/100384)
- Android isole désormais les conversations en cache et les commandes en file d’attente lorsque les utilisateurs refont l’association, se déconnectent ou remplacent les identifiants du Gateway, empêchant ainsi une nouvelle identité d’hériter des données de la précédente. [#100454](https://github.com/openclaw/openclaw/pull/100454)
- Le chat Android conserve désormais les messages envoyés et les réponses actives de manière stable pendant les reconnexions, en rapprochant l’historique retardé sans tours en double ni activité obsolète du composeur. [#100551](https://github.com/openclaw/openclaw/pull/100551)
- L’appui pour parler sur Android nettoie désormais les captures placées en arrière-plan, annulées ou relancées sans rouvrir le microphone ni interrompre une session vocale plus récente, et les requêtes qui se chevauchent renvoient un état occupé. [#100552](https://github.com/openclaw/openclaw/pull/100552) Merci à @xialonglee.
- Les utilisateurs d’Android peuvent désormais effectuer un appui long sur une réponse de l’assistant et choisir Écouter, avec un état de lecture visible, un toucher pour arrêter et une synthèse vocale de secours sur l’appareil. [#100772](https://github.com/openclaw/openclaw/pull/100772)
- Le mode Talk d’Android maintient désormais la fonction Appuyer pour parler occupée jusqu’à ce que le tour actif soit transmis en toute sécurité, ce qui évite le chevauchement des microphones, la lecture obsolète ou la reprise par le mauvais relais. [#100786](https://github.com/openclaw/openclaw/pull/100786)
- Les conversations Android excluent désormais le raisonnement interne, les résultats des outils et les détails opérationnels bruts des conversations en direct comme des caches hors ligne rouverts. [#100826](https://github.com/openclaw/openclaw/pull/100826) Merci à @iman-sharif.
- Les utilisateurs d’Android peuvent effectuer un appui prolongé sur un message de conversation terminé pour copier tout le texte, sélectionner un extrait, le partager ou le citer dans une réponse sans perdre leur brouillon en cours. [#100879](https://github.com/openclaw/openclaw/pull/100879) Merci à @bdhwan.
- Les utilisateurs des conversations Android peuvent prévisualiser la destination et le résumé d’un lien avant de l’ouvrir, sans que les messages ne déclenchent de recherches en arrière-plan, avec un état d’indisponibilité clair lorsque l’inspection échoue. [#100898](https://github.com/openclaw/openclaw/pull/100898)
- L’intégration Android se termine désormais après l’approbation du Node déclenchée par les autorisations, au lieu de bloquer les utilisateurs dans une boucle entre les écrans d’autorisations et d’approbation. [#100959](https://github.com/openclaw/openclaw/pull/100959)
- Le sélecteur de modèle d’Android reste désormais synchronisé avec la conversation et l’agent actifs, et l’échec d’un changement de modèle n’entraîne plus l’envoi du message suivant avec le modèle précédent. [#100985](https://github.com/openclaw/openclaw/pull/100985)
- Android masque les commandes de réflexion pour les modèles qui ne prennent pas en charge le raisonnement configurable, empêche les paramètres non pris en charge d’interrompre les envois en direct ou en attente et restaure la préférence de l’utilisateur sur les modèles compatibles. [#101002](https://github.com/openclaw/openclaw/pull/101002)
- Les utilisateurs d’Android peuvent rechercher des sessions par nom, libellé ou clé au-delà de la fenêtre Récents ou Archivés actuellement chargée, les correspondances de sessions actives mises en cache restant disponibles pendant une panne temporaire du Gateway. [#101102](https://github.com/openclaw/openclaw/pull/101102)
- Les utilisateurs d’Android disposant d’un clavier physique peuvent appuyer sur Entrée pour envoyer un message de conversation, tandis que les combinaisons modifiées avec Entrée restent disponibles pour le texte multiligne. [#101321](https://github.com/openclaw/openclaw/pull/101321) Merci à @3ninyt3nin-creator.
- Les utilisateurs d’Android peuvent désormais voir des miniatures de page sûres dans les aperçus de liens développés, tandis que les images incorrectes ou bloquées laissent discrètement l’aperçu textuel intact. [#101396](https://github.com/openclaw/openclaw/pull/101396)
- Les utilisateurs d’Android peuvent désormais archiver une session de conversation et la supprimer depuis la vue Archivés, même avec les autorisations d’opérateur limitées de l’application. [#101522](https://github.com/openclaw/openclaw/pull/101522)
- Les chaînes Android en indonésien sont désormais fournies sous la locale reconnue par Android ; les mêmes travaux de la version précédente ont également préparé la version Play 2026.6.11 et le texte de la boutique. [3412318](https://github.com/openclaw/openclaw/commit/341231831b706df0024d2d9e2096438e3581b5af) Merci à @joshavant.
- Les utilisateurs du chinois traditionnel voient désormais des formulations localisées pour les actions courantes de l’application native, les autorisations, les messages de connexion et les états mobiles. [f0d2066](https://github.com/openclaw/openclaw/commit/f0d2066787f172079c19f26b72f49ad3950ceea6)
- Android explique désormais dans la langue sélectionnée comment conserver un jeton enregistré ou remplacer une configuration existante du Gateway. Sources : [32f3eb3](https://github.com/openclaw/openclaw/commit/32f3eb3fa805e776f562ea1af6f7731bf4ce8b48), [6336762](https://github.com/openclaw/openclaw/commit/6336762b68e5cebd44acbda527ba1d964448355a), [eeb0682](https://github.com/openclaw/openclaw/commit/eeb0682409b86dcd956ffe30e45f12c6424d8c05), [ed72b86](https://github.com/openclaw/openclaw/commit/ed72b860a436eb187c9fa2fb4ef91ecb13180760), [e376f28](https://github.com/openclaw/openclaw/commit/e376f285e87bfa07bf3111b446b9e44fcba6cd9e), [a6631fe](https://github.com/openclaw/openclaw/commit/a6631fee6d465b30e116038d8e6e8aa1f041019c), [283bd82](https://github.com/openclaw/openclaw/commit/283bd82eb414f0ba968157aec77eac7701e7ae1e), [6d5a1db](https://github.com/openclaw/openclaw/commit/6d5a1db04859adbf8860376ddbd5ce1b5d5f3efa), [d3087fc](https://github.com/openclaw/openclaw/commit/d3087fcf375c81b81ffb0cf7b65764559b6e836f), [8bab3f7](https://github.com/openclaw/openclaw/commit/8bab3f7dbd8364de93422d064c00c7171139ccf4), [dfb7bc8](https://github.com/openclaw/openclaw/commit/dfb7bc84d8194177988d2870fe17b963912a1c52), [7780e30](https://github.com/openclaw/openclaw/commit/7780e3062dcb547227d90cbd02111910e00e3f6f), [b109b88](https://github.com/openclaw/openclaw/commit/b109b88b5785b22fea0fe20f06b314dbda156d58), [c1b7bf2](https://github.com/openclaw/openclaw/commit/c1b7bf23bc16d641e966ff4de7cbb8b2becfaddc), [dedb17c](https://github.com/openclaw/openclaw/commit/dedb17ceff3c93c938aaff5c3f697d70d06e9dd1), [6f84c10](https://github.com/openclaw/openclaw/commit/6f84c10bdae1f73b112777c9a94d5933171d4b75), [a8358e8](https://github.com/openclaw/openclaw/commit/a8358e8848c8228893a259b36cd6f54139fa18da), [2501ca3](https://github.com/openclaw/openclaw/commit/2501ca340945072642b9bb2ec1348a15de83d4b6), [1b40eb9](https://github.com/openclaw/openclaw/commit/1b40eb9e6a2feb0c436948fbcd113424e85db01e), [d47308f](https://github.com/openclaw/openclaw/commit/d47308f8008ca08c7df983d3932c63d4ede4060c), [3a2baef](https://github.com/openclaw/openclaw/commit/3a2baef0bfc62b0d37b4f7648869e57fabaa3cb3).
- Les avis de licence, les remerciements, les états vides et les actions relatives aux licences ouvertes d’Android utilisent désormais la langue sélectionnée dans toutes les traductions de cette version. Sources : [4b8b60f](https://github.com/openclaw/openclaw/commit/4b8b60f8abc1ae99228fe31bedd31977064062d1), [3b16c41](https://github.com/openclaw/openclaw/commit/3b16c41daa8237f481c2b8061b0f6e00817ffbca), [c4966e8](https://github.com/openclaw/openclaw/commit/c4966e86cbc9403177ccb725d5d1cb87c519b853), [116e9db](https://github.com/openclaw/openclaw/commit/116e9db2a18d5341b5e44844dfefa938fa467e6a), [1617233](https://github.com/openclaw/openclaw/commit/1617233ff141c913def1675aaee33bac3590b1f6), [a598c97](https://github.com/openclaw/openclaw/commit/a598c976d01db50adc35de495a981635c6a38cd4), [3b9e0c8](https://github.com/openclaw/openclaw/commit/3b9e0c86828e0d8f45acafd2908b82191ecfd13f), [eebbf6c](https://github.com/openclaw/openclaw/commit/eebbf6cba5fef565044e556b862f3ce09db2fd86), [4c08ea4](https://github.com/openclaw/openclaw/commit/4c08ea403ad9436d9a8cf0dd02799a441a1bc4db), [21be45c](https://github.com/openclaw/openclaw/commit/21be45c17e845e4027f7a044d2c009423bcd07b7), [b415072](https://github.com/openclaw/openclaw/commit/b415072a2e6a900f382d7e68594b4511bd1a0c5b), [9eec24d](https://github.com/openclaw/openclaw/commit/9eec24df6710308e7a66a7a80bc232f7ee024900), [de23987](https://github.com/openclaw/openclaw/commit/de23987f13b95d71a145218b11f36857a8eefc2c), [898564e](https://github.com/openclaw/openclaw/commit/898564e71aef7abe66112d757eee8db83eaf04d2), [7af800b](https://github.com/openclaw/openclaw/commit/7af800b5be960b595829642b412fce2842017cfc), [a47ec8d](https://github.com/openclaw/openclaw/commit/a47ec8d303e46642d81c8c231786fb0b2fd51045), [fac9e58](https://github.com/openclaw/openclaw/commit/fac9e586685666a9f8159f5132fb18ad2bc37210), [61e4ef0](https://github.com/openclaw/openclaw/commit/61e4ef08f483e9e32eaa6edf6fb391185e462394), [399f9d6](https://github.com/openclaw/openclaw/commit/399f9d696171ec14eafa1d5de64533d2b9670819), [9069f69](https://github.com/openclaw/openclaw/commit/9069f696986ed970565989efacb27024160dbad2), [2e049f5](https://github.com/openclaw/openclaw/commit/2e049f509fad1ba2889186e457e630bad50d7a16).
- Les indications relatives à Talk, à la dictée, à la configuration du fournisseur vocal, à l’état de préparation et aux échecs sur Android utilisent désormais la langue sélectionnée dans toutes les traductions de cette version. Sources : [c785196](https://github.com/openclaw/openclaw/commit/c785196287d0e929396def1fc0929af672bdc7cf), [9edb906](https://github.com/openclaw/openclaw/commit/9edb9065a8596f8473bea1ae4a626da8f0508724), [da67520](https://github.com/openclaw/openclaw/commit/da67520b8d5fc49775005638425ca2d9317d6ee7), [88f13ca](https://github.com/openclaw/openclaw/commit/88f13cab62999abe7c2650ccd32d55e72ee80046), [e878efe](https://github.com/openclaw/openclaw/commit/e878efe9508edd88166a09eb5a1e503ab405aad9), [662d127](https://github.com/openclaw/openclaw/commit/662d127f60b91aaaec4b5363c73bd00855d9e3f0), [5002a0e](https://github.com/openclaw/openclaw/commit/5002a0e9ea9970e4e270ec029c994dc217549687), [fe57718](https://github.com/openclaw/openclaw/commit/fe57718b419a08a5306e3d195519d3527a07f936), [ebcf8dc](https://github.com/openclaw/openclaw/commit/ebcf8dcaf7120bfdc01d0b83c595895355944b5b), [4e7ca8e](https://github.com/openclaw/openclaw/commit/4e7ca8e6c6afe672da1a40922e67f94e005f9e8b), [9863ceb](https://github.com/openclaw/openclaw/commit/9863cebef12bf2e7b1414ac5f64bc3277a7ca28b), [768da09](https://github.com/openclaw/openclaw/commit/768da09ceb157a1bfd4dd309b8566a2b9ce7668d), [ff5d986](https://github.com/openclaw/openclaw/commit/ff5d98681f7e38043bbc33a87fade6069da9795c), [005ebd1](https://github.com/openclaw/openclaw/commit/005ebd108f4d6ebd663c8cf996634aeaf3e82287), [2824796](https://github.com/openclaw/openclaw/commit/28247960130f88b6ac01d8a392d54d0996212c1a), [4eaec93](https://github.com/openclaw/openclaw/commit/4eaec934e83d0bc4f0d595c37e06356c5b54dc2a), [f99fdc9](https://github.com/openclaw/openclaw/commit/f99fdc9403b49b59a42c8d3522368d64b9168498), [555f601](https://github.com/openclaw/openclaw/commit/555f601230c075185f362c71db518096c3818998), [d2af689](https://github.com/openclaw/openclaw/commit/d2af68965a0cdb3a1ed91c2d1ba8aedd76dcb3ac), [81e92de](https://github.com/openclaw/openclaw/commit/81e92deb089b54ccedbe0c9593b492f6f09b989d), [8ed6c78](https://github.com/openclaw/openclaw/commit/8ed6c78b7891b12fee2b378d79e6888764455486).
- Les échecs d’association et de connexion sur Android fournissent désormais des étapes suivantes localisées pour les codes expirés, les identifiants, les approbations et les nouvelles tentatives. Sources : [48eae1b](https://github.com/openclaw/openclaw/commit/48eae1b8c96d9e8873ba59ccc6e2493fa847c27e), [f095eb9](https://github.com/openclaw/openclaw/commit/f095eb9fd989020ad1bdd57a57702ce899f98607), [714c2b0](https://github.com/openclaw/openclaw/commit/714c2b07bdf715055205b550018d289e4fb06948), [d2b5bb7](https://github.com/openclaw/openclaw/commit/d2b5bb72e8e3b61dac5ddc7085fb0b5dfe53a18c), [d2551bd](https://github.com/openclaw/openclaw/commit/d2551bdd3cf53973d679a47f3e753fc0d75f3edb), [6b91507](https://github.com/openclaw/openclaw/commit/6b915072208b121055000ef1d3a36578eac4da2e), [f1c4476](https://github.com/openclaw/openclaw/commit/f1c44762771edb9fe2124a15c871dc466b215c43), [5ef6fb4](https://github.com/openclaw/openclaw/commit/5ef6fb4d7cd053e1caa0d1caf27ff93f7bb3311c), [e2e0312](https://github.com/openclaw/openclaw/commit/e2e03127240c1878b3ea6a336fd91bd995a2be83), [7fb70b2](https://github.com/openclaw/openclaw/commit/7fb70b235d1d7d4ece6519b27f2d65d51999272c), [d702f5c](https://github.com/openclaw/openclaw/commit/d702f5c6e6c4f1463c82c4f74d96765b316f76bf), [24e6b9f](https://github.com/openclaw/openclaw/commit/24e6b9fbe1b9449b837fecddf1f9b160ed7bb896), [7cb41cc](https://github.com/openclaw/openclaw/commit/7cb41ccc63f51208630426e08ceef65e78b02bf9), [a6040c3](https://github.com/openclaw/openclaw/commit/a6040c3560c18005b58aed73a687b8c0d06b7d6b), [5e61da3](https://github.com/openclaw/openclaw/commit/5e61da3deb190b16899157ace98aa520b424e085), [18360ac](https://github.com/openclaw/openclaw/commit/18360ac668f82631f61cf48d0816800385f4cf05), [17a1e3b](https://github.com/openclaw/openclaw/commit/17a1e3bbb2b8de1da6569fe4f46a4ea4138c56e6), [adafb56](https://github.com/openclaw/openclaw/commit/adafb56b2eb9207d93896ebf6c5faa9205875833), [5b5fadb](https://github.com/openclaw/openclaw/commit/5b5fadbf0d17c1fddb13d891037767beb64aa144), [9b30570](https://github.com/openclaw/openclaw/commit/9b30570a935ecdae8ee0e2bc45a42ffdd7223948), [d331a36](https://github.com/openclaw/openclaw/commit/d331a36250f8ebb29bda2ae8fa480a2aa5e15193).
- La découverte du Gateway, la configuration par QR code ou manuelle, les vérifications de connexion, les approbations et les conseils relatifs aux autorisations sur Android utilisent désormais la langue sélectionnée dans toutes les traductions de cette version. Sources : [28062c8](https://github.com/openclaw/openclaw/commit/28062c868c03e1e6876013d450c8f92bf1fc2faf), [3d43858](https://github.com/openclaw/openclaw/commit/3d438588c5eb0497bdb2fbccf9d6f6cd325d0ec5), [ad74b32](https://github.com/openclaw/openclaw/commit/ad74b322ba80178c1c0f68348a55d5d3e65e64ae), [1b07620](https://github.com/openclaw/openclaw/commit/1b076209c4d2ea37a7178b50f5ba5c54b5753c2b), [4fa4c9e](https://github.com/openclaw/openclaw/commit/4fa4c9e06e39e095a7373390240b3a5a5cf1be79), [1dd5230](https://github.com/openclaw/openclaw/commit/1dd52307fcd74bc25ea31800a4c551bc415f7645), [9db7ec5](https://github.com/openclaw/openclaw/commit/9db7ec5edd62e3f05758a28a6c6acb14f6889ea5), [e6f8788](https://github.com/openclaw/openclaw/commit/e6f8788bf5569e87e9df0d3e404eaef5f86184ab), [e5cf67e](https://github.com/openclaw/openclaw/commit/e5cf67ea1d73d9724a227000eadead902fa606a9), [b52d988](https://github.com/openclaw/openclaw/commit/b52d98861e8c14f30dc459c395fd60281fa99604), [cd3b4ee](https://github.com/openclaw/openclaw/commit/cd3b4eee7d104d266d8514afea2ae53eea435e9d), [c3bcb9f](https://github.com/openclaw/openclaw/commit/c3bcb9fa21ec5f1b98bdb89940e93707b8f9a3e1), [8af3aa0](https://github.com/openclaw/openclaw/commit/8af3aa0b1bfa3f5d2950b053a8d7d2568cbbea31), [c34e79e](https://github.com/openclaw/openclaw/commit/c34e79e7299b19267000a79bb94bcae9608f93a1), [c9c8f6c](https://github.com/openclaw/openclaw/commit/c9c8f6c9f6a9ebf337ff486c15b9cc4d43904ffe), [255e251](https://github.com/openclaw/openclaw/commit/255e2518de492d518cde78617f6c5b220bb1278d), [0e98ba4](https://github.com/openclaw/openclaw/commit/0e98ba4391dddfa9bcd48a978b5cd1df8ae03411), [0cc9927](https://github.com/openclaw/openclaw/commit/0cc9927577c6663a5839a4d2ad3e5708df04157a), [97955d9](https://github.com/openclaw/openclaw/commit/97955d969d83a158a70c23912703e92b69b0883a), [ba449f2](https://github.com/openclaw/openclaw/commit/ba449f240d4e437752be44bef76e93c177454ca4), [0e22e54](https://github.com/openclaw/openclaw/commit/0e22e54431f5740b65ddbfcc307bd6b3c1f43eea), [ae65251](https://github.com/openclaw/openclaw/commit/ae65251fdf5ebfa7213a7d36f64a5bbb8883eb4c), [d957f5a](https://github.com/openclaw/openclaw/commit/d957f5a7900e134b514915cee07c45bb0c2a54be).
- Android explique désormais dans la langue sélectionnée quand une adresse IPv6 avec identifiant de portée doit être remplacée par une adresse sans identifiant de portée ou par un nom d’hôte du réseau local. Sources : [5793f73](https://github.com/openclaw/openclaw/commit/5793f731f54f1de387a49e014a632517450f75a2), [066e697](https://github.com/openclaw/openclaw/commit/066e6973b084c62717a2e9ac99b84e99459597b7), [bf35947](https://github.com/openclaw/openclaw/commit/bf35947eb2695740e61cdd180fde44b4308ba472), [3385817](https://github.com/openclaw/openclaw/commit/3385817658496c88166f16cdbcbb0dbd3b8419b5), [a0a5054](https://github.com/openclaw/openclaw/commit/a0a5054b93bf842ff4dd281dac2617129dd9900c), [66cb9a9](https://github.com/openclaw/openclaw/commit/66cb9a99b1d9c30589fcc9b42144c95322bd30ab), [3da73a7](https://github.com/openclaw/openclaw/commit/3da73a77fe51060659a3ad69018a65e19cf21837), [df659ec](https://github.com/openclaw/openclaw/commit/df659eca87253824b5eccaa1939fa38877a87e7e), [57a3975](https://github.com/openclaw/openclaw/commit/57a3975ce14062de887707e38ab580b20ff39421), [141b2cf](https://github.com/openclaw/openclaw/commit/141b2cf4d10cb33a487e62c7e304aba88b135da1), [b043adf](https://github.com/openclaw/openclaw/commit/b043adf192bb64e8ff64bbf6b9631e30a4446f1e), [dcc4fa8](https://github.com/openclaw/openclaw/commit/dcc4fa874683a59f86656be19adfc05b688cc3ea), [eade8f1](https://github.com/openclaw/openclaw/commit/eade8f1c1a142eefa47a2657ef77a352944506cc), [72a8098](https://github.com/openclaw/openclaw/commit/72a809840890575654f7d293631965af0541f9e9), [355fa77](https://github.com/openclaw/openclaw/commit/355fa773f8ac13c433eea42f4e575c895b224863), [8cc1786](https://github.com/openclaw/openclaw/commit/8cc1786f495af1c7c55ac5f2b145ff7df25853dd), [a3ef37b](https://github.com/openclaw/openclaw/commit/a3ef37b991533671eae13ddbd25324bc5f9c4749), [cb9ac50](https://github.com/openclaw/openclaw/commit/cb9ac50f5bc7f8148eeacbf8b921ebaa3bab6680), [cab8147](https://github.com/openclaw/openclaw/commit/cab81470d96126ef92614ba38468e94964429c20), [7cc3cb0](https://github.com/openclaw/openclaw/commit/7cc3cb0d28c807871b2e997a996f4c920fc0b7ae), [ca258fb](https://github.com/openclaw/openclaw/commit/ca258fb9452d6dac7344530fafbcf2939238d9a4).
- La recherche de commandes et les libellés de nouvelle discussion sur Android utilisent désormais la langue sélectionnée dans toutes les traductions de cette version. Sources : [b81c58b](https://github.com/openclaw/openclaw/commit/b81c58bdf6a07894231bc3afcab9a6b12b175bf8), [8929118](https://github.com/openclaw/openclaw/commit/8929118353fce0b8ac8189a95fd4534b39e85903), [1eee853](https://github.com/openclaw/openclaw/commit/1eee853c71e1ddd5c632e49f1e75b18c0837add7), [a5c9662](https://github.com/openclaw/openclaw/commit/a5c9662cd17746a35adf350f55b3f6b7c6cae78c), [9035729](https://github.com/openclaw/openclaw/commit/9035729528a9ae0ed4922728c94fd025cfdd8ea6), [2e359d4](https://github.com/openclaw/openclaw/commit/2e359d49951bf8c786e4c018ef59858743e80386), [91f4d0a](https://github.com/openclaw/openclaw/commit/91f4d0ae25ae86f76cccaac709b84d87990c7ca1), [e785c4a](https://github.com/openclaw/openclaw/commit/e785c4a8f7025ee7a529816a50207c0f925e3a93), [2c5a076](https://github.com/openclaw/openclaw/commit/2c5a07661c153bced0feb10f34e74811f2920831), [02250d9](https://github.com/openclaw/openclaw/commit/02250d957fed2a1e05baac4b33b7315603002732), [bf23194](https://github.com/openclaw/openclaw/commit/bf23194888b626ec4318955d4305197c1c9c4a88), [603502f](https://github.com/openclaw/openclaw/commit/603502f60f54bf9c0e0b7bd8b200ac0a4cc0d5e5), [a837a1a](https://github.com/openclaw/openclaw/commit/a837a1ac6c00c3e71471bcf4ff451b9cecf02f69), [26df1fa](https://github.com/openclaw/openclaw/commit/26df1fa7bca40fbb24f199593ae4bd4de74b2302), [c926610](https://github.com/openclaw/openclaw/commit/c9266107d6c65489b75ae412fe9484d2eca347c6), [c312f9f](https://github.com/openclaw/openclaw/commit/c312f9f0e059b838f4afdbf20f2f1bd8b938ba13), [f4275fa](https://github.com/openclaw/openclaw/commit/f4275fa00b8f89055a8b3a8b23740153750e97af), [69d4657](https://github.com/openclaw/openclaw/commit/69d4657bdb2da553641e34f1b7f85223cfb8c660), [3e66eb9](https://github.com/openclaw/openclaw/commit/3e66eb9de863d333d9f7b7951d2b63eac857df07), [db5057e](https://github.com/openclaw/openclaw/commit/db5057edf935d85b6324bd725506424f2554fc89), [1fee4a5](https://github.com/openclaw/openclaw/commit/1fee4a5daf57a864cd730b9dc2f0bcb19d90c5d8).
- Les versions Android non anglophones prises en charge localisent désormais les conseils relatifs à la file d’attente hors ligne du Gateway ainsi que les actions Réessayer et Supprimer pour les messages texte. [660d752](https://github.com/openclaw/openclaw/commit/660d752b348f740f130610571101db1f0e3ebb53)
- Les versions Android non anglophones prises en charge traduisent désormais davantage de détails sur l’inspection des tâches Cron, les erreurs de remise, les confirmations de copie, l’état par défaut et les requêtes de l’agent. [d83ee4c](https://github.com/openclaw/openclaw/commit/d83ee4c44f9562c4e73fb571016624cf54b538d7)
- Les contrôles d’organisation des modèles, de modèle par défaut et d’épinglage sur Android utilisent désormais la langue sélectionnée. Sources : [41bea62](https://github.com/openclaw/openclaw/commit/41bea62b4a28fab24edff319c7cd8807c494cd53), [bdc98f4](https://github.com/openclaw/openclaw/commit/bdc98f482a1ab6f86766041d8c48a16dddde5a96).
- Les contrôles d’aperçu des liens et les messages d’état sur Android apparaissent désormais dans la langue sélectionnée pour les langues mises à jour. [9997c53](https://github.com/openclaw/openclaw/commit/9997c534b8ebd82fb8db0e9a944e75e594facb2d)
- L’explication relative à la localisation en arrière-plan, l’action d’accès aux paramètres et le choix Pas maintenant sur Android apparaissent désormais dans la langue sélectionnée lorsque le mode de localisation Toujours est proposé. [4c38d89](https://github.com/openclaw/openclaw/commit/4c38d89c0c948b215dd00603db68a80029364c37)
- Les utilisateurs d’Android disposant d’un clavier matériel peuvent désormais envoyer un message depuis le champ de rédaction de la discussion avec Entrée, tandis qu’un envoi non accepté conserve le brouillon. [de8db74](https://github.com/openclaw/openclaw/commit/de8db7405850146199c5f4e6e9efa0704878eea4) Merci à @vincentkoc.
- Les utilisateurs d’Android peuvent désormais se connecter aux Gateways placés derrière Cloudflare Access ou un autre proxy inverse avec authentification en enregistrant les en-têtes d’identification requis dans les paramètres avancés de connexion manuelle. [#100765](https://github.com/openclaw/openclaw/pull/100765)
- La carte Fichiers d’Android permet désormais aux utilisateurs de parcourir l’espace de travail de l’agent actif, de prévisualiser du texte et des images, et de partager les résultats directement depuis leur téléphone. [#100776](https://github.com/openclaw/openclaw/pull/100776)
- Les utilisateurs d’Android peuvent changer le modèle de la discussion actuelle depuis le champ de rédaction, épingler leurs favoris, retrouver leurs choix récents et revenir au modèle par défaut sans quitter la conversation ; les associations plus anciennes devront peut-être être renouvelées. [#100798](https://github.com/openclaw/openclaw/pull/100798)
- L’écran À propos d’Android identifie désormais clairement OpenClaw et fournit des liens directs vers le site Web, la documentation, le dépôt du code source et la communauté Discord. [#100994](https://github.com/openclaw/openclaw/pull/100994)
- La discussion sur Android affiche désormais le LaTeX de niveau supérieur en mode hors ligne sous forme d’équations lisibles, tandis que les expressions mathématiques non valides ou encore en cours de diffusion restent visibles sous forme de texte. [#101435](https://github.com/openclaw/openclaw/pull/101435)
- Dans les packs linguistiques mis à jour dans cette version, davantage de textes de l’application native relatifs à la configuration, au chat, à Talk, aux autorisations, à la connexion, aux sessions, aux fournisseurs et à l’état utilisent désormais la langue sélectionnée. Sources : [a39b07b](https://github.com/openclaw/openclaw/commit/a39b07bb15f280c6d83522f79b1397104e5e05c4), [f8e1e0c](https://github.com/openclaw/openclaw/commit/f8e1e0c5bfbc1b43339ffaaaddd3ee6e45083c2d), [db27d2e](https://github.com/openclaw/openclaw/commit/db27d2ecfa77666397f841d6c0d47153ff94d822), [28a8414](https://github.com/openclaw/openclaw/commit/28a841472684eed2d98a1a277fcefc30855b580b), [e8e96bf](https://github.com/openclaw/openclaw/commit/e8e96bf7ee03aa251fc196693deb70af81da3d63), [6ea407d](https://github.com/openclaw/openclaw/commit/6ea407d46223ad3336abfc93abfb0345b2a58e75), [0011a18](https://github.com/openclaw/openclaw/commit/0011a184786686e625268f55799bdfbb8c8c7fda), [8c5adbf](https://github.com/openclaw/openclaw/commit/8c5adbfe3ec4f68a49d41a3b313a3b6b059c81d3), [019603d](https://github.com/openclaw/openclaw/commit/019603d336028c31de7c49814b45bb29314174e8), [d3d7282](https://github.com/openclaw/openclaw/commit/d3d7282a8cf4c99a29efa8c58c1980557f1c1abc), [267898c](https://github.com/openclaw/openclaw/commit/267898cddb9804bc2f27f94350e0c2342b48bf4b), [55ed57a](https://github.com/openclaw/openclaw/commit/55ed57a4e39b8e40628b9fcbfc982e9ac5fd86b5), [c54dc67](https://github.com/openclaw/openclaw/commit/c54dc67381933fa6240fe617e414fd6f1933ea38), [fd0355d](https://github.com/openclaw/openclaw/commit/fd0355d5b1a12c263bbd87e01ee88f451d11514b), [49726a5](https://github.com/openclaw/openclaw/commit/49726a5f5cbc013d42d7bf64c3033bbce4af319c), [2ffeedf](https://github.com/openclaw/openclaw/commit/2ffeedf406e741e9f58858c83af06aa763ba1ab6), [#98043](https://github.com/openclaw/openclaw/pull/98043), [beca2b1](https://github.com/openclaw/openclaw/commit/beca2b1749733f4afccf47a780187859e7afce22), [4078dc7](https://github.com/openclaw/openclaw/commit/4078dc78cc79b6a9ab0564f065fe1871a9a0c499), [e7e98f6](https://github.com/openclaw/openclaw/commit/e7e98f6399cd7bffdd5598bb86a48066dd2ce3e3), [3020f78](https://github.com/openclaw/openclaw/commit/3020f7817eb3ecf54057ed2847a0d54d0801d348), [0c82908](https://github.com/openclaw/openclaw/commit/0c82908f78e9eb33a9ad13dd726fa92833a688d9), [8a3935f](https://github.com/openclaw/openclaw/commit/8a3935fe0ba7b06dd76203b4f20b11a74ecbc688), [3f289fd](https://github.com/openclaw/openclaw/commit/3f289fdb4042446042b6cd9a5261a17dc3edf6a0), [203a896](https://github.com/openclaw/openclaw/commit/203a896b27c5c5191823138a4365578e0e77352d), [6afef15](https://github.com/openclaw/openclaw/commit/6afef15100fb402fb747a3543822d33fb9086f68). Merci à @yeager.
- Dans les traductions de cette version, les commandes du chat natif permettant d’accéder au dernier message ou à la dernière réponse utilisent désormais la langue sélectionnée. Sources : [e31fa36](https://github.com/openclaw/openclaw/commit/e31fa360d94a0efd6003079271986ad32f0c2f9c), [375def8](https://github.com/openclaw/openclaw/commit/375def86042a938141bed0c635c361df72cf0ab2), [aabe44f](https://github.com/openclaw/openclaw/commit/aabe44f6382206a49855e8b7c7f1848666790f61), [48c3f4b](https://github.com/openclaw/openclaw/commit/48c3f4b10326a890352ba5e7dd51fad897145c38), [3db6fb9](https://github.com/openclaw/openclaw/commit/3db6fb9972768d7b4979a2649f202d8851935dd8), [a4b51e5](https://github.com/openclaw/openclaw/commit/a4b51e58d3627ba4524a98d9aebe2c11115b284e), [a60686d](https://github.com/openclaw/openclaw/commit/a60686dbc376667625e1613aa131af5487e5d8fa), [12e17ec](https://github.com/openclaw/openclaw/commit/12e17ec052982a37c29245d738954488248ea8c7), [6c4ac0c](https://github.com/openclaw/openclaw/commit/6c4ac0c71da53cd99968a976894c7b8def078f67), [bdc6258](https://github.com/openclaw/openclaw/commit/bdc625866b942f8f8d82ecfb72427f7c90992e78), [a775f9f](https://github.com/openclaw/openclaw/commit/a775f9f78e80a76b49cdf259e71ee002ee1da101), [a1f6acc](https://github.com/openclaw/openclaw/commit/a1f6accef457ab9f48adff2975a853e28c291909), [ee9f61d](https://github.com/openclaw/openclaw/commit/ee9f61d724ff265017c93aef0b11c2d5f1a2401b), [f188c66](https://github.com/openclaw/openclaw/commit/f188c664c0e73d455f3bf6c5ac074a5432269c50), [2525078](https://github.com/openclaw/openclaw/commit/2525078b86544143634697a4f46aef850b783025), [ed5ccda](https://github.com/openclaw/openclaw/commit/ed5ccda79c8b0b96c59a6af880bf114997e85414), [a6a4792](https://github.com/openclaw/openclaw/commit/a6a4792098a88953f1be8a81035f06b9bd7ed83a), [0924bee](https://github.com/openclaw/openclaw/commit/0924bee96bcc86715942d11c31b878c323548e90), [0420aef](https://github.com/openclaw/openclaw/commit/0420aefb1d4eeab37bbcf7f50268c41cfb760b26), [d23c4fd](https://github.com/openclaw/openclaw/commit/d23c4fdbb55f06833b9e37675185c003f7b3ea81), [37f0067](https://github.com/openclaw/openclaw/commit/37f006725d3706cfa28922178e123d8ff192f352).
- Les points d’entrée des nouveaux chats et des chats de worktree apparaissent désormais dans la langue sélectionnée pour les langues prises en charge par les applications Android et Apple. [24bca38](https://github.com/openclaw/openclaw/commit/24bca38cdaad4a304a5624ef8ddc6cdc9b7d4d5a)
- Les applications natives non anglophones prises en charge couvrent désormais davantage de textes relatifs à la configuration du Gateway, aux sessions, aux fournisseurs, à l’état de santé, à la messagerie, au terminal et aux appareils, sans passages restant en anglais. [52f1e05](https://github.com/openclaw/openclaw/commit/52f1e056006dc3aeca574877d51b942c87fa7cb1)
- Les packs linguistiques natifs actualisés couvrent désormais les fichiers de l’espace de travail, les actions de partage, les états des dossiers, les instructions relatives aux SMS sous Android, les états de livraison des messages et les éléments de marque associés. [a9b0a9a](https://github.com/openclaw/openclaw/commit/a9b0a9a12b07899d8a0c4638a8521f5865d75bc6)
- Dans les langues mises à jour dans cette version, la recherche de commandes de l’application native traduit désormais les états de chargement, d’indisponibilité, de nouvelle tentative et d’absence de résultats. Sources : [745d2d0](https://github.com/openclaw/openclaw/commit/745d2d09cdbc79a019d2f7491bf04959ead4e51b), [7f7bec7](https://github.com/openclaw/openclaw/commit/7f7bec78445d049ba1d1b7019b2085cc808beb5a), [35be1c8](https://github.com/openclaw/openclaw/commit/35be1c81439c8df99e4de7057344c5bf0d056f56), [7db67ab](https://github.com/openclaw/openclaw/commit/7db67abd9eb01c36c55f3621a1b3521b290131b3), [4bc5766](https://github.com/openclaw/openclaw/commit/4bc57666cd8b0924f5ab15d5d8cafc4ba9b0ddbb), [0672720](https://github.com/openclaw/openclaw/commit/06727207d66ec1aef814664cf1e88da82c100140), [2a8cd44](https://github.com/openclaw/openclaw/commit/2a8cd440d14ae66e41c63140ea0c0067ca033461), [fd648fb](https://github.com/openclaw/openclaw/commit/fd648fbb17575fec3780c7d8fddf13780b083df2), [00b0b40](https://github.com/openclaw/openclaw/commit/00b0b40e284f40c3c8906251bbb202b81caab656), [a67990a](https://github.com/openclaw/openclaw/commit/a67990a180d6915328165dd7dc9975395160a784), [7640f67](https://github.com/openclaw/openclaw/commit/7640f672b407cf28384cbf5396cdf5d20965da6b), [15f4819](https://github.com/openclaw/openclaw/commit/15f481920c079364513b06939edc06aba6caef04), [4d1d720](https://github.com/openclaw/openclaw/commit/4d1d720164dbf3eb46c4d3a4a98814c2a1d2bdc2), [d1d3a27](https://github.com/openclaw/openclaw/commit/d1d3a2724feeca65759f2658c4af6a8350c1f854), [c2737d5](https://github.com/openclaw/openclaw/commit/c2737d55a9ffea741e07687a6eb40eff61fd369d), [bd3263d](https://github.com/openclaw/openclaw/commit/bd3263d713a1dbb299c14392139bab3cc5aed428), [127ce63](https://github.com/openclaw/openclaw/commit/127ce639547ef0f6016c829c31b915d97d4a55df), [0c960cd](https://github.com/openclaw/openclaw/commit/0c960cd8ae6a1553bdef3820b8167376772e7e53), [e6c3ad9](https://github.com/openclaw/openclaw/commit/e6c3ad99637b4f6fba34d9f2d64f7ca5b2413e45), [84c86f7](https://github.com/openclaw/openclaw/commit/84c86f73eb99b716598d031e7dce58ed73fa5d28), [e7aea60](https://github.com/openclaw/openclaw/commit/e7aea605426cfe8e39287b1e07fa23436260c88b).
- Dans les langues mises à jour dans cette version, l’intégration initiale sur macOS traduit désormais l’installation locale du Gateway, les vérifications, les réparations, les nouvelles tentatives, la mise en pause de la configuration et les instructions de reprise. Sources : [7a717b7](https://github.com/openclaw/openclaw/commit/7a717b777037c6e5152eda24e135e2a64295d256), [85d31e1](https://github.com/openclaw/openclaw/commit/85d31e10d5fcbbeb331e31aa67f8bce520cdbd8e), [27778a7](https://github.com/openclaw/openclaw/commit/27778a7c3de9ba798ae821d5a8dfc3059d4b9af2), [cffc6ad](https://github.com/openclaw/openclaw/commit/cffc6adbce9ca2c8421459a29cfc7bcabb5cf148), [ab0d604](https://github.com/openclaw/openclaw/commit/ab0d604ced35802e8e754ba298b76f5d9a933e1b), [972d394](https://github.com/openclaw/openclaw/commit/972d394c7b008ff278a138c6e1587647e8545c4f), [edbbdf6](https://github.com/openclaw/openclaw/commit/edbbdf6728472f98b92bba22381dd7d70bcb9c0b), [863a054](https://github.com/openclaw/openclaw/commit/863a054576cdeed556bb55c110a451f5c8cab571), [ef5650f](https://github.com/openclaw/openclaw/commit/ef5650f7816433aa5003ebef40019220911bf126), [5f2e51f](https://github.com/openclaw/openclaw/commit/5f2e51fccfc1c700a854cf1b288b16311fd43f87), [5769416](https://github.com/openclaw/openclaw/commit/5769416b6280042684efde75a64ebb36ff27c6d7), [a3aa917](https://github.com/openclaw/openclaw/commit/a3aa917225ecaf87ef83d41f7d23b31dba748722), [2f7bd01](https://github.com/openclaw/openclaw/commit/2f7bd01835c8e7fe28a0aee44d235a6fd521c7f4), [c54a6f3](https://github.com/openclaw/openclaw/commit/c54a6f304e49ba6746e8d92bd96d7ed904352a2c), [9c3ffc5](https://github.com/openclaw/openclaw/commit/9c3ffc5aafbf1075c0f6a00bdd2956a71e8a5f05), [469e707](https://github.com/openclaw/openclaw/commit/469e707970ea5ac0465b83b259f060b13ed2eede), [d066a81](https://github.com/openclaw/openclaw/commit/d066a81d225df29c3f763c62885219991585bea6), [72a3b71](https://github.com/openclaw/openclaw/commit/72a3b712af9b02352d6f2d8d2af3202204480097), [63aa909](https://github.com/openclaw/openclaw/commit/63aa90921602909f19293ba243c344f4d895da6e), [b68e2e7](https://github.com/openclaw/openclaw/commit/b68e2e701ae5f083909e499a84d57ec225cc5ffb).
- Dans les traductions de cette version, les invites natives permettant de commencer à travailler, de vérifier l’état, d’utiliser les commandes du téléphone et les commandes vocales, d’effectuer l’association et de revenir au chat utilisent désormais la langue sélectionnée. Sources : [dd050bc](https://github.com/openclaw/openclaw/commit/dd050bc5f8151488e080b117714ea9f5cad832b5), [db72ffd](https://github.com/openclaw/openclaw/commit/db72ffd5d47050acb2d4dd72de8087c162876523), [4997802](https://github.com/openclaw/openclaw/commit/4997802eb0051cc83b9da1a06c923f211ff12159), [2dc7bd1](https://github.com/openclaw/openclaw/commit/2dc7bd19cb67742a7908427d2512d7b816f4d96f), [4381c29](https://github.com/openclaw/openclaw/commit/4381c294942b342c0b7df82668fdae7883978ba8), [9eb1a05](https://github.com/openclaw/openclaw/commit/9eb1a05c49082f221547015ad7a69561d113964a), [7838bc8](https://github.com/openclaw/openclaw/commit/7838bc82b6df287946b9d45afd52f507c1e1463c), [4352eaf](https://github.com/openclaw/openclaw/commit/4352eaf6ade181654d5a729e5632a1681385b1e6), [43fe5cc](https://github.com/openclaw/openclaw/commit/43fe5cc890fc98a29af7aacd4030a0c288f76f76), [6bd1a4b](https://github.com/openclaw/openclaw/commit/6bd1a4b89f2f82da1e19b0205c80fc4bd855be6d), [531af42](https://github.com/openclaw/openclaw/commit/531af42246acecc8ee37d0ee189c8d3b8fea3af6), [305715c](https://github.com/openclaw/openclaw/commit/305715c725af26d80c69bc9daa3fad77df330139), [8f9e163](https://github.com/openclaw/openclaw/commit/8f9e1635a1d6351f9ec4a64c2624423e45b5e7a8), [2abad57](https://github.com/openclaw/openclaw/commit/2abad575d250b6e7723a660c92b5ad7fed9ea379).
- Les applications natives non anglophones prises en charge traduisent désormais la nouvelle destination Terminal, les instructions de configuration du Gateway, l’action de retour, les messages de connexion et les éléments de marque OpenClaw. [e069cb2](https://github.com/openclaw/openclaw/commit/e069cb26f72a2e6233df8e2bd18a4274e1d53722)
- Les builds macOS localisés traduisent désormais le nouveau libellé du lien GitHub, y compris son texte destiné à l’accessibilité, au lieu de revenir à l’anglais. [8be1d36](https://github.com/openclaw/openclaw/commit/8be1d366a1f72936495c3d2b00461c5b58572706)
- L’intégration initiale dans l’application native et les instructions de connexion à l’IA reflètent désormais Crestodian et le processus de configuration actuel dans toutes les langues autres que l’anglais prises en charge. Sources : [ad4809f](https://github.com/openclaw/openclaw/commit/ad4809f677f531cb00085c1d006db3d46a529ed8), [f0ecc16](https://github.com/openclaw/openclaw/commit/f0ecc16629f018d157345f1c653011f3ec9c97d3).
- `openclaw tui` détecte désormais automatiquement le port personnalisé d’un Gateway local actif, de sorte que les utilisateurs n’ont généralement pas besoin de répéter son URL avec `--url`. [#73338](https://github.com/openclaw/openclaw/pull/73338) Merci à @haishmg et @vincentkoc.
- Les sessions TUI adossées au Gateway et locales affichent désormais le texte de l’assistant à mesure qu’il arrive, au lieu de rester silencieuses jusqu’à la réponse finale. [#83000](https://github.com/openclaw/openclaw/pull/83000) Merci à @flashosophy.
- La TUI explique désormais quand des arguments d’outil non valides répétés interrompent une exécution, fournissant aux utilisateurs un indice utile pour les corriger sans exposer les entrées sensibles. [#91002](https://github.com/openclaw/openclaw/pull/91002) Merci à @taerlandsen et @wsyjh8.
- Le pied de page `/usage full` est plus court et plus lisible sur Telegram et les autres écrans étroits, les informations détaillées sur les jetons restant disponibles dans des vues dédiées. [#92877](https://github.com/openclaw/openclaw/pull/92877) Merci à @marvinthebored.
- Les indicateurs de saisie restent désormais actifs pendant les longues opérations du modèle Codex, des outils, des commandes, de récupération et de suivi en file d’attente, au lieu de donner l’impression que la réponse est inactive. [#95844](https://github.com/openclaw/openclaw/pull/95844) Merci à @jalehman.
- Les résumés raccourcis d’exec et de bash conservent désormais intacts les emoji et autres caractères supplémentaires autour des points de suspension, au lieu d’afficher un glyphe de remplacement incorrect. [#96963](https://github.com/openclaw/openclaw/pull/96963) Merci à @bartok9, @ly-wang19 et @vincentkoc.
- Les réponses déclenchées via Telegram ou un autre canal externe n’apparaissent désormais qu’une seule fois dans l’interface du terminal après l’actualisation de l’historique, tandis que les réinitialisations, les changements de session, les événements différés et la récupération en cours continuent de fonctionner normalement. [#96980](https://github.com/openclaw/openclaw/pull/96980) Merci à @xialonglee.
- Les longs messages d’erreur de l’assistant et du fournisseur se terminent désormais proprement lorsque des emoji ou des caractères Unicode rares se trouvent près de la limite d’affichage. [#97289](https://github.com/openclaw/openclaw/pull/97289) Merci à @zenglingbiao.
- La TUI dirige désormais les utilisateurs vers la commande d’approbation en attente de l’appareil ou de l’extension de portée, au lieu de les orienter à tort vers l’association par message privé dans le chat. [#98144](https://github.com/openclaw/openclaw/pull/98144) Merci à @romneyda.
- Les séquences filmées avec la caméra mobile et les enregistrements d’écran de plus de 30 secondes peuvent désormais se terminer dans la limite de durée existante sans que la requête n’expire prématurément. [#99455](https://github.com/openclaw/openclaw/pull/99455) Merci à @nianjiuzst.
- Les sessions TUI intégrées et locales confinent désormais les erreurs des consommateurs d’événements au lieu de fermer le terminal. [#100117](https://github.com/openclaw/openclaw/pull/100117) Merci à @cxbasdev.
- Les utilisateurs de la TUI peuvent désormais envoyer des invites pendant qu’un agent travaille et obtenir le comportement configuré de suivi, de collecte ou d’interruption, tandis qu’Esc et `/stop` n’annulent que le travail prévu. [#100123](https://github.com/openclaw/openclaw/pull/100123) Merci à @kevinlp et @sebtardif.
- La commande TUI `/new` effectue désormais une véritable transition de session avec les hooks de cycle de vie attendus et empêche une nouvelle session d’entrer en concurrence avec un tour actif. [#100241](https://github.com/openclaw/openclaw/pull/100241) Merci à @caopulan.
- La visionneuse Diffs fournit désormais une vue d’ensemble de plusieurs fichiers et une navigation directe entre eux, tandis que les exportations PNG et PDF omettent les commandes inutilisables. [#100753](https://github.com/openclaw/openclaw/pull/100753)
- Les choix d’état et d’apparence de l’application native utilisent désormais la langue sélectionnée dans toutes les traductions de cette version. Sources : [58d199b](https://github.com/openclaw/openclaw/commit/58d199bbcbd298a3e806bcf5c56eb242759dea5b), [c15348b](https://github.com/openclaw/openclaw/commit/c15348b74f6291282d79b592ec29577b2b871852), [c047a3a](https://github.com/openclaw/openclaw/commit/c047a3a9c669f12c51e3cf0f72606e53e85f7f2b), [e191685](https://github.com/openclaw/openclaw/commit/e191685be93f9a461d6346439ce227419fb41d1d), [b1e173d](https://github.com/openclaw/openclaw/commit/b1e173d4c30419f8c7f7393a9c4977f30a49ddcd), [50fecf8](https://github.com/openclaw/openclaw/commit/50fecf848c405af2902838cecb34771367f3552c), [5211afe](https://github.com/openclaw/openclaw/commit/5211afeb67cc521eb7b55cf19884e1d77c6dbbce), [4c43cf5](https://github.com/openclaw/openclaw/commit/4c43cf5eaba52ab729587c9d4f4a660638770701), [fb394de](https://github.com/openclaw/openclaw/commit/fb394de179ba7b5914b1b886795d67c17aff39e8), [ba8c1fa](https://github.com/openclaw/openclaw/commit/ba8c1fa76fe9031424cc2727c7d0f7b2cd08ecba), [7bee4f6](https://github.com/openclaw/openclaw/commit/7bee4f67d4cd66c78009497f931b8a19e03dda2a), [77ab268](https://github.com/openclaw/openclaw/commit/77ab268f79a5cee110df9ee0014b08f67368ff55), [2417d94](https://github.com/openclaw/openclaw/commit/2417d94663fdfd8770ebf00d67f0a73ae1a904cb), [9b6ef34](https://github.com/openclaw/openclaw/commit/9b6ef34f9deaa6f6fa524b860340d7000eb87ccd), [9c4274f](https://github.com/openclaw/openclaw/commit/9c4274f94570f1f41ee30350eae32255c675c38e), [2671bcc](https://github.com/openclaw/openclaw/commit/2671bcc39f8c17d55ae3e96cabf48e4d474cac19), [b21153b](https://github.com/openclaw/openclaw/commit/b21153b98d6d2bde03cd1979d6db6ecb2ad47bab), [117e8e1](https://github.com/openclaw/openclaw/commit/117e8e1e042709b6eba851fc8d208b98c43b22b9), [cc0d7e1](https://github.com/openclaw/openclaw/commit/cc0d7e1dd4c638034cafc27a93da1bb7c7735694), [e6f3f54](https://github.com/openclaw/openclaw/commit/e6f3f54ad05728d874fdc4ff492e688741785249), [dd64f66](https://github.com/openclaw/openclaw/commit/dd64f66bb981595b8558af907d628fd49322a06f), [4c16e66](https://github.com/openclaw/openclaw/commit/4c16e669b2252724cd6e68bf68d727de3edfedc9), [3a8375c](https://github.com/openclaw/openclaw/commit/3a8375c29a810d923603d9f043e3e0916548bddf), [3e3b6d6](https://github.com/openclaw/openclaw/commit/3e3b6d6669468460959f1c9a57f4cb6a84b00620), [c356245](https://github.com/openclaw/openclaw/commit/c356245fc0d04803f768b6cd0675744728618fcd), [d506201](https://github.com/openclaw/openclaw/commit/d506201c6578e5ae782c4a401cdfd46557a11b1f).
- Les mentions de licence, les remerciements et les explications relatives aux fichiers indisponibles de l’application native utilisent désormais la langue sélectionnée dans toutes les traductions de cette version. Sources : [34bf5a9](https://github.com/openclaw/openclaw/commit/34bf5a90b4ae2ff2b987899a44f9c6b10467f6fe), [068088c](https://github.com/openclaw/openclaw/commit/068088c7fc98d6e18d67855abb2c9ad9e6de449a), [a623ac7](https://github.com/openclaw/openclaw/commit/a623ac71eba10364e558490326273cf369d9ee3c), [71374d3](https://github.com/openclaw/openclaw/commit/71374d379b40cd080992955e57587b552e55a5f6), [a9b0de8](https://github.com/openclaw/openclaw/commit/a9b0de803789a9945c12bf37f143ae4cde2faeba), [8f495e2](https://github.com/openclaw/openclaw/commit/8f495e2f805af548d78ee1f3834bde962a86f1a9), [436dd39](https://github.com/openclaw/openclaw/commit/436dd3934328bce7d75d77998212441859a044db), [f917e89](https://github.com/openclaw/openclaw/commit/f917e893a6d3fb2005074b6a1d752cf4fd505497), [2c8b97c](https://github.com/openclaw/openclaw/commit/2c8b97cee9e056f155e2144311eccd5e5a66a6e2), [ace162b](https://github.com/openclaw/openclaw/commit/ace162b95b47d1a16e9b2dd42851af64c731a9f1), [e60cccf](https://github.com/openclaw/openclaw/commit/e60cccf8a9c95d7a158e3fe4b8f47204141fea2e), [359ea4c](https://github.com/openclaw/openclaw/commit/359ea4c19bc9251e225a130d6f9c0fcab71d0ec2), [b7bc860](https://github.com/openclaw/openclaw/commit/b7bc8600e46aca2fbac8e0ddbea1a1084db80c64), [49ea27e](https://github.com/openclaw/openclaw/commit/49ea27ecc230b49b664b594e99758400595fa80f), [99cbc58](https://github.com/openclaw/openclaw/commit/99cbc589536e7309a5f8c468de4d9795addad55f), [204526a](https://github.com/openclaw/openclaw/commit/204526ac0a2a35fd7482cac4c64ecee6ad7de0fa), [3821c36](https://github.com/openclaw/openclaw/commit/3821c36d58cebab82ebf46614413b688930e3b47), [030d184](https://github.com/openclaw/openclaw/commit/030d184254756706af637fb1eeb0a9c31036eb8c), [24f639c](https://github.com/openclaw/openclaw/commit/24f639c66ca9a05a6531d4504971f67434989324), [499feb2](https://github.com/openclaw/openclaw/commit/499feb2e2fd474c7abeff9e87743b720ba03f593), [591d099](https://github.com/openclaw/openclaw/commit/591d099897938a27c6383b17ca36e128abcf098c).
- Les commandes natives d’autorisation d’accès aux photos expliquent désormais les accès limité, sélectionné et aux photos récentes dans la langue sélectionnée, dans toutes les traductions de cette version. Sources : [c360f92](https://github.com/openclaw/openclaw/commit/c360f92563fb2221452ae599412ea61f9eee188b), [4dd027e](https://github.com/openclaw/openclaw/commit/4dd027eaa1f14356f4f7740d4258d72adb59d2f2), [9cde1ca](https://github.com/openclaw/openclaw/commit/9cde1ca97141784f89816afd9283b2d7416b9a8c), [328fb70](https://github.com/openclaw/openclaw/commit/328fb70ba730bc7bb4cd3a0eaa5e6d1d089c734c), [71e5fcc](https://github.com/openclaw/openclaw/commit/71e5fccb644b51e50f61e8e3bd6715a0fd717a58), [b11d710](https://github.com/openclaw/openclaw/commit/b11d710e524f7d6d664ea5857f358f4ebbaff6e4), [55a2a9b](https://github.com/openclaw/openclaw/commit/55a2a9b0f0c4c56d03292b930ed116a146322e6c), [c4b40d0](https://github.com/openclaw/openclaw/commit/c4b40d0b2a008c1ba1bae82a180e455bc8656e00), [3a1b983](https://github.com/openclaw/openclaw/commit/3a1b983bc227f67ac0862f1761d53f6a3fee083d), [dea40a5](https://github.com/openclaw/openclaw/commit/dea40a5f96307e9da0862bbc774100f799110d6c), [4b1fab8](https://github.com/openclaw/openclaw/commit/4b1fab8047319bc07e47ef8136a9c83594729ed8), [44ca739](https://github.com/openclaw/openclaw/commit/44ca739f77ab7dfaa1f096627e84bc79e859b849), [d36452c](https://github.com/openclaw/openclaw/commit/d36452cc0bd66722f426c7c686859cbfcb1e9f24), [a50a59e](https://github.com/openclaw/openclaw/commit/a50a59e64802a1263bd8befe6c4bea57e055499e), [49b68e1](https://github.com/openclaw/openclaw/commit/49b68e1039347867c227e992fa7fcfac3e58f932), [122e4ba](https://github.com/openclaw/openclaw/commit/122e4ba3a30f32b8d563d7afa2f60cc4cd6c431b), [4086d35](https://github.com/openclaw/openclaw/commit/4086d35caf54c3a9759b21ad5f83536cdf08c2bc), [547a563](https://github.com/openclaw/openclaw/commit/547a563e4ca3cf6d573cf6210db3ffbedb592175), [538f28a](https://github.com/openclaw/openclaw/commit/538f28abce55949ee0a412da07664092427413d1), [c5afa92](https://github.com/openclaw/openclaw/commit/c5afa92c1f8ac63a9c01b7971acabcfb1d6f948f), [32a986d](https://github.com/openclaw/openclaw/commit/32a986d21c170741b5505870dd0a2e98ec410b1d).
- Les réglages de localisation d’iOS expliquent désormais les options Off, While Using, Always et Precise Location, ainsi que les restrictions et les incohérences d’autorisations, dans la langue sélectionnée pour l’ensemble des traductions de cette version. Sources : [3542585](https://github.com/openclaw/openclaw/commit/3542585de59987dd0b962df3ddb70bde093fa4dd), [261d79a](https://github.com/openclaw/openclaw/commit/261d79a9a42ef45a41c3947caa6e616c92702ad4), [ef1474d](https://github.com/openclaw/openclaw/commit/ef1474dd3d4dfdffd4a47a5f14166dc8e2e97a55), [cc1d61b](https://github.com/openclaw/openclaw/commit/cc1d61bd3c04d86b470f94364b1fe7fc6762c456), [2a1e118](https://github.com/openclaw/openclaw/commit/2a1e1184f5139d300567d0c2437669727dddc821), [748bfee](https://github.com/openclaw/openclaw/commit/748bfee90d16df63b9d89ae7db8c80579c8f7a6f), [e0b2dda](https://github.com/openclaw/openclaw/commit/e0b2ddad6cd7a8a562dd39fd99746557923549a1), [f371a2f](https://github.com/openclaw/openclaw/commit/f371a2f2022f9ef6dd9ee781ccf9cb3ee2cf5d88), [ee00cc7](https://github.com/openclaw/openclaw/commit/ee00cc7c949469612e79a55479c363d62a00f7e6), [27f9ae0](https://github.com/openclaw/openclaw/commit/27f9ae0c0a41f812c872439efdfb05f1df79c17c), [51a07ae](https://github.com/openclaw/openclaw/commit/51a07aec27eee6ff7c75ddc9d2d1d40ce0d74672), [ba9d167](https://github.com/openclaw/openclaw/commit/ba9d167e1a9596eff784716992a1f9885d60e892), [576169e](https://github.com/openclaw/openclaw/commit/576169e6d247308fd92cb8cdd3ba493797fa2f3f), [10500a6](https://github.com/openclaw/openclaw/commit/10500a63fa5837a58d3e9b400daa7f52d20d0fbb), [a344252](https://github.com/openclaw/openclaw/commit/a34425273c4ed1796845f1706d1c3b3974044434), [d7d280f](https://github.com/openclaw/openclaw/commit/d7d280fc78a0e8c51b3404294a6a1958a023eb03), [cb2547f](https://github.com/openclaw/openclaw/commit/cb2547f329109ee0b81a62b12ebea7743cac5905), [2191c2e](https://github.com/openclaw/openclaw/commit/2191c2eb1f77eb24f5c0dc8499630d52ebb55a68), [c63e9f9](https://github.com/openclaw/openclaw/commit/c63e9f9bf8ac0e573cfd32937e11ee0e16248709), [4b1e0de](https://github.com/openclaw/openclaw/commit/4b1e0deb3374012338586f39fa8f064515a50cc8), [525c4c7](https://github.com/openclaw/openclaw/commit/525c4c7ce1b821236a07901d80b14a0e7ed81ded).
- Les informations sur la disponibilité des Skills natifs, la configuration du Gateway, les diagnostics, la confidentialité et l’accès utilisent désormais la langue sélectionnée dans l’ensemble des traductions de cette version. Sources : [fdcd5c0](https://github.com/openclaw/openclaw/commit/fdcd5c0eb0c2493f5d3845fcf76a02f4e1a6d6ba), [26f6735](https://github.com/openclaw/openclaw/commit/26f673526e7a6680df175570da67baf6fe5abeed), [5220eff](https://github.com/openclaw/openclaw/commit/5220effc10c92cec20abb6df0c5acdaa40e56ad6), [bb7dbda](https://github.com/openclaw/openclaw/commit/bb7dbda027b9451281f2d81d2f4cbad9a003599c), [952245b](https://github.com/openclaw/openclaw/commit/952245b49c4b6743afc9ad97f6f3e48af407e5ed), [edb1e74](https://github.com/openclaw/openclaw/commit/edb1e74645ebba0b8992863a9d395d80fd10498f), [f7bad57](https://github.com/openclaw/openclaw/commit/f7bad5749b9a441a6b55d1dc34cf9ef037270960), [0602930](https://github.com/openclaw/openclaw/commit/060293056b33ff1a44dd5ab6f44ff8783d612f31), [e779b8f](https://github.com/openclaw/openclaw/commit/e779b8f1bde92173dcaeadd87853a458656dd7b3), [0400be7](https://github.com/openclaw/openclaw/commit/0400be7118c03b6e3c2330fc31d9451e5a2c0151), [851d0ad](https://github.com/openclaw/openclaw/commit/851d0ad7354321ccad43ecf5f7c04abd168da0dc), [1e0dd95](https://github.com/openclaw/openclaw/commit/1e0dd95e5d9a0bb4d62dd72ce451a9902b4eb6d3), [703e1ad](https://github.com/openclaw/openclaw/commit/703e1adadefe213c4fcc312ccb4aead7b120a3a1), [1c93e50](https://github.com/openclaw/openclaw/commit/1c93e509a36673ee8a58b0c1aa6c4b9a9a00a5e8), [37c45f2](https://github.com/openclaw/openclaw/commit/37c45f28fbbdbd768bd7fefa8d8a94274d075aa9), [8fe917b](https://github.com/openclaw/openclaw/commit/8fe917b4f7784e44dabcb6cf7b673da74bf3753e), [da21e4b](https://github.com/openclaw/openclaw/commit/da21e4b8dd47fc174cef6e3373471aba37f851e0), [f4f63b1](https://github.com/openclaw/openclaw/commit/f4f63b187041cd20fe4016ad62d85ad59b94fa66), [3e4febb](https://github.com/openclaw/openclaw/commit/3e4febbe68f82d8ee06977486a0f50ecba933452), [a82cd35](https://github.com/openclaw/openclaw/commit/a82cd35ed5405a5cca392a5272fe898264eaf107), [52323b6](https://github.com/openclaw/openclaw/commit/52323b67c5872f5c396ad2eb5e5749bfa1a63f6e).
- Les informations relatives à la connexion native au Gateway, aux diagnostics, aux autorisations, à l’intégration, au Chat et à Talk utilisent désormais la langue sélectionnée dans l’ensemble des traductions de cette version. Sources : [3b27bb4](https://github.com/openclaw/openclaw/commit/3b27bb4536a3bdc4b6bdf82fc59f878e478121d0), [e296d14](https://github.com/openclaw/openclaw/commit/e296d1447eb7b7666100e34169b0cd27b07e759c), [5516775](https://github.com/openclaw/openclaw/commit/5516775933a84f3bc88f9a485d7f53ad2d9e5928), [6ec4962](https://github.com/openclaw/openclaw/commit/6ec49620baf962ecbd2c69f0299fd98410f18a8f), [291f2a4](https://github.com/openclaw/openclaw/commit/291f2a477373c01cde9aac0f36438b9073b7677e), [7e2d41b](https://github.com/openclaw/openclaw/commit/7e2d41b94c7a11ba96abe1839819e7c63c3e6c87), [81bc96f](https://github.com/openclaw/openclaw/commit/81bc96f70f9e50fcf7cbbe014d0e6f9b10ff35d0), [574556c](https://github.com/openclaw/openclaw/commit/574556cd32d816436209d006d6744273b82a0276), [8bb44e6](https://github.com/openclaw/openclaw/commit/8bb44e60d0cf740d13663d40a780fa28705eeeed), [ae09908](https://github.com/openclaw/openclaw/commit/ae09908259e163598eea8170640255aa6d8c04ce), [42fc19d](https://github.com/openclaw/openclaw/commit/42fc19d77e93e7a41ce634c43f3317d3e123fd6a), [28bbb43](https://github.com/openclaw/openclaw/commit/28bbb439f6398a3e48fa8a88e67879290bb70ea0), [6ff9185](https://github.com/openclaw/openclaw/commit/6ff9185637fc3ab0fd1f966355fc7cfe505863e8), [4be0be6](https://github.com/openclaw/openclaw/commit/4be0be697fb95444596f9d604cf54ea4ecd12943), [0f1fbbe](https://github.com/openclaw/openclaw/commit/0f1fbbe8779dfbe317bf99de0a45aebcdadec1ea), [d893a72](https://github.com/openclaw/openclaw/commit/d893a724f6f0e91161a93a223d01057c04cd8db4), [f5cb29b](https://github.com/openclaw/openclaw/commit/f5cb29b2881edf85de14569adbfaea44b7b02056).
- Les commandes d’exportation des transcriptions, les actions de discussion et les messages d’échec d’exportation sont désormais traduits dans les 21 langues prises en charge par les applications natives. [45f561a](https://github.com/openclaw/openclaw/commit/45f561ab6c24de9848b70823c80b7ac770531c41)
- Les applications natives prises en charge dans des langues autres que l’anglais traduisent désormais les nouvelles informations sur l’application, les liens d’assistance ainsi que les états de nouvelle tentative, de suppression et d’attente d’envoi des messages. [82f5ac1](https://github.com/openclaw/openclaw/commit/82f5ac150ffde0c847696cddcdcb2d300bb44294)
- Wake Words et Discovery Logs utilisent désormais des libellés actuels et naturels dans les langues autres que l’anglais prises en charge par les applications natives. [de30d2f](https://github.com/openclaw/openclaw/commit/de30d2f5c333d49004f0771f529b578ed1af6f17)
- Les applications natives prises en charge dans des langues autres que l’anglais traduisent désormais la navigation et le partage des fichiers de l’espace de travail, les échecs d’aperçu des images, l’état hors ligne et les commandes d’en-têtes Gateway personnalisés. [6b99fd9](https://github.com/openclaw/openclaw/commit/6b99fd9a94ce99023c77e733efe7943e4f51c285)
- Les utilisateurs des applications natives Apple dans les 21 langues autres que l’anglais prises en charge voient désormais les commandes traduites de l’état de Listen et de la lecture vocale. [0146534](https://github.com/openclaw/openclaw/commit/01465340f6dfe6dd51671e3a0c3b33d23c1ff1d7)
- Les clients Swift peuvent désormais décoder les actions de sélection des Skills et les détails d’état tels que l’épinglage, le nombre d’utilisations, les horodatages, les motifs d’archivage et les chevauchements. [ad833d7](https://github.com/openclaw/openclaw/commit/ad833d788305faeb9c12f3f4c5068674d201ee68)
- Android et iOS expliquent désormais quel côté doit être mis à jour lorsque les versions du protocole de l’application et du Gateway diffèrent, et évitent de proposer des tentatives de reconnexion vouées à l’échec. [#98385](https://github.com/openclaw/openclaw/pull/98385) Associé à [#98384](https://github.com/openclaw/openclaw/issues/98384). Merci à @joshavant.
- Les clients distants autorisés peuvent désormais demander une version audio lisible d’un message individuel de l’assistant à l’aide de la configuration TTS existante du Gateway, sans accéder aux fichiers locaux du serveur. [#100770](https://github.com/openclaw/openclaw/pull/100770)
- Les utilisateurs d’iOS et d’Android peuvent créer des groupes de sessions vides, les renommer une seule fois dans l’ensemble de leurs sessions et supprimer un groupe sans effacer les conversations qu’il contient. [#101234](https://github.com/openclaw/openclaw/pull/101234)
- La mascotte d’OpenClaw utilise désormais les mêmes animations de flottement, de clignement, d’antenne et de pince sur les interfaces Web, iOS et Android, tout en respectant les préférences de réduction des animations. [851156a](https://github.com/openclaw/openclaw/commit/851156af3b35b56c56d8d20fff7fb97104d13d1a)
- Les pages de terminal d’iOS et d’Android reçoivent désormais l’identifiant de l’opérateur depuis la session de l’appareil connecté, afin que les utilisateurs authentifiés n’arrivent pas sur un terminal incapable de se connecter. [451190d](https://github.com/openclaw/openclaw/commit/451190d625693153dfdca800fdbb9a05b2c21b6a) Merci à @vincentkoc.
- iOS et Android peuvent désormais afficher le terminal du Gateway dans une vue dédiée en plein écran, avec les identifiants stockés et un état d’indisponibilité clair, au lieu d’intégrer l’interface de contrôle complète pour ordinateur. [9c78489](https://github.com/openclaw/openclaw/commit/9c7848928f8b7f4104dd3eb4ddc9330d850d1886)
- Sur iPad, la sélection de Overview, Chat, Talk ou d’une autre destination de la barre latérale ferme désormais le détail Settings actuel et ouvre l’écran demandé. [#94991](https://github.com/openclaw/openclaw/pull/94991) Merci à @solvely-colin.
- Les commandes traduites du Gateway sur iOS et les actions d’approbation sur Apple Watch ne reviennent plus à l’anglais dans les langues prises en charge. [#97112](https://github.com/openclaw/openclaw/pull/97112) Merci à @vincentkoc.
- Le Chat natif d’iOS respecte désormais les réglages Larger Text et Dynamic Type pour les messages, l’introduction et le texte de la zone de rédaction, avec moins de contenu tronqué. [#97552](https://github.com/openclaw/openclaw/pull/97552) Merci à @jmcte.
- Les utilisateurs d’iPhone qui s’associent à un Gateway sur le réseau local restent désormais authentifiés après l’amorçage initial, afin que le Chat et la connexion au Node ne se déconnectent pas immédiatement. [#98066](https://github.com/openclaw/openclaw/pull/98066) Associé à [#98064](https://github.com/openclaw/openclaw/issues/98064). Merci à @ooiuuii.
- Le Chat d’iOS conserve désormais une seule réponse finale de l’assistant par tour, au lieu d’afficher brièvement un doublon qui disparaît après l’actualisation de l’historique. [#98117](https://github.com/openclaw/openclaw/pull/98117) Associé à [#98116](https://github.com/openclaw/openclaw/issues/98116). Merci à @joshavant et @ooiuuii.
- Les utilisateurs iOS associés peuvent lancer Talk natif d’ElevenLabs avec une clé Gateway reposant sur SecretRef, sans copier l’identifiant en texte brut dans la configuration mobile. [#98210](https://github.com/openclaw/openclaw/pull/98210) Associé à [#98209](https://github.com/openclaw/openclaw/issues/98209). Merci à @joshavant et @ooiuuii.
- Après avoir scanné un code QR d’association iOS, les utilisateurs accèdent désormais à un écran affichant en direct la progression de la connexion, au lieu de revenir à Welcome tandis que l’association se poursuit de manière invisible. [#98302](https://github.com/openclaw/openclaw/pull/98302) Associé à [#98297](https://github.com/openclaw/openclaw/issues/98297). Merci à @joelnishanth.
- Le Chat d’iOS préserve désormais les sauts de ligne intentionnels dans les réponses de l’assistant et les autres messages multilignes, sans perturber le rendu Markdown normal. [#98304](https://github.com/openclaw/openclaw/pull/98304) Associé à [#98028](https://github.com/openclaw/openclaw/issues/98028). Merci à @jabato01 et @joshavant.
- L’app iOS s’ouvre désormais sur Chat lors des lancements normaux, tout en préservant la navigation directe vers Control, Settings, Agent, Talk et les destinations imbriquées. [#98353](https://github.com/openclaw/openclaw/pull/98353) Merci à @bsniznd.
- L’option Gateway Default de Talk sur iOS utilise désormais le fournisseur vocal configuré du Gateway, et l’arrêt d’une réponse empêche la diffusion différée de l’audio lors des échanges suivants. [#98376](https://github.com/openclaw/openclaw/pull/98376) Voir aussi [#98153](https://github.com/openclaw/openclaw/issues/98153). Merci à @jraxworthy et @tony-ooo.
- Control, Talk et Settings sur iOS sont plus faciles à parcourir grâce à une mise en évidence plus claire des états, un style plus sûr pour les actions, des visuels d’inactivité plus sobres et une meilleure prise en charge des grands caractères. [#98423](https://github.com/openclaw/openclaw/pull/98423) Voir aussi [#98397](https://github.com/openclaw/openclaw/issues/98397).
- iOS explique désormais avec précision les échecs de connexion sécurisée au Gateway et de vérification du certificat, et affiche de manière fiable l’invite d’approbation de l’empreinte lors de la première connexion HTTPS. [#98429](https://github.com/openclaw/openclaw/pull/98429) Merci à @joshavant.
- Les textes de connexion, d’avertissement et d’information sur iOS sont désormais plus lisibles dans les modes clair et sombre, et les réglages d’apparence décrivent précisément le comportement sélectionné. [#98443](https://github.com/openclaw/openclaw/pull/98443) Voir aussi [#98440](https://github.com/openclaw/openclaw/issues/98440).
- OpenAI Realtime Talk sur iPhone utilise désormais WebRTC natif par défaut, rétablit les sessions continues après les déconnexions du fournisseur et respecte les choix de sortie vers le haut-parleur, le Bluetooth et AirPlay. [#98563](https://github.com/openclaw/openclaw/pull/98563) Merci à @pollybot13.
- La bannière de solution de secours de Talk sur iOS ouvre désormais directement les réglages de Voice & Talk au lieu de rediriger les utilisateurs vers des réglages sans rapport du Gateway. [#98602](https://github.com/openclaw/openclaw/pull/98602) Voir aussi [#98593](https://github.com/openclaw/openclaw/issues/98593). Merci à @pollybot13.
- L’app iPhone présente désormais une barre de contrôle Talk compacte, un sélecteur d’apparence plus épuré et un bouton d’audio en temps réel correctement aligné à côté du champ de rédaction Chat au repos. [#98736](https://github.com/openclaw/openclaw/pull/98736)
- Les nouveaux utilisateurs d’iPhone disposent désormais de choix plus clairs pour le QR code, le code de configuration et la configuration manuelle du Gateway, d’un meilleur affichage des appareils à proximité et de l’état de connexion, ainsi que d’un accès direct à Chat après la connexion. [#98868](https://github.com/openclaw/openclaw/pull/98868) Merci à @solvely-colin et @thats2easyyy.
- Les utilisateurs d’iOS qui ouvrent les réglages du Gateway, de Voice ou des notifications depuis un autre écran reviennent désormais à l’écran Chat, Talk, Agent, Control ou Approvals d’où ils venaient. [#98898](https://github.com/openclaw/openclaw/pull/98898) Merci à @lokimorty.
- L’app iOS applique désormais de manière cohérente la palette d’OpenClaw aux vues Talk, des réglages, du Gateway, de confidentialité, d’utilisation et du tableau de travail, tout en conservant un contraste accessible. [#98930](https://github.com/openclaw/openclaw/pull/98930) Merci à @joelnishanth.
- Voice Wake sur iOS peut désormais se mettre en pause lorsque Talk, l’audio de la caméra ou une autre fonctionnalité utilise le microphone, puis reprendre sans faire planter l’app. [#99137](https://github.com/openclaw/openclaw/pull/99137) Merci à @pollybot13.
- Les utilisateurs d’iOS peuvent corriger les informations du Gateway après l’échec d’une configuration manuelle et réessayer immédiatement avec les valeurs actuellement affichées à l’écran. [#99220](https://github.com/openclaw/openclaw/pull/99220) Voir aussi [#99219](https://github.com/openclaw/openclaw/issues/99219). Merci à @abdullahtas0.
- L’expérience de chat sur iOS propose désormais des invites de départ utiles, des actions de jumelage et de configuration plus claires, de meilleurs textes indicatifs pour les agents et un ordre des messages plus stable pendant les actualisations. [#99243](https://github.com/openclaw/openclaw/pull/99243) Merci à @jcooley8.
- Les utilisateurs d’iPhone qui ouvrent Chat depuis les détails de Control peuvent désormais revenir au même écran Overview, Activity, Workboard ou Sessions sans perdre leur position. [#99245](https://github.com/openclaw/openclaw/pull/99245) Merci à @solvely-colin.
- OpenClaw utilise désormais une typographie de marque cohérente dans toutes ses interfaces iOS, Watch et Live Activity, tout en conservant la prise en charge de Dynamic Type et de l’accessibilité. [#99246](https://github.com/openclaw/openclaw/pull/99246) Merci à @joelnishanth et @joshavant.
- Les réglages de localisation sur iOS affichent désormais l’autorisation réellement appliquée, notamment Precise Location et les divergences entre le mode sélectionné dans OpenClaw et l’autorisation accordée par iOS. [#99247](https://github.com/openclaw/openclaw/pull/99247) Merci à @pollybot13.
- Les utilisateurs d’iOS peuvent désormais consulter les mentions de licences tierces incluses avec OpenClaw depuis Settings &gt; Licenses. [#99290](https://github.com/openclaw/openclaw/pull/99290) Merci à @joshavant.
- Le chat sur iOS permet désormais aux utilisateurs de parcourir, filtrer et sélectionner les commandes et Skills disponibles depuis le champ de rédaction au lieu de mémoriser les commandes exactes précédées d’une barre oblique. [#99426](https://github.com/openclaw/openclaw/pull/99426) Merci à @solvely-colin et @viczhang6.
- Les utilisateurs d’iOS peuvent désormais ajouter des contacts et rechercher les enregistrements concernés sans faire planter l’app ni déconnecter le Node. [#99475](https://github.com/openclaw/openclaw/pull/99475) Merci à @abdullahtas0.
- Les commandes Calendar, Reminders et Contacts sur iOS renvoient désormais immédiatement un résultat indiquant qu’une autorisation est requise, au lieu d’ouvrir une invite qui laisse la requête de l’agent en attente. [#99477](https://github.com/openclaw/openclaw/pull/99477) Merci à @nianjiuzst.
- Le jumelage du Gateway par QR code sur iOS reste désormais ouvert pendant les étapes de confiance et d’approbation, évite les plantages du scanner et conserve les identifiants ainsi que les actions en attente avec le bon Gateway lors des changements. [#99572](https://github.com/openclaw/openclaw/pull/99572) Merci à @pollybot13.
- Sur iOS 26, les commutateurs concernés dans Settings réagissent désormais lorsque les utilisateurs touchent n’importe quelle partie de la ligne libellée, tout en préservant les libellés et les valeurs d’accessibilité. [#99888](https://github.com/openclaw/openclaw/pull/99888) Merci à @ly85206559.
- Le chat Apple présente désormais les blocs de code avec une coloration adaptée au thème et les tableaux de style GitHub sous forme de tableaux natifs alignés sur iOS et macOS. [#100207](https://github.com/openclaw/openclaw/pull/100207)
- Le chat Apple restaure désormais l’état visible indiquant qu’une opération est en cours après un passage en arrière-plan ou une reconnexion, ce qui empêche les envois simultanés et permet de produire une seule réponse finale correcte. [#100277](https://github.com/openclaw/openclaw/pull/100277)
- Les liens répétés de configuration du Gateway sur iOS mettent désormais à jour l’écran de réglages visible avec la connexion la plus récente, au lieu d’être traités par une vue masquée ou de réafficher des informations obsolètes. [#100328](https://github.com/openclaw/openclaw/pull/100328)
- Le chat sur iOS fournit désormais un retour tactile pour les envois acceptés et la plupart des exécutions terminées ou ayant échoué, même si certains chemins d’interruption peuvent encore omettre ou mal classer le retour d’échec. [#100416](https://github.com/openclaw/openclaw/pull/100416)
- Les utilisateurs d’iOS peuvent exporter la conversation actuelle sous forme de fichier Markdown nommé et lisible, puis l’enregistrer ou l’envoyer via la feuille de partage du système. [#100417](https://github.com/openclaw/openclaw/pull/100417)
- Le choix While Using pour l’accès à la localisation sur iOS reste désormais sélectionné après l’approbation et après le redémarrage de l’app. [#100512](https://github.com/openclaw/openclaw/pull/100512)
- Les lignes de Talk et Settings sur iOS utilisent désormais une taille et une typographie de titre cohérentes, ce qui facilite le parcours des options adjacentes. [#100515](https://github.com/openclaw/openclaw/pull/100515)
- L’écran About sur iOS présente désormais l’identité visuelle d’OpenClaw, les informations de licence et des liens directs vers le site Web, la documentation, le dépôt GitHub et la communauté Discord. [#100531](https://github.com/openclaw/openclaw/pull/100531)
- Le jumelage de l’Apple Watch et l’état de l’app compagnon s’actualisent désormais sans redémarrer l’app iPhone, tandis que les actions lors d’un démarrage à froid attendent que l’app soit prête ou renvoient une erreur `WATCH_UNAVAILABLE` claire. [#100732](https://github.com/openclaw/openclaw/pull/100732)
- Les utilisateurs d’iPhone et d’iPad peuvent désormais parcourir l’espace de travail d’un agent, prévisualiser les fichiers générés, les journaux et la configuration, et partager un fichier sans revenir à l’ordinateur hôte. [#100767](https://github.com/openclaw/openclaw/pull/100767)
- L’app iOS peut désormais se connecter via Cloudflare Access, l’authentification Basic et des proxys similaires en stockant les en-têtes d’identification propres à chaque Gateway pour la prochaine reconnexion. [#100768](https://github.com/openclaw/openclaw/pull/100768)
- Les utilisateurs d’iPhone peuvent désormais choisir Listen sur une réponse de l’assistant, suivre l’état de préparation et de lecture, arrêter à tout moment et utiliser la synthèse vocale sur l’appareil comme solution de secours si nécessaire. [#100771](https://github.com/openclaw/openclaw/pull/100771)
- Le chat sur iOS affiche désormais le modèle actif et permet de le changer, tandis que les sélecteurs de modèles sur iOS et macOS prennent en charge les favoris épinglés et les cinq choix les plus récents. [#100774](https://github.com/openclaw/openclaw/pull/100774)
- Les équations affichées dans les chats iOS et macOS apparaissent désormais sous forme de formules composées lisibles et accessibles, avec un défilement horizontal pour les formules larges et la conservation du texte brut pour les expressions mal formées. [#100829](https://github.com/openclaw/openclaw/pull/100829)
- iOS et macOS masquent le contrôle du niveau de réflexion pour les modèles qui ne peuvent pas l’utiliser, évitent d’envoyer des réglages obsolètes non pris en charge et restaurent le niveau précédent lorsqu’un modèle capable de raisonnement est de nouveau sélectionné. [#100875](https://github.com/openclaw/openclaw/pull/100875)
- Les réponses diffusées en continu dans les chats iOS et macOS révèlent désormais le texte plus progressivement, mot par mot, tandis que les utilisateurs ayant activé la réduction des animations reçoivent toujours le texte immédiatement et que les messages terminés restent inchangés. [#100884](https://github.com/openclaw/openclaw/pull/100884)
- Les messages iOS hors ligne persistent désormais après le redémarrage de l’app, restent associés à leur Gateway et à leur conversation d’origine, et ne sont envoyés qu’une seule fois lorsque leur livraison peut être confirmée, avec un état clair de livraison incertaine dans le cas contraire. [#100942](https://github.com/openclaw/openclaw/pull/100942)
- Le chat sur iOS et macOS affiche désormais un anneau d’utilisation du contexte dont la couleur d’avertissement change à l’approche de la limite, ce qui aide les utilisateurs à anticiper la Compaction ou la troncature dans les longues conversations. [#101183](https://github.com/openclaw/openclaw/pull/101183)
- Les utilisateurs d’iOS et de macOS peuvent prévisualiser le titre et la description d’un lien sûr dans le chat avant de décider de l’ouvrir. [#101198](https://github.com/openclaw/openclaw/pull/101198)
- Les aperçus de liens développés sur iOS et macOS peuvent désormais afficher une miniature sûre de la page, la carte textuelle existante étant conservée si le chargement de l’image échoue. [#101387](https://github.com/openclaw/openclaw/pull/101387)
- Les réponses terminées dans les chats iOS et macOS composent désormais les formules LaTeX en ligne, tandis que le texte diffusé en continu, le code, les devises et les expressions mathématiques non valides restent lisibles sous forme de texte brut. [#101388](https://github.com/openclaw/openclaw/pull/101388)
- La commande `screen.record` sur iOS se termine désormais de manière plus fiable avec un fichier MP4 non vide, au lieu de faire planter l’app et de déconnecter le Node à l’arrêt de l’enregistrement. [#101550](https://github.com/openclaw/openclaw/pull/101550) Merci à @tony-ooo.
- L’app iOS récupère désormais lorsqu’une invite d’autorisation de localisation se ferme sans décision claire, au lieu d’attendre indéfiniment. [75c8753](https://github.com/openclaw/openclaw/commit/75c8753a2cb52cf14acdc50cfa2d2c99368d0e0e) Merci à @vincentkoc.
- L’écran About sur Mac renvoie désormais directement vers le site Web d’OpenClaw, la documentation, le projet GitHub et la communauté Discord, comme les autres apps natives. [6e7ef63](https://github.com/openclaw/openclaw/commit/6e7ef631d2ac41370fc5b14b8e5b5992413a4cd7)
- Les codes d’appairage iOS peuvent désormais annoncer à la fois les routes locales et Tailnet du Gateway, ce qui permet au téléphone d’enregistrer la première adresse accessible lorsqu’il se trouve hors du LAN privé. [#100317](https://github.com/openclaw/openclaw/pull/100317)
- Les utilisateurs du chat iOS et du webchat macOS peuvent rechercher, épingler, renommer, archiver, restaurer et rouvrir des sessions depuis le sélecteur intégré au chat, plutôt que de faire défiler une simple liste de sessions récentes. [#101053](https://github.com/openclaw/openclaw/pull/101053)
- Le mode distant de macOS peut désormais se connecter au moyen d’alias SSH gérés explicitement sélectionnés et récupérer les tunnels appartenant à l’application lorsque le multiplexage ou l’exécution en arrière-plan de SSH est activé. [#99661](https://github.com/openclaw/openclaw/pull/99661)
- Les sessions macOS lancées depuis Finder peuvent désormais utiliser des alias SSH reposant sur des utilitaires `ProxyCommand` couramment installés par les utilisateurs sans perdre l’état de l’agent ni échouer aux vérifications de disponibilité du Gateway. [#100214](https://github.com/openclaw/openclaw/pull/100214)
- Plusieurs instances de l’application macOS conservent désormais le suivi partagé des tunnels SSH et nettoient plus fiablement les processus obsolètes, ce qui réduit les conflits de ports après un plantage. [#100601](https://github.com/openclaw/openclaw/pull/100601)
- L’application Mac affiche désormais la mascotte animée d’OpenClaw lors de l’intégration et dans la fenêtre À propos, tandis que Reduce Motion la maintient immobile. [f052a2f](https://github.com/openclaw/openclaw/commit/f052a2f23b2d2b510686526ce52c6637bca8a4c6)
- La mascotte de l’intégration et de la fenêtre À propos de macOS correspond désormais davantage à celle d’openclaw.ai grâce à des couleurs adaptées au thème, une lueur, un agrandissement au survol et des mouvements plus fluides qui gardent ses antennes visibles. [05c9dcc](https://github.com/openclaw/openclaw/commit/05c9dccf35ec86ebd41e17fdcc0dbf67d203b54c)
- Le tableau de bord macOS suit désormais automatiquement un tunnel SSH distant redémarré vers son nouveau port local et exclut les jetons d’authentification des URL consignées dans les journaux. [#100488](https://github.com/openclaw/openclaw/pull/100488)
- Après un plantage ou une fermeture forcée sous macOS, OpenClaw récupère désormais les tunnels SSH orphelins confirmés du mode distant afin que les relancements puissent réutiliser le port local préféré du Gateway. [#100489](https://github.com/openclaw/openclaw/pull/100489)
- Lorsque le chat Android ne parvient pas à joindre le Gateway, les utilisateurs peuvent ouvrir Gateway Settings ou copier les diagnostics de connexion directement depuis l’écran bloqué. [#94566](https://github.com/openclaw/openclaw/pull/94566) Merci à @tosko4.
- La configuration manuelle du Gateway sur Android accepte désormais directement les hôtes IPv6 tels que `::1`, au lieu de rejeter une adresse qui ne fonctionne que lorsqu’elle est saisie sous forme d’URL WebSocket entre crochets. [#99107](https://github.com/openclaw/openclaw/pull/99107) Merci à @ly85206559.
- La configuration manuelle d’Android accepte et conserve désormais les adresses complètes `ws://`, `wss://` et HTTP du Gateway, y compris les ports intégrés, afin que l’intégration sur le LAN privé atteigne le serveur prévu. [#99110](https://github.com/openclaw/openclaw/pull/99110) Voir aussi [#87216](https://github.com/openclaw/openclaw/issues/87216). Merci à @cursoragent, @ly85206559 et @ruben2000de.
- Les fonctions vocales d’Android ne lisent désormais que les événements de chat explicitement identifiés comme des réponses de l’assistant, empêchant la lecture à voix haute des textes provenant de l’utilisateur, des outils, du système ou dépourvus de rôle. [#99123](https://github.com/openclaw/openclaw/pull/99123) Merci à @ly85206559.
- L’intégration de services tiers sur Android reconnaît désormais l’accès aux SMS lorsque les autorisations d’envoi et de lecture sont accordées dans des invites distinctes, tandis que les autorisations réellement manquantes restent non autorisées. [#99147](https://github.com/openclaw/openclaw/pull/99147) Merci à @nianjiuzst.
- Les requêtes Android `camera.clip` annulées, expirées, échouées ou interrompues libèrent désormais la caméra et suppriment les fichiers temporaires inachevés avant l’exécution des commandes de caméra ultérieures. [#99153](https://github.com/openclaw/openclaw/pull/99153) Merci à @nianjiuzst.
- Le sélecteur de fils de discussion d’Android donne désormais la priorité aux véritables conversations, masque les sessions internes de configuration et d’appareils, tout en rendant les discussions antérieures valides accessibles via All. [#99557](https://github.com/openclaw/openclaw/pull/99557) Merci à @ly85206559.
- La configuration d’Android rejette désormais les URL de Gateway comportant des zones d’interface IPv6 non prises en charge et invite les utilisateurs à fournir une adresse sans portée ou un nom d’hôte LAN avant l’enregistrement. [#99570](https://github.com/openclaw/openclaw/pull/99570) Merci à @ly85206559.
- Android conserve désormais les codes d’erreur précis du Gateway et d’A2UI contenant des chiffres, tels que `A2UI_HOST_UNAVAILABLE`, au lieu de les remplacer par un échec générique. [#99591](https://github.com/openclaw/openclaw/pull/99591) Merci à @ly85206559.
- Android Talk applique désormais les valeurs de directive prises en charge même lorsque le JSON généré ou dicté utilise une casse différente pour des clés telles que `Voice` ou `Language_Code`. [#99592](https://github.com/openclaw/openclaw/pull/99592) Merci à @ly85206559.
- Les commandes de Node Android respectent désormais les valeurs booléennes courantes telles que `yes`, `no`, `1` et `0` pour les filtres d’applications et les options audio de la caméra. [#99873](https://github.com/openclaw/openclaw/pull/99873) Merci à @ly85206559.
- Le mode Talk d’Android transmet désormais les réponses de consultation de l’agent même lorsque les événements d’achèvement en temps réel arrivent dans le désordre, empêchant ainsi les sessions de rester bloquées sur `Thinking...`. [#100049](https://github.com/openclaw/openclaw/pull/100049) Merci à @qingminglong.
- La vue d’ensemble de l’accueil Android utilise désormais un espacement plus cohérent pour les cartes, Talk et les sessions récentes, offrant un premier écran plus calme et plus facile à utiliser tactilement. [#100059](https://github.com/openclaw/openclaw/pull/100059) Merci à @iwhatsskill.
- Le texte de configuration des fonctions Voice et Talk d’Android est désormais tronqué proprement sur les écrans étroits et avec les grandes tailles de police d’accessibilité, au lieu d’apparaître coupé. [#100060](https://github.com/openclaw/openclaw/pull/100060) Merci à @iwhatsskill et @solvely-colin.
- Les paramètres du Gateway sur Android affichent désormais les deux actions de configuration sous forme de boutons occupant toute la largeur, afin que `Pair New Gateway` reste lisible et facile à toucher. [#100090](https://github.com/openclaw/openclaw/pull/100090) Merci à @iwhatsskill.
- L’onglet Voice d’Android accorde désormais au texte et aux commandes de Realtime Talk et Dictation suffisamment d’espace pour rester lisibles sur les téléphones et avec les grandes tailles de police. [#100491](https://github.com/openclaw/openclaw/pull/100491) Merci à @iwhatsskill.
- L’action « New chat in worktree » d’Android est désormais traduite dans les langues autres que l’anglais prises en charge, au lieu d’apparaître avec une ressource manquante. [#100805](https://github.com/openclaw/openclaw/pull/100805) Merci à @amknight.
- Toucher une notification Android créée par `system.notify` place désormais OpenClaw au premier plan. [#100888](https://github.com/openclaw/openclaw/pull/100888)
- Revenir à un chat Android déjà chargé ne fait plus apparaître brièvement un écran de chargement, et la liste des sessions récentes de la vue d’ensemble reste dédupliquée et plus stable pendant les actualisations. [#100966](https://github.com/openclaw/openclaw/pull/100966) Merci à @solvely-colin.
- La palette de commandes d’Android maintient désormais l’alignement visuel des lignes d’actions et de sessions, avec des icônes cohérentes, un espacement de navigation uniforme et une troncature nette des libellés longs. [#101072](https://github.com/openclaw/openclaw/pull/101072) Merci à @iwhatsskill.
- La section Recent Sessions de l’accueil Android maintient désormais les lignes récemment actives dans un ordre stable, regroupe les doublons et conserve les libellés et horodatages pendant les actualisations partielles en direct. [#101161](https://github.com/openclaw/openclaw/pull/101161) Merci à @solvely-colin.
- Les utilisateurs d’un clavier physique sous Android peuvent appuyer sur Entrée ou la maintenir enfoncée pour effectuer un seul envoi sans laisser de saut de ligne superflu, tandis que Maj+Entrée et la composition en cours par la méthode de saisie continuent de fonctionner. [#101360](https://github.com/openclaw/openclaw/pull/101360) Merci à @3ninyt3nin-creator et @joshavant.
- Les aperçus développés des liens sous Android maintiennent désormais la mémoire des miniatures dans les limites d’un budget en octets, réduisant la rétention excessive de mémoire pendant les longues discussions. [#101560](https://github.com/openclaw/openclaw/pull/101560)
- L’application Android respecte désormais le choix de l’utilisateur de se déconnecter, de se connecter ou de changer de Gateway pendant le démarrage, et signale les échecs définitifs de déconnexion aux appelants qui n’attendent pas de réponse. [#101799](https://github.com/openclaw/openclaw/pull/101799)
- Rouvrir OpenClaw depuis le Dock ou Finder de macOS affiche désormais le tableau de bord ou sa fenêtre d’échec même lorsque l’application de la barre des menus est déjà en cours d’exécution. [#97637](https://github.com/openclaw/openclaw/pull/97637) Merci à @solvely-colin.
- Ouvrir Control -&gt; Terminal sur iOS mène désormais directement au terminal sans afficher brièvement l’écran général de connexion à l’interface Web pendant la connexion. [#100727](https://github.com/openclaw/openclaw/pull/100727)
- Les appels de consultation de Realtime Talk accusent réception dès que l’exécution de l’agent intégré est acceptée, au lieu d’attendre qu’elle se termine. [#101091](https://github.com/openclaw/openclaw/pull/101091) Merci à @romneyda.
- L’intégration de Terminal Hatch et les autres connexions TUI affichent désormais `starting up` jusqu’à la fin du chargement de la session, avec des indicateurs d’exécution exacts après les reconnexions. [#93999](https://github.com/openclaw/openclaw/pull/93999) Merci à @ml12580.
- Après la réouverture ou l’actualisation du visualiseur de différences, les commandes de sa barre d’outils n’agissent désormais que sur les cartes de différences actuellement affichées. [#96138](https://github.com/openclaw/openclaw/pull/96138) Merci à @brokemac79 et @davinci282828.
- Les outils de session affichent désormais le chemin absolu correct pour les projets situés à côté du répertoire personnel, au lieu de transformer un préfixe textuel commun en un chemin `~...` trompeur. [#96562](https://github.com/openclaw/openclaw/pull/96562) Merci à @he-yufeng.
- Les listes de sessions de Codex CLI raccourcissent désormais les longs aperçus du dernier message sans scinder les émojis ou caractères similaires en texte corrompu. [#96582](https://github.com/openclaw/openclaw/pull/96582) Merci à @llagy007 et @weeli-009.
- Les pieds de page d’utilisation personnalisés affichent désormais correctement les solutions de repli des alias et des mappages, même lorsque les noms de modèles ou de modes entrent en conflit avec des propriétés telles que `toString` ou `constructor`. [#98503](https://github.com/openclaw/openclaw/pull/98503) Voir aussi [#98466](https://github.com/openclaw/openclaw/issues/98466). Merci à @chenyangjun-xy et @zhanglei99586.
- Les envois répétés pendant que l’agent TUI est occupé mettent désormais à jour un seul avertissement au lieu d’inonder la conversation de notifications en double. [#99879](https://github.com/openclaw/openclaw/pull/99879) Merci à @vincentkoc.
- `openclaw tui --local` explique désormais lorsqu’une commande oblique connue nécessite le Gateway au lieu d’envoyer cette commande au modèle sous forme d’invite indésirable. [#100188](https://github.com/openclaw/openclaw/pull/100188) Merci à @goslingmanagment.
- Les approbations de Skills d’espace de travail lancées dans la TUI apparaissent désormais dans ce terminal, afin que les utilisateurs puissent examiner et débloquer l’exécution sans passer à Telegram. [#100251](https://github.com/openclaw/openclaw/pull/100251) Merci à @vincentkoc.
- L’interface utilisateur du terminal reste désormais ouverte et affiche une erreur sûre et utile lorsqu’une commande de shell locale, une commande oblique ou l’envoi d’un message échoue. [#100340](https://github.com/openclaw/openclaw/pull/100340) Merci à @cxbasdev.
- Les erreurs de connexion au Gateway sur iOS apparaissent désormais sous la forme d’une seule notification temporaire pouvant être fermée, qui réapparaît lors d’un échec ultérieur et réagit visiblement au lieu de s’empiler lorsque le même problème se répète. [#98856](https://github.com/openclaw/openclaw/pull/98856) Merci à @lokimorty.
- Les lignes équivalentes des onglets Control et Settings de l’iPhone utilisent désormais le même style d’icônes arrondies, ce qui facilite le parcours des deux listes. [#98936](https://github.com/openclaw/openclaw/pull/98936) Voir aussi [#98916](https://github.com/openclaw/openclaw/issues/98916). Merci à @sahilsatralkar.
- L’écran À propos d’iOS affiche désormais un résumé concis de l’application, de la famille d’appareils et d’iOS, sans identité dupliquée ni identifiant matériel brut. [#98985](https://github.com/openclaw/openclaw/pull/98985) Associé à [#98943](https://github.com/openclaw/openclaw/issues/98943). Merci à @sahilsatralkar.
- Le réglage d’apparence d’iOS figure désormais dans la liste normale des réglages, affiche en un coup d’œil le choix actuel System, Light ou Dark et se comporte de manière cohérente sur iPad. [#99052](https://github.com/openclaw/openclaw/pull/99052) Associé à [#98995](https://github.com/openclaw/openclaw/issues/98995). Merci à @sahilsatralkar.
- L’annulation ou l’interruption d’une requête iOS `screen.record` arrête désormais l’enregistreur système au lieu de laisser la capture se poursuivre après l’échec de l’appel d’outil. [#99155](https://github.com/openclaw/openclaw/pull/99155) Merci à @nianjiuzst.
- iOS reconnaît désormais l’accès limité aux photos comme utilisable, propose des commandes intégrées à l’application pour demander ou gérer l’autorisation et évite d’interrompre les requêtes du Gateway par une invite inattendue. [#99350](https://github.com/openclaw/openclaw/pull/99350) Associé à [#99046](https://github.com/openclaw/openclaw/issues/99046). Merci à @tony-ooo.
- La liste des destinations de Control sur iPhone est désormais plus compacte et plus facile à parcourir, sans modification de la navigation ni des informations d’état. [#99468](https://github.com/openclaw/openclaw/pull/99468) Associé à [#99439](https://github.com/openclaw/openclaw/issues/99439). Merci à @sahilsatralkar.
- Les réponses rapides de l’Apple Watch survivent désormais à l’indisponibilité d’un iPhone et se reconnectent ultérieurement au Gateway prévu sans être perdues, dupliquées ni mal acheminées. [#100372](https://github.com/openclaw/openclaw/pull/100372) Merci à @nianjiuzst.
- Toucher la barre d’état de l’iPhone laisse désormais la discussion en haut afin de lire les messages plus anciens jusqu’à ce que l’utilisateur choisisse Jump to latest. [#100502](https://github.com/openclaw/openclaw/pull/100502)
- Le scanner de configuration par code QR d’iOS risque moins de planter ou de devenir instable lorsque les utilisateurs ouvrent, annulent ou ferment la caméra pendant l’intégration. [#101235](https://github.com/openclaw/openclaw/pull/101235) Merci à @joshavant et @solvely-colin.
- Les utilisateurs d’iPhone déjà jumelés accèdent désormais de nouveau à Chat, Talk et Settings au lieu de rester bloqués dans la configuration lorsque d’anciens indicateurs d’intégration sont obsolètes. [#101481](https://github.com/openclaw/openclaw/pull/101481)
- L’invite d’autorisation d’accès à la caméra sur iOS associe désormais clairement cet accès à la configuration du Gateway ainsi qu’à la capture de photos, de vidéos, de documents, de l’écran ou de l’espace de travail demandée par l’assistant. [e77994e](https://github.com/openclaw/openclaw/commit/e77994ed5adfd5e69c457a5bca82795eff3555bf) Merci à @joshavant.
- La configuration du Gateway sur Android et iOS exige désormais clairement un TLS sécurisé pour les hôtes distants, avertit avant l’utilisation d’un réseau local de confiance sans chiffrement et propose des instructions de mise à jour concrètes en cas d’incompatibilité de protocole. [#101325](https://github.com/openclaw/openclaw/pull/101325) Merci à @joshavant.
- L’application de barre des menus de macOS réduit désormais les sorties de veille du processeur en période d’inactivité ainsi que les opérations répétées de configuration et d’autorisation, ce qui diminue l’utilisation de la batterie en arrière-plan sans modifier le comportement de l’état actif. [#100463](https://github.com/openclaw/openclaw/pull/100463)
- Les commandes `system.run` de longue durée sur le Node de l’application macOS ne font plus apparaître le Node comme hors ligne et ne bloquent plus le trafic non lié du Gateway. [#100842](https://github.com/openclaw/openclaw/pull/100842) Merci à @lvan185 et @vincentkoc.
- L’application macOS ne confond plus un Gateway local valide géré par launchd avec un écouteur inattendu et n’interrompt plus le travail en cours de l’assistant ou des canaux. [#100867](https://github.com/openclaw/openclaw/pull/100867) Merci à @lsr911 et @vincentkoc.
- L’application macOS conserve désormais la même identité d’appareil jumelé et de Node lors des mises à niveau, des redémarrages et des reconnexions au Gateway, au lieu de demander plusieurs fois une approbation ou de créer des doublons obsolètes. [#101105](https://github.com/openclaw/openclaw/pull/101105) Merci à @yetval.

</Accordion>

## Skills, plugins et installations

### Skills, applications connectées, paquets et réparations

Les [Skills](/fr/cli/skills) peuvent être créées à partir d’une conversation ou d’une source, révisées, épinglées, archivées, restaurées et exclues du contexte futur lorsqu’elles sont obsolètes. La [gestion des plugins](/fr/plugins/manage-plugins) explique plus clairement la découverte, l’installation, les mises à jour, les instantanés de la place de marché, les applications Codex connectées, les approbations et les défaillances d’exécution, tandis que la [supervision de Codex](/fr/plugins/codex-supervision) peut attribuer à chaque nouveau fil une liste explicite et restreinte d’applications autorisées.

Les paquets officiels sont plus faciles à obtenir par les voies prises en charge pour [Docker](/fr/install/docker) et [Android](/fr/platforms/android), et les flux de travail reposant sur des plugins, tels que Google Meet et [Apple Messages](/fr/channels/imessage), permettent de résoudre davantage de problèmes de configuration et de migration. [Doctor](/fr/cli/doctor) gère également les caches de migration endommagés et les anciennes structures de plugins ou de Skills sans transformer une mise à niveau récupérable en impasse.

<Accordion title="Sources et contributeurs">

- Les utilisateurs peuvent transformer une conversation, un chemin de fichier, une URL ou une note collée en une proposition Skill Workshop révisable avec un seul message, au lieu de partir d’un brouillon vierge. [#100442](https://github.com/openclaw/openclaw/pull/100442)
- Les agents à exécution prolongée peuvent automatiquement retirer du contexte futur les Skills Skill Workshop inutilisées, épingler celles qui sont importantes, restaurer des archives et signaler les chevauchements possibles sans supprimer les Skills sous-jacentes. [#101214](https://github.com/openclaw/openclaw/pull/101214)
- Les opérateurs peuvent exécuter `openclaw plugins marketplace refresh` pour vérifier et enregistrer un flux hébergé, imposer une correspondance SHA-256 et savoir si des données en direct, enregistrées ou intégrées ont été utilisées. [#96155](https://github.com/openclaw/openclaw/pull/96155) Merci à @giodl73-repo.
- Les agents Codex natifs exploités par leur propriétaire peuvent désormais utiliser certaines applications déjà connectées au compte Codex de l’opérateur, avec une liste d’autorisation limitée par fil et le maintien des contrôles d’approbation existants. [#100973](https://github.com/openclaw/openclaw/pull/100973) Merci à @pash-openai.
- Les images de conteneur OpenClaw officielles sont désormais disponibles sur Docker Hub ainsi que sur GHCR, ce qui réduit la dépendance aux miroirs non officiels. [#97122](https://github.com/openclaw/openclaw/pull/97122) Merci à @vincentkoc.
- Les utilisateurs d’Android peuvent installer manuellement le fichier officiel signé `OpenClaw-Android.apk` depuis une version stable de GitHub et le vérifier à l’aide des sommes de contrôle SHA-256 publiées. [#101212](https://github.com/openclaw/openclaw/pull/101212)
- Le journal facultatif permet aux utilisateurs de consulter la chronologie d’une journée de travail organisée par le modèle, de générer des comptes rendus quotidiens et de poser des questions sur l’activité capturée, avec un stockage local réservé au propriétaire et une durée de conservation configurable. [#99930](https://github.com/openclaw/openclaw/pull/99930)
- La participation aux réunions Google Meet, leur création, les réponses vocales, la transcription et les automatisations associées fonctionnent désormais dans toutes les langues du navigateur et du compte grâce à l’utilisation de l’anglais dans les onglets Meet contrôlés par OpenClaw. [#89671](https://github.com/openclaw/openclaw/pull/89671) Merci à @unayung.
- Les utilisateurs de Discord peuvent mener à bien des actions Codex Computer Use approuvées telles que `get_app_state` et recevoir le résultat natif de l’outil au lieu d’obtenir un faux délai d’expiration alors que l’outil est toujours en cours d’exécution. [#96818](https://github.com/openclaw/openclaw/pull/96818) Merci à @pollybot13 et @zhangguiping-xydt.
- Les environnements d’exécution d’intégration mis à jour maintiennent Codex, ACP, Copilot, Telegram et le rendu des différences alignés sur le comportement amont compatible, tandis que la récupération après reconnexion ne submerge plus les journaux des opérateurs de messages en double. [#100027](https://github.com/openclaw/openclaw/pull/100027)
- Les utilisateurs de Docker bénéficient désormais d’un environnement d’exécution d’IA intégré plus complet, ce qui réduit les échecs au démarrage et à l’exécution causés par la suppression de liens de paquets lors de l’allègement de l’image. [57ca1b0](https://github.com/openclaw/openclaw/commit/57ca1b02543af9f4ac1d78446951b98cc31fba5a) Merci à @vincentkoc.
- Les outils déclarés par les plugins restent désormais appelables dans les sessions de sous-agents après des modifications du registre des plugins, ce qui évite les échecs répétés `plugin tool runtime missing` et les redémarrages du Gateway. [#82562](https://github.com/openclaw/openclaw/pull/82562) Merci à @luoyanglang et @vincentkoc.
- Les accès réussis au cache des métadonnées de plugins ne submergent plus les diagnostics d’entrées répétées d’analyse complète, ce qui produit des chronologies plus courtes dans lesquelles les véritables analyses sont plus faciles à repérer. [#86796](https://github.com/openclaw/openclaw/pull/86796) Merci à @galiniliev et @vincentkoc.
- Le chargement des plugins n’évalue plus deux fois le propre code de paquet d’OpenClaw, ce qui réduit le travail au démarrage et évite les identités dupliquées de modules, classes, singletons ou registres au sein d’un même processus. [#88384](https://github.com/openclaw/openclaw/pull/88384) Merci à @vincentkoc.
- Les installations npm concernées peuvent de nouveau démarrer le Gateway et produire des réponses, car la synthèse vocale ne se charge désormais que par son chemin TTS pris en charge et fourni par le paquet. [#89899](https://github.com/openclaw/openclaw/pull/89899) Merci à @zhangguiping-xydt.
- Le démarrage de la connexion par code QR sans le plugin de canal officiel requis renvoie désormais la commande d’installation exacte ou `openclaw doctor --fix`, au lieu d’indiquer uniquement que le fournisseur est indisponible. [#90517](https://github.com/openclaw/openclaw/pull/90517) Voir aussi [#83277](https://github.com/openclaw/openclaw/issues/83277). Merci à @carol-iung et @tuaran.
- `openclaw plugins inspect` affiche désormais l’extracteur PDF du plugin intégré d’extraction de documents comme une fonctionnalité disponible, au lieu de n’en signaler aucune. [#91597](https://github.com/openclaw/openclaw/pull/91597) Merci à @xydt-tanshanshan.
- `openclaw plugins init` peut désormais générer la structure initiale d’un plugin de fournisseur de modèles comprenant l’authentification, la configuration des modèles, les tests, le conditionnement, la validation et la structure de publication ClawHub. [#94352](https://github.com/openclaw/openclaw/pull/94352) Merci à @patrick-erichsen.
- La découverte de plugins existante conserve le même catalogue officiel intégré tout en adoptant, pour le marché hébergé, un format de repli versionné qui échoue de manière sécurisée. [#95846](https://github.com/openclaw/openclaw/pull/95846) Merci à @giodl73-repo.
- Les lectures du marché ClawHub se replient désormais sur le catalogue de plugins intégré d’OpenClaw lorsque les données hébergées sont dangereuses ou inutilisables, fournissant une base protégée pour le nouveau flux de travail du marché. [#95868](https://github.com/openclaw/openclaw/pull/95868) Merci à @giodl73-repo.
- Un marché hébergé peut continuer à fournir son dernier catalogue vérifié lorsque le flux est inchangé ou brièvement indisponible, sans faire confiance à des données enregistrées obsolètes ou non valides. [#95877](https://github.com/openclaw/openclaw/pull/95877) Merci à @giodl73-repo.
- Le dernier catalogue vérifié du marché hébergé peut persister après un redémarrage et rester disponible lors de réponses inchangées ou de défaillances temporaires du flux, la persistance restant facultative. [#95964](https://github.com/openclaw/openclaw/pull/95964) Merci à @giodl73-repo.
- Les entrées du marché hébergé ne deviennent installables que lorsqu’elles correspondent à des sources locales approuvées et à des paquets ClawHub de confiance, empêchant ainsi des choix inconnus ou non fiables de s’introduire dans l’installation. [#95969](https://github.com/openclaw/openclaw/pull/95969) Merci à @giodl73-repo.
- Les administrateurs peuvent configurer des flux nommés de marché hébergé ainsi que les sources locales de paquets de confiance auxquelles ces flux peuvent faire référence, tandis que les paramètres de confiance non pris en charge sont rejetés. [#95981](https://github.com/openclaw/openclaw/pull/95981) Merci à @giodl73-repo.
- Les échecs de mise à jour des plugins signalent désormais le véritable problème de métadonnées npm ou de registre, au lieu de le présenter à tort comme une spécification de paquet non prise en charge. [#96143](https://github.com/openclaw/openclaw/pull/96143) Merci à @brokemac79, @romneyda et @slideshow-dingo.
- La nouvelle commande `openclaw plugins marketplace entries` répertorie les plugins hébergés disponibles, leurs versions et les choix d’installation, tout en indiquant si les résultats proviennent de données en direct, enregistrées ou intégrées. [#96158](https://github.com/openclaw/openclaw/pull/96158) Merci à @giodl73-repo.
- Les plugins de moteur de contexte configurés, tels que lossless-claw, restent désormais actifs après leur découverte au lieu d’être remplacés silencieusement par le moteur historique intégré. [#96357](https://github.com/openclaw/openclaw/pull/96357) Merci à @vincentkoc.
- Le démarrage du Gateway signale désormais les canaux configurés dont le chargement a échoué, afin que les opérateurs puissent corriger la confiance, l’activation ou l’installation des plugins avant que des messages ne soient perdus. [#96397](https://github.com/openclaw/openclaw/pull/96397) Merci à @849261680.
- Les opérateurs peuvent installer une ancienne version épinglée d’un plugin ClawHub lorsqu’elle est compatible avec leur déploiement OpenClaw, sans que les exigences de la dernière version ne la bloquent à tort ; les versions incompatibles ou invérifiables restent bloquées. [#96506](https://github.com/openclaw/openclaw/pull/96506) Merci à @isaiahstapleton.
- Les vérifications de démarrage et de configuration comportant de nombreux plugins, particulièrement sous Windows, répètent désormais moins de recherches de chemins de paquets lors de la reconstruction des empreintes des plugins installés, ce qui rend ces parcours plus réactifs. [#96710](https://github.com/openclaw/openclaw/pull/96710) Merci à @211-lee, @sheyanmin et @vincentkoc.
- Les utilisateurs de macOS peuvent exécuter les commandes de bureau Codex Computer Use au moyen de l’installation gérée sans `appServer.command` manuel, et un serveur d’application Codex Desktop obsolète ne bloque plus un binaire local au plugin qui est pris en charge. [#96730](https://github.com/openclaw/openclaw/pull/96730) Merci à @bdjben.
- Les installations officielles de Weixin et la réconciliation après mise à niveau du cœur ciblent désormais la version 2.4.6 du plugin avec son exigence de compatibilité correcte, au lieu de ramener inopinément les utilisateurs à la version 2.4.3. [#96801](https://github.com/openclaw/openclaw/pull/96801) Merci à @lin-hongkuan.
- `openclaw plugins update --all` réaligne désormais les plugins officiels de confiance sur le catalogue stable ou bêta actuel après une mise à niveau du cœur, sans installations forcées manuelles ni remplacement des épinglages ciblés intentionnels. [#96831](https://github.com/openclaw/openclaw/pull/96831) Merci à @ooiuuii et @velvet-shark.
- Les applications configurées et accessibles des plugins Codex natifs restent désormais disponibles lorsqu’un nouveau fil OpenClaw démarre pendant une transition de l’inventaire des applications et de l’état d’activation, au lieu de disparaître silencieusement. [#96872](https://github.com/openclaw/openclaw/pull/96872) Merci à @kevinslin.
- Les sessions Google Meet lancées via un nœud Chrome macOS associé ouvrent désormais l’URL prévue avec le profil Chrome et les outils audio configurés, tandis que les actions non prises en charge et les substitutions d’exécutable sont rejetées avant d’atteindre le nœud. [#96908](https://github.com/openclaw/openclaw/pull/96908) Merci à @joshavant.
- Les modifications apportées par les hooks de plugins atteignent désormais le contexte de l’agent et des exécutions enfants, y compris les remplacements ou suppressions effectués par `agent:bootstrap`. [#97281](https://github.com/openclaw/openclaw/pull/97281) Merci à @outdog-hwh.
- `openclaw plugins update &lt;id&gt; --dry-run` indique désormais aux opérateurs qu’une version par défaut plus récente existe, même si le plugin installé est épinglé précisément. [#97282](https://github.com/openclaw/openclaw/pull/97282) Merci à @yungchentang.
- Les plugins de moteur de contexte intégrés voient désormais le tour actuel dans la transcription pendant `afterTurn`, ce qui évite la perte des premiers messages et les importations en double. [#97342](https://github.com/openclaw/openclaw/pull/97342) Merci à @gorkem2020, @iwhatsskill, @sgh6688 et @udjin79.
- `/status plugins` indique désormais qu’un plugin est chargé uniquement lorsqu’il est réellement en cours d’exécution, tout en continuant d’afficher un inventaire sain des éléments installés. [#97479](https://github.com/openclaw/openclaw/pull/97479) Merci à @masatohoshino.
- Sous Windows, les mises à jour de plugins ne créent plus de chemins gérés si longs que les agents officiels reposant sur Codex échouent avant de pouvoir démarrer et répondre. [#97488](https://github.com/openclaw/openclaw/pull/97488) Merci à @ooiuuii.
- Le passage du niveau de journalisation d’un Gateway en cours d’exécution au mode débogage active désormais immédiatement les diagnostics de Mattermost, Matrix, Microsoft Teams, IRC, Nextcloud Talk et d’autres plugins sans redémarrage. [#97617](https://github.com/openclaw/openclaw/pull/97617) Merci à @amknight et @vincentkoc.
- Windows peut désormais charger des médias entrants valides lorsque les racines configurées et les chemins de fichiers d’exécution ne diffèrent que par la casse des lettres. [#97630](https://github.com/openclaw/openclaw/pull/97630) Merci à @vectorpeak.
- Les plugins peuvent désormais réagir à la création d’une nouvelle demande d’association par message privé, ce qui permet les alertes au propriétaire, les journaux d’audit, les tickets et les intégrations d’approbation sans interrogation périodique. [#97733](https://github.com/openclaw/openclaw/pull/97733) Merci à @clawsean, @omarshahine et @trupe-rs.
- Le mode détaillé de `/status plugins` signale désormais un plugin qui était configuré pour s’exécuter mais qui ne s’est pas chargé, distinguant ainsi la dérive d’exécution d’un inventaire simplement inactif. [#97878](https://github.com/openclaw/openclaw/pull/97878) Merci à @masatohoshino.
- `openclaw update` accepte désormais les plugins de marketplace et ClawHub valides au format bundle sans `package.json`, ce qui empêche la synchronisation des plugins de s'interrompre et de laisser le Gateway arrêté. [#98010](https://github.com/openclaw/openclaw/pull/98010) Voir aussi [#97985](https://github.com/openclaw/openclaw/issues/97985). Merci à @herove et @lilan0125.
- Les paquets npm OpenClaw occupent désormais environ 3,18 Mo de moins une fois décompressés et 371 Ko de moins sous forme compressée, sans modification des points d'entrée du SDK de plugins ni du comportement d'exécution. [#98758](https://github.com/openclaw/openclaw/pull/98758) Voir aussi [#98757](https://github.com/openclaw/openclaw/issues/98757). Merci à @romneyda.
- Les commandes Mattermost natives `/oc_*` fonctionnent de nouveau dans les installations empaquetées utilisant `openclaw/mattermost`, sans permettre aux plugins désactivés ou refusés de contourner les contrôles du Gateway. [#98819](https://github.com/openclaw/openclaw/pull/98819) Voir aussi [#98740](https://github.com/openclaw/openclaw/issues/98740). Merci à @amknight et @keltech-services.
- `openclaw/memory-lancedb` peut désormais être installé et mis à jour avec la résolution normale des dépendances npm, ce qui maintient la mémoire reposant sur LanceDB active sans épinglage de version ni indicateurs de contournement. [#99118](https://github.com/openclaw/openclaw/pull/99118) Voir aussi [#90295](https://github.com/openclaw/openclaw/issues/90295). Merci à @allenhurff et @joshavant.
- L'installation d'un plugin npm géré ne fait plus disparaître après un démarrage ou redémarrage les plugins d'espace de travail provenant de `plugins.load.paths`. [#99196](https://github.com/openclaw/openclaw/pull/99196) Merci à @leonidaslux.
- L'installation et la mise à jour des plugins reposant sur Git fonctionnent désormais lorsque `~/.openclaw` et le répertoire temporaire du système se trouvent sur des systèmes de fichiers différents, sans solution de contournement `TMPDIR`. [#99896](https://github.com/openclaw/openclaw/pull/99896) Merci à @bartok9, @carelvanheerden et @vincentkoc.
- Le chargement des plugins respecte désormais les exceptions de modules natifs Jiti configurées par l'opérateur tout en conservant la protection contre l'évaluation en double du paquet OpenClaw. [#100344](https://github.com/openclaw/openclaw/pull/100344)
- Les utilisateurs de la version stable étendue peuvent installer, réparer et mettre à jour les plugins officiels admissibles à la version exacte du cœur d'OpenClaw au lieu de basculer vers la branche stable standard. [#100448](https://github.com/openclaw/openclaw/pull/100448) Merci à @kevinslin.
- Les plugins intégrés de configuration des canaux se chargent désormais correctement par l'intermédiaire des liens symboliques de la version actuelle et dans les agencements mixtes source/dist, sans faux avertissement signalant qu'ils se trouvent hors du paquet. [#100758](https://github.com/openclaw/openclaw/pull/100758)
- Les extractions du code source dont l'arborescence de plugins intégrés est partielle conservent désormais des métadonnées intégrées complètes pour les contrôles d'intégrité des plugins et la découverte des points de terminaison des fournisseurs. [26c0285](https://github.com/openclaw/openclaw/commit/26c0285812b4299bcb5d61ae76f374410e39d5c5) Merci à @vincentkoc.
- `openclaw update` ne réessaie plus de traiter un plugin après l'avoir déplacé avec succès vers ClawHub, ce qui empêche un échec transitoire redondant de désactiver le plugin migré. [3ce26d6](https://github.com/openclaw/openclaw/commit/3ce26d690f627ad07dd1097384e8c71dd1537ac1) Merci à @vincentkoc.
- Les utilisateurs de Mac qui configurent iMessage peuvent installer ou mettre à jour `imsg` depuis le processus de configuration, bénéficier d'instructions de diagnostic plus claires et récupérer les sessions qui font encore référence à l'ancien emplacement de la compétence. [#101407](https://github.com/openclaw/openclaw/pull/101407) Merci à @omarshahine.
- Les compilations depuis les sources et des paquets macOS n'échouent plus lorsque la configuration tsdown est chargée depuis un répertoire temporaire qui ne peut pas résoudre le paquet d'exécution. [#100499](https://github.com/openclaw/openclaw/pull/100499)
- Les mises à niveau globales via npm peuvent continuer à mesure que le volume des fichiers empaquetés d'OpenClaw augmente sans rencontrer `InstalledDistScanLimitError`, tandis que les analyses incontrôlées restent limitées. [#101206](https://github.com/openclaw/openclaw/pull/101206)
- Lorsque le port local de rappel OAuth de Google Meet est occupé, `openclaw meet auth login` propose désormais le processus manuel de collage de la redirection au lieu d'interrompre la connexion. [#96492](https://github.com/openclaw/openclaw/pull/96492) Merci à @jinduwang1001-max et @yetval.
- `openclaw doctor` peut désormais poursuivre l'ancienne migration de déduplication lorsqu'un fichier de cache retiré contient du JSON mal formé, au lieu de s'arrêter sur une erreur d'analyse. [#98125](https://github.com/openclaw/openclaw/pull/98125) Merci à @pick-cat.
- L'état des appels vocaux terminés reste accessible par l'intermédiaire du Gateway, de l'outil et de la CLI après un redémarrage ou une éviction, au lieu d'apparaître à tort comme absent. [#99797](https://github.com/openclaw/openclaw/pull/99797) Merci à @darren2030.
- Les compilations depuis les sources fonctionnent désormais sur les distributions Node.js prises en charge qui ne disposent pas de la suppression native des types TypeScript, évitant ainsi un échec tardif lié à `--experimental-strip-types`. [#91262](https://github.com/openclaw/openclaw/pull/91262) Merci à @smoe et @vincentkoc.
- Le plugin GitHub Copilot ne perturbe plus `openclaw plugins list` ni `openclaw status` lors d'un chargement limité aux métadonnées avant que l'état d'exécution complet soit disponible. [#95229](https://github.com/openclaw/openclaw/pull/95229) Voir aussi [#94516](https://github.com/openclaw/openclaw/issues/94516). Merci à @cuihaijun et @sunlit-deng.
- Lorsqu'une approbation de plugin Telegram ne peut pas être acheminée, les opérateurs reçoivent désormais des instructions pratiques concernant l'interface Web, l'interface de terminal et la configuration, au lieu d'un échec générique ou d'un dépassement de délai. [#95973](https://github.com/openclaw/openclaw/pull/95973) Voir aussi [#95800](https://github.com/openclaw/openclaw/issues/95800). Merci à @chrisbot2026 et @monkeyleet.
- Les diagnostics de la marketplace indiquent désormais si les commandes d'actualisation et d'entrées ont utilisé un flux hébergé, un instantané enregistré ou une solution de repli, sans consigner les secrets du flux. [#96194](https://github.com/openclaw/openclaw/pull/96194) Merci à @giodl73-repo.
- Les plugins de fournisseurs qui masquent du texte restaurent désormais les valeurs prévues dans les entrées des appels d'outils avant l'exécution des messages, des opérations sur les fichiers et des autres actions externes. [#97769](https://github.com/openclaw/openclaw/pull/97769) Voir aussi [#97761](https://github.com/openclaw/openclaw/issues/97761). Merci à @get-viti et @zoowh.
- Les échecs d'installation et de mise à jour des plugins indiquent désormais si npm s'est arrêté, a été interrompu ou a dépassé le délai, au lieu d'afficher une erreur vide qui donne l'impression que des paquets valides sont non valides. [#98497](https://github.com/openclaw/openclaw/pull/98497) Merci à @sanjays2402 et @vincentkoc.
- Les processus de plugins et de médias gèrent désormais les sorties ffprobe mal formées ou tronquées sans planter, tout en continuant à lire normalement les dimensions vidéo valides. [#98613](https://github.com/openclaw/openclaw/pull/98613) Merci à @pick-cat.
- `/status plugins` regroupe désormais les plugins désactivés selon la raison, notamment les décisions liées à la liste d'autorisation, à la liste de refus, aux valeurs par défaut et aux remplacements, sans modifier le comportement d'activation. [#99598](https://github.com/openclaw/openclaw/pull/99598) Merci à @masatohoshino.
- Les auteurs de plugins peuvent désormais importer les utilitaires partagés `textResult` et `jsonResult` depuis `openclaw/plugin-sdk/tool-results` au lieu de recréer des structures de réponse courantes. [#99740](https://github.com/openclaw/openclaw/pull/99740) Merci à @romneyda.
- Les auteurs de plugins disposent désormais d'un utilitaire partagé `formatByteSize` pour uniformiser les libellés d'octets, tandis que les libellés existants dans OpenClaw restent inchangés. [#99768](https://github.com/openclaw/openclaw/pull/99768) Merci à @romneyda.
- Les installations de plugins ayant échoué affichent désormais l'erreur utile du plugin sans ajouter un faux diagnostic `Also not a valid hook pack`, tandis que les véritables échecs de paquets de hooks restent visibles. [#100554](https://github.com/openclaw/openclaw/pull/100554) Merci à @vincentkoc.
- Les plugins intégrés d'exécution et de configuration des canaux se chargent désormais depuis des racines de registre valides contenant uniquement les sources dans les extractions mixtes source/dist, au lieu de disparaître silencieusement. [#100737](https://github.com/openclaw/openclaw/pull/100737)
- Les approbations ordinaires d'exécution et de reprise de Lobster n'échouent plus à la validation réservée à TaskFlow simplement parce que des champs de flux par défaut inutilisés étaient présents. [#102036](https://github.com/openclaw/openclaw/pull/102036) Merci à @arthurnie, @lilan0125 et @vincentkoc.
- Les valeurs de migration `agentDir` commençant par `~` sont désormais résolues par rapport au répertoire personnel effectif d'OpenClaw. [#99901](https://github.com/openclaw/openclaw/pull/99901)
- Les portées de requêtes de plugins en double sont désormais normalisées de manière cohérente, et les véritables échecs d'accès lors de l'analyse des plugins sont signalés. [#99932](https://github.com/openclaw/openclaw/pull/99932)
- Les erreurs de validation des archives de compétences et de hachage lors de l'envoi identifient désormais le fichier manquant ou illisible tout en préservant l'erreur d'origine du système de fichiers. [#101085](https://github.com/openclaw/openclaw/pull/101085) Merci à @cxbasdev et @vincentkoc.
- La compétence xurl intégrée indique désormais une procédure fonctionnelle d'installation de Node/npm, et la compétence github ne propose plus une option apt non prise en charge sous Linux. [#102158](https://github.com/openclaw/openclaw/pull/102158) Merci à @not-stbenjam.

</Accordion>

## Configuration, maintenance et outils

### Configuration, mises à jour et administration en ligne de commande

Les opérateurs peuvent [rattacher un environnement de développement externe](/fr/cli/attach) à une session Gateway existante et travailler avec des fils compatibles [supervisés par Codex](/fr/plugins/codex-supervision) sur les interfaces natives et celles d’OpenClaw. Les commandes d’[état](/fr/cli/status) et de [configuration](/fr/cli/config) fournissent des diagnostics plus clairs, des valeurs par défaut plus sûres et un contrôle plus fiable des sessions, des services, des identifiants et du comportement d’exécution.

Les parcours pris en charge pour l’[installation](/fr/install) et la [mise à jour](/fr/install/updating) préservent plus soigneusement l’état fonctionnel entre les paquets, les conteneurs et les démons. L’[intégration initiale](/fr/cli/onboard) et le [diagnostic](/fr/cli/doctor) conservent les choix en cas d’interruption de la configuration et des migrations, présentent des étapes de réparation concrètes et évitent de poursuivre silencieusement avec des services obsolètes, des plugins manquants ou une configuration de modèle inutilisable.

<Accordion title="Sources et contributeurs">

- `openclaw attach` lance désormais Claude Code avec un accès temporaire à la session Gateway principale ou sélectionnée, garde les identifiants hors des arguments et révoque l’autorisation à la fin de la session. [#96454](https://github.com/openclaw/openclaw/pull/96454) Merci à @anagnorisis2peripeteia et @obviyus.
- Les agents contrôlés par leur propriétaire peuvent choisir d’utiliser `appServer.homeScope: "user"` pour inspecter et dupliquer en toute sécurité les mêmes fils Codex que ceux disponibles dans Desktop et la CLI. [#99821](https://github.com/openclaw/openclaw/pull/99821)
- Les commandes limitées `openclaw hooks` rendent désormais rapidement le contrôle après l’affichage de leur sortie, afin que les terminaux, les scripts et les tâches de CI ne restent plus bloqués. [#76922](https://github.com/openclaw/openclaw/pull/76922) Merci à @dorukardahan.
- Les commandes non interactives `openclaw models list` et `openclaw models status` se terminent désormais normalement après l’affichage de leurs résultats, ce qui permet aux scripts et aux diagnostics SSH de s’achever sans délai d’expiration externe. [#77904](https://github.com/openclaw/openclaw/pull/77904) Merci à @dorukardahan et @vincentkoc.
- `openclaw config` recommande désormais un redémarrage du Gateway uniquement lorsque les paramètres modifiés l’exigent, de sorte que les modifications d’agents, de modèles et de fournisseurs pouvant être chargées à chaud ne déclenchent plus de redémarrages inutiles. [#80823](https://github.com/openclaw/openclaw/pull/80823) Merci à @kiranmagic7.
- La suppression d’un alias de modèle intégré visible explique désormais que l’alias est automatique et indique comment le masquer, tandis que les alias réellement absents sont toujours signalés comme introuvables. [#81641](https://github.com/openclaw/openclaw/pull/81641) Merci à @scientificprogrammer et @vincentkoc.
- `openclaw sessions --json` inclut désormais les informations disponibles sur la filiation des sous-agents et les détails d’exécution, notamment le lien avec le parent, l’espace de travail, la profondeur, le rôle, les horodatages et l’état. [#87917](https://github.com/openclaw/openclaw/pull/87917) Voir aussi [#80286](https://github.com/openclaw/openclaw/issues/80286). Merci à @islandpreneur007 et @zhangguiping-xydt.
- `openclaw logs --follow` peut pallier une brève indisponibilité locale du Gateway grâce à la sortie du journal, puis revenir automatiquement aux journaux normaux du Gateway après le rétablissement. [#88159](https://github.com/openclaw/openclaw/pull/88159) Merci à @anyech et @vincentkoc.
- Les commandes intégrées `openclaw nodes status`, `openclaw nodes list` et les commandes de nœud associées démarrent désormais rapidement sans initialisation inutile des plugins, tandis que les commandes de nœud fournies par des plugins sont toujours chargées à la demande. [#96702](https://github.com/openclaw/openclaw/pull/96702) Merci à @erhhung, @qijian-zhang et @zengwen-dt.
- La capture du proxy de débogage empêche désormais les corps de réponse surdimensionnés ou sans fin de faire planter l’agent, tout en conservant les métadonnées utiles d’état et d’en-tête. [#97551](https://github.com/openclaw/openclaw/pull/97551) Merci à @alix-007.
- La première vérification de l’état du Gateway après un redémarrage indique désormais la fenêtre de contexte réelle du modèle sélectionné au lieu d’afficher brièvement une limite générique de 200k. [#97576](https://github.com/openclaw/openclaw/pull/97576) Merci à @turbotheturtle.
- Lors des reconnexions de nœuds Android, les utilisateurs sont désormais orientés, après l’échec d’une tentative `devices approve`, vers la commande `openclaw nodes approve &lt;requestId&gt;` correcte, avec un rappel leur indiquant de réutiliser les indicateurs de connexion. [#98115](https://github.com/openclaw/openclaw/pull/98115) Merci à @welfo-beo.
- `openclaw health` signale désormais les livraisons ayant échoué définitivement avec le nombre d’éléments dans la file d’attente et l’ancienneté du plus vieil échec, au lieu d’indiquer que tout fonctionne correctement. [#99842](https://github.com/openclaw/openclaw/pull/99842) Merci à @masatohoshino.
- Les affichages de durée font désormais passer les valeurs inférieures à une seconde arrondies à `1s` au lieu d’afficher l’inélégant `1000ms`. [#100006](https://github.com/openclaw/openclaw/pull/100006) Merci à @qingminglong.
- Les avertissements de configuration répétés sont désormais supprimés entre les réapparitions significatives, ce qui préserve la lisibilité des journaux du Gateway de longue durée sans masquer les nouveaux diagnostics. [#100569](https://github.com/openclaw/openclaw/pull/100569) Merci à @vincentkoc.
- Les paramètres du Gateway marqués comme ne nécessitant aucun redémarrage prennent désormais effet dans les tours en direct et déclenchés par Heartbeat, sans nécessiter de redémarrage manuel. [#100586](https://github.com/openclaw/openclaw/pull/100586) Merci à @obviyus et @sedrak-hovhannisyan.
- Les liens de la TUI laissent désormais les fragments mal formés et la ponctuation isolée sous forme de texte brut, tout en conservant les URL valides entre parenthèses, IPv6 et réparties sur plusieurs lignes cliquables vers la bonne destination. [#100780](https://github.com/openclaw/openclaw/pull/100780)
- `openclaw logs` signale désormais proprement les échecs du flux de suivi des journaux au lieu de planter, de se bloquer ou de laisser `journalctl` en cours d’exécution. [#100850](https://github.com/openclaw/openclaw/pull/100850) Merci à @cxbasdev et @vincentkoc.
- Les journaux tronqués de la CLI OpenClaw restent désormais valides en UTF-8 lorsque la plage d’octets conservée commence au milieu d’un emoji ou d’un autre caractère multioctet. [#101029](https://github.com/openclaw/openclaw/pull/101029) Merci à @ly85206559.
- Sous Windows, les sauvegardes récupèrent désormais plus fiablement après les accès concurrents en écriture en évitant de réutiliser plusieurs fois la même archive temporaire verrouillée et en supprimant les fichiers de nouvelle tentative obsolètes. [#101449](https://github.com/openclaw/openclaw/pull/101449) Merci à @lilan0125 et @vincentkoc.
- Les récapitulatifs des coûts de session estiment désormais un coût réel lorsqu’une transcription indique zéro dollar malgré l’utilisation de jetons et la disponibilité des tarifs connus du modèle. [c5260a3](https://github.com/openclaw/openclaw/commit/c5260a3c03b0444597f3dc4a80c1f003ca7c4b4a) Merci à @nianjiuzst.
- Les journaux de session et les vues des coûts en cache préservent désormais les totaux de zéro dollar rapprochés par le fournisseur, tout en recalculant les coûts réellement manquants à partir des informations enregistrées sur le fournisseur et le modèle. [c45124a](https://github.com/openclaw/openclaw/commit/c45124ab8554d70c4564ae1b3a81fc65872ecb9d)
- Les Gateway gérés par LaunchAgent sur les volumes macOS soumis à des restrictions d’autorisation démarrent désormais l’enveloppe d’environnement générée par l’intermédiaire de `/bin/sh`, ce qui évite l’arrêt immédiat des services en arrière-plan. [#89967](https://github.com/openclaw/openclaw/pull/89967) Voir aussi [#87199](https://github.com/openclaw/openclaw/issues/87199). Merci à @joshdaynard et @zhangguiping-xydt.
- Sous Windows, la recherche de commandes respecte désormais le `PATHEXT` de l’appelant, ce qui permet de résoudre les scripts PowerShell et les exécutables valides dans les conteneurs, la CI et les environnements isolés. [#98093](https://github.com/openclaw/openclaw/pull/98093) Merci à @wendy-chsy.
- Les tentatives `openclaw devices approve` ayant échoué indiquent désormais s’il faut approuver ailleurs une extension de portée ou actualiser l’ID de requête en attente et réessayer. [#98146](https://github.com/openclaw/openclaw/pull/98146) Merci à @romneyda.
- `openclaw gateway status` fournit désormais des conseils pertinents sur les identifiants, la configuration, le redémarrage et les journaux lorsqu’un Gateway en cours d’exécution échoue à sa vérification, au lieu de demander aux opérateurs d’attendre la fin du préchauffage. [#98183](https://github.com/openclaw/openclaw/pull/98183) Merci à @masatohoshino.
- `openclaw docs` rejette désormais les réponses de recherche surdimensionnées avec une erreur explicite avant qu’elles puissent déstabiliser la CLI ou épuiser la mémoire. [#98188](https://github.com/openclaw/openclaw/pull/98188) Merci à @cxbasdev.
- `config.patch` du Gateway accepte désormais les mises à jour de configuration sans rapport lorsqu’un fournisseur intégré utilise son point de terminaison par défaut, sans enregistrer de champs de fournisseur vides réservés à l’exécution. [#98396](https://github.com/openclaw/openclaw/pull/98396) Voir aussi [#98270](https://github.com/openclaw/openclaw/issues/98270). Merci à @momothemage et @weltmaister.
- Les vérifications de mise à jour d’OpenClaw limitent désormais les réponses mal formées ou anormalement volumineuses du registre npm avant qu’elles puissent consommer une quantité excessive de mémoire. [#98508](https://github.com/openclaw/openclaw/pull/98508) Merci à @lzyyzznl.
- Plusieurs cas limites préservent désormais les transcriptions et le texte vocal, signalent les échecs MCP, limitent les réponses surdimensionnées, affichent l’heure actuelle de la session, choisissent le bon gestionnaire de paquets Linux et utilisent le port 443 pour les liens Gateway sécurisés ne comportant aucun port explicite. [#100258](https://github.com/openclaw/openclaw/pull/100258) Merci à @connermo, @cxbasdev, @gfaerny, @hailory, @harjothkhara, @ly85206559, @mushuiyu886, @simon-xydt, @sunlit-deng et @uditdewan.
- Les fichiers `openclaw.json` valides comportant une marque d’ordre des octets, une mise en forme PowerShell ou une indentation profonde peuvent désormais enregistrer les modifications d’authentification, de modèle, de réparation et d’autres éléments de configuration sans remise en forme manuelle. [#100591](https://github.com/openclaw/openclaw/pull/100591) Merci à @vincentkoc.
- `openclaw update` sous Windows empêche désormais la tâche planifiée du Gateway géré de se relancer pendant le remplacement du paquet, évitant ainsi les processus partiellement mis à jour ou mélangeant plusieurs versions. [#100757](https://github.com/openclaw/openclaw/pull/100757) Merci à @vincentkoc.
- La réparation de l’autocomplétion de l’interpréteur pendant `openclaw doctor` et les mises à jour ignore désormais le chargement coûteux des commandes de plugins, ce qui évite des délais inutiles, tandis que la génération complète demandée par l’utilisateur inclut toujours les commandes de plugins. [#76235](https://github.com/openclaw/openclaw/pull/76235)
- La configuration du Gateway sous Windows détecte désormais lorsque le Planificateur de tâches se termine sans démarrer de processus d’écoute et peut utiliser le lancement de secours existant sans créer de doublon si le démarrage est simplement tardif. [#76245](https://github.com/openclaw/openclaw/pull/76245)
- Appuyer sur Ctrl+C pendant le diagnostic de mise à niveau du programme d’installation arrête désormais proprement le processus et empêche une installation incomplète ou ayant échoué d’ouvrir un ancien tableau de bord. [#76386](https://github.com/openclaw/openclaw/pull/76386) Merci à @sebtardif.
- `openclaw doctor` avertit désormais lorsque la recherche de sessions QMD est activée sans exportation des transcriptions et fournit les commandes et la documentation nécessaires pour corriger la configuration de rappel manquante. [#80947](https://github.com/openclaw/openclaw/pull/80947) Merci à @anyech.
- `openclaw doctor` fournit désormais une commande de prévisualisation des transcriptions manquantes qui affiche réellement les entrées susceptibles d’être supprimées avant que les utilisateurs choisissent d’appliquer le nettoyage. [#83630](https://github.com/openclaw/openclaw/pull/83630) Merci à @yuanhanzhong.
- Les opérateurs peuvent examiner les verrous d’écriture de session obsolètes avec `openclaw doctor --lint --json --only core/doctor/session-locks` et prévisualiser les verrous qu’une réparation supprimerait ou conserverait. [#84366](https://github.com/openclaw/openclaw/pull/84366) Merci à @giodl73-repo.
- `openclaw doctor` évalue désormais les limites d’amorçage réelles par agent de l’agent par défaut, ce qui produit des avertissements de troncature et des conseils de correction précis. [#84424](https://github.com/openclaw/openclaw/pull/84424) Merci à @kasangyong et @vincentkoc.
- Les vérifications de Skills gérées par le Gateway peuvent désormais trouver les commandes installées avec pnpm 11 et les dispositions globales courantes de npm, ce qui réduit les faux avertissements d’outil manquant et les réinstallations inutiles. [#85238](https://github.com/openclaw/openclaw/pull/85238) Merci à @shbernal et @vincentkoc.
- `status` et `status --json` construisent désormais les libellés de modèle des sessions avec moins de normalisation inutile, ce qui accélère la restitution pour les grands ensembles de sessions et les vérifications d’incidents. [#87831](https://github.com/openclaw/openclaw/pull/87831) Merci à @acskamloops.
- `openclaw doctor` sous Windows détecte désormais précisément les versions prises en charge de Chrome au lieu d’avertir qu’une installation fonctionnelle n’a pas pu être identifiée. [#87937](https://github.com/openclaw/openclaw/pull/87937) Merci à @mukundakatta.
- `openclaw doctor` ne s’interrompt plus lorsqu’un espace de travail d’agent configuré n’a pas encore été créé, tandis que les opérations réelles sur les fichiers continuent d’appliquer les limites de l’espace de travail. [#89226](https://github.com/openclaw/openclaw/pull/89226) Merci à @sasan1200 et @shifengwang333-ai.
- Un `openclaw nodes approve &lt;requestId&gt;` non valide affiche désormais les ID en attente disponibles et la commande de récupération `openclaw nodes pending` au lieu d’une erreur client brute. [#94452](https://github.com/openclaw/openclaw/pull/94452) Merci à @mushuiyu886.
- L’analyse lint facultative de Doctor peut désormais signaler un stockage d’état OpenClaw manquant, non sécurisé, non inscriptible, synchronisé avec le cloud, amovible, volatil ou incomplet, avec les chemins et des instructions de réparation. [#95979](https://github.com/openclaw/openclaw/pull/95979) Merci à @giodl73-repo.
- Une vérification lint facultative de Doctor explique désormais quelle installation de plugin configurée est défectueuse et donne un aperçu de la réparation avant que les opérateurs n’exécutent le processus de correction existant. [#96171](https://github.com/openclaw/openclaw/pull/96171) Merci à @giodl73-repo.
- Lorsque la sortie d’une commande cron est tronquée, les opérateurs peuvent toujours récupérer l’instruction de connexion ou de configuration antérieure dont ils ont besoin sans exposer son secret brut dans les notifications. [#96393](https://github.com/openclaw/openclaw/pull/96393) Voir aussi [#96346](https://github.com/openclaw/openclaw/issues/96346). Merci à @nz365guy.
- L’expiration du délai pendant la configuration d’une tâche cron isolée ne redémarre plus le Gateway et n’interrompt plus les agents ni les tâches planifiées sans rapport. [#96396](https://github.com/openclaw/openclaw/pull/96396) Merci à @849261680, @brycemurray et @velvet-shark.
- Les opérateurs peuvent exécuter `openclaw doctor --lint --all` pour inclure toutes les vérifications de diagnostic facultatives sans modifier le comportement des automatisations `doctor --lint` existantes. [#96471](https://github.com/openclaw/openclaw/pull/96471) Merci à @giodl73-repo.
- Les alertes d’échec cron par défaut activées avec `openclaw cron edit &lt;job&gt; --failure-alert` persistent désormais après les redémarrages du Gateway au lieu de disparaître silencieusement après le rechargement. [#96615](https://github.com/openclaw/openclaw/pull/96615) Merci à @liuhao1024.
- Les opérateurs peuvent exécuter `openclaw doctor --lint --only core/doctor/gateway-health`, `--only core/doctor/gateway-daemon` ou `--all` pour obtenir des avertissements structurés protégeant les identifiants sur l’accessibilité du Gateway et l’état du service local, sans modifier l’état du service. [#97075](https://github.com/openclaw/openclaw/pull/97075) Merci à @giodl73-repo.
- Les opérateurs peuvent utiliser la vérification lint ciblée de Doctor pour les profils d’authentification afin de détecter les identifiants expirés, manquants, mal formés, en période de récupération, désactivés ou hérités, avec des instructions de réparation structurées. [#97125](https://github.com/openclaw/openclaw/pull/97125) Merci à @giodl73-repo.
- Une vérification lint ciblée de Doctor pour la recherche en mémoire signale désormais les problèmes de configuration du fournisseur, des identifiants, du backend et de QMD, avec des chemins et des correctifs structurés. [#97137](https://github.com/openclaw/openclaw/pull/97137) Merci à @giodl73-repo.
- La vérification lint de Doctor pour l’état de l’espace de travail signale désormais la dérive des plugins, la compatibilité, les diagnostics de chargement et l’état récupérable de TaskFlow dans un format lisible par machine. [#97358](https://github.com/openclaw/openclaw/pull/97358) Merci à @giodl73-repo.
- Une vérification lint ciblée de Doctor pour l’association des appareils fournit désormais des avertissements structurés et des instructions de réparation pour les demandes en attente, l’authentification obsolète, les portées manquantes et les magasins illisibles. [#97366](https://github.com/openclaw/openclaw/pull/97366) Merci à @giodl73-repo.
- `openclaw onboard` explique désormais dès le départ ce que couvre la configuration, pourquoi l’intégration complète peut prendre plus de temps et quelles étapes facultatives peuvent être reportées. [#97482](https://github.com/openclaw/openclaw/pull/97482) Merci à @ly85206559.
- Les opérateurs peuvent demander une vérification lint structurée de Doctor pour les canaux configurés dont les plugins sous-jacents sont bloqués, incluant l’exigence non satisfaite et le correctif suggéré. [#97496](https://github.com/openclaw/openclaw/pull/97496) Merci à @giodl73-repo.
- Une vérification lint ciblée de Doctor pour la limite des résultats d’outils identifie désormais les paramètres inférieurs aux valeurs par défaut adaptées au modèle ou supérieurs au plafond d’exécution, avec des chemins permettant d’agir. [#97500](https://github.com/openclaw/openclaw/pull/97500) Merci à @giodl73-repo.
- Les opérateurs Linux peuvent utiliser la vérification lint de Doctor pour la persistance systemd afin de savoir quand une déconnexion peut arrêter le Gateway et d’obtenir la solution exacte `loginctl enable-linger`. [#97514](https://github.com/openclaw/openclaw/pull/97514) Merci à @giodl73-repo.
- Les hôtes Node distants peuvent désormais se connecter aux Gateways montés sur des chemins de proxy inverse tels que `/openclaw-gw`, y compris après l’installation ou la reconnexion du démon. [#97679](https://github.com/openclaw/openclaw/pull/97679) Voir aussi [#97678](https://github.com/openclaw/openclaw/issues/97678). Merci à @wm0018.
- Les compilations locales depuis les sources avec Docker risquent moins de manquer de mémoire, et les échecs qui épuisent malgré tout la mémoire suggèrent désormais les paramètres de compilation pertinents. [#98119](https://github.com/openclaw/openclaw/pull/98119) Voir aussi [#98118](https://github.com/openclaw/openclaw/issues/98118). Merci à @zyzo.
- `openclaw pairing list` fournit désormais une prochaine étape utile pour l’approbation de l’appareil lorsqu’il n’existe aucun canal d’association par message privé, au lieu d’afficher une erreur de choix vide défectueuse. [#98142](https://github.com/openclaw/openclaw/pull/98142) Merci à @romneyda.
- `openclaw doctor` avertit désormais lorsque des tâches cron ciblent des canaux dont les plugins sont inactifs, ce qui permet aux opérateurs de corriger l’acheminement avant l’échec de la prochaine exécution planifiée. [#98184](https://github.com/openclaw/openclaw/pull/98184) Merci à @masatohoshino et @vincentkoc.
- Les installations Docker et avec montage lié peuvent terminer la migration cron héritée au-delà des limites du système de fichiers, avec des avertissements permettant d’agir et des nouvelles tentatives sans risque de doublons lorsque le nettoyage ne peut pas aboutir. [#98217](https://github.com/openclaw/openclaw/pull/98217) Merci à @masatohoshino.
- Les opérateurs Linux voient désormais lorsque systemd a cessé de redémarrer un Gateway qui plante de façon répétée, et `openclaw gateway restart` peut rétablir le service défaillant verrouillé dans cet état. [#98291](https://github.com/openclaw/openclaw/pull/98291) Merci à @masatohoshino.
- L’analyse lint de Doctor peut désormais identifier les modèles `HEARTBEAT.md` hérités délimités et distinguer les fichiers adaptés à un nettoyage automatique de ceux qui contiennent du contenu personnalisé. [#98400](https://github.com/openclaw/openclaw/pull/98400) Merci à @giodl73-repo.
- L’analyse lint de Doctor peut désormais signaler la combinaison de WhatsApp, d’une boucle d’événements du Gateway surchargée et de sessions TUI locales actives, associée à des réponses retardées. [#98406](https://github.com/openclaw/openclaw/pull/98406) Merci à @giodl73-repo.
- Les liens de l’interface de contrôle, d’association, de code de configuration, de QR et d’état privilégient désormais une adresse LAN accessible sur les hôtes dotés de VPN, d’adaptateurs virtuels, de WSL, d’Hyper-V ou de plusieurs réseaux. [#98482](https://github.com/openclaw/openclaw/pull/98482) Merci à @joshavant.
- `openclaw doctor` explique désormais pourquoi des tâches cron semblent toujours en cours après l’interruption d’une exécution du Gateway et comment ces marqueurs résiduels sont supprimés au démarrage suivant. [#98620](https://github.com/openclaw/openclaw/pull/98620) Merci à @masatohoshino.
- `openclaw gateway status --deep` peut désormais identifier les règles du pare-feu Windows qui bloquent les appareils du LAN et suggérer des solutions pratiques concernant les règles, l’interface de bouclage, Tailscale ou les tunnels SSH. [#98666](https://github.com/openclaw/openclaw/pull/98666) Merci à @joshavant.
- L’analyse lint structurée de Doctor peut désormais signaler les liens symboliques globaux obsolètes de l’environnement d’exécution des plugins, notamment le lien obsolète, sa cible et la commande de nettoyage `openclaw doctor --fix`. [#98729](https://github.com/openclaw/openclaw/pull/98729) Merci à @giodl73-repo.
- Après que `openclaw doctor --fix` a archivé un fichier auxiliaire hérité, l’application macOS ne le recrée plus et ne déclenche plus le même avertissement de conflit de migration à chaque commande ou démarrage du Gateway. [#99039](https://github.com/openclaw/openclaw/pull/99039) Voir aussi [#98917](https://github.com/openclaw/openclaw/issues/98917). Merci à @momothemage et @p51moustache.
- Les diagnostics d’état du Gateway, de Doctor et d’intégration lisent désormais les journaux volumineux dans des limites fixes et font ressortir les échecs récents utiles plutôt que des informations obsolètes et parasites. [#99407](https://github.com/openclaw/openclaw/pull/99407) Merci à @sunlit-deng.
- Doctor avertit désormais lorsque des tâches cron activées restent bloquées dans des échecs répétés sans alertes configurées, tandis que les tâches saines ou sous le seuil restent silencieuses. [#99606](https://github.com/openclaw/openclaw/pull/99606) Merci à @masatohoshino.
- Les mises à jour gérées du Gateway permettent désormais aux tâches actives de se terminer pendant la période de drainage configurée avant l’expiration du délai de transfert du service. [#99695](https://github.com/openclaw/openclaw/pull/99695) Merci à @zoowh.
- Les historiques de sessions volumineux produisent désormais des fichiers `.usage-cost-cache.json` plus petits, nécessitant moins d’analyse et de réécriture, et sont reconstruits automatiquement après la mise à niveau. [#99714](https://github.com/openclaw/openclaw/pull/99714) Voir aussi [#99511](https://github.com/openclaw/openclaw/issues/99511). Merci à @dexhunter et @wayne524.
- La configuration initiale des Skills sur les machines minimales regroupe désormais les prérequis Homebrew, uv ou Go manquants dans une seule note claire, tout en continuant à installer les dépendances qui peuvent l’être. [#99726](https://github.com/openclaw/openclaw/pull/99726) Merci à @fuller-stack-dev et @sedrak-hovhannisyan.
- Les mises à niveau depuis le magasin hérité d’état de la configuration ne répètent plus un avertissement de conflit permanent, et les sauvegardes de récupération existantes restent disponibles sans écraser les observations plus récentes. [#99728](https://github.com/openclaw/openclaw/pull/99728) Voir aussi [#99280](https://github.com/openclaw/openclaw/issues/99280). Merci à @ccbridle, @jalehman et @joshavant.
- Les programmes d’installation et les vérifications d’exécution rejettent désormais Node 23.0-23.10 dès le début, avec des indications sur les versions prises en charge, au lieu de laisser les utilisateurs avec une CLI OpenClaw défectueuse. [#99832](https://github.com/openclaw/openclaw/pull/99832) Merci à @fuller-stack-dev et @vincentkoc.
- Crestodian sur Claude Code ou Gemini CLI peut désormais mener des conversations de configuration en plusieurs échanges, inspecter l’état, demander une approbation précise des modifications et vérifier les écritures, au lieu de revenir immédiatement à un planificateur en un seul échange. [#100029](https://github.com/openclaw/openclaw/pull/100029)
- Les conversations de configuration et de réparation de Crestodian ne déstabilisent plus la TUI locale lorsqu’un consommateur d’événements du terminal échoue pendant la transmission de la réponse. [#100341](https://github.com/openclaw/openclaw/pull/100341) Merci à @cxbasdev et @vincentkoc.
- Les Gateways de la version stable étendue affichent désormais périodiquement une indication `openclaw update` lorsqu’un paquet exact plus récent est vérifié, sans modifier automatiquement l’installation. [#100438](https://github.com/openclaw/openclaw/pull/100438) Merci à @kevinslin.
- Crestodian distingue désormais les questions ordinaires des demandes opérationnelles, accepte les formulations naturelles d’approbation, efface les propositions obsolètes et exclut la configuration sensible du modèle de conversation. [#100656](https://github.com/openclaw/openclaw/pull/100656)
- Les nouvelles installations depuis git guident désormais les utilisateurs dans la configuration, ou fournissent la commande exacte permettant de la terminer ultérieurement, avant qu’une configuration manquante ou l’authentification du Gateway ne puisse perturber la première utilisation. [#101901](https://github.com/openclaw/openclaw/pull/101901) Merci à @fuller-stack-dev.
- La configuration vérifie désormais la présence d’identifiants dans le répertoire personnalisé configuré de l’agent ou de l’authentification, au lieu de signaler un état d’amorçage incorrect depuis un emplacement par défaut. [0fd69dc](https://github.com/openclaw/openclaw/commit/0fd69dc3d2b864fb7d3a0b5204a7c720b5a19c0d) Merci à @vincentkoc.
- La CLI et la TUI plein écran s’ouvrent désormais avec un message de récupération clair lorsque leur répertoire de lancement a été supprimé, au lieu de planter avant le démarrage. [#93636](https://github.com/openclaw/openclaw/pull/93636) Merci à @ml12580.
- Les vues d’état, de liste et d’associations en attente des Nodes tolèrent désormais les valeurs enregistrées mal formées et affichent les informations utilisables sur les Nodes au lieu de planter. [#93930](https://github.com/openclaw/openclaw/pull/93930) Merci à @ly-wang19.
- `usage.cost` et `sessions.usage` rejettent désormais une date de début postérieure à la date de fin avec un message `INVALID_REQUEST` clair, au lieu de renvoyer un rapport vide trompeur. [#94096](https://github.com/openclaw/openclaw/pull/94096) Merci à @alix-007.
- Les commandes CLI du navigateur acceptent désormais `--browser-profile` avant ou après la sous-commande, rétablissant les modèles de commande existants pour les navigateurs distants et WSL2. [#94431](https://github.com/openclaw/openclaw/pull/94431) Merci à @ml12580.
- Langfuse, OpenTelemetry et Prometheus peuvent désormais capturer les données d’utilisation, de coût, de modèle, de fournisseur, de temporisation et de session pour les exécutions démarrées via `/v1/responses` et `/v1/chat/completions`. [#96152](https://github.com/openclaw/openclaw/pull/96152) Merci à @rocke2020 et @xialonglee.
- `openclaw tasks maintenance --apply` conserve désormais l’historique des sessions Cron actives, même lorsque les identifiants de tâches contiennent des espaces, des majuscules, des signes de ponctuation ou des clés de session explicites. [#96352](https://github.com/openclaw/openclaw/pull/96352) Merci à @ly-wang19 et @vincentkoc.
- `openclaw cron add` rejette désormais immédiatement les valeurs `--no-output-timeout-seconds` et `--output-max-bytes` non valides, au lieu de créer silencieusement une tâche de commande dépourvue des limites demandées. [#96516](https://github.com/openclaw/openclaw/pull/96516) Merci à @zhangguiping-xydt.
- `openclaw config unset` explique désormais lorsqu’une valeur visible est une valeur par défaut d’exécution héritée qui n’est pas stockée dans la configuration de l’utilisateur, évitant ainsi une boucle improductive entre `config get` et `config unset`, tout en laissant les tentatives ayant échoué inchangées. [#96557](https://github.com/openclaw/openclaw/pull/96557) Merci à @moeghashim.
- L’échec du démarrage de `openclaw --help` et `openclaw --version` renvoie désormais rapidement le code de sortie 1, au lieu de laisser le processus du terminal bloqué. [#97807](https://github.com/openclaw/openclaw/pull/97807) Merci à @aniruddhaadak80 et @maweibin.
- `gateway run --force` ignore désormais les enregistrements d’identifiants de processus d’écoute mal formés lors du nettoyage des ports, au lieu de propager un état de processus non valide dans la récupération. [#98371](https://github.com/openclaw/openclaw/pull/98371) Merci à @lzyyzznl.
- Les diagnostics de ports occupés du Gateway et le nettoyage forcé ignorent désormais les identifiants d’écoute mal formés, évitent les processus fantômes et vérifient qu’un port est réellement libre avant de signaler la récupération. [#98505](https://github.com/openclaw/openclaw/pull/98505) Merci à @qiuyuang.
- Les tableaux de la CLI raccourcissent désormais uniquement le véritable répertoire personnel et ses descendants, de sorte que les chemins voisins tels que `/home/alice2/project` ne s’affichent plus de manière trompeuse comme des chemins relatifs au répertoire personnel. [#98876](https://github.com/openclaw/openclaw/pull/98876) Voir aussi [#98872](https://github.com/openclaw/openclaw/issues/98872). Merci à @qingminglong.
- `openclaw backup create` tolère désormais la disparition de fichiers d’exécution temporaires pendant une sauvegarde en cours, tout en continuant à protéger les fichiers persistants conformément à la politique d’inclusion existante. [#98879](https://github.com/openclaw/openclaw/pull/98879) Voir aussi [#98865](https://github.com/openclaw/openclaw/issues/98865). Merci à @carterstebbins23-spec, @vincentkoc et @zengwen-dt.
- Les modèles de barre d’utilisation stockés dans des fichiers maintiennent désormais l’utilisation des observateurs et des descripteurs de fichiers dans des limites définies au sein des processus OpenClaw de longue durée, tout en rechargeant les modèles lorsque cela est nécessaire. [#98990](https://github.com/openclaw/openclaw/pull/98990) Merci à @chenyangjun-xy, @vincentkoc et @zhanglei99586.
- Les indications de validation de la configuration et du schéma des plugins affichent désormais clairement les valeurs autorisées, au lieu de l’étiquette littérale trompeuse `undefined`. [#99045](https://github.com/openclaw/openclaw/pull/99045) Merci à @lzyyzznl.
- Les commandes de lecture des messages, d’affichage des messages épinglés et de recherche peuvent désormais afficher plus de 25 lignes renvoyées lorsqu’une valeur `--limit` supérieure est demandée, et avertissent lorsque des résultats supplémentaires du fournisseur restent disponibles. [#99089](https://github.com/openclaw/openclaw/pull/99089) Merci à @jerrytao-ai et @wm0018.
- `openclaw health` avertit désormais lorsque le rechargement à chaud de la configuration du Gateway s’est arrêté, afin que les opérateurs sachent qu’un redémarrage est nécessaire au lieu d’exécuter sans le savoir des paramètres obsolètes. [#99267](https://github.com/openclaw/openclaw/pull/99267) Merci à @masatohoshino et @vincentkoc.
- `openclaw sessions tail --tail` rejette désormais les nombres trop grands pour être représentés de manière fiable, au lieu d’appliquer une limite d’historique imprécise. [#99398](https://github.com/openclaw/openclaw/pull/99398) Merci à @qingminglong.
- Un horodatage de transcription mal formé ne corrompt plus les enregistrements d’utilisation et de coût de la session avec des valeurs non valides. [#99420](https://github.com/openclaw/openclaw/pull/99420) Merci à @krissding.
- La sortie lisible par l’utilisateur de `cron list` et `cron show` révèle désormais les séries d’échecs répétés telles que `error (12x)`, tout en laissant inchangées les valeurs d’état JSON. [#99602](https://github.com/openclaw/openclaw/pull/99602) Merci à @masatohoshino.
- Windows détecte désormais de manière fiable les processus d’écoute actifs du Gateway à partir de la sortie localisée de `netstat`, ce qui améliore les diagnostics de ports et le nettoyage de `gateway --force` sans confondre les connexions établies avec des processus d’écoute. [#100012](https://github.com/openclaw/openclaw/pull/100012) Merci à @qingminglong et @vincentkoc.
- Les avertissements de maintenance des sessions indiquent désormais `1 minute`, `1 hour` ou `1 day` aux limites arrondies, au lieu de valeurs maladroites telles que `60 seconds`. [#100096](https://github.com/openclaw/openclaw/pull/100096) Merci à @narahariraghava et @vincentkoc.
- La vue compacte de `/status` n’affiche plus la ligne ambiguë `Plugins: OK`, tandis que les avertissements et les diagnostics détaillés des plugins restent disponibles. [#100143](https://github.com/openclaw/openclaw/pull/100143)
- `openclaw --help` correspond désormais à l’aide et aux complétions propres à chaque commande, avec `config patch` et `config schema` visibles dans la liste principale des commandes. [#100670](https://github.com/openclaw/openclaw/pull/100670) Merci à @amirf194 et @vincentkoc.
- Les liens affichés dans le terminal et contenant des parenthèses équilibrées restent désormais cliquables sur l’intégralité de l’URL prévue, au lieu d’être raccourcis ou mal redirigés. [#100697](https://github.com/openclaw/openclaw/pull/100697) Merci à @aniruddhaadak80 et @zoowh.
- Une déconnexion WebSocket 1006 du Gateway fournit désormais aux opérateurs des indications précises sur la perte de connexion, au lieu de laisser entendre qu’un Gateway fonctionnel s’est nécessairement arrêté de manière inattendue. [#101219](https://github.com/openclaw/openclaw/pull/101219) Merci à @darren2030 et @vincentkoc.
- Les traces d’échec d’OpenClaw et du banc d’essai des plugins incluent désormais dans OpenTelemetry des détails d’erreur utiles et expurgés, au lieu d’une simple étiquette générique d’échec. [#101244](https://github.com/openclaw/openclaw/pull/101244) Merci à @amknight.
- Les redémarrages du Gateway sous Windows ne dépendent plus de la vérification `findstr`, qui pouvait laisser une fenêtre de commande visible ou bloquée empêcher le transfert. [#101366](https://github.com/openclaw/openclaw/pull/101366) Merci à @deepujain.
- Les visualiseurs de traces OpenTelemetry peuvent désormais afficher les résultats d’outils capturés avec leurs entrées dans les champs GenAI standard, ce qui rend l’analyse des échecs d’exécution plus complète. [#101371](https://github.com/openclaw/openclaw/pull/101371) Merci à @amknight.
- Sous Windows, les commandes ayant dépassé leur délai sont moins susceptibles de laisser des processus enfants en cours d’exécution lorsque `taskkill.exe` ne peut pas démarrer. [#101392](https://github.com/openclaw/openclaw/pull/101392) Merci à @aniruddhaadak80 et @zengwen-dt.
- `openclaw backup create` sous Windows réessaie désormais les conflits d’archivage de fichiers actifs avec de nouveaux chemins temporaires, réduisant ainsi les sauvegardes partielles verrouillées et les archives de nouvelle tentative résiduelles. [#101464](https://github.com/openclaw/openclaw/pull/101464) Merci à @lilan0125 et @zoowh.
- `openclaw status --all` préserve désormais la lisibilité des messages de problème de canal raccourcis lorsqu’un emoji se trouve à la limite d’affichage. [#101503](https://github.com/openclaw/openclaw/pull/101503) Merci à @wm0018.
- Les avertissements de maintenance des sessions affichent désormais des estimations d’attente plus précises à proximité des changements d’unité, de sorte qu’un délai d’environ 90 secondes n’est pas exagéré à deux minutes. [58d707f](https://github.com/openclaw/openclaw/commit/58d707fbed3400292b9d7bf8fe31e6480309a180) Merci à @vincentkoc.
- `openclaw status`, `status --json` et `status --all` respectent désormais leur délai d’expiration sous Linux lorsque systemd ne répond pas, au lieu de rester bloqués indéfiniment. [#94149](https://github.com/openclaw/openclaw/pull/94149) Voir aussi [#84698](https://github.com/openclaw/openclaw/issues/84698). Merci à @zengwen-dt et @zus-assistant.
- Lorsqu’un Gateway local est à l’écoute mais défaillant, `openclaw gateway status --deep` peut désormais signaler une cause récente probable, telle qu’un disque plein, au lieu d’indiquer uniquement une déconnexion générique. [#95902](https://github.com/openclaw/openclaw/pull/95902) Merci à @vincentkoc et @wangbyg.
- Le redémarrage, la mise à jour, la réinstallation ou la réparation d’un Gateway macOS préserve désormais les identifiants d’authentification actifs des canaux reposant sur SecretRef, au lieu de rendre Telegram et d’autres intégrations incapables de s’authentifier. [#99124](https://github.com/openclaw/openclaw/pull/99124) Merci à @mushuiyu886.
- Les mises à jour de la configuration du Gateway rejettent désormais les valeurs expurgées manquantes pour des clés telles que `toString` ou `constructor`, au lieu de restaurer une fonction JavaScript héritée. [#99152](https://github.com/openclaw/openclaw/pull/99152) Merci à @zenglingbiao.
- La complétion d’interpréteur générée suggère désormais les alias de commande OpenClaw acceptés et continue à compléter leurs options et sous-commandes. [#99419](https://github.com/openclaw/openclaw/pull/99419) Merci à @amirf194, @jack-dev-ops et @vincentkoc.
- Les vérifications de mise à jour et d’état identifient désormais les métadonnées npm mal formées comme du JSON non valide, au lieu de renvoyer uniquement une erreur de syntaxe opaque. [#100338](https://github.com/openclaw/openclaw/pull/100338) Merci à @cxbasdev.
- Les opérateurs peuvent mettre à niveau le Gateway avant les nœuds subordonnés N-1 sans perdre les procédures normales de mise à jour, de redémarrage, de réparation, d’état et de maintenance pour ces nœuds. [#101109](https://github.com/openclaw/openclaw/pull/101109) Merci à @jtczville.
- Les utilisateurs de Windows peuvent lancer les moteurs Gemini CLI et Claude Code installés globalement via leurs scripts de commande npm, sans échecs immédiats de création de processus ni altération des arguments de l’invite. [#101378](https://github.com/openclaw/openclaw/pull/101378) Merci à @wendy-chsy.
- L’échec du processus de remplacement du Gateway pendant une mise à jour ne provoque plus un arrêt inattendu supplémentaire non intercepté dans le processus parent existant. [#101489](https://github.com/openclaw/openclaw/pull/101489) Merci à @aniruddhaadak80, @momothemage et @vincentkoc.
- Les installations de la CLI ayant échoué nettoient désormais leurs répertoires temporaires de préparation Node et leurs fichiers de réécriture de l’espace de travail pnpm. [#103725](https://github.com/openclaw/openclaw/pull/103725) Merci à @sebtardif.
- Les installations Git créent désormais un lanceur `openclaw` qui continue d’utiliser l’environnement d’exécution Node.js prévu, même après une modification du PATH de l’utilisateur. [be7198f](https://github.com/openclaw/openclaw/commit/be7198f6a2225dd988e707c4ef11c3cf002c14c3)
- `openclaw agents list` affiche désormais les canaux externes configurés même lorsque leur plugin est manquant, et fournit les indications appropriées pour l’installation ou `openclaw doctor --fix`. [#95363](https://github.com/openclaw/openclaw/pull/95363) Merci à @hugenshen.
- Les opérateurs peuvent utiliser l’analyse ciblée de Doctor pour inspecter les anciennes transcriptions de sessions et les chemins d’instantanés obsolètes, prévisualiser le nettoyage et choisir de l’appliquer ou non. [#95976](https://github.com/openclaw/openclaw/pull/95976) Merci à @giodl73-repo.
- Les avertissements concernant le routage du compte par défaut de WhatsApp et Telegram sont désormais disponibles via l’analyse structurée et sélectionnable de Doctor, tandis que la sortie normale de Doctor reste inchangée. [#96147](https://github.com/openclaw/openclaw/pull/96147) Merci à @pick-cat et @vincentkoc.
- L’analyse facultative de Doctor peut désormais identifier les données obsolètes ou manquantes du registre des plugins, les plugins intégrés masqués, les enregistrements d’installation obsolètes et les liens homologues OpenClaw rompus. [#96169](https://github.com/openclaw/openclaw/pull/96169) Merci à @giodl73-repo.
- Les liens vers la documentation du terminal et de la configuration sont désormais résolus correctement lorsque les chemins relatifs commencent par `http` ou que les schémas HTTP absolus utilisent des lettres majuscules. [#96439](https://github.com/openclaw/openclaw/pull/96439) Merci à @lin-hongkuan.
- Les notes du terminal, la sortie de Doctor et les diagnostics renvoient désormais à la ligne les longues séquences de caractères CJK, pleine chasse ou emoji dans la largeur demandée, au lieu de déborder sur les autres colonnes. [#96746](https://github.com/openclaw/openclaw/pull/96746) Merci à @ly-wang19.
- L’analyse structurée de Doctor peut désormais signaler un espace disque faible ou critique pour le répertoire d’état d’OpenClaw, notamment le chemin concerné, l’espace disponible, l’espace requis et la mesure corrective. [#98391](https://github.com/openclaw/openclaw/pull/98391) Merci à @giodl73-repo.
- La configuration manuelle du Gateway rejette désormais les saisies de port telles que `1e3` ou `0x1000` au lieu d’enregistrer silencieusement un autre port, tandis que les ports décimaux valides restent inchangés. [#98689](https://github.com/openclaw/openclaw/pull/98689) Voir aussi [#98681](https://github.com/openclaw/openclaw/issues/98681). Merci à @qingminglong.
- Les opérateurs de Plugin peuvent exécuter `doctor --lint --only core/doctor/legacy-plugin-manifests` ou `--all` pour identifier les anciennes clés de manifeste et consulter le plugin concerné, le chemin et la commande de réparation. [#98695](https://github.com/openclaw/openclaw/pull/98695) Merci à @giodl73-repo.
- Les opérateurs peuvent utiliser `openclaw doctor --lint --only core/doctor/legacy-plugin-dependencies` ou `--all` pour détecter un état obsolète des dépendances de plugin et obtenir un chemin ainsi que des instructions de réparation sûres sans modifier l’installation. [#98725](https://github.com/openclaw/openclaw/pull/98725) Merci à @giodl73-repo.
- Les opérateurs peuvent activer `core/doctor/legacy-cron-store` pour détecter les anciennes données Cron nécessitant une intervention, sans que l’analyse ne modifie l’état enregistré. [#99211](https://github.com/openclaw/openclaw/pull/99211) Merci à @giodl73-repo.
- Les avertissements de configuration des canaux sont désormais disponibles sous forme de résultats structurés de l’analyse Doctor, avec des chemins stables et des instructions de réparation destinées aux opérateurs et à l’automatisation. [#99238](https://github.com/openclaw/openclaw/pull/99238) Merci à @giodl73-repo.
- Les résultats par défaut de `doctor --lint` se concentrent désormais sur les problèmes de configuration et d’exécution nécessitant une intervention, tandis que les conseils facultatifs concernant les sauvegardes et la mémoire ne sont disponibles que sur demande. [#99249](https://github.com/openclaw/openclaw/pull/99249) Merci à @giodl73-repo.
- Une exécution normale de l’analyse Doctor n’appelle plus `crontab -l` pour la vérification facultative de l’ancienne intégration WhatsApp, sauf si un opérateur la sélectionne explicitement. [#99250](https://github.com/openclaw/openclaw/pull/99250) Merci à @giodl73-repo.
- `openclaw doctor --fix` s’exécute désormais correctement dans les environnements verrouillés lorsque seule l’installation de l’autocomplétion du shell est bloquée, tout en continuant à signaler les véritables échecs d’écriture. [#99540](https://github.com/openclaw/openclaw/pull/99540) Voir aussi [#99237](https://github.com/openclaw/openclaw/issues/99237). Merci à @hunglp6d et @rballiance.
- `doctor --lint --all` peut désormais indiquer le chemin ou l’autorisation qui empêcherait une réparation de la configuration avant que les opérateurs n’exécutent `doctor --fix`. [#100093](https://github.com/openclaw/openclaw/pull/100093) Merci à @giodl73-repo.
- Les traces, métriques et journaux OTLP respectent désormais `HTTP_PROXY`, `HTTPS_PROXY` et `NO_PROXY`, ce qui maintient les exportations de diagnostics sur le chemin réseau configuré. [#100616](https://github.com/openclaw/openclaw/pull/100616) Merci à @jesse-merhi.
- Les vérifications d’état d’un Gateway distant utilisent désormais la cible SSH configurée comme solution de repli lorsque la détection locale de la configuration effective échoue, au lieu de provoquer un plantage ou de bloquer la détection. [#101160](https://github.com/openclaw/openclaw/pull/101160) Merci à @cxbasdev.
- Sous Windows, la mise à jour et la réparation par Doctor déplacent désormais un ancien Gateway de démarrage contrôlé vers le Planificateur de tâches sans laisser de processus obsolète, supprimer l’authentification ni retirer trop tôt la solution de repli. [#101213](https://github.com/openclaw/openclaw/pull/101213) Merci à @vincentkoc.
- `openclaw update` cible désormais l’installation globale de Node qui l’a lancé, évitant ainsi un faux succès lorsque Homebrew, nvm, asdf ou Volta expose une autre copie d’OpenClaw. [#101228](https://github.com/openclaw/openclaw/pull/101228) Merci à @buddyh.
- Les cartes d’approbation d’exécution en attente décrivent désormais uniquement l’état de l’approbation, et l’avertissement concernant l’exécution de secours au premier plan n’apparaît qu’après qu’une commande a réellement été exécutée de cette manière. [#101561](https://github.com/openclaw/openclaw/pull/101561) Merci à @vincentkoc.
- `openclaw plugins list` utilise désormais nettement moins de mémoire de pointe sur les installations empaquetées nouvelles ou déjà migrées, tout en préservant le comportement de migration requis. [#103132](https://github.com/openclaw/openclaw/pull/103132)

</Accordion>

### Documentation et guides d’exploitation

Les recommandations officielles d’exploitation correspondent désormais plus étroitement aux commandes livrées, à la configuration, à la mise en place, aux sorties d’état, aux espaces réservés et au comportement de récupération. Les cartes de documentation générées préservent également les paramètres de commande littéraux, ce qui réduit le risque qu’un lecteur suive un exemple dont les identifiants ont été supprimés ou dont le processus ne correspond plus au produit.

<Accordion title="Sources et contributeurs">

- La documentation de configuration de la CLI distingue désormais clairement l’analyse normale des valeurs JSON5 de `--strict-json`, qui accepte le JSON standard et rejette la syntaxe propre à JSON5. [#80981](https://github.com/openclaw/openclaw/pull/80981) Merci à @addu2612.
- La documentation des Plugins et de l’état des canaux précise désormais qu’un résultat `MessageReceipt` ou `sent` durable prouve l’acceptation par la plateforme, et non l’affichage ou la confirmation de lecture sur l’appareil du destinataire. [#90063](https://github.com/openclaw/openclaw/pull/90063) Merci à @pdurlej.
- Le guide macOS offre désormais aux utilisateurs un parcours plus clair, du téléchargement de l’application à sa configuration initiale, à la sélection du Gateway et à un dépannage ciblé. [#97120](https://github.com/openclaw/openclaw/pull/97120) Merci à @romneyda.
- Le guide de configuration de Discord oriente désormais les utilisateurs vers la section appropriée des paramètres Developer pour activer Developer Mode et copier les identifiants requis. [#97336](https://github.com/openclaw/openclaw/pull/97336) Merci à @naseemm123.
- Les développeurs de Plugins disposent désormais d’indications plus claires sur les dépréciations du SDK et la migration des assistants de stockage de sessions et de fichiers de transcription, en prévision de la transition prévue vers SQLite. [#97494](https://github.com/openclaw/openclaw/pull/97494) Merci à @jalehman.
- La documentation publique d’OpenClaw emploie désormais des instructions plus courtes et axées sur les tâches, avec des commandes, des noms de configuration, des valeurs par défaut, des comportements de fournisseurs et des étapes de dépannage corrigés. [#100142](https://github.com/openclaw/openclaw/pull/100142)
- Les utilisateurs de Logbook disposent désormais d’instructions de bout en bout pour la configuration, le routage des modèles, les choix de confidentialité et le dépannage des captures ou résultats de chronologie manquants. [b6a7898](https://github.com/openclaw/openclaw/commit/b6a7898c7c7f43e4b984c6c62aaa685f6a206f33)
- Les instructions de redémarrage sécurisé indiquent désormais que l’attente par défaut peut prendre fin après `gateway.reload.deferralTimeoutMs` et expliquent comment configurer une attente indéfinie. [#95397](https://github.com/openclaw/openclaw/pull/95397) Merci à @zhangqueping.
- Le guide de configuration des agents identifie désormais les modèles actuels sélectionnés par les alias intégrés `opus` et `gpt`. [#96375](https://github.com/openclaw/openclaw/pull/96375) Merci à @niks999.
- Les opérateurs Docker disposent désormais d’une procédure officielle pour installer, authentifier, vérifier et conserver le backend `claude-cli` lors des mises à niveau de l’image du conteneur. [#96380](https://github.com/openclaw/openclaw/pull/96380) Merci à @fffrank et @zaidazmi.
- La documentation d’OpenClaw sur Anthropic et la CLI Claude reflète désormais le traitement actuel des limites d’abonnement pour `claude -p` et les utilisations associées, avec des références officielles pour les décisions de facturation et de déploiement. [#96848](https://github.com/openclaw/openclaw/pull/96848) Merci à @fightingsleep et @tirion-p.
- Le guide de configuration de Discord distingue désormais General Permissions de Text Permissions afin de faciliter la lecture correcte des choix d’accès du bot. [#97584](https://github.com/openclaw/openclaw/pull/97584) Merci à @slammajamma28.
- La documentation de Telegram sur les réponses d’erreur répertorie désormais les politiques prises en charge et les valeurs par défaut correctes du délai de récupération, ce qui évite les configurations `errorPolicy: "reply"` non valides. [#97635](https://github.com/openclaw/openclaw/pull/97635) Merci à @wm0018.
- La documentation de Feishu ne suggère plus le paramètre `dmPolicy: disabled` rejeté, ce qui réduit les échecs de configuration issus d’un copier-coller du guide. [#97640](https://github.com/openclaw/openclaw/pull/97640) Merci à @wm0018.
- La documentation publique d’intégration couvre désormais onze indicateurs non interactifs existants pour l’authentification par jeton, Cloudflare AI Gateway, le démon, l’interface utilisateur, les hooks et la sortie du jeton. [#97753](https://github.com/openclaw/openclaw/pull/97753) Merci à @vincentkoc et @wm0018.
- La documentation de Matrix explique désormais la diffusion progressive, la détection des mentions propre à chaque salon, l’activation par salon et les protections contre les boucles de bots que les opérateurs peuvent configurer. [#98318](https://github.com/openclaw/openclaw/pull/98318) Merci à @vincentkoc et @wm0018.
- La documentation du canal Telegram indique désormais correctement qu’un mode de diffusion non défini utilise des aperçus partiels et explique comment choisir des réponses finales uniquement. [#98453](https://github.com/openclaw/openclaw/pull/98453) Merci à @solodmd.
- La documentation mobile d’OpenClaw identifie désormais les applications iOS et Android comme des versions officielles et fournit des instructions cohérentes concernant l’App Store, Google Play et le relais hébergé des notifications push iOS. [#98843](https://github.com/openclaw/openclaw/pull/98843) Merci à @joshavant.
- Les auteurs de Plugins disposent désormais d’instructions plus claires sur l’empaquetage des dépendances d’exécution, les artefacts compilés, la validation `npm-pack:` et les vérifications des Plugins officiels de confiance avant publication. [#99962](https://github.com/openclaw/openclaw/pull/99962) Merci à @hxy91819.
- Les exemples de paquets de Plugins officiels concordent désormais sur le moteur d’exécution `typebox` requis et les dépendances homologues `openclaw`, ce qui réduit les échecs de configuration dus au copier-coller. [#99973](https://github.com/openclaw/openclaw/pull/99973)
- La compétence `imsg` incluse guide désormais les agents vers la bonne conversation directe ou de groupe, des cibles stables, des actions fondées sur le moindre privilège et une confirmation avant toute modification visible ou sensible. [#100105](https://github.com/openclaw/openclaw/pull/100105) Merci à @omarshahine.
- La documentation officielle d’OpenClaw aide désormais les opérateurs et les auteurs de Plugins à gérer les identifiants en toute sécurité, à effectuer les vérifications préalables des tâches Cron utilisant des solutions de repli vers un fournisseur local, à appliquer les valeurs de temporisation par défaut de Talk, à configurer les fournisseurs et modèles MiniMax et à copier un paquet de Plugin minimal complet avec les métadonnées de dépendance requises. [#100182](https://github.com/openclaw/openclaw/pull/100182)
- Les opérateurs de nœuds Android disposent désormais d’un guide de bout en bout pour dupliquer et contrôler en toute sécurité un appareil distant depuis macOS, notamment pour l’autorisation, le dépannage et la déconnexion propre. [#100398](https://github.com/openclaw/openclaw/pull/100398)
- Les références des Plugins Codex et WhatsApp identifient désormais leur contrat d’outils, ce qui facilite la mise en correspondance des capacités de Plugin prises en charge avec les processus OpenClaw. [46ad3f9](https://github.com/openclaw/openclaw/commit/46ad3f9ae94cec1bfa94b14974a3d32b46921080) Merci à @vincentkoc.
- La référence d’intégration explique désormais que `openclaw` seul démarre l’intégration lorsqu’une configuration manque, ouvre Crestodian lorsqu’une configuration est non valide et lance la TUI de l’agent lorsqu’une configuration est valide. [d9dbee7](https://github.com/openclaw/openclaw/commit/d9dbee7676fb4a7fcd4617e9fe3bd26f7adf4452)
- Le dépannage d’ACP nomme désormais `PermissionPromptUnavailableError`, ce qui aide les opérateurs à reconnaître un échec d’autorisation non interactif et à trouver la correction de configuration appropriée. [b3a74cc](https://github.com/openclaw/openclaw/commit/b3a74ccc3aef9d670994baee3b0039e4783d82a2)
- La référence d’intégration fournit désormais des instructions précises sur signal-cli, le moteur d’exécution du Gateway et la liste d’autorisation des canaux, notamment les limites de Windows et les identifiants attendus pour les messages directs. [aaaa803](https://github.com/openclaw/openclaw/commit/aaaa8030bf4f139d43717731fd3402e06b248d48)
- La navigation générée de la documentation préserve désormais les titres complets avec des espaces réservés de commande tels que `&lt;id&gt;` et `&lt;deviceId&gt;`, au lieu de masquer les arguments requis. [#99099](https://github.com/openclaw/openclaw/pull/99099) Merci à @hxy91819.

</Accordion>

### Navigateur, planifications, fichiers et outils de programmation

Les agents peuvent lire des PDF numérisés avec des modèles dotés de capacités visuelles, travailler dans des copies de travail de programmation isolées et traiter les fichiers, les médias, les résultats du navigateur et les échecs d’exécution avec des sorties plus exploitables. Le [contrôle du navigateur](/fr/tools/browser-control) préserve plus fiablement l’état de l’association et des téléchargements, tandis que les opérations parallèles dans les espaces de travail risquent moins d’entrer en conflit entre elles ou avec les fichiers actuels de l’utilisateur.

[L’automatisation planifiée](/fr/automation/cron-jobs) conserve les modèles, la temporisation, l’état et la livraison prévus malgré davantage de redémarrages et de modifications. Les appels d’outils et leurs résultats récupèrent également plus proprement après des dépassements de délai, du contenu mal formé, des sorties surdimensionnées et des travaux interrompus, au lieu de laisser paraître une tâche comme terminée alors que son résultat exploitable a été perdu.

<Accordion title="Sources et contributeurs">

- Les modèles dotés de capacités visuelles peuvent désormais lire les pages rendues des PDF numérisés ou composés uniquement d’images joints via les canaux de discussion. [#97354](https://github.com/openclaw/openclaw/pull/97354) Merci à @joshavant.
- Les tâches du tableau de travail peuvent désormais utiliser des worktrees isolés gérés, avec des outils CLI et Control UI pour leur création, leur nettoyage, leur restauration et la création d’instantanés de récupération lorsque le travail ne peut pas être supprimé en toute sécurité. [#100535](https://github.com/openclaw/openclaw/pull/100535)
- Les utilisateurs peuvent désormais démarrer une discussion dans son propre worktree géré depuis la Control UI ou l’application mobile, afin d’isoler les tâches de développement parallèles tout en préservant le travail non validé et en nettoyant automatiquement les checkouts inactifs pouvant l’être sans risque. [#100788](https://github.com/openclaw/openclaw/pull/100788)
- Un navigateur Chrome distant ou WSL2 bloqué ne peut plus retenir indéfiniment les requêtes de liste des onglets ; OpenClaw renvoie un délai d’expiration limité et peut se reconnecter lors de la requête suivante. [#80147](https://github.com/openclaw/openclaw/pull/80147) Merci à @hemantsudarshan et @keaneyan.
- Les actions du navigateur distant peuvent désormais récupérer après la fermeture ou le remplacement de l’onglet sélectionné en réessayant sans l’identifiant d’onglet obsolète, conformément au comportement du navigateur local. [#89086](https://github.com/openclaw/openclaw/pull/89086) Merci à @rhclaw.
- La navigation d’un navigateur reposant sur CDP vers des URL de fichiers CSV, PDF et autres pièces jointes renvoie désormais un fichier géré enregistré en toute sécurité, avec son URL et le nom de fichier suggéré. [#89416](https://github.com/openclaw/openclaw/pull/89416) Merci à @zhangguiping-xydt.
- Les téléchargements du navigateur indiquent désormais à l’agent le nom et le chemin du fichier enregistré, ce qui l’aide à utiliser le téléchargement terminé au lieu de réessayer l’action. [#93307](https://github.com/openclaw/openclaw/pull/93307) Merci à @sunlit-deng.
- La mise à jour des informations de connexion `browser.profiles.*` peut désormais prendre effet sans redémarrage inutile du Gateway ni interruption des sessions actives. [#93827](https://github.com/openclaw/openclaw/pull/93827) Merci à @goutamadwant.
- L’automatisation du navigateur peut désormais agir sur les onglets selon l’identifiant suggéré, l’identifiant d’onglet, le libellé ou un préfixe unique, sans faux échecs dus à une incompatibilité de cible. [#96178](https://github.com/openclaw/openclaw/pull/96178) Merci à @zengwen-dt.
- Les connexions persistantes du navigateur géré survivent désormais aux redémarrages ordinaires de Chrome et du Gateway, réduisant les reconnexions répétées et les interruptions liées à l’authentification multifacteur pour les tâches de navigation sans surveillance. [#98284](https://github.com/openclaw/openclaw/pull/98284) Merci à @malashenia et @turbotheturtle.
- Les réponses d’erreur surdimensionnées du contrôle du navigateur ne peuvent plus consommer une quantité excessive de mémoire du Gateway, tandis que les échecs ordinaires continuent de fournir des diagnostics utiles. [#98455](https://github.com/openclaw/openclaw/pull/98455) Merci à @wings1029.
- Les requêtes `responsebody` du navigateur portant sur un court préfixe d’une réponse volumineuse évitent désormais de décoder une seconde copie intégrale du texte, tout en renvoyant le contenu tronqué demandé. [#98940](https://github.com/openclaw/openclaw/pull/98940) Merci à @pandah97.
- Les extensions de navigateur peuvent se reconnecter avec un jeton d’association récemment renouvelé pendant que le contrôle du navigateur reste actif, et les anciens jetons continuent d’être rejetés. [a703183](https://github.com/openclaw/openclaw/commit/a7031832ecd5bb9eba30ce844b1a059c9c3b5395) Merci à @vincentkoc.
- Les tâches Cron dont la prochaine exécution valide tombe exactement à la limite d’une seconde conservent désormais cette heure planifiée au lieu d’être considérées à tort comme obsolètes et replanifiées. [#81731](https://github.com/openclaw/openclaw/pull/81731) Merci à @vincentkoc et @yashkot007.
- Les tâches Cron isolées `agentTurn` peuvent récupérer après une incompatibilité temporaire des artefacts d’exécution au lieu d’échouer au démarrage avec une erreur `sourceReplyDeliveryMode`. [#85249](https://github.com/openclaw/openclaw/pull/85249) Merci à @jerry-xin.
- `openclaw tasks maintenance --apply` peut désormais réparer les faux enregistrements de tâches perdues lorsque l’historique Cron durable prouve que l’exécution s’est terminée avec succès. [#86088](https://github.com/openclaw/openclaw/pull/86088) Merci à @altaywtf et @liaoandi.
- Les tâches d’agent planifiées avertissent désormais lorsque `ANNOUNCE_SKIP` supprime un achèvement Cron, ce qui facilite le diagnostic des rapports manquants et des sorties partielles. [#90566](https://github.com/openclaw/openclaw/pull/90566) Voir aussi [#68561](https://github.com/openclaw/openclaw/issues/68561). Merci à @mibslee et @sahibzada-allahyar.
- Les tâches Cron de rattrapage brièvement différées après le démarrage ne sont plus ignorées simplement parce qu’un opérateur consulte l’état de Cron avant leur déclenchement. [#94022](https://github.com/openclaw/openclaw/pull/94022) Voir aussi [#93935](https://github.com/openclaw/openclaw/issues/93935). Merci à @richchen01, @vincentkoc et @yetval.
- Les tours d’agent planifiés utilisant `claude-cli` ou un autre backend CLI démarrent désormais normalement, tandis que les restrictions d’outils explicitement non prises en charge continuent d’échouer de manière sécurisée. [#95615](https://github.com/openclaw/openclaw/pull/95615) Merci à @anagnorisis2peripeteia et @obviyus.
- Les exécutions Cron isolées ayant expiré ou ayant été annulées conservent désormais les informations relatives à leur fournisseur, leur modèle et leur session dans `cron_run_logs`, ce qui facilite le suivi des tâches ayant échoué. [#95943](https://github.com/openclaw/openclaw/pull/95943) Voir aussi [#95873](https://github.com/openclaw/openclaw/issues/95873). Merci à @luke-renjoy et @zengwen-dt.
- Une tâche planifiée utilisant un modèle cloud qui ouvre une réponse sans envoyer de contenu peut désormais passer à un modèle de secours opérationnel avant l’expiration de l’ensemble de l’exécution. [#96096](https://github.com/openclaw/openclaw/pull/96096) Merci à @849261680 et @velvet-shark.
- La modification d’une tâche Cron récurrente n’ignore plus une exécution déjà arrivée à échéance et ne décale plus un calendrier à intervalle inchangé à l’heure de la modification. [#96159](https://github.com/openclaw/openclaw/pull/96159) Merci à @yetval.
- La suppression d’un remplacement enregistré de modèle ou de réflexion/effort dans la Control UI de Cron restaure désormais réellement les valeurs par défaut héritées, avec `--clear-thinking` disponible depuis la CLI. [#96293](https://github.com/openclaw/openclaw/pull/96293) Voir aussi [#96287](https://github.com/openclaw/openclaw/issues/96287). Merci à @takamasa-aiso et @zengwen-dt.
- Les processus de travail reposant sur la CLI issus de tâches Cron isolées se terminent désormais après leur achèvement au lieu de s’accumuler et de ralentir l’hôte et le Gateway. [#97227](https://github.com/openclaw/openclaw/pull/97227) Merci à @vianne-droid, @xialonglee et @yusukeit0.
- Les longues alertes d’échec Cron préservent désormais les emoji et les autres caractères Unicode supplémentaires au lieu de se terminer par un symbole de remplacement corrompu. [#97298](https://github.com/openclaw/openclaw/pull/97298) Merci à @zenglingbiao.
- Les échecs de repli du Heartbeat n’envoient plus de messages de discussion parasites composés uniquement d’espaces réservés d’erreur interne répétés. [#97364](https://github.com/openclaw/openclaw/pull/97364) Merci à @turbotheturtle.
- Les messages d’échec de l’outil shell séparent désormais la commande saisie par l’agent des libellés du framework et affichent plus clairement le code de sortie, le Node et le répertoire de travail. [#97511](https://github.com/openclaw/openclaw/pull/97511) Merci à @aditya-vithaldas.
- Les tâches planifiées qui autorisent `web_search` signalent désormais qu’aucun fournisseur de recherche utilisable n’est sélectionné au lieu de se terminer avec un résultat inutilisable. [#97677](https://github.com/openclaw/openclaw/pull/97677) Merci à @lilan0125 et @riazrahaman.
- Les suivis planifiés d’engagement restent désormais centrés sur leur conversation d’origine au lieu d’intégrer des instructions de Heartbeat sans rapport, du contexte en attente ou des tâches de récupération. [#98169](https://github.com/openclaw/openclaw/pull/98169) Merci à @bdjben.
- Les livraisons planifiées vers des fils numériques, tels que les sujets de forum Telegram, reviennent désormais au fil configuré après les redémarrages du Gateway au lieu de revenir à la discussion générale. [#98699](https://github.com/openclaw/openclaw/pull/98699) Merci à @yetval.
- Les tâches planifiées peuvent effectuer une livraison dans une discussion active sans bloquer les réponses ni mélanger les tâches en arrière-plan à sa transcription, et les opérateurs peuvent supprimer les tâches Cron obsolètes sans enfant sans annuler les exécutions actives reposant sur une session. [#98755](https://github.com/openclaw/openclaw/pull/98755) Voir aussi [#98121](https://github.com/openclaw/openclaw/issues/98121). Merci à @ethansk et @obviyus.
- Les tâches Cron récurrentes créées pour `current` ou `session:&lt;id&gt;` transmettent de nouveau l’historique de conversation sélectionné aux exécutions suivantes, tandis que les tâches `isolated` continuent de démarrer sans historique. [#98947](https://github.com/openclaw/openclaw/pull/98947) Merci à @ethansk et @obviyus.
- Les commandes `cron add`, `cron update` et `cron remove` ayant échoué laissent désormais le planificateur en cours d’exécution inchangé, afin que les tâches actives correspondent à la configuration enregistrée et au résultat signalé. [#99960](https://github.com/openclaw/openclaw/pull/99960) Merci à @masatohoshino et @vincentkoc.
- La modification du message d’une tâche planifiée ne perturbe plus accidentellement les exécutions ultérieures reposant sur la CLI, tandis que les restrictions explicites d’outils restent protégées lorsqu’elles ne peuvent pas être appliquées. [#100203](https://github.com/openclaw/openclaw/pull/100203) Merci à @obviyus.
- Les correctifs de fiabilité rejettent désormais les entrées Cron et Plugin non sécurisées, préservent la mise en forme des Skills, signalent les échecs du Gateway et de la mémoire, font échouer plus tôt le démarrage de LSP et empêchent les résultats obsolètes de la caméra Android après une annulation. [#100399](https://github.com/openclaw/openclaw/pull/100399) Merci à @849261680, @anyech, @cxbasdev, @lin-hongkuan, @masatohoshino, @nankingjing, @qingminglong, @simon-xydt, @snotty et @xialonglee.
- Une vaste série d’améliorations de fiabilité remplace désormais les tâches de processus enfants bloquées par des erreurs claires, améliore les diagnostics du bac à sable, limite l’état du calendrier mobile et de la voix, normalise les solutions de repli de Cron et rejette les réponses non sécurisées des fournisseurs. [#100483](https://github.com/openclaw/openclaw/pull/100483) Merci à @aniruddhaadak80, @cxbasdev, @jincheng-xydt, @morluto, @nianjiuzst, @pandah97, @versatagent, @xialonglee, @zenglingbiao et @zengwen-dt.
- Les erreurs transitoires de lecture de la sortie standard ou de la sortie d’erreur de `gog gmail watch serve` ne font plus planter OpenClaw lorsque le mode de surveillance Gmail est actif. [#100519](https://github.com/openclaw/openclaw/pull/100519) Merci à @cxbasdev.
- Les résultats d’exécution et de fin de session en arrière-plan incluent désormais les signaux, les indicateurs de délai d’expiration, les types d’échec et les motifs de sortie, afin que les utilisateurs puissent déterminer pourquoi une commande s’est arrêtée. [#89104](https://github.com/openclaw/openclaw/pull/89104) Merci à @yu-xin-c.
- `openclaw mcp serve` et `openclaw acp` sans argument commencent désormais par une sortie de protocole machine propre, ce qui empêche les avertissements de démarrage de corrompre JSON-RPC pour les clients MCP et ACP. [#89997](https://github.com/openclaw/openclaw/pull/89997) Merci à @kenners22 et @vincentkoc.
- Les commandes d’agent comportant un `workdir` explicite non valide, y compris un `~` littéral, s’arrêtent désormais avec un message clair au lieu de s’exécuter depuis un répertoire de repli non prévu. [#94441](https://github.com/openclaw/openclaw/pull/94441) Merci à @jesse-merhi et @renaudcerrato.
- Les commandes de bac à sable reposant sur SSH et OpenShell nettoient désormais les ressources distantes après un échec de lancement, préservent la session du Plugin et le contexte du canal appropriés, et renvoient une erreur d’outil normale pour les entrées mal formées au lieu d’un échec WeakMap interne. [#96926](https://github.com/openclaw/openclaw/pull/96926) Merci à @jesse-merhi.
- Les exécutions Windows `autoreview --engine copilot` renvoient désormais un résultat de révision terminé même lorsque le nettoyage du répertoire temporaire est brièvement retardé. [#97901](https://github.com/openclaw/openclaw/pull/97901) Merci à @paulcam206.
- Les réponses surdimensionnées des sockets locaux échouent désormais rapidement sans consommer de mémoire jusqu’à l’expiration du délai, tandis que les commandes macOS volumineuses renvoient toujours l’état d’achèvement et une sortie récente de taille limitée. [#98130](https://github.com/openclaw/openclaw/pull/98130) Merci à @pick-cat.
- Les commandes d’extension ayant expiré, ayant été abandonnées ou dont la sortie a été limitée nettoient désormais leurs processus enfants au lieu de laisser des tâches s’exécuter en arrière-plan après le retour de `api.exec()`. [#98340](https://github.com/openclaw/openclaw/pull/98340) Associé à [#98335](https://github.com/openclaw/openclaw/issues/98335). Merci à @ooiuuii.
- `web_fetch` atteint désormais beaucoup plus rapidement le fournisseur de secours pour les pages de type shell sans contenu extractible localement, réduisant le délai mesuré dans un nouveau processus de plusieurs secondes à environ une seconde. [#98559](https://github.com/openclaw/openclaw/pull/98559) Merci à @vincentkoc.
- Les émojis et autres caractères Unicode supplémentaires restent intacts lorsque la sortie longue d’une commande est raccourcie pour les interrogations, les notifications d’achèvement ou les suivis d’approbation. [#98721](https://github.com/openclaw/openclaw/pull/98721) Merci à @zengwen-dt.
- Un ensemble de correctifs sur les chemins d’échec permet désormais aux commandes et aux tâches de maintenance de continuer à s’exécuter malgré des erreurs isolées, préserve le texte du terminal et du modèle, améliore les diagnostics des Skills et des approbations, et arrête proprement les sessions vocales Android après la perte du microphone. [#100440](https://github.com/openclaw/openclaw/pull/100440) Merci à @cxbasdev, @lavyatandel, @nankingjing, @nianjiuzst, @tzy-17, @wendy-chsy.
- Les flux de travail des agents peuvent désormais résister aux échecs transitoires de lecture de stdout ou stderr provenant de processus auxiliaires, au lieu d’entraîner la perte de l’ensemble du processus OpenClaw. [#100522](https://github.com/openclaw/openclaw/pull/100522) Merci à @cxbasdev, @vincentkoc.
- Les commandes du bac à sable Docker renvoient désormais un échec explicite lorsque la sortie ne peut pas être lue, au lieu de faire planter OpenClaw ou de signaler comme réussi un résultat incomplet. [#100523](https://github.com/openclaw/openclaw/pull/100523) Merci à @cxbasdev.
- La configuration de Crestodian et les vérifications des outils locaux ne mettent plus fin à OpenClaw lorsqu’une commande testée rencontre un rare échec de lecture du flux de sortie. [#100741](https://github.com/openclaw/openclaw/pull/100741) Merci à @lsr911.
- `web_fetch` gère désormais de façon plus prévisible le HTML malformé ou hostile, réduisant les traitements excessifs et excluant du résultat de secours le texte masqué semblable à un script. [#102033](https://github.com/openclaw/openclaw/pull/102033) Merci à @pgondhi987.
- Les images de type capture d’écran renvoyées par les outils de Plugin via MCP parviennent désormais aux clients sous forme de résultats utilisables au lieu de provoquer l’échec de l’appel d’outil. [#90902](https://github.com/openclaw/openclaw/pull/90902) Merci à @k-schmidt, @mushuiyu886.
- Dès qu’un clip vidéo généré est prêt, un autre clip peut démarrer immédiatement au lieu d’attendre plusieurs minutes supplémentaires en raison d’une suppression obsolète des doublons. [#96018](https://github.com/openclaw/openclaw/pull/96018) Merci à @palomyates516-alt, @vincentkoc.
- Les exécutions d’agent s’arrêtent désormais proprement lorsqu’une opération `write`, `edit` ou `apply_patch` n’entraînerait aucune modification, évitant les nouvelles tentatives répétées donnant une fausse impression de progression, tandis que les mutations réelles et les modifications valides dans les éléments voisins se poursuivent normalement. [#97044](https://github.com/openclaw/openclaw/pull/97044) Merci à @vincentkoc, @zw-xysk.
- `openclaw capability video generate` renvoie désormais une erreur limitée et exploitable lorsqu’une URL de fournisseur diffuse une vidéo surdimensionnée sans `--output`. [#97549](https://github.com/openclaw/openclaw/pull/97549) Merci à @alix-007.
- `openclaw infer image describe` essaie désormais les modèles d’image de secours configurés après l’échec d’un modèle explicitement sélectionné et indique quel modèle a finalement réussi. [#98347](https://github.com/openclaw/openclaw/pull/98347) Merci à @momothemage.
- Lorsqu’un serveur MCP intégré s’arrête en cours de session, les utilisateurs reçoivent désormais rapidement un message de déconnexion propre à ce serveur et peuvent supprimer la session inactive en actualisant le catalogue. [#98738](https://github.com/openclaw/openclaw/pull/98738) Merci à @masatohoshino, @vincentkoc.
- La récupération d’un fichier vide portant un nom de type image renvoie désormais un chemin clair vers le fichier enregistré au lieu d’un résultat d’image intégrée inutilisable. [#99370](https://github.com/openclaw/openclaw/pull/99370) Merci à @2loch-ness6, @vincentkoc.
- L’outil de différences affiche désormais plus rapidement les sorties par défaut, préserve la coloration pour les langages uniquement disponibles dans les packs, gère clairement les entrées inchangées et signale plus précisément les erreurs de rendu de fichier et de correctif non valide. [#100487](https://github.com/openclaw/openclaw/pull/100487)
- Les corrections en langage naturel peuvent désormais devenir l’amélioration en attente appropriée dans l’atelier de Skills après des tours réussis ou échoués, sans répéter d’anciens commentaires, dupliquer `/learn` ni remplacer le contexte de la proposition. [#100576](https://github.com/openclaw/openclaw/pull/100576) Merci à @vincentkoc.
- Les téléchargements de dossiers par transfert de fichiers produisent désormais soit une archive complète et vérifiée, soit un message clair d’échec de lecture, au lieu de faire planter le système ou de renvoyer des données partielles. [#101590](https://github.com/openclaw/openclaw/pull/101590) Merci à @sunlit-deng.
- Les sessions du bac à sable OpenShell démarrent désormais avec les fichiers d’espace de travail prévus dans le répertoire distant géré, évitant les échecs dus à des fichiers manquants ou à un répertoire incorrect. [d9034da](https://github.com/openclaw/openclaw/commit/d9034da0a60600cb1d2e081cb80e619ff7d180c5) Merci à @vincentkoc.
- L’image commune facultative du bac à sable inclut désormais Node 24 et pnpm afin que les tâches de développement documentées basées sur Node puissent s’y exécuter. [eabc12b](https://github.com/openclaw/openclaw/commit/eabc12b7d66687f6829009c103c0f33114e2949e) Merci à @vincentkoc.
- Le composant `web_search` côté agent voit désormais le fournisseur configuré dans l’environnement d’exécution actif, ce qui permet aux sessions du Gateway et des canaux de continuer à utiliser des fournisseurs tels que Brave sans redémarrage. [#88684](https://github.com/openclaw/openclaw/pull/88684) Merci à @alexzhu0, @vincentkoc.
- Les schémas d’outils draft-2020-12 malformés provenant d’un serveur MCP produisent désormais une erreur de configuration exploitable qui identifie le schéma externe et conserve l’échec sous-jacent. [#89619](https://github.com/openclaw/openclaw/pull/89619) Merci à @vincentkoc.
- Les tentatives d’outil en mode code qui échouent affichent désormais le type, le message et l’emplacement de l’erreur, fournissant au modèle et à l’opérateur suffisamment de détails pour diagnostiquer ou corriger le problème. [#95906](https://github.com/openclaw/openclaw/pull/95906) Merci à @vincentkoc, @zengwen-dt.
- Les modèles d’invite préservent désormais les arguments entre guillemets intentionnellement vides afin que les espaces réservés positionnels suivants reçoivent les valeurs correctes. [#96405](https://github.com/openclaw/openclaw/pull/96405) Merci à @lin-hongkuan.
- Les tableaux de bord de latence OpenTelemetry fournissent désormais des distributions utiles de durée et de taille du contexte pour le travail des agents et du harnais qui dure bien au-delà de 10 secondes, y compris les exécutions de plusieurs minutes, sans personnalisation des compartiments côté collecteur. [#96592](https://github.com/openclaw/openclaw/pull/96592) Merci à @hcnode, @vincentkoc, @zhiling-chen-20230331.
- Lorsque l’outil de modification ne peut pas trouver de correspondance pour `oldText`, son erreur indique désormais les lignes proches probables et explique les différences courantes d’indentation, d’échappement et d’espacement, réduisant les nouvelles tentatives à l’aveugle. [#97038](https://github.com/openclaw/openclaw/pull/97038) Merci à @aocogoal-gethub, @vincentkoc, @zoowh.
- Les outils MCP reçoivent désormais correctement les valeurs nulles facultatives au lieu de les voir transformées en chaînes vides susceptibles de rendre des appels valides défectueux. [#97212](https://github.com/openclaw/openclaw/pull/97212) Merci à @vincentkoc, @zw-xysk.
- Les lectures réussies des objectifs de fil Codex apparaissent désormais comme réussies dans le contexte du modèle, les transcriptions et les diagnostics, au lieu d’être enregistrées comme des appels d’outil ayant échoué. [#98659](https://github.com/openclaw/openclaw/pull/98659) Merci à @yetval.
- Les demandes d’approbation de l’atelier de Skills incluent désormais les détails de la proposition nécessaires pour appliquer, rejeter ou mettre en quarantaine une modification, tandis que les demandes sans réponse restent en attente de manière sûre et renvoient un message clair d’expiration du délai. [#100498](https://github.com/openclaw/openclaw/pull/100498)
- Lorsque les utilisateurs disent des choses comme « la prochaine fois » ou « pensez à », OpenClaw peut désormais proposer une seule proposition révisable dans l’atelier de Skills sans nécessiter de capture autonome ni afficher de nouveau la demande de façon répétée après son rejet. [#100692](https://github.com/openclaw/openclaw/pull/100692)
- Les mises à niveau des tâches héritées restaurent désormais automatiquement les tâches persistantes, empêchant les TaskFlows liés de les signaler à tort comme manquantes ou d’exiger une récupération manuelle dans SQLite. [#103946](https://github.com/openclaw/openclaw/pull/103946) Merci à @bek91, @theo674.
- Les connexions CDP aux navigateurs distants acceptent désormais les identifiants d’authentification Basic encodés dans l’URL contenant des espaces, des arobases et d’autres caractères réservés. [#97972](https://github.com/openclaw/openclaw/pull/97972) Merci à @vectorpeak.
- Les données de remplissage de navigateur malformées fournies par `--fields` ou `--fields-file` produisent désormais une erreur claire et exploitable, puis s’arrêtent avant le début de toute action dans le navigateur. [#98861](https://github.com/openclaw/openclaw/pull/98861) Merci à @lsr911.
- L’exécution de `/new` ou `/reset` dans un message direct ferme désormais les onglets de navigateur gérés de cette conversation tout en laissant intacts ceux des autres utilisateurs, même en cas de brève interruption de la connexion au navigateur. [#100792](https://github.com/openclaw/openclaw/pull/100792) Merci à @fmls.
- Les agents peuvent désormais effectuer une capture d’écran d’un onglet Chromium sélectionné en arrière-plan sans attendre l’expiration de la commande du navigateur, bien que la capture puisse faire passer cet onglet au premier plan. [#100857](https://github.com/openclaw/openclaw/pull/100857) Merci à @spencer2211.
- Les pages du navigateur local géré peuvent naviguer normalement avec un `browser.ssrfPolicy.hostnameAllowlist` restrictif, tandis que les points de terminaison CDP distants et les destinations non autorisées restent bloqués. [#100986](https://github.com/openclaw/openclaw/pull/100986) Merci à @nianjiuzst, @sarinv.
- Les captures d’écran du navigateur utilisées de manière privée pour l’inspection visuelle ne sont plus automatiquement jointes aux réponses des canaux et ne sont partagées que sur demande explicite. [#101434](https://github.com/openclaw/openclaw/pull/101434)
- L’automatisation du navigateur rattachée à une session Chrome existante s’arrête désormais avec une erreur limitée lorsque Chrome plante ou qu’une requête est annulée, et les requêtes suivantes peuvent se reconnecter proprement. [#101454](https://github.com/openclaw/openclaw/pull/101454) Merci à @aniruddhaadak80.
- Les téléversements dans le navigateur sur les pages en cours de nouveau rendu récupèrent désormais de manière plus fiable et exposent la véritable erreur de référence obsolète ou d’action au lieu d’un délai d’expiration générique. [#101465](https://github.com/openclaw/openclaw/pull/101465) Merci à @diwakarrankawat, @m13v, @tigicion.
- Les corps de réponse du navigateur et les instantanés de page restent désormais valides et lisibles lorsque la sortie est raccourcie à proximité d’un émoji. [#101761](https://github.com/openclaw/openclaw/pull/101761) Merci à @mushuiyu886.
- Les utilisateurs du contrôle du navigateur auxquels Playwright manque reçoivent désormais un lien fonctionnel vers la documentation permettant d’installer ou de réparer l’environnement d’exécution du navigateur requis. [d460635](https://github.com/openclaw/openclaw/commit/d460635185a499ffb96b3ca32df8a05d058c9145)
- Le contrôle du navigateur peut désormais émuler l’absence de préférence de couleur explicite avec `openclaw browser set media no-preference`, et les valeurs non valides affichent tous les choix pris en charge. [9133118](https://github.com/openclaw/openclaw/commit/913311845ebdab6faf701ee73e07465f171274e7)
- Les actions POST du navigateur s’achèvent désormais sur les environnements d’exécution pris en charge à partir de Node 24.16 après l’analyse JSON, tout en restant annulées lorsque le client se déconnecte. [52044e1](https://github.com/openclaw/openclaw/commit/52044e134567ebe3598684b6f968027723dd86a5) Merci à @obviyus, @vincentkoc.
- Les mises à jour des tâches Cron peuvent désormais supprimer le paramètre de modèle de secours propre à une tâche afin que les exécutions planifiées héritent à nouveau des valeurs par défaut globales sans recréer la tâche. [#100801](https://github.com/openclaw/openclaw/pull/100801) Merci à @sunnyshu0925.
- Les tâches de Heartbeat terminées restent enregistrées lorsque l’accusé de réception silencieux `HEARTBEAT_OK` ne peut pas être remis, ce qui réduit les travaux répétés et les actions de suivi en double lors du Heartbeat suivant. [#100834](https://github.com/openclaw/openclaw/pull/100834) Merci à @machine3at et @vincentkoc.
- `openclaw cron edit` trouve désormais les tâches plus efficacement et avec moins de délai sur les Gateways qui contiennent de nombreuses tâches planifiées, y compris les modifications `--exact` et celles portant uniquement sur le délai d’expiration. [#100836](https://github.com/openclaw/openclaw/pull/100836) Merci à @machine3at et @vincentkoc.
- La modification d’une charge utile Cron avec `--no-best-effort-deliver` ne transforme plus silencieusement le mode de remise de la tâche en annonces. [#100846](https://github.com/openclaw/openclaw/pull/100846) Merci à @machine3at.
- L’utilisation de `openclaw cron edit &lt;id&gt; --no-best-effort-deliver` sur une ancienne tâche détachée ne supprime plus accidentellement son annonce d’achèvement. [#101027](https://github.com/openclaw/openclaw/pull/101027)
- Les requêtes Cron de l’agent et de MCP utilisant des libellés de commande avec une casse mixte échouent désormais de manière sécurisée au lieu de contourner la restriction appliquée aux tâches Cron d’agent reposant sur le shell. [#101350](https://github.com/openclaw/openclaw/pull/101350) Merci à @pgondhi987.
- Les réponses confirment désormais correctement les rappels planifiés au moyen de commandes telles que `openclaw cron add`, au lieu d’affirmer également qu’aucun rappel n’a été créé. [#101807](https://github.com/openclaw/openclaw/pull/101807) Merci à @bryantegomoh et @vincentkoc.
- Lorsqu’un binaire `fd` ou `rg` installé est inutilisable, la recherche de l’agent peut désormais installer une copie fonctionnelle et reprendre son activité au lieu d’échouer de manière répétée. [#96361](https://github.com/openclaw/openclaw/pull/96361) Merci à @miorbnli.
- La compréhension des liens maintient désormais la récupération des pages disponible pour la solution de repli configurée la plus lente et applique `tools.links.timeoutSeconds` de manière cohérente, quel que soit l’ordre des modèles. [#100731](https://github.com/openclaw/openclaw/pull/100731) Merci à @aniruddhaadak80 et @cxbasdev.
- Une recherche `find` ayant échoué renvoie désormais une seule erreur d’outil contenue et arrête son processus `fd`, au lieu de risquer un plantage de l’agent ou une recherche orpheline. [#101158](https://github.com/openclaw/openclaw/pull/101158) Merci à @cxbasdev.
- L’arrêt d’une discussion au moyen de `chat.abort` peut désormais trouver et interrompre l’exécution intégrée correspondante, au lieu de signaler un échec tandis que le processus d’outil sous-jacent continue. [#101222](https://github.com/openclaw/openclaw/pull/101222) Merci à @zoowh.
- La recherche d’outils fait désormais échouer proprement l’appel concerné et interrompt son processus enfant inutilisable lorsque le flux de diagnostic est rompu, au lieu de risquer une requête bloquée ou un plantage du Gateway. [#101295](https://github.com/openclaw/openclaw/pull/101295) Merci à @cxbasdev.
- Les sorties défectueuses des processus enfants, les délais d’expiration et les abandons pendant les commandes shell de l’agent sont désormais contenus au lieu de provoquer de rares plantages du Gateway. [#101370](https://github.com/openclaw/openclaw/pull/101370) Merci à @wings1029.
- Les échecs de canal de commande QMD signalent désormais une erreur propre d’opération de mémoire au lieu d’arrêter l’hôte de mémoire. [#101402](https://github.com/openclaw/openclaw/pull/101402) Merci à @wings1029.
- Les listes de tâches du terminal raccourcissent désormais les résumés riches en emoji sans laisser de caractères de remplacement défectueux dans la ligne. [#101600](https://github.com/openclaw/openclaw/pull/101600) Merci à @maweibin.
- Le Markdown commençant par du texte tel que `---not` ou `----` reste désormais du contenu ordinaire au lieu d’être confondu avec du frontmatter et supprimé. [#101795](https://github.com/openclaw/openclaw/pull/101795) Merci à @nianjiuzst.
- Les téléversements vers le bac à sable OpenShell placent désormais les répertoires de l’espace de travail au chemin distant demandé afin que les commandes du bac à sable puissent retrouver leurs fichiers de manière fiable. [#96303](https://github.com/openclaw/openclaw/pull/96303) Merci à @vincentkoc.
- Les pages ultérieures des PDF numérisés de plusieurs pages conservent désormais une taille d’image exploitable pendant l’extraction de repli, ce qui permet aux modèles de vision de lire l’intégralité du document. [#96390](https://github.com/openclaw/openclaw/pull/96390) Merci à @cls3389, @vincentkoc et @zengwen-dt.
- Les invites comportant plusieurs pièces jointes conservent désormais les véritables légendes tout en supprimant les marqueurs de transport en double et le texte composé uniquement d’espaces réservés susceptible de perturber le modèle. [#96431](https://github.com/openclaw/openclaw/pull/96431) Merci à @lin-hongkuan.
- Les pièces jointes GIF sont désormais reconnues malgré les paramètres Content-Type habituels, les espaces ou les différences de casse, au lieu d’être traitées comme un autre type de média. [#96435](https://github.com/openclaw/openclaw/pull/96435) Merci à @lin-hongkuan.
- Les URL de données d’image intégrées valides sans remplissage base64 final sont désormais acceptées, tandis que les charges utiles d’image mal formées restent bloquées. [#96437](https://github.com/openclaw/openclaw/pull/96437) Merci à @lin-hongkuan et @vincentkoc.
- Les entrées vidéo proches de la limite de taille configurée sont désormais acceptées ou rejetées en fonction de leur taille réelle en octets, ce qui évite les échecs inattendus pour les fichiers qui restent dans la limite. [#96519](https://github.com/openclaw/openclaw/pull/96519) Merci à @lin-hongkuan et @vincentkoc.
- La demande de pages PDF inexistantes renvoie désormais une erreur de plage claire au lieu d’envoyer accidentellement l’intégralité du document à un fournisseur natif. [#97698](https://github.com/openclaw/openclaw/pull/97698) Merci à @zhangguiping-xydt.
- Les appels de l’outil de messagerie comportant un délai d’expiration du Gateway non valide renvoient désormais immédiatement une erreur de validation au lieu de sembler bloqués. [#98652](https://github.com/openclaw/openclaw/pull/98652)
- Le frontmatter Markdown conserve désormais les champs de valeur nulle nommés `toString`, `constructor`, `valueOf` ou `hasOwnProperty`, au lieu de supprimer silencieusement les métadonnées des Skills, hooks ou commandes. [#99129](https://github.com/openclaw/openclaw/pull/99129) Merci à @vincentkoc et @zenglingbiao.
- Les résumés de progression des scripts intégrés et des fichiers générés ne présentent plus le contenu des heredocs comme des commandes shell supplémentaires ayant été exécutées. [#99379](https://github.com/openclaw/openclaw/pull/99379) Merci à @zengwen-dt.
- Les sélections fractionnaires de pages PDF telles que `1.5` échouent désormais immédiatement avec une erreur de validation claire au lieu d’omettre silencieusement le contenu demandé. [#99399](https://github.com/openclaw/openclaw/pull/99399) Merci à @qingminglong.
- L’outil `find` de l’agent signale désormais comme une erreur une recherche de répertoire interrompue ou ayant échoué, au lieu de renvoyer une liste de correspondances partielles comme si elle était complète. [#99446](https://github.com/openclaw/openclaw/pull/99446) Merci à @zhangguiping-xydt.
- Les modifications par correspondance exacte ayant échoué affichent désormais un contexte lisible du fichier actuel, même lorsque la troncature tombe à côté d’un emoji ou d’un autre caractère hors BMP. [#99527](https://github.com/openclaw/openclaw/pull/99527) Merci à @mikasa0818.
- Les demandes d’approbation de Plugin non valides affichent désormais le véritable problème de validation au lieu d’induire les utilisateurs en erreur avec un message signalant l’indisponibilité du Gateway. [#100337](https://github.com/openclaw/openclaw/pull/100337) Merci à @tzy-17.
- Skill Workshop explique désormais lorsque la politique des outils masque `skill_workshop` et indique précisément la modification de `allow` ou `alsoAllow` nécessaire pour activer les appels de révision manuelle. [#100654](https://github.com/openclaw/openclaw/pull/100654) Merci à @wangwllu.
- Les paquets ClawHub, Skills, ClawPacks, archives de résolveur et téléchargements depuis une source GitHub dépassant la taille autorisée s’arrêtent désormais avec une erreur claire de limite de taille avant de pouvoir épuiser la mémoire du Gateway. [#101176](https://github.com/openclaw/openclaw/pull/101176)
- La rotation automatique des sessions est moins susceptible de bloquer la conversation suivante lorsqu’un Plugin de moteur de contexte lit immédiatement sa transcription ou crée un point de contrôle. [#101192](https://github.com/openclaw/openclaw/pull/101192)
- Les fichiers de débordement `web_fetch` récupérés conservent désormais les emoji intacts et indiquent la longueur réellement écrite en toute sécurité lorsqu’une longue page dépasse la limite d’intégration. [#101312](https://github.com/openclaw/openclaw/pull/101312) Merci à @alix-007.
- Les listes de répertoires d’agent ayant échoué ou ayant été annulées de manière répétée libèrent désormais leurs écouteurs d’annulation, ce qui évite leur accumulation au fil du temps. [#101588](https://github.com/openclaw/openclaw/pull/101588) Merci à @lzw112.
- Les identifiants et portées longs ne désalignent plus les colonnes `openclaw commitments`, ce qui permet de lire facilement le tableau d’un coup d’œil. [#95923](https://github.com/openclaw/openclaw/pull/95923) Merci à @parveshsaini.
- `web_fetch` préserve désormais plus fidèlement les emoji, les symboles mathématiques, les caractères Unicode étendus et le texte d’entités numériques intentionnellement échappé. [#96268](https://github.com/openclaw/openclaw/pull/96268) Merci à @ly-wang19.
- Les résultats DuckDuckGo préservent désormais les notations d’entité intentionnelles telles que `&lt;` et `&#39;`, au lieu de modifier silencieusement les titres, les extraits ou les URL. [#96348](https://github.com/openclaw/openclaw/pull/96348) Merci à @ly-wang19 et @vincentkoc.
- Les réponses intégrées de Canvas conservent désormais le texte visible de leur message lorsqu’un shortcode d’intégration à fermeture automatique est suivi d’un marqueur de fermeture supplémentaire. [#96449](https://github.com/openclaw/openclaw/pull/96449) Merci à @ly-wang19.
- Les libellés entre crochets dans les citations Markdown n’entraînent plus la récupération, par la compréhension des liens, d’URL destinées uniquement à l’affichage que l’utilisateur ne souhaitait pas récupérer. [#96476](https://github.com/openclaw/openclaw/pull/96476) Merci à @ly-wang19 et @vincentkoc.
- Les pages de recherche DuckDuckGo contenant des entités HTML numériques mal formées ne font plus planter l’analyse et n’injectent plus de caractères Unicode défectueux dans les titres, les URL et les extraits, tandis que les entités d’emoji valides restent prises en charge. [#96583](https://github.com/openclaw/openclaw/pull/96583) Merci à @llagy007 et @weeli-009.
- Les descriptions d’outils raccourcies dans les catalogues et `/tools verbose` ne divisent plus les emoji ou d’autres caractères Unicode en symboles de remplacement illisibles. [#98644](https://github.com/openclaw/openclaw/pull/98644) Merci à @zengwen-dt.
- Les auteurs de hooks internes reçoivent désormais un avertissement lorsqu’une probable faute de frappe dans le nom d’un événement laisserait autrement un hook silencieusement inactif. [#99456](https://github.com/openclaw/openclaw/pull/99456) Merci à @masatohoshino.
- Les outils de session Codex respectent désormais le délai d’expiration demandé en secondes et renvoient leur propre état de délai d’expiration utile au lieu de se terminer prématurément. [#100722](https://github.com/openclaw/openclaw/pull/100722) Merci à @carterstebbins23-spec et @cxbasdev.
- Les tâches ACP en arrière-plan annulées apparaissent désormais comme annulées dans les listes de tâches, les résumés et les mises à jour de l’exécution parente, au lieu d’être signalées comme réussies. [#101245](https://github.com/openclaw/openclaw/pull/101245) Merci à @masatohoshino.
- Les requêtes de la famille Anthropic utilisant des outils peuvent désormais basculer vers OpenAI sans erreur 400 causée par un format d’outil incompatible. [#101443](https://github.com/openclaw/openclaw/pull/101443) Merci à @chrisbaker2000.

</Accordion>

<Accordion title="Contributions supplémentaires">

- Modernisation du suivi de la configuration interne sans modifier la détection des mises à jour de configuration. [#59695](https://github.com/openclaw/openclaw/pull/59695) Merci à @yonganzhang.
- Amélioration des formulaires de signalement de bogues afin que les personnes qui les remplissent puissent joindre des captures d’écran ou des enregistrements tout en préservant la lisibilité des journaux. [#73649](https://github.com/openclaw/openclaw/pull/73649) Merci à @d1rshan.
- Renforcement de la couverture de l’authentification du Gateway Android en fiabilisant une vérification de récupération sensible au minutage. [#83826](https://github.com/openclaw/openclaw/pull/83826) Merci à @neatguycoding.
- Ajout de rapports plus clairs sur la couverture des politiques afin que les responsables de maintenance puissent repérer les lacunes à mesure que les configurations sensibles à la sécurité évoluent. [#87081](https://github.com/openclaw/openclaw/pull/87081) Merci à @giodl73-repo.
- Rétablissement d’une validation fiable du code modifié pour les travaux sur la découverte des plugins, sans altérer leur comportement. [#87695](https://github.com/openclaw/openclaw/pull/87695) Merci à @vincentkoc.
- Renforcement de la couverture de l’association des conversations Codex sans modèle explicite, afin de protéger le flux de travail par défaut contre les régressions. [#89535](https://github.com/openclaw/openclaw/pull/89535) Merci à @kesslerio.
- Clarification du comportement interne de repli afin de réduire le risque que de futures opérations de maintenance gèrent incorrectement les erreurs des fournisseurs ou les réponses d’anciens modèles. [#89558](https://github.com/openclaw/openclaw/pull/89558)
- Documentation du comportement temporel des nouvelles tentatives de Compaction afin de sécuriser les futures opérations de maintenance sans modifier le comportement à l’exécution. [#89585](https://github.com/openclaw/openclaw/pull/89585)
- Extension de la couverture de sécurité du navigateur sur les systèmes Windows prenant en charge les liens de répertoire, afin d’améliorer la portabilité des tests. [#90365](https://github.com/openclaw/openclaw/pull/90365) Merci à @aniruddhaadak80.
- Correction de l’attribution des contributions afin que les travaux fusionnés de guanbear soient correctement crédités dans les registres de contributeurs générés. [#90547](https://github.com/openclaw/openclaw/pull/90547) Merci à @guanbear.
- Ajout d’une validation anticipée des paramètres des canaux, réduisant le risque que des modifications de configuration provoquent des erreurs au démarrage du Gateway. [#91134](https://github.com/openclaw/openclaw/pull/91134) Merci à @luoyanglang.
- Correction de la configuration locale des tests Python afin que les contributeurs puissent exécuter de manière fiable les vérifications de pré-validation prises en charge. [#91276](https://github.com/openclaw/openclaw/pull/91276) Merci à @deepujain.
- Amélioration de la visibilité du tableau de bord de maturité de l’assurance qualité et clarification de la manière dont les responsables de maintenance doivent mettre à jour sa documentation. [#91483](https://github.com/openclaw/openclaw/pull/91483) Merci à @romneyda.
- Ajout d’une couverture d’assurance qualité reproductible dans Slack pour les approbations de commandes Codex et de modifications de fichiers. [#91519](https://github.com/openclaw/openclaw/pull/91519) Merci à @kevinslin.
- Renforcement de la couverture afin que les choix de raisonnement de GitHub Copilot restent alignés sur les modèles pris en charge par chaque compte. [#91728](https://github.com/openclaw/openclaw/pull/91728) Merci à @saju01.
- Réduction de l’utilisation du disque lors des tests en conditions réelles en évitant les copies inutiles de volumineuses données de navigateur Gemini, tout en préservant les identifiants requis. [#91907](https://github.com/openclaw/openclaw/pull/91907) Merci à @bryantegomoh et @pikaqqqqqq.
- Extension de l’examen de sécurité automatisé au code qui lance des processus locaux, afin de détecter les risques graves avant la fusion. [#92667](https://github.com/openclaw/openclaw/pull/92667) Merci à @hxy91819.
- Amélioration du nettoyage et des consignes des tests automatisés, réduisant les fichiers temporaires résiduels et les configurations de test incohérentes. [#93209](https://github.com/openclaw/openclaw/pull/93209) Merci à @hxy91819.
- Ajout d’une validation rapide de routine permettant aux responsables de maintenance de détecter et de diagnostiquer plus tôt les régressions générales. [#94291](https://github.com/openclaw/openclaw/pull/94291) Merci à @romneyda et @solvely-colin.
- Renforcement de la couverture afin que les réponses Telegram diffusées en continu restent dans le sujet du forum où la conversation a commencé. [#94526](https://github.com/openclaw/openclaw/pull/94526) Voir aussi [#89352](https://github.com/openclaw/openclaw/issues/89352). Merci à @pmika et @xialonglee.
- Accélération de la validation et simplification de son inspection pour les petites modifications d’extensions ou de scripts, tout en préservant les vérifications complètes lorsque nécessaire. [#94708](https://github.com/openclaw/openclaw/pull/94708) Merci à @romneyda.
- Ajout d’une couverture de régression afin que les identifiants de code comportant des traits de soulignement restent lisibles dans l’interface du terminal. [#95211](https://github.com/openclaw/openclaw/pull/95211) Merci à @zhangguiping-xydt.
- Extension de la découverte de la documentation aux pages MDX afin d’éviter l’omission de guides réels. [#95230](https://github.com/openclaw/openclaw/pull/95230) Merci à @hugenshen.
- Modification des tests de sécurité de QQBot et Zalo pour qu’ils dépendent de la prise en charge effective des liens symboliques plutôt que du nom du système d’exploitation. [#95531](https://github.com/openclaw/openclaw/pull/95531) Merci à @aniruddhaadak80 et @vincentkoc.
- Fiabilisation de l’exécution des vérifications de localisation de l’interface Control UI sous Windows, sans modifier le contenu traduit. [#95534](https://github.com/openclaw/openclaw/pull/95534) Merci à @ooiuuii.
- Renforcement de l’assurance qualité de WhatsApp concernant les messages, les réactions, les réponses, les médias, les sondages, les approbations et le comportement des groupes. [#95622](https://github.com/openclaw/openclaw/pull/95622) Merci à @mcaxtr.
- Prévention de la réécriture inattendue de fichiers par le formatage de pré-validation lors des fusions, rebasages, sélections de commits et annulations. [#95842](https://github.com/openclaw/openclaw/pull/95842) Merci à @nxmxbbd et @vincentkoc.
- Activation de tests d’intégration WhatsApp reproductibles avec un service local contrôlé, sans nécessiter d’identifiants réels. [#95920](https://github.com/openclaw/openclaw/pull/95920) Merci à @romneyda.
- Ajout d’une carte générée de la documentation afin que les contributeurs puissent trouver rapidement les guides pertinents et détecter une navigation obsolète. [#95954](https://github.com/openclaw/openclaw/pull/95954) Merci à @glenn-agent.
- Amélioration du nettoyage et de l’isolation dans les tests de réponse automatique et d’installation de Skills, réduisant l’accumulation de données temporaires sur le disque. [#96058](https://github.com/openclaw/openclaw/pull/96058) Merci à @xialonglee.
- Ajout d’une couverture de régression garantissant que la recherche en mémoire peut récupérer après une réindexation distincte sans redémarrer le Gateway. [#96094](https://github.com/openclaw/openclaw/pull/96094) Voir aussi [#91167](https://github.com/openclaw/openclaw/issues/91167). Merci à @849261680 et @kiagentkronos-cell.
- Préparation des points de contrôle des conversations aux futures modifications du stockage, sans modifier le comportement des branches ni de la restauration. [#96222](https://github.com/openclaw/openclaw/pull/96222) Merci à @jalehman.
- Préparation de la gestion des sessions de démarrage aux futures modifications du stockage, sans modifier le comportement d’isolation ni de nettoyage. [#96225](https://github.com/openclaw/openclaw/pull/96225) Merci à @jalehman.
- Ajout d’un guide opérationnel destiné aux responsables de maintenance pour diagnostiquer et ajuster la capacité de compilation sans la confondre avec des défaillances sans rapport. [#96302](https://github.com/openclaw/openclaw/pull/96302) Merci à @vincentkoc.
- Accélération et amélioration de la prévisibilité des tests rapides des demandes de tirage, tout en conservant une couverture plus large des versions. [#96320](https://github.com/openclaw/openclaw/pull/96320) Merci à @romneyda.
- Amélioration des journaux d’exécution de l’assurance qualité afin que les responsables de maintenance puissent identifier immédiatement le canal testé. [#96327](https://github.com/openclaw/openclaw/pull/96327) Merci à @romneyda.
- Prévention des faux échecs liés à des identifiants en double lorsque des appels d’outils sont répétés dans les scénarios d’assurance qualité. [#96338](https://github.com/openclaw/openclaw/pull/96338) Merci à @vincentkoc.
- Simplification des tests rapides afin de fournir un retour plus rapide tout en préservant la couverture d’assurance qualité prévue. [#96340](https://github.com/openclaw/openclaw/pull/96340) Merci à @romneyda.
- Amélioration du nettoyage dans l’ensemble des tests de commandes, réduisant les données temporaires résiduelles lors des exécutions locales et automatisées. [#96359](https://github.com/openclaw/openclaw/pull/96359) Merci à @xialonglee.
- Renforcement de la couverture pour la gestion sécurisée des réponses d’utilisation de fournisseurs surdimensionnées ou mal formées. [#96360](https://github.com/openclaw/openclaw/pull/96360) Merci à @solodmd et @vincentkoc.
- Prévention des faux échecs d’assurance qualité provoqués par des résultats Codex valides à contexte long, tout en continuant à vérifier que les éléments probants antérieurs restent disponibles. [#96366](https://github.com/openclaw/openclaw/pull/96366) Merci à @vincentkoc.
- Amélioration de la traçabilité des éléments probants d’assurance qualité en enregistrant la révision source réellement utilisée pour chaque exécution. [#96434](https://github.com/openclaw/openclaw/pull/96434) Merci à @vincentkoc.
- Ajout d’une couverture du formatage de la sortie des commandes et des avertissements afin de réduire les futures régressions de présentation. [#96448](https://github.com/openclaw/openclaw/pull/96448) Merci à @dwc1997.
- Préparation de l’état des sessions et de la sélection des modèles aux futures modifications du stockage, tout en préservant le comportement actuel. [#96460](https://github.com/openclaw/openclaw/pull/96460) Merci à @jalehman.
- Préparation des aperçus Feishu et des résumés de modèles Mattermost aux futures modifications du stockage des sessions, sans modifier le comportement. [#96507](https://github.com/openclaw/openclaw/pull/96507) Merci à @jalehman.
- Modernisation de la gestion interne des sessions de Telegram, tout en préservant les comportements d’interrogation, de recherche, d’envoi et de suppression. [#96524](https://github.com/openclaw/openclaw/pull/96524) Merci à @jalehman.
- Préparation de la gestion des sessions des canaux intégrés aux futures modifications du stockage, sans altérer le routage, les choix de modèles ni les flux de travail des utilisateurs. [#96527](https://github.com/openclaw/openclaw/pull/96527) Merci à @jalehman.
- Préparation des paramètres d’activation des groupes WhatsApp aux futures modifications du stockage, tout en préservant le comportement d’activation existant. [#96530](https://github.com/openclaw/openclaw/pull/96530) Merci à @jalehman.
- Modernisation de la gestion interne des sessions de Voice Call sans modifier les réponses ni le comportement des appels. [#96539](https://github.com/openclaw/openclaw/pull/96539) Merci à @jalehman.
- Amélioration de la précision avec laquelle le tableau de bord de maturité de l’assurance qualité reflète la couverture partielle et affiche les éléments probants encore manquants. [#96543](https://github.com/openclaw/openclaw/pull/96543) Merci à @romneyda.
- Attribution de délais plus longs et appropriés aux exécutions d’assurance qualité de la CLI Claude pour les modèles Sonnet et Opus. [#96567](https://github.com/openclaw/openclaw/pull/96567) Merci à @clawsean.
- Clarification du calcul de la maturité, tout en maintenant la couverture visible comme élément probant à l’appui. [#96594](https://github.com/openclaw/openclaw/pull/96594) Merci à @romneyda.
- Définition des éléments probants complets d’assurance qualité comme valeur par défaut pour les mises à jour du tableau de bord de maturité, empêchant les éléments incomplets d’influencer les résultats. [#96595](https://github.com/openclaw/openclaw/pull/96595) Merci à @romneyda.
- Réduction des traitements répétés lorsque le Gateway lit les métadonnées de très volumineux enregistrements de transcription. [#96707](https://github.com/openclaw/openclaw/pull/96707) Merci à @vincentkoc et @yonganzhang.
- Amélioration du nettoyage des fichiers temporaires dans les tests de configuration, du Gateway, de planification et d’état. [#96711](https://github.com/openclaw/openclaw/pull/96711) Merci à @xialonglee.
- Documentation de la manière dont les contributeurs doivent orienter les problèmes, les demandes d’assistance, les signalements de sécurité et les demandes de tirage. [#96714](https://github.com/openclaw/openclaw/pull/96714) Merci à @100yenadmin.
- Renforcement de la couverture de la journalisation détaillée en ligne de commande afin de réduire les futures régressions. [#96735](https://github.com/openclaw/openclaw/pull/96735) Merci à @dwc1997 et @vincentkoc.
- Ajout d’une couverture de la sortie du terminal et du comportement des commandes qui ne se terminent pas, améliorant la maintenabilité sans modifier l’interface. [#96736](https://github.com/openclaw/openclaw/pull/96736) Merci à @dwc1997.
- Clarification du code du modèle de session exportée afin de rendre la maintenance future moins sujette aux erreurs, sans modifier les pages affichées. [#96765](https://github.com/openclaw/openclaw/pull/96765) Merci à @qiuyuang.
- Conservation des totaux de jetons et de coûts lors de la réduction des enregistrements de tâches exportés trop volumineux. [#96811](https://github.com/openclaw/openclaw/pull/96811) Merci à @aleps001, @joshavant et @lin-hongkuan.
- Réduction de la surcharge des compilations courantes en suspendant la collecte inutilisée des récapitulatifs de temps, tout en la maintenant disponible pour de futurs diagnostics. [#96930](https://github.com/openclaw/openclaw/pull/96930) Merci à @romneyda.
- Réduction des traitements répétés du navigateur dans les grands tableaux de bord d’utilisation, tout en préservant les filtres, les totaux, les graphiques et les chronologies. [#96945](https://github.com/openclaw/openclaw/pull/96945) Merci à @ly-wang19.
- Réduction des traitements répétés lorsque les plugins résolvent des appels d’outils mis en cache, sans modifier la sélection des outils. [#96948](https://github.com/openclaw/openclaw/pull/96948) Merci à @ly-wang19.
- Réduction des opérations de suivi lors des mises à jour rencontrant de nombreux fichiers de plugins manquants, tout en préservant les décisions de réparation et les avertissements. [#96950](https://github.com/openclaw/openclaw/pull/96950) Merci à @ly-wang19.
- Réduction des traitements inutiles pour les installations de mémoire locale configurées afin d’utiliser des vecteurs d’intégration plus courts. [#96952](https://github.com/openclaw/openclaw/pull/96952) Merci à @ly-wang19 et @vincentkoc.
- Amélioration de l’efficacité des rapports d’état pour les installations disposant d’un historique de sessions volumineux, tout en préservant le même récapitulatif des sessions récentes. [#96955](https://github.com/openclaw/openclaw/pull/96955) Merci à @ly-wang19.
- Réduction de l’utilisation du processeur et de la mémoire temporaire lors de la création de branches ou de la restauration de sessions comportant de nombreux points de contrôle enregistrés. [#96964](https://github.com/openclaw/openclaw/pull/96964) Merci à @ly-wang19.
- Publication du récit détaillé et approuvé de la version v2026.6.10, avec des explications, des sources et une attribution aux contributeurs plus claires. [#97079](https://github.com/openclaw/openclaw/pull/97079) Merci à @hannesrudolph.
- Consignation de la pagination précédemment livrée permettant d’examiner les sections plus anciennes des longs historiques de sessions. [#97101](https://github.com/openclaw/openclaw/pull/97101) Merci à @galiniliev.
- Ajout du suivi de la couverture des traductions des textes d’interface Android, iOS et macOS dans toutes les langues prises en charge. [#97110](https://github.com/openclaw/openclaw/pull/97110) Merci à @vincentkoc.
- Ajout d’un processus de traduction cohérent pour les textes des applications natives dans 21 langues, comprenant des protections pour les espaces réservés et la terminologie. [#97113](https://github.com/openclaw/openclaw/pull/97113) Merci à @vincentkoc.
- Clarification des instructions de publication pour macOS afin que les responsables de maintenance utilisent les dépôts et les révisions des sources appropriés à chaque étape de publication. [#97116](https://github.com/openclaw/openclaw/pull/97116) Merci à @romneyda.
- Ajustement de la capacité des compilations automatisées afin de réduire les mises en file d’attente évitables sous Linux, tout en conservant les protections existantes pour les autres plateformes. [#97119](https://github.com/openclaw/openclaw/pull/97119) Merci à @vincentkoc.
- Publication dans le journal des modifications du récit révisé de la version v2026.6.9, avec un regroupement, des sources et une attribution plus clairs. [#97124](https://github.com/openclaw/openclaw/pull/97124) Merci à @hannesrudolph.
- Sécurisation de la protection de Nostr contre les doublons en cas de valeurs temporelles non valides, afin d’éviter que des événements soient oubliés trop tôt ou conservés indéfiniment. [#97133](https://github.com/openclaw/openclaw/pull/97133) Merci à @zhangguiping-xydt.
- Rattachement des tests de bout en bout existants à l’inventaire de maturité de l’assurance qualité afin d’améliorer la précision des rapports de couverture. [#97150](https://github.com/openclaw/openclaw/pull/97150) Merci à @romneyda.
- Amélioration de la lisibilité des journaux de création des paquets macOS grâce à l’identification claire de chaque produit et architecture en cours de compilation. [#97151](https://github.com/openclaw/openclaw/pull/97151) Merci à @romneyda.
- Réduction de la portée du processus natif de réparation du chiffrement de Matrix, tout en préservant le même comportement de récupération automatique. [#97181](https://github.com/openclaw/openclaw/pull/97181) Merci à @patrick-erichsen.
- Ajout d’un index des scripts du dépôt afin que les contributeurs puissent trouver l’outil existant approprié sans perturber les chemins établis. [#97250](https://github.com/openclaw/openclaw/pull/97250) Merci à @dboone323 et @qingminglong.
- Alignement d’un titre historique du journal des modifications sur la structure actuelle des notes de version, sans modifier ses affirmations. [#97297](https://github.com/openclaw/openclaw/pull/97297) Merci à @hannesrudolph.
- Restauration du journal des modifications concis de la version v2026.6.9 pendant la préparation d’un remplacement compatible avec la page de publication. [#97306](https://github.com/openclaw/openclaw/pull/97306) Merci à @hannesrudolph.
- Ajout de l’agent en ligne de commande de Cursor comme moteur facultatif pour les revues de code du dépôt. [#97348](https://github.com/openclaw/openclaw/pull/97348) Merci à @hxy91819.
- Protection d’OpenClaw contre une utilisation excessive de la mémoire lorsqu’un proxy d’agent renvoie une réponse d’erreur inhabituellement volumineuse. [#97351](https://github.com/openclaw/openclaw/pull/97351) Merci à @zhangguiping-xydt.
- Amélioration de la précision des rapports de couverture d’assurance qualité concernant les tests existants de fournisseurs compatibles avec OpenAI. [#97369](https://github.com/openclaw/openclaw/pull/97369) Merci à @romneyda.
- Stabilisation des tests de migration de sessions, tout en préservant une couverture ciblée de la gestion des sessions Voice Call. [#97370](https://github.com/openclaw/openclaw/pull/97370) Merci à @romneyda.
- Rattachement de la couverture existante du Gateway pour Tool Search à l’inventaire standard d’assurance qualité afin d’en améliorer le suivi. [#97374](https://github.com/openclaw/openclaw/pull/97374) Merci à @romneyda.
- Déplacement de la validation du Gateway pour Tool Search vers le processus standard d’assurance qualité afin d’assurer une exécution et une collecte de preuves cohérentes. [#97478](https://github.com/openclaw/openclaw/pull/97478) Merci à @romneyda.
- Protection des exécutions d’assurance qualité de Matrix contre une utilisation excessive de la mémoire lorsqu’un serveur domestique renvoie une réponse inhabituellement volumineuse. [#97547](https://github.com/openclaw/openclaw/pull/97547) Merci à @alix-007.
- Protection des vérifications rapides de Discord contre une utilisation excessive de la mémoire lorsque le service renvoie une réponse inhabituellement volumineuse. [#97548](https://github.com/openclaw/openclaw/pull/97548) Merci à @alix-007 et @vincentkoc.
- Actualisation des limites de validation du SDK des plugins afin qu’elles correspondent à la surface publique actuelle, tout en préservant les vérifications de croissance future. [#97604](https://github.com/openclaw/openclaw/pull/97604) Merci à @romneyda.
- Amélioration de la traçabilité de l’assurance qualité pour la connexion au Gateway, la négociation du protocole et le comportement de nouvelle tentative au démarrage utilisés par les ponts de canaux MCP. [#97609](https://github.com/openclaw/openclaw/pull/97609) Merci à @romneyda.
- Déplacement de la validation de la synthèse vocale automatique de WebChat vers le processus standard d’assurance qualité afin d’assurer une couverture et des rapports cohérents. [#97632](https://github.com/openclaw/openclaw/pull/97632) Merci à @romneyda.
- Contribution au correctif publié qui préserve les réponses Discord après l’enregistrement d’un volume important de données de Skills. [#97657](https://github.com/openclaw/openclaw/pull/97657) Merci à @joshavant et @wiidz.
- Restauration d’une validation fiable de la compilation du SDK des plugins grâce à la suppression d’une définition conflictuelle réservée aux tests. [#97661](https://github.com/openclaw/openclaw/pull/97661) Merci à @vincentkoc.
- Mise à disposition des vérifications existantes de publication et de mise à niveau Docker sous forme de preuves structurées d’assurance qualité, sans duplication des tests sous-jacents. [#97689](https://github.com/openclaw/openclaw/pull/97689) Merci à @romneyda.
- Clarification des raisons pour lesquelles plusieurs chemins de réseau et de fournisseurs préservent les résultats utiles lorsque les étapes secondaires de nettoyage ou d’analyse échouent. [#97701](https://github.com/openclaw/openclaw/pull/97701) Merci à @zengwen-dt.
- Intégration de vérifications Docker supplémentaires à l’inventaire partagé d’assurance qualité, améliorant la couverture des publications et réduisant la duplication des opérations de validation. [#97708](https://github.com/openclaw/openclaw/pull/97708) Merci à @romneyda.
- Ajout d’une couverture structurée d’assurance qualité pour les listes de la place de marché ClawHub et les vérifications d’installation des plugins empaquetés. [#97712](https://github.com/openclaw/openclaw/pull/97712) Merci à @romneyda.
- Renforcement de la couverture de régression de Firecrawl concernant la sécurité des URL, les résultats de recherche, l’extraction de données et les limites des réponses. [#97714](https://github.com/openclaw/openclaw/pull/97714) Merci à @solodmd.
- Renforcement de la couverture des messages de validation de configuration clairs et précis. [#97736](https://github.com/openclaw/openclaw/pull/97736) Merci à @solodmd.
- Ajout d’une couverture de régression pour les options numériques de ligne de commande et de configuration, notamment les valeurs par défaut et les valeurs limites. [#97802](https://github.com/openclaw/openclaw/pull/97802) Merci à @dwc1997.
- Amélioration de la distinction entre les arrêts intentionnels dans les tests et les enveloppes, et les véritables défaillances d’exécution. [#97803](https://github.com/openclaw/openclaw/pull/97803) Merci à @maweibin.
- Ajout d’une couverture de régression pour le découpage de texte compatible avec Unicode, notamment les emoji et les limites séparant les caractères. [#97805](https://github.com/openclaw/openclaw/pull/97805) Merci à @dwc1997.
- Possibilité d’exécuter les processus d’assurance qualité de Slack avec un fournisseur de test local, réduisant la dépendance aux identifiants Slack réels. [#97891](https://github.com/openclaw/openclaw/pull/97891) Merci à @romneyda.
- Ajout de vérifications reproductibles des versions candidates pour l’installation et les mises à niveau de nouveaux paquets ClawHub avant leur publication. [#97896](https://github.com/openclaw/openclaw/pull/97896) Merci à @romneyda.
- Clarification de la version minimale de Node.js requise pour les contributeurs travaillant à partir des sources avant l’exécution des commandes d’installation et de test. [#97898](https://github.com/openclaw/openclaw/pull/97898) Associé à [#97792](https://github.com/openclaw/openclaw/issues/97792). Merci à @aniruddhaadak80 et @lin-hongkuan.
- Ajout de preuves structurées d’assurance qualité en conditions réelles pour les fournisseurs hébergés d’images et de vidéos, tout en préservant les vérifications manuelles existantes. [#97900](https://github.com/openclaw/openclaw/pull/97900) Merci à @romneyda.
- Amélioration de la fiabilité de la publication des plugins officiels grâce à l’adoption d’une détection corrigée des familles de paquets ClawHub. [#97907](https://github.com/openclaw/openclaw/pull/97907) Merci à @patrick-erichsen.
- Réduction des échecs transitoires de validation sous Windows, macOS et iOS grâce à de nouvelles tentatives après l’expiration du délai de récupération des sources. [#97912](https://github.com/openclaw/openclaw/pull/97912) Merci à @romneyda.
- Préparation d’une assurance qualité des canaux plus portable en faisant préciser à chaque scénario ses exigences avant son exécution. [#97915](https://github.com/openclaw/openclaw/pull/97915) Merci à @romneyda.
- Centralisation des vérifications d’assurance qualité reposant sur Docker dans un emplacement pris en charge afin de faciliter leur recherche et leur maintenance. [#97937](https://github.com/openclaw/openclaw/pull/97937) Merci à @romneyda.
- Réduction de la duplication de la configuration de l’intégration continue sous Linux afin de permettre une maintenance cohérente du comportement de récupération des sources. [#97940](https://github.com/openclaw/openclaw/pull/97940) Merci à @romneyda.
- Maintien de la compatibilité de QA Lab avec le paquet Crabline actuel et clarification de la terminologie relative aux fournisseurs locaux pour les opérateurs. [#97941](https://github.com/openclaw/openclaw/pull/97941) Merci à @romneyda.
- Mise à jour des recommandations relatives à la capacité de l’intégration continue afin que les responsables de maintenance puissent dimensionner les pics d’activité des exécuteurs hébergés selon les limites actuelles. [#97943](https://github.com/openclaw/openclaw/pull/97943) Merci à @vincentkoc.
- Regroupement de la configuration répétée de récupération des sources dans les processus, réduisant les divergences de maintenance sans modifier le comportement de validation. [#97946](https://github.com/openclaw/openclaw/pull/97946) Merci à @romneyda.
- Consolidation des vérifications répétées des identifiants pour l’assurance qualité des canaux en direct, sans modifier les éléments validés. [#97947](https://github.com/openclaw/openclaw/pull/97947) Merci à @romneyda.
- Consolidation des vérifications des identifiants d’assurance qualité des versions entre les tâches de canaux, tout en préservant le même comportement de validation. [#97948](https://github.com/openclaw/openclaw/pull/97948) Merci à @romneyda.
- Suppression de la configuration de préparation Docker dupliquée dans la validation Crabbox, afin de faciliter la cohérence des futures mises à jour. [#97950](https://github.com/openclaw/openclaw/pull/97950) Merci à @romneyda.
- Consolidation de la préparation répétée de la compilation Docker dans le workflow de publication afin de réduire les divergences de maintenance. [#97951](https://github.com/openclaw/openclaw/pull/97951) Merci à @romneyda.
- Préparation d’un espace d’accueil facile à trouver dans la documentation pour les notes de version soignées d’OpenClaw. [#97959](https://github.com/openclaw/openclaw/pull/97959) Merci à @hannesrudolph.
- Réutilisation des scénarios d’assurance qualité des canaux dans les environnements de test pris en charge, sans modifier le comportement pour les utilisateurs finaux. [#97962](https://github.com/openclaw/openclaw/pull/97962) Merci à @romneyda.
- Ajout d’une couverture de régression pour assurer la cohérence des valeurs numériques dans les workflows reposant sur SQLite. [#98009](https://github.com/openclaw/openclaw/pull/98009) Merci à @dwc1997.
- Ajout d’une couverture des paramètres globaux et propres à chaque agent pour la mise en évidence des commandes, ainsi que de leur comportement de repli. [#98087](https://github.com/openclaw/openclaw/pull/98087) Merci à @solodmd.
- Prévention du maintien inutile de minuteurs actifs par les vérifications terminées de détection de Tailscale pendant la configuration du Gateway. [#98134](https://github.com/openclaw/openclaw/pull/98134) Merci à @zhanglei99586.
- Protection des profils Chrome gérés contre l’ajout d’entrées de préférences vides et mal formées dans un cas limite. [#98138](https://github.com/openclaw/openclaw/pull/98138) Merci à @zhanglei99586.
- Renforcement de la couverture de régression pour la gestion de l’état de réveil et de reconnexion des nœuds du Gateway. [#98205](https://github.com/openclaw/openclaw/pull/98205) Merci à @zenglingbiao.
- Ajout d’une couverture garantissant un fractionnement cohérent des listes avec des entrées normales et des cas limites. [#98219](https://github.com/openclaw/openclaw/pull/98219) Merci à @zenglingbiao.
- Mise à jour de la publication des plugins officiels afin d’utiliser les outils ClawHub corrigés pour la gestion des familles de paquets. [#98233](https://github.com/openclaw/openclaw/pull/98233) Merci à @patrick-erichsen.
- Autorisation de republier quatre plugins officiels hérités sans que ClawHub rejette leur famille de paquets établie. [#98249](https://github.com/openclaw/openclaw/pull/98249) Merci à @patrick-erichsen.
- Publication dans la documentation d’un récit de version lisible et facile à trouver pour OpenClaw v2026.6.11. [#98319](https://github.com/openclaw/openclaw/pull/98319) Merci à @hannesrudolph.
- Mise à jour des métadonnées de documentation générées afin que les notes de version v2026.6.11 puissent réussir les vérifications de déploiement. [#98325](https://github.com/openclaw/openclaw/pull/98325) Merci à @hannesrudolph.
- Ajout d’une couverture de régression pour la lecture de la version de la base de données SQLite utilisée lors du démarrage et des vérifications de schéma. [#98369](https://github.com/openclaw/openclaw/pull/98369) Merci à @dwc1997.
- Ajout d’une couverture de régression pour identifier correctement les blocs de réponse de réflexion et de réflexion expurgée. [#98370](https://github.com/openclaw/openclaw/pull/98370) Merci à @dwc1997.
- Ajout d’une couverture afin de maintenir les comptes de canaux activés par défaut, sauf s’ils sont explicitement désactivés. [#98395](https://github.com/openclaw/openclaw/pull/98395) Merci à @dwc1997.
- Prise en charge, par les balayages de bogues des mainteneurs, des tailles de lots demandées et des listes précises de demandes de tirage, tout en préservant les normes de préparation existantes. [#98494](https://github.com/openclaw/openclaw/pull/98494) Merci à @vincentkoc.
- Rétablissement d’une validation hébergée fiable grâce à la correction d’attentes de test obsolètes dans les vérifications du cœur et des fournisseurs. [#98533](https://github.com/openclaw/openclaw/pull/98533)
- Préparation d’une base interne cohérente pour de futurs contrôles d’accès tenant compte des conversations, sans modifier les autorisations actuelles. [#98536](https://github.com/openclaw/openclaw/pull/98536)
- Rétablissement de la vérification des types des tests du cœur afin que les tests valides du Gateway et des fournisseurs ne bloquent plus des travaux sans rapport. [#98551](https://github.com/openclaw/openclaw/pull/98551) Merci à @romneyda.
- Rétablissement d’une validation lint réussie tout en préservant les correctifs de sécurité antérieurs pour Tailscale et Feishu. [#98598](https://github.com/openclaw/openclaw/pull/98598) Lié à [#98462](https://github.com/openclaw/openclaw/issues/98462), [#98464](https://github.com/openclaw/openclaw/issues/98464). Merci à @zhanglei99586.
- Ajout d’une couverture de régression pour des listes lisibles dans les avis d’approbation et les autres messages destinés aux utilisateurs. [#98605](https://github.com/openclaw/openclaw/pull/98605) Merci à @dwc1997, @vincentkoc.
- Rétablissement du pipeline de validation des outils après que la nouvelle couverture des transcriptions a modifié le plan de test attendu. [#98610](https://github.com/openclaw/openclaw/pull/98610)
- Contribution au correctif qui permet de faire défiler les longues listes de fichiers de l’espace de travail dans la barre latérale de la discussion. [#98611](https://github.com/openclaw/openclaw/pull/98611) Lié à [#98566](https://github.com/openclaw/openclaw/issues/98566). Merci à @645648406-max, @zw-xysk.
- Échec propre des demandes d’identifiants d’assurance qualité lorsqu’un courtier partagé renvoie une réponse d’une taille anormalement élevée. [#98619](https://github.com/openclaw/openclaw/pull/98619) Merci à @zengwen-dt.
- Prévention de l’expiration des tests de l’outil de messagerie, tout en préservant le comportement du plugin qu’ils vérifient. [#98701](https://github.com/openclaw/openclaw/pull/98701)
- Consolidation des modèles répétés de chargement des fournisseurs et des utilitaires afin d’améliorer la cohérence et la maintenabilité. [#98749](https://github.com/openclaw/openclaw/pull/98749) Merci à @romneyda.
- Renforcement de la preuve d’assurance qualité que les commandes d’arrêt natives interrompent la bonne conversation active dans les environnements de test pris en charge. [#98751](https://github.com/openclaw/openclaw/pull/98751) Merci à @romneyda.
- Extension de la couverture d’assurance qualité pour la configuration et la normalisation des messages de Signal, Mattermost et Matrix via Crabline. [#98779](https://github.com/openclaw/openclaw/pull/98779) Merci à @romneyda.
- Rétablissement des vérifications de types de la documentation et des tests sans modifier le comportement de la commande attach. [#98792](https://github.com/openclaw/openclaw/pull/98792)
- Placement des recommandations de fiabilité pour Telegram à un endroit où les contributeurs et les réviseurs les rencontreront lors de futurs travaux sur les extensions. [#98808](https://github.com/openclaw/openclaw/pull/98808) Merci à @obviyus.
- Récupération de la validation Swift sous macOS après des caches de compilation incomplets, au lieu de répéter le même échec. [#98818](https://github.com/openclaw/openclaw/pull/98818)
- Maintien de la réactivité des vérifications de l’inventaire des traductions natives lors de l’analyse d’étiquettes sources inhabituelles. [#99098](https://github.com/openclaw/openclaw/pull/99098) Merci à @hxy91819.
- Protection des vérifications Telegram de QA Lab contre une utilisation excessive de la mémoire lorsque l’API Telegram renvoie une réponse d’une taille anormalement élevée. [#99151](https://github.com/openclaw/openclaw/pull/99151) Merci à @hugenshen.
- Arrêt anticipé et explicite des vérifications de configuration de QA Lab en cas de réponses du Gateway d’une taille anormalement élevée. [#99165](https://github.com/openclaw/openclaw/pull/99165) Merci à @hugenshen.
- Protection des workflows QA Channel contre une utilisation excessive de la mémoire lorsqu’un service d’assurance qualité renvoie des données surdimensionnées. [#99169](https://github.com/openclaw/openclaw/pull/99169) Merci à @hugenshen.
- Réduction des faux échecs de CI dans la couverture de la concurrence des sessions de réponse grâce à une coordination plus fiable des tests. [#99212](https://github.com/openclaw/openclaw/pull/99212)
- Prévention des faux échecs de validation de la sécurité réseau causés par les assertions de proxy réservées aux tests. [#99233](https://github.com/openclaw/openclaw/pull/99233) Merci à @joshavant.
- Établissement d’une base interne commune pour charger les modules d’exécution de façon cohérente, sans modifier le comportement. [#99261](https://github.com/openclaw/openclaw/pull/99261) Merci à @romneyda.
- Ajout d’une couverture d’assurance qualité pour les envois de messages Signal via Crabline et leurs résultats normalisés. [#99262](https://github.com/openclaw/openclaw/pull/99262) Merci à @romneyda.
- Ajout d’une couverture d’assurance qualité afin de garantir que les réponses Mattermost restent associées à la bonne conversation de groupe via Crabline. [#99264](https://github.com/openclaw/openclaw/pull/99264) Merci à @romneyda.
- Ajout d’une couverture d’assurance qualité afin de garantir que les messages Matrix restent associés au bon salon via Crabline. [#99265](https://github.com/openclaw/openclaw/pull/99265) Merci à @romneyda.
- Consolidation des modèles de chargement répétés dans les zones principales de l’environnement d’exécution afin de réduire les divergences de maintenance. [#99278](https://github.com/openclaw/openclaw/pull/99278) Merci à @romneyda.
- Réduction des expirations temporaires des tests rapides d’assurance qualité sous forte charge de CI, sans modifier le comportement du produit. [#99294](https://github.com/openclaw/openclaw/pull/99294) Merci à @romneyda.
- Consolidation des modèles de chargement du Gateway et de l’environnement d’exécution avec état afin d’améliorer la cohérence et la maintenabilité. [#99296](https://github.com/openclaw/openclaw/pull/99296) Merci à @romneyda.
- Uniformisation des modèles de chargement répétés dans Discord, Slack et Telegram, tout en préservant le comportement existant des canaux. [#99298](https://github.com/openclaw/openclaw/pull/99298) Merci à @romneyda.
- Uniformisation des modèles de chargement répétés dans Matrix et d’autres canaux afin de réduire les risques de maintenance futurs. [#99302](https://github.com/openclaw/openclaw/pull/99302) Merci à @romneyda.
- Ajout d’une couverture d’assurance qualité de bout en bout pour la configuration de Zalo, la livraison entrante et la normalisation des messages sortants via Crabline. [#99303](https://github.com/openclaw/openclaw/pull/99303) Merci à @romneyda.
- Rétablissement d’une validation lint fiable pour l’extension Memory Wiki, sans modifier son comportement. [#99307](https://github.com/openclaw/openclaw/pull/99307) Merci à @romneyda.
- Ajout à la preuve d’assurance qualité de la diffusion en continu de la vérification qu’un canal affiche un aperçu avant la réponse finale. [#99310](https://github.com/openclaw/openclaw/pull/99310) Merci à @romneyda.
- Ajout d’un processus protégé de publication mensuelle sur npm pour les mainteneurs de versions, sans déplacer le canal latest normal. [#99352](https://github.com/openclaw/openclaw/pull/99352) Merci à @kevinslin.
- Rétablissement des vérifications de CI pour la gestion du contexte Telegram et les limites prises en charge du SDK des plugins. [#99355](https://github.com/openclaw/openclaw/pull/99355) Merci à @romneyda.
- Consolidation des vérifications répétées de la forme des données dans le code du cœur afin d’améliorer la cohérence et la maintenabilité. [#99359](https://github.com/openclaw/openclaw/pull/99359) Merci à @romneyda.
- Consolidation des vérifications répétées de la forme des données dans les plugins intégrés afin de réduire les divergences de maintenance. [#99361](https://github.com/openclaw/openclaw/pull/99361) Merci à @romneyda.
- Réduction des expirations intermittentes des tests rapides d’assurance qualité lorsque plusieurs vérifications isolées du Gateway s’exécutent ensemble sur du matériel de CI aux ressources limitées. [#99368](https://github.com/openclaw/openclaw/pull/99368) Merci à @romneyda.
- Normalisation des résultats et des diagnostics d’assurance qualité afin de faciliter la comparaison de la validation des versions et d’en renforcer la fiabilité. [#99374](https://github.com/openclaw/openclaw/pull/99374) Merci à @romneyda.
- Rétablissement de la validation du Gateway dans une copie de travail propre après qu’une dépendance de test manquante a provoqué de faux échecs. [#99520](https://github.com/openclaw/openclaw/pull/99520) Lié à [#99513](https://github.com/openclaw/openclaw/issues/99513). Merci à @masatohoshino.
- Maintien de vérifications en direct explicites de Bedrock sur le véritable environnement d’exécution Bedrock afin que les responsables puissent valider de manière fiable le comportement adossé à AWS. [#99607](https://github.com/openclaw/openclaw/pull/99607) Merci à @brian-bell.
- Les doublons dans la couverture des scénarios d’assurance qualité provoquent désormais un échec clair afin que les résultats de validation restent fiables. [#99628](https://github.com/openclaw/openclaw/pull/99628) Voir aussi [#99627](https://github.com/openclaw/openclaw/issues/99627). Merci à @romneyda.
- Protection des secrets dans les journaux de preuves d’assurance qualité de taille limitée et les détails des échecs, tout en préservant des diagnostics utiles. [#99629](https://github.com/openclaw/openclaw/pull/99629) Merci à @romneyda.
- Simplification de la configuration de l’assurance qualité des canaux et clarification des échecs pour les actions de test non prises en charge. [#99632](https://github.com/openclaw/openclaw/pull/99632) Voir aussi [#99622](https://github.com/openclaw/openclaw/issues/99622). Merci à @romneyda.
- Réduction des faux échecs multiplateformes des vérifications de version liés à l’arrêt du serveur statique. [#99642](https://github.com/openclaw/openclaw/pull/99642) Merci à @romneyda.
- Réduction des échecs intermittents de l’assurance qualité de Crabline causés par des sorties de test partiellement écrites. [#99649](https://github.com/openclaw/openclaw/pull/99649) Voir aussi [#99648](https://github.com/openclaw/openclaw/issues/99648). Merci à @romneyda.
- Réduction des faux échecs de l’assurance qualité en accordant à la récupération de la commande d’arrêt native la totalité du temps de tour attendu. [#99656](https://github.com/openclaw/openclaw/pull/99656) Voir aussi [#99655](https://github.com/openclaw/openclaw/issues/99655). Merci à @romneyda.
- Regroupement de la gestion des limites numériques dans OpenClaw afin d’améliorer la cohérence et la maintenabilité. [#99671](https://github.com/openclaw/openclaw/pull/99671) Voir aussi [#99667](https://github.com/openclaw/openclaw/issues/99667). Merci à @romneyda.
- Regroupement de la gestion répétée des options de chaîne dans les commandes, la configuration, les fournisseurs et les canaux, sans modifier le comportement. [#99676](https://github.com/openclaw/openclaw/pull/99676) Voir aussi [#99663](https://github.com/openclaw/openclaw/issues/99663). Merci à @romneyda.
- L’activité du fournisseur local apparaît désormais rapidement et de manière cohérente dans l’assurance qualité adossée à Crabline. [#99679](https://github.com/openclaw/openclaw/pull/99679) Voir aussi [#99664](https://github.com/openclaw/openclaw/issues/99664). Merci à @romneyda.
- Uniformisation des références de modèles configurées dans le catalogue, l’environnement d’exécution de l’agent, le Gateway et les plugins, sans modifier le comportement prévu. [#99682](https://github.com/openclaw/openclaw/pull/99682) Voir aussi [#99674](https://github.com/openclaw/openclaw/issues/99674). Merci à @romneyda.
- Regroupement du hachage interne des identifiants et des enregistrements de validation sans modifier leurs sorties. [#99687](https://github.com/openclaw/openclaw/pull/99687) Voir aussi [#99675](https://github.com/openclaw/openclaw/issues/99675). Merci à @romneyda.
- Regroupement de la gestion tolérante du JSON dans plusieurs workflows internes afin de réduire les doublons et les divergences futures. [#99688](https://github.com/openclaw/openclaw/pull/99688) Merci à @romneyda.
- Uniformisation de l’ordre interne des travaux dans les parcours de comptes, de sessions, de fichiers, de messages et de plugins, tout en préservant le comportement existant. [#99691](https://github.com/openclaw/openclaw/pull/99691) Merci à @romneyda.
- Suppression des couches redondantes de nettoyage de listes dans les canaux, les agents, la CLI et les diagnostics afin de clarifier la maintenance. [#99702](https://github.com/openclaw/openclaw/pull/99702) Voir aussi [#99697](https://github.com/openclaw/openclaw/issues/99697). Merci à @romneyda.
- Renforcement de la validation des versions pour les workflows importants de discussion, de recherche, de compatibilité et de plugins. [#99705](https://github.com/openclaw/openclaw/pull/99705) Merci à @romneyda.
- Extension de la couverture partagée de l’assurance qualité en direct des canaux pour Telegram, Slack, WhatsApp et Matrix, tout en préservant le comportement existant de chaque canal. [#99707](https://github.com/openclaw/openclaw/pull/99707) Merci à @romneyda.
- Rétablissement de la fiabilité de la préparation des paquets et de Docker à partir d’extractions propres. [#99710](https://github.com/openclaw/openclaw/pull/99710) Merci à @romneyda.
- Normalisation du formatage des images de référence chez les fournisseurs de médias afin de réduire les divergences de maintenance sans modifier le comportement de génération des médias. [#99715](https://github.com/openclaw/openclaw/pull/99715) Merci à @romneyda.
- Renforcement de la validation du parcours interactif de configuration de Telegram, y compris l’enregistrement de la configuration obtenue. [#99717](https://github.com/openclaw/openclaw/pull/99717) Merci à @romneyda.
- Regroupement du nettoyage interne du texte tout en préservant le formatage du terminal et la sécurité des messages sortants. [#99718](https://github.com/openclaw/openclaw/pull/99718) Merci à @romneyda.
- Uniformisation de la validation des adresses web et WebSocket dans les workflows de configuration, de proxy, de médias, de Webhook et de plugins. [#99719](https://github.com/openclaw/openclaw/pull/99719) Merci à @romneyda.
- Regroupement des comportements courants d’attente et de délai d’expiration dans les workflows principaux, les plugins, les outils et les tests, sans modifier les délais prévus. [#99721](https://github.com/openclaw/openclaw/pull/99721) Merci à @romneyda.
- Renforcement de la couverture des versions pour le démarrage réel du Gateway et de MCP, les connexions, la découverte, la négociation et les appels d’outils. [#99735](https://github.com/openclaw/openclaw/pull/99735) Merci à @romneyda.
- Fiabilisation de la validation combinée des versions en empêchant l’absence de fichiers d’environnement d’exécution dans les paquets. [#99736](https://github.com/openclaw/openclaw/pull/99736) Voir aussi [#99734](https://github.com/openclaw/openclaw/issues/99734). Merci à @romneyda.
- Ajout d’une couverture renforcée de l’environnement d’exécution pour les workflows de voix, de médias, de planification, de nettoyage du navigateur et de télémétrie. [#99737](https://github.com/openclaw/openclaw/pull/99737) Merci à @romneyda.
- Réduction des faux délais d’expiration de validation pour le ciblage des sessions de commandes natives en cas de forte charge. [#99743](https://github.com/openclaw/openclaw/pull/99743) Merci à @romneyda.
- Uniformisation des mesures de protection pour le téléchargement de réponses HTTP de taille limitée dans les agents, les fournisseurs, le Gateway, les plugins, la documentation et les médias. [#99744](https://github.com/openclaw/openclaw/pull/99744) Merci à @romneyda.
- Centralisation du masquage des identifiants et de la comparaison sécurisée des secrets afin de garantir un comportement d’authentification cohérent dans les workflows pris en charge. [#99746](https://github.com/openclaw/openclaw/pull/99746) Merci à @romneyda.
- Uniformisation de l’interprétation des paramètres vrai ou faux dans les plugins, la messagerie, les médias, la planification et la configuration de la mémoire. [#99750](https://github.com/openclaw/openclaw/pull/99750) Merci à @romneyda.
- Uniformisation de la gestion des annulations afin que les arrêts et les délais d’expiration restent cohérents dans les workflows d’agents, du Gateway, de réponses, de médias et de processus. [#99753](https://github.com/openclaw/openclaw/pull/99753) Merci à @romneyda.
- Regroupement des transferts répétés de tâches internes dans la configuration, les approbations, les tours d’agent et les plugins, sans modifier le comportement. [#99755](https://github.com/openclaw/openclaw/pull/99755) Merci à @romneyda.
- Regroupement de la gestion des routes d’appel vocal tout en préservant la correspondance des Webhooks et en temps réel. [#99766](https://github.com/openclaw/openclaw/pull/99766) Merci à @romneyda.
- Simplification de la maintenance des tests grâce au regroupement de la configuration répétée du réseau local. [#99771](https://github.com/openclaw/openclaw/pull/99771) Merci à @romneyda.
- Simplification de la maintenance des catalogues de modèles associés de BytePlus et Volcengine, sans modifier le comportement des fournisseurs. [#99777](https://github.com/openclaw/openclaw/pull/99777) Merci à @romneyda.
- Normalisation de l’échappement des motifs textuels dans les automatisations de maintenance afin de réduire les doublons et les incohérences futures. [#99778](https://github.com/openclaw/openclaw/pull/99778) Merci à @romneyda.
- Accélération et fiabilisation de la validation principale des versions tout en conservant la couverture de l’environnement d’exécution et de la télémétrie. [#99784](https://github.com/openclaw/openclaw/pull/99784) Merci à @romneyda.
- Regroupement des comportements redondants de nettoyage des listes utilisés pour la résolution des fournisseurs et l’autorisation d’exécution. [#99785](https://github.com/openclaw/openclaw/pull/99785) Merci à @romneyda.
- Uniformisation de la gestion des limites numériques dans les workflows d’agents tout en préservant leurs plages autorisées existantes. [#99786](https://github.com/openclaw/openclaw/pull/99786) Merci à @romneyda.
- Regroupement du hachage interne dans l’authentification, les sessions, les approbations, les identifiants et les plugins, sans modifier la compatibilité. [#99788](https://github.com/openclaw/openclaw/pull/99788) Merci à @romneyda.
- Extension de la gestion cohérente des références de fournisseurs et de modèles aux workflows de médias, de parole, de stratégie des agents et de diagnostic. [#99790](https://github.com/openclaw/openclaw/pull/99790) Merci à @romneyda.
- Amélioration de la fiabilité de la validation des versions grâce à la réduction de la pression mémoire lors de la construction des paquets. [#99793](https://github.com/openclaw/openclaw/pull/99793)
- Alignement des libellés internes d’audience des conversations sur le contexte de groupe vérifié en vue de futurs travaux sur le contrôle d’accès. [#99816](https://github.com/openclaw/openclaw/pull/99816)
- Amélioration de la fiabilité de la construction des artefacts en empêchant les échecs de validation liés à la mémoire. [#99820](https://github.com/openclaw/openclaw/pull/99820)
- Regroupement de la maintenance de l’état partagé des canaux et des migrations de plugins pour Slack, Mattermost, Teams et Matrix, sans modifier les workflows. [#99850](https://github.com/openclaw/openclaw/pull/99850)
- Les mises à jour du style des discussions de l’interface de contrôle sont désormais plus prévisibles, sans modification visuelle prévue et avec un risque de régression réduit. [#99900](https://github.com/openclaw/openclaw/pull/99900)
- Accélération considérable de la validation des commandes de rapport d’assurance qualité et réduction de son utilisation de la mémoire, sans modifier ses résultats. [#99909](https://github.com/openclaw/openclaw/pull/99909)
- Correction du raccourcissement de la sortie des commandes afin que les limites de longueur nulles ou non valides ne produisent plus de texte dépassant la taille demandée. [#99917](https://github.com/openclaw/openclaw/pull/99917) Merci à @super-cabbage.
- Accélération de la validation de la surface de développement des plugins et réduction de son utilisation de la mémoire, sans modifier les éléments vérifiés. [#99940](https://github.com/openclaw/openclaw/pull/99940)
- Suppression d’un parcours de téléchargement Slack inutilisé, réduisant la maintenance sensible à la sécurité tout en préservant les téléchargements de fichiers privés et d’images. [#99944](https://github.com/openclaw/openclaw/pull/99944) Merci à @miorbnli.
- Accélération de la couverture de la commande de mise à jour tout en conservant la validation des échecs de redémarrage des services gérés. [#99945](https://github.com/openclaw/openclaw/pull/99945)
- Accélération et allègement de la couverture de l’enveloppe Crabbox tout en préservant les mêmes vérifications comportementales. [#99969](https://github.com/openclaw/openclaw/pull/99969)
- Réduction des attentes inutiles dans la couverture du planificateur Docker sans modifier le comportement de planification de l’environnement d’exécution. [#99988](https://github.com/openclaw/openclaw/pull/99988)
- Accélération du démarrage des outils légers de validation en temps réel et réduction de leur utilisation de la mémoire, tout en préservant le comportement des tests de bon fonctionnement en direct. [#100002](https://github.com/openclaw/openclaw/pull/100002)
- Accélération de la validation de sécurité des paquets candidats sans modifier les protections fournies. [#100008](https://github.com/openclaw/openclaw/pull/100008)
- Empêchement de la publication de versions du plugin Codex avec un environnement d’exécution intégré obsolète, réduisant ainsi les mises à jour faussement validées. [#100015](https://github.com/openclaw/openclaw/pull/100015) Merci à @100yenadmin et @fuller-stack-dev.
- Réduction de l’utilisation de la mémoire et maintien des tests isolés dans leur budget de performances pour fournir aux contributeurs des retours plus rapides et plus fiables. [#100019](https://github.com/openclaw/openclaw/pull/100019)
- Restructuration de l’interface de contrôle pour une navigation plus prévisible, des transitions de page plus fluides et moins d’actualisations inutiles de l’écran. [#100024](https://github.com/openclaw/openclaw/pull/100024) Merci à @shakkernerd.
- Amélioration des éléments de preuve d’assurance qualité de Matrix afin que les responsables de maintenance puissent diagnostiquer plus facilement l’ordre des requêtes, les nouvelles tentatives, les erreurs et la continuité de l’état. [#100039](https://github.com/openclaw/openclaw/pull/100039) Merci à @romneyda.
- Utilisation du code réellement testé pour la validation depuis des environnements de développement isolés, afin d’éviter les résultats trompeurs. [#100053](https://github.com/openclaw/openclaw/pull/100053)
- Suppression des noms de types internes redondants afin que les responsables de maintenance et les développeurs de plugins puissent suivre plus directement le code concerné. [#100061](https://github.com/openclaw/openclaw/pull/100061) Merci à @romneyda.
- Stabilisation de la validation locale sous macOS afin que les responsables de maintenance puissent préparer les versions et les modifications sans faux échecs propres à l’hôte. [#100069](https://github.com/openclaw/openclaw/pull/100069)
- Mise à jour de l’analyse statique TypeScript tout en évitant les résultats trompeurs et les modifications automatisées dangereuses. [#100083](https://github.com/openclaw/openclaw/pull/100083)
- Correction de la commande documentée de mesure des performances de récupération Web afin qu’elle fonctionne telle qu’elle est écrite. [#100087](https://github.com/openclaw/openclaw/pull/100087) Merci à @vincentkoc.
- Stabilisation de la couverture du routage de l’interface de contrôle afin de réduire les faux échecs liés aux dispositions des discussions et des sessions. [#100108](https://github.com/openclaw/openclaw/pull/100108) Merci à @vincentkoc.
- Remplacement fiable des aperçus par les réponses finales de qa-channel, même lorsque les détails facultatifs de livraison sont absents. [#100114](https://github.com/openclaw/openclaw/pull/100114) Merci à @vincentkoc.
- Renforcement de la protection de l’analyse statique contre le partage accidentel d’une même valeur mutable entre plusieurs entrées d’un tableau. [#100122](https://github.com/openclaw/openclaw/pull/100122)
- Mise à jour de la couverture des régressions de la documentation pour correspondre à la formulation actuelle et éviter les échecs de validation sans rapport. [#100183](https://github.com/openclaw/openclaw/pull/100183) Merci à @vincentkoc.
- Harmonisation de la documentation relative à la protection de l’environnement, aux vérifications de repli des tâches planifiées et aux valeurs par défaut du silence de Talk, sans modification du comportement. [#100186](https://github.com/openclaw/openclaw/pull/100186)
- Ajout d’une couverture reproductible de la diffusion des discussions Android pour les messages dupliqués, manquants, obsolètes, arrivés à expiration ou mal formés. [#100200](https://github.com/openclaw/openclaw/pull/100200)
- Ajout d’une couverture reproductible des discussions sur les plateformes Apple afin de détecter avant la publication les réponses diffusées dupliquées, manquantes, réordonnées ou mal formées. [#100201](https://github.com/openclaw/openclaw/pull/100201)
- Renforcement de la validation mobile afin que les nouveaux événements du Gateway ne puissent pas rester silencieusement non gérés par iOS ou Android. [#100206](https://github.com/openclaw/openclaw/pull/100206)
- Mise à jour du workflow intégré de revue automatisée avec les options actuelles des réviseurs, des valeurs par défaut configurables et des protections d’exécution renforcées. [#100210](https://github.com/openclaw/openclaw/pull/100210)
- Amélioration de la sécurité et de la cohérence de la validation effectuée par les responsables de maintenance pour les charges de travail importantes et les contributions non fiables. [#100220](https://github.com/openclaw/openclaw/pull/100220)
- Isolation des tests unitaires vis-à-vis de la configuration locale active et des identifiants afin d’obtenir des résultats plus sûrs et plus cohérents d’une machine à l’autre. [#100221](https://github.com/openclaw/openclaw/pull/100221)
- Possibilité pour les développeurs iOS de conserver les applications de débogage et de production installées côte à côte avec des icônes distinctes et des données d’application séparées. [#100222](https://github.com/openclaw/openclaw/pull/100222)
- Rétablissement d’une validation propre de la localisation, de la documentation et de l’analyse statique pour le parcours d’intégration Crestodian. [#100223](https://github.com/openclaw/openclaw/pull/100223)
- Simplification de la publication des versions en conservant une approbation explicite pour une même version nommée, tout en maintenant les vérifications lorsque le risque évolue. [#100239](https://github.com/openclaw/openclaw/pull/100239) Merci à @vincentkoc.
- Amélioration de la fiabilité de la préparation des versions sur les Mac très sollicités et renforcement de la validation de la suite complète. [#100242](https://github.com/openclaw/openclaw/pull/100242)
- Stabilisation du contrat OpenClawKit et de la couverture des discussions sous une charge macOS parallèle, afin de réduire les faux échecs de validation. [#100243](https://github.com/openclaw/openclaw/pull/100243)
- Rétablissement d’artefacts de paquet complets pour des builds de développement plus fiables à partir des sources, avec Docker et pour les plugins. [#100249](https://github.com/openclaw/openclaw/pull/100249) Merci à @vincentkoc.
- Réduction des interruptions lors des opérations de nettoyage limitées effectuées par les responsables de maintenance, grâce à l’autorisation de lots approuvés plus importants de demandes de tirage obsolètes. [#100253](https://github.com/openclaw/openclaw/pull/100253)
- Nettoyage des icônes de débogage iOS et Apple Watch par suppression d’une bordure extérieure blanche involontaire. [#100259](https://github.com/openclaw/openclaw/pull/100259)
- Correction du traitement des invites d’assurance qualité afin que la validation réponde à l’instruction réelle de l’utilisateur plutôt qu’au contexte d’exécution masqué. [#100272](https://github.com/openclaw/openclaw/pull/100272) Merci à @marvinthebored, @obviyus, @peetiegonzalez.
- Renforcement de la validation du protocole mobile afin que les modifications natives d’iOS ou d’Android ne puissent pas contourner la couverture des événements du Gateway. [#100278](https://github.com/openclaw/openclaw/pull/100278)
- Rétablissement d’une base de formatage Android propre afin que les contributeurs puissent valider et étendre les travaux récents sur les discussions mobiles. [#100304](https://github.com/openclaw/openclaw/pull/100304)
- Prévention de l’épuisement des limites des services partagés par la validation de l’intégration des demandes de tirage, tout en préservant la fiabilité des résultats. [#100332](https://github.com/openclaw/openclaw/pull/100332)
- Complétion du journal de version pour les correctifs intégrés de reconnexion WhatsApp, de réponses citées, de récupération des identifiants et d’état de livraison. [#100346](https://github.com/openclaw/openclaw/pull/100346) Merci à @bartok9, @leonidaslux, @masatohoshino, @vishalj99.
- Rétablissement de la compilation des tests partagés des plateformes Apple couvrant les résultats de la configuration de l’association. [#100355](https://github.com/openclaw/openclaw/pull/100355)
- Prévention des échecs de démarrage d’iOS lorsque Voice Wake est désactivé, y compris dans les builds de développement du simulateur. [#100370](https://github.com/openclaw/openclaw/pull/100370)
- Stabilisation de la couverture sensible à la charge de Matrix, WhatsApp et des processus afin de réduire les faux échecs sur les machines très sollicitées. [#100420](https://github.com/openclaw/openclaw/pull/100420)
- Réduction de la pression mémoire de la suite complète afin que la validation locale soit moins susceptible d’échouer ou de surcharger le poste de travail d’un développeur. [#100437](https://github.com/openclaw/openclaw/pull/100437)
- Complétion du journal de version pour plusieurs correctifs visibles par les utilisateurs déjà intégrés et leurs contributeurs d’origine. [#100441](https://github.com/openclaw/openclaw/pull/100441)
- Correction d’un échec de validation des versions qui empêchait la préparation des paquets candidats. [#100459](https://github.com/openclaw/openclaw/pull/100459) Merci à @vincentkoc.
- Ajout du crédit de version manquant pour le correctif des réponses interactives vides. [#100464](https://github.com/openclaw/openclaw/pull/100464) Merci à @mushuiyu886.
- Simplification du libellé de l’application de développement iOS tout en permettant de distinguer facilement les installations de débogage et de production. [#100466](https://github.com/openclaw/openclaw/pull/100466)
- Rétablissement de la validation des versions pour les anciens candidats OpenClaw sans affaiblir les vérifications des paquets actuels. [#100469](https://github.com/openclaw/openclaw/pull/100469) Merci à @vincentkoc.
- Ajout d’une preuve visuelle reproductible que les builds candidats de l’interface de contrôle peuvent envoyer un message de discussion et afficher la réponse finale. [#100472](https://github.com/openclaw/openclaw/pull/100472) Merci à @brokemac79.
- Complétion du journal de version et des crédits des contributeurs pour trois correctifs vocaux déjà intégrés. [#100473](https://github.com/openclaw/openclaw/pull/100473)
- Consignation d’un correctif déjà intégré améliorant la fiabilité du navigateur distant, tout en réduisant les validations répétées dues aux conflits du journal des modifications. [#100495](https://github.com/openclaw/openclaw/pull/100495) Merci à @hemantsudarshan, @keaneyan.
- Suppression d’un test d’intégration macOS obsolète afin que la cible de test native actuelle se compile proprement. [#100497](https://github.com/openclaw/openclaw/pull/100497) Merci à @steipete-oai.
- Consignation du fait que les connexions persistantes dans les nouveaux profils de navigateur macOS isolés résistent aux redémarrages normaux du navigateur et du Gateway. [#100507](https://github.com/openclaw/openclaw/pull/100507) Merci à @turbotheturtle.
- Renforcement de la fiabilité des tests du proxy de navigateur macOS grâce à la suppression d’échecs intermittents qui entraînaient des réexécutions inutiles. [#100517](https://github.com/openclaw/openclaw/pull/100517)
- Ajout d’un journal de version exact pour les téléchargements de pièces jointes du navigateur géré et les détails de fichier qu’ils renvoient. [#100532](https://github.com/openclaw/openclaw/pull/100532) Merci à @zhangguiping-xydt.
- Consignation de quatre améliorations de l’interface de contrôle précédemment publiées afin de maintenir l’exhaustivité de l’historique des versions et des crédits des contributeurs. [#100533](https://github.com/openclaw/openclaw/pull/100533) Merci à @evan-ym, @qingminglong, @tiffanychum, @xianshishan.
- Réduction du travail de configuration inutile pour les modèles qui ne peuvent pas utiliser d’outils, tout en préservant les workflows existants qui les utilisent. [#100536](https://github.com/openclaw/openclaw/pull/100536) Merci à @vincentkoc.
- Clarification et renforcement de la couverture des nouvelles tentatives de modification des messages Telegram, sans modifier leur comportement existant. [#100543](https://github.com/openclaw/openclaw/pull/100543) Merci à @lzw112.
- Complétion du journal de version pour trois correctifs de fiabilité précédemment publiés et des crédits de leurs contributeurs. [#100545](https://github.com/openclaw/openclaw/pull/100545)
- Documentation des aperçus publiés de l’interface de contrôle qui présentent des informations utiles sur les problèmes et les demandes de tirage GitHub. [#100555](https://github.com/openclaw/openclaw/pull/100555)
- Ajout à l’historique des versions de la récupération des discussions Apple après une reconnexion à une réponse active. [#100561](https://github.com/openclaw/openclaw/pull/100561)
- Consignation de trois correctifs intégrés couvrant les réponses diffusées, la gestion de l’identité du téléphone et les réponses Tlon limitées. [#100562](https://github.com/openclaw/openclaw/pull/100562) Merci à @hugenshen, @morluto, @totobusnello.
- Ajout d’un journal de version traçable pour des téléchargements plus sûrs issus des actions du navigateur et la préservation des onglets appartenant à l’utilisateur. [#100575](https://github.com/openclaw/openclaw/pull/100575) Merci à @sunlit-deng.
- Réduction des validations répétées inutiles lorsque des demandes de tirage concurrentes sont intégrées sans modifier le correctif préparé. [#100593](https://github.com/openclaw/openclaw/pull/100593)
- Complétion de la couverture du journal des modifications pour cinq correctifs publiés de l’interface de contrôle et de l’interface de terminal. [#100599](https://github.com/openclaw/openclaw/pull/100599) Merci à @goutamadwant, @haishmg, @ml12580, @ruanrrn, @vincentkoc, @zengwen-dt.
- Rétablissement de la validation et de l’indexation de la documentation pour le guide des arbres de travail gérés. [#100603](https://github.com/openclaw/openclaw/pull/100603)
- Consignation de trois correctifs publiés relatifs aux plugins et à la configuration afin que leur couverture dans les versions reste complète. [#100609](https://github.com/openclaw/openclaw/pull/100609) Merci à @vincentkoc.
- Correction de la validation de Workboard afin que les comportements de nettoyage légitimes ne provoquent plus d’échecs erronés. [#100611](https://github.com/openclaw/openclaw/pull/100611)
- Simplification de la maintenance de la navigation de l’interface de contrôle tout en préservant les choix enregistrés pour la barre latérale et le comportement existant. [#100612](https://github.com/openclaw/openclaw/pull/100612)
- Réduction du code interne dupliqué et inutilisé dans plusieurs domaines, pour rendre la maintenance future plus cohérente. [#100650](https://github.com/openclaw/openclaw/pull/100650) Merci à @vincentkoc.
- Évitement d’une validation hébergée redondante après des rebasages propres lorsqu’il était démontré que la modification préparée était inchangée. [#100663](https://github.com/openclaw/openclaw/pull/100663)
- Extension du relevé de version Android afin d’inclure cinq améliorations de l’application déjà publiées. [#100702](https://github.com/openclaw/openclaw/pull/100702)
- Rétablissement de la validation du Gateway central et de la qualité du code afin que les modifications sans rapport puissent progresser de manière fiable. [#100703](https://github.com/openclaw/openclaw/pull/100703)
- Mise à jour de la couverture des tests d’acceptation des paquets pour refléter la configuration actuelle épinglée de la CLI Claude. [#100723](https://github.com/openclaw/openclaw/pull/100723) Merci à @vincentkoc.
- Ajout d’une couverture de version pour les libellés de modèles corrigés et les aperçus persistants des images entrantes dans l’interface de contrôle. [#100740](https://github.com/openclaw/openclaw/pull/100740) Merci à @hyspacex et @sweetcornna.
- Finalisation du relevé de préversion pour quatre correctifs précédemment intégrés et leurs contributeurs. [#100781](https://github.com/openclaw/openclaw/pull/100781)
- Finalisation de la prise en charge et de la validation destinées aux développeurs pour les intégrations utilisant les résultats de session des arbres de travail gérés. [#100793](https://github.com/openclaw/openclaw/pull/100793)
- Mise à disposition des résultats de session des arbres de travail gérés par l’intermédiaire de l’interface développeur prise en charge. [#100804](https://github.com/openclaw/openclaw/pull/100804)
- Suppression du code interne obsolète et des anciens artefacts Android, réduisant ainsi la surface de maintenance. [#100823](https://github.com/openclaw/openclaw/pull/100823) Merci à @vincentkoc.
- Élagage des chemins inutilisés du runtime central pour faciliter la compréhension de la propriété et de la maintenance future. [#100856](https://github.com/openclaw/openclaw/pull/100856) Merci à @vincentkoc.
- Réduction des surfaces internes obsolètes de l’interface utilisateur et des fournisseurs, améliorant la précision des rapports de maintenance. [#100882](https://github.com/openclaw/openclaw/pull/100882) Merci à @vincentkoc.
- Renforcement de la couverture de régression pour la configuration d’applications locales Hugging Face avec des serveurs de modèles locaux compatibles. [#100887](https://github.com/openclaw/openclaw/pull/100887) Merci à @osolmaz.
- Amélioration de la cohérence des captures Android compactes de la voix et de l’écran utilisées pour la revue de version. [#100895](https://github.com/openclaw/openclaw/pull/100895) Merci à @iwhatsskill.
- Réalignement de la validation sur le comportement actuel de Codex, du Gateway et de l’interface de contrôle afin d’éviter les échecs trompeurs. [#100897](https://github.com/openclaw/openclaw/pull/100897) Merci à @vincentkoc.
- Rétablissement de la compilation des tests partagés des plateformes Apple utilisés pour valider les modifications de la messagerie sur iOS et macOS. [#100903](https://github.com/openclaw/openclaw/pull/100903)
- Resserrement des frontières du code interne des agents afin de réduire le nombre d’interfaces accidentelles que les responsables doivent préserver. [#100909](https://github.com/openclaw/openclaw/pull/100909) Merci à @vincentkoc.
- Réduction de la surface interne de l’interface de contrôle tout en maintenant son comportement visible inchangé. [#100931](https://github.com/openclaw/openclaw/pull/100931) Merci à @vincentkoc.
- Préparation automatique des outils multimédias requis par les vérifications de bout en bout ciblées de l’interface de contrôle. [#100950](https://github.com/openclaw/openclaw/pull/100950) Merci à @vincentkoc.
- Suppression des interfaces de développement obsolètes et non prises en charge de l’interface de contrôle afin de réduire les dépendances accidentelles. [#100952](https://github.com/openclaw/openclaw/pull/100952) Merci à @vincentkoc.
- Prévention des modifications sans rapport de fichiers locaux laissées par la résolution habituelle des paquets iOS. [#100961](https://github.com/openclaw/openclaw/pull/100961)
- Clarification des frontières internes de Telegram afin que les détails d’implémentation privés soient moins susceptibles de devenir des dépendances. [#100975](https://github.com/openclaw/openclaw/pull/100975) Merci à @vincentkoc.
- Simplification de la surface de développement interne de Workboard sans modifier son comportement. [#100989](https://github.com/openclaw/openclaw/pull/100989) Merci à @vincentkoc.
- Clarification des attentes relatives au registre des plugins et simplification de leur validation sans modifier le comportement du runtime. [#100990](https://github.com/openclaw/openclaw/pull/100990) Merci à @romneyda.
- Regroupement des contrats de scripts dupliqués afin de faciliter une validation cohérente des modifications de maintenance. [#100992](https://github.com/openclaw/openclaw/pull/100992) Merci à @romneyda.
- Simplification de la maintenance du client Gateway par le regroupement des contrats internes répétés, tout en préservant la compatibilité. [#101012](https://github.com/openclaw/openclaw/pull/101012) Merci à @romneyda.
- Réduction de la surface de développement inutilisée de l’interface de contrôle et du bruit dans les futurs rapports de maintenance. [#101013](https://github.com/openclaw/openclaw/pull/101013) Merci à @vincentkoc.
- Maintien du caractère clairement interne du code privé des paquets, améliorant les frontières de propriété et le signalement du code mort. [#101041](https://github.com/openclaw/openclaw/pull/101041) Merci à @vincentkoc.
- Renforcement de la validation des versions Docker en vérifiant que les services documentés et les installations empaquetées démarrent et s’exécutent réellement. [#101045](https://github.com/openclaw/openclaw/pull/101045) Merci à @romneyda.
- Ajout de preuves de version plus solides pour le démarrage de Telegram, l’activité planifiée et la livraison de la télémétrie. [#101051](https://github.com/openclaw/openclaw/pull/101051) Merci à @romneyda.
- Unification de la validation du cycle de vie de Matrix dans les environnements de test pris en charge, facilitant la détection des écarts de parité. [#101055](https://github.com/openclaw/openclaw/pull/101055) Merci à @romneyda.
- Centralisation des scénarios de redémarrage des canaux et de politique d’accès afin de réduire la duplication de la maintenance de l’assurance qualité. [#101063](https://github.com/openclaw/openclaw/pull/101063) Merci à @romneyda.
- Unification de la couverture du routage des canaux afin de faciliter la détection des régressions concernant les mentions, les salons, les listes d’autorisation et les réponses. [#101076](https://github.com/openclaw/openclaw/pull/101076) Merci à @romneyda.
- Normalisation des vérifications des commandes et des sessions Telegram et WhatsApp dans les environnements d’assurance qualité partagés et en conditions réelles. [#101080](https://github.com/openclaw/openclaw/pull/101080) Merci à @romneyda.
- Rétablissement de la validation du formatage et du framework Android, réduisant le bruit de maintenance bloquant les versions. [#101081](https://github.com/openclaw/openclaw/pull/101081) Merci à @vincentkoc.
- Regroupement de la couverture des fils de discussion et des messages directs de Slack et Matrix pour une validation intercanal plus claire. [#101112](https://github.com/openclaw/openclaw/pull/101112) Merci à @romneyda.
- Ajout au journal des modifications d’un vaste ensemble de correctifs déjà publiés concernant les fournisseurs, les canaux, la mémoire, le navigateur et la configuration. [#101128](https://github.com/openclaw/openclaw/pull/101128)
- Renforcement de l’administration des identifiants d’assurance qualité face aux réponses de service surdimensionnées, avec un échec explicite sans consommation excessive de mémoire. [#101131](https://github.com/openclaw/openclaw/pull/101131) Merci à @cxbasdev.
- Nettoyage de la surface interne des types de l’interface de contrôle afin d’améliorer la précision des rapports de maintenance. [#101135](https://github.com/openclaw/openclaw/pull/101135) Merci à @vincentkoc.
- Maintien du caractère interne des définitions privées de l’interface de contrôle, réduisant le bruit et les dépendances accidentelles pour les responsables. [#101165](https://github.com/openclaw/openclaw/pull/101165) Merci à @vincentkoc.
- Correction de la sélection des tests de vérification rapide d’assurance qualité afin que les exécutions habituelles puissent démarrer au lieu d’échouer pendant la configuration. [#101173](https://github.com/openclaw/openclaw/pull/101173) Merci à @romneyda.
- Augmentation de la capacité d’exécution parallèle des tests afin de réduire les temps d’attente évitables lors des périodes de validation chargées. [#101174](https://github.com/openclaw/openclaw/pull/101174) Merci à @vincentkoc.
- Ajout d’une validation destinée aux responsables qui empêche le nouveau code de contourner le chemin de stockage des sessions pris en charge. [#101178](https://github.com/openclaw/openclaw/pull/101178) Merci à @jalehman.
- Préparation de la Compaction, des vérifications planifiées et des bifurcations de sessions pour de futures modifications du stockage sans altérer le comportement. [#101179](https://github.com/openclaw/openclaw/pull/101179) Merci à @jalehman.
- Préparation du routage des sessions, des objectifs, de la livraison et du suivi de la Compaction pour sécuriser les futures modifications du stockage sans altérer les processus. [#101180](https://github.com/openclaw/openclaw/pull/101180) Merci à @jalehman.
- Annulation d’une modification temporaire de la sélection des tests de vérification rapide d’assurance qualité qui n’était pas destinée à être publiée. [#101184](https://github.com/openclaw/openclaw/pull/101184) Merci à @romneyda.
- Suppression temporaire d’une exigence peu fiable de vérification rapide d’assurance qualité afin que les contributions sans rapport ne soient pas bloquées. [#101185](https://github.com/openclaw/openclaw/pull/101185) Merci à @romneyda.
- Rétablissement d’une couverture automatique fiable des tests de vérification rapide pour les modifications des canaux Matrix et Telegram. [#101186](https://github.com/openclaw/openclaw/pull/101186) Merci à @romneyda et @vincentkoc.
- Maintien de la disponibilité de la validation des versions natives lorsque la capacité habituelle des exécuteurs hébergés était indisponible. [#101196](https://github.com/openclaw/openclaw/pull/101196)
- Stabilisation de la couverture du mécanisme de repli au démarrage sous Windows et garantie que les modifications du planificateur déclenchent la validation appropriée. [#101223](https://github.com/openclaw/openclaw/pull/101223)
- Actualisation du suivi de la localisation native après le déplacement des sources afin d’éviter les échecs de validation erronés. [#101232](https://github.com/openclaw/openclaw/pull/101232)
- Correction des références de localisation native afin que la validation relative aux applications reste exacte. [#101233](https://github.com/openclaw/openclaw/pull/101233) Merci à @vincentkoc.
- Mise à jour de l’index de documentation généré pour correspondre aux recommandations de Claude Mythos 5. [#101242](https://github.com/openclaw/openclaw/pull/101242)
- Réduction de l’exposition accidentelle des API internes et amélioration du signal fourni par les revues de code mort. [#101243](https://github.com/openclaw/openclaw/pull/101243) Merci à @vincentkoc.
- Simplification de la surface des modules internes de l’interface de contrôle tout en préservant les instructions d’association et le comportement visible. [#101262](https://github.com/openclaw/openclaw/pull/101262) Merci à @vincentkoc.
- Détection automatique d’un SDK local standard par les commandes de développement Android dans les nouveaux clones. [#101273](https://github.com/openclaw/openclaw/pull/101273)
- Ajout de l’application automatique du formatage Android afin d’empêcher les dérives de nettoyage d’atteindre la base de code principale. [#101275](https://github.com/openclaw/openclaw/pull/101275)
- Maintien de la disponibilité du proxy de débogage local et de l’exactitude de ses erreurs lorsqu’un serveur en amont interrompt prématurément une réponse. [#101315](https://github.com/openclaw/openclaw/pull/101315) Merci à @sebtardif.
- Prévention du blocage des tests de rechargement et de démarrage du Gateway lorsqu’ils sont exécutés ensemble. [#101331](https://github.com/openclaw/openclaw/pull/101331) Merci à @obviyus.
- Resserrement des frontières des modules de l’interface de contrôle et réduction du bruit dans les vérifications de code inutilisé. [#101339](https://github.com/openclaw/openclaw/pull/101339) Merci à @vincentkoc.
- Modernisation des dépendances de compilation Android et de la validation, sans modifier le comportement cible de l’application. [#101356](https://github.com/openclaw/openclaw/pull/101356)
- Réduction de la surface non prise en charge du SDK de mémoire afin que les développeurs soient moins susceptibles de dépendre d’éléments internes privés. [#101362](https://github.com/openclaw/openclaw/pull/101362) Merci à @vincentkoc.
- Rétablissement de la compilation des tests partagés des plateformes Apple utilisés pour la validation locale. [#101372](https://github.com/openclaw/openclaw/pull/101372)
- Clarification des limites internes du plugin Copilot sans modifier son comportement d’exécution. [#101379](https://github.com/openclaw/openclaw/pull/101379) Merci à @vincentkoc.
- Réduction de l’exposition accidentelle de l’API dans le fournisseur GitHub Copilot, afin de rendre plus claires les limites prises en charge. [#101393](https://github.com/openclaw/openclaw/pull/101393) Merci à @vincentkoc.
- Conservation en interne des détails privés des plugins, améliorant les rapports sur le code mort et les futurs nettoyages. [#101406](https://github.com/openclaw/openclaw/pull/101406) Merci à @vincentkoc.
- Clarification des limites prises en charge pour les plugins de fournisseurs Brave, Firecrawl et DeepInfra. [#101425](https://github.com/openclaw/openclaw/pull/101425) Merci à @vincentkoc.
- Conservation en privé des mécanismes internes de diffusion en continu et de catalogue d’OpenCode Go, afin d’offrir aux développeurs d’extensions des limites d’intégration plus claires. [#101440](https://github.com/openclaw/openclaw/pull/101440) Merci à @vincentkoc.
- Nettoyage des définitions privées des plugins OpenRouter et SMS afin d’améliorer la précision de l’API interne. [#101452](https://github.com/openclaw/openclaw/pull/101452) Merci à @vincentkoc.
- Possibilité pour les responsables des versions de valider un candidat exact à la version stable étendue avant la création de sa balise finale. [#101466](https://github.com/openclaw/openclaw/pull/101466) Merci à @kevinslin.
- Suppression d’un ancien chemin de nettoyage du cache Android, ne laissant qu’un modèle de responsabilité plus clair. [#101470](https://github.com/openclaw/openclaw/pull/101470) Merci à @vincentkoc.
- Réduction de la surface privée du SDK de mémoire et amélioration de la précision des rapports de maintenance. [#101508](https://github.com/openclaw/openclaw/pull/101508) Merci à @vincentkoc.
- Stabilisation de la couverture de reconnexion à un Gateway enregistré sur Android afin de réduire les échecs intermittents de validation. [#101519](https://github.com/openclaw/openclaw/pull/101519)
- Réduction du code interne de délai d’expiration d’exécution sans modifier le comportement des délais d’expiration. [#101523](https://github.com/openclaw/openclaw/pull/101523) Merci à @vincentkoc.
- Suppression des surfaces de maintenance obsolètes de l’interface de contrôle, tout en préservant le comportement visible. [#101549](https://github.com/openclaw/openclaw/pull/101549) Merci à @vincentkoc.
- Ajout d’une couverture de l’historique des versions pour le correctif publié de l’invite de titre des fils Discord. [#101566](https://github.com/openclaw/openclaw/pull/101566) Merci à @alix-007.
- Simplification de la surface privée du SDK de mémoire par la suppression de couches à usage unique et d’interfaces inutilisées. [#101568](https://github.com/openclaw/openclaw/pull/101568) Merci à @vincentkoc.
- Contribution au correctif qui préserve la lisibilité du texte d’approbation des plugins lorsque des émojis apparaissent près des limites de longueur. [#101579](https://github.com/openclaw/openclaw/pull/101579) Merci à @wm0018.
- Réduction des interfaces internes de mémoire inutilisées, facilitant la maintenance de ce code sans modifier le comportement utilisateur. [#101583](https://github.com/openclaw/openclaw/pull/101583) Merci à @vincentkoc.
- Simplification du code interne Windows de lancement de processus pour les fonctionnalités de mémoire, sans modifier leur fonctionnement. [#101594](https://github.com/openclaw/openclaw/pull/101594) Merci à @vincentkoc.
- Réduction des interfaces internes de mémoire inutilisées afin d’alléger la maintenance tout en préservant le comportement existant. [#101604](https://github.com/openclaw/openclaw/pull/101604) Merci à @vincentkoc.
- Regroupement du code inutilisé et dupliqué de l’interface de contrôle afin d’améliorer sa maintenabilité, sans modification visuelle prévue. [#101632](https://github.com/openclaw/openclaw/pull/101632) Merci à @vincentkoc.
- Regroupement des utilitaires dupliqués de l’interface de contrôle afin de réduire le nombre de chemins à maintenir synchronisés lors de futures modifications. [#101647](https://github.com/openclaw/openclaw/pull/101647) Merci à @vincentkoc.
- Clarification des limites internes dans le traitement des réponses et les plugins intégrés, sans modifier le comportement d’exécution. [#101666](https://github.com/openclaw/openclaw/pull/101666) Merci à @vincentkoc.
- Suppression d’écrans et de traductions Android remplacés, réduisant le travail de maintenance sans modifier les parcours actifs de l’application. [#101680](https://github.com/openclaw/openclaw/pull/101680) Merci à @vincentkoc.
- Mise à jour des tests de discussion de l’interface de contrôle afin de refléter le comportement actuel des avatars et de réduire les hypothèses de test obsolètes. [#101682](https://github.com/openclaw/openclaw/pull/101682) Merci à @shakkernerd.
- Préparation de la gestion de l’historique des discussions pour de futures modifications du stockage, tout en préservant le comportement actuel des messages et des transcriptions. [#101688](https://github.com/openclaw/openclaw/pull/101688) Merci à @jalehman.
- Rétablissement d’une validation fiable des traductions Android après la suppression d’une chaîne obsolète de l’application. [#101689](https://github.com/openclaw/openclaw/pull/101689)
- Préparation du branchement des conversations pour de futures modifications du stockage, sans changer la manière dont les sessions parentes sont copiées. [#101699](https://github.com/openclaw/openclaw/pull/101699) Merci à @jalehman.
- Réduction des interfaces internes accidentelles dans le cœur, les plugins et l’interface de contrôle afin de simplifier la maintenance continue. [#101701](https://github.com/openclaw/openclaw/pull/101701) Merci à @vincentkoc.
- Renforcement des vérifications de compatibilité de l’intégration Codex intégrée afin de détecter les incohérences de requêtes avant la publication. [#101726](https://github.com/openclaw/openclaw/pull/101726) Merci à @vincentkoc.
- Empêchement de l’apparition de détails d’implémentation privés comme points d’intégration pris en charge, améliorant ainsi la maintenabilité du code. [#101731](https://github.com/openclaw/openclaw/pull/101731) Merci à @vincentkoc.
- Extension de la couverture des vérifications préalables à la publication afin que les paquets de plugins officiels puissent être compilés et inspectés avant une version npm stable étendue. [#101757](https://github.com/openclaw/openclaw/pull/101757) Merci à @kevinslin.
- Réduction des déclarations internes inutilisées dans le cœur, les plugins et l’interface de contrôle, sans modifier le comportement du produit. [#101758](https://github.com/openclaw/openclaw/pull/101758) Merci à @vincentkoc.
- Rétablissement de la validation des traductions de l’interface de contrôle pour l’interface d’approbation native existante. [#101771](https://github.com/openclaw/openclaw/pull/101771)
- Réduction des limites du code interne afin que les outils de maintenance puissent identifier plus précisément le code inutilisé. [#101831](https://github.com/openclaw/openclaw/pull/101831) Merci à @vincentkoc.
- Ajout d’une identification cohérente d’OpenClaw aux requêtes envoyées par l’intermédiaire de l’API Google Gemini officielle. [#101834](https://github.com/openclaw/openclaw/pull/101834) Merci à @vishal-dharm.
- Nettoyage des déclarations internes inutilisées dans l’interface utilisateur et les outils de maintenance afin de clarifier la responsabilité du code. [#101858](https://github.com/openclaw/openclaw/pull/101858) Merci à @vincentkoc.
- Réduction des interfaces internes accidentelles dans les extensions intégrées, sans modifier le comportement des plugins. [#101860](https://github.com/openclaw/openclaw/pull/101860) Merci à @vincentkoc.
- Resserrement des limites internes du cœur afin de réduire le bruit lié au code mort et de simplifier la maintenance future. [#101869](https://github.com/openclaw/openclaw/pull/101869) Merci à @vincentkoc.
- Simplification des interfaces internes de test et d’outillage, réduisant le bruit lors de la maintenance et des recherches dans le code. [#101875](https://github.com/openclaw/openclaw/pull/101875) Merci à @vincentkoc.
- Clarification des utilitaires internes privés, réduisant le risque de dépendances accidentelles pendant la maintenance. [#101886](https://github.com/openclaw/openclaw/pull/101886) Merci à @vincentkoc.
- Simplification de la surface privée des outils de validation Parallels sans modifier leur comportement. [#101889](https://github.com/openclaw/openclaw/pull/101889) Merci à @vincentkoc.
- Réduction des interfaces inutiles des scripts internes afin de faciliter la compréhension et la maintenance de l’automatisation du dépôt. [#101892](https://github.com/openclaw/openclaw/pull/101892) Merci à @vincentkoc.
- Réduction des mécanismes internes de l’interface de contrôle afin d’améliorer l’analyse du code mort sans modifier l’interface présentée aux utilisateurs. [#101894](https://github.com/openclaw/openclaw/pull/101894) Merci à @vincentkoc.
- Amélioration de la portabilité des tests de plugins dans les environnements courants des développeurs et des services hébergés. [#101896](https://github.com/openclaw/openclaw/pull/101896)
- Clarification de la surface prise en charge par le plugin de navigateur en conservant les détails d’implémentation privés. [#101898](https://github.com/openclaw/openclaw/pull/101898) Merci à @vincentkoc.
- Clarification des limites du plugin Microsoft Teams en conservant en interne les détails d’implémentation privés. [#101903](https://github.com/openclaw/openclaw/pull/101903) Merci à @vincentkoc.
- Simplification des interfaces internes des outils de publication et de validation tout en préservant les commandes existantes. [#101904](https://github.com/openclaw/openclaw/pull/101904) Merci à @vincentkoc.
- Réduction des interfaces internes des fournisseurs d’IA sans modifier leur comportement ni les points d’entrée pris en charge. [#101907](https://github.com/openclaw/openclaw/pull/101907) Merci à @vincentkoc.
- Conservation en privé des détails d’implémentation de Canvas afin que sa surface prise en charge pour les développeurs reste claire. [#101915](https://github.com/openclaw/openclaw/pull/101915) Merci à @vincentkoc.
- Réduction des types internes inutilisés dans l’automatisation du dépôt, améliorant la maintenabilité sans modifier les commandes. [#101917](https://github.com/openclaw/openclaw/pull/101917) Merci à @vincentkoc.
- Clarification des limites internes des plugins ClickClack et Logbook sans modifier leur comportement. [#101922](https://github.com/openclaw/openclaw/pull/101922) Merci à @vincentkoc.
- Conservation en privé des détails d’implémentation d’OC Path tout en préservant ses commandes et son comportement de modification des fichiers. [#101925](https://github.com/openclaw/openclaw/pull/101925) Merci à @vincentkoc.
- Réduction des interfaces internes inutilisées de Memory Wiki afin de clarifier la maintenance future et les vérifications du code mort. [#101931](https://github.com/openclaw/openclaw/pull/101931) Merci à @vincentkoc.
- Clarification des limites internes du plugin iMessage sans modifier ses capacités ni son comportement. [#101936](https://github.com/openclaw/openclaw/pull/101936) Merci à @vincentkoc.
- Réduction des interfaces internes de terminal dans le Gateway tout en préservant le comportement existant du terminal. [#101941](https://github.com/openclaw/openclaw/pull/101941) Merci à @vincentkoc.
- Réduction des interfaces internes accidentelles dans le plugin Discord sans modifier le comportement de la messagerie ni de la voix. [#101945](https://github.com/openclaw/openclaw/pull/101945) Merci à @vincentkoc.
- Clarification des détails privés de l’intégration Feishu, facilitant la maintenance du code. [#101949](https://github.com/openclaw/openclaw/pull/101949) Merci à @vincentkoc.
- Réduction des mécanismes internes de l’intégration Matrix sans modifier le comportement utilisateur ni la configuration documentée. [#101954](https://github.com/openclaw/openclaw/pull/101954) Merci à @vincentkoc.
- Clarification de la surface de types prise en charge par l’intégration WhatsApp tout en préservant le comportement de la messagerie. [#101959](https://github.com/openclaw/openclaw/pull/101959) Merci à @vincentkoc.
- Réduction des interfaces internes accidentelles dans l’extension Policy sans modifier ses vérifications ni ses rapports. [#101963](https://github.com/openclaw/openclaw/pull/101963) Merci à @vincentkoc.
- Renforcement des limites de memory-core afin de réduire les risques de maintenance sans modifier le comportement du stockage ni de la recherche. [#101969](https://github.com/openclaw/openclaw/pull/101969) Merci à @vincentkoc.
- Simplification des mécanismes internes de QA Matrix tout en préservant le workflow de validation existant. [#101974](https://github.com/openclaw/openclaw/pull/101974) Merci à @vincentkoc.
- Réduction de la portée des mécanismes internes des rapports de confiance QA afin de maintenir clairement délimitée la surface de maintenance prise en charge. [#101980](https://github.com/openclaw/openclaw/pull/101980) Merci à @vincentkoc.
- Maintien de la confidentialité des mécanismes internes des résumés de preuves QA sans modifier le comportement de validation. [#101987](https://github.com/openclaw/openclaw/pull/101987) Merci à @vincentkoc.
- Réduction des types utilitaires QA inutilisés afin de décourager toute dépendance à des détails internes non pris en charge. [#101990](https://github.com/openclaw/openclaw/pull/101990) Merci à @vincentkoc.
- Clarification de la surface prise en charge de QA Lab en maintenant confidentiels les détails de coordination internes. [#102005](https://github.com/openclaw/openclaw/pull/102005) Merci à @vincentkoc.
- Réduction de la portée des mécanismes internes de l’intégration Google Meet sans modifier la configuration, l’authentification ni le comportement des appels. [#102010](https://github.com/openclaw/openclaw/pull/102010) Merci à @vincentkoc.
- Clarification des limites internes des plugins Diffs et File Transfer sans modifier leur comportement. [#102021](https://github.com/openclaw/openclaw/pull/102021) Merci à @vincentkoc.
- Maintien de la confidentialité des détails d’implémentation de Google Chat tout en préservant l’ensemble du comportement d’intégration existant. [#102029](https://github.com/openclaw/openclaw/pull/102029) Merci à @vincentkoc.
- Réduction de la portée des mécanismes internes de l’intégration LINE sans modifier les messages, les webhooks ni la configuration. [#102037](https://github.com/openclaw/openclaw/pull/102037) Merci à @vincentkoc.
- Clarification des limites de l’intégration Mattermost en maintenant confidentiels les détails propres à l’implémentation. [#102040](https://github.com/openclaw/openclaw/pull/102040) Merci à @vincentkoc.
- Réduction des interfaces internes accidentelles dans le plugin Signal sans modifier le fonctionnement de Signal. [#102042](https://github.com/openclaw/openclaw/pull/102042) Merci à @vincentkoc.
- Réduction de la portée des mécanismes internes du plugin Slack tout en préservant le comportement de la messagerie et de la distribution. [#102044](https://github.com/openclaw/openclaw/pull/102044) Merci à @vincentkoc.
- Clarification de la surface d’intégration prise en charge par QQBot sans modifier le comportement d’exécution. [#102048](https://github.com/openclaw/openclaw/pull/102048) Merci à @vincentkoc.
- Maintien de la confidentialité des détails d’implémentation des appels vocaux tout en préservant le comportement existant du plugin. [#102059](https://github.com/openclaw/openclaw/pull/102059) Merci à @vincentkoc.
- Réduction de la portée des mécanismes internes de l’intégration Zalo sans modifier la messagerie, les webhooks, les médias ni la configuration. [#102065](https://github.com/openclaw/openclaw/pull/102065) Merci à @vincentkoc.
- Amélioration de la résilience de la validation distante lorsqu’un environnement de validation nouvellement démarré ou occupé répond lentement. [#102159](https://github.com/openclaw/openclaw/pull/102159)
- Suppression du blocage des contributions sans rapport par une QA automatisée peu fiable, tout en maintenant la disponibilité d’une validation manuelle ciblée. [#102256](https://github.com/openclaw/openclaw/pull/102256) Merci à @romneyda.
- Réduction des faux échecs de validation des versions après des tours OpenAI réussis utilisant uniquement des outils, tout en maintenant un traitement strict des erreurs réelles. [#102600](https://github.com/openclaw/openclaw/pull/102600)
- Renforcement de la couverture de l’autorisation Telegram en vérifiant que les commandes refusées reçoivent la réponse attendue. [#102732](https://github.com/openclaw/openclaw/pull/102732)
- Mise à jour de la validation et des recommandations du fournisseur Meta pour le modèle Muse Spark 1.1 déployé. [#103163](https://github.com/openclaw/openclaw/pull/103163)
- Amélioration de la fiabilité et de la sécurité des vérifications de traduction de la documentation. [#103244](https://github.com/openclaw/openclaw/pull/103244)
- Rétablissement de la fiabilité de la validation des versions du plugin Codex après le déplacement de ses enregistrements de connexion vers un nouveau système de stockage. [#103467](https://github.com/openclaw/openclaw/pull/103467) Merci à @vincentkoc.
- Renforcement de la validation du programme d’installation afin de rejeter rapidement les paquets incomplets auxquels manque l’environnement d’exécution d’IA intégré. [#103556](https://github.com/openclaw/openclaw/pull/103556) Merci à @vincentkoc.
- Garantie que les vérifications de mise à jour des versions incluent et vérifient l’environnement d’exécution d’IA intégré avant d’accepter un paquet candidat. [#103564](https://github.com/openclaw/openclaw/pull/103564)
- Amélioration de la précision de la QA afin que les scénarios qui réussissent après une nouvelle tentative ne soient pas signalés comme des échecs définitifs. [#103635](https://github.com/openclaw/openclaw/pull/103635)
- Amélioration de la précision de la validation de l’utilisation des jetons en excluant les scénarios qui, intentionnellement, ne produisent jamais de réponse de l’assistant. [#103650](https://github.com/openclaw/openclaw/pull/103650)
- Rétablissement de la fiabilité des exécutions manuelles de la validation ciblée des versions avec des fournisseurs en conditions réelles. [#103654](https://github.com/openclaw/openclaw/pull/103654)
- Mise à jour de la validation du redémarrage du Gateway afin de reconnaître les résultats actuels de redémarrage réussi et d’annulation. [#103681](https://github.com/openclaw/openclaw/pull/103681)
- Renforcement de la validation de l’accès au Web en exigeant une récupération réelle plutôt que la simple détection de la capacité. [#103685](https://github.com/openclaw/openclaw/pull/103685)
- Modification de la validation du chat Web afin qu’elle attende l’enregistrement des réponses et des données d’utilisation avant de déclarer la réussite. [#103718](https://github.com/openclaw/openclaw/pull/103718)
- Protection des approbations de version contre toute modification silencieuse lors d’une nouvelle exécution de la validation, en préservant exactement les preuves examinées par les opérateurs. [#103906](https://github.com/openclaw/openclaw/pull/103906)
- Rétablissement de la validation de la documentation chinoise pour les pages de référence du fournisseur Meta et des plugins. [#103923](https://github.com/openclaw/openclaw/pull/103923)
- Possibilité pour les responsables de version de réutiliser une validation fiable pour un candidat inchangé, tout en continuant à rejeter les preuves obsolètes. [#104162](https://github.com/openclaw/openclaw/pull/104162) Merci à @vincentkoc.
- Possibilité d’exécuter la QA basée sur les paquets entre l’incrémentation d’une version et la finalisation des notes de version, sans affaiblir les vérifications de publication. [#104186](https://github.com/openclaw/openclaw/pull/104186)
- Maintien de détails d’erreur vocale Discord limités et lisibles lorsque les échecs contiennent du texte multioctet. [#104684](https://github.com/openclaw/openclaw/pull/104684) Merci à @qingminglong.
- Rétroportage de la protection contre la perte des nouvelles sorties d’outils lorsque les longues conversations font l’objet d’une Compaction. [#104702](https://github.com/openclaw/openclaw/pull/104702) Merci à @acosx et @solvely-colin.
- Alignement de la validation des préversions des plugins sur les valeurs par défaut actuelles du modèle GPT-5.6. [#104722](https://github.com/openclaw/openclaw/pull/104722)
- Mise à jour de la validation des fournisseurs en conditions réelles afin d’utiliser par défaut le modèle GPT-5.6 prévu pour juillet. [#104750](https://github.com/openclaw/openclaw/pull/104750)
- Rétroportage de correctifs pour la récupération au démarrage, la reconnexion de Discord, la lisibilité des messages de refus et l’allègement de la liste des plugins. [#104794](https://github.com/openclaw/openclaw/pull/104794) Merci à @wuqxuan.
- Réduction des faux échecs de validation des versions GPT-5.6 en réessayant un petit ensemble de réponses de validation incorrectes. [#104939](https://github.com/openclaw/openclaw/pull/104939)
- Rétablissement de l’artefact de paquet autonome nécessaire à la validation des versions avec Parallels. [#104975](https://github.com/openclaw/openclaw/pull/104975)
- Réduction des faux échecs de validation du navigateur de l’interface de contrôle liés au comportement de survol des horodatages. [#105133](https://github.com/openclaw/openclaw/pull/105133)
- Amélioration de la fiabilité de la validation des versions Telegram avec des sélections de modèles provenant d’anciens candidats compatibles. [#105401](https://github.com/openclaw/openclaw/pull/105401)
- Préservation d’une couverture QA reproductible de Codex pour le changement de modèle et la génération d’images. [#105444](https://github.com/openclaw/openclaw/pull/105444)
- Maintien entièrement en local de la QA hors ligne de l’isolation de la mémoire, empêchant les appels accidentels au service d’intégration vectorielle en conditions réelles. [#105488](https://github.com/openclaw/openclaw/pull/105488)
- Amélioration de la validation du changement de modèle Codex afin que la Compaction des conversations ne provoque plus de faux échec. [#105493](https://github.com/openclaw/openclaw/pull/105493)
- Amélioration de la précision des résultats de comparaison de génération d’images sans masquer les résultats réellement manquants ou ambigus. [#105500](https://github.com/openclaw/openclaw/pull/105500)

</Accordion>
