Einführung in den GitHub Copilot Agentenmodus (Vorschau)
24. Februar 2025 von Isidor Nikolic
Der Agentenmodus ist jetzt in VS Code Stable verfügbar und unterstützt MCP-Server. Lesen Sie mehr über die Updates zum Agentenmodus in unserem Blogbeitrag.
Der Copilot Agentenmodus ist die nächste Evolutionsstufe der KI-gestützten Codierung. Er agiert als autonomer Peer-Programmierer und führt auf Ihren Befehl hin mehrstufige Codierungsaufgaben durch – analysiert Ihre Codebasis, liest relevante Dateien, schlägt Dateiänderungen vor und führt Terminalbefehle und Tests aus. Er reagiert auf Kompilierungs- und Linting-Fehler, überwacht die Ausgabe des Terminals und der Tests und korrigiert sich selbst in einer Schleife, bis die Aufgabe abgeschlossen ist. Heute für alle VS Code Insiders verfügbar und bald auch in VS Code Stable.
So verwenden Sie den Copilot Agentenmodus
Öffnen Sie in VS Code Insiders die Copilot Edits-Ansicht (), wählen Sie im Modus-Dropdown **Agent** aus und geben Sie Ihre Aufforderung ein.
Der Copilot Agentenmodus kann Anwendungen von Grund auf neu erstellen, Refactorings über mehrere Dateien hinweg durchführen, Tests schreiben und ausführen und Legacy-Code auf moderne Frameworks migrieren. Er kann automatisch Dokumentationen generieren, neue Bibliotheken integrieren oder Fragen zu einer komplexen Codebasis beantworten. Der Copilot Agentenmodus hilft Ihnen, sehr produktiv zu sein, indem er einen KI-Kollaborateur hat, der den Arbeitsbereich versteht. Er kann Ihren internen Entwicklungsfluss orchestrieren und Sie dabei die Kontrolle behalten lassen.
Der Copilot Agentenmodus agiert auf eine autonomere und dynamischere Weise, um das gewünschte Ergebnis zu erzielen. Zur Verarbeitung einer Anfrage durchläuft Copilot die folgenden Schritte und iteriert bei Bedarf mehrmals
- Ermittelt autonom den relevanten Kontext und die zu bearbeitenden Dateien.
- Bietet sowohl Codeänderungen als auch Terminalbefehle zur Erledigung der Aufgabe an. Copilot kann beispielsweise Code kompilieren, Pakete installieren, Tests ausführen und vieles mehr.
- Überwacht die Korrektheit von Codeänderungen und die Ausgabe von Terminalbefehlen und iteriert zur Behebung von Problemen.
Der Copilot Agentenmodus verwendet eine Reihe von Werkzeugen, um diese Aufgaben zu erfüllen.

Im Idealfall würden Sie sich nur um das Endergebnis des Copilot Agentenmodus kümmern, aber er kann manchmal Fehler machen und vom Kurs abkommen. Um in solchen Situationen einfach einzugreifen und rückgängig zu machen, wird jede Werkzeugaufrufung transparent in der Benutzeroberfläche angezeigt, für Terminalwerkzeuge ist eine Genehmigung erforderlich, und wir unterstützen umfangreiche Rückgängig-Funktionen – Sie können die Steuerung **Letzte Bearbeitung rückgängig machen** in der Titelleiste der Ansicht verwenden, um zum Zustand vor der letzten Bearbeitung zurückzukehren. Anstatt sich auf eine lange, detaillierte Eingabeaufforderung zu verlassen, um eine perfekte Lösung zu erzielen, sollten Sie mit Copilot iterieren – die Benutzeroberfläche ist für Iterationen konzipiert und gibt Ihnen die volle Kontrolle über den Prozess, um sicherzustellen, dass das Endergebnis besser ist.
Der Copilot Agentenmodus findet automatisch den präzisen Kontext und legt den Arbeitsbereich von Dateien fest, indem er die richtigen Arbeitsbereichswerkzeuge aufruft. Um Copilot präziser zu steuern, können Sie jederzeit explizit Kontext mit #file referenzieren, per Drag & Drop oder durch Klicken auf die Schaltfläche **Dateien hinzufügen**. Sie können beispielsweise eine Datei specifications.md erstellen und sie als Kontext hinzufügen, um Copilot besser zu steuern, oder Sie können benutzerdefinierte Anweisungen festlegen – damit Copilot Ihre Codierungsrichtlinien oder andere Präferenzen beachtet.
Beachten Sie, dass Copilot Agentenmodus aufgrund der potenziellen Möglichkeit, mehrere Anfragen pro Aufforderung zu senden, nicht so schnell ist wie der reguläre Bearbeitungsmodus und schnell Ihr kostenloses Copilot-Kontingent aufbrauchen kann. Für gut definierte und abgegrenzte Aufgaben sollten Sie beim Bearbeitungsmodus bleiben. Wenn Sie mehrere Bearbeitungen oder offene Aufgaben benötigen, wechseln Sie zum Agentenmodus.
Wie es funktioniert

