Was macht Copilot-Agent.nvim?
Ein autonomer Orchestrator für das Copilot SDK in Neovim, der ein natives, agentenbasiertes Programmiererlebnis bietet.
Funktionen
- Autonome Codegenerierung: Copilot-Agent.nvim kann selbstständig mehrzeilige Codeblöcke generieren und in Ihre Datei einfügen, basierend auf dem aktuellen Kontext und allen vorausgegangenen Änderungen.
- Interaktive Arbeitsabläufe: Sie können mit dem Agenten über Chat-ähnliche Schnittstellen interagieren, Code erklären lassen, Alternativen vorschlagen oder Änderungen anfordern.
- Fehlerbehebung und Refactoring: Der Agent kann vorhandenen Code analysieren, Fehler erkennen und automatisch Korrekturen vorschlagen oder anwenden.
- Individuelle Steuerung: Steuern Sie den Grad der Autonomie des Agenten – von reinen Vorschlägen bis hin zu vollautomatischen Änderungen.
Voraussetzungen
- Neovim (0.9.0 oder höher)
- Copilot SDK – installiert und konfiguriert
- JSON oder luv (wird für die Kommunikation mit dem Copilot-Dienst benötigt)
Installation
Mit lazy.nvim
{
"ray-x/copilot-agent.nvim",
dependencies = {
"github/copilot.vim",
},
config = function()
require("copilot-agent").setup({})
end,
}
Mit packer.nvim
use {
"ray-x/copilot-agent.nvim",
requires = {
"github/copilot.vim",
},
config = function()
require("copilot-agent").setup({})
end,
}
Konfiguration
Die Standardkonfiguration kann in der setup()-Funktion überschrieben werden:
require("copilot-agent").setup({
-- Maximale Anzahl von Vorschlägen pro Anfrage
max_suggestions = 3,
-- Zeitüberschreitung in Sekunden für Anfragen an den Copilot-Dienst
timeout = 30,
-- Wenn gesetzt, wird der Agent Änderungen automatisch anwenden (ohne Bestätigung)
auto_apply = false,
-- Schlüsselbelegungen für Agentenaktionen (siehe unten)
mappings = {
invoke = "<leader>a",
accept = "<leader>y",
reject = "<leader>n",
},
})
Verwendung
Grundlegende Befehle
:CopilotAgent invoke– Startet eine Anfrage an den Agenten basierend auf dem aktuellen Pufferinhalt.:CopilotAgent explain– Erklärt den ausgewählten Codeblock.:CopilotAgent refactor– Schlägt ein Refactoring für den ausgewählten Code vor.:CopilotAgent fix– Analysiert den ausgewählten Code auf Fehler und schlägt Korrekturen vor.
Interaktive Sitzung
Sie können auch eine interaktive Sitzung starten, in der Sie mit dem Agenten chatten können:
:CopilotAgent chat
Daraufhin öffnet sich ein separates Fenster, in das Sie Ihre Anweisungen eingeben können. Der Agent antwortet mit Codevorschlägen oder Erklärungen.
Schlüsselbelegungen
Standardmäßig sind folgende Tastenkombinationen definiert:
<leader>a– Agent aufrufen<leader>y– Vorschlag annehmen<leader>n– Vorschlag ablehnen
Diese können in der Konfiguration überschrieben werden.
Hinweise
- Stellen Sie sicher, dass der Copilot-Dienst läuft (in der Regel automatisch nach Installation des offiziellen Copilot-Plugins).
- Bei Problemen überprüfen Sie die Logs mit
:CopilotAgent log. - Dieses Plugin ist Open Source und Beiträge sind willkommen. Besuchen Sie das Repository auf GitHub für weitere Informationen.
Lizenz
MIT