EN

Konfigurationsdateien

KorTTY speichert alle Anwendungsdaten und Konfigurationen im Verzeichnis ~/.kortty/ in Ihrem Home-Ordner. Diese Anleitung dokumentiert jede Datei und jedes Unterverzeichnis, ihren Zweck und ihre Verwendung.

Verzeichnisstruktur

~/.kortty/
├── connections.xml                    # Saved SSH connections
├── credentials.xml                    # Stored credentials (encrypted)
├── environments.xml                   # Your own credential environments and environment tab colors
├── ssh-keys.xml                       # SSH key management
├── gpg-keys.xml                       # GPG keys for backup encryption
├── global-settings.xml                # Global application settings
├── llm/
│   ├── models.xml                     # Local GGUF registrations/settings
│   ├── models/                        # Managed GGUF weights
│   ├── runtime/                       # Versioned llama.cpp packages, activation and revocation state
│   ├── catalog/                       # Verified model/prompt catalog cache
│   ├── mlx/                           # MLX runtime, models and temporary run state
│   ├── mlx-models.json                # MLX model registrations
│   ├── huggingface-token.enc          # Optional Hugging Face token, encrypted with the master password
│   └── run/                           # Temporary sidecar state
├── rag/
│   ├── stores.json                    # Knowledge stores and source configuration
│   └── stores/                        # Local HNSW snapshots
├── ai-chats.xml                       # Saved AI conversations
├── memory/                            # AI memory: MEMORY.md, connection notes, history and state (owner-only; see below)
├── stats/                             # AI skill usage statistics (owner-only; see below)
├── snippets.xml                       # Code snippets and scripts
├── snippet-variables.xml              # Snippet variable storage
├── snippet-analyses/                  # Stored Full code analyses, one <snippet-id>.json per snippet
├── snippet-drafts/                    # Unsaved snippet-editor forms (owner-only; not backed up)
├── job-scheduler.xml                  # JobScheduler jobs, host-key pins, sudo secrets, journal
├── ssh-host-keys.properties           # Interactive Terminal/SFTP/Mosh host-key pins
├── ssh-host-keys.properties.lock      # Transient cross-process writer lock (not backed up)
├── ssh-tunnel-approvals.properties    # SSH tunnel sets you allowed to open, per connection (not backed up)
├── master.key                         # Hashed master password (PBKDF2)
├── master.autounlock                  # Optional auto-login password (owner-only; not encrypted with the master password)
├── themes.xml                         # Your terminal themes (color profiles)
├── swarm-chats.xml                    # Saved AI Swarm conversations
├── journal-search-visited.xml         # Journal search hits you have already opened
├── sftp-resume-index.json             # Unfinished SFTP transfers that a retry can continue (not backed up)
├── jvm-launch.properties              # JVM resource profile (Settings → Resources)
├── teamwork-cache.xml                 # Cached connections of teamwork sources
├── teamwork-recycle-bin.xml           # Teamwork connections you deleted locally
├── teamwork-repos/                    # Local clones of Git-based teamwork sources
├── telemetry-spool.json               # Anonymous usage events waiting to be sent (see Anonymous data)
├── telemetry-run.marker               # Present while korTTY runs; a leftover marker marks an unclean exit
├── terminal-effect-plugins.disabled   # Disabled terminal-effect plugin IDs
├── coding-agents/                     # User overrides for coding-agent detection rules
├── control/                           # Control API endpoint (owner-only 0700; only while enabled)
│   ├── control.sock                   # Unix socket (Linux/macOS); absent on Windows
│   └── endpoint.json                  # Transport, port and access token (0600); deleted on exit
├── logs/                              # Application log (kortty.log) and its archives; ai-answers/ keeps unusable AI answers
├── history/                           # Terminal session history (compressed)
├── journals/                          # Session journals (one directory per journal)
├── terminal-logs/                     # Default folder for per-connection terminal logs
├── recordings/                        # Default folder for terminal recordings (Video Manager)
├── mosh4j/                            # Downloaded mosh4j release and its dependency JARs for built-in Mosh
├── guide/                             # Generated translations of the manual and their translation memory
├── shell-integration/                 # Wrapper folders of local shells (left-behind folders are removed after a day)
├── plugins/                           # Imported terminal-effect plugin JARs
├── bundled-plugins/                   # Runtime copies of bundled exportable plugins
├── projects/                          # Project files (.kortty)
├── session/                           # Session snapshots for Restore Previous Session (owner-only; not backed up)
├── i18n/                              # Generated language files (messages_*.properties)
└── ssh-keys/                          # Optional copied SSH keys (included in backups)

Core-Konfigurationsdateien

connections.xml

Enthält alle gespeicherten SSH-Verbindungen mit ihren Einstellungen.

