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

März 2025 (Version 1.99)

Update 1.99.1: Das Update behebt diese Sicherheitsprobleme.

Update 1.99.2: Das Update behebt diese Probleme.

Update 1.99.3: Das Update behebt diese Probleme.

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


Willkommen zur März 2025-Version von Visual Studio Code. Diese Version enthält viele Updates, die uns hoffentlich gefallen werden. Einige der wichtigsten Highlights sind:

  • Agent-Modus

    • Der Agentenmodus ist in VS Code Stable verfügbar. Aktivieren Sie ihn, indem Sie chat.agent.enabled festlegen (mehr...).
    • Erweitern Sie den Agentenmodus mit Model Context Protocol (MCP) Server-Tools (mehr...).
    • Probieren Sie die neuen integrierten Tools im Agentenmodus zum Abrufen von Webinhalten, Finden von Symbolreferenzen und für tiefes Nachdenken aus (mehr...).
  • Codebearbeitung

    • Next Edit Suggestions ist jetzt allgemein verfügbar (mehr...).
    • Profitieren Sie von weniger Ablenkungen, wie z.B. Diagnoseereignissen, während KI-Bearbeitungen im Editor angewendet werden (mehr...).
  • Chat

    • Verwenden Sie Ihre eigenen API-Schlüssel, um auf mehr Sprachmodelle im Chat zuzugreifen (Vorschau) (mehr...).
    • Wechseln Sie ganz einfach zwischen Fragen, Bearbeiten und Agentenmodus über die einheitliche Chat-Oberfläche (mehr...).
    • Erleben Sie verbesserte Suchgeschwindigkeiten und -genauigkeit für Arbeitsbereiche mit sofortiger Indizierung entfernter Arbeitsbereiche (mehr...).
  • Bearbeitung von Notizbüchern

    • Erstellen und bearbeiten Sie Notizbücher so einfach wie Code-Dateien mit Unterstützung für den Bearbeitungs- und Agentenmodus (mehr...).

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.

Chat

Agentenmodus ist in VS Code Stable verfügbar

Einstellung: chat.agent.enabled

Wir freuen uns, Ihnen mitteilen zu können, dass der Agentenmodus in VS Code Stable verfügbar ist! Aktivieren Sie ihn, indem Sie chat.agent.enabled festlegen. Wenn Sie die Einstellung nicht sehen, stellen Sie sicher, dass Sie VS Code neu laden. Das Aktivieren der Einstellung wird in den nächsten Wochen nicht mehr erforderlich sein, da wir die Aktivierung standardmäßig für alle Benutzer einführen.

Schauen Sie sich die Dokumentation zum Agentenmodus an oder wählen Sie den Agentenmodus aus dem Chat-Modus-Auswahlfeld in der Chat-Ansicht aus.

Screenshot that shows the Chat view, highlighting agent mode selected in the chat mode picker.

Model Context Protocol Server-Unterstützung

Diese Version unterstützt Model Context Protocol (MCP) Server im Agentenmodus. MCP bietet eine standardisierte Methode für KI-Modelle, externe Tools, Anwendungen und Datenquellen zu entdecken und mit ihnen zu interagieren. Wenn Sie im Agentenmodus in VS Code eine Chat-Eingabeaufforderung eingeben, kann das Modell verschiedene Tools aufrufen, um Aufgaben wie Dateioperationen, Zugriff auf Datenbanken oder Abrufen von Webdaten auszuführen. Diese Integration ermöglicht eine dynamischere und kontextbezogenere Codierungsunterstützung.

MCP-Server können im Abschnitt mcp in Ihren Benutzer-, Remote- oder .code-workspace-Einstellungen oder in .vscode/mcp.json in Ihrem Arbeitsbereich konfiguriert werden. Die Konfiguration unterstützt Eingabevariablen, um hartcodierte Geheimnisse und Konstanten zu vermeiden. Sie können beispielsweise ${env:API_KEY} verwenden, um auf eine Umgebungsvariable zu verweisen, oder ${input:ENDPOINT}, um zur Eingabe eines Werts aufgefordert zu werden, wenn der Server gestartet wird.

Sie können den Befehl MCP: Server hinzufügen verwenden, um schnell einen MCP-Server von einer Befehlszeilenaufforderung aus einzurichten, oder eine KI-gestützte Einrichtung von einem MCP-Server verwenden, der auf Docker, npm oder PyPI veröffentlicht wurde.

Wenn ein neuer MCP-Server hinzugefügt wird, wird in der Chat-Ansicht eine Aktualisierungsaktion angezeigt, mit der der Server gestartet und die Tools entdeckt werden können. Anschließend werden Server nach Bedarf gestartet, um Ressourcen zu sparen.

Theme: Codesong (Vorschau auf vscode.dev)

Wenn Sie MCP-Server bereits in anderen Anwendungen wie Claude Desktop verwenden, erkennt VS Code diese und bietet an, sie für Sie auszuführen. Dieses Verhalten kann mit der Einstellung chat.mcp.discovery.enabled umgeschaltet werden.

Sie können die Liste der MCP-Server und ihren aktuellen Status mit dem Befehl MCP: Server auflisten anzeigen und die verfügbaren Tools für den Chat über die Schaltfläche Tools auswählen im Agentenmodus auswählen.

Sie können mehr darüber erfahren, wie Sie MCP-Server installieren und verwenden, in unserer Dokumentation.

Agentenmodus-Tools

In diesem Meilenstein haben wir mehrere neue integrierte Tools für den Agentenmodus hinzugefügt.

Denk-Tool (experimentell)

Einstellung: github.copilot.chat.agent.thinkingTool.

Inspiriert von Anthropic's Forschung haben wir die Unterstützung für ein Denk-Tool im Agentenmodus hinzugefügt, mit dem jedes Modell die Möglichkeit hat, zwischen Tool-Aufrufen zu denken. Dies verbessert die Leistung unseres Agenten bei komplexen Aufgaben im Produkt und in der SWE-bench-Evaluierung.

Fetch-Tool

Verwenden Sie das Tool #fetch, um Inhalte von einer öffentlich zugänglichen Webseite in Ihre Eingabeaufforderung einzufügen. Wenn Sie beispielsweise die neuesten Dokumentationen zu einem Thema wie MCP einbeziehen möchten, können Sie die vollständige Dokumentation abrufen (die praktisch für einen LLM konsumierbar ist) und diese in einer Eingabeaufforderung verwenden. Hier ist ein Video, das zeigt, wie das aussehen könnte

