November 2025 (Version 1.107)
Erscheinungsdatum: 10. Dezember 2025
Downloads: Windows: x64 Arm64 | Mac: Universal Intel silicon | Linux: deb rpm tarball Arm snap
VS Code 1.107 führt die Multi-Agenten-Orchestrierung ein – nutzen Sie GitHub Copilot und benutzerdefinierte Agenten zusammen, um die Entwicklung zu beschleunigen und zu parallelisieren.
- Agent HQ bietet Ihnen einen zentralen Ort zur Verwaltung all Ihrer Agenten, sodass Copilot und benutzerdefinierte Agenten über Aufgaben hinweg zusammenarbeiten können.
- Hintergrundagenten laufen in isolierten Arbeitsbereichen, um Ihre aktive Arbeit nicht zu beeinträchtigen, und ermöglichen die gleichzeitige Ausführung mehrerer Hintergrundaufgaben.
- Delegieren Sie Aufgaben an lokale, Hintergrund- oder Cloud-Agenten, um Ihren Workflow ohne Unterbrechungen fortzusetzen.

Viel Spaß beim Programmieren!
Lesen Sie diese Versionshinweise online unter Updates auf code.visualstudio.com.
Insiders: Laden Sie den nächtlichen Insiders-Build herunter, um die neuesten Updates auszuprobieren, sobald sie verfügbar sind.
Agenten
- Verwalten Sie Ihre Agenten im Chat (Mehr anzeigen).
- Teilen Sie Agenten organisationsübergreifend (Mehr anzeigen).
- Halten Sie Agenten aktiv, während der Chat geschlossen ist (Mehr anzeigen).
- Verschieben Sie Agentensitzungen von lokal in die Cloud (Mehr anzeigen).
- Führen Sie Agenten in dedizierten Git-Worktrees aus (Mehr anzeigen).
- Kontext an Hintergrundagenten anhängen (Mehr anzeigen).
- Benutzerdefinierte Hintergrundagenten anpassen (Mehr anzeigen).
- Benutzerdefinierte Agenten über Umgebungen hinweg wiederverwenden (Mehr anzeigen).
- Benutzerdefinierte Subagenten ausführen (Mehr anzeigen).
- Claude-Fähigkeiten wiederverwenden (Mehr anzeigen).
Integration von Agentensitzungen und Chat
Einstellung: chat.viewSessions.enabled
Agenten sind entscheidend für die autonome Durchführung von Codierungsaufgaben in Ihrem Auftrag. Die Chat-Oberfläche ist die primäre Möglichkeit, mit Agenten zu interagieren, unabhängig davon, wo sie ausgeführt werden: lokal in VS Code, im Hintergrund über eine CLI, in der Cloud oder über Erweiterungen von Drittanbietern. Erfahren Sie mehr über die Verwendung von Agenten in VS Code in unserer Dokumentation.
In dieser Iteration haben wir die Agentensitzungen in die Chat-Ansicht integriert, um Ihnen ein einheitliches Erlebnis bei der Arbeit mit Agenten zu bieten. Auf einen Blick können Sie den Status, den Fortschritt und die Dateiänderungsstatistiken der Sitzung sehen. Sie können Sitzungen archivieren oder dearchivieren, um die Sitzungsliste übersichtlich zu halten.
Wenn Sie in einem Arbeitsbereich arbeiten, zeigt die Sitzungsliste nur Sitzungen an, die sich auf den aktuellen Arbeitsbereich beziehen. Wenn Sie sich in einem leeren Fenster befinden, werden alle Sitzungen über Arbeitsbereiche hinweg angezeigt.
Wenn Sie eine Sitzung aus der Liste auswählen, wird die Sitzung in der Chat-Ansicht in der Seitenleiste geöffnet, sodass Sie den vollständigen Konversationsverlauf sehen können. Wenn Sie möchten, können Sie eine Sitzung auch als Editor-Tab oder in einem neuen Fenster öffnen. Klicken Sie mit der rechten Maustaste auf eine Sitzung, um das Kontextmenü mit diesen Optionen anzuzeigen.

Sie können die Sitzungsliste in der Chat-Ansicht deaktivieren, indem Sie chat.viewSessions.enabled konfigurieren.
Als Konsequenz dieser Änderung deaktivieren wir standardmäßig die eigenständige Ansicht Agentensitzungen. Wenn Sie die eigenständige Ansicht weiterhin verwenden möchten, können Sie sie über chat.agentSessionsViewLocation wieder aktivieren. In einer zukünftigen Version planen wir, die eigenständige Ansicht vollständig zu entfernen.
Kompakte Ansicht
Wenn die Chat-Ansicht schmal ist, wird die Liste der Sitzungen innerhalb der Chat-Ansicht angezeigt, wenn Sie eine neue Chat-Sitzung starten. Standardmäßig zeigt die Liste die drei zuletzt nicht archivierten Sitzungen an.

Wählen Sie Alle Sitzungen anzeigen, um die vollständige Liste der Sitzungen mit Optionen zum Suchen und Filtern anzuzeigen.

Sie können die Aktion verwenden, um die Seitenleiste für Agentensitzungen für eine breitere Ansicht aller Sitzungen umzuschalten.
Nebeneinander-Ansicht
Sobald die Chat-Ansicht breit genug ist (z. B. wenn Sie sie maximieren), wird die Liste der Agentensitzungen automatisch nebeneinander mit der Chat-Ansicht angezeigt. Diese Ansicht ermöglicht es Ihnen, schnell zwischen den Sitzungen zu navigieren, ohne den Kontext zu verlieren. Sie können diese Nebeneinander-Ansicht auch manuell mit der entsprechenden Steuerung umschalten.

Um die Sitzungsliste einzuschränken, können Sie Sitzungen nach Anbieter oder Status filtern. VS Code speichert diesen Filter.
Ausrichtungseinstellung
Einstellung: chat.viewSessions.orientation
Standardmäßig erscheint die Sitzungsliste nebeneinander mit der Chat-Ansicht, wenn diese breit genug ist oder wenn Sie die Sitzungsliste manuell umschalten. Sie können dieses Verhalten mit der Einstellung chat.viewSessions.orientation ändern.
auto(Standard): Sitzungen nebeneinander anzeigen, wenn die Breite es zulässt, andernfalls über leeren Chats anzeigenstacked: Sitzungen immer über leeren Chats anzeigensideBySide: Sitzungsliste nebeneinander anzeigen, wenn die Breite es zulässt, andernfalls die Sitzungsliste ausblenden
Lokale Agentensitzungen bleiben nach dem Schließen aktiv
Zuvor wurde eine laufende Agentenanfrage abgebrochen, wenn Sie eine lokale Chatsitzung geschlossen haben. Dies schränkte die Nützlichkeit lokaler Agenten für langwierige Aufgaben oder die gleichzeitige Ausführung mehrerer Aufgaben ein.
Jetzt läuft der lokale Agent weiterhin im Hintergrund, auch wenn er nicht in einem Chat-Editor oder der Chat-Ansicht geöffnet ist. Sie können den Status des laufenden Agenten in der Sitzungsliste sehen und jederzeit zur Sitzung zurückkehren, um den detaillierten Fortschritt zu sehen.
Erfahren Sie mehr über die Verwendung lokaler Agenten im Chat.
Aufgaben in Hintergrund- oder Cloud-Agenten fortsetzen
Lokale Agenten eignen sich hervorragend für interaktive Sitzungen innerhalb von VS Code, in denen Sie mit dem Agenten hin und her kommunizieren können. Dies kann nützlich sein, um Brainstorming zu betreiben, explorative Aufgaben durchzuführen oder einen Implementierungsplan auszuarbeiten. Sobald Sie einen klaren Plan haben, können Sie die Aufgabe an einen Hintergrund- oder Cloud-Agenten übergeben, um sie autonom auszuführen.
In dieser Iteration haben wir die Erfahrung verbessert, um einen lokalen Chat mit einem Hintergrund- oder Cloud-Agenten fortzusetzen. Über die Benutzeroberfläche können Sie jetzt eine Aufgabe nahtlos mit der neuen Option Fortsetzen in fortsetzen.
Wenn Sie einen lokalen Chat an einen Hintergrund- oder Cloud-Agenten fortsetzen, wird der aktuelle Chat-Kontext mit übergeben und die ursprüngliche Sitzung wird nach der Übergabe archiviert.
-
Chat-Ansicht