Beinhaltet: - Verbindungsname, Host, Port, Benutzername - Authentifizierungsmethode (Passwort, SSH-Schlüssel, temporärer SSH-Schlüssel) - Überschreibungen des Terminal-Erscheinungsbilds (Schriftart, Farben, Größe) - SSH-Tunnel und Jump-Server-Konfiguration - Optionale Außerkraftsetzung der SSH-Hostschlüsselüberprüfung pro Verbindung (überprüfen, nicht überprüfen oder erben) - Optionale Zeichencodierung pro Verbindung (encoding; fehlt bedeutet die Vorgabe — siehe Terminal → Kodierung) - Terminaleffekt-Plugins und Animationsgeschwindigkeit - Verbindungsspezifische Terminalprotokollierungseinstellungen - Einstellungen für das Sitzungsjournal pro Verbindung (aktivieren, typisierte Eingaben erfassen, KI-Zusammenfassungen, Zusammenfassungsintervall) - Einstellungen für Fenstergeometrie - Gruppen-/Ordnerorganisation - Optionaler Freitext-Tag (wird für Suche, Massen-Tagging und Tag-basierten Export verwendet) - Optionales OS-Symbol (osBadge): die ID eines eingebauten Symbols wie redhat oder windows-11, oder custom:<id> für eines Ihrer eigenen (siehe OS-Symbole) - Verbindungen pro Tag der letzten 30 Tage (usageHistory, yyyy-MM-dd=count Einträge), dargestellt als Nutzungsbalken des Inspektors des Connection-Manager; nie exportiert - Optionaler Regelsatz für die Hervorhebung von Schlüsselwörtern (highlightRuleSetId): die ID eines mitgelieferten oder eigenen Regelsatzes, none für keine Hervorhebung oder nicht vorhanden, um dem Standard-Regelsatz zu folgen (siehe Regelsatz pro Verbindung). Verbindungen aus einer Teamarbeit-Datei können ihn ebenfalls enthalten; die ID eines Regelsatzes, der auf Ihrem Computer nicht existiert, wird ignoriert. - Optionaler Einfügeschutz, der Einstellungen → Terminal → Einfügeschutz für diese Verbindung überschreibt: pasteWarningMode (off, unless-bracketed oder always) und pasteLineDelayMs (0 bis 1000; 0 fügt sofort ein). Fehlt ein Wert, gilt die globale Einstellung, und ein unbekannter Warnmodus zählt als fehlend (siehe Einfügeschutz). Verbindungen aus einer Teamarbeit-Datei können beide Werte enthalten, ihr Warnmodus gilt aber nur, wenn er häufiger nachfragt als Ihre eigene Einstellung. - Optionale Tab-Farbe (tabColor, #RRGGBB), die die Terminal-Tabs der Verbindung mit einem farbigen Punkt markiert; alles, was keine Hex-Farbe ist, wird ignoriert (siehe Tab-Farbe). Verbindungen aus einer Teamarbeit-Datei können sie ebenfalls enthalten, sodass derjenige, der die Datei pflegt, entscheidet, wie diese Tabs markiert werden.

Sicherheit: Verbindungspasswörter werden mit AES-256-GCM unter Verwendung des Master-Passworts verschlüsselt.

Note

Wenn ein Verbindungskennwort verschlüsselt ist, wird es in einem Hash-/verschlüsselten Format gespeichert und kann nicht als Klartext angezeigt werden. Wenn Sie eine gespeicherte Verbindung öffnen, wird das Passwort automatisch mit Ihrem Master-Passwort entschlüsselt.

credentials.xml

Zentralisierte Speicherung von Anmeldeinformationen für Benutzername/Passwort-Paare.

Beinhaltet: - Anmeldename, Benutzername, Passwort - Umgebung (Produktion, Entwicklung, Test, Staging oder eine eigene aus environments.xml) - Server-Muster (Glob-Muster wie *.example.com oder 10.0.0.*) - Automatische Zuweisung zu Verbindungen, die dem Muster entsprechen

Sicherheit: Alle Passwörter werden mit AES-256-GCM verschlüsselt.

environments.xml

Ihre eigenen Anmeldeumgebungen und die Tab-Farben aller Umgebungen (siehe Umgebungen und Tab-Farben).

Beinhaltet: - Eigene Umgebungen mit ihrer ID und ihrem Anzeigenamen (<environment id="custom-…" displayName="Lab"/>); die integrierten Umgebungen Produktion, Entwicklung, Test und Staging werden nicht gespeichert - Optionale Tab-Farben integrierter und eigener Umgebungen (<colors><color id="PRODUCTION" color="#D32F2F"/></colors>); ein Wert, der keine Hex-Farbe ist, oder die Farbe einer Umgebung, die es nicht mehr gibt, wird ignoriert

Eine Datei ohne Farben, wie frühere Versionen sie geschrieben haben, wird unverändert geladen. Ohne die Datei kennt korTTY nur die integrierten Umgebungen, und keine Umgebung hat eine Farbe.

ssh-keys.xml

Verwaltet die zentrale SSH-Schlüsselspeicherung.

Beinhaltet: - SSH-Schlüsselpfad - Schlüsselpassphrase (wenn der Schlüssel geschützt ist) - Optionale Beschreibung - Schlüssel-Fingerabdruck

Sicherheit: Schlüsselpassphrasen werden mit AES-256-GCM unter Verwendung des Master-Passworts verschlüsselt.

Tip

SSH-Schlüssel, auf die in dieser Datei verwiesen wird, können an ihrem ursprünglichen Speicherort aufbewahrt oder über die Aktion In Benutzerverzeichnis kopieren in der SSH-Schlüsselverwaltung nach ~/.kortty/ssh-keys/ kopiert werden. Kopierte Schlüssel sind in verschlüsselten Backups enthalten; Schlüssel, die an ihren ursprünglichen Speicherorten verbleiben, werden nur referenziert und müssen separat migriert werden.

ssh-host-keys.properties

Der versionierte Trust-on-First-Use-Speicher für interaktive Terminal- und SFTP-Verbindungen sowie das SSH-Bootstrap, das von Mosh verwendet wird. Die Einträge sind nach normalisiertem Hostnamen und Port indexiert und enthalten den Public-Key-Algorithmus, den OpenSSH-SHA-256-Fingerabdruck, die OpenSSH-Public-Key-Zeile und den Trust-Zeitstempel. Ein passender Schlüssel wird nach der Bestätigung bei der ersten Verwendung stillschweigend akzeptiert; ein geänderter Schlüssel wird hart blockiert und nicht automatisch ersetzt. Einträge werden über Prüfen und ersetzen… in der Warnung zum geänderten Schlüssel ersetzt und unter Konfiguration → Sicherheit → Bekannte Hosts… entfernt; das Entfernen des letzten Eintrags löscht die Datei, was als leerer Wissensspeicher gilt. Wenn die Host-Key-Verifikation auf "accept-new" für eine Verbindung gelockert wird, wird ein unbekannter Schlüssel ohne Bestätigungsprompt festgehalten – ein geänderter Schlüssel wird in beiden Modi weiterhin abgelehnt.

Schreibvorgänge verwenden eine temporäre Datei plus atomare Ersetzung, während ssh-host-keys.properties.lock separate korTTY-Prozesse koordiniert, sodass ihre Pins sicher zusammengeführt werden. Die Eigenschaftendatei ist in verschlüsselten Backups enthalten; die vorübergehende Sperrdatei ist es nicht. Dieser endpunktbasierte Speicher ist von den JobScheduler-Hostschlüssel-Pins in job-scheduler.xml getrennt, die für unbeaufsichtigte Vorgänge nach Verbindungs-ID kodiert sind.

ssh-tunnel-approvals.properties

Erinnert sich daran, welche SSH-Tunnel korTTY öffnen darf: ein Eintrag pro Verbindungs-ID mit einem SHA-256-Fingerabdruck des Servers, ob die Verbindung Ihre eigene oder geteilt (Teamwork) ist und welche Tunnel aktiviert sind. Wenn sich bei einer Verbindung die Tunnel oder der Server ändern, stimmt der Fingerabdruck nicht mehr überein und korTTY fragt erneut, bevor sie geöffnet werden. Die Datei ist kein Teil eines Backups, daher wird eine wiederhergestellte oder migrierte Konfiguration erneut gefragt; das Löschen hat denselben Effekt.

gpg-keys.xml

Speichert GPG-Schlüsselinformationen für die Backup-Verschlüsselung.

Beinhaltet: - GPG-Schlüssel-ID - Schlüssel-E-Mail-Adresse - Optionaler Fingerabdruck - Importquelle (Systemschlüsselbund oder manuelle Eingabe)

global-settings.xml

Globale Anwendungseinstellungen und Standardeinstellungen.

Enthält: alle Einstellungen des Dialogs Globale Einstellungen, unten gruppiert nach dem Bereich, zu dem sie gehören.

Aussehen und Schriftarten

  • UI-Design- und Darstellungseinstellungen
  • Schriftfamilie und Standardgröße
  • UI-Schriftgröße (Prozent, 80–160 % oder automatisch von der Bildschirmauflösung abgeleitet) und die separate Textgröße der Anleitungs (70–250 %)
  • Terminal-Farbkonfiguration

Fenster, Menüs und Bedienfelder

  • Geometrie und Status des Hauptfensters (Position, Größe, maximierter Status) sowie ein benannter Geometrieeintrag für jeden Anwendungsdialog, dessen Größe vom Benutzer geändert werden kann
  • Präferenz für die Sichtbarkeit der Menüleiste
  • Dashboard-Sichtbarkeitsstatus
  • Flag „Toolfenster als Registerkarten öffnen“.
  • connectionColorBorderEnabled: ob das Terminal einer Verbindung mit einer Tab-Farbe einen Rahmen in dieser Farbe erhält und ein geteilter Bereich einer Verbindung mit einer anderen Farbe einen eigenen Rahmen (standardmäßig eingeschaltet)
  • splitPaneFocusRingEnabled: ob das Pane, in dem die Tastatur ist, einen Fokusring erhält, während ein Tab zwei oder mehr geteilte Panes hat (standardmäßig eingeschaltet)
  • connectionGroupColors: die Tab-Farben der Connection-Manager-Ordner, ein Eintrag <group path="Work/Production" color="#D32F2F"/> pro Ordner mit eigener Farbe; ein Eintrag, dessen Farbe keine Hex-Farbe ist, wird ignoriert, und ohne das Element hat kein Ordner eine Farbe
  • customOsBadges: Ihre eigenen OS-Symbole, je ein <badge id="…" name="…" file="….png"/> Eintrag; die Bilder befinden sich im os-badges-Ordner des Konfigurationsverzeichnisses
  • favoriteConnections: die IDs der Verbindungen, die als Favoriten im Connection-Manager markiert sind, jeweils ein <connection> Eintrag; Teamwork-Verbindungen können ebenfalls Favoriten sein
  • tabTitleFromShellEnabled: ob ein Terminal-Tab statt des Verbindungsnamens den Titel anzeigt, den seine Shell setzt (standardmäßig aktiviert)
  • tabSwitchMostRecentFirst: ob Ctrl+Tab die Tabs in der Reihenfolge ihrer letzten Nutzung wechselt statt in ihrer Reihenfolge in der Tab-Leiste (standardmäßig aus)
  • recentProjectPaths: die absoluten Pfade der Projektdateien, die Sie zuletzt geöffnet oder gespeichert haben, die neueste zuerst, höchstens 10, die Datei → Zuletzt verwendet auflistet; openRecentClearedAt: wann Sie dort zuletzt Liste leeren gewählt haben (Millisekunden seit 1970, 0 für nie)
  • sessionRestoreMode: was korTTY beim Start mit der vorherigen Sitzung macht: ask bietet sie in einer Leiste an (der Standard, auch bei fehlendem oder unbekanntem Wert), auto stellt sie wieder her, sobald kein Dialog offen ist, off tut nichts
  • sessionRestoreScrollback: ob eine wiederhergestellte Sitzung auch die gespeicherte Ausgabe jedes Terminalbereichs anzeigt (standardmäßig aus); sessionRestoreScrollbackLines: wie viele Ausgabezeilen pro Bereich behalten werden, 100 bis 5000 (1000, wenn der Wert fehlt)
  • keyBindingOverrides: Ihre eigenen Tastaturkürzel, ein binding-Eintrag pro geändertem Befehl, z. B. menu.view.commandPalette=Shortcut+Alt+P oder menu.view.dashboard=none; ohne diesen Eintrag behält jeder Befehl sein Standardkürzel
  • Angedocktes Live-Sitzungsjournal-Panel: Platzierung (versteckt/links/rechts) und Breite
  • Coding-Agents-Panel: codingAgentPanelPlacement (versteckt, links oder rechts), codingAgentPanelSide (Die Seite, auf der es zuletzt angedockt war, wird beibehalten, solange es verborgen ist) codingAgentPanelWidth, und codingAgentPanelAutoVisibility (anzeigen und verbergen mit Agentenerkennung, standardmäßig eingeschaltet)
  • Icon-Leiste: das iconToolbar Element mit der Sichtbarkeit der Aktionzeile (visible Attribut) und der Verbindungzeile (connectionsVisible) und ein entry per Knopf mit id, kind (ACTION, CONNECTION, GROUP oder SEPARATOR), section (TERMINAL, TOOLS, SETTINGS oder CONNECTIONS) und target (Ein Aktionen-Id, eine Verbindung-Id oder ein Gruppenpfad). Einträge enthalten nur Referenzen, niemals Passwörter oder Schlüssel; ohne das Element wird das Standardlayout verwendet. Der logfileManagerMigrated Attribut speichert die einmalige Hinzufügung des Logdatei-Managers zu älteren Layouts, behält bestehende Einträge bei und ermöglicht eine spätere Anpassung zur Entfernung; das Attribut connectionManagerMigrated leistet dasselbe für die Schaltfläche des Connection-Managers.
  • windowsShellsMigrated (ein Attribut von iconToolbar): zeichnet die einmalige Hinzufügung der PowerShell- und Eingabeaufforderungs-Schaltflächen auf Windows; auf anderen Systemen bleibt es false, bis das Layout unter Windows geladen wird.
  • toolbarIconSize: die Symbolgröße sowohl der beiden Toolbar-Reihen als auch des Anpassungskatalogs, 16 bis 64 Pixel (24 bei fehlenden Symbolen)
  • JobScheduler-Statusanzeigeeinstellung
  • Letzte Vorschau-Zoomstufe des ASCII-Art-Dialogfelds
  • Letzte ASCII-Art-Bildgröße (Klein bis Extragroß) für die Registerkarte „KI-Bild“ und separat für die Registerkarte „Bilddatei“.
  • Letztes ASCII-Art-Kopierformat: Kommentarstil, Ausgabecodestil und Lücke

Terminal und Anschlüsse

  • Standard-Kodierung des Terminals für SSH-Verbindungen, und terminalEncodingConfirmed, das protokolliert, dass ein von einer älteren Version gespeicherter Wert erneut gespeichert und angewendet wurde (siehe Terminal → Kodierung)
  • Standardeinstellungen für die Terminalprotokollierung
  • Standardeinstellungen für das Terminaleffekt-Plugin
  • SSH Keep-Alive-Einstellungen
  • Verbindungszeitlimit und Standardwerte für Wiederholungsversuche

Hervorhebung von Schlüsselwörtern

  • Der Hauptschalter (terminalHighlightingEnabled), die Hervorhebung in Vollbildprogrammen (terminalHighlightAlternateScreen), der Standard-Regelsatz (defaultHighlightRuleSetId, die ID eines mitgelieferten oder eigenen Regelsatzes; leer bedeutet keiner) und ob Regeln mit einer Aktion benachrichtigen oder ihr Snippet ausführen dürfen (terminalTriggersEnabled)
  • Ihre eigenen Regelsätze (highlightRuleSets), wie sie im Regelsatz-Editor bearbeitet werden: Jeder Regelsatz hat eine stabile ID, einen Namen und seine Regeln in Prioritätsreihenfolge, und jede Regel hat ihre ID, ob sie eingeschaltet ist, das Muster, ob es ein regulärer Ausdruck ist, Groß-/Kleinschreibung ignorieren, ganzes Wort, ob sie den Treffer oder die ganze Zeile färbt, die Text- und Hintergrundfarbe (#RRGGBB, eine Themenfarbe von ansi:0 bis ansi:15 oder leer, um die Farbe des Programms beizubehalten), fett, kursiv und unterstrichen sowie ihre Aktion (NONE, NOTIFY oder RUN_SNIPPET), ihren optionalen Namen, ob eine Benachrichtigung den gefundenen Text enthält, und die ID des Snippets, das sie ausführt (snippetId; siehe Benachrichtigungen bei passender Ausgabe und Ein Snippet ausführen, wenn die Ausgabe passt). Für welche Verbindungen Sie das Snippet einer Regel erlaubt haben, wird nicht gespeichert: korTTY fragt nach einem Neustart erneut
  • Die mitgelieferten Regelsätze werden nicht gespeichert: Sie werden mit korTTY ausgeliefert, sodass eine neue Version sie verbessern kann, und ihre IDs beginnen mit builtin., was Ihre eigenen Regelsätze nicht verwenden können

AI, Modelle und Wissensspeicher

  • KI-Profilstandards, Text-/Coding-Rollenzuweisungen, eingebettete GGUF-Referenzen, Eingabeaufforderungsvoreinstellungen und Wissensspeicherzuordnungen
  • RAG-Einbettungsmodell-ID und llama.cpp bevorzugte Laufzeit-Backend-/Update-Richtlinie
  • Der Hugging Face token wird nicht in dieser Datei gespeichert; er bleibt verschlüsselt in llm/huggingface-token.enc
  • Zeitlimit für KI-Anfragen in Minuten (0 = keine Begrenzung)

Sitzungsjournal

  • Speicherordner und Capture-Log-Format
  • KI-Zusammenfassungen (Intervall und Profil) und der Schalter für die KI-Screenshot-Analyse
  • Übersetzungssprache beachten
  • KI-Zeilenfenster und Token-Budget
  • Journal-Seitendarstellung und Höhe des Live-Log-Endes
  • Benutzerdefinierte Markierungen und Markierungsregeln
  • Die gespeicherten Journalfenstergeometrien

Snippets und Übersetzung

  • Standardeinstellungen der Snippet-Eingabe-Härtung (aktiviert, Optionen, maximale Dateigröße)
  • Snippet-Übersetzung Zielsprache
  • Übersetzungs-API-Einstellungen

Export und Aufzeichnung

  • PDF-Exportwasserzeichen (standardmäßig deaktiviert; benutzerdefinierter Text und benutzerdefinierte Farbe)
  • Dokumentexport-Fußzeile (standardmäßig aktiviert; benutzerdefinierter Text)
  • Video-/Aufnahmeeinstellungen

Sicherheit und Backup

  • Master-Passwort-Auto-Login-Flag (skipMasterPasswordPrompt)
  • SSH-Opt-out für die Überprüfung des Hostschlüssels: das globale Flag und die Liste der Verbindungsgruppen, deren Überprüfung auf „Akzeptieren von Neu“ gelockert wird
  • Backup-Verschlüsselungsmethode und Aufbewahrungseinstellungen

llm/models.xml

Die atomar geschriebene JAXB-Registrierung für lokal installierte oder referenzierte GGUF-Modelle.

Enthält:

  • Stabile Modell-ID und Anzeigename
  • GGUF-Pfad und kompatibler llama-server-Ausführungspfad
  • Backend (AUTO, CPU, METAL oder VULKAN)
  • Kontextgröße, CPU-Threads, GPU-Ebenen und Leerlauf-Entlademinuten

Die Registrierung enthält Pfade und Einstellungen, keine Modellgewichtungen oder API-Schlüssel. llm/models/ enthält verwaltete GGUF-Kopien, llm/runtime/ enthält unabhängig aktualisierte native Pakete und llm/run/ enthält temporäre Prozessverzeichnisse, Protokolle und nur vom Eigentümer generierte Schlüsseldateien. Temporäre Schlüssel werden entfernt, wenn der Beiwagen anhält.

llm/runtime/

Der regenerierbare native Laufzeitbereich enthält unveränderliche Paketverzeichnisse sowie kleine atomare Statusdateien:

  • active-v1 zeigt auf die aktuell ausgewählte Installation.
  • pending-first-launch-v1 zeichnet einen Kandidaten und seine Rollback-Basis auf, bis ein echter GGUF-gestützter authentifizierter API-Start erfolgreich ist.
  • healthy-history-v1 behält höchstens die beiden neuesten bestätigten, nicht widerrufenen Installationen.
  • revoked-v1 ist die dauerhafte Denylist, die aus verifizierten signierten Indizes gelernt wurde. Ein widerrufenes Paket enthält auch .kortty-runtime-revoked.
  • blocked-active-v1 merkt sich die Laufzeit-ID, die durch eine Auszahlung aus der aktiven Nutzung entfernt wurde, sodass die Benutzeroberfläche erklären kann, warum die lokale KI blockiert bleibt.
  • pinned-runtime-v1 enthält die Runtime-ID, auf die der Benutzer mit Andere Version… gewechselt hat; solange sie vorhanden ist, behalten Update-Prüfungen diese Version bei. Der MLX-Runtime-Bereich llm/mlx/runtime/ verwendet eine gleichnamige Datei.
  • packages/ enthält extrahierte verifizierte Installationen, während downloads/ ein temporäres Staging ist, das durch die Updater-Sperre geschützt ist.

Bearbeiten oder löschen Sie die Sperrlisten-/Quarantänemarkierungen nicht, um ein Paket erneut zu aktivieren. Laufzeitstarts erzwingen sie unabhängig voneinander, und stattdessen muss ein kompatibler signierter Ersatz installiert werden. Das gesamte Verzeichnis ist von der Sicherung ausgeschlossen, da Pakete und Status aus dem signierten stabilen Kanal neu erstellt werden können.

llm/catalog/last-valid-catalog-v1.json

Ein atomarer Cache-Umschlag, der die letzte Nutzlast des Modell-/Prompt-Katalogs und die zugehörige abgetrennte Signatur enthält. korTTY überprüft die Signatur und das strikte Schema vor jeder Cache-Nutzung erneut. Wenn die Anwendung über kein gültiges öffentliches Vertrauensstammverzeichnis für den Katalog verfügt, wird diese Datei ignoriert und der integrierte Bootstrap wird ohne Netzwerkaktualisierung verwendet. Der Cache ist regenerierbar und wird nicht in Backups einbezogen.

rag/stores.json

Die atomar geschriebene, vom Eigentümer lesbare JSON-Registrierung für Wissensspeicher und deren Quellen.

Enthält:

  • Wissensspeicher-ID/Name/Typ, lokales Snapshot-Verzeichnis oder Qdrant-Endpunkt/Sammlung, Einbettungsmodell-ID und Vektordimensionen
  • Text-, Codierungs- und autonome Nutzungszuweisungen
  • Stabile ID pro Quelle, kanonischer Pfad, Datei-/Verzeichnistyp, aktiviertes Flag, automatischer/manueller Synchronisierungsmodus, Größenbeschränkung, Ein-/Ausschluss von Globs, .gitignore-Präferenz, Inhalts-Hashes, letzter Status, Anzahl der Dateien/Chunks/Probleme und Zeitpunkt der letzten erfolgreichen Indexierung

Das Unterverzeichnis rag/stores/ enthält regenerierbare index.hnsw-Snapshots. Ein v2-Snapshot bettet seine Formatversion, Vektordimensionen, Einbettungsmodell-ID, hierarchische Diagrammparameter, Einstiegspunkt, Chunk-Metadaten, Vektoren, Knotenebenen und Nachbarn pro Ebene ein; Eine Nichtübereinstimmung wird abgelehnt und erfordert einen Neuaufbau. Ein gültiger Single-Layer-V1-Snapshot der Legacy-Version wird beim Öffnen neu erstellt und atomar migriert.

job-scheduler.xml

Alle JobScheduler-Jobs und zugehörige Daten.

Enthält: - Jobname, aktivierter Status, Aktionstyp (COMMAND, SNIPPET_SCRIPT, AI_AGENT, SFTP, RSYNC_SYNC) - Zeitplankonfiguration (Wochentage, Zeiten, Intervalle, Datumsbereiche) - Zielserver oder -gruppen - Host-Key-Pins (OpenSSH-Public-Key-Material für unbeaufsichtigte Ausführung) - Sudo-Passwörter für Server und Gruppen (verschlüsselt) - Journaleinträge mit Zeitstempeln, Exit-Codes und geschwärzter Ausgabe - Journal-Aufbewahrungseinstellungen (Einträge, die älter als 14 Tage sind, standardmäßig automatisch löschen)

Sicherheit: - Host-Key-Pinning ist standardmäßig für die unbeaufsichtigte SSH/SFTP/Rsync-Ausführung erforderlich - Sudo-Passwörter werden mit dem Master-Passwort verschlüsselt - Journaleinträge werden mit von KorTTY verwalteten Geheimnissen gespeichert, die vor der Persistenz geschwärzt wurden - Archivkennwörter und Anmeldeinformationen für die Backup-Verschlüsselung werden verschlüsselt gespeichert

Warning

Wenn das Hauptkennwort gesperrt ist und ein Job SSH-, Sudo-, API- oder Archivgeheimnisse benötigt, wird der Job blockiert und ein Journaleintrag mit einer Erläuterung des Problems erstellt.

ai-chats.xml

Gespeicherte KI-Gespräche und Chat-Verlauf.

Beinhaltet: - Chat-Titel und Erstellungszeitstempel - Konversationsnachrichten und Antworten - Zugehöriges KI-Profil, das für den Chat verwendet wird - Follow-up-Eingabeaufforderungsverlauf (für Kontext)

Hinweis: KI-Ergebnisregisterkarten werden nicht automatisch gespeichert. Sie müssen sie explizit auf der Registerkarte „AI“ mit der Schaltfläche „Speichern“ speichern, um sie dieser Datei hinzuzufügen.

memory/

Das KI-Memory von korTTY, siehe KI-Memory. MEMORY.md enthält das globale Gedächtnis und connections/<id>.md das Gedächtnis jeder Verbindung; beide sind reines Markdown, das Sie lesen und bearbeiten können. korTTY markiert die von ihm geschriebenen Einträge mit einem HTML-Kommentar, der einen Hash enthält, sodass ein von Ihnen bearbeiteter Eintrag Ihr eigener Text wird und korTTY Ihren Text niemals ohne Ihre Bestätigung ändert oder löscht.

Die anderen Dateien im Ordner sind state.json (Digests und der Zustand des Speichers), history/ (die Snapshots, die korTTY vor einer Änderung erstellt, die der Memory-Tab wiederherstellen kann), archive.md (die korTTY-Einträge, die eine Bereinigung archiviert hat, die Archiv anzeigen... auflistet), learning.json (der Zustand des Regellernens, wie die täglichen Zähler und die aufgeschobenen und abgelehnten Vorschläge) und external.json (die Referenzdateien anderer Tools, die Sie genehmigt haben, mit ihren Pfaden und dem SHA-256 des genehmigten Textes).

Alle werden ausschließlich für den Besitzer geschrieben. Der Ordner ist in Backups enthalten. Eine Wiederherstellung fügt nur Dateien hinzu, die lokal nicht existieren, und überschreibt sie niemals; eine Notiz, die ein mögliches Secret enthält, wird nicht wiederhergestellt; wird der Speicher durch die Unternehmensrichtlinie schreibgeschützt oder deaktiviert, wird nichts wiederhergestellt. external.json wird niemals wiederhergestellt, sodass Sie die Referenzdateien auf jedem Computer erneut bestätigen.

stats/

skill-usage.json enthält die Nutzungszahlen und die Größenhistorie Ihrer KI-Skills für die Skill-Statistiken. Tägliche Werte werden 400 Tage, monatliche Werte fünf Jahre und jährliche Werte unbegrenzt aufbewahrt. Die Datei wird ausschließlich für den Besitzer geschrieben und ist in Backups enthalten; ein Wiederherstellen fügt sie nur hinzu, wo keine lokale Statistikdatei existiert. Zurücksetzen... im Statistikdialog löscht, was die Datei enthält.

snippets.xml

Codeausschnitte, Skripte und Vorlagen.

Beinhaltet: - Snippet-Name, Beschreibung, Sprache - Codeinhalt mit Metadaten zur Syntaxhervorhebung - Kategorie-/Ordnerorganisation - Tags und Metadaten - Zielsystem (Spalte Betriebssystem: Linux, macOS, Windows usw.) - Import-/Exportverlauf

Merkmale: - Unterstützung für JSON/XML/YAML-Import/Export - Export von Nur-Text-Skripten - ZIP-Archive mit optionaler Passwort- oder GPG-Verschlüsselung - Lokale Syntaxhervorhebung mit dem Monaco-Editor - KI-unterstützte Bearbeitung und Codegenerierung - Persistierte Mermaid-Diagramme (Flussdiagramm mit logischer Struktur, Sequenz, Zustand, Klasse, ER) mit stabilen Code-Referenz-Knoten-IDs und, für Diagramme mit Auswahlbereich, dem abgedeckten Linienbereich - Einzeiliger Export mit optionalen Skriptargumenten

snippet-variables.xml

Speichert Variablendefinitionen zur Verwendung in Snippets.

Beinhaltet: - Variablenname, Wert, Typ - Scope (lokal oder gemeinsam genutzt) - Standardwerte und Validierungsregeln

master.key

Binärdatei, die das gehashte Master-Passwort enthält.

Format: PBKDF2-Hash mit 310.000 Iterationen

Sicherheit: Diese Datei enthält nicht das eigentliche Master-Passwort, sondern nur einen kryptografischen Hash, der zur Überprüfung des Passworts verwendet wird, das Sie beim Start eingeben. Wenn diese Datei verloren geht oder beschädigt ist, müssen Sie KorTTY neu starten und ein neues Master-Passwort festlegen (Sie verlieren jedoch den Zugriff auf zuvor gespeicherte verschlüsselte Anmeldeinformationen und SSH-Schlüssel-Passphrasen).

Warning

Wenn Sie Ihr Master-Passwort vergessen, löschen Sie master.key und credentials.xml, starten Sie KorTTY neu, legen Sie ein neues Master-Passwort fest und geben Sie Ihre Passwörter erneut ein. Es gibt keinen Wiederherstellungsmechanismus für das verlorene Passwort.

master.autounlock

Wird nur geschrieben, wenn Automatisches Anmelden aktiviert ist: eine Kopie des Master-Passworts, verschlüsselt nur mit einem in korTTY eingebauten Schlüssel (AES-256-GCM), nicht mit dem Master-Passwort selbst, mit Dateiberechtigungen nur für den Eigentümer. Das Löschen (oder Deaktivieren der Option) stellt die normale Startaufforderung wieder her.

terminal-effect-plugins.disabled

Textdatei mit den IDs der deaktivierten Terminaleffekt-Plugins (eine pro Zeile).

Zweck: Wenn Sie ein Terminaleffekt-Plugin über Plugins > Terminaleffekte deaktivieren, wird seine ID in diese Datei geschrieben, sodass es nach dem Neustart deaktiviert bleibt.

coding-agents/

Optionale Benutzerüberschreibungen für die Regeln der Coding-Agent-Erkennung, eine JSON-Datei pro Agent (claude-code.json, codex.json, gemini-cli.json, minimax-code.json, qwen-code.json, opencode.json, cursor-agent.json, aider.json, amp.json, goose.json, crush.json, kiro.json, continue.json, grok.json, jules.json, copilot.json, grok-build.json, antigravity.json, cline.json, kilo.json).

Zweck: Eine Datei hier ersetzt die im Paket enthaltene Regeldatei des entsprechenden Agents vollständig. Eine ungültige Datei wird im Log als Coding-Agents-Warnung gemeldet und die im Paket enthaltenen Regeln bleiben aktiv. Das Verzeichnis existiert erst dann, wenn es erstellt wird. Siehe Coding-Agents → Benutzerdefinierte Regeln.

kortty.log

Anwendungsprotokolldatei, im logs/-Ordner: standardmäßig ~/.kortty/logs/kortty.log, oder der Ordner, der unter Einstellungen → Logs → Log-Verzeichnis festgelegt ist.

Enthält: - Startmeldungen - Verbindungsversuche und Ergebnisse - Terminalsitzungsereignisse - Konfigurationsänderungen - Fehler und Warnungen - Leistungsmetriken (auf Anfrage über JMX)

Rotation: Jeden Tag wird die aktuelle Datei geschlossen und das Log in kortty.YYYY-MM-DD.log fortgesetzt. Archive älter als 24 Stunden werden automatisch komprimiert, und Einstellungen → Logs → Logs aufbewahren löscht Archive älter als die von Ihnen gewählte Anzahl Tage (0 behält alle). Eine Unternehmensrichtlinie kann die Anzahl der Archive und deren Gesamtspeicher begrenzen.

ai-answers/: Der logs/ai-answers/-Ordner speichert die letzten wenigen KI-Antworten, die korTTY nicht verwenden konnte, vollständig neben dem Log, sodass ein fehlgeschlagener Schritt später untersucht werden kann. Der Ordner ist auf eine Handvoll Antworten begrenzt.

Tip

Überprüfen Sie diese Datei, wenn Sie Verbindungsprobleme, Probleme beim Laden von Plugins oder unerwartetes Verhalten beheben. Zu den hier protokollierten häufigen Problemen gehören SSH-Fehler, Verschlüsselungsfehler und Import-/Exportprobleme.

Verzeichnisse

history/

Bildschirm-Snapshots werden mit Projekten gespeichert.

Format: GZIP-komprimierter UTF-8 Text, eine Datei pro Terminal-Tab eines gespeicherten Projekts.

Benennung: {session-id}.history.gz, referenziert durch Dateinamen aus der .kortty Datei des Projekts.

Verwendung: Enthält den zuletzt sichtbaren Bildschirm jedes Primärfensters eines Terminal-Tabs zum Zeitpunkt des Speicherns des Projekts – nicht den Scrollback und nicht die Bildschirme weiterer geteilter Paneele.

Zugriff: Nur beim Öffnen eines Projekts mit aktivierter Automatisches Wiederverbinden; der Text wird dann lokal, über die neue Sitzung hinweg gedimmt angezeigt und niemals an den Server gesendet. Keine Verlaufssuche verwendet diese Dateien. korTTY liest, schreibt und löscht ausschließlich einfache {session-id}.history.gz Namen direkt in diesem Ordner. Die Dateien sind nicht verschlüsselt.

Note

Pro Verbindung schreibt Terminal Logging hier nicht: Die generierten Protokolldateien werden in den Ordner verschoben, der auf der Registerkarte „Terminal Logging“ der Verbindung konfiguriert ist, oder in ~/.kortty/terminal-logs/, wenn dieser Ordner leer bleibt.

journals/

Sitzungsjournale – ein eigenständiges Verzeichnis pro Journal (Speicherort konfigurierbar unter Einstellungen > Protokollierung > Sitzungsjournal). Jedes Journalverzeichnis enthält journal.xml (das kuratierte Dokument: Metadaten, KI-Zusammenfassungen, Markierungen, Notizen, Screenshot-Referenzen), das Nur-Anhängen-Capture-Log session-log.json / .xml / .yaml (standardmäßig JSON Lines) mit zstd-komprimierten gedrehten Teilen (Teilgröße und Teileanzahl sind pro Verbindung auf der Registerkarte „Journal“ konfigurierbar, standardmäßig 25 MB und 20 Teile; Journale aus älteren Versionen behalten ihre gzip-komprimierte .gz-Teile), die generierte journal.html-Timeline-Seite und screenshots/*.png. Siehe Sitzungsjournal.

Der Ordner "journals" kann ebenfalls einen .semantic-index/-Ordner für semantische Journaleinsuche enthalten, und jeder Journalordner einen abgeleiteten search-card.json-Cache. korTTY baut entweder eines neu, wenn es fehlt, und das Löschen eines Journals entfernt dessen Cache ebenfalls.

terminal-logs/

Standardmäßige Zielordner für den per-Verbindung-Terminal-Log, wenn das Feld für den Log-Ordner einer Verbindung leer bleibt. Die Dateinamenerstellung, tägige Rotation, Kompression und Aufbewahrung folgen der Logging-Konfiguration der Verbindung.

plugins/

Vom Benutzer importierte Terminal-Effekt-Plugin-JARs.

Zweck: Externe Terminal-Effekt-Plugins, die Sie über Plugins > Terminal-Effekte > Importieren importieren.

Sicherheit: Importierte Plugins sind vertrauenswürdiger Java-Code und werden nicht in einer Sandbox gespeichert. Importieren Sie JARs nur aus Quellen, denen Sie vertrauen.

Bereinigung: Wenn Sie ein Plugin aus diesem Verzeichnis löschen, ist es in KorTTY nicht mehr verfügbar. Deaktivierte Plugins bleiben in diesem Verzeichnis, werden aber in terminal-effect-plugins.disabled aufgeführt.

Warning

Plugin-Abhängigkeiten müssen in der Plugin-JAR schattiert werden. Benachbarte Abhängigkeits-JARs werden nicht automatisch geladen. Verpackungsrichtlinien finden Sie unter Terminaleffekt-Plugins.

bundled-plugins/

Laufzeitkopien der gebündelten exportierbaren Terminal-Effekt-Plugin-JARs.

Zweck: Backup und Arbeitskopien integrierter Plugins, die an externe Benutzer exportiert werden können.

Inhalt: Das MU/TH/UR 6000-Effekt-Plugin und alle anderen exportierbaren gebündelten Plugins.

Automatische Verwaltung: KorTTY verwaltet dieses Verzeichnis automatisch. Benutzer sollten es nicht manuell bearbeiten.

Projekte/

Projektdateien zum Speichern und Laden von Verbindungssätzen.

Format: KorTTY XML-basiertes Projektformat (.kortty-Dateien)

Benennung: Benutzerdefinierte Projektnamen mit der Erweiterung .kortty (z. B. production.kortty, development.kortty)

Enthält: - Liste der offenen Verbindungen/Registerkarten zum Projektspeicherzeitpunkt - Fensterstatus (Registerkarten, Größen, aktive Registerkarte) - Dashboard-Status - Projektmetadaten und Erstellungszeitstempel

Zweck: Öffnen Sie schnell einen vorkonfigurierten Satz von Verbindungen für ein bestimmtes Projekt oder einen bestimmten Workflow.

Verwendung: Speichern Sie ein Projekt über Datei > Projekt speichern, stellen Sie es über Datei > Projekt öffnen oder das Projektverlaufsmenü wieder her.

session/

Die Sitzungs-Snapshots, die korTTY während des Betriebs schreibt, damit Datei > Vorherige Sitzung wiederherstellen Ihre Fenster und Tabs nach einem Neustart oder Absturz wieder öffnen kann (siehe Vorherige Sitzung).

Dateien:

  • last-session.xml — die offenen Fenster und Tabs des laufenden korTTY, ein paar Sekunden nach jeder Änderung und noch einmal beim Beenden von korTTY neu geschrieben, zusammen mit der Liste „Zuletzt geschlossen“
  • previous-session.xml — die Sitzung vor diesem Start, die Vorherige Sitzung wiederherstellen öffnet; bei jedem Start verschiebt korTTY last-session.xml hierher, aber nur, wenn diese Sitzung mindestens einen Tab hatte
  • session.lock — wird von dem korTTY gesperrt gehalten, das die Snapshots schreibt; ein zweites korTTY, das inzwischen gestartet wird, liest sie, schreibt aber nie
  • scrollback/<id>.enc — nur wenn Einstellungen → Fenster → Sitzungswiederherstellung → Auch die Ausgabe jedes Terminalbereichs wiederherstellen eingeschaltet ist: die neueste Ausgabe eines Terminalbereichs, verschlüsselt mit dem Schlüssel des Master-Passworts (AES-256-GCM), die die Snapshots über scrollbackRef nennen; wird nur geschrieben, solange der Tresor entsperrt ist, und erst, nachdem der Bereich neue Ausgabe gezeigt hat; gelöscht, wenn die Option ausgeschaltet wird, wenn sich das Master-Passwort ändert, wenn ein Backup wiederhergestellt wird und wenn keine gespeicherte Sitzung sie mehr nennt (siehe Die Ausgabe wiederherstellen)

Format: XML. Die Fenster und Tabs werden wie ein Projekt mit Auto-Reconnect geschrieben; die Liste „Zuletzt geschlossen“ behält die ID der gespeicherten Verbindung jedes geschlossenen Tabs, seine Tab-Gruppe, seinen Namen und seinen Terminal-Effekt. Jeder Snapshot vermerkt außerdem, ob korTTY normal beendet wurde, ob dieser Lauf seine vorherige Sitzung wiederhergestellt hat und ob er danach noch eine Minute weiterlief; daran erkennt der nächste Start, dass korTTY direkt nach einer Wiederherstellung beendet wurde (siehe Beim Start). Solange das Angebot beim Start auf eine Antwort wartet, behält last-session.xml die angebotene Sitzung, sodass sie erneut angeboten wird, wenn korTTY beendet wird oder abstürzt, bevor Sie wählen.

Enthält keinen Bildschirmtext, keinen Scrollback, keine Befehlszeitstempel, Passwörter oder temporären SSH-Schlüssel in den Snapshots selbst. Der Ordner, in dem sich jeder Tab und jeder Bereich mit einer lokalen Shell befand (ein absoluter Pfad, mit dem die Shell dort wieder gestartet wird, siehe Lokale Shells starten dort, wo Sie sie verlassen haben), und der Name der verschlüsselten Datei mit der Ausgabe eines Bereichs in scrollback/, die Projektdateien nie enthalten, können hier vorkommen; korTTY akzeptiert einen Ordner nur als absoluten Pfad ohne Steuerzeichen und einen Scrollback-Verweis nur als einfachen Namen. Eine Datei in scrollback/, die sich mit dem aktuellen Master-Passwort nicht entschlüsseln lässt, wird gelöscht.

Sicherheit: Das Verzeichnis und seine Dateien sind nur für den Eigentümer zugänglich (rwx------ und rw-------) und werden atomar ersetzt. Ein Snapshot, der sich nicht parsen lässt, wird als <name>.corrupt-<timestamp> beiseitegelegt; einer, der sich nicht lesen lässt, bleibt an Ort und Stelle und wird bis zum nächsten Start nicht überschrieben.

Backup: Nicht in Konfigurationssicherungen enthalten: Die Snapshots beschreiben die Fenster dieses Computers.

i18n/

Dynamisch generierte Sprachübersetzungsdateien.

Format: Java-Eigenschaftendateien (.properties)

Benennung: messages_{language-code}.properties (z. B. messages_de.properties für Deutsch, messages_fr.properties für Französisch)

Zweck: Speichert Übersetzungen, die von Übersetzungs-APIs (Google Translate, DeepL, LibreTranslate, Microsoft Translator oder Yandex) generiert wurden, wenn Sie über Einstellungen > Übersetzung die Generierung von Sprachdateien auswählen.

Automatische Aktualisierung: Wenn Sie KorTTY auf eine neue Version aktualisieren, werden generierte Sprachdateien als veraltet markiert. Verwenden Sie Einstellungen > Übersetzung > Veraltete neu generieren, um sie mit allen neuen oder geänderten UI-Schlüsseln zu aktualisieren.

Note

Integrierte Sprachen (Englisch, Deutsch, Italienisch, Spanisch, Portugiesisch, Französisch, Kroatisch, Niederländisch) werden mit der Anwendung geliefert und verwenden dieses Verzeichnis nicht. Dieses Verzeichnis wird nur für dynamisch generierte Übersetzungen verwendet.

ssh-keys/

Optionales Verzeichnis für kopierte SSH-Schlüssel.

Zweck: Speichert Kopien von SSH-Schlüsseln an einem Ort für Backup und Migration.

Anwendung: 1. Öffnen Sie Verwaltung > SSH-Schlüssel verwalten... 2. Wählen Sie einen SSH-Schlüssel aus und klicken Sie auf In Benutzerverzeichnis kopieren 3. Der Schlüssel wird kopiert ~/.kortty/ssh-keys/

Backup: Die Schlüsseldateien in diesem Verzeichnis werden einbezogen, wenn Sie über Bearbeiten > Backup erstellen ein Backup erstellen (das Archiv ist AES-256- oder GPG-verschlüsselt). Beim Import werden sie mit Dateiberechtigungen, die nur dem Besitzer vorbehalten sind, wiederhergestellt und der Import wird zusammengeführt: Lokale Schlüssel werden niemals gelöscht und vorhandene Dateien werden nur ersetzt, wenn Überschreiben aktiviert ist.

Vorteile: - Zentraler Speicherort für alle SSH-Schlüssel - In verschlüsselten Backups enthalten - Einfache Migration auf neue Maschinen

Sicherheitsübersicht

Artikel Sicherheitsmethode
Master-Passwort PBKDF2-Hashing mit 310.000 Iterationen
Verbindungspasswörter AES-256-GCM-Verschlüsselung
SSH-Schlüsselpassphrasen AES-256-GCM-Verschlüsselung
Hostschlüssel für interaktives Terminal/SFTP/Mosh Normalisiertes Host:Port-TOFU mit OpenSSH SHA-256-Fingerabdrücken und Fail-Closed-Änderungserkennung; Die optionale pro-Verbindung/Gruppe/globale Opt-out-Option lockert nur die Aufforderung zur Annahme neuer Schlüssel mit unbekannten Schlüsseln
Anmeldeinformationen (Benutzername/Passwort) AES-256-GCM-Verschlüsselung
JobScheduler Sudo-Passwörter AES-256-GCM-Verschlüsselung
JobScheduler-Journaleinträge Geschwärzte Geheimnisse vor Persistenz
Sicherungsdateien Passwortgeschützte ZIP- oder GPG-Verschlüsselung
API-Schlüssel (KI-Profile) AES-256-GCM-Verschlüsselung mit Master-Passwort
KI-Memory-Dateien und Skill-Statistiken Plain Text, mit nur-Besitzer-Rechten geschrieben; ein möglicher Geheimniswert wird abgelehnt, bevor er in eine Speicher- oder Skill-Datei geschrieben wird
Terminaleffekt-Plugins Nicht verschlüsselt; Vertrauenswürdiger lokaler Code, kein Sandbox-Code

Dateispeicherorte nach Plattform

Alle Dateien werden plattformübergreifend im selben ~/.kortty/-Verzeichnis gespeichert:

  • macOS: /Users/{username}/.kortty/
  • Windows: C:\Users\{username}\.kortty\ (oder %USERPROFILE%\.kortty\)
  • Linux: /home/{username}/.kortty/ (oder $HOME/.kortty/)

Sicherung und Wiederherstellung

Wenn Sie über Bearbeiten > Backup erstellen ein Backup erstellen, ist die folgende Konfiguration enthalten:

  • Alle .xml Konfigurationsdateien (Verbindungen, Anmeldeinformationen, Anmeldeumgebungen, SSH-Schlüsselreferenzen und Passphrasen, GPG-Schlüssel, globale Einstellungen, JobScheduler, Snippets, Snippet-Variablen, KI-Chats)
  • master.key
  • projects/ Verzeichnis
  • ssh-keys/-Verzeichnis – kopierte SSH-Schlüsseldateien (wiederhergestellt mit Nur-Eigentümer-Berechtigungen; Importe führen lokale Schlüssel zusammen und löschen sie niemals)
  • ssh-host-keys.properties interaktiver Hostschlüssel-Truststore (nicht seine transiente .lock-Datei)
  • llm/models.xml lokale Modellregistrierungen
  • rag/stores.json Wissensspeicher-/Quellenmetadaten
  • memory/ die KI-Memory-Dateien (siehe memory/); eine Wiederherstellung überschreibt niemals eine lokale Datei, und external.json wird niemals wiederhergestellt
  • stats/ die KI-Skill-Statistiken (siehe stats/); nur wiederhergestellt, wenn keine lokale Datei vorhanden ist

Verwaltete GGUF-Gewichte, native Laufzeitpakete, temporäre Sidecar-Daten, Originalquelldokumente und HNSW-Snapshots sind ausgeschlossen, da sie groß oder regenerierbar sind. Die Verzeichnisse history/ und i18n/ sind ebenfalls nicht Teil eines Backups, ebenso wenig wie die Auto-Login-Datei master.autounlock.

Das Backup wird verschlüsselt (passwortgeschütztes ZIP oder GPG) und an einem von Ihnen angegebenen Ort gespeichert.

Tip

Backups sind die empfohlene Methode, um KorTTY auf einen neuen Computer zu migrieren oder nach einem Datenverlust wiederherzustellen. Erstellen Sie regelmäßig ein Backup und bewahren Sie es an einem sicheren Ort auf.

Zugriff auf Konfigurationsdateien

Sie können die KorTTY-Konfiguration direkt bearbeiten, indem Sie:

  1. KorTTY vollständig schließen
  2. Öffnen Sie ~/.kortty/ in Ihrem Dateimanager oder Terminal
  3. Bearbeiten der XML- oder JSON-Datei mit einem Texteditor
  4. KorTTY wird neu gestartet, um die Änderungen zu laden

Warning

Das direkte Bearbeiten von XML/JSON-Dateien kann Ihre Daten beschädigen, wenn es nicht sorgfältig durchgeführt wird. Bearbeiten Sie niemals einen binären index.hnsw-Snapshot. Erstellen Sie vor der manuellen Bearbeitung immer ein Backup. Verwenden Sie für die meisten Konfigurationsaufgaben stattdessen die KorTTY-Benutzeroberfläche – sie verarbeitet Verschlüsselung, Validierung und Dateiformat korrekt.

Fehlerbehebung

Konfigurationsdatei nicht gefunden: - KorTTY erstellt beim ersten Start das Verzeichnis ~/.kortty/ und alle erforderlichen Unterverzeichnisse. - Wenn eine Konfigurationsdatei fehlt, verwendet KorTTY sinnvolle Standardeinstellungen und erstellt die Datei beim nächsten Speichern.

Verschlüsselungsfehler: - Wenn Sie Ihr Master-Passwort vergessen, müssen Sie master.key löschen und ein neues Passwort festlegen. Auf zuvor verschlüsselte Daten kann nicht mehr zugegriffen werden.

Beschädigte XML-Dateien: - Wenn eine .xml-Datei beschädigt ist, stellen Sie sie aus einer Sicherung wieder her oder löschen Sie die Datei. KorTTY wird es beim nächsten Speichern mit den Standardeinstellungen neu erstellen.

Wissensspeicher-Registrierung oder Snapshot kann nicht gelesen werden: - Stellen Sie rag/stores.json aus einem Backup wieder her oder erstellen Sie den Wissensspeicher im KI-Manager neu. Löschen Sie nur die betroffene regenerierbare Datei index.hnsw und wählen Sie dann Jetzt aktualisieren, um sie aus den konfigurierten Quelldateien neu zu erstellen.

Interaktiver SSH-Hostschlüssel geändert: - Stellen Sie keine erneute Verbindung her, bis Sie den neuen OpenSSH SHA-256-Fingerabdruck beim Serveradministrator überprüft und DNS-, Routing- oder Man-in-the-Middle-Probleme ausgeschlossen haben. KorTTY blockiert absichtlich die Nichtübereinstimmung, ohne es erneut zu versuchen oder die gespeicherte PIN zu ersetzen.

Probleme beim Laden des Plugins: - Überprüfen Sie kortty.log auf Fehlermeldungen im Zusammenhang mit dem Laden von Plugins (z. B. doppelte IDs, fehlende Dienste, Fehler beim Laden von Klassen). - Stellen Sie sicher, dass sich die Plugin-JAR in ~/.kortty/plugins/ befindet und META-INF/services/de.kortty.plugin.terminaleffects.TerminalEffectPlugin enthält. - Verwenden Sie Plugins > Terminaleffekte > Neu laden, um die Plugin-Liste zu aktualisieren.

Größe der Protokolldatei: - kortty.log wächst im Laufe des Tages und wird um Mitternacht rotiert, und Archive werden gemäß Logs aufbewahren gelöscht. Sie können die Logdateien sicher löschen, während korTTY geschlossen ist.

Wiederherstellung des Master-Passworts: - Es gibt keine Wiederherstellung für ein vergessenes Master-Passwort. Wenn Sie es verlieren, löschen Sie master.key und credentials.xml, starten Sie KorTTY neu und legen Sie ein neues Passwort fest.