Qwen Code Weekly: /loop Autonomer Modus, Desktop-Spracheingabe, Settings-Tab-Ansicht
Qwen Code hat diese Woche v0.19.4 veröffentlicht — über 80 gemergte PRs in drei Richtungen:
/loop läuft auch ohne Sie weiter. Ein nacktes /loop startet den autonomen Modus — der Agent treibt bereits etablierte Arbeit voran, während Sie weg sind, erfindet keine neuen Aufgaben und führt keine irreversiblen Aktionen aus. Mit einer .qwen/loop.md-Aufgabendatei liest der Loop bei jedem Tick die bearbeitbare Liste neu; wird die Datei gelöscht, sendet der Loop einen No-Op-Tick und bleibt am Leben. Claude Code hat letzte Woche einen Einstiegsleitfaden für Agent-Loops veröffentlicht, der beschreibt, wie ein Agent einen festen Plan wiederholt ausführt — der autonome Modus von /loop macht etwas Ähnliches, aber mit einer zusätzlichen Ebene: die Aufgabenliste kann jederzeit bearbeitet werden, und der Loop erkennt Änderungen automatisch.
Desktop-Spracheingabe ist da. CLI und Web Shell hatten Spracheingabe bereits, aber der Desktop-Client hatte diese Funktion bisher nicht. Diese Version schließt die letzte Lücke — alle drei Oberflächen bieten jetzt ein einheitliches Erlebnis.
Terminal-Interaktion schließt auf. /settings verwandelt sich von einer flachen Liste in eine Tab-Ansicht — Suche, Status und Statistiken auf einem Bildschirm; im Virtualized-History-Modus unterstützen Menüs, Vervollständigungen und Eingabefeld jetzt Mausklicks und Hover.
✨ Neue Funktionen
/loop Autonomer Modus + loop.md-Aufgabendatei
/loop unterstützt jetzt zwei neue Modi:
Autonomer Modus: Ein nacktes /loop (ohne Prompt, ohne Intervall) zeigt nicht mehr die Usage-Anleitung, sondern startet einen autonomen Loop mit selbstgewählten Schritten. Der Agent treibt bereits etablierte Arbeit voran, während Sie weg sind — verwaltet laufende PRs, setzt unterbrochene Arbeit fort, hält Versprechen ein — aber nur das, was im Transcript bereits etabliert ist. Er erfindet keine neuen Aufgaben und führt ohne ausdrückliche Genehmigung keine irreversiblen Aktionen (push/delete/send) aus. Wenn es still wird, stoppt er. Das autonome Preamble wird einmalig gesendet, danach folgt pro Tick nur eine kurze Erinnerung, um die Token-Kosten niedrig zu halten.
loop.md-Aufgabendatei: Erstellen Sie .qwen/loop.md im Projekt-Root oder unter ~/.qwen/ und setzen Sie den Wakeup/Cron-Prompt auf einen Sentinel (<<loop.md-dynamic>> oder <<loop.md>>). Der Loop liest die Datei bei jedem Fire neu. Beim ersten Mal wird der volle Text geliefert, danach nur eine kurze Erinnerung, wenn sich nichts geändert hat. Wird die Datei bearbeitet, wird der volle Text erneut gesendet. Verschwindet die Datei, sendet der Loop einen No-Op-Tick (der Agent tut nichts, re-armed nur den Loop). Wird loop.md wiederhergestellt, erkennt der nächste Tick die Änderung automatisch und liefert den vollen Text erneut.
Channel-Loops: /loop ist nicht auf das Terminal beschränkt — auch DingTalk- und Feishu-Channels können Loops ausführen. Erstellen Sie in einer Gruppe einen zeitgesteuerten Loop mit /loop add "0 9 * * 1-5" CI-Status prüfen, listen Sie alle Loops im Channel mit /loop list, prüfen Sie Laufanzahl und letzte Ergebnisse mit /loop inspect <id>, und stoppen Sie einen Loop mit /loop cancel <id>. Loops werden über den Channel Session Router ausgeführt, warten bis der aktuelle aktive Turn abgeschlossen ist, und Ergebnisse werden über den Channel zurückgeschrieben. Einmalige Loops werden nach Erfolg oder Fehlschlag automatisch deaktiviert.
Was Sie damit tun können:
- Nacktes
/looplässt den Agenten Arbeit vorantreiben, während Sie weg sind - Mit
.qwen/loop.mdeine persistente, bearbeitbare Aufgabenliste pflegen, ohne jeden Tick neu zu formulieren - Nach dem Löschen von loop.md sendet der Loop No-Op-Ticks und bleibt am Leben; nach dem Wiederherstellen nahtlos weiter
- In DingTalk-/Feishu-Gruppen mit
/loop addzeitgesteuerte Loops einrichten, die regelmäßig Arbeit vorantreiben
Siehe PR #5890 , #5991 , #6073
Desktop-Spracheingabe: Alle drei Oberflächen vereint
Spracheingabe war in CLI und Web Shell bereits verfügbar, aber auf dem Desktop fehlte sie — wer Sprache konfiguriert hatte, verlor diese Fähigkeit beim Wechsel zur Desktop-App. Diese Version schließt die letzte Lücke.
Die Composer-Toolbar hat jetzt einen Mikrofon-Button; während der Aufnahme verwandelt sich die Toolbar in eine Aufnahmeleiste (punktierte Führungslinie → Live-Wellenform → Timer). Nach dem Stoppen wird das Transkriptionsergebnis zur Überprüfung ins Eingabefeld eingefügt. Die Transkription läuft serverseitig und nutzt die bestehende CLI-Sprach-Pipeline (Batch qwen3-asr-flash und Realtime *-realtime Modelle) — Provider-Credentials gelangen nicht in den Renderer. Sprache kann in Settings → Input und im Composer-Modell-Dropdown ein-/ausgeschaltet und das Modell ausgewählt werden.
Was Sie damit tun können:
- Mikrofon anklicken und sprechen — Live-Wellenform und Timer sehen
- Ein Realtime-Modell (z.B.
qwen3-asr-flash-realtime) wählen und Interim-Text schon während des Sprechens sehen - Auf dem Tablet oder bei Multi-Monitor-Setups freihändig eingeben
Siehe PR #5856
So geht’s:
- Repository klonen:
git clone https://github.com/QwenLM/qwen-code.git
- Ins Verzeichnis wechseln:
cd qwen-code/packages/desktop
- Abhängigkeiten installieren und Dev-Modus starten:
bun install && bun run dev
Mobile Sidebar Drawer + qwen serve Verbesserungen
Bisher war beim Zugriff auf qwen serve über den mobilen Browser die Sidebar (Session-Liste, Suche, neue Session) unterhalb von 760px per display: none komplett versteckt — es gab keine Möglichkeit, die Session zu wechseln. Jetzt ersetzt ein Overlay-Drawer das einfache Ausblenden: Im Header des Chat-Panels erscheint ein Menü-Button, und nach dem Klick gleitet die Sidebar von links herein, mit einer halbtransparenten Überlagerung. Session auswählen, neue Session erstellen oder auf die Überlagerung klicken schließt den Drawer. Das Desktop-Layout bleibt völlig unberührt.
Dahinter steht eine Reihe von Verbesserungen, die qwen serve von „brauchbar” zu „komfortabel” heben:
- Verzögerte Session-Erstellung (#6066 ): Sessions werden erst beim ersten Prompt erstellt, reduziert Overhead durch leere Sessions, Web Shell startet schneller
- Workspace Remember (#5884 ): Der Serve-Modus merkt sich den Workspace, kein erneutes Angeben nach dem Neustart nötig
- Session Archive (#6058 ): Der Daemon unterstützt Session-Archivierung, langfristige Sessions können verwaltet werden
Was Sie damit tun können:
- Mit dem mobilen Browser auf
qwen servezugreifen und per Menü-Button zwischen Sessions wechseln - Beim Wechseln zwischen Projekten merkt sich Serve automatisch den Workspace
- Langfristige Sessions archivieren statt löschen
Siehe PR #6003
| Beschreibung | Sidebar eingeklappt | Sidebar ausgeklappt |
|---|---|---|
| Test-Screenshot | ![]() | ![]() |
TUI Mausklick und Hover
Die CLI unterstützte im Virtualized-History-Modus bisher nur Mausrad und Scrollbar, keine Zeiger-Interaktion. Jetzt sind bei aktiviertem Virtualized History (ui.useTerminalBuffer) drei Interaktionstypen verfügbar:
- Auswahlmenüs und Dialoge (Berechtigungsbestätigung,
/model,/config, Themes usw.): Hover hebt die Zeile unter dem Zeiger hervor, Klick wählt aus /-Befehl- und@-Dateivorschläge: Hover hebt Vorschlagseinträge hervor, Klick akzeptiert- Eingabefeld: Linksklick positioniert den Textcursor (unterstützt mehrzeilige Umbrüche, Scroll-Offsets und Wide-Characters)
Was Sie damit tun können:
- Im
/model-Dialog ein Modell direkt mit der Maus auswählen, ohne Pfeiltasten - Nach Eingabe von
/einen Vervollständigungseintrag per Klick auswählen - Im mehrzeiligen Eingabefeld den Cursor per Klick neu positionieren
Siehe PR #6011

Settings-Tab-Dialog: Suche, Status und Statistiken auf einem Bildschirm
/settings wurde von einer flachen Liste in eine Tab-Ansicht umgebaut, angelehnt an das /config-Design von Claude Code. Die obere Tab-Leiste teilt sich in Settings / Status / Stats auf; die Settings-Seite hat eine neue Suchleiste, die Eingaben sofort filtert.
Die Status-Seite zeigt dieselben Systeminformationen wie /status, die Stats-Seite enthält das vollständige /stats-Dashboard (mit Session / Activity / Efficiency als Unter-Tabs). Der Tastaturfokus wandert vertikal zwischen Tab-Leiste → Suchfeld → Settings-Liste, und die Hervorhebung erscheint nur in dem Bereich, der tatsächlich den Fokus hat.
Was Sie damit tun können:
/settingsöffnen und direkt ein Stichwort eingeben, um Einstellungen zu filtern- Mit ←/→ zur Status-Seite wechseln und Laufzeitinformationen ansehen, ohne
/statusseparat aufzurufen - Auf der Stats-Seite mit Tab zwischen Session / Activity / Efficiency wechseln; die Efficiency-Tabelle faltet sich automatisch zu „+N more” zusammen, wenn sie die Dialoghöhe überschreitet
Siehe PR #6044

Chrome-Erweiterung: Direkt im Browser chatten + Seiten bedienen
Die Chrome-Erweiterung wurde mit einer Daemon-Direct-Architektur wiederbelebt — die Erweiterung ist nicht mehr Native-Messaging-Host, sondern ein Thin Client des lokalen qwen serve-Daemons.
Die Sidebar-Chatfunktion verbindet sich über DaemonSessionProvider direkt mit qwen serve (HTTP+SSE, derselbe Pfad wie die Web Shell). Wenn der Daemon nicht erreichbar ist, erscheint der Hinweis „qwen serve starten”. Browser-Tools (Seite lesen, Screenshot, Konsole, Navigation, Klick, Formular ausfüllen) werden als client-seitig gehostete MCP-Server über den Daemon-WebSocket dem Agent zur Verfügung gestellt. Sowohl Chat- als auch Tool-Pfade verzichten komplett auf Native Messaging.
Hinweis: Der Reverse-Tool-Kanal wird derzeit über die Umgebungsvariable QWEN_SERVE_CLIENT_MCP_OVER_WS aktiviert und ist standardmäßig deaktiviert — dieser Flag muss beim Start von qwen serve explizit gesetzt werden.
Was Sie damit tun können:
- In der Chrome-Sidebar direkt mit Qwen Code chatten, ohne OS-level Native Messaging Host zu installieren
- Den Agent die aktuelle Seite lesen lassen, Screenshots machen und Browser-Elemente bedienen
- Die gemeinsame UI der Web Shell wiederverwenden, einheitliches Erlebnis
Siehe PR #5777

📊 Weitere neue Funktionen
| Funktion | PR | Auswirkung |
|---|---|---|
/config key=value: Beliebige Einstellungen direkt im Prompt ändern, Tab-Vervollständigung + Rechtschreibkorrektur | #5773 | Kein Blättern in settings.json mehr |
| Session-Timeline-Rail: Kompakte Timeline links in der Web Shell, Hover zeigt Turn-Details | #6078 | Turns in langen Sessions schnell finden |
| /skills ACP-Ausgabe erweitert: Zeigt description und level | #6117 | Skills-Liste informativer |
Auto-mode vollständige Shell-Klassifizierung: Neue classifyAllShell-Einstellung (default aus) | #6040 | Defense-in-Depth in Produktion |
qwen tag Gruppenchat-Mehrfachidentität: DingTalk-Gruppen-Sharing-Sessions unterstützen [sender]-Sprecher-Markierung | #5888 | Agent unterscheidet Sprecher im Gruppenchat |
| Group History Backfill: Gruppenverlauf-Nachrichten zurückfüllen | #6074 | Neue Mitglieder sehen den Verlauf |
| Browser-Tab-Favicon: Web Shell Browser-Tab-Icon | #6091 | Mehrere Tabs leichter unterscheidbar |
| Chat-UI und Tabellen-Rendering optimiert: Web Shell Chat-Oberfläche poliert | #6099 | Visuelles Erlebnis verbessert |
| Queued-Prompt UX: Web Shell Esc-Unterbrechung benutzerfreundlicher | #6025 | Unterbrechungen flüssiger |
| Resumable /acp Session Stream: Unterstützt Last-Event-ID für Wiederaufnahme | #5852 | SDK-Verbindungen stabiler |
| Glob Patterns in mcp.allowed/excluded: MCP-Whitelist unterstützt Wildcards | #6012 | MCP-Konfiguration flexibler |
Inline Model Override: /model unterstützt einmalige Modell-Überschreibung | #6022 | Temporärer Modellwechsel einfacher |
| Leader Approval für Plan-Pflicht-Teammates: Plan-pflichtige Teammates benötigen Leader-Genehmigung | #6138 | Multi-Agent-Kollaboration sicherer |
🔧 Wichtige Fixes
| Fix | PR | Auswirkung |
|---|---|---|
| MCP-Tool-Idle-Timeout: Server auto-abort nach 5 Minuten ohne Antwort, verhindert hängende Sessions | #6061 | Lang laufende MCP-Tools warten nicht mehr endlos |
| Diff-Whitespace-Edit-Anzeige: Rein whitespace-Änderungen zeigen nicht mehr „No changes detected” | #6141 | Diff-Ausgabe genauer |
| TUI-Eingabelatenz-Optimierung: Yield an React nach addItem, reduziert Eingabe-Stottern | #6059 | Tippen flüssiger |
| Multi-Agent-Scrolling ohne VP-Modus: Transcript ist während Multi-Agent-Ausführung scrollbar | #6015 | Verlauf in Multi-Agent-Szenarien einsehbar |
HTTPS/TLS-Unterstützung: qwen serve erhält --tls-cert und --tls-key Flags | #6032 | In selbstsignierten Zertifikatsumgebungen nutzbar |
Windows-Tilde-Pfade: Unterstützt Windows-Style ~-Pfaderweiterung | #6029 | Windows-Pfadkompatibilität |
👥 Contributors
| Contributor | Beiträge | PR-Links |
|---|---|---|
| @qqqys | /loop Autonomer Modus + loop.md-Aufgabendatei, Spracheingabe, qwen tag Gruppenchat-Mehrfachidentität, Group History Backfill, Channel Loop Support | #5890 , #5991 , #5856 , #5888 , #6074 , #6073 |
| @DragonnZhang | /effort einheitliche Reasoning-Intensität, TUI Mausklick und Hover, Settings-Tab-Dialog | #6072 , #6011 , #6044 |
| @doudouOUC | Session Archive, Skills ACP-Ausgabe erweitert, Leader Approval für Plan-Pflicht-Teammates, Diff-Whitespace-Edit-Anzeige | #6058 , #6117 , #6138 , #6141 |
| @DennisYu07 | /config-Befehl, Auto-mode vollständige Shell-Klassifizierung, MCP-Whitelist-Wildcards, MCP-Tool-Idle-Timeout | #5773 , #6040 , #6012 , #6061 |
| @pomelo-nwu | Mobile Sidebar Drawer, HTTPS/TLS-Unterstützung | #6003 , #6032 |
| @callmeYe | Workspace Remember, Session-Timeline-Rail | #5884 , #6078 |
| @ytahdn | Verzögerte Session-Erstellung, Chat-UI und Tabellen-Rendering-Optimierung | #6066 , #6099 |
| @chiga0 | Resumable /acp Session Stream, Multi-Agent-Scrolling ohne VP-Modus | #5852 , #6015 |
| @yiliang114 | Chrome-Erweiterung wiederbelebt | #5777 |
| @wenshao | Browser-Tab-Favicon | #6091 |
| @carffuca | Queued-Prompt UX-Optimierung | #6025 |
| @Alex-ai-future | TUI-Eingabelatenz-Optimierung | #6059 |
| @VectorPeak | Windows-Tilde-Pfaderweiterung | #6029 |
| 🆕 @Minerest | 🎉 Erster Beitrag: Fix — auto-memory-Abruf nur bei aktiviertem auto-memory | #5963 |
| 🆕 @TianYuan1024 | 🎉 Erster Beitrag: --insecure-Flag zum Überspringen der TLS-Verifizierung, /model Inline-Modell-Überschreibung | #5962 , #6022 |
| 🆕 @gauravyad86 | 🎉 Erster Beitrag: Kritische npm-Sicherheitslücken behoben (simple-git, shell-quote und weitere Laufzeitabhängigkeiten), CI-Audit-Check hinzugefügt | #6065 |
Upgrade: Führen Sie npm i @qwen-code/qwen-code@latest -g aus, um auf die neueste Version zu aktualisieren.
Bei Fragen oder Anregungen freuen wir uns über Feedback in den GitHub Issues !