Im Agentenmodus wird dieses Tool automatisch erkannt, Sie können es aber auch in den anderen Modi über #fetch explizit referenzieren, zusammen mit der URL, die Sie abrufen möchten.

Dieses Tool rendert die Webseite in einem Headless-Browserfenster, in dem die Daten der Seite lokal zwischengespeichert werden, sodass Sie das Modell jederzeit kostenlos auffordern können, die Inhalte immer wieder abzurufen, ohne den Overhead des erneuten Renderns.

Lassen Sie uns wissen, wie Sie das #fetch-Tool verwenden und welche Funktionen Sie sich davon wünschen!

Einschränkungen des Fetch-Tools

  • Derzeit ist JavaScript in diesem Browserfenster deaktiviert. Das Tool kann nicht viele Kontexte erfassen, wenn die Website vollständig von JavaScript zur Inhaltsanzeige abhängt. Dies ist eine Einschränkung, die wir in Erwägung ziehen zu ändern und wahrscheinlich ändern werden, um JavaScript zu erlauben.
  • Aufgrund der Headless-Natur können wir keine Seiten abrufen, die hinter einer Authentifizierung liegen, da dieser Headless-Browser in einem anderen Browserkontext als der von Ihnen verwendete Browser existiert. Ziehen Sie stattdessen die Verwendung von MCP in Betracht, um einen MCP-Server zu integrieren, der speziell für dieses Ziel entwickelt wurde, oder einen generischen Browser-MCP-Server wie den Playwright MCP-Server.

Usages-Tool

Das Tool #usages ist eine Kombination aus "Alle Referenzen suchen", "Implementierung suchen" und "Zur Definition springen". Dieses Tool kann dem Chat helfen, mehr über eine Funktion, Klasse oder Schnittstelle zu erfahren. Zum Beispiel kann der Chat dieses Tool verwenden, um nach Beispielimplementierungen einer Schnittstelle zu suchen oder alle Stellen zu finden, die bei einer Refaktorierung geändert werden müssen.

Im Agentenmodus wird dieses Tool automatisch erkannt, Sie können es aber auch explizit über #usages referenzieren

Neuen Arbeitsbereich mit Agentenmodus erstellen (Experimentell)

Einstellung: github.copilot.chat.newWorkspaceCreation.enabled

Sie können jetzt einen neuen VS Code-Arbeitsbereich im Agentenmodus aufbauen. Ob Sie eine VS Code-Erweiterung, einen MCP-Server oder andere Entwicklungsumgebungen einrichten, der Agentenmodus hilft Ihnen, diese Projekte mit den erforderlichen Abhängigkeiten und Einstellungen zu initialisieren, zu konfigurieren und zu starten.

VS Code Extension Tools im Agentenmodus

Vor einigen Monaten haben wir unsere Erweiterungs-API für von VS Code-Erweiterungen bereitgestellte Sprachmodell-Tools fertiggestellt. Jetzt können Sie diese Tools im Agentenmodus verwenden.

Jedes Tool, das über diese API beigesteuert wird und toolReferenceName sowie canBeReferencedInPrompt in seiner Konfiguration festlegt, ist im Agentenmodus automatisch verfügbar.

Durch die Bereitstellung eines Tools in einer Erweiterung hat es Zugriff auf die vollständigen VS Code-Erweiterungs-APIs und kann einfach über den Extension Marketplace installiert werden.

Ähnlich wie bei Tools von MCP-Servern können Sie diese über die Schaltfläche Tools auswählen im Agentenmodus aktivieren und deaktivieren. Lesen Sie in unserem Extension Guide für Sprachmodell-Tools, wie Sie Ihre eigenen erstellen können!

Agentenmodus Tool-Genehmigungen

Als Teil der Abschluss von Aufgaben für eine Benutzeraufforderung kann der Agentenmodus Tools und Terminalbefehle ausführen. Dies ist leistungsstark, birgt aber potenzielle Risiken. Daher müssen Sie die Verwendung von Tools und Terminalbefehlen im Agentenmodus genehmigen.

Um diese Erfahrung zu optimieren, können Sie die Genehmigung jetzt auf Sitzungs-, Arbeitsbereichs- oder Anwendungsebene speichern. Dies ist derzeit nicht für das Terminal-Tool aktiviert, aber wir planen, in zukünftigen Versionen ein Genehmigungssystem für das Terminal zu entwickeln.

Screenshot that shows the agent mode tool Continue button dropdown options for remembering approval.

Falls Sie *alle* Tools automatisch genehmigen möchten, können Sie jetzt die experimentelle Einstellung chat.tools.autoApprove verwenden. Diese Einstellung genehmigt alle Tools automatisch und VS Code wird nicht um Bestätigung bitten, wenn ein Sprachmodell Tools ausführen möchte. Beachten Sie, dass Sie mit dieser Einstellung keine Möglichkeit haben, potenziell destruktive Aktionen abzubrechen, die ein Modell ausführen möchte.

Wir planen, diese Einstellung in Zukunft um granularere Funktionen zu erweitern.

Agenten-Evaluierung auf SWE-bench

VS Codes Agent erreicht eine Erfolgsquote von 56,0 % auf swebench-verified mit Claude 3.7 Sonnet, basierend auf der Forschung von Anthropic zur Konfiguration von Agenten zur Ausführung ohne Benutzereingabe in der SWE-bench-Umgebung. Unsere Experimente haben zu verbesserten Prompts, Tool-Beschreibungen und Tool-Designs für den Agentenmodus geführt, einschließlich neuer Tools für Dateiänderungen, die für Claude 3.5- und 3.7-Sonnet-Modelle in der Verteilung liegen.

Vereinheitlichte Chat-Ansicht

In den letzten Monaten hatten wir eine "Chat"-Ansicht zum Stellen von Fragen an das Sprachmodell und eine "Copilot Edits"-Ansicht für eine KI-gestützte Codebearbeitungssitzung. Diesen Monat zielen wir darauf ab, die Chat-basierte Erfahrung durch Zusammenlegung der beiden Ansichten zu einer einzigen Chat-Ansicht zu optimieren. In der Chat-Ansicht sehen Sie ein Dropdown-Menü mit drei Modi:

