ist jetzt verfügbar! Lesen Sie über die neuen Funktionen und Fehlerbehebungen vom November.

September 2025 (Version 1.105)

Erscheinungsdatum: 9. Oktober 2025

Sicherheitsupdate: Die folgende Erweiterung hat Sicherheitsupdates erhalten: GitHub.copilot-chat.

Update 1.105.1: Das Update behebt diese Probleme im Kern und diese Probleme in der GitHub Copilot Chat Erweiterung.

Update: Schauen Sie sich die Ankündigungen von VS Code auf der GitHub Universe an.

Downloads: Windows: x64 Arm64 | Mac: Universal Intel silicon | Linux: deb rpm tarball Arm snap


Willkommen zur September 2025-Version von Visual Studio Code. Es gibt viele Updates in dieser Version, die Ihnen hoffentlich gefallen werden, einige der wichtigsten Highlights sind

  • Betriebssystemintegration

    • Benachrichtigungen über Aufgabenabschluss und Chat-Antworten erhalten (Mehr anzeigen)
    • Native Authentifizierungserfahrung unter macOS (Mehr anzeigen)
  • Entwicklerproduktivität

  • Agenten-Tools


Wenn Sie diese Release Notes online lesen möchten, gehen Sie zu Updates auf code.visualstudio.com.

Insiders: Möchten Sie neue Funktionen so schnell wie möglich ausprobieren?
Sie können den nächtlichen Insiders-Build herunterladen und die neuesten Updates ausprobieren, sobald sie verfügbar sind.
Insiders herunterladen

VS Code auf der GitHub Universe

GitHub Universe 2025 banner image.

Auf der GitHub Universe haben wir mehrere Updates vorgestellt, die Ihnen helfen, mit KI-gestützter Entwicklung in VS Code produktiver zu sein. Sie können nun den integrierten Plan-Agenten verwenden, um komplexe Aufgaben zu recherchieren und zu planen, den Kontext mit Unteragenten besser zu verwalten und Hintergrundagenten wie OpenAI Codex und GitHub Copilot CLI zu verwalten.

Laden Sie VS Code Insiders herunter, um diese Funktionen noch heute auszuprobieren.

Agentenplaner

Hinweis: Diese Funktion ist derzeit nur in VS Code Insiders verfügbar.

Um Ihnen bei der besseren Vorbereitung auf komplexe Coding-Aufgaben zu helfen, enthält VS Code jetzt einen integrierten Plan-Agenten. Der Plan-Agent hilft Ihnen bei der Analyse von Aufgaben, der Zerlegung in Schritte und der Erstellung von Implementierungsplänen, bevor Sie mit der Entwicklung beginnen. Dieser Ansatz hilft, wichtige Anforderungen nicht zu übersehen.

Um den Plan-Agenten zu verwenden, öffnen Sie die Chat-Ansicht (⌃⌘I (Windows, Linux Ctrl+Alt+I)), wählen Sie Plan aus dem Agenten-Dropdown und beschreiben Sie Ihre Aufgabe.

Screenshot of the Chat view with the Plan agent selected and a prompt to create an implementation plan for a feature.

Nachdem der Plan fertiggestellt ist, können Sie mit der Implementierung sofort beginnen oder den Plan für die spätere Verwendung speichern. Der Plan-Agent nutzt die neue Handoff-Funktion für benutzerdefinierte Chat-Modi.

Erfahren Sie mehr darüber, wie Sie den integrierten Plan-Agenten in VS Code verwenden.

Handoffs

Hinweis: Diese Funktion ist derzeit nur in VS Code Insiders verfügbar.

Handoffs ermöglichen es Ihnen, geführte Arbeitsabläufe zu erstellen, die zwischen Chat-Modi mit vorgeschlagenen nächsten Schritten übergehen. Nachdem eine Chat-Antwort abgeschlossen ist, erscheinen Handoff-Schaltflächen, mit denen Benutzer mit relevantem Kontext und einer vorab ausgefüllten Aufforderung zum nächsten Modus wechseln können.

Handoffs sind nützlich für die Orchestrierung von mehrstufigen Entwicklungsworkflows, zum Beispiel

Handoffs ermöglichen es Ihnen festzulegen, wie Sie von einem Chat-Modus zu einem anderen wechseln und benutzerdefinierte, strukturierte Arbeitsabläufe definieren. Beim Wechsel zu einem anderen Modus können Sie eine Aufforderung angeben, die verwendet werden soll.

Sie geben den Handoff im Frontmatter-Metadaten Ihrer benutzerdefinierten Chat-Modusdefinition an

---
description: Generate an implementation plan
tools: ['search', 'fetch']
handoffs:
  - label: Start Implementation
    agent: implementation
    prompt: Now implement the plan outlined above.
    send: true
---

Erfahren Sie mehr darüber, wie Sie Handoffs in benutzerdefinierten Chat-Modi verwenden.

Isolierte Unteragenten

Hinweis: Diese Funktion ist derzeit nur in VS Code Insiders verfügbar.

