Skip to Content
BlogQwen Code Hebdo : /goal codage autonome, Auto Approval sans confirmation, isolation Worktree
Retour au blog

Qwen Code Hebdo : /goal codage autonome, Auto Approval sans confirmation, isolation Worktree

Qwen Team
2026-05-21

Un signal clair de l’écosystème des agents de codage cette semaine : tout le monde veut que l’agent termine seul, sans surveillance. Claude Code a lancé /goal , Codex a suivi , et OpenAI a publié l’orchestration Symphony  pour maintenir les agents en arrière-plan. « Définir un objectif → lâcher prise → vérifier le résultat » devient le nouveau modèle d’interaction dominant.

Qwen Code publie v0.16.0 cette semaine, avec trois avancées dans la même direction :

  • Exécution autonome — /goal + modèle juge indépendant pour déterminer l’achèvement, avec abandon automatique des objectifs impossibles ;
  • Moins d’interruptions — Auto Approval utilise un classificateur LLM pour évaluer le risque ; les opérations à faible risque passent sans confirmation ;
  • Exécution sécurisée — L’isolation Worktree atteint la Phase C avec persistance de session + trois modes de récupération.

✨ Nouvelles fonctionnalités

/goal : Définir un objectif, l’Agent exécute jusqu’à complétion

Claude Code vient de lancer /goal, et Qwen Code suit — mais avec une couche supplémentaire : un modèle juge indépendant évalue « l’objectif est-il atteint ? » après chaque cycle d’opérations, plutôt que de laisser le modèle d’exécution se juger lui-même.

Entrez /goal "migrer tous les tests de Jest vers Vitest", et l’agent commence à coder de manière autonome. Après chaque cycle d’opérations, le modèle juge vérifie l’état de l’objectif. Quand les conditions d’achèvement sont remplies, il s’arrête automatiquement ; sinon, il continue au cycle suivant. Si le juge détermine que l’objectif est impossible dans le contexte actuel (ex : dépendances manquantes, permissions insuffisantes), il abandonne de manière proactive et explique pourquoi — pas de boucles infinies qui brûlent des tokens.

Ce que vous pouvez faire avec :

  • Migrations à grande échelle, refactoring et autres tâches multi-étapes — définissez l’objectif et laissez l’agent tourner sans confirmation manuelle à chaque cycle
  • Le juge est indépendant du modèle d’exécution, évitant le biais « se déclarer terminé soi-même »
  • Les objectifs impossibles sont abandonnés automatiquement, pas de gaspillage de tokens
  • Support du mode non-interactif et de la sortie d’événements en streaming pour l’intégration CI/CD

Voir PR #4123 , #4230 , #4273 

Auto Approval : Le classificateur LLM approuve automatiquement les opérations à faible risque

Le plus agaçant avec un agent : chaque écriture de fichier, chaque commande shell nécessite de presser Y pour confirmer. Sécurisé, mais la friction d’interruption est intense — surtout quand l’agent exécute /goal de manière autonome et que vous n’êtes même pas à votre bureau.

Le mode Auto Approval utilise un classificateur LLM pour évaluer le niveau de risque de chaque opération. Les actions à faible risque (lecture de fichiers, exécution de tests, petites modifications de fichiers existants) sont auto-approuvées ; les actions à haut risque (suppression de fichiers, exécution de scripts inconnus, modification de configuration) demandent toujours confirmation. Définissez votre politique, et l’agent ne sera pas bloqué pendant l’exécution autonome.

Ce que vous pouvez faire avec :

  • Une fois activé, les opérations à faible risque passent automatiquement — plus besoin d’appuyer Y une par une
  • Combiné avec /goal — l’agent ne cale pas en attente de confirmation pendant les longues tâches autonomes
  • La classification des risques est ajustable ; les scénarios entreprise peuvent resserrer la politique

Voir PR #4151 

Isolation Worktree : L’Agent opère dans un arbre de travail indépendant