Screenshot that shows the chat mode picker in the Chat view.

  • Fragen: Dies ist dasselbe wie die vorherige Chat-Ansicht. Stellen Sie Fragen zu Ihrem Arbeitsbereich oder zum Programmieren im Allgemeinen, mit jedem Modell. Verwenden Sie @, um integrierte Chat-Teilnehmer oder von installierte Erweiterungen aufzurufen. Verwenden Sie #, um manuell beliebige Kontexte anzuhängen.
  • Agent: Starten Sie einen agentenbasierten Codierungsablauf mit einer Reihe von Tools, die es ihm ermöglichen, autonom Kontexte zu sammeln, Terminalbefehle auszuführen oder andere Aktionen zur Erledigung einer Aufgabe durchzuführen. Der Agentenmodus ist für alle VS Code Insiders-Benutzer aktiviert, und wir stellen ihn für immer mehr Benutzer in VS Code Stable bereit.
  • Bearbeiten: Im Bearbeitungsmodus kann das Modell gezielte Bearbeitungen an mehreren Dateien vornehmen. Hängen Sie #codebase an, damit es die zu bearbeitenden Dateien automatisch findet. Es wird jedoch keine Terminalbefehle ausführen oder etwas anderes automatisch tun.

Hinweis: Wenn Sie den Agentenmodus nicht in dieser Liste sehen, wurde er entweder noch nicht für Sie aktiviert oder er ist durch die Unternehmensrichtlinie deaktiviert und muss vom Organisationsinhaber aktiviert werden.

Neben der Vereinfachung Ihrer Chat-Erfahrung ermöglicht diese Vereinheitlichung einige neue Funktionen für KI-gestützte Codebearbeitung:

  • Modi mitten in einer Konversation wechseln: Sie könnten beispielsweise eine App-Idee im Fragemodus brainstormen und dann zum Agentenmodus wechseln, um den Plan auszuführen. Tipp: Drücken Sie , um schnell die Modi zu wechseln.
  • Bearbeitungssitzungen im Verlauf: Verwenden Sie den Befehl Chats anzeigen (Uhr-Symbol oben in der Chat-Ansicht), um vergangene Bearbeitungssitzungen wiederherzustellen und daran weiterzuarbeiten.
  • Chat in Editor oder Fenster verschieben: Wählen Sie Chat in neuem Editor/neues Fenster öffnen, um Ihre Chat-Konversation aus der Seitenleiste in einen neuen Editor-Tab oder ein separates VS Code-Fenster auszulagern. Chat unterstützt dies schon seit langem, aber jetzt können Sie Ihre Bearbeitungs-/Agenten-Sitzungen auch aus einem Editorbereich oder einem separaten Fenster ausführen.
  • Mehrere Agenten-Sitzungen: Ausgehend vom vorherigen Punkt bedeutet dies, dass Sie sogar mehrere Agenten-Sitzungen gleichzeitig ausführen können. Sie könnten einen Chat im Agentenmodus haben, der an der Implementierung einer Funktion arbeitet, und eine weitere unabhängige Sitzung für die Recherche und die Verwendung anderer Tools. Es wird nicht empfohlen, zwei Agenten-Sitzungen gleichzeitig zu bearbeiten, dies kann zu Verwirrung führen.

Bring Your Own Key (BYOK) (Vorschau)

Copilot Pro- und Copilot Free-Benutzer können jetzt ihre eigenen API-Schlüssel für beliebte Anbieter wie Azure, Anthropic, Gemini, OpenAI, Ollama und Open Router mitbringen. Dies ermöglicht Ihnen, neue Modelle zu verwenden, die von Copilot nicht nativ unterstützt werden, ab dem ersten Tag ihrer Veröffentlichung.

Um dies auszuprobieren, wählen Sie Modelle verwalten... aus dem Modell-Auswahlfeld. Wir untersuchen aktiv die Unterstützung für Copilot Business- und Enterprise-Kunden und werden in zukünftigen Versionen Updates bereitstellen. Weitere Informationen zu dieser Funktion finden Sie in unseren Docs.

A screenshot of a "Manage Models - Preview" dropdown menu in a user interface. The dropdown has the label "Select a provider" at the top, with a list of options below it. The options include "Anthropic" (highlighted in blue), "Azure," "Gemini," "OpenAI," "Ollama," and "OpenRouter." A gear icon is displayed next to the "Anthropic" option.

Wiederverwendbare Prompt-Dateien

Verbesserte Konfiguration

Einstellung: chat.promptFilesLocations

Die Einstellung chat.promptFilesLocations unterstützt jetzt Glob-Muster in Dateipfaden. Um beispielsweise alle .prompt.md-Dateien im aktuell geöffneten Arbeitsbereich einzuschließen, können Sie den Pfad auf { "**": true } setzen.

Darüber hinaus berücksichtigt die Konfiguration jetzt die Groß- und Kleinschreibung auf Dateisystemen, auf denen sie zutrifft, und entspricht damit dem Verhalten des Host-Betriebssystems.

Verbesserte Bearbeitung von Prompt-Dateien

  • Ihre .prompt.md-Dateien bieten jetzt grundlegende Autovervollständigung für Dateisystempfade und heben gültige Dateireferenzen hervor. Kaputte Links erscheinen stattdessen als Warn- oder Fehler-Wellenlinien und liefern detaillierte Diagnoseinformationen.
  • Sie können Prompts jetzt mit Bearbeitungs- und Löschaktionen in der Prompt-Dateiliste innerhalb des Befehls Chat: Prompt verwenden verwalten.
  • Ordnerreferenzen in Prompt-Dateien werden nicht mehr als ungültig markiert.
  • Markdown-Kommentare werden jetzt korrekt behandelt, zum Beispiel werden alle auskommentierten Links beim Generieren des endgültigen Prompts, der an das LLM-Modell gesendet wird, ignoriert.

Ausrichtung an benutzerdefinierten Anweisungen

Die Datei .github/copilot-instructions.md verhält sich jetzt wie jede andere wiederverwendbare .prompt.md-Datei, mit Unterstützung für die Auflösung verschachtelter Links und erweiterte Sprachfunktionen. Darüber hinaus kann jede .prompt.md-Datei jetzt referenziert werden und wird entsprechend behandelt.