Unteragenten ermöglichen es Ihnen, Aufgaben an autonome Agenten innerhalb Ihrer Chatsitzungen zu delegieren. Unteragenten haben ihr eigenes Kontextfenster und arbeiten ohne Benutzerinteraktion, was sie ideal für Aufgaben wie Recherche, Analyse und Kontextbeschaffung macht.

Nachdem der Unteragent seine Aufgabe abgeschlossen hat, gibt er die Ergebnisse an die Hauptchatsitzung zurück. Unteragenten haben ihr eigenes Kontextfenster, was hilft, die Kontextverwaltung in Ihrer Hauptchatsitzung zu optimieren.

Um Unteragenten in Ihren Chat-Aufforderungen oder benutzerdefinierten Chat-Modi zu verwenden, verweisen Sie auf das Werkzeug #runSubagent, damit der Hauptagent einen Unteragenten aufruft. Zum Beispiel

  • "Führen Sie das Werkzeug #runSubagent für die Kontextbeschaffung und Recherche zu Authentifizierungsmechanismen für diese App aus."

Erfahren Sie mehr über die Verwendung von Unteragenten in VS Code.

Integration mit OpenAI Codex

Hinweis: Diese Funktion ist derzeit nur in VS Code Insiders verfügbar.

Die neue Ansicht Agent Sessions in VS Code Insiders integriert sich nun auch mit OpenAI Codex. Verwalten Sie lokale und cloudbasierte Agentensitzungen über eine einheitliche Schnittstelle, was es einfacher macht, den Fortschritt zu verfolgen und Aufgaben über mehrere KI-Coding-Assistenten hinweg zu delegieren.

Screenshot of the Agent Sessions view showing an OpenAI Codex session.

OpenAI Codex kann nun durch Ihr Copilot-Abonnement betrieben werden. Sobald die Codex-Erweiterung installiert und konfiguriert ist, wird Codex automatisch in der Ansicht "Agent Sessions" angezeigt. Nutzen Sie Ihr Copilot Pro+-Abonnement zur Authentifizierung und zum Zugriff auf Codex ohne zusätzliche Einrichtung.

Erhalten Sie weitere Informationen zur GitHub Copilot-Abrechnung und Premium-Anfragen in der GitHub-Dokumentation.

Integration mit Copilot CLI

Die neue Ansicht Agent Sessions in VS Code Insiders unterstützt nun die GitHub Copilot CLI. Sie können lokale und cloudbasierte Agentensitzungen über eine einheitliche Schnittstelle verwalten, was es einfacher macht, den Fortschritt zu verfolgen und Aufgaben zwischen der Copilot CLI und dem Copilot Coding-Agenten zu delegieren.

Screenshot of the Agent Sessions view showing a Copilot CLI session.

  • Starten und Fortsetzen von CLI-Sitzungen in einem Chat-Editor oder einem integrierten Terminal.
  • Verwenden Sie /delegate in einem CLI-Chat-Editor, um Ihre Arbeit an den Coding-Agenten in der Cloud zu delegieren.
  • Verbessern Sie die CLI-Erfahrung in VS Code, z. B. durch Anhängen von Kontext aus Ihrem Editor, wie Sie es heute im Ask- oder Agentenmodus tun würden.

Chat

Vollqualifizierte Tool-Namen

Prompt-Dateien und benutzerdefinierte Chat-Modi ermöglichen es Ihnen, anzugeben, welche Tools verwendet werden können. Um Namenskonflikte zwischen integrierten Tools und Tools, die von MCP-Servern oder Erweiterungen bereitgestellt werden, zu vermeiden, unterstützen wir nun vollständig qualifizierte Tool-Namen für Prompt-Dateien und Chat-Modi. Dies hilft auch bei der Erkennung fehlender Erweiterungen oder MCP-Server.

Tool-Namen werden nun durch den MCP-Server, die Erweiterung oder die Tool-Sammlung, zu der sie gehören, qualifiziert. Anstelle von codebase würden Sie beispielsweise search/codebase verwenden oder list_issues wäre github/github-mcp-server/list_issues.

Sie können weiterhin die vorherige Notation verwenden, aber eine Code-Aktion hilft Ihnen bei der Migration zu den neuen Namen.

Screenshot of a prompt file showing a Code Action to update an unqualified tool name.

Verbesserte Bearbeitungswerkzeuge für benutzerdefinierte Modelle

Einstellung: github.copilot.chat.customOAIModels

Wir haben die Bearbeitungswerkzeuge für benutzerdefinierte Modelle mit Bring Your Own Key (BYOK) verbessert, um eine bessere Integration mit den integrierten VS Code-Werkzeugen zu ermöglichen. Darüber hinaus haben wir unsere Standardwerkzeuge erweitert und einen "Lernmechanismus" hinzugefügt, um die optimalen Werkzeugsätze für benutzerdefinierte Modelle auszuwählen.

Wenn Sie OpenAI-kompatible Modelle verwenden, können Sie auch die Liste der Bearbeitungswerkzeuge explizit mit der Einstellung github.copilot.chat.customOAIModels konfigurieren.

Unterstützung für verschachtelte AGENTS.md-Dateien (Experimentell)

