Skip to main content

Recherche mit GitHub Copilot CLI

Der /research Schrägstrich-Befehl wandelt Copilot in Ihren wissenschaftlichen Assistenten um und sammelt ausführliche Informationen und Einblicke zu einem Thema.

Einleitung

Copilot CLIs Schrägstrichbefehl ist ein leistungsfähiges /research Tool für umfassende Recherchen und Untersuchungen. Wenn Sie /research gefolgt von den Details eingeben, über die Sie Bescheid wissen möchten, aktiviert Copilot einen spezialisierten Rechercheagenten, der Informationen aus Ihrem Codebestand sammelt und verarbeitet, von relevanten GitHub Repositories und aus dem Web. Dieser integrierte benutzerdefinierte Agent erstellt einen umfassenden Markdown-Bericht mit Zitaten zusammen mit einer kurzen Zusammenfassung in der CLI. Sie können den vollständigen Bericht anzeigen und als Gist auf GitHub speichern, was das Teilen erleichtert.

Der Befehl wurde entwickelt, um umfassende, gut zitierte Antworten auf komplexe Fragen zu Codebases, APIs, Bibliotheken, Softwarearchitektur und anderen technischen Themen bereitzustellen.

Verwenden des /research Slash-Befehls

Geben Sie in einer interaktiven CLI-Sitzung Folgendes ein:

Copilot prompt
/research TOPIC
          `TOPIC` ist eine Beschreibung in natürlicher Sprache, über die Sie mehr herausfinden möchten.

Je nach den Berechtigungen, die du der CLI erteilt hast, kann dich Copilot dazu auffordern, die Berechtigung zum Erstellen eines Verzeichnisses zu erteilen, in dem Daten gespeichert werden, während die Recherche kompiliert wird.

Wenn die Recherche abgeschlossen ist, zeigt Ihnen Copilot eine Zusammenfassung der wichtigsten Ergebnisse und gibt Ihnen einen Link zu einer Markdown-Datei, die den vollständigen Bericht enthält.

Anzeigen und Freigeben eines Forschungsberichts

Sie können den Link verwenden, der angezeigt wird, wenn die Recherche abgeschlossen ist, um den vollständigen Bericht in Ihrem Standard-Editor für Markdown-Dateien anzuzeigen.

Alternativ können Sie STRG+Y drücken, um den aktuellen Forschungsbericht der aktuellen Sitzung im Terminal zu öffnen.

Hinweis

Die Anwendung, die verwendet wird, um einen Bericht anzuzeigen, wenn Sie STRG+Y drücken, wird durch den Wert der COPILOT_EDITORVariablen , VISUALoder EDITOR Umgebungsvariablen (in dieser Reihenfolge der Rangfolge) bestimmt. Wenn keine dieser Sätze festgelegt ist, verwendet die CLI vi unter Linux oder vim unter macOS.

Um den Bericht freizugeben, können Sie ihn entweder in einer Datei speichern oder ein GitHub gist erstellen.

  1. So erstellen Sie einen Gist-Eintrag:

    Copilot prompt
    /share gist research
    

    Um in einer Datei zu speichern, geben Sie Folgendes ein:

    Copilot prompt
    /share file research [PATH]
    

    Wenn Sie den [PATH] Parameter weglassen, wird die Datei basierend auf dem Forschungsthema im aktuellen Arbeitsverzeichnis mit einem Dateinamen gespeichert.

  2. Verwenden Sie die Auf-/Abwärtspfeiltasten und die Eingabetaste, um den Report aus der Liste der Forschungsberichte auszuwählen, die Sie während der aktuellen Sitzung erstellt haben, und ihn zu teilen.

    Die URL des Gist oder des Pfads zur Datei wird in der CLI angezeigt.