Wenn Sie eine Anfrage an Copilot im Agentenmodus senden, erstellen wir eine Eingabeaufforderung für das LLM, das Sie aus dem Modell-Dropdown ausgewählt haben. Diese Eingabeaufforderung enthält
- Ihre Anfrage
- Eine zusammengefasste Struktur des Arbeitsbereichs (anstelle der vollständigen Codebasis zur Speicherung von Tokens)
- Maschinenkontext (z. B. welches Betriebssystem Sie verwenden)
- Werkzeugbeschreibung (optional Werkzeugaufrufergebnis)
Wir definieren eine Reihe von Werkzeugen, die das LLM aufrufen kann. Jedes Werkzeug hat seine eigenen Fähigkeiten, die Copilot bei der Erledigung der Aufgabe helfen. Mit diesen Werkzeugen kann Copilot den Arbeitsbereich durchsuchen, den Inhalt von Dateien lesen, Befehle im Terminal ausführen, Kompilierungs- oder Linting-Fehler aus dem Editor abrufen und vorgeschlagene Änderungen über einen spekulativen Decoder-Endpunkt anwenden (Leistungsverbesserungen sind im Gange). Die Liste der Werkzeuge wächst ständig, da wir experimentieren, welche anderen Werkzeuge die Fähigkeiten von Copilot im Agentenmodus verbessern könnten.