Erfahren Sie mehr über benutzerdefinierte Anweisungen.

Benutzer-Prompts

Der Befehl Benutzer-Prompt erstellen ermöglicht jetzt die Erstellung eines neuen Prompt-Typs, der als *Benutzer-Prompts* bezeichnet wird. Diese werden im Ordner "Benutzerdaten" gespeichert und können geräteübergreifend synchronisiert werden, ähnlich wie Code-Snippets oder Benutzereinstellungen. Die Synchronisierung kann in Einstellungen synchronisieren konfiguriert werden, indem das Element Prompts in der Liste der Synchronisierungsressourcen verwendet wird.

Verbesserte Vision-Unterstützung (Vorschau)

In der letzten Iteration wurde Copilot Vision für GPT-4o aktiviert. Überprüfen Sie unsere Versionshinweise, um mehr darüber zu erfahren, wie Sie Bilder im Chat anhängen und verwenden können.

In dieser Version können Sie Bilder von jedem Browser per Drag & Drop anhängen. Von Browsern per Drag & Drop gezogene Bilder müssen die richtige URL-Erweiterung haben, z.B. .jpg, .png, .gif, .webp oder .bmp.

Konfigurieren Sie den Editor

Einheitliche Chat-Oberfläche

Wir haben die Chat-Oberfläche in VS Code zu einer einzigen, einheitlichen Chat-Ansicht gestrafft. Anstatt zwischen separaten Ansichten wechseln zu müssen und den Kontext einer Konversation zu verlieren, können Sie jetzt einfach zwischen den verschiedenen Chat-Modi wechseln.

Screenshot that shows the chat mode picker in the Chat view.

Je nach Ihrem Szenario verwenden Sie einen der folgenden Modi und können frei mitten in einer Konversation wechseln:

  • Frage-Modus: Optimiert für Fragen zu Ihrem Code und zum Brainstorming von Ideen.
  • Bearbeitungsmodus: Optimiert für die Bearbeitung mehrerer Dateien in Ihrem Code.
  • Agentenmodus: Optimiert für einen autonomen Codierungsablauf, der Codebearbeitungen und Tool-Aufrufe kombiniert.

Erfahren Sie mehr Details zur einheitlichen Chat-Ansicht.

Schnellere Arbeitsbereichssuchen mit sofortiger Indizierung

Remote-Arbeitsbereichsindizes beschleunigen die Suche in großen Codebasen nach relevanten Code-Snippets, die KI beim Beantworten von Fragen und Generieren von Bearbeitungen verwendet. Diese Remote-Indizes sind besonders nützlich für große Codebasen mit Zehn- oder sogar Hunderttausenden von Dateien.

Zuvor mussten Sie eine Schaltfläche drücken oder einen Befehl ausführen, um einen Remote-Arbeitsbereichsindex zu erstellen und zu verwenden. Mit unserer neuen Unterstützung für sofortige Indizierung bauen wir den Remote-Arbeitsbereichsindex automatisch auf, wenn Sie zum ersten Mal eine #codebase/@workspace-Frage stellen. In den meisten Fällen kann dieser Remote-Index in wenigen Sekunden erstellt werden. Sobald er erstellt ist, werden alle Codebasen-Suchen, die Sie oder jemand anderes mit diesem Repository in VS Code durchführt, automatisch den Remote-Index verwenden.

Beachten Sie, dass Remote-Arbeitsbereichsindizes derzeit nur für auf GitHub gespeicherten Code verfügbar sind. Um einen Remote-Arbeitsbereichsindex zu verwenden, stellen Sie sicher, dass Ihr Arbeitsbereich ein Git-Projekt mit einem GitHub-Remote enthält. Sie können das Copilot-Statusmenü verwenden, um den Typ des aktuell verwendeten Indexes anzuzeigen.

Screenshot that shows the workspace index status in the Copilot Status Bar menu.

Um die Auslastung zu steuern, rollen wir die sofortige Indizierung in den nächsten Wochen langsam aus, sodass Sie sie möglicherweise nicht sofort sehen. Sie können immer noch den Befehl GitHub Copilot: Remote-Index erstellen ausführen, um einen Remote-Index zu verwenden, wenn die sofortige Indizierung für Sie noch nicht aktiviert ist.

Copilot-Statusmenü

Das Copilot-Statusmenü, das über die Statusleiste zugänglich ist, ist jetzt für alle Benutzer aktiviert. In diesem Meilenstein haben wir einige neue Funktionen hinzugefügt:

  • Zeigen Sie jederzeit Informationen zum Status des Arbeitsbereichsindexes an.

    Screenshot that shows the workspace index status of a workspace in the Copilot menu.

  • Zeigen Sie an, ob Code-Vervollständigungen für den aktiven Editor aktiviert sind.

    Ein neues Symbol spiegelt den Status wider, sodass Sie schnell erkennen können, ob Code-Vervollständigungen aktiviert sind oder nicht.

    Screenshot that shows the Copilot status icon when completions is disabled.

  • Aktivieren oder deaktivieren Sie Code-Vervollständigungen und NES.

Copilot-Einrichtung ab Werk (experimentell)

Einstellung: chat.setupFromDialog

Wir stellen eine experimentelle Funktion bereit, die funktionale Chat-Erlebnisse ab Werk anzeigt. Dazu gehören die Chat-Ansicht, Inline-Chat im Editor/Terminal und Quick-Chat. Wenn Sie zum ersten Mal eine Chat-Anfrage senden, werden wir Sie durch die Anmeldung und die Registrierung für Copilot Free führen.

Wenn Sie diese Erfahrung selbst sehen möchten, aktivieren Sie die Einstellung chat.setupFromDialog.

Diskrepanz im Copilot Chat Prerelease-Kanal

Wenn Sie die Prerelease-Version der Copilot Chat-Erweiterung in VS Code Stable installiert haben, informiert Sie ein neuer Willkommensbildschirm, dass diese Konfiguration nicht unterstützt wird. Aufgrund der schnellen Entwicklung von Chat-Funktionen wird die Erweiterung in VS Code Stable nicht aktiviert.

Der Willkommensbildschirm bietet Optionen, um entweder zur Release-Version der Erweiterung zu wechseln oder VS Code Insiders herunterzuladen.