Einstellung: chat.useNestedAgentsMdFiles

Im letzten Meilenstein haben wir die Unterstützung für AGENTS.md am Stammverzeichnis Ihres Arbeitsbereichs eingeführt. Diese Funktionalität ist nun allgemein verfügbar und standardmäßig aktiviert.

Wir haben nun auch die Unterstützung für verschachtelte AGENTS.md-Dateien in Unterordnern Ihres Arbeitsbereichs hinzugefügt. Dies ermöglicht es Ihnen, spezifischere Kontexte und Anleitungen für verschiedene Teile Ihrer Codebasis bereitzustellen. Zum Beispiel könnten Sie unterschiedliche Anleitungen für Frontend- und Backend-Code haben. Diese Funktionalität ist derzeit experimentell und kann mit der Einstellung chat.useNestedAgentsMdFiles aktiviert werden.

Erfahren Sie mehr darüber, wie Sie Chat in VS Code an Ihre Praktiken und Team-Workflows anpassen.

Verbesserungen der Chat-Benutzeroberfläche

Betriebssystem-Benachrichtigungen für Chat-Antworten

Einstellung: chat.notifyWindowOnResponseReceived

In VS Code 1.103 haben wir OS-Benachrichtigungen für Chatsitzungen eingeführt, die eine Benutzerbestätigung erforderten, wenn das VS Code-Fenster nicht fokussiert war. In dieser Version erweitern wir diese Funktionalität um ein OS-Badge und eine Benachrichtigungs-Toast, wenn eine Chat-Antwort empfangen wird. Die Benachrichtigung enthält eine Vorschau der Antwort, und das Auswählen fokussiert die Chat-Eingabe.

Screenshot showing an OS notification while the VS Code window is unfocused.

Sie können das Benachrichtigungsverhalten mit der Einstellung chat.notifyWindowOnResponseReceived steuern.

Chain of Thought (Experimentell)

Einstellung: chat.agent.thinkingStyle

Chain of Thought zeigt die Überlegungen des Modells während der Antwort an, was für die Fehlersuche oder das Verständnis von Vorschlägen des Modells großartig sein kann. Mit der Einführung von GPT-5-Codex werden Denk-Tokens nun im Chat als erweiterbare Abschnitte in der Antwort angezeigt.

Screenshot of a chat response showing thinking tokens as expandable sections in the response.

Sie können konfigurieren, wie Chain of Thought angezeigt oder ausgeblendet wird, mit der Einstellung chat.agent.thinkingStyle. Denk-Tokens werden bald auch für weitere Modelle verfügbar sein!

Zuletzt besuchte Chat-Sitzungen anzeigen (Experimentell)

Einstellung: chat.emptyState.history.enabled

Im letzten Meilenstein haben wir Prompt-Datei-Vorschläge eingeführt, die Ihnen beim Erstellen einer neuen Chatsitzung helfen (⌘N (Windows, Linux Ctrl+N)). In dieser Version bauen wir darauf auf, indem wir Ihre zuletzt besuchten lokalen Chat-Konversationen anzeigen. Dies hilft Ihnen, schnell dort weiterzumachen, wo Sie aufgehört haben, oder frühere Konversationen erneut zu besuchen.

Screenshot of the Chat view showing recent local chat conversations when there are no active chat sessions.

Standardmäßig ist diese Funktionalität deaktiviert, aber Sie können sie mit der Einstellung chat.emptyState.history.enabled aktivieren.

Änderungen während einer Agentenschleife beibehalten oder rückgängig machen

Zuvor konnten Sie, während ein Agent Ihre Chat-Anfrage noch verarbeitete, keine Dateiänderungen beibehalten oder rückgängig machen, bis der Agent fertig war. Jetzt können Sie Änderungen an Dateien beibehalten oder rückgängig machen, während eine Bearbeitungsschleife stattfindet. Dies gibt Ihnen mehr Kontrolle, insbesondere bei langwierigen Aufgaben.

Tastenkombinationen für die Navigation durch Benutzerchat-Nachrichten

Um schnell durch Ihre vorherigen Chat-Aufforderungen in der Chatsitzung zu navigieren, haben wir Tastenkombinationen zum Auf- und Abwärtsnavigieren durch Ihre Chat-Nachrichten hinzugefügt.

  • Vorherige Navigation: ⌥⌘↑ (Windows, Linux Ctrl+Alt+Up)
  • Nächste Navigation: ⌥⌘↓ (Windows, Linux Ctrl+Alt+Down)

Agentensitzungen

In diesem Meilenstein haben wir mehrere Verbesserungen an der Chat-Sitzungsansicht und der Erfahrung bei der Delegation von Aufgaben an Remote-Coding-Agenten vorgenommen.

Verbesserungen der Chat-Sitzungsansicht

Einstellung: chat.agentSessionsViewLocation

Die Ansicht Chat Sessions bietet einen zentralen Ort für die Verwaltung von lokalen Chat-Konversationen und Remote-Coding-Agentensitzungen. Diese Ansicht ermöglicht es Ihnen, mehrere KI-Sitzungen gleichzeitig zu nutzen, deren Fortschritt zu verfolgen und langwierige Aufgaben effizient zu verwalten.