La semaine dernière nous avons lancé /branch — isolation au niveau conversation permettant de bifurquer plusieurs chemins d’exploration dans une session. Cette semaine on descend d’un niveau : isolation au niveau fichier.

Qu’est-ce qui vous fait le plus peur quand un agent modifie du code ? Casser la branche principale. Surtout lors de refactoring complexe — l’agent fait plein de modifications et vous réalisez que la direction est mauvaise, puis il faut revert fichier par fichier. /branch résout « comment isoler le contexte de conversation » ; Worktree résout « comment isoler les modifications de code ».

Le support Worktree permet à l’agent d’opérer dans un worktree Git en isolation. Une fois dans un worktree, toutes les modifications de fichiers et exécutions de commandes sont confinées à cet arbre de travail indépendant — la branche principale reste intacte. Satisfait ? Mergez. Pas satisfait ? Jetez.

Cette semaine avance directement à la Phase C : persistance de session worktree, configuration automatique de hooksPath, barre de statut inférieure affichant les infos worktree actuelles, et dialogue de confirmation à la sortie. /resume offre trois modes de récupération — restaurer conversation + code, conversation seulement, ou code seulement.

Ce que vous pouvez faire avec :

  • L’agent fait des modifications expérimentales sans polluer la branche principale
  • Combiné avec /goal + Auto Approval — laissez l’agent accomplir un objectif majeur de manière entièrement autonome dans un environnement isolé
  • Les sessions worktree persistent ; /resume pour restaurer et continuer après la sortie
  • La barre inférieure indique en permanence dans quel worktree vous êtes — pas de confusion

Voir PR #4073 , #4174 

/rewind Récupération de fichiers

/rewind pouvait déjà rembobiner les conversations ; maintenant il peut aussi récupérer les fichiers. Quand vous rembobinez à un point d’opération donné, le contenu des fichiers est restauré à leur état à ce moment. Trois options au rembobinage : « restaurer code et conversation », « conversation seulement » ou « code seulement », avec des statistiques de changements +N -N in M files pour vous aider à décider.

Ce que vous pouvez faire avec :

  • L’agent a modifié 5 fichiers et vous réalisez que l’étape 3 a dévié — /rewind retour avant l’étape 3, les fichiers sont aussi récupérés
  • Pas de git checkout manuel fichier par fichier — une commande fait tout
  • Plus précis que git stash — restauration à l’état exact d’un tour de conversation spécifique
  • En mode IDE, /rewind explique clairement pourquoi il est désactivé au lieu d’échouer silencieusement

Voir PR #4064 , #4122 

Extension VSCode : Modifier les messages envoyés

Envoyé une question avec une description imprécise ? Pas besoin de /rewind + retaper. Modifiez directement ce message envoyé, et l’agent relance depuis le nouveau prompt. Plus d’erreurs quand les snapshots locaux sont perdus — fallback automatique vers la récupération côté serveur.

Ce que vous pouvez faire avec :

  • Votre prompt n’est pas assez précis ? Modifiez le message directement, l’agent régénère depuis le nouveau prompt
  • Une action pour « modifier la question → régénérer » — pas de /rewind manuel nécessaire
  • Les snapshots locaux perdus ne causent pas d’erreurs — fallback automatique vers la récupération serveur

Voir PR #4147 

Amélioration des Hooks : Cycle de vie Todo + Prompt Hook

Le système de hooks ajoute deux nouveaux types d’événements cette semaine :

TodoCreated / TodoCompleted : Déclenchés quand l’agent crée ou complète un élément todo. Vous pouvez auto-notifier, écrire des logs, ou déclencher la CI quand un todo est complété.

Prompt Hook : Nouveau type de hook type: "prompt" qui utilise un LLM pour évaluer l’entrée du hook et retourner une décision. Supporte le placeholder $ARGUMENTS pour l’injection de contexte, utilisable avec tout événement hook.

