Skip to Content
BlogMises à jour des fonctionnalités09-03 Mise à jour produit

Qwen Code Hebdo : choisissez comment l'IA vous parle, le bot DingTalk envoie des fichiers et le Web Shell gagne un terminal intégré

Qwen Team
2026-09-03

Qwen Code publie cette semaine deux versions stables — v0.22.3 et v0.23.0 — avec plus de 320 PR fusionnées.

Le style de réponse, c’est vous qui le choisissez. Quatre styles de sortie intégrés — Concise (concis), Proactive (proactif), Explanatory (explicatif), Learning (pédagogique) — à choisir librement, et modifiables à tout moment en pleine conversation.

Le bot DingTalk envoie des fichiers. Les rapports et documents rédigés par l’IA partent en pièce jointe directement dans la conversation : vous les ouvrez depuis votre téléphone.

Le Web Shell intègre un terminal. Vous pouvez lancer des commandes juste à côté de la conversation ; chaque onglet est indépendant et travaille pour son compte.

✨ Nouvelles fonctionnalités

Style de sortie : choisissez comment l’IA vous parle

Chacun attend autre chose des réponses de l’IA : certains veulent un résultat direct sans blabla, d’autres préfèrent que l’IA explique en travaillant, voire qu’elle leur apprenne. Cette semaine, le style de sortie devient configurable, avec quatre styles intégrés :

  • Concise (concis) : la conclusion d’abord, sans préambule ni récit du processus
  • Proactive (proactif) : démarre directement ; en cas de doute, énonce ses hypothèses et continue au lieu de vous redemander
  • Explanatory (explicatif) : vous explique le code concerné pendant qu’il le modifie
  • Learning (pédagogique) : travaille tout en vous guidant, et vous laisse prendre vous-même certaines petites décisions

Trois façons de le choisir : définissez general.outputStyle dans settings.json pour un effet permanent, passez --output-style au lancement pour une seule session, ou utilisez /output-style en pleine conversation pour basculer immédiatement — la réponse suivante adopte le nouveau style.

Ce que vous pouvez en faire :

  • Vous ne voulez que le résultat ? Passez en Concise, l’IA va droit à la conclusion
  • Vous voulez apprendre ? Passez en Explanatory ou Learning, l’IA explique pendant qu’elle modifie
  • Envie de changer de style en cours de conversation ? /output-style bascule à tout moment

Voir les PR #9565 , #10283 , #10683 

Écran de sélection du style de sortie

Goal : l’IA rédige l’objectif, vous n’avez qu’à confirmer

La semaine dernière, /goal-draft permettait à l’IA de rédiger l’objectif pour vous. Cette semaine, une fois la rédaction terminée, l’IA vous présente l’objectif complet dans une boîte de confirmation, et dès votre confirmation le Goal démarre immédiatement.

Pour les tâches qui demandent plusieurs tours et dont les critères de réussite sont clairs, l’IA juge elle-même que le travail mérite d’être suivi jusqu’au bout : elle rédige l’objectif et vous demande confirmation. Si ce comportement ne vous plaît pas, vous pouvez le désactiver entièrement dans les paramètres. La fonction est disponible dans les sessions interactives du terminal ; la prise en charge dans le Web Shell arrive bientôt.

La semaine dernière, le Goal a gagné un budget token ; cette semaine, vous en décidez le montant : modifiez model.goalTokenBudget dans les paramètres, à la hausse comme à la baisse — mettez -1 pour n’avoir aucune limite.

Ce que vous pouvez en faire :

  • L’IA rédige l’objectif ; vous confirmez, elle s’y met
  • Pour les tâches longues aux critères de réussite clairs, l’IA propose d’elle-même de suivre le travail jusqu’au bout
  • Le budget se règle librement, à la hausse comme à la baisse

Voir les PR #10171 , #10543 

Boîte de confirmation de Goal

Review de code : les tours de correction ne revoient que les changements, la profondeur est mémorisée

Les tours de correction ne revoient que les changements. Dans la boucle où l’IA review, corrige, puis re-review, chaque tour suivant n’examine que les fichiers modifiés : ce qui a déjà été revu et n’a pas bougé garde la conclusion du tour précédent. Moins de tokens, moins de temps.