In dieser Version haben wir mehrere UI-Verfeinerungen und Leistungsverbesserungen vorgenommen, um die Chat-Sitzungserfahrung zu verbessern.

  • Die Ansicht "Chat Sessions" unterstützt weiterhin Funktionen wie die Statusleistenverfolgung zur Überwachung mehrerer Coding-Agenten, Kontextmenüs zur Sitzungsverwaltung und detaillierte Beschreibungen, um detaillierte Kontexte für jede Sitzung bereitzustellen.

  • Initiieren Sie schnell eine neue Sitzung, indem Sie die Schaltfläche "+" im Ansichtsheader verwenden.

    Screenshot of the Chat Sessions view with a new session open via the + button.

Delegation an Remote-Coding-Agenten

Ein typisches Szenario für die Arbeit mit Remote-Coding-Agenten ist, zunächst eine Aufgabe in einer lokalen Chatsitzung zu besprechen und zu planen, bei der Sie Zugriff auf den vollständigen Kontext Ihrer Codebasis haben, und dann die Implementierungsarbeit an einen Remote-Coding-Agenten zu delegieren. Der Remote-Agent kann dann im Hintergrund an der Aufgabe arbeiten und einen Pull-Request mit der Lösung erstellen.

Wenn Sie in einem Repository arbeiten, für das der Copilot Coding Agent aktiviert ist, wird die Schaltfläche An Coding Agent delegieren in der Chat-Ansicht standardmäßig angezeigt.

Screenshot of the Chat view with the Delegate to coding agent button highlighted.

Wenn Sie die Delegierungsaktion verwenden, werden alle Kontexte Ihrer Chat-Konversation, einschließlich Dateireferenzen, an den Coding-Agenten weitergeleitet. Wenn Ihre Konversation das Kontextfenster des Coding-Agenten überschreitet, fasst VS Code die Informationen automatisch zusammen und komprimiert sie, um sie an das Fenster anzupassen.

Chat-Terminalprofile

Wir haben plattformspezifische Einstellungen hinzugefügt: chat.tools.terminal.terminalProfile.windows, chat.tools.terminal.terminalProfile.osx und chat.tools.terminal.terminalProfile.linux, um die Shell zu konfigurieren, die vom Run-in-Terminal-Tool gestartet wird.

Eine Chat-spezifische Shell ist nützlich, um interaktive Elemente aus Ihrer regulären Shell-Einrichtung zu vereinfachen oder zu entfernen und dem Agenten die Nutzung zu erleichtern. Gleichzeitig bleiben Ihre reguläre Umgebung und Ihre Shell-Startskripte unverändert.

"chat.tools.terminal.terminalProfile.osx": {
  "path": "bash", // bash instead of zsh
  "args": [], // non-login instead of login on macOS
  "env": {
    "COPILOT": "1" // environment variable that can be used in init scripts
  }
}

Terminalbefehle

Automatische Antwort auf Terminal-Eingabeaufforderungen (Experimentell)

Einstellung: chat.tools.terminal.autoReplyToPrompts

Wir haben eine Opt-in-Einstellung eingeführt, chat.tools.terminal.autoReplyToPrompts, die es dem Agenten ermöglicht, automatisch auf Eingabeaufforderungen im Terminal zu antworten, wie z. B. Bestätigen? j/n.

Erkennung von freiem Text im Terminal

Wenn das Terminal eine freie Eingabe erfordert, zeigen wir jetzt eine Bestätigungsaufforderung an. Dies ermöglicht es Ihnen, sich auf Ihre aktuelle Arbeit zu konzentrieren und die Aufmerksamkeit nur dann zu verlagern, wenn eine Eingabe erforderlich ist.

Anmeldung mit Apple-Konten

Zusätzlich zur Anmeldung mit einem GitHub- oder Google-Konto können Sie sich jetzt auch mit einem Apple-Konto anmelden oder ein GitHub Copilot-Konto einrichten. Diese Funktionalität wird schrittweise für VS Code-Benutzer ausgerollt.

Screenshot showing the sign in dialog showing the option to use an Apple account.

Weitere Informationen hierzu finden Sie in der Ankündigung GitHub Blog-Beitrag.

Modellverfügbarkeit

In diesem Meilenstein haben wir die Unterstützung für die folgenden Modelle im Chat hinzugefügt. Die verfügbaren Modelle hängen von Ihrem Copilot-Plan und Ihrer Konfiguration ab.

  • GPT-5-Codex, das GPT-5-Modell von OpenAI, optimiert für agentenbasiertes Coding.

  • Claude Sonnet 4.5, Anthropic's fortschrittlichstes Modell für Coding und Real-World-Agenten.

Sie können mit dem Modellauswahlfeld im Chat zwischen verschiedenen Modellen wählen. Erfahren Sie mehr über Sprachmodelle in VS Code.

MCP

MCP Marketplace (Vorschau)

Einstellung: chat.mcp.gallery.enabled