Vorteile von /research

  •         **Tiefe über Geschwindigkeit**: Normaler Chat ist für schnelle Antworten optimiert. 
            `/research` ist für Gründlichkeit optimiert. Es erzeugt Berichte, die Hunderte von Zeilen lang sein können, mit Architekturdiagrammen, Codeausschnitten und Zitaten.
    
  •         **Gespeicherte und gemeinsam nutzbare Ausgabe**: Berichte werden als Markdown-Dateien auf dem Datenträger gespeichert. Sie können sie jederzeit anzeigen und freigeben. Dadurch wird die Recherche zu einem dauerhaften Artefakt und nicht zu einer vorübergehenden Chatnachricht.
    
  •         **Funktioniert über Repositorys** hinweg: Wenn Sie bei GitHub angemeldet sind, kann der Agent in den Repositorys Ihrer Organisation suchen, Dateien aus einem beliebigen öffentlichen oder zugänglichen privaten Repository abrufen und das Web durchsuchen – es ist nicht auf Ihre lokale Codebasis beschränkt.
    
  • Anpassung des Abfragetyps: Anstatt einen einheitlichen Standardbericht zu generieren, passt sich das Antwortformat automatisch daran an, ob Sie eine Anwendungsfrage, eine konzeptionelle Frage stellen oder eine eingehende technische Analyse anfordern.

  •         **Autonomer Betrieb**: Der Agent unterbricht Sie nie mit klarstellenden Fragen. Es macht vernünftige Annahmen und dokumentiert sie explizit in einem Abschnitt "Konfidenzbewertung".
    

Beispielaufforderungen für /research

Codebasisarchitektur

Copilot prompt
/research What is the architecture of this codebase?
          **Warum es gut funktioniert**: Der Forschungsmitarbeiter hat Zugriff auf `grep`Ihr `glob`aktuelles Arbeitsverzeichnis und `view` Tools. Es kann den vollständigen Projektbaum erkunden, wichtige Dateien lesen und eine Architekturübersicht synthetisieren, wobei eine normale Chatantwort dies nur oberflächlich tun könnte. Der Agent erzeugt in der Regel Architekturdiagramme, Komponentenaufschlüsselungen und Datenflussbeschreibungen.

Funktionsweise einer bestimmten Technologie

Copilot prompt
/research How does React implement concurrent rendering?
          **Warum es gut funktioniert**: Der Agent verwendet spezielle Tools, um Informationen aus dem Internet abzurufen, und um den tatsächlichen React-Quellcode auf GitHub zu betrachten. Es wird angewiesen, Code über Dokumentation zu priorisieren und Dateipfade mit Zeilennummern bereitzustellen.

Grundlegendes zu internen Implementierungsmustern

Copilot prompt
/research How are feature flags implemented at our organization?
          **Warum es gut funktioniert**: Der Agent wird explizit angewiesen, "interne/private Implementierungen immer über öffentliche/open-source-Alternativen priorisieren" und zuerst mithilfe von `org:ORGNAME` Abfragen die Repositorys der Organisation zu durchsuchen. Es weiß, nach internen Benennungsmustern wie `-hub`, `-service`, `-client` zu suchen.

Vergleichen von Technologien oder Ansätzen

Copilot prompt
/research What's the difference between JWT and session-based authentication?
          **Warum es gut funktioniert**: Der Agent passt seine Antwort auf "Konzeptionelle/Erläuternde Fragen" mit narrativen Erklärungen, Kompromissen und Designentscheidungen an. In der Regel werden Tabellen für Vergleiche von drei oder mehr Elementen verwendet.

Prozess-/Anleitungsfragen

Copilot prompt
/research How do I add an endpoint to the API?
          **Warum es gut funktioniert**: Der Agent ist geschult, Abfragetyp zu erkennen und schrittweise Anleitungen mit Links zu relevanten Dokumenten, Kontakten und Systemen zum Eingeben von Fragen zu Prozessen/Vorgehensweisen bereitzustellen.

Eintauchen in eine spezifische Codebasis-Komponente

Copilot prompt
/research How is the session management system implemented in this repo?
          **Warum es gut funktioniert**: Die Kombination lokaler Tools (`grep`, `glob`, `view`) mit den Anweisungen des Agents, Importe, Aufrufe und Typreferenzen zu verfolgen und Abhängigkeiten zu berücksichtigen, bedeutet, dass es die tatsächliche Implementierung durchlaufen wird, nicht nur eine allgemeine Antwort bietet.