La profondeur de review est mémorisée. Une fois que vous avez explicitement fixé la profondeur avec --effort, il suffit de lancer /review dans le même projet pour qu’elle soit réutilisée.

Les exécutions longues donnent des nouvelles. Quand un tour de correction automatique s’éternise, le commentaire de statut sur la page de la PR se met à jour environ toutes les 10 minutes avec la durée écoulée et l’heure de la dernière activité : vous savez d’un coup d’œil si ça travaille.

Les problèmes récurrents sont signalés. Si un problème grave réapparaît dans le même fichier après correction, la conclusion de la review marque explicitement cette chaîne de récurrences et vous invite à changer d’approche.

Ce que vous pouvez en faire :

  • Vous modifiez localement, vous reviewez à chaque version : seuls les fichiers modifiés sont re-revus, et même après plusieurs tours la consommation de tokens reste faible
  • Un /review --effort high dans un projet, et ensuite un simple /review reprend la même profondeur
  • Une correction automatique laissée plusieurs heures sur une PR : le commentaire de statut se met à jour toutes les 10 minutes, impossible de louper si ça tourne toujours

Voir les PR #9659 , #9883 , #9771 , #10010 

Le bot DingTalk envoie des fichiers

Le bot Channel dans DingTalk ne savait auparavant envoyer que du texte et des images : les rapports et documents rédigés par l’IA devaient être collés dans le message, et pour récupérer le fichier lui-même il fallait revenir sur l’ordinateur. Désormais, le bot envoie les fichiers en pièce jointe : l’IA termine un rapport et l’envoie directement dans la conversation DingTalk, où vous pouvez l’ouvrir et le télécharger depuis votre téléphone. Quand le bot vous écrit de sa propre initiative, il peut aussi joindre des fichiers.

Ce que vous pouvez en faire :

  • Les rapports et documents rédigés par l’IA partent en pièce jointe directement dans DingTalk
  • Vous les ouvrez, les lisez et les téléchargez depuis votre téléphone
  • Le bot peut aussi joindre des fichiers quand il fait un compte rendu spontané

Voir le PR #10893 

Le bot envoie un fichier en pièce jointe dans une conversation DingTalk

Web Shell : terminal intégré, gestion des sessions et du poste de travail plus complète

Un terminal juste à côté de la conversation. Quand vous travaillez dans le Web Shell, vous avez souvent envie de lancer quelques commandes vous-même : démarrer un serveur pour vérifier le rendu, confirmer un résultat de build. Désormais, le panneau de droite permet d’ouvrir un terminal et de lancer vos commandes juste à côté de la conversation. Chaque onglet est un terminal indépendant, ouvert dans le répertoire de l’espace de travail courant : un onglet peut faire tourner un service en tâche de fond pendant que vous tapez vos commandes dans un autre, sans se gêner.

Terminal intégré du Web Shell

Des tâches même sans projet. La création de tâche permet désormais de créer une session qui n’appartient à aucun espace de travail : poser une question rapide, traiter quelque chose sans rapport avec un projet précis. Ces sessions ont leur propre liste, avec renommage, export et archivage.

Retrouver une session par son contenu. Un titre de session oublié ? Cherchez directement un passage de la discussion d’alors : les sessions correspondantes s’affichent avec un extrait du message trouvé.

Les tâches planifiées ont un contexte propre. Quand une tâche planifiée s’exécute plusieurs fois, vous pouvez créer une nouvelle session à chaque exécution : chaque contexte reste indépendant. Les sessions issues d’une même tâche sont automatiquement regroupées, et la liste reste claire.

L’état de tous les espaces de travail d’un coup d’œil. Le nouveau panneau de vue d’ensemble liste tous les espaces de travail sur une page : combien de sessions tournent, l’état des connexions MCP, la branche courante, la présence de modifications non commitées — et chaque ligne permet de créer directement une tâche.

Panneau de vue d'ensemble des espaces de travail

La vue d’ensemble des sessions gagne en confort. La page devient un tableau avec tri, filtres et pagination ; quand la fenêtre est étroite, le défilement horizontal laisse les colonnes clés fixes. L’entrée se trouve parmi les petites icônes en bas de la barre latérale : survolez la grille, l’infobulle indique « Vue d’ensemble des sessions ».