VS Code enthält nun einen integrierten MCP-Marktplatz, der es Benutzern ermöglicht, MCP-Server direkt aus der Erweiterungsansicht zu durchsuchen und zu installieren. Dies wird durch die GitHub MCP-Registry unterstützt und bietet eine nahtlose Erfahrung für die Entdeckung und Verwaltung von MCP-Servern direkt im Editor.

Hinweis: Diese Funktion befindet sich derzeit in der Vorschau. Nicht alle Funktionen sind bereits verfügbar und die Erfahrung kann noch einige Ecken und Kanten haben.

Der MCP-Marktplatz ist standardmäßig deaktiviert. Wenn keine MCP-Server installiert sind, sehen Sie in der Erweiterungsansicht eine Willkommensansicht, die einfachen Zugriff auf die Aktivierung des Marktplatzes bietet. Sie können den MCP-Marktplatz auch manuell aktivieren, indem Sie die Einstellung chat.mcp.gallery.enabled verwenden.

Screenshot showing the MCP Servers welcome view with text describing how to browse and install Model Context Protocol servers, and an "Enable MCP Servers Marketplace" button.

Um die MCP-Server aus der Erweiterungsansicht zu durchsuchen

  • Verwenden Sie den Filter @mcp im Suchfeld der Erweiterungsansicht
  • Wählen Sie MCP Servers aus dem Filter-Dropdown in der Erweiterungsansicht
  • Suchen Sie nach spezifischen MCP-Servern anhand des Namens

Screenshot showing the GitHub MCP server details from the MCP server marketplace inside VS Code.

MCP-Server automatisch starten

Einstellung: chat.mcp.autostart

In dieser Version werden neue oder veraltete MCP-Server nun automatisch gestartet, wenn Sie eine Chat-Nachricht senden. VS Code vermeidet auch, Interaktionen wie Dialoge beim automatischen Starten eines Servers auszulösen, und fügt stattdessen eine Anzeige im Chat hinzu, um Sie darüber zu informieren, dass ein Server Aufmerksamkeit benötigt.

Screenshot of the Chat view, showing a notification message that the GitHub MCP requires restarting.

Da MCP Autostart standardmäßig aktiviert ist, aktivieren wir Erweiterungen nicht mehr eilig, sondern nur noch MCP-bereitstellende Erweiterungen, wenn die erste Chat-Nachricht gesendet wird.

Für Erweiterungsentwickler haben wir auch die Unterstützung für die when-Klausel für den mcpServerDefinitionProviders-Beitragspunkt hinzugefügt, damit Sie die Aktivierung vermeiden können, wenn sie nicht relevant ist.

Verbesserte Darstellung von MCP-Ressourcen, die von Tools zurückgegeben werden

Zuvor überließ es unsere Implementierung von Werkzeugergebnissen, die Ressourcen enthielten, dem Modell, diese Ressourcen abzurufen, ohne klare Anweisungen, wie dies zu tun sei. In dieser Version von VS Code fügen wir standardmäßig eine Vorschau des Ressourceninhalts ein und fügen Anweisungen zum Abrufen der vollständigen Inhalte hinzu. Dies sollte zu einer besseren Modellleistung führen, wenn solche Werkzeuge verwendet werden.

MCP-Spezifikationsupdates

In diesem Meilenstein haben wir die folgenden Updates an der MCP-Spezifikation übernommen:

  • SEP-973, das es MCP-Servern ermöglicht, icons anzugeben, die ihren Daten zugeordnet sind. Dies kann verwendet werden, um Servern, Ressourcen und Tools ein benutzerdefiniertes Symbol zu geben.

    Screenshot of the tools picker, showing one of the MCP servers in the list with a custom icon.

    HTTP-MCP-Server müssen Icons von derselben Behörde bereitstellen, auf der der MCP-Server selbst lauscht, während stdio-Server URIs file:/// auf der Festplatte referenzieren dürfen.

  • SEP-1034, das es MCP-Servern ermöglicht, default-Werte bei der Verwendung von Elicitation bereitzustellen.

Barrierefreiheit

Shell-Integration für pwsh unter Windows-Unterstützung für Screenreader

PSReadLine wurde historisch deaktiviert, wenn ein Screenreader erkannt wurde, um Benutzer mit übermäßigem akustischem Feedback zu vermeiden. Da unsere Terminal-Shell-Integration auf PSReadLine-Unterstützung angewiesen ist, aktivieren wir nun eine gestraffte Version von PSReadLine im Screenreader-Modus. Dies gewährleistet, dass die Shell-Integration und ihre Funktionen für Screenreader-Benutzer funktionieren.

Chat-Verbesserungen

Einstellung: accessibility.verboseChatProgressUpdates

Eine neue Einstellung, accessibility.verboseChatProgressUpdates, ermöglicht detailliertere Ankündigungen für Screenreader-Benutzer über Chat-Aktivitäten.

Von der Chat-Eingabe aus können Benutzer zum zuletzt fokussierten Chat-Antwort-Element wechseln ⇧⌘↓ (Windows, Linux Ctrl+Shift+Down).

Persistenz der zugänglichen Ansicht