Screenshot that shows the welcome view of chat, indicating that the pre-release version of the extension is not supported in VS Code stable. A button is shown to switch to the release version, and a secondary link is shown to switch to VS Code Insiders.

Verbesserungen der semantischen Textsuche (experimentell)

Einstellung: github.copilot.chat.search.semanticTextResults

Die KI-gestützte semantische Textsuche ist jetzt standardmäßig in der Suchansicht aktiviert. Verwenden Sie die Tastenkombination ⌘I (Windows, Linux Ctrl+I), um eine semantische Suche auszulösen, die Ihnen die relevantesten Ergebnisse basierend auf Ihrer Abfrage anzeigt, über den regulären Suchergebnissen.

Sie können auch die semantischen Suchergebnisse in Ihrer Chat-Eingabeaufforderung referenzieren, indem Sie das Tool #searchResults verwenden. Dies ermöglicht es Ihnen, den LLM anzuweisen, die Ergebnisse zusammenzufassen oder zu erklären oder sogar Code basierend darauf zu generieren.

Updates der Einstellungen-Editor-Suche

Standardmäßig verwendet die Suche im Einstellungen-Editor nun den im letzten Release eingeführten Schlüsselabgleichalgorithmus. Sie zeigt auch zusätzliche Einstellungen an, selbst wenn die Einstellung-ID genau mit einer bekannten Einstellung übereinstimmt.

Thema: Light Pink (Vorschau auf vscode.dev)

Neue Einstellung für Fenstersteuerelemente (Linux, Windows)

Einstellung: window.controlsStyle

Wenn Sie den Stil der Titelleiste (window.titleBarStyle) auf custom gesetzt haben, können Sie jetzt zwischen drei verschiedenen Stilen für die Fenstersteuerelemente wählen.

  • native: dies ist der Standard und rendert Fenstersteuerelemente gemäß der zugrunde liegenden Plattform.
  • custom: rendert Fenstersteuerelemente mit benutzerdefiniertem Styling, wenn Sie dies dem nativen Stil vorziehen.
  • hidden: blendet Fenstersteuerelemente vollständig aus, wenn Sie Platz in der Titelleiste gewinnen möchten und ein tastaturzentrierter Benutzer sind.

Code-Bearbeitung

Next Edit Suggestions allgemeine Verfügbarkeit

Einstellung: github.copilot.nextEditSuggestions.enabled

Wir freuen uns, Ihnen die allgemeine Verfügbarkeit von Next Edit Suggestions (NES) mitteilen zu können! Darüber hinaus haben wir mehrere Verbesserungen an der allgemeinen Benutzererfahrung von NES vorgenommen:

  • Machen Sie Bearbeitungsvorschläge kompakter, weniger störend für den umgebenden Code und einfacher auf einen Blick zu lesen.
  • Aktualisierungen des Ränderindikators, um sicherzustellen, dass alle Vorschläge leichter wahrgenommen werden.

Verbesserungen bei KI-Bearbeitungen

Wir haben einige kleinere Tweaks bei der Generierung von Bearbeitungen mit KI vorgenommen.

  • Diagnoseereignisse außerhalb des Editors stummschalten, während eine Datei mit KI-Bearbeitungen neu geschrieben wird. Zuvor haben wir in diesem Szenario bereits Quiggles deaktiviert. Diese Änderungen reduzieren das Flimmern im "Probleme"-Panel und stellen sicher, dass wir keine Anfragen für "Quick Fix"-Codeaktionen ausgeben.

  • Wir speichern jetzt explizit eine Datei, wenn Sie sich entscheiden, die KI-Bearbeitungen zu behalten.

Toolbasierter Bearbeitungsmodus

Einstellung: chat.edits2.enabled

Wir ändern die Funktionsweise des Bearbeitungsmodus im Chat. Der neue Bearbeitungsmodus verwendet denselben Ansatz wie der Agentenmodus, bei dem das Modell ein Tool aufrufen kann, um Dateien zu bearbeiten. Ein Vorteil dieser Ausrichtung ist, dass Sie nahtlos zwischen allen drei Modi wechseln können, während die Funktionsweise dieser Modi im Hintergrund stark vereinfacht wird.

Ein Nachteil ist, dass der neue Modus nur mit demselben reduzierten Satz von Modellen funktioniert, mit denen der Agentenmodus funktioniert, nämlich Modelle, die Tool-Aufrufe unterstützen und getestet wurden, um sicherzustellen, dass wir mit Tools eine gute Erfahrung haben können. Möglicherweise fehlen Ihnen Modelle wie o3-mini und Claude 3.7 (Thinking) in der Liste im Bearbeitungsmodus. Wenn Sie diese Modelle weiterhin zum Bearbeiten verwenden möchten, deaktivieren Sie die Einstellung chat.edits2.enabled, um zum vorherigen Bearbeitungsmodus zurückzukehren. Sie werden aufgefordert, die Sitzung zu löschen, wenn Sie die Modi wechseln.

Wir haben gelernt, dass das Prompting für konsistente Ergebnisse über verschiedene Modelle hinweg schwieriger ist, wenn Tools verwendet werden, aber wir arbeiten daran, diese Modelle für den Bearbeitungs- (und Agenten-) Modus freizuschalten.

Diese Einstellung wird schrittweise für Benutzer in VS Code Stable aktiviert.

Syntaxhervorhebung für Inline-Vorschläge

Einstellung: editor.inlineSuggest.syntaxHighlightingEnabled

Mit diesem Update ist die Syntaxhervorhebung für Inline-Vorschläge jetzt standardmäßig aktiviert. Beachten Sie im folgenden Screenshot, dass der Code-Vorschlag eine Syntaxfärbung angewendet hat.

Screenshot of the editor, showing that syntax highlighting is enabled for ghost text.

Wenn Sie Inline-Vorschläge ohne Syntaxhervorhebung bevorzugen, können Sie diese mit editor.inlineSuggest.syntaxHighlightingEnabled deaktivieren.

Screenshot of the editor showing that highlighting for ghost text is turned off.

Baum-Sitter-basierte Syntaxhervorhebung (Vorschau)

Einstellung: editor.experimental.preferTreeSitter.css und editor.experimental.preferTreeSitter.regex