Ce que vous pouvez faire avec :

  • Notification automatique Slack / DingTalk quand un todo est complété
  • Confirmation forcée avant suppression de fichier, journal de qui a exécuté l’opération
  • Prompt Hook permet l’audit d’entrée de niveau entreprise — les instructions non conformes sont bloquées avant d’atteindre le modèle

Voir PR #3378 , #3388 

Intégration native ModelScope

Les développeurs chinois disposent d’une nouvelle source de modèles en un clic. ModelScope est désormais un fournisseur d’API tiers intégré — sélectionnez et configurez directement dans /auth.

Ce que vous pouvez faire avec :

  • Pas de configuration manuelle d’endpoint — sélectionnez ModelScope directement depuis le menu /auth
  • Connexion directe en Chine, latence plus faible
  • Tous les modèles compatibles de la plateforme ModelScope sont disponibles

Voir PR #4150 

Thèmes prédéfinis de barre de statut : Personnalisation du terminal en un clic

Les outils de terminal ne doivent pas forcément être noir sur blanc. Qwen Code inclut plusieurs préréglages de style de ligne de statut, commutables via un dialogue interactif — avec différentes densités d’information, schémas de couleurs et contenus affichés.

Ce que vous pouvez faire avec :

  • Dialogue interactif pour prévisualiser et basculer entre les thèmes de barre de statut
  • Densité d’information ajustable : mode minimal affiche uniquement le nom du modèle, mode détaillé avec compteur de tokens et timing
  • La sélection est persistée en config — pas besoin de reconfigurer à chaque fois

Voir PR #4120 

/stuck + /doctor : Boîte à outils de diagnostic intégrée

L’agent ne répond plus — limitation de débit ? MCP en panne ? Débordement de contexte ? Vous utilisez la mémoire depuis longtemps et vous n’êtes pas sûr de ce qu’elle contient ? Avant on ne pouvait que deviner. Maintenant deux commandes de diagnostic intégrées couvrent différentes couches :

/stuck — diagnostic au niveau session. Quand la session ne répond plus, détecte automatiquement la limitation de débit, la connectivité MCP, la pression mémoire, et fournit des suggestions de correction.

/doctor — diagnostic au niveau mémoire. Affiche le nombre de fichiers mémoire, la taille, l’état de santé ; identifie les fichiers mémoire anormalement grands pour nettoyage ; diagnostique les problèmes de mémoire agent inexacte.

Ce que vous pouvez faire avec :

  • /stuck : Dépannage en une commande quand une session gèle — pas besoin de fouiller les logs
  • /doctor : Vérifications périodiques de santé mémoire pour éviter que le gonflement affecte la qualité des réponses
  • Utilisés ensemble — /stuck pour les problèmes en temps réel, /doctor pour les problèmes chroniques

Voir PR #4133 , #4180 

Plus de nouvelles fonctionnalités

FonctionnalitéPRImpact
Outil NotebookEdit : Support natif d’édition Jupyter notebook#3900 L’agent peut directement éditer les fichiers .ipynb — workflow data science fluide
per-turn /diff : Diff interactif par tour#4277 Voir les changements après chaque opération, précis au tour
Git status injecté dans le system prompt#4110 L’agent détecte auto la branche actuelle et les changements non commités
Navigation historique Ctrl+P/N : Raccourcis style readline#4082 Les habitudes Emacs/zsh se transfèrent naturellement
Suppression groupée /delete : Sélectionner plusieurs sessions#3733 Plus besoin de supprimer une par une
Répertoire de sortie personnalisé /export#4193 Fichiers exportés où vous voulez
Support image/vidéo Qwen3.6-35B-A3B#4106 Les modèles quantifiés locaux gèrent l’entrée multimodale
Améliorations mode Daemon : Routage permissions, heartbeat, auth client, page debug#4232 , #4235 , #4132 HTTP daemon vers la production ; Web UI / IM bot connectables de façon sécurisée
Ctrl+X respecte la préférence /editor#4310 L’éditeur externe s’ouvre avec votre préférence /editor
Tri par priorité Skill#4155 Le champ priority de SKILL.md contrôle l’ordre d’affichage
Installation autonome#3828 Pas besoin d’environnement Node.js — installation en un clic
atomicWriteFile : Écritures atomiques pour les outils Write/Edit#4096 Les écritures interrompues ne produisent pas de fichiers à moitié écrits
/auth refonte unifiée : Flux Connect a Provider#4287 Config d’auth plus claire — tous les fournisseurs gérés en un seul endroit