Beim Wechseln zwischen VS Code und anderen Fenstern behalten wir nun die Position des Benutzers in der zugänglichen Ansicht für einen nahtlosen Workflow bei.

Editor-Erlebnis

Standard-Tastenkombinationen für Quick Input überschreiben

Die Quick Input-Steuerelemente, wie die in der Befehlspalette verwendeten (Quick Pick, Eingabefeld), hatten früher fest codierte Tastenkombinationen für die Navigation, wie z. B. das Auf- oder Abwärtsbewegen in der Liste, Akzeptieren (Enter) und einige andere Interaktionen.

Diese Aktionen sind nun in Befehle ausgelagert, was es Ihnen ermöglicht, ihre Tastenkombinationen zu überschreiben. Wenn Sie beispielsweise möchten, dass Tab zum Akzeptieren von etwas in Quick Pick verwendet wird, ist dies nun möglich. Um alle Tastenkombinationen zu sehen, die Sie überschreiben können, öffnen Sie den Editor für Tastenkombinationen (kb(workbench.action.openGlobalKeybindings)) und suchen Sie nach quickInput.

Nur Leerzeichen enthaltende Vorschläge für die nächste Bearbeitung nicht zulassen

Einstellung: github.copilot.nextEditSuggestions.allowWhitespaceOnlyChanges

Es ist nun möglich, Vorschläge für die nächste Bearbeitung (NES) zu verbieten, die nur Leerzeichen enthaltende Änderungen vorschlagen, wie z. B. Codeformatierung.

Quellcodeverwaltung

Zusammenführungskonflikte mit KI lösen

Beim Öffnen einer Datei mit Git-Zusammenführungskonfliktmarkierungen können Sie Zusammenführungskonflikte nun mit KI lösen. Wir haben eine neue Aktion in der unteren rechten Ecke des Editors hinzugefügt. Das Auswählen dieser neuen Aktion öffnet die Chat-Ansicht und startet einen agentenbasierten Ablauf mit der Zusammenführungsbasis und den Änderungen aus jedem Branch als Kontext.

Screenshot of the proposed merge conflict resolution in the editor.

Sie können die vorgeschlagene Lösung für den Zusammenführungskonflikt im Editor überprüfen und bei Bedarf weiteren Kontext hinzufügen. Sie können die Lösung von Zusammenführungskonflikten mit einer AGENTS.md-Datei anpassen.

Datei-Commit zum Chat-Kontext hinzufügen

Vor einigen Meilensteinen haben wir die Möglichkeit hinzugefügt, die Dateien in jedem Verlaufsartikel in der Source Control Graph-Ansicht anzuzeigen. Sie können nun eine Datei aus einem Verlaufsartikel als Kontext für eine Chat-Anfrage hinzufügen. Dies kann nützlich sein, wenn Sie den Inhalt einer bestimmten Version einer Datei als Kontext für Ihre Chat-Aufforderung bereitstellen möchten.

Um eine Datei aus einem früheren Commit zum Chat hinzuzufügen, wählen Sie einen Commit aus, um die Liste der Dateien anzuzeigen, klicken Sie mit der rechten Maustaste auf eine bestimmte Datei und wählen Sie dann Zum Chat hinzufügen aus dem Kontextmenü.

Screenshot of the Source Control Graph view showing the context menu for a file in a history item with the Add to Chat option highlighted.

Testen

Tests mit Code Coverage ausführen

Wenn Sie eine Test-Erweiterung für Ihren Code installiert haben, ermöglicht das Tool runTests im Chat dem Agenten, Tests in Ihrer Codebasis auszuführen, indem es die VS Code Testing-Integration verwendet, anstatt sie von der Kommandozeile auszuführen.

In dieser Version meldet das Tool runTests dem Agenten nun auch die Test-Codeabdeckung. Dies ermöglicht es dem Agenten, Tests zu generieren und zu verifizieren, die den gesamten Code abdecken.

Testergebnisspalte tauschen

Sie können die Seite, auf der der Ergebnisbaum in der Ansicht "Testergebnisse" angezeigt wird, mit der neuen Swap-Schaltfläche ↔️ im Titermenü der Ansicht ändern.

Screenshot of the Test Results view with the swap button highlighted.

Aufgaben

OS-Benachrichtigung für den Abschluss langwieriger Aufgaben

Einstellung: task.notifyWindowOnTaskCompletion

Wenn eine vom Benutzer initiierte, langwierige Aufgabe abgeschlossen wird, während das VS Code-Fenster nicht fokussiert ist, wird ein OS-Badge und eine Benachrichtigungs-Toast angezeigt. Das Auswählen der Benachrichtigung fokussiert das Fenster, in dem die Aufgabe abgeschlossen wurde. Sie können dieses Verhalten mit der Einstellung task.notifyWindowOnTaskCompletion konfigurieren.

Screenshot of an OS notification that shows a task completion message saying Task "build" completed in 1 minute 21 seconds.

Beibehaltung des Task-Terminaltitels

Einstellung: terminal.integrated.tabs.title