Aufbauend auf der früheren Arbeit zur Verwendung von Tree-Sitter für die Syntaxhervorhebung unterstützen wir jetzt experimentelle, Tree-Sitter-basierte Syntaxhervorhebungen für CSS-Dateien und reguläre Ausdrücke innerhalb von TypeScript.

Notebooks

Mindestversion des Jupyter Notebook-Dokuments auf 4.5

Die Standardversion von nbformat für neue Notebooks wurde von 4.2 auf 4.5 angehoben. Dies setzt nun id-Felder für jede Zelle des Notebooks, um bei der Berechnung von Unterschieden zu helfen. Sie können auch bestehende Notebooks manuell aktualisieren, indem Sie nbformat_minor auf 5 im rohen JSON des Notebooks setzen.

Verbesserungen bei der Bearbeitung von KI-Notebooks

KI-gestützte Bearbeitungsunterstützung für Notebooks (einschließlich Agentenmodus) ist jetzt in der stabilen Version verfügbar. Dies wurde letzten Monat als Vorschau-Funktion in VS Code Insiders hinzugefügt.

Sie können jetzt Chat verwenden, um Notebook-Dateien mit der gleichen intuitiven Erfahrung wie beim Bearbeiten von Code-Dateien zu bearbeiten: Inhalte über mehrere Zellen hinweg ändern, Zellen einfügen und löschen und Zelltypen ändern. Diese Funktion bietet einen nahtlosen Workflow bei der Arbeit mit Data Science- oder Dokumentations-Notebooks.

Neues Notebook-Tool

VS Code bietet jetzt ein dediziertes Tool zum Erstellen neuer Jupyter-Notebooks direkt aus dem Chat. Dieses Tool plant und erstellt ein neues Notebook basierend auf Ihrer Anfrage.

Verwenden Sie das neue Notebook-Tool im Agentenmodus oder im Bearbeitungsmodus (stellen Sie sicher, dass der verbesserte Bearbeitungsmodus mit chat.edits2.enabled aktiviert ist). Wenn Sie den Ask-Modus verwenden, geben Sie /newNotebook in die Chat-Eingabeaufforderung ein, um ein neues Notebook zu erstellen.

Navigation durch KI-Bearbeitungen

Verwenden Sie die Diff-Symbolleisten, um jede KI-Bearbeitung über die Zellen hinweg zu durchlaufen und zu überprüfen.

KI-Bearbeitungen rückgängig machen

Wenn Sie sich auf einen Zellencontainer konzentrieren, macht der Befehl Rückgängig die vollständige Menge an KI-Änderungen auf Notebook-Ebene rückgängig.

Unterstützung für Text- und Bildausgaben im Chat

Sie können jetzt Notebook-Zellenausgaben wie Text, Fehler und Bilder direkt als Kontext zum Chat hinzufügen. Dies ermöglicht es Ihnen, die Ausgabe bei der Verwendung des Ask-, Edit- oder Agentenmodus zu referenzieren, wodurch es für das Sprachmodell einfacher wird, Ihren Notebook-Inhalt zu verstehen und zu unterstützen.

Verwenden Sie die Aktion Zellenausgabe zum Chat hinzufügen, die über das Drei-Punkte-Menü oder durch Rechtsklick auf die Ausgabe verfügbar ist.

Zum Anhängen der Zellenausgabe als Chat-Kontext

Zum Anhängen des Zellenausgabe-Bildes als Chat-Kontext

Barrierefreiheit

Verbesserungen am Chat-Agentenmodus

Sie werden nun benachrichtigt, wenn während einer Tool-Aufrufung manuelle Aktionen erforderlich sind, z. B. "Befehl im Terminal ausführen". Diese Informationen sind auch im ARIA-Label für die jeweilige Chat-Antwort enthalten, was die Barrierefreiheit für Screenreader-Benutzer verbessert.

Darüber hinaus ist ein neuer Dialog für Barrierefreiheitshilfe im Agentenmodus verfügbar, der erklärt, was Benutzer von der Funktion erwarten können und wie sie effektiv navigieren können.

Barrierefreiheitssignale für Chat-Bearbeitungsaktionen

VS Code bietet jetzt akustische Signale, wenn Sie KI-generierte Bearbeitungen beibehalten oder rückgängig machen. Diese Signale sind konfigurierbar über accessibility.signals.editsKept und accessibility.signals.editsUndone.

Verbesserte ARIA-Labels für den Vorschlagssteuerelement

ARIA-Labels für Elemente des Vorschlagssteuerelements enthalten jetzt reichhaltigere und beschreibendere Informationen, wie z. B. den Typ der Vorschlags (z. B. Methode oder Variable). Diese Informationen waren zuvor nur für sehende Benutzer über Icons verfügbar.

Quellcodeverwaltung

Verbesserungen am Referenz-Picker

Einstellung: git.showReferenceDetails

In diesem Meilenstein haben wir Verbesserungen am Referenz-Picker vorgenommen, der für verschiedene Quellcodeverwaltungsoperationen wie Checkout, Merge, Rebase oder Branch löschen verwendet wird. Der aktualisierte Referenz-Picker enthält Details zum letzten Commit (Autor, Commit-Nachricht, Commit-Datum) sowie Informationen zum Vor-/Zurück-Stand für lokale Branches. Dieser zusätzliche Kontext hilft Ihnen, die richtige Referenz für die verschiedenen Operationen auszuwählen.

Blenden Sie die zusätzlichen Informationen aus, indem Sie die Einstellung git.showReferenceDetails umschalten.

Screenshot of the source control references picker showing a list of git branches with details of the last commit, and ahead/behind information.

Repository-Statusleiste-Element

Arbeitsbereiche, die mehrere Repositories enthalten, verfügen nun über ein Statusleisten-Element des Quellcodeverwaltungsanbieters, das das aktive Repository links vom Branch-Picker anzeigt. Das neue Statusleisten-Element bietet zusätzlichen Kontext, sodass Sie wissen, welches das aktive Repository ist, während Sie zwischen Editoren navigieren und die Quellcodeverwaltungsansicht verwenden.

Um das Statusleisten-Element des Quellcodeverwaltungsanbieters auszublenden, klicken Sie mit der rechten Maustaste auf die Statusleiste und deaktivieren Sie Quellcodeverwaltungsanbieter im Kontextmenü.