-
Agentenplaner

-
Unbenannte Prompt-Datei

Hintergrundagenten mit Git-Worktrees isolieren
Hintergrundagenten (früher CLI-Agenten genannt) sind darauf ausgelegt, autonom im Hintergrund zu laufen, sodass Sie Aufgaben auslagern können, während Sie sich auf andere Arbeiten konzentrieren. Das gleichzeitige Ausführen mehrerer Hintergrundagenten kann zu Konflikten führen, wenn sie dieselben Dateien in Ihrem Arbeitsbereich ändern.
In dieser Iteration haben wir die Isolation von Hintergrundagenten verbessert, indem wir die Unterstützung für Git-Worktrees eingeführt haben. Wenn Sie einen neuen Hintergrundagenten erstellen, können Sie wählen, ob Sie ihn im aktuellen Arbeitsbereich ausführen oder in einem dedizierten Git-Worktree ausführen möchten.

Wenn Sie einen Hintergrundagenten in einem Worktree ausführen, erstellt der Agent automatisch einen neuen Git-Worktree für die Sitzung und isoliert seine Änderungen in einem separaten Ordner. So können Sie mehrere Hintergrundagenten gleichzeitig ohne Konflikte ausführen.
Sie können die vom Hintergrundagenten im Worktree vorgenommenen Änderungen leicht überprüfen und zurück in Ihren Hauptarbeitsbereich zusammenführen, sobald der Agent seine Aufgabe abgeschlossen hat. Wir haben auch eine neue Aktion hinzugefügt, um die Änderungen aus einem Worktree direkt in Ihren Arbeitsbereich zu übertragen.

Erfahren Sie mehr über die Verwendung von Hintergrundagenten in VS Code.
Kontext zu Hintergrundagenten hinzufügen
Hintergrundagenten unterstützen jetzt mehrere Kontextanhangtypen. Sie können Auswahlen, Probleme, Symbole, Suchergebnisse, Git-Commits und mehr an beliebige Prompts anhängen. Dies ermöglicht die Erstellung reichhaltigerer, präziserer Prompts und eröffnet komplexere und flexiblere Workflows. Hängen Sie beispielsweise ein gemeldetes Problem an und bitten Sie den Agenten, es zu beheben, ohne Dateipfade und Zeilennummern manuell angeben zu müssen.

Teilen Sie benutzerdefinierte Agenten organisationsübergreifend für Ihre GitHub-Organisation (Experimentell)
Einstellung: github.copilot.chat.customAgents.showOrganizationAndEnterpriseAgents
Zuvor konnten Sie benutzerdefinierte Agenten nur auf Arbeitsbereichs- oder Benutzerebene definieren. Wenn Sie benutzerdefinierte Agenten organisationsübergreifend freigeben wollten, mussten Sie die Agentendateien manuell an jeden Benutzer verteilen.
In dieser Version können Sie benutzerdefinierte Agenten jetzt auf Organisationsebene für Ihr GitHub-Konto definieren. Diese experimentelle Funktion ermöglicht es Ihnen, organisationsspezifische Agenten neben Ihren persönlichen Agenten im Chat zu verwenden.
Um diese Funktion zu aktivieren, setzen Sie github.copilot.chat.customAgents.showOrganizationAndEnterpriseAgents auf true. Nach der Aktivierung erscheinen von Ihrer Organisation erstellte benutzerdefinierte Agenten im Dropdown-Menü „Agenten“ in VS Code.
Weitere Informationen zum Erstellen benutzerdefinierter Agenten für Ihre Organisation finden Sie unter Benutzerdefinierte Agenten erstellen in der GitHub-Dokumentation.
Benutzerdefinierte Agenten mit Hintergrundagenten verwenden (Experimentell)
Einstellung: github.copilot.chat.cli.customAgents.enabled
Sie können jetzt Ihre eigenen benutzerdefinierten Agenten in Hintergrundagenten integrieren. Nach der Aktivierung erscheinen benutzerdefinierte Agenten, die in Ihrem Ordner .github/agents definiert sind, in Ihrer Agentenliste, sodass Sie Agenten nutzen können, die auf Ihre Workflows und Anforderungen zugeschnitten sind.
Diese experimentelle Funktionalität kann mit der Einstellung github.copilot.chat.cli.customAgents.enabled aktiviert werden.

Erfahren Sie mehr über die Definition von benutzerdefinierten Agenten in unserer Dokumentation.
Neustrukturierung der Agenten-Tools
Wir haben die Struktur der Agenten-Tools neu organisiert, um eine bessere Kompatibilität mit benutzerdefinierten GitHub-Agenten zu ermöglichen. Dies ermöglicht Ihnen, benutzerdefinierte Agenten einfacher über VS Code- und GitHub-Umgebungen hinweg wiederzuverwenden, ohne separate Konfigurationen zu benötigen.
Als Teil dieser Änderung haben wir bestimmte bestehende Tool-Referenzen und die zugehörigen Toolsets umbenannt. Bestehende Tool-Referenzen in Ihren Agentendateien funktionieren weiterhin, aber Sie sehen eine Code-Aktion, um sie in das neueste empfohlene Format umzubenennen. Dies stellt sicher, dass Ihre Agentenkonfigurationen den aktuellen Best Practices folgen und plattformübergreifend kompatibel bleiben.
Run agents as subagents (Experimental)
Einstellung: chat.customAgentInSubagent.enabled
Wenn ein Agent ein komplexes Problem lösen muss, kann er Aufgaben an Subagenten delegieren. Subagenten arbeiten unabhängig von der Hauptchatsitzung und verfügen über ein eigenes Kontextfenster. Dies hilft der Hauptkonversation, sich auf das übergeordnete Ziel zu konzentrieren, und hilft bei der Verwaltung von Einschränkungen des Kontextfensters.
Mit dieser Version können Sie Subagenten über benutzerdefinierte Agenten anpassen. Mit benutzerdefinierten Agenten können Sie spezielle Personas für die KI definieren und deren Verhalten an bestimmte Aufgaben oder Domänen anpassen. Beispielsweise konzentriert sich ein Code-Reviewer-Agent auf die Überprüfung von Code, anstatt Codeänderungen vorzunehmen.
Befolgen Sie diese Schritte, um benutzerdefinierte Agenten als Subagenten zu verwenden:
-
Aktivieren Sie chat.customAgentInSubagent.enabled
-
Erstellen Sie einen benutzerdefinierten Agenten mit dem Befehl Chat: Neuer benutzerdefinierter Agent, falls Sie noch keinen haben.
-
Fragen Sie im Chat das Modell „Welche Subagenten können Sie verwenden?“, um die Liste der verfügbaren Subagenten anzuzeigen. Ihr benutzerdefinierter Agent sollte in der Liste erscheinen.
-
Geben Sie einen Prompt ein, der die Anforderungen für Ihren benutzerdefinierten Agenten erfüllt. Das Sprachmodell verwendet die Beschreibung und die Argumente des benutzerdefinierten Agenten, um zu bestimmen, ob er für Ihre Anfrage verwendet werden soll.

Um zu verhindern, dass ein benutzerdefinierter Agent als Subagent verwendet wird, setzen Sie die Metadateneigenschaft infer in der Datei *.agent.md auf false.
Erfahren Sie mehr über die Verwendung von Subagenten im Chat.
Wiederverwenden Ihrer Claude-Fähigkeiten (Experimentell)
Einstellung: chat.useClaudeSkills
Fähigkeiten wurden von Claude Code eingeführt und sind Fähigkeiten, die ein Agent bei Bedarf laden kann. Jede Fähigkeit wird mit einer kurzen Beschreibung geliefert, die die Fähigkeit bewirbt. Wenn nützlich, kann der Agent entscheiden, die vollständigen Anweisungen der Fähigkeit zu lesen. Fähigkeitsanweisungen können unterstützende Dateien wie Skripte und Vorlagen enthalten. Nach dem Laden sind die Fähigkeitsanweisungen und unterstützenden Dateien Teil des Kontexts der Hauptkonversation.
VS Code kann jetzt Ihre vorhandenen Fähigkeiten wiederverwenden. Aktivieren Sie die Einstellung chat.useClaudeSkills, damit Agenten Ihre Fähigkeiten erkennen und verwenden können.