Sie können den Titel von Terminal-Tabs mit der Einstellung terminal.integrated.tabs.title konfigurieren. Standardmäßig ist der Wert ${process}, der den Namen des im Terminal laufenden Prozesses anzeigt.

Für Aufgaben bedeutet dies, dass sich der Terminaltitel ändern kann, wenn die Aufgabe einen anderen Prozess startet, was verwirrend sein kann. Um dies zu beheben, behalten wir nun den Namen der Aufgabe als Terminaltitel bei, wenn eine Aufgabe gestartet wird.

Terminal

Start-Diktierfunktion freigegeben

Wir haben die Aktion Start-Diktierfunktion zum Überlaufmenü des Terminals hinzugefügt. Diese Aktion ermöglicht es Ihnen, Spracheingaben zur Texteingabe im Terminal zu verwenden. Eine entsprechende Aktion Stopp-Diktierfunktion wird angezeigt, wenn sie relevant ist.

Screenshot of the terminal overflow menu with a Start Dictation option.

Authentifizierung

Native Broker-Unterstützung für Microsoft-Authentifizierung unter macOS

Einstellung: microsoft-authentication.implementation

In diesem Meilenstein haben wir die neuesten MSAL-Bibliotheken übernommen und damit können Sie sich nun über eine native Erfahrung unter macOS (zusätzlich zu Windows) anmelden.

Screenshot of a native broker dialog window asking to sign into VS Code.

Native Broker-Authentifizierung ist nur verfügbar für

  • M-Serie (auch bekannt als ARM) macOS-Geräte
  • macOS-Computer, die mit Intune registriert sind und die Richtlinie haben, über den Broker zu gehen

Dies ermöglicht schöne Single-Sign-On-Flows und ist der empfohlene Weg, um eine Microsoft-Authentifizierungssitzung zu erhalten. Das MSAL-Team wird dies im Laufe der Zeit für die verbleibenden Plattformen (Linux, Windows ARM, macOS Intel/x64) aktivieren, also bleiben Sie dran!

HINWEIS: Wenn Sie Probleme bei der Authentifizierung über den Broker haben, können Sie die Einstellung microsoft-authentication.implementation zu msal-no-broker ändern. Dies verwendet dann Ihren Browser für die Authentifizierung.

PKCE-Unterstützung für GitHub-Authentifizierung

GitHub hat kürzlich PKCE (Proof Key for Code Exchange) in seinen Authentifizierungsflüssen aktiviert. Wir haben dies im Fluss übernommen, den VS Code für die Authentifizierung bei GitHub verwendet.

Sprachen

Python

Aktion "Test-ID kopieren"

Das Kontextmenü des Ausführungsgatters enthält jetzt den Befehl Test-ID kopieren, um die vollqualifizierte pytest- oder unittest-Testkennung zu kopieren.

Beiträge zu Erweiterungen

GitHub Pull Requests

Es gab weitere Fortschritte bei der GitHub Pull Requests-Erweiterung, die es Ihnen ermöglicht, Pull Requests und Issues zu bearbeiten, zu erstellen und zu verwalten. Neue Funktionen umfassen

  • Das Werkzeug #openPullRequest erkennt offene PR-Diffs und PR-Dateien als "offenen Pull Request".
  • Die Einstellung githubIssues.issueAvatarDisplay kann verwendet werden, um zu steuern, ob der Avatar des ersten zugewiesenen Benutzers oder der Avatar des Autors in der Ansicht "Issues" angezeigt wird.
  • Anstatt die Pull-Request-Abfragen, die die Ansicht "Pull Requests" unterstützen, bei jeder Aktualisierung auszuführen, prüfen wir nun, ob es neue PRs im Repository gibt, bevor wir die Abfragen ausführen. Dies sollte die API-Nutzung reduzieren, wenn keine neuen PRs vorhanden sind.

Sehen Sie sich das Changelog für die Version 0.120.0 der Erweiterung an, um alles Wissenswerte über diese Version zu erfahren.

Erweiterungsentwicklung

Microsoft Authentication unterstützt jetzt WWW-Authenticate Claims Challenges

Azure erzwingt jetzt, dass alle Erstellungs-/Löschvorgänge für Azure-Ressourcen über authentifizierte Sitzungen erfolgen müssen, die MFA für die Anmeldung verwendet haben. Während einige Organisationen MFA aus beliebigen Authentifizierungsgründen verlangen, erzwingen einige Organisationen dies nicht, und diese sind von dieser MFA-Erzwingung betroffen.

Wenn Sie eine Erweiterung haben, die Microsoft Authentication verwendet und mit ARM kommuniziert, müssen Sie den Fall behandeln, wenn der ARM-API-Aufruf einen 401 Unauthorized mit einem WWW-Authenticate-Header wie folgt zurückgibt.

Bearer realm="", authorization_uri="https://login.microsoftonline.com/common/oauth2/authorize", error="insufficient_claims", claims="SOME VALUE HERE"

Die gute Nachricht ist, dass wir eine finalisierte API eingeführt haben, die Sie zur Behandlung dieses Statuscodes verwenden können.