Screenshot showing the repository status bar item for workspaces that contain more than one repository.

Verbesserungen der Git-Blame-Editor-Dekoration

Wir haben Feedback erhalten, dass die "Noch nicht committete" Editor-Dekoration beim Tippen keinen großen Mehrwert bietet und eher ablenkend ist. Ab diesem Meilenstein wird die "Noch nicht committete" Editor-Dekoration nur noch beim Navigieren im Code durch Verwenden der Tastatur oder Maus angezeigt.

Anpassung des Commit-Eingabecursors

In diesem Meilenstein haben wir dank eines Community-Beitrags die Einstellungen editor.cursorStyle und editor.cursorWidth zur Liste der Einstellungen hinzugefügt, die von der Quellcodeverwaltungs-Eingabebox berücksichtigt werden.

Terminal

Zuverlässigkeit im Agentenmodus

Das Tool, das es dem Agentenmodus ermöglicht, Befehle im Terminal auszuführen, weist eine Reihe von Zuverlässigkeits- und Kompatibilitätsverbesserungen auf. Sie sollten weniger Fälle erleben, in denen das Tool hängt oder der Befehl ohne Ausgabe abgeschlossen wird.

Eine der größeren Änderungen ist die Einführung des Konzepts der "reichen" Qualität der Shell-Integration im Gegensatz zu "einfach" und "keine". Die mit VS Code ausgelieferten Shell-Integrationsskripte aktivieren im Allgemeinen alle reichen Shell-Integrationen, die das beste Erlebnis im Tool "Im Terminal ausführen" (und der allgemeinen Terminalnutzung) bieten. Sie können die Qualität der Shell-Integration anzeigen, indem Sie mit der Maus über den Terminal-Tab fahren.

Verbesserungen der Terminal-IntelliSense (Vorschau)

Verbesserte IntelliSense für die code CLI

IntelliSense unterstützt jetzt Unterbefehle für die code-, code-insiders- und code-tunnel-CLIs. Wenn Sie beispielsweise code tunnel eingeben, werden verfügbare Unterbefehle wie help, kill und prune mit beschreibenden Informationen angezeigt.

Screenshot of the terminal window, showing code tunnel has been typed. The suggest widget shows subcommands like help, kill, prune, and others, with descriptions for each command.

Wir haben auch Optionsvorschläge hinzugefügt für

  • --uninstall-extension
  • --disable-extension
  • --install-extension

Diese zeigen eine Liste installierter Erweiterungen, um die Befehlsergänzung zu unterstützen.

Screenshot of the VSCode terminal with code --uninstall-extension. A list of available extensions is displayed, including vscode-eslint and editorconfig.

Zusätzlich bietet code --locate-shell-integration-path jetzt Shell-spezifische Optionen wie bash, zsh, fish und pwsh.

Screenshot of the VSCode terminal showing a command input: code --locate-shell-integration-path with a dropdown menu listing shell options bash, fish, pwsh, and zsh.

Automatisches Aktualisieren für globale Befehle

Das Terminal aktualisiert nun automatisch seine Liste globaler Befehle, wenn Änderungen im System-bin-Verzeichnis erkannt werden. Das bedeutet, dass neu installierte CLI-Tools (z. B. nach Ausführung von npm install -g pnpm) sofort in den Vervollständigungen angezeigt werden, ohne dass das Fenster neu geladen werden muss.

Zuvor erschienen Vervollständigungen für neue Tools aufgrund von Caching erst nach einem manuellen Neuladen des Fensters.

Kontext für Optionswerte

Terminalvorschläge zeigen jetzt kontextbezogene Informationen über erwartete Optionswerte an, was Ihnen hilft, Befehle leichter zu vervollständigen.

Screenshot of the terminal showing a command in progress: npm install --omit. The terminal suggest widget displays  to indicate that's the option that's expected.

Umfangreiche Vervollständigungen für die Fish-Shell

In der letzten Version haben wir detaillierte Befehlsvollständigungen für Bash und Zsh hinzugefügt. In dieser Iteration haben wir diese Unterstützung auch auf Fish erweitert. Vervollständigungsdetails werden aus der Dokumentation der Shell oder integrierten Hilfebefehlen bezogen.

Wenn Sie beispielsweise jobs in Fish eingeben, werden Nutzungsinformationen und Optionen angezeigt.

Screenshot of the Visual Studio Code Terminal with a fish terminal showing a user has typed jobs. The suggest widget shown provides information about the jobs command with detailed usage examples and options.

Dateityp-Icons in Vorschlägen

Vorschläge im Terminal enthalten jetzt spezifische Icons für verschiedene Dateitypen, wodurch es einfacher wird, zwischen Skripten und Binärdateien auf einen Blick zu unterscheiden.

Screenshot of the terminal, showing suggestions for various script files, including code.sh, code-cli.sh, and code-server.js. Icons indicate the specific file type.

Inline-Vorschlagsdetails

Inline-Vorschläge, die als Geistertext im Terminal angezeigt werden, erscheinen weiterhin am Anfang der Vorschlagsliste. In dieser Version haben wir Befehlsdetails zu diesen Einträgen hinzugefügt, um mehr Kontext vor der Akzeptanz zu bieten.

Screenshot of the terminal, showing the Block command as ghost text in the terminal. The first suggestion is block and it contains usage information.

Neuer vereinfachter und detaillierter Tab-Hover

Standardmäßig zeigt der Terminal-Tab jetzt deutlich weniger Details an.

Screenshot of the simple hover showing the terminal name, PID, command line, shell integration quality and actions

Um alles anzuzeigen, gibt es am unteren Rand des Hover-Fensters eine Schaltfläche Details anzeigen.

Screenshot of the detailed hover showing extensions that contribute to the environment and detailed shell integration diagnostics

Signierte PowerShell-Shell-Integration

Das PowerShell-Skript zur Shell-Integration ist nun signiert, was bedeutet, dass die Shell-Integration unter Windows bei Verwendung der Standard-PowerShell-Ausführungsrichtlinie RemoteSigned nun automatisch funktionieren sollte. Sie können mehr über die Vorteile der Shell-Integration hier lesen.

Terminal-Shell-Typ