VS Code unterstützt persönliche Fähigkeiten unter ~/.claude/skills/skill-name/SKILL.md und Projektfähigkeiten in Arbeitsbereichsordnern unter ${workspaceFolder}.claude/skills/skill-name/SKILL.md.
Stellen Sie sicher, dass die Datei SKILL.md im Header ein description-Attribut hat, das die Fähigkeit bewirbt. Beachten Sie, dass das Attribut allowed-tools in VS Code nicht unterstützt wird.
Stellen Sie im Agentenmodus sicher, dass das Tool zum Lesen von Dateien aktiviert ist, und fragen Sie „Welche Fähigkeiten haben Sie?“, um herauszufinden, ob Fähigkeiten gefunden wurden. Machen Sie dann eine Anfrage, die mit einer Fähigkeit beantwortet werden kann. Wenn der Agent die Fähigkeit nicht verwendet, verbessern Sie die Fähigkeitsbeschreibung oder weisen Sie das Modell an, Fähigkeiten zu verwenden.
Chat
- Inline-Chat ist für Code-Änderungen optimiert (Mehr anzeigen).
- Verwalten Sie Ihre Chat-Modelle (Mehr anzeigen).
- Überprüfen Sie externe Webinhalte (Mehr anzeigen).
- Dynamische Webinhalte abrufen (Mehr anzeigen).
- Ignorierte Dateien durchsuchen (Mehr anzeigen).
- Auf Terminalausgaben im Chat zugreifen (Mehr anzeigen).
- Terminalbefehle für Ihre Sitzung automatisch genehmigen (Mehr anzeigen).
- Weitere Tastenkombinationen verfügbar (Mehr anzeigen).
- Verwenden Sie Entra ID für Azure-gehostete Modelle (Mehr anzeigen).
- Chat effizienter nutzen (Mehr anzeigen).
- Diffs für Bearbeitungen an sensiblen Dateien anzeigen (Mehr anzeigen).
- Chat-Toolaufrufe für Argumentationsmodelle ausblenden (Mehr anzeigen).
Inline-Chat-UX
Einstellung: inlineChat.enableV2
Wir verbessern die Inline-Chat-Erfahrung weiter, um sie an andere Chat-Erfahrungen in VS Code anzupassen und sie für schnelle, einheitliche Codeänderungen zu optimieren.
Zuvor konnten Sie Inline-Chat auch für allgemeine Fragen und Diskussionen verwenden. Jetzt ist Inline-Chat für Codeänderungen innerhalb der aktuellen Datei optimiert. Für Aufgaben, die Inline-Chat nicht bewältigen kann, werden Sie automatisch zur Chat-Ansicht weitergeleitet, wo Ihre Eingabeaufforderung mit demselben Modell und demselben Kontext wiederholt wird.
Die Einstellung inlineChat.enableV2 (Vorschau) steuert jetzt nur noch, wie die Erweiterung Ihre Eingabeaufforderung verarbeitet. Dies befindet sich noch in der Entwicklung, kann aber mit Zuversicht ausprobiert werden.
Sprachmodelle-Editor
Chat in VS Code unterstützt mehrere Sprachmodelle, die entweder von GitHub Copilot, von Drittanbieter-Erweiterungen oder über Bring-Your-Own-Key (BYOK)-Anbieter bereitgestellt werden. Die Verwaltung all dieser Modelle kann eine Herausforderung sein, insbesondere wenn Sie Zugriff auf viele Modelle von verschiedenen Anbietern haben. Erfahren Sie mehr über die Verwendung von Sprachmodellen in VS Code.
Der Editor Sprachmodelle bietet einen zentralen Ort, um alle verfügbaren Sprachmodelle für den Chat in VS Code anzuzeigen und zu verwalten. Sie können ihn über den Modellauswahl im Chat oder über die Befehlspalette mit Chat: Sprachmodelle verwalten öffnen.
Der Editor listet alle Ihnen zur Verfügung stehenden Modelle auf und zeigt wichtige Informationen wie die Modellfähigkeiten, die Kontextgröße, Abrechnungsdetails und den Sichtbarkeitsstatus an. Standardmäßig sind die Modelle nach Anbieter gruppiert, Sie können sie aber auch nach Sichtbarkeit gruppieren.
Fahren Sie mit der Maus über Modellnamen oder Kontextgrößen, um detaillierte Informationen einschließlich Modell-ID, Version, Status und Token-Aufschlüsselung anzuzeigen.
Sie können Modelle suchen und filtern mit
- Textsuche mit Hervorhebung
- Anbieterfilter:
@provider:"OpenAI" - Fähigkeitsfilter:
@capability:tools,@capability:vision,@capability:agent - Sichtbarkeitsfilter:
@visible:true/false
Sichtbarkeit von Modellen verwalten
Da Ihnen mehr Modelle zur Verfügung stehen, kann die Modellauswahl überfordernd und schwer zu navigieren sein. Im Editor „Sprachmodelle“ können Sie die Sichtbarkeit jedes Modells umschalten, um zu steuern, welche Modelle in der Modellauswahl angezeigt werden. Fahren Sie mit der Maus über ein Modell und wählen Sie das Augensymbol aus, um seine Sichtbarkeit umzuschalten.
Modelle von installierten Anbietern hinzufügen
Im Editor „Sprachmodelle“ können Sie mit Modelle hinzufügen... weitere Modelle hinzufügen. Dies öffnet eine Dropdown-Liste aller installierten Modell-Anbieter. Wählen Sie einen Anbieter aus, um ihn zu konfigurieren und seine Modelle zum Chat in VS Code hinzuzufügen.
Dies erleichtert die Aktivierung zusätzlicher Modell-Anbieter, die Sie installiert haben, ohne den Editor „Sprachmodelle“ verlassen zu müssen. Greifen Sie auf die Anbieterverwaltung zu, indem Sie das Zahnradsymbol in den Anbieterzeilen auswählen.
URL- und Domain-automatische Genehmigung
In dieser Iteration haben wir die Sicherheit und Benutzerfreundlichkeit der automatischen Genehmigung von URLs für das Fetch-Tool verbessert. Wenn das Modell beschließt, Inhalte von einer URL abzurufen, die Sie nicht explizit angefordert haben, sehen Sie die neue zweistufige Genehmigungserfahrung.
-
Genehmigen Sie die anfängliche Anfrage zum Abrufen der URL
Dieser Schritt stellt sicher, dass Sie der kontaktierten Domain vertrauen, und kann verhindern, dass sensible Daten an nicht vertrauenswürdige Websites gesendet werden.