const wwwAuthenticateFromRequest = headers['WWW-Authenticate']; // the string above
vscode.authentication.getSession(
  'microsoft',
  {
    wwwAuthenticate: wwwAuthenticateFromRequest,
    fallbackScopes: scopesFromOriginalRequest
  },
  {
    createIfNone: true
  }
);

Alles, was Sie tun müssen, ist, diesen WWW-Authenticate-Wert unverändert zusammen mit den ursprünglich angeforderten Bereichen (höchstwahrscheinlich der ARM-Bereich) zu übergeben, und der Microsoft Authentication Provider kümmert sich um den Rest und stellt sicher, dass der Benutzer durch die MFA geführt wird.

Wir haben mit dem Azure Tools-Team, dem die Azure Resources-Erweiterung gehört, zusammengearbeitet, um diese neue API zu übernehmen. Wenn Sie diese Erweiterung oder etwas verwenden, das diese Erweiterung verwendet, sollte diese Erzwingung behandelt werden. Wenn Probleme auftreten, öffnen Sie ein Issue auf der Azure Resources-Erweiterung.

HINWEIS: Sie möchten WWW-Authenticate-Challenges in Ihrer AuthenticationProvider unterstützen? Geben Sie Ihre Gedanken zur vorgeschlagenen API in Issue #267992 ab.

Beiträge zu Prompt- und Anweisungsdateien

Erweiterungen können jetzt Prompt- und Anweisungsdateien beisteuern.

  "contributes": {
    "chatPromptFiles": [
      {
        "name": "ReviewAndCreateIssue",
        "description": "Review the selected code and create an issue",
        "path": "./prompts/reviewAndCreateIssue.prompt.md"
      }
    ],
    "chatInstructions": [
      {
        "name": "TextMateGuidelines",
        "description": "Use these instructions when creating or modifying TextMate grammars",
        "path": "./prompts/textMateGuidelines.instructions.md"
      }
    ]
  }

Chat-Modus-Beiträge (chatModes) sind derzeit hinter einem vorgeschlagenen API-Flag.

Schlüssel in SecretStorage auflisten

In dieser Iteration haben wir die API zur Auflistung aller Schlüssel, die Ihre Erweiterung in Secret Storage gespeichert hat, finalisiert. Diese finden Sie im Objekt context.secrets.

export function activate(context: ExtensionContext) {
  const keys: string[] = await context.secrets.keys();

  const value = await context.secrets.get(keys[0]); // a value that exists
}

Ein Beispiel, wo dies verwendet werden kann, ist bei deactivate, wo Sie möglicherweise alle Secret Storage-Daten löschen möchten.

Technik

Playwright VS Code MCP-Server

Wir haben weiter die Verwendung eines MCP-Servers untersucht, der eine lokale Build von VS Code steuern kann, um im Entwicklungszyklus für VS Code zu helfen. Während wir gemischte Ergebnisse bei der Modellverständnis für das Parsen von Screenshots hatten, war die Orchestrierung für Subagenten mit dem Werkzeug #executePrompt (das mit github.copilot.chat.executePrompt.enabled aktiviert werden kann) effektiv, um den Kontext nicht zu verunreinigen.

Wir planen, dies in zukünftigen Versionen weiter zu untersuchen, also bleiben Sie dran!

Um diesen MCP-Server auszuprobieren, finden Sie ihn im Ordner test/mcp des vscode-Repositorys. Es ist sehr einfach zu starten.

  1. Folgen Sie den Beitragsrichtlinien, um eine lokale Version von Code OSS zum Laufen zu bringen.
  2. Verwenden Sie unsere triviale (vorerst) Prompt-Datei im Agentenmodus, um eine Frage zu stellen: /playwright <Ihre Frage hier>.

Bemerkenswerte Fehlerbehebungen

  • vscode#265842 - Chat: Korrektur eines Dateikorruptionsproblems, das Sonnet, Gemini und Grok-Modelle betrifft.
  • vscode#221255 - Korrektur, um Terminal-Links zu öffnen, unabhängig von der Bestätigung der Warnung "URIs öffnen kann unsicher sein".
  • vscode#229374 - Korrektur zum Öffnen von Terminal OSC 8 Hyperlinks zu einem Ordner im Explorer von VS Code anstelle des nativen Dateiexplorers.
  • vscode#268443 - Einstellungen-Links in Release Notes tun nichts.

Vielen Dank

Fehlerverfolgung

Beiträge zu unserer Fehlerverfolgung

Pull Requests

Beiträge zu vscode

Beiträge zu vscode-copilot-chat

Beiträge zu vscode-eslint

Beiträge zu vscode-json-languageservice

Beiträge zu vscode-mypy

Beiträge zu vscode-python-environments

Beiträge zu vscode-vsce

Beiträge zu debug-adapter-protocol

Wir schätzen es sehr, wenn Leute unsere neuen Funktionen ausprobieren, sobald sie bereit sind. Schauen Sie also oft hier vorbei und erfahren Sie, was es Neues gibt.

Wenn Sie die Release Notes für frühere VS Code-Versionen lesen möchten, gehen Sie zu Updates auf code.visualstudio.com.

© . This site is unofficial and not affiliated with Microsoft.