L’appairage du téléphone passe en haut à droite. Une petite icône de QR code en haut à droite de la conversation affiche le code d’appairage : scannez-le avec votre téléphone pour vous connecter à cette session sur l’ordinateur et confier des tâches à l’IA depuis votre mobile (la fonction s’appelle Local Control). Si la fonction n’est pas activée, un clic vous emmène directement sur la page de réglages pour l’activer.

L’état de Git avant d’agir. Update Project, Commit et Push affichent désormais une indication d’état : combien de commits de retard ou d’avance, combien de modifications non commitées. Si vous mettez à jour le projet avec des modifications en attente, vous pouvez les mettre de côté avant la mise à jour, ou les abandonner.

Ce que vous pouvez en faire :

  • Lancer des commandes directement à côté de la conversation
  • Chercher un passage discuté pour retrouver une ancienne session
  • L’état de tous les espaces de travail d’un seul coup d’œil

Voir les PR #9984 , #10514 , #10612 , #10233 , #10611 , #10589 , #10115 , #10432 , #10397 , #10390 

📊 Autres nouvelles fonctionnalités

Les workflows se pilotent en cours de route. Vous pouvez consulter la progression d’un workflow en cours, le mettre en pause, le reprendre, l’annuler ou le relancer ; l’annulation prend effet immédiatement. Voir les PR #10411 , #10468 

La mémoire se range par projet ou en personnel. Quand vous demandez à l’IA de retenir quelque chose, vous pouvez choisir entre le projet courant et votre mémoire globale personnelle ; les deux côtés ont une frontière stricte et ne se mélangent jamais. Voir le PR #9895 

Le lien entre sessions et PR se complète. La semaine dernière, les PR créées depuis le panneau Git du Web Shell étaient rattachées à leur session ; cette semaine, plusieurs manques sont comblés : les statuts de PR ont des icônes colorées — vert pour en cours, violet pour fusionnée, rouge pour fermée ; une recherche par numéro d’issue retrouve la session correspondante ; et une PR créée par l’IA avec gh pr create en pleine conversation est également enregistrée. Voir les PR #9729 , #10258 , #10425 , #9739 

La mémoire externe Mem0 est officiellement disponible. Pour brancher Qwen Code sur le service de mémoire Mem0, installez le paquet d’extension officiel, configurez, et c’est prêt. Voir les PR #10653 , #10634 

Les sessions d’une même machine s’écrivent par leur nom. Quand plusieurs sessions se répartissent le travail, une session peut en retrouver une autre par son nom et lui envoyer directement un message. Voir le PR #10158 

Les emojis de statut des tâches sont personnalisables. Dans le Channel DingTalk, vous pouvez remplacer les emojis affichés pendant et après l’exécution d’une tâche par ceux de votre choix. Voir le PR #10610 

La configuration des fournisseurs prend effet immédiatement. Après modification de modelProviders dans settings.json, la session en cours utilise la nouvelle configuration sans redémarrage. Voir les PR #10582 , #10269 

👏 Améliorations de l’expérience

Le champ de saisie du Web Shell a un menu « + » unifié. Pièces jointes, fichiers, extensions, services MCP, skills : tout est regroupé dedans, un clic sur le plus pour ajouter. Voir le PR #10379 

Le gras s’affiche à nouveau, les noms de session sont complets. Le texte en gras dans les réponses de l’IA est de nouveau rendu, et les noms de session de la barre latérale s’affichent en entier. Voir le PR #10157 

Tous les résumés d’outils sont repliables. Chaque ligne de résumé d’outil peut se replier, les sous-outils restent repliés, et le contenu des MCP Apps est affiché séparément des autres agrégations. Voir le PR #10231 

L’erreur du terminal se copie en un clic. Quand une erreur survient dans le terminal du Web Shell, un clic suffit pour copier le message d’erreur. Voir le PR #10001 

L’objectif est visible dans la liste de reprise. Dans la liste et la recherche de reprise de session, les sessions Goal affichent directement leur objectif. Voir le PR #10295 

Les longs tours restent dépliés. Les longs tours chargés par pagination restent dépliés ; à vous de les replier quand vous avez fini de lire. Voir le PR #10086 