Sie haben die Optionen zur einmaligen Genehmigung oder zur automatischen Genehmigung zukünftiger Anfragen an die spezifische URL oder Domain.
Die Voreinwilligung respektiert die Funktion "Vertrauenswürdige Domains". Wenn eine Domain dort aufgeführt ist, wird Ihnen die automatische Genehmigung erteilt, Anfragen an diese Domain zu stellen, und Sie werden zum Schritt der Antwortprüfung weitergeleitet.
-
Genehmigen Sie die Verwendung der abgerufenen Inhalte im Chat und bei nachfolgenden Toolaufrufen
Dieser Schritt stellt sicher, dass Sie die abgerufenen Inhalte überprüfen, bevor sie dem Chat hinzugefügt oder an andere Tools weitergeleitet werden, und verhindert so potenzielle Prompt-Injection-Angriffe.
Sie könnten beispielsweise eine Anfrage zum Abrufen von Inhalten von einer bekannten Website wie GitHub.com genehmigen. Da die Inhalte, wie z. B. Beschreibungen oder Kommentare zu Issues, jedoch benutzergeneriert sind, könnten sie schädliche Inhalte enthalten, die das Verhalten des Modells manipulieren.
Erfahren Sie mehr über die URL- und Domain-Genehmigung im VS Code Chat.
Robusteres Fetch-Tool
Das Agenten-Tool #fetch verarbeitet dynamische Webinhalte jetzt effektiver. Es kann neben statischem HTML auch dynamische Inhalte abrufen. Websites, die JavaScript zum Laden ihrer Inhalte verwenden, wie Single-Page Applications (SPAs), moderne Dokumentationsseiten oder Issue-Tracking-Systeme wie Jira, liefern keine unvollständigen oder leeren Ergebnisse mehr.
Das Fetch-Tool wartet, bis JavaScript ausgeführt und Inhalte geladen sind, bevor die Seite abgerufen wird, um sicherzustellen, dass dynamisch gerenderte Inhalte erfasst werden. Diese Verbesserung macht das Tool in realen Szenarien erheblich nützlicher.
Wenn Sie #fetch gefolgt von einer URL verwenden, greift das Modell auf die tatsächlichen Inhalte zu, die Sie im Browser sehen würden, nicht nur auf das anfängliche HTML-Skelett. Das bedeutet genauere und vollständigere Informationen, wenn Sie Fragen zu Webseiten stellen oder das Modell auffordern, Online-Inhalte zu analysieren.
Textsuchwerkzeug kann ignorierte Dateien durchsuchen
Das Werkzeug #textSearch unterstützt jetzt die Suche in ignorierten Dateien/Ordnern, die durch die Einstellungen files.exclude oder search.exclude oder .gitignore-Dateien angegeben sind, wie z. B. der Ordner node_modules. Es gibt auch Hinweise an den Agenten über die ignorierten Dateien/Ordner zurück, wenn keine Ergebnisse vorhanden sind, sodass Agenten diese ignorierten Dateien/Ordner durchsuchen können.
Reichhaltige Terminalausgabe im Chat
Die Verwendung von Ausgabe umschalten bei einer Antwort von In Terminal ausführen rendert die Ausgabe jetzt in einem vollständigen, schreibgeschützten xterm.js-Terminal innerhalb des Chats. Ein angenehmer Vorteil dieses Ansatzes ist, dass VS Code erfasste Ausgaben auch nach Beendigung des zugrunde liegenden Terminals beibehält, sodass Sie frühere Ausführungen jederzeit wieder öffnen und die Terminalausgabe so sehen können, wie sie zum Zeitpunkt der Befehlsausführung war.
Das Chat-Terminal übernimmt jetzt das Farbschema des integrierten Terminals für einen verbesserten ANSI-Farbkontrast. Benutzer von Screenreadern können die zugängliche Ansicht ⌥F2 (Windows Alt+F2, Linux Shift+Alt+F2) öffnen, wenn die Ausgabe den Fokus hat, was eine einfache Überprüfung und Navigation ermöglicht.
Erfahren Sie mehr über die Verwendung von Terminalbefehlen im Chat.
Befehlsstatusdetails in Chat-Terminals
Chat-Terminalnachrichten zeigen jetzt Startzeit, Dauer und Exit-Code des Befehls beim Hover über die Befehlsdekoration an.

Alle Terminalbefehle in dieser Sitzung zulassen
Um Ihre Chat-Erfahrung zu optimieren und gleichzeitig Sicherheit und Kontrolle zu wahren, verfügt das Terminal-Tool über eine neue Auto-Approve-Option, um alle zukünftigen Befehle für die Sitzung zuzulassen. Wenn Sie eine neue Sitzung starten, folgen Terminalbefehle der vorhandenen Genehmigungskonfiguration.

Tastenkombinationen für Chat-Terminalaktionen
Sie können jetzt das zuletzt verwendete Chat-Terminal fokussieren ⇧⌥⌘T (Windows, Linux Ctrl+Shift+Alt+T) oder seinen Erweiterungsstatus umschalten ⇧⌥⌘O (Windows, Linux Ctrl+Shift+Alt+O) über spezielle Tastenkombinationen.
Tastenkombinationen für benutzerdefinierte Agenten
Jeder benutzerdefinierte Agent hat jetzt eine separate Aktion in der Befehlsliste für sich, und Sie können Tastenkombinationen individuell dafür binden. Wenn Sie beispielsweise einen benutzerdefinierten Agenten "Code-Reviewer" definieren, gibt es in der Befehlspalette einen Befehl Chat: Chat öffnen (Code-Reviewer-Agent), an den Sie eine Tastenkombination binden können.

Azure-Modell-Provider: Entra ID als Standardauthentifizierung
Einstellung: github.copilot.chat.azureAuthType
Standardmäßig verwendet der Azure-Modell-Provider jetzt die Entra ID-Authentifizierung beim Verbinden mit Bring-Your-Own-Key (BYOK)-Modellen, was eine verbesserte Sicherheit und eine reibungslosere Anmeldeerfahrung bietet.
Wenn Sie sich lieber mit einem API-Schlüssel authentifizieren möchten, setzen Sie github.copilot.chat.azureAuthType auf apiKey anstelle von entraId (Standard).
Verbesserungen des Erscheinungsbilds der Chat-Ansicht
Wir haben mehrere Verbesserungen am Erscheinungsbild der Chat-Ansicht vorgenommen, um die Lesbarkeit und Benutzerfreundlichkeit zu verbessern.
-
Chat-Titel:
Wenn Sie einen Chat öffnen, erscheint oben eine neue Titelleiste, die Ihnen den Titel des Chats anzeigt und Ihnen eine schnelle Möglichkeit bietet, zu einem leeren Chat zurückzukehren. Konfigurieren Sie dieses Verhalten über die Einstellung chat.viewTitle.enabled.
-
Begrüßungsbanner:
Wenn Sie eine minimalistischere Erfahrung beim Öffnen eines neuen Chats bevorzugen, können Sie mit der neuen Einstellung chat.viewWelcome.enabled das Symbol und den Willkommens-Text ausblenden.

-
Vorherige Chatsitzung wiederherstellen:
Wenn Sie nach einem Neustart oder dem Öffnen eines anderen Arbeitsbereichs den Chat öffnen, wird die vorherige Sitzung jetzt standardmäßig wiederhergestellt. Sie können dieses Verhalten über die Einstellung chat.viewRestorePreviousSession ändern und wählen, ob immer ein leerer Chat gestartet werden soll.
Diffs für Bearbeitungen an sensiblen Dateien
Wenn der Chat versucht, sensible Dateien wie settings.json oder package.json zu bearbeiten, erhalten Sie eine Benachrichtigung und werden aufgefordert, die Änderungen zu genehmigen, bevor sie angewendet werden. Sie können konfigurieren, welche Dateien als sensibel gelten, über die Einstellung chat.tools.edits.autoApprove.
Zuvor sahen Sie die rohe Bearbeitung, die das Modell vorgeschlagen hat, was schwer zu verstehen sein konnte. Jetzt zeigen wir Ihnen ein Diff der vorgeschlagenen Änderungen, was die Überprüfung und Genehmigung der Bearbeitungen erleichtert.

Erfahren Sie mehr über die Bearbeitung von sensiblen Dateien im Chat.
Kollabierbare Argumentations- und Toolausgabe (Experimentell)
Einstellung: chat.agent.thinkingStyle, chat.agent.thinking.collapsedTools
Mit der Argumentation des Sprachmodells und der Ausgabe von Agenten-Tools kann eine Chat-Konversation schnell lang und schwer zu verfolgen werden. In der letzten Iteration haben wir bereits daran gearbeitet, die Anzeige von Denk-Tokens im Chat mit der Einstellung chat.agent.thinkingStyle zu verbessern.
In dieser Iteration optimieren wir die Chat-Erfahrung weiter, indem wir kollabierbare Chat-Abschnitte für die nicht-argumentierte Chat-Ausgabe, wie z. B. Toolaufrufe, einführen. Standardmäßig werden aufeinanderfolgende Toolaufrufe jetzt komprimiert, um visuelle Unordnung zu reduzieren.
Kollabierbare Elemente (die meisten Tools und Argumentationstexte) werden zusammengefasst und jeder kollabierbare Abschnitt erhält einen KI-generierten Titel.