In dieser Iteration haben wir unsere Terminal-Shell-API finalisiert, die es Erweiterungen ermöglicht, den aktuellen Shell-Typ des Benutzers in ihrem Terminal zu sehen. Durch das Abonnieren des Ereignisses onDidChangeTerminalState können Sie Änderungen am Shell-Typ des Benutzers im Terminal verfolgen. So könnte die Shell beispielsweise von zsh zu bash wechseln.

Die Liste aller identifizierbaren Shells finden Sie derzeit hier

Remote-Entwicklung

Linux Legacy Server-Support wurde beendet

Ab Version 1.99 können Sie keine Verbindung mehr zu diesen Servern herstellen. Wie in unseren Release Notes 1.97 erwähnt, können Benutzer, die zusätzliche Zeit für die Migration zu einer unterstützten Linux-Distribution benötigen, benutzerdefinierte Builds von glibc und libstdc++ als Workaround bereitstellen. Weitere Informationen zu diesem Workaround finden Sie im FAQ-Bereich.

Unternehmen

macOS Geräteverwaltung

VS Code unterstützt jetzt die Geräteverwaltung auf macOS zusätzlich zu Windows. Dies ermöglicht Systemadministratoren, Richtlinien von einem zentralen Verwaltungssystem wie Microsoft Intune aus zu verteilen.

Weitere Details finden Sie in der Dokumentation zur Unternehmensunterstützung.

Beiträge zu Erweiterungen

Python

Bessere Unterstützung für editierbare Installationen mit Pylance

Pylance unterstützt nun die Auflösung von Importpfaden für Pakete, die im editierbaren Modus installiert sind (pip install -e .), wie in PEP 660 definiert. Dies ermöglicht eine verbesserte IntelliSense-Erfahrung in diesen Szenarien.

Diese Funktion wird über python.analysis.enableEditableInstalls aktiviert und wir planen, sie im Laufe dieses Monats als Standarderfahrung einzuführen. Sollten Sie Probleme auftreten, melden Sie diese bitte im Pylance GitHub Repository.

Schnellere und zuverlässigere Diagnoseerfahrung mit Pylance (experimentell)

Wir beginnen mit der Einführung einer Änderung, um die Genauigkeit und Reaktionsfähigkeit der Diagnosen von Pylance bei Verwendung der Release-Version der Erweiterung zu verbessern. Dies ist besonders hilfreich in Szenarien mit mehreren geöffneten oder kürzlich geschlossenen Dateien.

Wenn Sie nicht auf die Einführung warten möchten, können Sie python.analysis.usePullDiagnostics setzen. Sollten Sie Probleme auftreten, melden Sie diese bitte im Pylance GitHub Repository.

Pylance benutzerdefinierte Node.js-Argumente

Es gibt eine neue Einstellung python.analysis.nodeArguments, die es Ihnen ermöglicht, benutzerdefinierte Argumente direkt an Node.js zu übergeben, wenn Sie python.analysis.nodeExecutable verwenden. Standardmäßig ist sie auf "--max-old-space-size=8192" gesetzt, aber Sie können sie an Ihre Bedürfnisse anpassen (z. B. um mehr Speicher für Node.js zuzuweisen, wenn Sie mit großen Arbeitsbereichen arbeiten).

Darüber hinaus lädt Pylance, wenn python.analysis.nodeExecutable auf auto gesetzt ist, automatisch Node.js herunter.

Erweiterungs-Authoring

Terminal.shellIntegration-Optimierungen

Die Terminal.shellIntegration API wird nun nur noch aktiviert, wenn eine Befehlserkennung stattfindet. Zuvor sollte dies funktionieren, wenn nur das aktuelle Arbeitsverzeichnis gemeldet wurde, was dazu führte, dass TerminalShellIntegration.executeCommand nicht gut funktionierte.

Zusätzlich wird TerminalShellIntegration.executeCommand nun konsistenter funktionieren und mehrere "Unter-Ausführungen" für eine einzelne Befehlszeile verfolgen, die am Ende mehrere Befehle ausgeführt hat. Dies hängt von der reichen Shell-Integration ab, wie im Abschnitt Zuverlässigkeit im Agentenmodus erwähnt.

Vorgeschlagene APIs

Status der Task-Problem-Matcher

Wir haben eine vorgeschlagene API hinzugefügt, damit Erweiterungen überwachen können, wann die Problem-Matcher einer Aufgabe mit der Verarbeitung von Zeilen beginnen und diese beenden. Aktivieren Sie sie mit taskProblemMatcherStatus.

Bilder an LLM senden

In dieser Iteration haben wir eine vorgeschlagene API hinzugefügt, damit Erweiterungen Bilder anhängen und Visionsanfragen an das Sprachmodell senden können. Anhänge müssen die rohen, nicht Base64-codierten Binärdaten des Bildes sein (Uint8Array). Die maximale Bildgröße beträgt 5 MB.

Schauen Sie sich dieses API-Vorschlags-Issue an, um ein Nutzungsbeispiel zu sehen und über den Status dieser API auf dem Laufenden zu bleiben.

Technik

Verwenden Sie die neue /latest API vom Marketplace, um nach Erweiterungsupdates zu suchen

Vor einigen Meilensteinen haben wir einen neuen API-Endpunkt im vscode-unpkg-Dienst eingeführt, um nach Erweiterungsupdates zu suchen. Der Marketplace unterstützt denselben Endpunkt, und VS Code verwendet diesen Endpunkt nun, um nach Erweiterungsupdates zu suchen. Dies ist hinter einem Experiment versteckt und wird schrittweise an die Benutzer ausgerollt.

Vielen Dank

Last but not least, ein großes Danke an die Mitwirkenden von VS Code.

Fehlerverfolgung

Beiträge zu unserer Fehlerverfolgung

Pull-Anfragen

Beiträge zu vscode

Beiträge zu vscode-css-languageservice

Beiträge zu vscode-custom-data

Beiträge zu vscode-extension-samples

Beiträge zu vscode-extension-telemetry

Beiträge zu vscode-js-debug

Beiträge zu vscode-mypy

Beiträge zu vscode-prompt-tsx

Beiträge zu vscode-pull-request-github

Beiträge zu vscode-python-debugger

Beiträge zu vscode-test

Beiträge zu language-server-protocol

Beiträge zu python-environment-tools

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