Sitzungswissensdatenbank
Diese Seite behandelt die Bereiche „Sitzungswissensdatenbank“, „Verarbeitungsverlauf“ und „Archivierte Sitzungen“. Das Verwalten, Bearbeiten und Importieren lokaler Markdown-Dateien beschreibt das Kapitel Lokale Wissensbasen.
Die Sitzungswissensdatenbank speichert Wissen, Entscheidungen, Randbedingungen und gewonnene Erfahrungen, gegliedert nach Projekt → Sitzung → Eintrag. Erzeugte Einträge werden eigenständig gespeichert: Sie ändern sich nicht, wenn sich ihre Quellsitzung ändert, und Sie können sie von Hand bearbeiten. Die Sitzungswissensdatenbank gehört zu dem VelaTerm-Backend, mit dem Sie verbunden sind, und wird von allen seinen Projekten und Sitzungen gemeinsam genutzt; wenn Sie sich mit einem anderen Server verbinden, sehen Sie dessen Wissensdatenbank.
Sie ist von der Inhaltssuche über Sitzungen getrennt. Die Sitzungssuche findet Text in den ursprünglichen Gesprächen, während die Wissensdatenbank nur gespeicherte Einträge durchsucht. VelaTerm bereitet Einträge auf, speichert sie und zeigt sie an, wenn Sie es dazu auffordern; neuen Sitzungen fügt es keine Einträge automatisch hinzu.
Eine Sitzung aufbereiten
- Klicken Sie in der Seitenleiste oder auf ihrem Tab mit der rechten Maustaste auf eine Sitzung und wählen Sie „Für die Sitzungswissensdatenbank aufbereiten“. Dieselbe Aktion steht auch für archivierte Sitzungen zur Verfügung.
- Wählen Sie unter „Agent“ Claude, Codex, Grok Build, OpenCode, Pi oder OMP. VelaTerm verwendet den unter Einstellungen ▸ Agenten festgelegten Pfad zur ausführbaren Datei oder sucht das Programm im PATH. Ein Agent, der nicht gefunden wird, erscheint als „Nicht installiert oder konfiguriert“ und kann nicht ausgewählt werden.
- Wählen Sie optional unter „Modell (optional)“ ein Modell und einen „Denkaufwand“. „Standardmodell“ und „Agent-Standard“ überlassen die Wahl der Konfiguration des Agenten. Die Modellliste ist dieselbe wie beim Erstellen einer Sitzung, und Stufen für den Denkaufwand erscheinen nur bei Modellen, die sie anbieten. VelaTerm merkt sich den zuletzt verwendeten Agenten, das Modell und den Denkaufwand. Der Agent muss angemeldet sein und Zugriff auf das gewählte Modell haben.
- Klicken Sie auf „Aufbereiten und speichern“. Der ausgewählte Agent erhält den Text der Sitzung und verarbeitet ihn mit seiner eigenen Modellkonfiguration.
- Verfolgen Sie den Auftrag unter „Verarbeitungsverlauf“. Das Schließen des Dialogs hält den Auftrag nicht an.
VelaTerm liest den gespeicherten Gesprächsverlauf des Agenten, sofern einer vorhanden ist. Andernfalls verwendet es die Terminalaufzeichnung der Sitzung (siehe Verwendung des Terminals) ohne Terminal-Steuerzeichen. Lässt sich keines von beiden lesen, meldet es „Für diese Sitzung ist keine lesbare Unterhaltung verfügbar.“ Eine Terminalaufzeichnung enthält den sichtbaren Bildschirmtext und kann neu gezeichnete Inhalte enthalten; der aufbereitende Agent sollte eine solche Ausgabe daher nicht als gesicherte Tatsache behandeln.
Ein gespeicherter Quellstand enthält den Text, der für die Aufbereitung gelesen wurde. Projekt- und Sitzungsnamen werden gespeichert, wenn eine Sitzung zum ersten Mal hinzugefügt wird, und nicht aktualisiert, wenn das Projekt oder die Sitzung später an anderer Stelle umbenannt, verschoben, archiviert oder gelöscht wird.
Beim erneuten Aufbereiten wird die Sitzung neu gelesen, und die zuvor aus ihr erzeugten Einträge werden ersetzt, einschließlich Ihrer manuellen Änderungen; das geschieht auch dann, wenn Text und Modelleinstellungen unverändert sind. Hat die Sitzung bereits einen unfertigen Auftrag, ersetzt der neue Auftrag diesen. Läuft der alte Auftrag bereits, startet der neue automatisch, sobald der alte Prozess beendet ist („Dieser Auftrag startet automatisch, sobald der vorherige Auftrag für diese Sitzung beendet wurde.“); der alte Auftrag bleibt im Verlauf.
So funktioniert die Aufbereitung
Die Aufbereitung verläuft in drei Phasen, die als Fortschritt des Auftrags angezeigt werden:
- Themen werden extrahiert: Die Sitzung wird abschnittsweise gelesen, und wiederverwendbares Wissen wird extrahiert. Themen werden nur innerhalb dieses Auftrags zusammengeführt; Einträge anderer Sitzungen und frühere manuelle Änderungen werden nicht herangezogen.
- Wissen wird zusammengeführt: Die Beiträge zu jedem Thema werden zusammengefasst, wobei Wissen, Randbedingungen und Unsicherheiten erhalten bleiben. Der Agent ist angewiesen, spätere Korrekturen und Widersprüche zu berücksichtigen und keine Schlussfolgerungen zu erfinden.
- Einträge werden gespeichert: VelaTerm prüft Felder, Quellen, Verknüpfungen und Versionen und ersetzt die erzeugten Einträge der Sitzung in einer einzigen Datenbanktransaktion. Ein Eintrag mit gleichem Titel behält seine Identität und erhält eine neue Version. Einträge, die nicht mehr erzeugt werden, werden samt ihrem Versionsverlauf gelöscht, und Verknüpfungen, die auf sie verweisen, werden entfernt. Ist die Aufbereitung erfolgreich, findet aber nichts Wiederverwendbares, werden die alten erzeugten Einträge der Sitzung entfernt („Es wurden keine wiederverwendbaren Erkenntnisse extrahiert. Die zuvor erzeugten Einträge dieser Sitzung wurden entfernt.“). Bei einer fehlgeschlagenen Prüfung, einem Abbruch oder einem Versionskonflikt bleiben die bisherigen Einträge unverändert, und es wird kein Teilergebnis gespeichert.
Der Agent liefert strukturierte Inhalte zurück, und VelaTerm nimmt alle Änderungen an der Datenbank vor. Einträge verweisen aufeinander, und die Listen „Verweise auf diesen Eintrag“ werden automatisch berechnet. Gespeicherte Quellstände und Versionsverlauf bleiben verfügbar, auch wenn die ursprüngliche Sitzung gelöscht wird.
Die Qualität des aufbereiteten Wissens müssen Sie weiterhin selbst beurteilen. Ist etwas falsch, bearbeiten Sie den Eintrag oder stellen Sie eine frühere Version wieder her; das Wiederherstellen erzeugt eine neue Version und behält die ersetzte Fassung.
Verarbeitungsverlauf
„Verarbeitungsverlauf“ listet die Aufbereitungsaufträge auf, 40 pro Seite. Jeder Auftrag zeigt den Agenten, das Modell („Standardmodell“, wenn keines gewählt wurde), den Denkaufwand und die Uhrzeit; ein laufender Auftrag zeigt außerdem seine aktuelle Phase („Themen werden extrahiert“, „Wissen wird zusammengeführt“ oder „Einträge werden gespeichert“). Der Status eines Auftrags lautet „Wartet auf den Start“, „In Bearbeitung“, „Wird abgebrochen“, „Abgeschlossen“, „Fehlgeschlagen“ oder „Abgebrochen“, und sein „Gespeicherter Quellstand“ sowie die daraus entstandenen Einträge lassen sich aus der Liste öffnen.
- „Abbrechen“ stoppt einen wartenden oder laufenden Auftrag. Ein laufender Auftrag zeigt „Wird abgebrochen“, bis der Agentenprozess beendet ist. Ein Abbruch löscht den gespeicherten Quellstand nicht.
- „Erneut versuchen“ startet einen fehlgeschlagenen oder abgebrochenen Auftrag mit demselben Quellstand, demselben Modell und demselben Denkaufwand neu. Der Verlauf zeigt die Einstellungen, mit denen der Auftrag erstellt wurde; eine Standardauswahl bedeutet, dass der Agent entschieden hat, und nicht, dass VelaTerm ein bestimmtes Modell ermittelt hat.
Verschiedene Sitzungen lassen sich parallel aufbereiten. Pro Sitzung läuft jeweils ein Auftrag; wird eine Sitzung erneut eingereicht, bleibt nur der neueste wartende Auftrag erhalten, statt dass sich eine Warteschlange bildet. Wartende Aufträge werden in der Datenbank gespeichert und nach einem Neustart der App fortgesetzt. Ein laufender Auftrag, der zwei Minuten lang keinen Fortschritt gemeldet hat, wird als unterbrochen markiert („Die Verarbeitung wurde unterbrochen. Sie können sie mit dem gespeicherten Quellstand erneut starten.“). Wartezeit wird nicht auf das Zeitlimit des Auftrags angerechnet.
Sie können Einträge bearbeiten, während eine Aufbereitung läuft. Bearbeitet oder löscht jemand während eines Auftrags die erzeugten Einträge der Sitzung, meldet der Auftrag einen Versionskonflikt; Ihre Änderungen bleiben erhalten, und Sie können den Auftrag danach erneut starten. Verschiedene Sitzungen dürfen denselben Eintragstitel verwenden; innerhalb einer Sitzung müssen Titel eindeutig sein.
Einträge anzeigen und pflegen
Öffnen Sie die Wissensdatenbank über das rechte Panel (siehe Lokale Wissensbasen) und klappen Sie die „Sitzungswissensdatenbank“ nach Projekt, Sitzung und Eintrag auf. Ein Klick auf ein Projekt oder eine Sitzung listet deren Einträge auf, ein Klick auf einen Eintrag öffnet ihn zum Lesen. Die Schaltfläche „Eine Ebene nach oben“ führt zur übergeordneten Seite zurück.
- Die Listenseite bietet eine Suche („Titel und Inhalte durchsuchen…“), einen Tag-Filter („Alle Tags“), eine Sortierung nach „Zuletzt aktualisiert“ oder „Titel“ sowie eine Aktualisierung. Die Suche umfasst Titel, Zusammenfassungen, Haupttexte und Tags, unterstützt mehrere Suchwörter (alle müssen vorkommen) und stellt Treffer im Titel an den Anfang; jedes Ergebnis listet außerdem seine direkt verwandten Einträge auf. Gibt es keine exakten Treffer, werden wie bei der Suche in lokalen Wissensbasen ungefähre Treffer angezeigt.
- Die Einträge einer Sitzung werden zu je 40 pro Seite angezeigt; Projekt- und Sitzungslisten werden durch diese Grenze nicht gekürzt, und lange Listen im Baum bieten „Mehr laden“.
- Eine Eintragsseite zeigt den Markdown-Text, „Verwandte Einträge“, „Verweise auf diesen Eintrag“, „Quellen“ und „Versionsverlauf“. Sie können den Text direkt bearbeiten und mit ⌘S / Ctrl+S speichern, Titel, Zusammenfassung und Tags über „Bearbeiten“ ändern oder „Markdown exportieren“, „In ein lokales Notizbuch kopieren“ und „Löschen“ verwenden. Das Löschen eines Eintrags löscht auch seinen Versionsverlauf, behält aber die Quellsitzung und ihre gespeicherten Quellstände.
- „Neuer Eintrag“ erstellt einen Eintrag von Hand; solche Einträge erscheinen in der Gruppe „Manuell erstellt“.
Der Baum bietet außerdem Verwaltungsaktionen:
- Klicken Sie mit der rechten Maustaste auf einen Eintrag, um ihn umzubenennen oder zu löschen; ziehen Sie ihn auf eine andere Sitzung, um ihn dieser Sitzung zuzuordnen.
- Klicken Sie mit der rechten Maustaste auf eine Projekt- oder Sitzungsgruppe, um sie umzubenennen oder ihre Einträge zu löschen. Das Umbenennen einer Gruppe benennt auch das tatsächliche Projekt bzw. die tatsächliche Sitzung um. Das Löschen einer Gruppe entfernt nur ihre Wissenseinträge: „Alle N Wissenseinträge dieser Gruppe löschen? Das Projekt bzw. die Sitzung selbst bleibt erhalten.“
- Wenn Sie eine Sitzung auf ein anderes Projekt ziehen, wird die tatsächliche Sitzung in dieses Projekt verschoben.
- Die Gruppen „Manuell erstellt“, „Früher zusammengeführte Einträge“ und „Quellprojekt unbekannt“ lassen sich nicht umbenennen.
Eintragsseiten, Bearbeitungsformulare, gespeicherte Quellstände, Versionen, der Dialog zum Aufbereiten und der Verarbeitungsverlauf haben jeweils eigene URLs, und ausgewähltes Projekt, ausgewählte Sitzung, Suche, Filter, Sortierung und Seite sind Teil der URL.
Archivierte Sitzungen
Archivierte Sitzungen werden in der Wissensdatenbank verwaltet. „Archivierte Sitzungen“ erscheint im Baum der Wissensdatenbank neben der „Sitzungswissensdatenbank“ und gruppiert archivierte Sitzungen nach ihrem Herkunftsprojekt; die Schaltfläche „Archivierte Sitzungen“ im Kopfbereich der Seitenleiste öffnet dieselbe Stelle.
- Der Hauptbereich listet alle archivierten Sitzungen nach Projekt auf. Eine geöffnete Sitzung hat zwei Tabs: „Konversation“ zeigt das vollständige Gespräch, und „Wissenseinträge“ zeigt die daraus erzeugten Einträge.
- „Archivierte Inhalte durchsuchen…“ durchsucht nur den Volltext archivierter Sitzungen und gruppiert die Treffer nach Sitzung.
- Eine geöffnete archivierte Sitzung bietet „Als normale Sitzung wiederherstellen“, „Für die Sitzungswissensdatenbank aufbereiten“, „Vollständigen Kontext als Markdown exportieren“ (bei Sitzungen mit Claude und Codex) und „Endgültig löschen (samt Aufzeichnung)“. Das endgültige Löschen wird sofort und ohne Bestätigungsschritt ausgeführt.
- Archivieren, Wiederherstellen und Löschen einer Sitzung ändern vorhandene Wissenseinträge nicht, da Einträge und gespeicherte Quellstände getrennt gespeichert werden. Eine wiederhergestellte Sitzung kann ihr Gespräch fortsetzen.
Daten aus früheren Versionen
Beim Aktualisieren älterer Daten hat VelaTerm Einträge mit einer einzigen Quellsitzung dieser Sitzung zugeordnet. Einträge, die bereits mehrere Sitzungen zusammengefasst hatten, blieben unverändert in der Gruppe „Früher zusammengeführte Einträge“ erhalten; sie werden nicht aufgeteilt und nie durch erneutes Aufbereiten einer dieser Sitzungen ersetzt. Einträge ohne Quelle kamen in die Gruppe „Manuell erstellt“. Noch vorhandene Projektinformationen wurden während der Aktualisierung einmalig ergänzt; Quellen, deren Projekt nicht ermittelt werden konnte, erscheinen unter „Quellprojekt unbekannt“ mit ihren ursprünglichen Sitzungsnamen und gespeicherten Quellständen.
Daten und Grenzen
Die Sitzungswissensdatenbank wird in der SQLite-Datenbank der Anwendung gespeichert (Tabellen memory_*), getrennt vom Suchindex für Sitzungen. Die Oberfläche hält nur, was sie anzeigt, und nicht gespeicherte Formulareingaben; Validierung, Versionsprüfungen, Duplikaterkennung und alle Schreibvorgänge finden im Backend statt.
- Eine Quelle kann bis zu 2.000.000 Zeichen umfassen, jeder Extraktionsabschnitt bis zu 24.000 Zeichen, eine einzelne Modelleingabe bis zu 350.000 Zeichen und ein einzelner Eintragstext bis zu 200.000 Zeichen.
- Jeder Agentenaufruf darf bis zu 10 Minuten laufen, und jeder seiner Ausgabeströme darf bis zu 8 MiB erzeugen.
- Bei OpenCode, Pi und OMP ist der in einem Aufruf übergebene Text auf 128 KiB begrenzt.
- Liefert ein Agent eine Ausgabe, die nicht der erwarteten Struktur entspricht, fordert VelaTerm sie bis zu dreimal erneut an.
Alles, was diese Grenzen überschreitet, schlägt mit einer eindeutigen Meldung fehl („Quelle, Kontext oder Ausgabe überschreitet die unterstützte Größe. Nichts wurde gekürzt oder gespeichert.“); es wird nichts gekürzt und gespeichert.
Die Aufbereitung wird in logs/runtime-*.log im Datenverzeichnis der Anwendung protokolliert. Ist VLX_LOG_DIR nicht gesetzt, legt VLX_MEMORY_LOG_DIR das Verzeichnis fest. VLX_MEMORY_LOG_LEVEL=error protokolliert nur Fehler, und off schaltet das Protokoll dieses Moduls ab. Das Protokoll erfasst Aufträge und Phasen, die Anzahl der Ein- und Ausgaben, Laufzeiten, Zeichenzahlen, SHA-256-Hashwerte und Angaben zum Tokenverbrauch. Vollständige Prompts, Quellmaterial, Modellantworten, Zugangsdaten oder Fehlerausgaben werden nie protokolliert; das Originalmaterial befindet sich in den gespeicherten Quellständen.
Verknüpfungen mit dem Codegraph
Wissenseinträge lassen sich mit Code-Symbolen verknüpfen, und „Codeverweise“ auf einer Eintragsseite führt zum Codegraph. Ändert sich die verknüpfte Datei, zeigt der Eintrag an, dass er geprüft werden muss; das Bestätigen der Prüfung ändert den Text des Eintrags nicht. Agenten in einer Sitzung können Code und Einträge mit vkb abfragen. Siehe Codegraph und Wissensdatenbank.