MCP
- Wir haben die Unterstützung für die neueste MCP-Spezifikation hinzugefügt (Mehr anzeigen).
- Verwenden Sie den GitHub-Remote-MCP-Server ohne zusätzliche Einrichtung (Mehr anzeigen).
Unterstützung für die neueste MCP-Spezifikation
VS Code unterstützt die neueste Überarbeitung der MCP-Spezifikation, 2025-11-25. Dies beinhaltet unter anderem
- URL-Modus-Ermittlung
- Aufgaben für langlaufende, resiliente Toolaufrufe und Clientarbeit.
- Erweiterungen für Enum-Auswahlen bei der Ermittlung
Diese Verbesserungen kommen zusätzlich zu den 2025-11-25-Entwurfsfunktionen, die VS Code bereits unterstützt, wie z. B. WWW-Authenticate Scope Consent, der Client ID Metadata Document-Authentifizierungsfluss und Icons für Tools, Ressourcen und Server. Sie können das Änderungsprotokoll für den Entwurf von 2025-11-25 auf der MCP-Website einsehen.
Erfahren Sie mehr über die Verwendung von MCP-Servern in VS Code.
GitHub MCP Server bereitgestellt von GitHub Copilot Chat (Vorschau)
Einstellung: github.copilot.chat.githubMcpServer.enabled
Der GitHub Remote MCP Server wird jetzt als integrierter MCP-Server in der GitHub Copilot Chat-Erweiterung bereitgestellt und bietet eine nahtlose Integration mit GitHub-Repositorys und -Diensten. Diese Integration bietet mehrere Vorteile:
- Ausrichtung mit anderen Copilot Agent Harnesses wie Copilot CLI und Copilot Cloud Agent, die bereits den GitHub MCP Server verwenden
- Wiederverwendung des vorhandenen GitHub-Authentifizierungsstatus, wodurch zusätzliche Authentifizierungsaufforderungen entfallen
- Transparente Unterstützung für verschiedene GitHub MCP-Endpunkte, einschließlich GHE.com
Um den GitHub MCP Server zu aktivieren, setzen Sie die Einstellung github.copilot.chat.githubMcpServer.enabled auf true. Sobald er aktiviert ist, erscheint der Server automatisch im Toolauswahl, wenn Agenten verwendet werden. Dies ermöglicht es Ihnen, Fragen zu GitHub Issues, Pull Requests und anderen Repository-Informationen ohne zusätzliche Konfiguration und Einrichtung zu stellen.
Der GitHub MCP Server unterstützt Anpassungen durch mehrere Einstellungen
- github.copilot.chat.githubMcpServer.toolsets: Konfigurieren Sie, welche Tools verfügbar sind. Standardmäßig wird der
defaultToolset verwendet, aber Sie können ihn erweitern, indem Sieworkflowsoder andere Toolsets hinzufügen, wie in der GitHub MCP Server Dokumentation dokumentiert ist. Hinweis: Das Hinzufügen bestimmter Toolsets kann zusätzliche Berechtigungen erfordern und die erneute Authentifizierung wird noch nicht unterstützt. Bitte sehen Sie sich dieses GitHub-Issue an, um den Fortschritt zu verfolgen. - github.copilot.chat.githubMcpServer.readonly: Erzwingt, dass der Server nur schreibgeschützte Tools zurückgibt, wodurch Schreibvorgänge verhindert werden.
- github.copilot.chat.githubMcpServer.lockdown: Zusätzliche Sicherheitskontrolle für das Toolverhalten.
Hinweis: Diese Funktion befindet sich derzeit in der Vorschau und erfordert eine explizite Zustimmung über die oben genannte Einstellung. Wir planen, sie in einer zukünftigen Version standardmäßig zu aktivieren, sodass sie verfügbar ist, wenn sie benötigt wird, aber nicht aufdringlich, wenn sie nicht benötigt wird.
Barrierefreiheit
Tastaturbestätigung für Chat-Bestätigungen
Wenn ein Agent zur Bestätigung auffordert, können Sie jetzt die Bestätigung über die Tastatur mit ⌘Enter (Windows, Linux Ctrl+Enter) vornehmen.
Editor-Erlebnis
- Einfachere Identifizierung geöffneter Projekte (Mehr anzeigen).
- Wischen zur Navigation auf macOS (Mehr anzeigen).
- Wählen Sie aus, wann Hover-Popups angezeigt werden sollen (Mehr anzeigen).
Mehr Unterstützung zur Anzeige geöffneter Fenster in Auswahlen
Wir haben der Auswahl **Zuletzt geöffnet** eine Anzeige hinzugefügt, die anzeigt, wenn ein Arbeitsbereich bereits in einem VS Code-Fenster geöffnet ist.

Das aktuell aktive Fenster wird etwas anders angezeigt als andere geöffnete Fenster, um diesen Unterschied klarer zu machen. Einträge, die in keinem Fenster geöffnet sind, haben kein Symbol.
Die Anzeige, welches Fenster aktiv ist, wurde auch auf die Fenster-Auswahl angewendet.
macOS: Wischen mit der Maus zur Navigation
Einstellung: workbench.editor.swipeToNavigate
Unter macOS können Sie jetzt mit einer 3-Finger-Wischgeste auf dem Trackpad zwischen Editoren navigieren. Ein Wischen nach links oder rechts navigiert durch zuletzt verwendete Editoren in jeder Editor-Gruppe. Aktivieren Sie dies mit der Einstellung workbench.editor.swipeToNavigate.
Hinweis: Derzeit unterstützen wir nur die 3-Finger-Wischgeste. Stellen Sie sicher, dass Ihre Trackpad-Einstellungen für das Wischen wie folgt konfiguriert sind, damit dies funktioniert:
- Zwischen Seiten wischen: Mit drei Fingern nach links oder rechts scrollen.
- Zwischen Vollbild-Apps wischen: Mit vier Fingern nach links oder rechts wischen.
Editor-Hover-Popups bei Bedarf
Einstellung: editor.hover.enabled
Sie können jetzt automatische Hover-Popups im Editor deaktivieren und gleichzeitig die Möglichkeit beibehalten, Hover-Informationen bei Bedarf über einen Tastaturmodifikator auszulösen. Die Einstellung editor.hover.enabled unterstützt jetzt drei Werte: on, off und onKeyboardModifier.
Wenn auf onKeyboardModifier gesetzt, erscheinen Hover-Informationen nur, wenn Sie den Modifikator-Schlüssel halten, der dem in Ihrer editor.multiCursorModifier-Einstellung entgegengesetzt ist, während Sie über Code schweben. Dies reduziert visuelle Ablenkungen während der Textauswahl und bewahrt gleichzeitig den schnellen Zugriff auf kontextbezogene Informationen bei Bedarf.
Wenn beispielsweise Ihre editor.multiCursorModifier auf ctrlCmd eingestellt ist, erscheint ein Hover, wenn Sie Alt gedrückt halten, während Sie schweben. Wenn auf alt eingestellt, erscheint ein Hover, wenn Sie Strg (oder Cmd unter macOS) gedrückt halten.
Code-Bearbeitung
- TypeScript bietet Umbenennungsvorschläge (Mehr anzeigen).
- Verwenden Sie ein neues Modell für Vorschläge für die nächste Bearbeitung (Mehr anzeigen).
- Vorschau auf nächste Bearbeitungsvorschläge außerhalb Ihres Ansichtsbereichs (Mehr anzeigen).
Umbenennungsvorschläge für TypeScript
Umbenennungsvorschläge sagen voraus, wann eine Symbolumbenennung stattfinden soll, anstatt eines regulären Textvorschlags. Wenn vorhergesagt, wird zusätzlich zu der normalen Textbearbeitung eine zusätzliche Anzeige angezeigt. Sie können dann die Symbolumbenennung mit Umschalttaste+Tab anwenden.
Im folgenden Video wird die Eigenschaft a in width umbenannt. Der Umbenennungsvorschlag schlägt dann vor, b in height umzubenennen und die beiden Parameter a und b entsprechend anzupassen. Die nächste Umbenennung funktioniert am besten, wenn sie verwandte Umbenennungen auf andere Symbole vorhersagt.
Hinweis: Diese Funktion wird derzeit über ein Experiment an unsere Benutzer verteilt und ist vorerst nur für TypeScript verfügbar. Die Unterstützung für andere Programmiersprachen ist geplant.
Neues Modell für Vorschläge für die nächste Bearbeitung
Wir haben ein neues Modell für Vorschläge für die nächste Bearbeitung veröffentlicht, das intelligenter und besser auf Ihre letzten Bearbeitungen abgestimmt ist. Es bietet eine deutlich bessere Akzeptanz- und Abbruchleistung. Erfahren Sie mehr über das Modell und seine Entwicklung in unserem GitHub-Blogbeitrag.
Vorschau auf nächste Bearbeitungsvorschläge außerhalb des Ansichtsbereichs
Wenn Sie einen Vorschlag für die nächste Bearbeitung erhalten, der sich außerhalb des aktuellen Ansichtsbereichs befindet, kann es schwierig sein zu wissen, was der Vorschlag ist, ohne von Ihrer aktuellen Position wegzuscrollen. Wir haben diese Erfahrung verbessert, indem wir eine Vorschau des nächsten Bearbeitungsvorschlags dort rendern, wo sich Ihr Cursor gerade befindet. Dies hilft, die Auswirkungen auf Ihren Arbeitsfluss bei der Überprüfung von Vorschlägen zu reduzieren.
Hinweis: Unser aktuelles Sprachmodell konzentriert sich auf Vorschläge für die nächste Bearbeitung in der Nähe des Cursors, sodass Sie möglicherweise nicht oft Vorschläge außerhalb des Ansichtsbereichs sehen. Wir arbeiten jedoch aktiv an Modellen, die Ihnen Vorschläge viel weiter entfernt geben können!
Erfahren Sie mehr über Inline-Vorschläge in VS Code.
Quellcodeverwaltung
Stashes in der Source Control Repositories-Ansicht (Experimentell)
Einstellungen: scm.repositories.explorer, scm.repositories.selectionMode
In diesem Meilenstein haben wir die Liste der Repository-Artefakte, die in der Source Control Repositories-Ansicht angezeigt werden, um einen Stashes-Knoten erweitert. Unter diesem Knoten können Sie die vollständige Liste der Stashes anzeigen, jeden Stash anzeigen, anwenden und poppen. Das Kontextmenü enthält auch eine Aktion zum Verwerfen jedes Stashes.