📊 Améliorations de performances

PRAméliorationImpact
#4070 Code-split lowlight, réduction du surcoût de parsing V8 au démarrageDémarrage plus rapide
#4101 Suppression des médias inline avant résumé de compressionMeilleure qualité de compression — pas de tokens gaspillés sur le base64 d’images
#4086 Le sous-agent Explore utilise fastModelSous-tâches exploratoires avec modèle plus petit — économies sans perte de qualité
#4186 Filet de sécurité auto-compression sous pression mémoire heapLes conversations extrêmement longues ne crashent plus en OOM
#4172 Rappel auto-memory découplé du chemin de requête principalLe rappel de mémoire ne ralentit plus la première réponse
#4125 Résultats des tâches en arrière-plan tronqués + plus récents en premierPanneau de tâches en arrière-plan plus clair
#4153 Cross-auth fast models étendus aux sous-agentsLes sous-agents peuvent aussi utiliser fastModel

🔧 Corrections importantes

PRCorrectionImpact
#4143 /language prend effet immédiatement sans redémarrageChangement de langue sans redémarrage de session
#4147 Persistance de l’état de réflexion VSCode + récupération snapshot d’éditionLe processus de réflexion de l’agent n’est plus perdu dans VSCode
#4059 MinTTY Ctrl+Backspace correctement géré comme suppression du mot précédentRaccourcis terminal Windows MinTTY fonctionnels
#4130 VSCode diff réutilise le groupe d’éditeurs existantOuvrir un diff ne force plus une nouvelle colonne
#4166 Outils MCP progressifs rafraîchis dans le systemInstruction du modèleLes outils MCP découverts en arrière-plan sont correctement appelables
#3980 Contexte IDE correctement fusionné dans le prompt utilisateurL’agent voit vos fichiers ouverts en mode IDE
#4023 Auto-restauration du prompt + préservation de la file après annulationCtrl+C ne perd plus le contenu déjà tapé
#4121 Les blocs tool_result Anthropic autorisent cache_controlCache prompt Claude plus stable
#4157 Reconnaissance du provider DashScope étendue avec plus de règles hostnamePasserelles DashScope auto-hébergées correctement identifiées
#4129 Corrections de traduction chinois traditionnelInterface zh-TW plus naturelle
#3896 Normalisation cumulative des stream deltas OpenAISortie streaming plus stable avec les modèles OpenAI
#4286 structuredClone remplacé par copie superficielle contre OOMLes longues conversations ne causent plus d’OOM par deep-copy
#4294 Reasoning Qwen3 correctement mirroré dans l’historique sortantChaîne de pensée complète préservée avec les modèles Qwen3
#4243 La microcompaction idle préserve l’état read-before-writeLa compression idle ne casse plus les vérifications d’édition de fichier
#4213 Migrations de noms d’outils appliquées au dispatchLes anciens noms d’outils sont auto-mappés aux nouveaux sans erreurs

👋 Bienvenue aux nouveaux contributeurs

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

Pour toute question ou suggestion, n’hésitez pas à nous contacter sur GitHub Issues  ! ENDOFFILE; __aone_exit=?;pwdP>/var/folders/4g/f3hnbx7j1ms5kmnl66xz5f540000gn/T/aonecopilotcwd1779429777381n6cceruct7.txt2>/dev/null;exit?; pwd -P > '/var/folders/4g/f3hnbx7j1ms5kmnl66xz5f540000gn/T/aone-copilot-cwd-1779429777381-n6cceruct7.txt' 2>/dev/null; exit __aone_exit

Last updated on