Plus de façons d’installer des extensions. L’installation depuis un chemin local est prise en charge, tout comme l’installation depuis un dépôt Git d’entreprise. Voir les PR #10131 , #10156 

Les artefacts se mettent à jour en direct. Quand le contenu d’un artefact change, l’heure et la taille se mettent à jour immédiatement ; l’aperçu montre toujours la dernière version. Voir le PR #9929 

🔧 Corrections importantes

CorrectionImpact pour vousPR
La saisie chinoise sous Windows est enfin lisibleDans Windows Terminal avec Microsoft Pinyin, le texte candidat n’est plus recouvert par le curseur#9803 
L’écran blanc du Web Shell a désormais un messageQuand le chargement de la page échoue, un message d’erreur récupérable s’affiche#10215 
Les requêtes trop grosses sont compressées et retentées automatiquementQuand la passerelle renvoie 413, le contexte est automatiquement compressé et la requête retentée ; la session reste utilisable#10408 
LM Studio peut à nouveau converser normalementCorrection d’un problème de compatibilité des paramètres du modèle ; LM Studio peut démarrer de nouvelles conversations#10275 
Le mode AUTO verrouille les écritures hors espace de travailToute écriture d’un fichier hors de l’espace de travail exige votre confirmation manuelle#8744 
Le streaming des modèles Claude a une protection de timeoutQuand la sortie se fige, elle est interrompue par timeout#9945 
DeepSeek utilise l’échantillonnage par défaut du modèleCorrection du forçage à zéro de la température ; la sortie reflète mieux le comportement du modèle#9879 
Les connexions MCP sont plus stablesCorrection des blocages de connexion causés par la détection HTTP#10091 
La prise en charge des modèles de vision s’élargitqwen3.8-flash et qwen3.8-plus traitent nativement images et vidéos ; glm-4.6v et d’autres modèles sont automatiquement reconnus comme modèles de vision#10195 , #10278 
Le contrôle de réflexion de qwen3.8-max est stableLe réglage d’intensité de réflexion reste synchronisé avant et après l’exécution de la session#10244 
La réflexion mixte de Qwen3 s’affiche normalementLes réponses mélangeant deux formats de réflexion provoquaient des erreurs ou un affichage cassé ; réflexion et réponse s’affichent désormais correctement#9607 
Une réinstallation sous Windows ne perd plus les skillsL’installation des skills sauvegarde désormais l’existant avant de le remplacer#10189 
Les sessions épinglées restent dans leur groupeLes sessions épinglées continuent de s’afficher dans leur groupe d’origine#10416 
Les cartes de tâches DingTalk se rétablissent après une coupure réseauAprès une coupure puis un retour du réseau, la carte de tâche ne reste plus bloquée sur « en cours » ; un téléphone qui se reconnecte voit la dernière progression#10357 
L’ordre des images multiples sous DingTalk est préservéLes images multiples d’un message riche sont transmises à l’IA dans l’ordre#9922 
Le nom de session survit à /clearLes sessions renommées manuellement conservent leur nom après le vidage#9260 

👥 Contributeurs