Sie können den experimentellen Repository-Explorer aktivieren, indem Sie die Einstellungen scm.repositories.selectionMode und scm.repositories.explorer setzen. Bitte probieren Sie es aus und lassen Sie uns wissen, welche anderen Repository-Artefakte Sie im Repositories-Explorer sehen möchten.
Erfahren Sie mehr über die Verwendung von Quellcodeverwaltung in VS Code.
Debugging
Variablen an Chat anhängen
Sie können jetzt Variablen, Scopes und Ausdrücke an Ihren Chat-Kontext in VS Code anhängen. Dies können Sie tun, indem Sie mit der rechten Maustaste auf Daten in den Ansichten **Variablen** und **Überwachen** klicken oder die Schaltfläche **Kontext hinzufügen** im Chat verwenden.
Terminal
Terminal-Vorschlag für stabile Versionen ausgerollt
Terminal Suggest ist jetzt für stabile Benutzer aktiviert und bietet Inline-Vervollständigungen und kontextbezogene Hinweise, während Sie Shell-Befehle eingeben. Vorschläge gruppieren jetzt zusammengehörige Argumentwerte, sodass Options-Flags und ihre Parameter in der Liste organisiert bleiben.
Authentifizierung
Plattformübergreifende native Broker-Unterstützung für die Microsoft-Authentifizierung
Einstellung: microsoft-authentication.implementation
In diesem Meilenstein haben wir die neuesten MSAL-Bibliotheken übernommen, die es Ihnen ermöglichen, sich über eine native Erfahrung auf
- Intel Macs
- Linux x64 (nur bestimmte Distributionen, die Debian-basiert sind)

Dies ist zusätzlich zur bestehenden Unterstützung für
- Windows x64
- macOS M-Serie (ARM)
macOS- und Linux-Unterstützung erfordern, dass Ihre Maschine Intune-registriert ist und Sie für die Verwendung des nativen Brokers opt-in sind.
Dies ermöglicht schöne Single-Sign-On-Flows und ist die empfohlene Methode zur Erlangung einer Microsoft-Authentifizierungssitzung. Das MSAL-Team wird dies im Laufe der Zeit für die verbleibenden Plattformen (Windows ARM, Linux ARM und weitere Distributionen) aktivieren, also bleiben Sie dran!
HINWEIS: Wenn Sie Probleme bei der Authentifizierung über den Broker haben, können Sie die microsoft-authentication.implementation auf
msal-no-brokerändern, wodurch stattdessen Ihr Browser zur Authentifizierung verwendet wird.
classic Microsoft-Authentifizierung nicht mehr verfügbar
Wie letzten Monat erwähnt, haben wir die Option classic für microsoft-authentication.implementation aufgrund geringer Nutzung und der Tatsache, dass sie vom Entra ID-Team nicht empfohlen wurde, entfernt.
Erinnerung: Die Einstellung microsoft-authentication.implementation war verfügbar, damit Benutzer die native Broker-Authentifizierung für Microsoft-Konten ablehnen konnten, falls sie Probleme hatten. Die Werte für diese Einstellung sind:
msal- Verwende MSAL mit brokered Authentifizierung, wenn verfügbar (Standard)msal-no-broker- Verwende MSAL ohne brokered Authentifizierung
Sprachen
TypeScript 7.0 Vorschau
Wir haben weiter mit dem TypeScript-Team zusammengearbeitet, um die Unterstützung von VS Code für die kommende TypeScript 7-Version zu verbessern. TypeScript 7 ist eine vollständige Neufassung in nativem Code und bietet eine drastisch verbesserte Leistung.
Die TypeScript 7-Vorschau bietet fast vollständige Unterstützung für die Typprüfung, und das TypeScript-Team hat sich intensiv um die Implementierung von Editor-Funktionen gekümmert. Jüngste Highlights sind Auto-Import-Vervollständigungen, Umbenennungsunterstützung und Referenzen-Code-Linsen.
Sie können TypeScript 7.0 noch heute ausprobieren, indem Sie die TypeScript (Native Preview) extension installieren. Führen Sie dann den Befehl TypeScript (Native Preview): Enable (Experimental) in einer JavaScript- oder TypeScript-Datei aus, um die gesamte IntelliSense auf die native Vorschau umzustellen. Lesen Sie den aktuellsten TypeScript 7-Blogbeitrag für ein vollständiges Update zu TypeScript 7 und die allgemeine Ausrichtung des TypeScript-Projekts.
Wir planen, eng mit dem TypeScript-Team zusammenzuarbeiten, um die VS Code-Unterstützung für TypeScript 7 zu verbessern. Sobald TypeScript 7 bereit ist, planen wir, es als Standarderfahrung für die JavaScript- und TypeScript-IntelliSense von VS Code zu verwenden. Wenn Sie eine ältere TS-Version verwenden müssen oder Editor-Funktionen wie TypeScript-Service-Plugins benötigen, die sich nicht einfach nach TypeScript 7 portieren lassen, planen wir, bestehende TypeScript-Versionen auf absehbare Zeit neben TypeScript 7.0+ zu unterstützen.
Remote-Entwicklung
Die Remote Development Extensions ermöglichen es Ihnen, einen Dev Container, einen Remote-Computer über SSH oder Remote Tunnels oder das Windows Subsystem for Linux (WSL) als vollwertige Entwicklungsumgebung zu nutzen.
Zu den Highlights gehören
- Steuerung der Wartezeit für SSH-Wiederverbindungen
Weitere Informationen zu diesen Funktionen finden Sie in den Release Notes für Remote Development.
Unternehmen
Erfahren Sie mehr über die Enterprise-Funktionen von VS Code in unserer Dokumentation.
Steuerung der automatischen Genehmigung für Agent-Tools
Einstellung: chat.tools.eligibleForAutoApproval
Bestimmte Agent-Tools können riskant sein, ohne ausdrückliche Benutzergenehmigung verwendet zu werden, insbesondere solche, die destruktive Aktionen ausführen, auf sensible Daten zugreifen oder im Hintergrund beliebigen Code ausführen können (z. B. runTask).
Sie können jetzt definieren, welche Tools für die automatische Genehmigung in Frage kommen, mit der neuen Einstellung chat.tools.eligibleForAutoApproval. Wenn ein Tool von der automatischen Genehmigung abgelehnt wird, haben Benutzer nicht die Möglichkeit, dieses Tool im Chat immer zu genehmigen, und müssen jede Verwendung ausdrücklich genehmigen.
Organisationen können dieses Verhalten über eine Unternehmensrichtlinie für ihre Benutzer durchsetzen, um die Sicherheit bei der Verwendung von Agenten zu erhöhen.
Deaktivieren der Verwendung von Agenten per Richtlinie
Wenn eine Unternehmensrichtlinie die Verwendung von Agenten im Chat deaktiviert, kommuniziert der Agent-Auswahl jetzt besser, warum sie nicht verfügbar sind.

