Einführung
Bei jeder Verwendung Copilot CLIwerden Ihre Sitzungsdaten auf Ihrem lokalen Computer aufgezeichnet. Dazu gehören Ihre Prompts, die Antworten von Copilot, die verwendeten Tools und Details zu den Dateien, die geändert wurden. Standardmäßig werden Sitzungsdaten auch mit Ihrem GitHub Konto synchronisiert. So können Sie alle Ihre bisherigen Sitzungen abfragen, darunter Sitzungen von Copilot CLI, Copilot-Cloud-Agent, Copilot Codeüberprüfung, VS Code, JetBrains und dem GitHub Copilot App.
Diese Sitzungsdaten ermöglichen mehrere Funktionen, die über Copilot CLI, VS Code, JetBrains, GitHub Copilot App und GitHub.com verfügbar sind:
- Abfragen des Sitzungsverlaufs: Stellen Sie Fragen in natürlicher Sprache zu Ihrer früheren Arbeit und Copilot durchsuchen Sie Ihre Sitzungsdaten nach Antworten.
- Fortsetzen von Sitzungen: Nehmen Sie an der Stelle weiter, an der Sie in einer früheren Sitzung aufgehört haben.
- Der
/chronicleSchrägstrichbefehl: Eine Reihe von speziell erstellten Unterbefehlen, die Standupberichte, personalisierte Tipps, Kostenanalyse und Vorschläge zur Verbesserung Ihrer benutzerdefinierten Anweisungen generieren, die alle von Ihrem Sitzungsverlauf abgeleitet sind.
Mit benutzerbezogenen Abfragen können Sie nur Ihre eigenen Sitzungen abfragen – niemand sonst kann auf Ihre Sitzungsdaten zugreifen.
In diesem konzeptionellen Artikel wird erläutert, wie Sitzungsdaten gespeichert und synchronisiert werden, und wie Sie sie verwenden können, um Ihren Workflow zu verbessern. Eine praktische Anleitung, wie Sie eine Sitzung wieder aufnehmen, Copilot über Ihre CLI-Sitzungen abfragen und den /chronicle-Slash-Befehl benutzen, finden Sie unter Verwenden von GitHub Copilot-CLI Sitzungsdaten. Zum Abfragen von Sitzungen über VS Code siehe Verwalten von Agent-Sitzungen.
Wie Sitzungsdaten gespeichert werden
Jede Copilot CLI Sitzung wird als Eine Reihe von Dateien im ~/.copilot/session-state/ Verzeichnis auf Ihrem Computer beibehalten. Die Daten jeder Sitzung umfassen alle Aufzeichnungen dieser Sitzung. Mit diesen Dateien können Sie eine interaktive CLI-Sitzung fortsetzen.
Speichert zusätzlich zu den Sitzungsdateien Copilot CLI strukturierte Sitzungsdaten in einer lokalen SQLite-Datenbank, die als Sitzungsspeicher bezeichnet wird. Diese Daten sind eine Teilmenge der vollständigen Daten, die in den Sitzungsdateien gespeichert sind. Der Sitzungsspeicher unterstützt den /chronicle Schrägstrichbefehl und ermöglicht es Copilot, Fragen zu beantworten, die Sie zu Ihrer früheren Arbeit stellen.
Sitzungssynchronisierung
Standardmäßig synchronisiert Copilot CLI Ihre Sitzungsdaten mit Ihrem GitHub-Konto. Dies ermöglicht es Ihnen, Ihre vergangenen Sitzungen aus Copilot CLI, VS Code, JetBrains, dem GitHub Copilot App oder GitHub.com abzufragen und umfasst Sitzungen aus Copilot-Cloud-Agent, Copilot Codeüberprüfung, VS Code und dem GitHub Copilot App.
Sie können die Sitzungssynchronisierung deaktivieren, indem Sie in Ihren CLI-Einstellungen JSON festlegen "remoteExport": false . Wenn Sie widersprechen, bleiben die Sitzungsdaten auf Ihrem Gerät, und Sie können sie nur über Copilot CLI abfragen.
Für Benutzer von Copilot Enterprise und Copilot Business muss ein Organisationsadministrator die Richtlinie „Lokale Sitzungen in der Cloud speichern“ mindestens auf „In der Cloud anzeigen“ festlegen. Wenn die Richtlinie deaktiviert oder nicht konfiguriert ist, werden Sitzungen nur lokal gespeichert.
Datenschutz und Datenlokalität
Lokale Sitzungsdaten werden in ~/.copilot/session-state/ gespeichert und sind nur für Ihr Benutzerkonto auf diesem Gerät zugänglich.
Synchronisierte Sitzungsdaten werden auf GitHub gespeichert und sind an Ihr persönliches Konto gebunden. Der Zugriff ist standardmäßig nur für Sie möglich. Organisations- und Unternehmensadministratoren steuern über die Richtlinie „Lokale Sitzungen in der Cloud speichern“, ob die Synchronisierung verfügbar ist, doch durch die Aktivierung der Richtlinie erhalten Administratoren keinen Zugriff auf Ihre Sitzungsdaten.
Sie können einzelne Sitzungen freigeben und damit anderen Personen, die Zugriff auf das Repository haben, schreibgeschützten Zugriff gewähren. Freigegebene Sitzungen werden nicht für die Sitzungsabfragen von anderen Benutzern indiziert. Weitere Informationen findest du unter Verwalten von Agent-Sitzungen.
Copilot liest Sitzungsdaten vor, wenn Sie Fragen zu früheren Interaktionen stellen oder den /chronicle Schrägstrichbefehl verwenden. Sitzungsdaten wie ihre vorherigen Eingabeaufforderungen, Kontext und Antworten können wie bei jeder normalen Copilot CLI Interaktion an das KI-Modell gesendet werden.
Verwalten ihrer Sitzungsdaten
Sie können Ihre Sitzungsdaten sowohl lokal als auch auf GitHub.com verwalten.
- Lokale Daten: Um Daten für eine bestimmte CLI-Sitzung lokal zu entfernen, löschen Sie das relevante Sitzungsverzeichnis aus
~/.copilot/session-state/. Um alle lokalen Sitzungsdaten zu löschen, löschen Sie alles unter~/.copilot/session-state/. Danach müssen Sie den Sitzungsspeicher manuell neu indizieren. Siehe Erneutes Indizieren des Sitzungsspeichers weiter unten in diesem Artikel. Das Löschen lokaler Dateien wirkt sich nicht auf Sitzungsdaten aus, die mit Ihrem Konto synchronisiert wurden. Synchronisierte Daten können nicht lokal gelöscht werden. - Synchronisierte Daten: Sie können synchronisierte CLI-Sitzungen löschen oder ausblenden.GitHub.com Wenn Sie eine Sitzung ausblenden, wird sie aus Dem Sitzungsindex entfernt, sodass sie nicht mehr in Abfrageergebnissen angezeigt wird. Wenn Sie eine Sitzung löschen, wird sie aus Ihrer Sitzungsliste auf GitHub.com entfernt. Das Löschen gilt für CLI-Sitzungen, VS Code-Sitzungen und GitHub Copilot App-Sitzungen.
Der /chronicle Slash-Befehl
Der /chronicle Slash-Befehl bietet speziell entwickelte Unterbefehle, mit denen Sie aus dem Verlauf Ihrer Sitzung Erkenntnisse gewinnen können, darunter Standup-Berichte, personalisierte Tipps, Kostenanalysen und Vorschläge zur Verbesserung Ihrer benutzerdefinierten Anweisungen. Die vollständige Liste der Unterbefehle und Verwendungsbeispiele finden Sie unter Verwenden von GitHub Copilot-CLI Sitzungsdaten.
Wann Sitzungsdaten verwendet werden sollen
- Am Anfang Ihres Tages: Führen Sie die Schritte
/chronicle standup last 3 daysaus, um eine Zusammenfassung der letzten Arbeiten zu generieren, anstatt sie manuell zu rekonstruieren. - Periodisch, um dich weiterzuentwickeln: Führe
/chronicle tipsalle ein bis zwei Wochen aus, um Funktionen und Verbesserungen des Workflows zu ermitteln, die du vielleicht verpasst hast. - Wenn Copilot immer derselbe Fehler auftritt: Führen Sie die Ausführung aus
/chronicle improve, um das Muster zu identifizieren und benutzerdefinierte Anweisungen zu generieren, die den Agent für Ihr Projekt effektiver machen. - Um Ihre Token-Nutzung zu verstehen: Führen Sie
/chronicle cost tipsaus, um zu sehen, wofür Tokens verwendet werden, und erhalten Sie Vorschläge zur Kostensenkung. - So suchen Sie nach einem bestimmten Thema: Führen Sie
/chronicle search KEYWORDaus, um Sitzungen zu finden, die einen bestimmten Begriff oder ein bestimmtes Thema enthalten. Im Gegensatz zu Freiformfragen durchsucht dieser Sitzungsinhalt direkt nach Schlüsselwörtern, anstatt Die Abfrage semantisch zu interpretieren. - Zurückrufen an frühere Arbeiten: Stellen Sie eine Freiformfrage wie "Habe ich an etwas im Zusammenhang mit der Zahlungs-API gearbeitet?" und Copilot durchsucht Ihren Verlauf.
- So fahren Sie mit der vorherigen Arbeit fort: Verwenden Sie
copilot --continueodercopilot --resume, um dort weitermachen, wo Sie aufgehört haben.
Erneutes Indizieren des Sitzungsspeichers
Der Sitzungsspeicher wird während einer CLI-Sitzung inkrementell aufgefüllt. Die Daten einer Sitzung werden in einem sitzungsspezifischen Unterverzeichnis von ~/.copilot/session-state/ auf den Datenträger geschrieben. Dies geschieht auch in regelmäßigen Abständen während einer Sitzung und auch dann, wenn die Sitzung endet.
Sie können den Sitzungsspeicher anhand der Sitzungsdateien auf der Festplatte neu indizieren. Durch erneutes Indizieren werden auch Ihre Sitzungsdaten mit Ihrem Konto synchronisiert.
Situationen, in denen Sie möglicherweise eine Neuindizierung vornehmen müssen:
- Indizieren alter Sitzungen: Wenn Sie alte Sitzungsdateien auf dem Datenträger haben, die erstellt wurden, bevor der Sitzungsspeicher vorhanden war, füllt die erneute Indizierung den Sitzungsspeicher mit Daten aus diesen Sitzungen auf.
- Sitzungslöschung: Wenn Sie eine Sitzung aus Ihrem Verlauf löschen möchten, können Sie das Sitzungsverzeichnis löschen und dann den Sitzungsspeicher erneut indizieren.
- Migrieren/Wiederherstellen von Sitzungen: Wenn Sie Ihre Sitzungsdateien auf einen anderen Computer verschoben oder aus einer Sicherung wiederhergestellt haben, ohne auch die Sitzungsspeicherdatei zu verschieben/wiederherzustellen (
~/.copilot/session-store.db), können Sie den Sitzungsspeicher mit dem Befehl neu indizieren. - Dateibeschädigung: Wenn die Sitzungsspeicherdatei (
~/.copilot/session-store.db) beschädigt wird oder versehentlich gelöscht wird, können Sie den Sitzungsspeicher aus den Sitzungsdateien wiederherstellen. - Unerwartetes Beenden: Wenn eine Sitzung unerwartet beendet wird (z. B. aufgrund eines Absturzes oder Eines Stromausfalls), bevor die im Arbeitsspeicher gespeicherten Daten in den Sitzungsspeicher geleert wurden, können Sie den Sitzungsspeicher mit den fehlenden Daten füllen, wenn sie auf den Datenträger geschrieben wurde, in den Sitzungsdateien vor der Beendigung.
Verwenden Sie zum Erneuten Indizieren des Sitzungsspeichers den folgenden Schrägstrichbefehl in einer interaktiven CLI-Sitzung:
/chronicle reindex
/chronicle reindex