ContributeurContributionsPR de référence
@yiliang114 Une série de corrections de session et de stabilité : retry automatique par compression après 413, protection de timeout du streaming des modèles Claude, mise à jour à chaud des fournisseurs, prise en charge de la réflexion mixte de Qwen3, connexion du plugin VS Code au Web Shell#10408 , #9945 , #10582 , #9607 
@wenshao Renforcement de tout le système de review, panneaux du poste de travail et des sessions du Web Shell, recherche de sessions par issue liée aux PR, indication d’état du sélecteur de branche#10589 , #10612 , #10425 , #10397 
@qqqys Questions posées en pleine tâche via Channel et envoi de fichiers DingTalk, entrée du style de sortie, auto-proposition de Goal et réglage du budget, sessions de tâches planifiées#10713 , #10893 , #10683 , #10171 
@doudouOUC Tâches nommées de Channel et contrôle de parallélisme, chat indépendant du Web Shell, API de sessions daemon, extension Mem0#10198 , #10574 , #10514 , #10653 
@chiga0 Migration vers le moteur de rendu terminal OpenTUI, gestion du timeout d’initialisation des Channel#10134 , #10739 , #10404 
@qwen-code-dev-bot Corrections de stabilité du CI et de fiabilité des tests#10329 , #10572 , #10443 
@AaronZ345 Plusieurs corrections : paramètres d’échantillonnage DeepSeek, restauration du champ de saisie du Web Shell, affichage des erreurs du SDK Java#9879 , #10232 , #9924 
@ytahdn Plusieurs améliorations du Web Shell : terminal intégré, tableau de vue d’ensemble des sessions, menu « + » du champ de saisie#9984 , #10115 , #10379 
@LaZzyMan Service vocal qwen-live, renforcement de la stabilité de Computer Use#10367 , #10319 
@callmeYe Gestion des extensions et des skills, correction du contrôle de réflexion de qwen3.8-max, installation d’extensions depuis un dépôt privé#10131 , #10244 , #10156 
@DragonnZhang Affichage du mode d’exécution de l’agent, nettoyage des dépendances du SDK#9955 , #10039 
@harjothkhara Récupération d’écran blanc du Web Shell, stabilité des connexions MCP, détection des doublons de nom de session#10215 , #10091 , #10032 
@dreamWB Snapshots d’artefacts du Web Shell, réglage d’affichage de l’origine des sessions#10747 , #10079 
@tomsen02 Isolation des logs de débogage par session, correction du contrôle de confiance des répertoires#9930 , #10470 
🆕 @bluefateludi 🎉 Première contribution : visibilité de la saisie chinoise sous Windows, contrôle de la portée des commentaires de /review#9803 , #9801 
@destire-mio Clic souris pris en charge dans les onglets de complétion @, nettoyage des éléments de configuration invalides#8395 , #8754 
🆕 @Sumire-no-kai 🎉 Première contribution : désambiguïsation des destinataires de messages inter-sessions, classification des retours de workflow#10083 , #10361 
@xianjianlf2 Distinction des causes d’échec de compression, correction des conflits de démarrage en développement parallèle#9119 , #8456 
@BenGuanRan Transmission ordonnée des images multiples dans les messages riches DingTalk#9922 
@DennisYu07 Ajout des résultats SWE-bench au README#10808 
🆕 @Dmatut7 🎉 Première contribution : complément de documentation sur la rédaction de raisonnement avec preuves#8702 
🆕 @imrehg 🎉 Première contribution : correction de compatibilité des scripts npm#8725 
🆕 @KXHXK 🎉 Première contribution : détection automatique de l’authentification sans clé Vertex AI#9045 
🆕 @liujiayi771 🎉 Première contribution : alignement du curseur matériel du terminal#10417 
🆕 @lwind233 🎉 Première contribution : prise en charge des gros messages dans le SDK Python#9337 
🆕 @MingyaWang 🎉 Première contribution : compatibilité de la visualisation d’images avec d’anciennes versions de sharp#10633 
🆕 @mredbishop 🎉 Première contribution : correction de l’échec de démarrage des conversations LM Studio#10275 
@PratikWayase Le mode AUTO n’approuve plus automatiquement les écritures hors espace de travail#8744 
@rbalachandar Indication de changement de modèle plus claire après la mise à jour d’un fournisseur#9023 
🆕 @shoemoney 🎉 Première contribution : correction de la prise en charge des chemins relatifs dans le Web Shell#9817 
@TianYuan1024 Correction des métriques de test#10735 
@tlysanhuo /review mémorise la profondeur de review#9883 
🆕 @tonydzi 🎉 Première contribution : correction de l’hôte de questionnement en mode stream-json#9414 
🆕 @Wkewen 🎉 Première contribution : bouton de copie des erreurs du terminal dans le Web Shell#10001 
@yu-xin-c Message d’erreur de timeout de streaming plus clair#9896 
@zhou2024NAU Contrôle de sécurité des chemins de capture d’écran sous Windows#9847 
@zjgzx1988 Mise à jour immédiate de l’heure et de la taille des artefacts#9929 
@zjunothing Optimisation du rendu des images en double#8789 

Mise à jour : exécutez npm i @qwen-code/qwen-code@latest -g pour passer à la dernière version.

Si vous avez des questions ou des suggestions, n’hésitez pas à nous les faire part sur GitHub Issues  !

Last updated on