Jedes Werkzeug verfügt über detaillierte Anweisungen für das LLM, wie und wann es verwendet werden soll. Hier ist die Beschreibung des Werkzeugs read_file als Beispiel
{
"name": "read_file",
"description": "Read the contents of a file. You must specify the line range you're interested in, and if the file is larger, you will be given an outline of the rest of the file. If the file contents returned are insufficient for your task, you may call this tool again to retrieve more content.",
"parameters": {
"type": "object",
"properties": {
"filePath": {
"description": "The absolute paths of the files to read.",
"type": "string"
},
"startLineNumberBaseZero": {
"type": "number",
"description": "The line number to start reading from, 0-based."
},
"endLineNumberBaseZero": {
"type": "number",
"description": "The inclusive line number to end reading at, 0-based."
}
},
"required": ["filePath", "startLineNumberBaseZero", "endLineNumberBaseZero"]
}
}
Ein Großteil unserer Entwicklungszeit wurde in die Verfeinerung dieser Werkzeugbeschreibungen und des System-Prompts investiert, damit das LLM Werkzeuge korrekt verwendet – wie auch von Anthropic in ihrem Blogbeitrag Building Effective Agents hervorgehoben. Wir haben unsere automatisierten Auswertungen, aber es gibt immer noch viel Hin und Her zwischen dem Aktualisieren der Prompts und Beschreibungen und dem Beobachten, wie sie in realen Anwendungsfällen funktionieren.
Wir sehen unterschiedliche Verhaltensweisen zwischen GPT 4o und Claude Sonnet, aber vorerst senden wir ähnliche System-Prompts an diese Modelle. In Zukunft, wenn wir die Unterstützung des Copilot Agentenmodus auf weitere LLMs ausweiten, werden wir die Prompts speziell für jedes Modell anpassen.
Wir lieben Self-Hosting
Seit dem ersten Tag von VS Code glauben wir fest an Self-Hosting. Wenn das Team eine neue Funktion nicht zum Erstellen von produktionsreifen Änderungen verwendet, dann stimmt etwas mit der Funktion nicht. So einfach ist das für uns.
Unser Team besitzt mehr als 200 GitHub-Repositorys und wir haben gesehen, wie der Copilot Agentenmodus in kleineren Repos hervorragende Leistungen erbringt, wo er bereits Produktivitätssteigerungen erzielt. Die Möglichkeit, Copilot offene Fragen zu stellen, funktioniert gut in Repos jeder Größe – zum Beispiel, wo und wie eine bestimmte Funktion implementiert ist. Refactorings über mehrere Dateien hinweg in großen Codebasen – wie vscode – sind heute eine große Herausforderung für jeden Software-Engineering-Agenten. Die Verbesserung des Copilot Agentenmodus in komplexen Repos wird mehr Self-Hosting-Möglichkeiten für unser Team sowie nützliche Interaktionen für Sie eröffnen.
Neben Self-Hosting nutzen die VS Code Teammitglieder gerne den Copilot Agentenmodus für ihre Hobbyprojekte, wie Apps für Wettervorhersagen, Essensplanung, Kaffeekonsum oder Fitnessstudio-Workouts.
Heute bevorzugt das VS Code-Team Claude Sonnet gegenüber GPT-4o für unsere Copilot Agentenmodus-Anwendungsfälle. In anfänglichen Tests von Claude 3.7 Sonnet haben wir signifikante Verbesserungen in der Funktionalität des Copilot Agentenmodus festgestellt.
Heute verfügbar
Der Copilot Agentenmodus ist in der Vorschau und heute für alle VS Code Insiders-Benutzer verfügbar. Wir stellen buchstäblich jeden Tag Code bereit, um Copilot zu verbessern, daher wird die Erfahrung in VS Code Insiders jeden Tag besser (z. B. haben wir heute die Möglichkeit hinzugefügt, den vorgeschlagenen Terminalbefehl zu bearbeiten). Wir freuen uns auf Ihr Feedback in unserem Repository. Lassen Sie uns wissen, wie Sie den Copilot Agentenmodus nutzen möchten, damit wir sicherstellen können, dass die von uns bereitgestellten Funktionen für Sie wirkungsvoll sind.
Als nächstes planen wir
- Feingranulare Undo-Fähigkeit
- Vereinfachung der Kontext-Benutzeroberfläche (Arbeitsbereich)
- Notebook-Unterstützung (derzeit funktionieren Bearbeitungssitzungen nur in Texteditoren)
- Möglichkeit zur automatischen Genehmigung bestimmter Terminalbefehle
- Verbesserung der Terminalwerkzeug-Benutzeroberfläche (z. B. Anzeige der Terminalbefehlsausgabe inline)
- Erkundung von Tool-Erweiterbarkeit und MCP-Servern als Werkzeuge für den Agentenmodus. Wenn Sie Erweiterungs-Ideen haben, sagen Sie uns Bescheid
- Vereinheitlichung der Chat- und Bearbeitungserfahrung
- Parallel dazu verbessern wir die Qualität und Leistung mit dem Ziel, den Copilot Agentenmodus für alle VS Code Stable-Benutzer zu veröffentlichen.
Für einen detaillierten Überblick über den Copilot Agentenmodus lesen Sie bitte die offizielle Dokumentation.
Wir sind begeistert vom Copilot Agentenmodus – probieren Sie ihn noch heute aus und lassen Sie uns wissen, was Sie denken.
Viel Spaß beim Coden!
Isidor und das VS Code-Team