Unterstützung für GitHub Enterprise-Richtlinien in Codespaces
Sie können Richtlinien für Ihr Unternehmen oder Ihre Organisation in GitHub festlegen, die in VS Code angewendet werden. Sie können beispielsweise die MCP-Registrierungs-URL konfigurieren, die von Entwicklern in Ihrer Organisation verwendet werden soll.
In dieser Version haben wir die Unterstützung für diese Richtlinien bei der Verwendung von VS Code mit GitHub Codespaces hinzugefügt. Wenn ein Entwickler einen Codespace öffnet, werden dieselben Richtlinien automatisch angewendet, wie es bereits bei der lokalen Verwendung von VS Code der Fall ist.
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
- Impliziter Kontext von Pull Requests und Issues, wenn ein Webview für Pull Requests oder Issues aktiv ist.
- Pull Requests und Issues können explizit als Kontext zu Chat-Sitzungen über "Kontext hinzufügen" hinzugefügt werden.
- Copilot-Pull-Requests können mit einem einzigen Knopf als bereit zur Überprüfung markiert, genehmigt und automatisch zusammengeführt werden.
Sehen Sie sich das Changelog für Version 0.124.0 der Erweiterung an, um alles über die Änderungen in dieser Version zu erfahren.
Vorgeschlagene APIs
Beigesteuerter Chat-Kontext
Wir haben einen neuen API-Vorschlag, mit dem Erweiterungen Kontextanbieter für den Chat beisteuern können. Dies ermöglicht es Erweiterungen, reichhaltigen Kontext aus ihrem eigenen Bereich für Chat-Sitzungen bereitzustellen. Zum Beispiel stellt die GitHub Pull Request-Erweiterung den folgenden Kontext bereit:
- Arbeitsbereichskontext mit Informationen über das aktuelle Repository, den Branch und den Pull Request.
- Impliziter Pull-Request- und Issue-Kontext, wenn ein Webview für Pull-Requests oder Issues aktiv ist.
- Expliziter Pull-Request- und Issue-Kontext, wenn der Benutzer sie über "Kontext hinzufügen" hinzufügt.
Die API befindet sich noch in einem frühen Stadium, daher sind Änderungen zu erwarten. Wir würden uns über Feedback freuen, welche Teile des Vorschlags die Bedürfnisse von Erweiterungsautoren erfüllen. Sie finden den Vorschlag hier: vscode.proposed.chatContextProvider.d.ts.
Technik
Rollout von Builds
Wir haben begonnen, Insiders-Build-Releases schrittweise über ein Zeitfenster von 4 Stunden auszurollen. Das bedeutet, dass Sie als Insiders-Benutzer die Update-Benachrichtigung möglicherweise etwas später als gewöhnlich erhalten. Wenn Sie es eilig haben, können Sie jederzeit **Nach Updates suchen** ausführen, um das Update sofort anzuwenden.
Wir werden die Veröffentlichung vom November 2025 (1.107) über ein Zeitfenster von 24 Stunden für Stable-Benutzer ausrollen. Genau wie bei Insiders können Sie jederzeit **Nach Updates suchen** ausführen, um das Update sofort anzuwenden.
Verbesserte Suchfunktion der Website
Wir haben unsere Website mit einer schnellen, clientseitigen Suche verbessert, die es Ihnen ermöglicht, einfach und schnell durch unsere Dokumentation zu navigieren.
Wir haben die Bibliothek hinter dieser Funktionalität Open Source gestellt: Sie können docfind herunterladen und es noch heute für Ihre Projekte verwenden! Wir werden in einem Blogbeitrag über die Innovationen hinter dieser Technologie berichten.
Aktualisierte Build-Skripte laufen direkt als TypeScript
In dieser Iteration haben wir unsere Build-Skripte bereinigt, um sie einfacher zu handhaben und zu warten. Diese Build-Skripte waren eine Mischung aus kompiliertem TypeScript, TypeScript-Dateien, die mit ts-node ausgeführt wurden, und JavaScript. Viele dieser Skripte wurden nicht typtgeprüft und verwendeten CommonJS (require) anstelle moderner Module mit import und export. Noch schlimmer war, dass viele der TypeScript-Build-Skripte die Überprüfung des kompilierten JS-Outputs in unserer Quellcodeverwaltung erforderten. Was für ein Durcheinander!
Glücklicherweise erlaubt Node 22.18+ jetzt das Ausführen von Skripten direkt als TypeScript. Dies ermöglicht uns, unsere Build-Skripte inkrementell in modernes TypeScript zu konvertieren. Wir haben die folgenden tsconfig-Optionen verwendet, um sicherzustellen, dass unser neuer TypeScript-Code direkt von Node ausgeführt werden kann.
{
"compilerOptions": {
"target": "esnext",
"module": "nodenext",
"noEmit": true, // Don't generate .js files
"erasableSyntaxOnly": true, // Only allow TypeScript syntax that node can strip out. Enums and namespaces for example are not allowed
"allowImportingTsExtensions": true, // Allow importing of .ts files
"verbatimModuleSyntax": true // Make sure imports will be valid when the script is run by node directly
}
}
GitHub Copilot hat geholfen, viele der erforderlichen Änderungen zu automatisieren, wie die Konvertierung alter CommonJS-Dateien in Module und das Hinzufügen von Typannotationen.
Eine Sache, die man beachten muss, ist, dass Node zwar TypeScript-Code ausführen kann, ihn aber nicht tatsächlich typtprüft. Dazu benötigen Sie immer noch tsc. Für vscode verwenden wir tatsächlich ts-go, das alle unsere Build-Skripte in weit weniger als einer Sekunde vollständig typtprüfen kann.
Es ist ziemlich erstaunlich, dass man node build/hygiene.ts direkt ausführen kann. Der vollständige Wechsel zu TypeScript ermöglicht es uns auch, unsere Build-Skripte zu modernisieren und Typsicherheit einzuführen, was ihre Verständlichkeit und Änderbarkeit erheblich verbessert. Außerdem konnten wir etwa 15.000 Zeilen kompilierten JS-Code löschen, die wir zuvor in der Quellcodeverwaltung hatten!
Vereinheitlichung von Copilot-Erweiterungen
Einstellung: chat.extensionUnification.enabled
Wir haben Inline-Vorschläge vollständig über die GitHub Copilot Chat-Erweiterung ausgeliefert. Im Rahmen dieser Änderung wird die GitHub Copilot-Erweiterung standardmäßig für alle Benutzer deaktiviert.
Wenn Sie Probleme mit Inline-Vorschlägen haben, melden Sie diese bitte. Sie können zum vorherigen Verhalten zurückkehren, indem Sie chat.extensionUnification.enabled auf false setzen, wodurch die GitHub Copilot-Erweiterung wieder aktiviert wird.
Beachten Sie, dass wir planen, die GitHub Copilot-Erweiterung im Januar 2026 vollständig einzustellen, an welchem Punkt auch die Einstellung chat.extensionUnification.enabled entfernt wird.
Bemerkenswerte Fehlerbehebungen
- vscode#233635 - Aktion zum Schließen anderer Fenster hinzufügen
- vscode#262817 - Das Ausführen von "Editor in vorherige Gruppe verschieben" aus der äußersten linken Gruppe sollte eine neue Gruppe links erstellen
- vscode#264569 - Das Einstellen und Entfernen der Farbe `window.activeBorder` setzt die Farbe des Fensterrands nicht zurück
- vscode#140186 - Lokales Terminal kann nicht geöffnet werden, wenn ein Remote-Container als Arbeitsbereich geöffnet ist
- vscode#228359 - Das erneute Starten des Terminals schließt das Terminal oft nur
- vscode#232420 - Terminal-Cursor ist mit Python3.13 an der falschen Stelle
- vscode#247568 - Terminal Ctrl+Klick auf eine Datei mit Doppelpunkt im Dateinamen öffnet die Datei nicht, führende Nullen werden gelöscht
- vscode#275011 - Seltsame Terminalmeldung beim Öffnen von VS Code in WSL in einem vertrauenswürdigen Arbeitsbereich
- vscode#275417 - Aufgaben mit reveal:never, close:true funktionieren unter WSL nicht mehr
- vscode#277311 - Hinzufügen einer "X"-Schaltfläche zum Entfernen von Befehlen aus der Liste der "zuletzt verwendeten" im Befehls-Palette
- vscode#282222 - SCM - Verbesserung der Darstellung von Git Blame/Timeline/Graph Hover. Danke an Stanislav Fort (Aisle Research)
- vscode-python-environments#1000 - Umgebungsaktivierung funktioniert mit "Command Prompt" nicht zuverlässig
Vielen Dank
Fehlerverfolgung
Beiträge zu unserer Fehlerverfolgung
- @gjsjohnmurray (John Murray)
- @RedCMD (RedCMD)
- @tamuratak (Takashi Tamura)
- @IllusionMH (Andrii Dieiev)
- @albertosantini (Alberto Santini)
Beiträge zu vscode
- @Abrifq (Arda Aydın)
- Beheben des Terminal-Tab-Eingabeaufforderungs-Inputs, der bei der Einbeziehung von Backticks fehlerhaft ist PR #272425
- Bereinigung microsoft#272425 PR #277406
- @bilogic: erkennen auch
// #region ...als gültige Marker PR #278943 - @busorgin (Artem Busorgin): Setzen von TextDecoder.ignoreBOM auf true in VSBuffer PR #272389
- @cannona (Aaron Cannon): Zulassen, dass "Editor in vorherige Gruppe verschieben" eine neue Gruppe erstellt PR #275968
- @DrSergei (Sergei Druzhkov): Korrektur der Berechnung des Breakpoint-Bereichs PR #280263
- @gjsjohnmurray (John Murray): Korrektur der nicht standardmäßigen Großschreibung des Begriffs "Statusleiste" in einigen Einstellungen (Fix #277376) PR #277383
- @jakebailey (Jake Bailey): Aktualisieren auch der package.json von
@types/vscodePR #277972 - @JeffreyCA: Terminal Suggest - Aufnahme von persistenten Optionen in Vorschläge und Verbesserung der Vorschlagsgruppierung PR #276409
- @joelverhagen (Joel Verhagen): Erwartung von Runtime-Konfiguration von NuGet MCP-Installation PR #271770
- @Josbleuet (Eric Fortin): Beheben ungültiger Zeichen im Dateinamen des Dynamic Auth Provider Loggers PR #280217
- @nikdmello (Nik D'Mello): Aktualisieren des Katex-Regex für jQuery-Ausdrücke in KaTeX-Übereinstimmung PR #269635
- @ramanverse (Raman): Entfernen der veralteten maybeMigrateCurrentSession-Methode PR #280042
- @remcohaszing (Remco Haszing): Markieren von Cursor-MDC-Dateien als Markdown PR #276518
- @SalerSimo: Beheben von Objektüberläufen in Booleschen Einstellungs-Widgets PR #278884
- @SimonSiefke (Simon Siefke)
- Fix: Speicherleck im Brotkrümel-Navigationsmenü PR #276597
- Fix: Speicherleck im Quick-Diff-Modell PR #276914
- Fix: Speicherleck im Brotkrümel-Navigationsmenü PR #276915
- Fix: Speicherleck im Terminalprozess (teilweise) PR #276962
- Fix: Speicherleck auf der Startseite PR #277199
- Fix: Speicherleck in der Terminal-Tab-Liste PR #277225
- Fix: Mögliches Speicherleck bei nicht entsorgten Sub-Dekorationen PR #278328
- Fix: Mögliches Speicherleck bei Dekorationsregistrierung PR #278331
- Fix: Speicherleck im Task-Problem-Monitor PR #279093
- Fix: Speicherleck im Verlaufsdienst PR #279246
- Fix: Speicherleck in der Composite Bar PR #280659
- @tamuratak (Takashi Tamura)
- Feuer onDidChangeHeight nach Abschluss des Renderns des Codeblock-Editors. Fix #265031 PR #274691
- Fix: childNodes anstelle von children in DOM.reset für Markdown-Rendering verwenden. Fix #266103 PR #276890
- Fix: Aktualisieren von mathInlineRegExp, um $(a+b)^2$ korrekt zu behandeln PR #280021
- @yavanosta (Dmitry Guketlev): Leistung der UriIdentityService verbessern (#_273108) PR #273111
- @yaxiaoliu: fix(process-explorer): Fehler im Namens-Regex beheben PR #280273
Beiträge zu vscode-copilot-chat
- @AbdelrahmanAbouelenin (ababouelenin)
- @cuining: Aktualisieren der ESLint-Konfiguration, um integrierte Module von Node anstelle einer hartcodierten Liste eingeschränkter Importe zu verwenden PR #2107
- @IanMatthewHuff (Ian Huff)
- @jeffreyhunter77 (Jeff Hunter)
- @joelverhagen (Joel Verhagen): Trennung der server.json-Formatierung vom VS Code-Kern PR #1373
Beiträge zu vscode-js-debug
- @marat-gainullin: Dereferenzen von undefinierten Werten an verschiedenen Stellen PR #2297
Beiträge zu vscode-pull-request-github
Beiträge zu vscode-python-debugger
- @rchiodo (Rich Chiodo): Update auf das neueste debugpy PR #877
Beiträge zu vscode-python-environments
- @zsol (Zsolt Dollenstein): Auch UvWorkspace-Umgebungen unterstützen PR #1022
Beiträge zu language-server-protocol
- @arshadrr (Arshad Riyaz): slang-server hinzufügen PR #2200
Beiträge zu node-native-keymap
- @tmm1 (Aman Karmani): Korrigiert die Groß-/Kleinschreibung der msctf.h-Headerdatei PR #64
- @yonas (Yonas Yanfa): README.md aktualisieren - libxkbfile als Abhängigkeit unter FreeBSD hinzufügen PR #61
Beiträge zu node-pty
- @42lizard (Oliver Gassner): OpenBSD-Includes für termios und util hinzufügen PR #817
- @huangcs427 (huangcs): "Enjoy Git" reale Anwendungsfälle hinzufügen PR #818
Beiträge zu python-environment-tools
- @reflectronic (John Tur): Befehle ausführen, ohne ein Konsolenfenster unter Windows zu erstellen PR #266
- @zsol (Zsolt Dollenstein): Uv-Arbeitsbereiche entdecken PR #263