Wenn Sie möglicherweise nicht verwenden möchten /research

  •         **Schnelle, einfache Fragen**: Wenn Sie nur wissen möchten, "Was macht diese Funktion?". oder "Diesen Fehler beheben", ist eine normale Chatnachricht schneller und geeigneter. 
            `/research` ist für Fragen konzipiert, die umfangreiche Untersuchungen erfordern.
    
  •         **Wenn Sie Codeänderungen benötigen**: `/research` Erstellt einen Bericht, nicht Codeänderungen. Es verwendet das `create` Tool, um die Berichtsdatei zu speichern, verwendet jedoch keine `edit`, `bash`oder andere Codeänderungstools. Wenn Sie den Agent benötigen, um ihren Code tatsächlich zu ändern, verwenden Sie eine normale Eingabeaufforderung (in der Regel beginnend im Planmodus).
    
  •         **Zeitkritische Interaktionen**: Die Recherche dauert länger als eine normale Antwort, da der Agent viele Toolaufrufe ausführt (Suchen von Code, Abrufen von Dateien, Durchsuchen des Webs). Wenn Sie eine schnelle Antwort im Codierungsfluss benötigen, ist der normale Chat besser.
    

Überlegungen und Dinge, die Sie beachten müssen

  •         **Berichte sind an Ihre Sitzung gebunden**: Forschungsberichte werden in einem sitzungsspezifischen Forschungsverzeichnis gespeichert. Wenn Sie eine neue Sitzung starten, stehen frühere Recherchen in der CLI nicht zur Verfügung, wenn Sie die<kbd>STRG-Y-Tastenkombination</kbd>+<kbd></kbd> oder den `/share` Schrägstrichbefehl verwenden. Sie können jedoch über das entsprechende `~/.copilot/session-state/SESSION-ID/research/` Verzeichnis auf frühere Berichte zugreifen.
    

    In Linux oder macOS können Sie den folgenden Befehl an einer Terminal-Eingabeaufforderung verwenden, um die 10 neuesten CLI-Sitzungsverzeichnisse auflisten zu können:

    Bash
    ls -dtl ~/.copilot/session-state/*/ | head -10
    
  •         **Der Forschungsagent verwendet ein bestimmtes Modell: Der Forschungsagent** ist hartcodiert, um ein bestimmtes KI-Modell zu verwenden (siehe [AUTOTITLE](/copilot/reference/cli-command-reference#built-in-agents)). Die Modellauswahl kann nicht über den `/model` Befehl konfiguriert werden. Der Recherche-Agent verwendet immer das definierte Modell, unabhängig davon, welches Modell Sie für Ihre Hauptsitzung ausgewählt haben.
    
  •         **Die Berichtsqualität variiert je nach Abfragetyp**: Der Agent klassifiziert Ihre Abfrage in drei Typen und passt die Antwort entsprechend an:
    

    * Prozessfragen → Schritt-für-Schritt-Anleitung (minimaler Code). * Konzeptionelle Fragen → narrative Erklärung mit Kontext. * Technische Deep-Dives → vollständige Architekturdiagramme, Komponentenabschnitte und Codebeispiele.

    Die Art und Weise, wie Sie Ihre Eingabeaufforderung ausdrücken, kann sich auf die Auswahl der Rechercheklassifizierung des Agenten auswirken. Wenn Sie z. B. einen technischen Deep-Dive-Vorgang wünschen, Ihre Frage aber als "Was ist X?" ausdrücken, erhalten Sie möglicherweise eine konzeptionelle Antwort. In dieser Situation könntest du deinen Prompt umformulieren, um genauer anzugeben, welche Art von Bericht Copilot erstellen soll. Beispiel: "Geben Sie mir einen technischen Einblick in X, mit Architekturdiagrammen und Codebeispielen.".

Weiterführende Lektüre

  •         [AUTOTITLE](/copilot/how-tos/copilot-cli)
    
  •         [AUTOTITLE](/copilot/how-tos/use-copilot-agents/use-copilot-cli)