<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="de_DE">
<context>
    <name>AttachedFilesPlace</name>
    <message>
        <source>Open in Qt Creator</source>
        <translation>In Qt Creator öffnen</translation>
    </message>
    <message>
        <source>Open in External Editor</source>
        <translation>In externem Editor öffnen</translation>
    </message>
    <message>
        <source>Remove</source>
        <translation>Entfernen</translation>
    </message>
</context>
<context>
    <name>BottomBar</name>
    <message>
        <source>Attach file to message</source>
        <translation>Datei an Nachricht anhängen</translation>
    </message>
    <message>
        <source>Attach image to message</source>
        <translation>Bild an Nachricht anhängen</translation>
    </message>
    <message>
        <source>Link file to context</source>
        <translation>Datei mit Kontext verknüpfen</translation>
    </message>
    <message>
        <source>Sync open files</source>
        <translation>Offene Dateien synchronisieren</translation>
    </message>
    <message>
        <source>Automatically synchronize currently opened files with the model context</source>
        <translation>Aktuell geöffnete Dateien automatisch mit dem Modellkontext synchronisieren</translation>
    </message>
    <message>
        <source>Compressing...</source>
        <translation>Komprimiere...</translation>
    </message>
    <message>
        <source>Cancel</source>
        <translation>Abbrechen</translation>
    </message>
    <message>
        <source>Cancel compression</source>
        <translation>Komprimierung abbrechen</translation>
    </message>
    <message>
        <source>Compress</source>
        <translation>Komprimieren</translation>
    </message>
    <message>
        <source>Compress chat (create summarized copy using LLM)</source>
        <translation>Chat komprimieren (zusammengefasste Kopie mit LLM erstellen)</translation>
    </message>
</context>
<context>
    <name>ChatItem</name>
    <message>
        <source>↑ %1 (cached %2)</source>
        <translation>↑ %1 (zwischengespeichert %2)</translation>
    </message>
    <message>
        <source>↑ %1</source>
        <translation>↑ %1</translation>
    </message>
    <message>
        <source>↓ %1 (reasoning %2)</source>
        <translation>↓ %1 (Reasoning %2)</translation>
    </message>
    <message>
        <source>↓ %1</source>
        <translation>↓ %1</translation>
    </message>
    <message>
        <source>Σ %1</source>
        <translation>Σ %1</translation>
    </message>
    <message>
        <source>Reset chat to this message and edit</source>
        <translation>Chat auf diese Nachricht zurücksetzen und bearbeiten</translation>
    </message>
    <message>
        <source>Click: Open in Qt Creator
Shift+Click: Open in System Editor</source>
        <translation>Klick: In Qt Creator öffnen
Umschalt+Klick: Im Systemeditor öffnen</translation>
    </message>
    <message>
        <source>Failed to load image</source>
        <translation>Bild konnte nicht geladen werden</translation>
    </message>
</context>
<context>
    <name>CodeBlock</name>
    <message>
        <source>Code (%1)</source>
        <translation>Code (%1)</translation>
    </message>
    <message>
        <source>Code</source>
        <translation>Code</translation>
    </message>
    <message>
        <source>Copy</source>
        <translation>Kopieren</translation>
    </message>
    <message>
        <source>Collapse</source>
        <translation>Einklappen</translation>
    </message>
    <message>
        <source>Expand</source>
        <translation>Ausklappen</translation>
    </message>
    <message>
        <source>Copied</source>
        <translation>Kopiert</translation>
    </message>
</context>
<context>
    <name>ContextViewer</name>
    <message>
        <source>Chat Context</source>
        <translation>Chat-Kontext</translation>
    </message>
    <message>
        <source>Refresh</source>
        <translation>Aktualisieren</translation>
    </message>
    <message>
        <source>Close</source>
        <translation>Schließen</translation>
    </message>
    <message>
        <source>Base System Prompt</source>
        <translation>Basis-System-Prompt</translation>
    </message>
    <message>
        <source>Active</source>
        <translation>Aktiv</translation>
    </message>
    <message>
        <source>Empty</source>
        <translation>Leer</translation>
    </message>
    <message>
        <source>No system prompt configured</source>
        <translation>Kein System-Prompt konfiguriert</translation>
    </message>
    <message>
        <source>Copy</source>
        <translation>Kopieren</translation>
    </message>
    <message>
        <source>Edit in Settings</source>
        <translation>In Einstellungen bearbeiten</translation>
    </message>
    <message>
        <source>Agent Role</source>
        <translation>Agent-Rolle</translation>
    </message>
    <message>
        <source>No role selected. Using base system prompt only.</source>
        <translation>Keine Rolle ausgewählt. Es wird nur der Basis-System-Prompt verwendet.</translation>
    </message>
    <message>
        <source>Manage Roles</source>
        <translation>Rollen verwalten</translation>
    </message>
    <message>
        <source>Project Rules</source>
        <translation>Projektregeln</translation>
    </message>
    <message>
        <source>%1 active</source>
        <translation>%1 aktiv</translation>
    </message>
    <message>
        <source>None</source>
        <translation>Keine</translation>
    </message>
    <message>
        <source>Rules (%1)</source>
        <translation>Regeln (%1)</translation>
    </message>
    <message>
        <source>Content</source>
        <translation>Inhalt</translation>
    </message>
    <message>
        <source>No project rules found.
Create .md files in .qodeassist/rules/common/ or .qodeassist/rules/chat/</source>
        <translation>Keine Projektregeln gefunden.
Erstellen Sie .md-Dateien in .qodeassist/rules/common/ oder .qodeassist/rules/chat/</translation>
    </message>
    <message>
        <source>Open Rules Folder</source>
        <translation>Regelordner öffnen</translation>
    </message>
    <message>
        <source>Final prompt: Base System Prompt + Agent Role + Project Info + Project Rules + Linked Files</source>
        <translation>Endgültiger Prompt: Basis-System-Prompt + Agent-Rolle + Projektinfo + Projektregeln + Verknüpfte Dateien</translation>
    </message>
</context>
<context>
    <name>DiffStatistics</name>
    <message>
        <source>+%1 lines, -%2 lines</source>
        <translation>+%1 Zeilen, -%2 Zeilen</translation>
    </message>
    <message>
        <source>+%1 lines</source>
        <translation>+%1 Zeilen</translation>
    </message>
    <message>
        <source>-%1 lines</source>
        <translation>-%1 Zeilen</translation>
    </message>
    <message>
        <source>No changes</source>
        <translation>Keine Änderungen</translation>
    </message>
</context>
<context>
    <name>FileEditBlock</name>
    <message>
        <source>ARCHIVED</source>
        <translation>ARCHIVIERT</translation>
    </message>
    <message>
        <source>APPLIED</source>
        <translation>ANGEWENDET</translation>
    </message>
    <message>
        <source>REJECTED</source>
        <translation>ABGELEHNT</translation>
    </message>
    <message>
        <source>PENDING</source>
        <translation>AUSSTEHEND</translation>
    </message>
    <message>
        <source>Replace</source>
        <translation>Ersetzen</translation>
    </message>
    <message>
        <source>Append</source>
        <translation>Anhängen</translation>
    </message>
    <message>
        <source>%1: %2 (+%3 -%4)</source>
        <translation>%1: %2 (+%3 -%4)</translation>
    </message>
    <message>
        <source>%1: %2 (+%3)</source>
        <translation>%1: %2 (+%3)</translation>
    </message>
    <message>
        <source>Open file in editor and navigate to changes</source>
        <translation>Datei im Editor öffnen und zu Änderungen navigieren</translation>
    </message>
    <message>
        <source>Copy</source>
        <translation>Kopieren</translation>
    </message>
    <message>
        <source>Collapse</source>
        <translation>Einklappen</translation>
    </message>
    <message>
        <source>Expand</source>
        <translation>Ausklappen</translation>
    </message>
</context>
<context>
    <name>FileEditsActionBar</name>
    <message>
        <source>File Edit in Current Message</source>
        <translation>Dateibearbeitung in aktueller Nachricht</translation>
    </message>
    <message>
        <source>%1 File Edits in Current Message</source>
        <translation>%1 Dateibearbeitungen in aktueller Nachricht</translation>
    </message>
    <message>
        <source>%1 applied</source>
        <translation>%1 angewendet</translation>
    </message>
    <message>
        <source>%1 pending</source>
        <translation>%1 ausstehend</translation>
    </message>
    <message>
        <source>%1 rejected</source>
        <translation>%1 abgelehnt</translation>
    </message>
    <message>
        <source>Apply All (%1)</source>
        <translation>Alle anwenden (%1)</translation>
    </message>
    <message>
        <source>Reapply All (%1)</source>
        <translation>Alle erneut anwenden (%1)</translation>
    </message>
    <message>
        <source>Apply all pending and rejected edits in this message</source>
        <translation>Alle ausstehenden und abgelehnten Bearbeitungen in dieser Nachricht anwenden</translation>
    </message>
    <message>
        <source>Reapply all rejected edits in this message</source>
        <translation>Alle abgelehnten Bearbeitungen in dieser Nachricht erneut anwenden</translation>
    </message>
    <message>
        <source>Undo All (%1)</source>
        <translation>Alle rückgängig machen (%1)</translation>
    </message>
    <message>
        <source>Undo all applied edits in this message</source>
        <translation>Alle angewendeten Bearbeitungen in dieser Nachricht rückgängig machen</translation>
    </message>
</context>
<context>
    <name>MessageNavigator</name>
    <message>
        <source>#%1  ·  %2</source>
        <translation>#%1  ·  %2</translation>
    </message>
    <message>
        <source>Jump to message #%1</source>
        <translation>Zu Nachricht #%1 springen</translation>
    </message>
</context>
<context>
    <name>QObject</name>
    <message>
        <source>Template Not Found</source>
        <translation>Vorlage nicht gefunden</translation>
    </message>
    <message>
        <source>Template &apos;%1&apos; was not found or has been updated. Please re-set new one.</source>
        <translation>Vorlage &apos;%1&apos; wurde nicht gefunden oder wurde aktualisiert. Bitte wählen Sie eine neue aus.</translation>
    </message>
    <message>
        <source>Providers</source>
        <translation>Anbieter</translation>
    </message>
    <message>
        <source>Agents</source>
        <translation>Agenten</translation>
    </message>
    <message>
        <source>Current Settings</source>
        <translation>Aktuelle Einstellungen</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Chat::ChatCompressor</name>
    <message>
        <source>Compression already in progress</source>
        <translation>Komprimierung läuft bereits</translation>
    </message>
    <message>
        <source>No chat file to compress</source>
        <translation>Keine Chat-Datei zum Komprimieren</translation>
    </message>
    <message>
        <source>Chat is empty, nothing to compress</source>
        <translation>Chat ist leer, nichts zu komprimieren</translation>
    </message>
    <message>
        <source>No provider available</source>
        <translation>Kein Anbieter verfügbar</translation>
    </message>
    <message>
        <source>No template available</source>
        <translation>Keine Vorlage verfügbar</translation>
    </message>
    <message>
        <source>Compression cancelled</source>
        <translation>Komprimierung abgebrochen</translation>
    </message>
    <message>
        <source>Failed to save compressed chat</source>
        <translation>Komprimierter Chat konnte nicht gespeichert werden</translation>
    </message>
    <message>
        <source>Compression failed: %1</source>
        <translation>Komprimierung fehlgeschlagen: %1</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Chat::ChatFileManager</name>
    <message>
        <source>File is not accessible: %1</source>
        <translation>Auf die Datei kann nicht zugegriffen werden: %1</translation>
    </message>
    <message>
        <source>Failed to copy file: %1</source>
        <translation>Datei konnte nicht kopiert werden: %1</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Chat::ChatHistoryStore</name>
    <message>
        <source>Save Chat History</source>
        <translation>Chatverlauf speichern</translation>
    </message>
    <message>
        <source>JSON files (*.json)</source>
        <translation>JSON-Dateien (*.json)</translation>
    </message>
    <message>
        <source>Load Chat History</source>
        <translation>Chatverlauf laden</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Chat::ChatRootView</name>
    <message>
        <source>Chat compressed successfully!</source>
        <translation>Chat erfolgreich komprimiert!</translation>
    </message>
    <message>
        <source>This chat file is already in use by another QodeAssist chat session.</source>
        <translation>Diese Chat-Datei wird bereits von einer anderen QodeAssist-Chat-Sitzung verwendet.</translation>
    </message>
    <message>
        <source>This chat is already open in another QodeAssist chat session.</source>
        <translation>Dieser Chat ist bereits in einer anderen QodeAssist-Chat-Sitzung geöffnet.</translation>
    </message>
    <message>
        <source>Select Files to Attach</source>
        <translation>Anzuhängende Dateien auswählen</translation>
    </message>
    <message numerus="yes">
        <source>Images automatically moved to Attach zone (%n file(s))</source>
        <translation>
            <numerusform>Bilder automatisch in den Anhangsbereich verschoben (%n Datei(en))</numerusform>
            <numerusform>Bilder automatisch in den Anhangsbereich verschoben (%n Datei(en))</numerusform>
        </translation>
    </message>
    <message>
        <source>Select Images to Attach</source>
        <translation>Anzuhängende Bilder auswählen</translation>
    </message>
    <message>
        <source>Images (*.png *.jpg *.jpeg *.gif *.bmp *.webp)</source>
        <translation>Bilder (*.png *.jpg *.jpeg *.gif *.bmp *.webp)</translation>
    </message>
    <message>
        <source>Compression is already in progress</source>
        <translation>Komprimierung läuft bereits</translation>
    </message>
    <message>
        <source>No chat file to compress. Please save the chat first.</source>
        <translation>Keine Chat-Datei zum Komprimieren. Bitte speichern Sie den Chat zuerst.</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Chat::NavigationPanel</name>
    <message>
        <source>QodeAssist Chat</source>
        <translation>QodeAssist Chat</translation>
    </message>
</context>
<context>
    <name>QodeAssist::EditorChatButton</name>
    <message>
        <source>Open QodeAssist Chat</source>
        <translation>QodeAssist Chat öffnen</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Mcp::McpServerManager</name>
    <message>
        <source>QodeAssist MCP server exposing Qt Creator project tools.</source>
        <translation>QodeAssist MCP-Server, der Qt Creator-Projekttools bereitstellt.</translation>
    </message>
</context>
<context>
    <name>QodeAssist::QodeAssistClient</name>
    <message>
        <source>Code completion failed: %1</source>
        <translation>Code-Vervollständigung fehlgeschlagen: %1</translation>
    </message>
    <message>
        <source>Quick refactor failed</source>
        <translation>Schnelles Refactoring fehlgeschlagen</translation>
    </message>
    <message>
        <source>Quick refactor failed: %1</source>
        <translation>Schnelles Refactoring fehlgeschlagen: %1</translation>
    </message>
</context>
<context>
    <name>QodeAssist::RefactorWidget</name>
    <message>
        <source>◄ Original</source>
        <translation>◄ Original</translation>
    </message>
    <message>
        <source>Refactored ►</source>
        <translation>Refaktoriert ►</translation>
    </message>
    <message>
        <source>✓ Apply (⌘+Enter)</source>
        <translation>✓ Anwenden (⌘+Enter)</translation>
    </message>
    <message>
        <source>✓ Apply (Ctrl+Enter)</source>
        <translation>✓ Anwenden (Strg+Enter)</translation>
    </message>
    <message>
        <source>✗ Decline (Esc)</source>
        <translation>✗ Ablehnen (Esc)</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Settings::AgentDetailPane</name>
    <message>
        <source>Open in editor</source>
        <translation>Im Editor öffnen</translation>
    </message>
    <message>
        <source>Duplicate…</source>
        <translation>Duplizieren…</translation>
    </message>
    <message>
        <source>Delete</source>
        <translation>Löschen</translation>
    </message>
    <message>
        <source>Identity</source>
        <translation>Identität</translation>
    </message>
    <message>
        <source>Extends:</source>
        <translation>Erweitert:</translation>
    </message>
    <message>
        <source>Name:</source>
        <translation>Name:</translation>
    </message>
    <message>
        <source>Description:</source>
        <translation>Beschreibung:</translation>
    </message>
    <message>
        <source>Tags:</source>
        <translation>Tags:</translation>
    </message>
    <message>
        <source>Comma-separated. Free-form — used to filter and group the agent list.</source>
        <translation>Kommagetrennt. Freiform — wird zum Filtern und Gruppieren der Agentenliste verwendet.</translation>
    </message>
    <message>
        <source>System role</source>
        <translation>Systemrolle</translation>
    </message>
    <message>
        <source>Prepended to every request as the system message.</source>
        <translation>Wird jeder Anfrage als Systemnachricht vorangestellt.</translation>
    </message>
    <message>
        <source>Context</source>
        <translation>Kontext</translation>
    </message>
    <message>
        <source>Jinja2 template rendered with ContextManager bindings into the agent.context system-prompt layer. Empty = no context block.</source>
        <translation>Jinja2-Vorlage, die mit ContextManager-Bindungen in die agent.context-System-Prompt-Ebene gerendert wird. Leer = kein Kontextblock.</translation>
    </message>
    <message>
        <source>Connection</source>
        <translation>Verbindung</translation>
    </message>
    <message>
        <source>Provider:</source>
        <translation>Anbieter:</translation>
    </message>
    <message>
        <source>The provider instance this agent uses. URL is inherited from the instance.</source>
        <translation>Die Anbieterinstanz, die dieser Agent verwendet. Die URL wird von der Instanz geerbt.</translation>
    </message>
    <message>
        <source>Endpoint:</source>
        <translation>Endpunkt:</translation>
    </message>
    <message>
        <source>Appended to the provider&apos;s URL. Blank uses the provider default.</source>
        <translation>Wird an die URL des Anbieters angehängt. Leer verwendet den Anbieterstandard.</translation>
    </message>
    <message>
        <source>Model:</source>
        <translation>Modell:</translation>
    </message>
    <message>
        <source>Match</source>
        <translation>Übereinstimmung</translation>
    </message>
    <message>
        <source>When a feature slot has multiple bound agents, the first whose match rules satisfy the current context wins.</source>
        <translation>Wenn ein Feature-Slot mehrere gebundene Agenten hat, gewinnt der erste, dessen Übereinstimmungsregeln den aktuellen Kontext erfüllen.</translation>
    </message>
    <message>
        <source>File patterns:</source>
        <translation>Dateimuster:</translation>
    </message>
    <message>
        <source>Globs, comma-separated. Empty matches every file.</source>
        <translation>Globs, kommagetrennt. Leer entspricht jeder Datei.</translation>
    </message>
    <message>
        <source>Template</source>
        <translation>Vorlage</translation>
    </message>
    <message>
        <source>Jinja2 template (via inja) rendered to the request body. Built-in context: ctx.prefix, ctx.suffix, ctx.history, ctx.system_prompt, agent.model.</source>
        <translation>Jinja2-Vorlage (über inja), die in den Anfragekörper gerendert wird. Eingebauter Kontext: ctx.prefix, ctx.suffix, ctx.history, ctx.system_prompt, agent.model.</translation>
    </message>
    <message>
        <source>message_format:</source>
        <translation>message_format:</translation>
    </message>
    <message>
        <source>Load errors</source>
        <translation>Ladefehler</translation>
    </message>
    <message>
        <source>▸ Show raw TOML</source>
        <translation>▸ Rohes TOML anzeigen</translation>
    </message>
    <message>
        <source>▾ Hide raw TOML</source>
        <translation>▾ Rohes TOML ausblenden</translation>
    </message>
    <message>
        <source>No description provided.</source>
        <translation>Keine Beschreibung angegeben.</translation>
    </message>
    <message>
        <source>%1  (missing — not in provider library)</source>
        <translation>%1  (fehlt — nicht in der Anbieterbibliothek)</translation>
    </message>
    <message>
        <source>(provider default)</source>
        <translation>(Anbieterstandard)</translation>
    </message>
    <message>
        <source># effective request line
(unknown — provider instance not found)</source>
        <translation># effektive Anfragezeile
(unbekannt — Anbieterinstanz nicht gefunden)</translation>
    </message>
    <message>
        <source>effective request line</source>
        <translation>effektive Anfragezeile</translation>
    </message>
    <message>
        <source>(no system role set)</source>
        <translation>(keine Systemrolle festgelegt)</translation>
    </message>
    <message>
        <source>(no context block)</source>
        <translation>(kein Kontextblock)</translation>
    </message>
    <message>
        <source>(matches every file)</source>
        <translation>(entspricht jeder Datei)</translation>
    </message>
    <message>
        <source>(inherited from parent / none)</source>
        <translation>(vom übergeordneten Element geerbt / keine)</translation>
    </message>
    <message>
        <source>(truncated at %1 bytes)</source>
        <translation>(gekürzt bei %1 Bytes)</translation>
    </message>
    <message>
        <source>(source file is empty)</source>
        <translation>(Quelldatei ist leer)</translation>
    </message>
    <message>
        <source>(source file unavailable: %1)</source>
        <translation>(Quelldatei nicht verfügbar: %1)</translation>
    </message>
    <message>
        <source>Bundled agents are read-only — duplicate to edit.</source>
        <translation>Mitgelieferte Agenten sind schreibgeschützt — duplizieren Sie zum Bearbeiten.</translation>
    </message>
    <message>
        <source>Bundled agents cannot be deleted.</source>
        <translation>Mitgelieferte Agenten können nicht gelöscht werden.</translation>
    </message>
    <message>
        <source>Select an agent</source>
        <translation>Agent auswählen</translation>
    </message>
    <message>
        <source>Pick an agent from the list to see its details.</source>
        <translation>Wählen Sie einen Agenten aus der Liste, um seine Details anzuzeigen.</translation>
    </message>
    <message>
        <source>error: %1</source>
        <translation>Fehler: %1</translation>
    </message>
    <message>
        <source>warning: %1</source>
        <translation>Warnung: %1</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Settings::AgentListPane</name>
    <message>
        <source>Filter agents…</source>
        <translation>Agenten filtern…</translation>
    </message>
    <message>
        <source>User</source>
        <translation>Benutzer</translation>
    </message>
    <message>
        <source>Bundled</source>
        <translation>Mitgeliefert</translation>
    </message>
    <message>
        <source>No agents match these filters.</source>
        <translation>Keine Agenten entsprechen diesen Filtern.</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Settings::AgentRoleDialog</name>
    <message>
        <source>Add Agent Role</source>
        <translation>Agent-Rolle hinzufügen</translation>
    </message>
    <message>
        <source>Duplicate Agent Role</source>
        <translation>Agent-Rolle duplizieren</translation>
    </message>
    <message>
        <source>Edit Agent Role</source>
        <translation>Agent-Rolle bearbeiten</translation>
    </message>
    <message>
        <source>e.g., Developer, Code Reviewer</source>
        <translation>z. B. Entwickler, Code-Reviewer</translation>
    </message>
    <message>
        <source>Name:</source>
        <translation>Name:</translation>
    </message>
    <message>
        <source>e.g., developer, code_reviewer</source>
        <translation>z. B. developer, code_reviewer</translation>
    </message>
    <message>
        <source>ID:</source>
        <translation>ID:</translation>
    </message>
    <message>
        <source>Brief description of this role...</source>
        <translation>Kurze Beschreibung dieser Rolle...</translation>
    </message>
    <message>
        <source>Description:</source>
        <translation>Beschreibung:</translation>
    </message>
    <message>
        <source>System Prompt:</source>
        <translation>System-Prompt:</translation>
    </message>
    <message>
        <source>You are an expert in...

Your role is to:
- Task 1
- Task 2
- Task 3</source>
        <translation>Sie sind ein Experte für...

Ihre Rolle ist es:
- Aufgabe 1
- Aufgabe 2
- Aufgabe 3</translation>
    </message>
    <message>
        <source>ID cannot be changed for existing roles</source>
        <translation>Die ID kann für bestehende Rollen nicht geändert werden</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Settings::AgentsWidget</name>
    <message>
        <source>Agents</source>
        <translation>Agenten</translation>
    </message>
    <message>
        <source>Reload from disk</source>
        <translation>Von Datenträger neu laden</translation>
    </message>
    <message>
        <source>Open agents folder</source>
        <translation>Agentenordner öffnen</translation>
    </message>
    <message>
        <source>Open agent</source>
        <translation>Agent öffnen</translation>
    </message>
    <message>
        <source>&apos;%1&apos; is bundled with the plugin and read-only.
Use Duplicate to create an editable user copy.</source>
        <translation>&apos;%1&apos; ist im Plugin enthalten und schreibgeschützt.
Verwenden Sie Duplizieren, um eine bearbeitbare Benutzerkopie zu erstellen.</translation>
    </message>
    <message>
        <source>Agent &apos;%1&apos; has no editable source file.</source>
        <translation>Agent &apos;%1&apos; hat keine bearbeitbare Quelldatei.</translation>
    </message>
    <message>
        <source>Could not open %1.</source>
        <translation>%1 konnte nicht geöffnet werden.</translation>
    </message>
    <message>
        <source>Duplicate</source>
        <translation>Duplizieren</translation>
    </message>
    <message>
        <source>Delete Agent</source>
        <translation>Agent löschen</translation>
    </message>
    <message>
        <source>Delete agent &apos;%1&apos;?

This will remove the file:
%2</source>
        <translation>Agent &apos;%1&apos; löschen?

Dies entfernt die Datei:
%2</translation>
    </message>
    <message>
        <source>Could not delete the agent file:
%1</source>
        <translation>Die Agentendatei konnte nicht gelöscht werden:
%1</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Settings::McpClientsListAspect</name>
    <message>
        <source>Connected.</source>
        <translation>Verbunden.</translation>
    </message>
    <message>
        <source>Connecting…</source>
        <translation>Verbinde…</translation>
    </message>
    <message>
        <source>Failed.</source>
        <translation>Fehlgeschlagen.</translation>
    </message>
    <message>
        <source>Failed: %1</source>
        <translation>Fehlgeschlagen: %1</translation>
    </message>
    <message>
        <source>Disabled.</source>
        <translation>Deaktiviert.</translation>
    </message>
    <message>
        <source>everything (reference test server)</source>
        <translation>alles (Referenztestserver)</translation>
    </message>
    <message>
        <source>filesystem (local files)</source>
        <translation>Dateisystem (lokale Dateien)</translation>
    </message>
    <message>
        <source>memory (in-memory key-value)</source>
        <translation>memory (In-Memory-Schlüssel-Wert)</translation>
    </message>
    <message>
        <source>git (local git ops)</source>
        <translation>git (lokale Git-Operationen)</translation>
    </message>
    <message>
        <source>time (system clock)</source>
        <translation>time (Systemuhr)</translation>
    </message>
    <message>
        <source>qtcreator (Qt Creator&apos;s built-in MCP server)</source>
        <translation>qtcreator (in Qt Creator integrierter MCP-Server)</translation>
    </message>
    <message>
        <source>qt-docs (Qt documentation)</source>
        <translation>qt-docs (Qt-Dokumentation)</translation>
    </message>
    <message>
        <source>remote (SSE / HTTP)</source>
        <translation>remote (SSE / HTTP)</translation>
    </message>
    <message>
        <source>Server reports no tools.</source>
        <translation>Server meldet keine Tools.</translation>
    </message>
    <message>
        <source>Tools</source>
        <translation>Tools</translation>
    </message>
    <message>
        <source>Enable / disable this MCP server</source>
        <translation>Diesen MCP-Server aktivieren / deaktivieren</translation>
    </message>
    <message>
        <source>Remove this server from the config.</source>
        <translation>Diesen Server aus der Konfiguration entfernen.</translation>
    </message>
    <message>
        <source>Remove server</source>
        <translation>Server entfernen</translation>
    </message>
    <message>
        <source>Remove server &apos;%1&apos; from the config?</source>
        <translation>Server &apos;%1&apos; aus der Konfiguration entfernen?</translation>
    </message>
    <message>
        <source>Open Config</source>
        <translation>Konfiguration öffnen</translation>
    </message>
    <message>
        <source>Refresh MCP List</source>
        <translation>MCP-Liste aktualisieren</translation>
    </message>
    <message>
        <source>Note: restart Qt Creator to apply MCP changes to already-opened chats and running sessions.</source>
        <translation>Hinweis: Starten Sie Qt Creator neu, um MCP-Änderungen auf bereits geöffnete Chats und laufende Sitzungen anzuwenden.</translation>
    </message>
    <message>
        <source>Quick Setup</source>
        <translation>Schnelleinrichtung</translation>
    </message>
    <message>
        <source>Pick a preset to append a ready-made server entry to the config (auto-suffixed if the name is taken).</source>
        <translation>Wählen Sie eine Voreinstellung, um einen vorgefertigten Servereintrag an die Konfiguration anzuhängen (automatisch mit Suffix versehen, wenn der Name vergeben ist).</translation>
    </message>
    <message>
        <source>-- Select Preset --</source>
        <translation>-- Voreinstellung wählen --</translation>
    </message>
    <message>
        <source>No servers configured. Add a preset below or edit the JSON.</source>
        <translation>Keine Server konfiguriert. Fügen Sie unten eine Voreinstellung hinzu oder bearbeiten Sie das JSON.</translation>
    </message>
    <message>
        <source>0 server(s) defined.</source>
        <translation>0 Server definiert.</translation>
    </message>
    <message>
        <source>%1 server(s) defined, %2 enabled.</source>
        <translation>%1 Server definiert, %2 aktiviert.</translation>
    </message>
    <message>
        <source>MCP configuration</source>
        <translation>MCP-Konfiguration</translation>
    </message>
    <message>
        <source>Failed to write %1:
%2</source>
        <translation>Schreiben von %1 fehlgeschlagen:
%2</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Settings::ProviderDetailPane</name>
    <message>
        <source>Edit…</source>
        <translation>Bearbeiten…</translation>
    </message>
    <message>
        <source>Open in editor</source>
        <translation>Im Editor öffnen</translation>
    </message>
    <message>
        <source>Open this provider&apos;s TOML file in Qt Creator. Bundled providers are read-only — duplicate first.</source>
        <translation>TOML-Datei dieses Anbieters in Qt Creator öffnen. Mitgelieferte Anbieter sind schreibgeschützt — zuerst duplizieren.</translation>
    </message>
    <message>
        <source>Duplicate…</source>
        <translation>Duplizieren…</translation>
    </message>
    <message>
        <source>Delete</source>
        <translation>Löschen</translation>
    </message>
    <message>
        <source>Cancel</source>
        <translation>Abbrechen</translation>
    </message>
    <message>
        <source>Save</source>
        <translation>Speichern</translation>
    </message>
    <message>
        <source>Identity</source>
        <translation>Identität</translation>
    </message>
    <message>
        <source>Name:</source>
        <translation>Name:</translation>
    </message>
    <message>
        <source>Client API:</source>
        <translation>Client-API:</translation>
    </message>
    <message>
        <source>The client API this provider speaks. Cannot be changed after creation.</source>
        <translation>Die Client-API, die dieser Anbieter spricht. Kann nach der Erstellung nicht geändert werden.</translation>
    </message>
    <message>
        <source>Description:</source>
        <translation>Beschreibung:</translation>
    </message>
    <message>
        <source>Endpoint</source>
        <translation>Endpunkt</translation>
    </message>
    <message>
        <source>URL:</source>
        <translation>URL:</translation>
    </message>
    <message>
        <source>Base URL. Agents append their endpoint path (e.g. /chat/completions) to this.</source>
        <translation>Basis-URL. Agenten hängen ihren Endpunktpfad (z. B. /chat/completions) daran an.</translation>
    </message>
    <message>
        <source>Credentials</source>
        <translation>Anmeldedaten</translation>
    </message>
    <message>
        <source>Enter API key…</source>
        <translation>API-Schlüssel eingeben…</translation>
    </message>
    <message>
        <source>Show / hide API key</source>
        <translation>API-Schlüssel anzeigen / ausblenden</translation>
    </message>
    <message>
        <source>Save key</source>
        <translation>Schlüssel speichern</translation>
    </message>
    <message>
        <source>Clear</source>
        <translation>Leeren</translation>
    </message>
    <message>
        <source>Erase the stored API key for this provider</source>
        <translation>Den gespeicherten API-Schlüssel für diesen Anbieter löschen</translation>
    </message>
    <message>
        <source>API key:</source>
        <translation>API-Schlüssel:</translation>
    </message>
    <message>
        <source>Launch</source>
        <translation>Starten</translation>
    </message>
    <message>
        <source>idle</source>
        <translation>im Leerlauf</translation>
    </message>
    <message>
        <source>Start</source>
        <translation>Starten</translation>
    </message>
    <message>
        <source>Stop</source>
        <translation>Stoppen</translation>
    </message>
    <message>
        <source>Restart</source>
        <translation>Neu starten</translation>
    </message>
    <message>
        <source>▸ Show launch terminal</source>
        <translation>▸ Start-Terminal anzeigen</translation>
    </message>
    <message>
        <source>▾ Hide launch terminal</source>
        <translation>▾ Start-Terminal ausblenden</translation>
    </message>
    <message>
        <source>▸ Show raw TOML</source>
        <translation>▸ Rohes TOML anzeigen</translation>
    </message>
    <message>
        <source>▾ Hide raw TOML</source>
        <translation>▾ Rohes TOML ausblenden</translation>
    </message>
    <message>
        <source>No description provided.</source>
        <translation>Keine Beschreibung angegeben.</translation>
    </message>
    <message>
        <source>— not required (local provider)</source>
        <translation>— nicht erforderlich (lokaler Anbieter)</translation>
    </message>
    <message>
        <source>This provider type does not use a key.</source>
        <translation>Dieser Anbietertyp verwendet keinen Schlüssel.</translation>
    </message>
    <message>
        <source>Stored — enter a new key to replace it.</source>
        <translation>Gespeichert — geben Sie einen neuen Schlüssel ein, um ihn zu ersetzen.</translation>
    </message>
    <message>
        <source>A key is stored. Type a new key and press Save key to replace it, or Clear to erase it.</source>
        <translation>Ein Schlüssel ist gespeichert. Geben Sie einen neuen Schlüssel ein und drücken Sie Schlüssel speichern, um ihn zu ersetzen, oder Leeren, um ihn zu löschen.</translation>
    </message>
    <message>
        <source>No key stored yet. Type a key and press Save key.</source>
        <translation>Noch kein Schlüssel gespeichert. Geben Sie einen Schlüssel ein und drücken Sie Schlüssel speichern.</translation>
    </message>
    <message>
        <source>Select a provider</source>
        <translation>Anbieter auswählen</translation>
    </message>
    <message>
        <source>No [launch] block. This provider is treated as external — the plugin will not spawn or supervise any process. Add a [launch] block to the TOML to have the plugin manage a local server here.</source>
        <translation>Kein [launch]-Block. Dieser Anbieter wird als extern behandelt — das Plugin wird keinen Prozess starten oder überwachen. Fügen Sie der TOML einen [launch]-Block hinzu, damit das Plugin hier einen lokalen Server verwaltet.</translation>
    </message>
    <message>
        <source> &lt;span style=&apos;color:gray&apos;&gt;(detached — survives Qt Creator restart)&lt;/span&gt;</source>
        <translation> &lt;span style=&apos;color:gray&apos;&gt;(abgekoppelt — überlebt Qt Creator-Neustart)&lt;/span&gt;</translation>
    </message>
    <message>
        <source>starting…</source>
        <translation>wird gestartet…</translation>
    </message>
    <message>
        <source>probing…</source>
        <translation>wird geprüft…</translation>
    </message>
    <message>
        <source>ready</source>
        <translation>bereit</translation>
    </message>
    <message>
        <source>stopping…</source>
        <translation>wird gestoppt…</translation>
    </message>
    <message>
        <source>failed</source>
        <translation>fehlgeschlagen</translation>
    </message>
    <message>
        <source>failed — %1</source>
        <translation>fehlgeschlagen — %1</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Settings::ProvidersPageWidget</name>
    <message>
        <source>Providers</source>
        <translation>Anbieter</translation>
    </message>
    <message>
        <source>Filter providers…</source>
        <translation>Anbieter filtern…</translation>
    </message>
    <message>
        <source>Open in editor</source>
        <translation>Im Editor öffnen</translation>
    </message>
    <message>
        <source>Bundled providers are read-only. Use Duplicate to create an editable user copy first.</source>
        <translation>Mitgelieferte Anbieter sind schreibgeschützt. Verwenden Sie Duplizieren, um zuerst eine bearbeitbare Benutzerkopie zu erstellen.</translation>
    </message>
    <message>
        <source>No user instances yet.</source>
        <translation>Noch keine Benutzerinstanzen.</translation>
    </message>
    <message>
        <source>No bundled instances loaded.</source>
        <translation>Keine mitgelieferten Instanzen geladen.</translation>
    </message>
    <message>
        <source>User</source>
        <translation>Benutzer</translation>
    </message>
    <message>
        <source>Bundled</source>
        <translation>Mitgeliefert</translation>
    </message>
    <message>
        <source>Duplicate provider</source>
        <translation>Anbieter duplizieren</translation>
    </message>
    <message>
        <source>Name for the new provider:</source>
        <translation>Name für den neuen Anbieter:</translation>
    </message>
    <message>
        <source>An instance named &apos;%1&apos; already exists.</source>
        <translation>Eine Instanz mit dem Namen &apos;%1&apos; existiert bereits.</translation>
    </message>
    <message>
        <source>Delete provider</source>
        <translation>Anbieter löschen</translation>
    </message>
    <message>
        <source>Delete user provider &apos;%1&apos;?

File: %2</source>
        <translation>Benutzeranbieter &apos;%1&apos; löschen?

Datei: %2</translation>
    </message>
    <message>
        <source>Failed to delete file:
%1</source>
        <translation>Datei konnte nicht gelöscht werden:
%1</translation>
    </message>
    <message>
        <source>Save</source>
        <translation>Speichern</translation>
    </message>
    <message>
        <source>Name cannot be empty.</source>
        <translation>Der Name darf nicht leer sein.</translation>
    </message>
    <message>
        <source>Save anyway?</source>
        <translation>Trotzdem speichern?</translation>
    </message>
    <message>
        <source>Saved to:
%1

but could not remove the old file:
%2

Two provider files now describe this instance — delete the old file manually to avoid a duplicate-name error.</source>
        <translation>Gespeichert unter:
%1

aber die alte Datei konnte nicht entfernt werden:
%2

Zwei Anbieterdateien beschreiben jetzt diese Instanz — löschen Sie die alte Datei manuell, um einen Namenskonflikt zu vermeiden.</translation>
    </message>
    <message>
        <source>Clear API key</source>
        <translation>API-Schlüssel löschen</translation>
    </message>
    <message>
        <source>Erase the stored API key for &apos;%1&apos;?</source>
        <translation>Den gespeicherten API-Schlüssel für &apos;%1&apos; löschen?</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Settings::TagFilterStrip</name>
    <message>
        <source>FILTER BY TAG</source>
        <translation>NACH TAG FILTERN</translation>
    </message>
    <message>
        <source>clear</source>
        <translation>leeren</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Tools::TodoTool</name>
    <message>
        <source>Error: &apos;tasks&apos; parameter (array) is required for &apos;add&apos; operation. Example: {&quot;operation&quot;: &quot;add&quot;, &quot;tasks&quot;: [&quot;Task 1&quot;, &quot;Task 2&quot;]}</source>
        <translation>Fehler: Parameter &apos;tasks&apos; (Array) ist für &apos;add&apos;-Operation erforderlich. Beispiel: {&quot;operation&quot;: &quot;add&quot;, &quot;tasks&quot;: [&quot;Task 1&quot;, &quot;Task 2&quot;]}</translation>
    </message>
    <message>
        <source>Error: &apos;tasks&apos; array cannot be empty. Provide at least one task.</source>
        <translation>Fehler: Das Array &apos;tasks&apos; darf nicht leer sein. Geben Sie mindestens eine Aufgabe an.</translation>
    </message>
    <message>
        <source>Error: All tasks in &apos;tasks&apos; array are empty strings.</source>
        <translation>Fehler: Alle Aufgaben im Array &apos;tasks&apos; sind leere Zeichenketten.</translation>
    </message>
    <message>
        <source>Error: &apos;todo_ids&apos; parameter (array) is required for &apos;complete&apos; operation. Example: {&quot;operation&quot;: &quot;complete&quot;, &quot;todo_ids&quot;: [1, 2, 3]}</source>
        <translation>Fehler: Parameter &apos;todo_ids&apos; (Array) ist für &apos;complete&apos;-Operation erforderlich. Beispiel: {&quot;operation&quot;: &quot;complete&quot;, &quot;todo_ids&quot;: [1, 2, 3]}</translation>
    </message>
    <message>
        <source>Error: &apos;todo_ids&apos; array cannot be empty. Provide at least one ID.</source>
        <translation>Fehler: Das Array &apos;todo_ids&apos; darf nicht leer sein. Geben Sie mindestens eine ID an.</translation>
    </message>
    <message>
        <source>Error: All IDs in &apos;todo_ids&apos; array are invalid. IDs must be positive integers.</source>
        <translation>Fehler: Alle IDs im Array &apos;todo_ids&apos; sind ungültig. IDs müssen positive Ganzzahlen sein.</translation>
    </message>
    <message>
        <source>Error: Unknown operation &apos;%1&apos;. Valid operations: &apos;add&apos;, &apos;complete&apos;, &apos;list&apos;</source>
        <translation>Fehler: Unbekannte Operation &apos;%1&apos;. Gültige Operationen: &apos;add&apos;, &apos;complete&apos;, &apos;list&apos;</translation>
    </message>
    <message>
        <source>✓ Added 1 new task</source>
        <translation>✓ 1 neue Aufgabe hinzugefügt</translation>
    </message>
    <message>
        <source>✓ Added %1 new tasks</source>
        <translation>✓ %1 neue Aufgaben hinzugefügt</translation>
    </message>
    <message>
        <source>Error: No todos found in this session</source>
        <translation>Fehler: Keine Todos in dieser Sitzung gefunden</translation>
    </message>
    <message>
        <source>✓ Marked 1 task as completed</source>
        <translation>✓ 1 Aufgabe als erledigt markiert</translation>
    </message>
    <message>
        <source>✓ Marked %1 tasks as completed</source>
        <translation>✓ %1 Aufgaben als erledigt markiert</translation>
    </message>
    <message>
        <source>⚠ %1 already completed</source>
        <translation>⚠ %1 bereits erledigt</translation>
    </message>
    <message>
        <source>❌ Not found: %1</source>
        <translation>❌ Nicht gefunden: %1</translation>
    </message>
    <message>
        <source>📋 TODO List: (empty)</source>
        <translation>📋 TODO-Liste: (leer)</translation>
    </message>
    <message>
        <source>📋 TODO List:</source>
        <translation>📋 TODO-Liste:</translation>
    </message>
    <message>
        <source>Progress: %1/%2 completed (%3%)</source>
        <translation>Fortschritt: %1/%2 erledigt (%3 %)</translation>
    </message>
    <message>
        <source>📋 All tasks completed! 🎉</source>
        <translation>📋 Alle Aufgaben erledigt! 🎉</translation>
    </message>
    <message>
        <source>📋 Remaining tasks:</source>
        <translation>📋 Verbleibende Aufgaben:</translation>
    </message>
</context>
<context>
    <name>QodeAssist::UpdateDialog</name>
    <message>
        <source>QodeAssist Update</source>
        <translation>QodeAssist-Update</translation>
    </message>
    <message>
        <source>QodeAssist is an open-source project that helps
developers write better code. If you find it useful, please</source>
        <translation>QodeAssist ist ein Open-Source-Projekt, das
Entwicklern hilft, besseren Code zu schreiben. Wenn Sie es nützlich finden, bitte</translation>
    </message>
    <message>
        <source>Install via Extension Registry (recommended)</source>
        <translation>Installation über Extension Registry (empfohlen)</translation>
    </message>
    <message>
        <source>In Qt Creator open Extensions → Browser tab, enable &quot;Use External Repository&quot;, add one of the URLs below and click Apply to install QodeAssist. Updates are then installed from the same screen.</source>
        <translation>Öffnen Sie in Qt Creator Extensions → Registerkarte Browser, aktivieren Sie „Use External Repository“, fügen Sie eine der URLs unten hinzu und klicken Sie auf Apply, um QodeAssist zu installieren. Updates werden anschließend über denselben Bildschirm installiert.</translation>
    </message>
    <message>
        <source>Copy</source>
        <translation>Kopieren</translation>
    </message>
    <message>
        <source>Latest (for the newest Qt Creator, always up to date)</source>
        <translation>Neueste (für das neueste Qt Creator, immer aktuell)</translation>
    </message>
    <message>
        <source>Only for Qt Creator %1</source>
        <translation>Nur für Qt Creator %1</translation>
    </message>
    <message>
        <source>Alternative: QodeAssistUpdater</source>
        <translation>Alternative: QodeAssistUpdater</translation>
    </message>
    <message>
        <source>A standalone tool for installing and updating the plugin.</source>
        <translation>Ein eigenständiges Werkzeug zum Installieren und Aktualisieren des Plugins.</translation>
    </message>
    <message>
        <source>Download QodeAssistUpdater</source>
        <translation>QodeAssistUpdater herunterladen</translation>
    </message>
    <message>
        <source>A new version of QodeAssist is available!</source>
        <translation>Eine neue Version von QodeAssist ist verfügbar!</translation>
    </message>
    <message>
        <source>Version %1 is now available - you have %2</source>
        <translation>Version %1 ist jetzt verfügbar - Sie haben %2</translation>
    </message>
    <message>
        <source>Release Notes:</source>
        <translation>Versionshinweise:</translation>
    </message>
    <message>
        <source>Open Release Page</source>
        <translation>Release-Seite öffnen</translation>
    </message>
    <message>
        <source>Open Plugin Folder</source>
        <translation>Plugin-Ordner öffnen</translation>
    </message>
    <message>
        <source>Close</source>
        <translation>Schließen</translation>
    </message>
    <message>
        <source>QodeAssist is up to date</source>
        <translation>QodeAssist ist auf dem neuesten Stand</translation>
    </message>
    <message>
        <source>You are using the latest version: %1</source>
        <translation>Sie verwenden die neueste Version: %1</translation>
    </message>
    <message>
        <source>No release notes available. Check the release page for more information.</source>
        <translation>Keine Versionshinweise verfügbar. Weitere Informationen finden Sie auf der Release-Seite.</translation>
    </message>
</context>
<context>
    <name>QodeAssist::UpdateStatusWidget</name>
    <message>
        <source>Update</source>
        <translation>Aktualisieren</translation>
    </message>
    <message>
        <source>New version: v%1</source>
        <translation>Neue Version: v%1</translation>
    </message>
    <message>
        <source>Check update information</source>
        <translation>Update-Informationen prüfen</translation>
    </message>
</context>
<context>
    <name>QtC::QodeAssist</name>
    <message>
        <source>Cannot create user provider folder:
%1</source>
        <translation>Benutzeranbieterordner kann nicht erstellt werden:
%1</translation>
    </message>
    <message>
        <source>Cannot pick a free filename in:
%1</source>
        <translation>Es kann kein freier Dateiname gewählt werden in:
%1</translation>
    </message>
    <message>
        <source>Cannot write %1:
%2</source>
        <translation>Kann %1 nicht schreiben:
%2</translation>
    </message>
    <message>
        <source>Write failed for %1:
%2</source>
        <translation>Schreiben fehlgeschlagen für %1:
%2</translation>
    </message>
    <message>
        <source>Request timeout (seconds):</source>
        <translation>Anforderungs-Timeout (Sekunden):</translation>
    </message>
    <message>
        <source>Maximum time to wait for the model to send data before a request is aborted. Applies to all requests — chat, code completion, quick refactor and chat compression. The timer resets every time data is received, so this effectively limits the time-to-first-token and any stall between tokens. Increase it for slow or local models that need a long time to start responding. Set to 0 to disable the timeout.</source>
        <translation>Maximale Wartezeit auf Daten vom Modell, bevor eine Anfrage abgebrochen wird. Gilt für alle Anfragen — Chat, Codevervollständigung, schnelles Refactoring und Chat-Komprimierung. Der Timer wird bei jedem Datenempfang zurückgesetzt, sodass er effektiv die Zeit bis zum ersten Token und jede Verzögerung zwischen Tokens begrenzt. Erhöhen Sie ihn für langsame oder lokale Modelle, die lange zum Antworten brauchen. Auf 0 setzen, um das Timeout zu deaktivieren.</translation>
    </message>
    <message>
        <source>Quick Setup</source>
        <translation>Schnelleinrichtung</translation>
    </message>
    <message>
        <source>Configure API Key</source>
        <translation>API-Schlüssel konfigurieren</translation>
    </message>
    <message>
        <source>Open Provider Settings to configure API keys</source>
        <translation>Anbietereinstellungen öffnen, um API-Schlüssel zu konfigurieren</translation>
    </message>
    <message>
        <source>Load configuration (includes predefined cloud models)</source>
        <translation>Konfiguration laden (enthält vordefinierte Cloud-Modelle)</translation>
    </message>
    <message>
        <source>Show template information</source>
        <translation>Vorlageninformationen anzeigen</translation>
    </message>
    <message>
        <source>Network</source>
        <translation>Netzwerk</translation>
    </message>
    <message>
        <source>Support the development of QodeAssist:</source>
        <translation>Unterstützen Sie die Entwicklung von QodeAssist:</translation>
    </message>
    <message>
        <source>Template Information</source>
        <translation>Vorlageninformationen</translation>
    </message>
    <message>
        <source>Template</source>
        <translation>Vorlage</translation>
    </message>
    <message>
        <source>Description:</source>
        <translation>Beschreibung:</translation>
    </message>
    <message>
        <source>Failed to save configuration. Check logs for details.</source>
        <translation>Konfiguration konnte nicht gespeichert werden. Details siehe Logs.</translation>
    </message>
    <message>
        <source>[Preset] configurations are predefined cloud models ready to use.</source>
        <translation>[Preset]-Konfigurationen sind vordefinierte, sofort einsatzbereite Cloud-Modelle.</translation>
    </message>
    <message>
        <source>Predefined configurations cannot be deleted.</source>
        <translation>Vordefinierte Konfigurationen können nicht gelöscht werden.</translation>
    </message>
    <message>
        <source>Failed to delete configuration.</source>
        <translation>Konfiguration konnte nicht gelöscht werden.</translation>
    </message>
    <message>
        <source>-- Select Preset --</source>
        <translation>-- Voreinstellung wählen --</translation>
    </message>
    <message>
        <source>Enable QodeAssist</source>
        <translation>QodeAssist aktivieren</translation>
    </message>
    <message>
        <source>General</source>
        <translation>Allgemein</translation>
    </message>
    <message>
        <source>Reset Page to Defaults</source>
        <translation>Seite auf Standardwerte zurücksetzen</translation>
    </message>
    <message>
        <source>Check Update</source>
        <translation>Nach Update suchen</translation>
    </message>
    <message>
        <source>Select...</source>
        <translation>Auswählen...</translation>
    </message>
    <message>
        <source>Provider:</source>
        <translation>Anbieter:</translation>
    </message>
    <message>
        <source>Model:</source>
        <translation>Modell:</translation>
    </message>
    <message>
        <source>Template:</source>
        <translation>Vorlage:</translation>
    </message>
    <message>
        <source>URL:</source>
        <translation>URL:</translation>
    </message>
    <message>
        <source>Status:</source>
        <translation>Status:</translation>
    </message>
    <message>
        <source>Test</source>
        <translation>Testen</translation>
    </message>
    <message>
        <source>Enable Logging</source>
        <translation>Logging aktivieren</translation>
    </message>
    <message>
        <source>Log messages are visible in General Messages pane</source>
        <translation>Log-Nachrichten sind im Bereich Allgemeine Meldungen sichtbar</translation>
    </message>
    <message>
        <source>Check for updates when Qt Creator starts</source>
        <translation>Beim Start von Qt Creator nach Updates suchen</translation>
    </message>
    <message>
        <source>Enable Chat(If you have performance issues try disabling this, need restart QtC)</source>
        <translation>Chat aktivieren (Bei Leistungsproblemen versuchen Sie, dies zu deaktivieren, Neustart von QtC erforderlich)</translation>
    </message>
    <message>
        <source>Custom endpoint:</source>
        <translation>Benutzerdefinierter Endpunkt:</translation>
    </message>
    <message>
        <source>Code Completion</source>
        <translation>Code-Vervollständigung</translation>
    </message>
    <message>
        <source>Chat Assistant</source>
        <translation>Chat-Assistent</translation>
    </message>
    <message>
        <source>Quick Refactor</source>
        <translation>Schnelles Refactoring</translation>
    </message>
    <message>
        <source>Chat Compression</source>
        <translation>Chat-Komprimierung</translation>
    </message>
    <message>
        <source>Agent Pipelines</source>
        <translation>Agent-Pipelines</translation>
    </message>
    <message>
        <source>Inline completions while you type. Matchers run on every request.</source>
        <translation>Inline-Vervollständigungen während der Eingabe. Matcher laufen bei jeder Anfrage.</translation>
    </message>
    <message>
        <source>Conversational assistant in the QodeAssist panel.</source>
        <translation>Konversationsassistent im QodeAssist-Panel.</translation>
    </message>
    <message>
        <source>Used when a chat conversation needs to be summarised to stay within context.</source>
        <translation>Wird verwendet, wenn eine Chat-Unterhaltung zusammengefasst werden muss, um im Kontext zu bleiben.</translation>
    </message>
    <message>
        <source>Inline editor-driven refactors via the Quick Refactor action.</source>
        <translation>Inline-, editorgesteuerte Refaktorierungen über die Aktion Schnelles Refactoring.</translation>
    </message>
    <message>
        <source>Reset Settings</source>
        <translation>Einstellungen zurücksetzen</translation>
    </message>
    <message>
        <source>Are you sure you want to reset all settings to default values?</source>
        <translation>Sind Sie sicher, dass Sie alle Einstellungen auf Standardwerte zurücksetzen möchten?</translation>
    </message>
    <message>
        <source>Current template description:</source>
        <translation>Beschreibung der aktuellen Vorlage:</translation>
    </message>
    <message>
        <source>Connection Error</source>
        <translation>Verbindungsfehler</translation>
    </message>
    <message>
        <source>Unable to retrieve the list of models from the server.</source>
        <translation>Die Liste der Modelle konnte nicht vom Server abgerufen werden.</translation>
    </message>
    <message>
        <source>Please verify the following:
- Server is running and accessible
- URL is correct
- Provider is properly configured
- API key is correctly set (if required)

You can try selecting a different provider or changing the URL:</source>
        <translation>Bitte überprüfen Sie Folgendes:
- Server läuft und ist erreichbar
- URL ist korrekt
- Anbieter ist korrekt konfiguriert
- API-Schlüssel ist korrekt gesetzt (falls erforderlich)

Sie können versuchen, einen anderen Anbieter auszuwählen oder die URL zu ändern:</translation>
    </message>
    <message>
        <source>Select Provider</source>
        <translation>Anbieter auswählen</translation>
    </message>
    <message>
        <source>Select URL</source>
        <translation>URL auswählen</translation>
    </message>
    <message>
        <source>Close</source>
        <translation>Schließen</translation>
    </message>
    <message>
        <source>Model Selection</source>
        <translation>Modellauswahl</translation>
    </message>
    <message>
        <source>Select from previously used models or enter a new model name.

If entering a new model name:
• For providers with automatic listing - ensure the model is installed
• For providers without listing support - check provider&apos;s documentation
• Make sure the model name matches exactly</source>
        <translation>Wählen Sie aus zuvor verwendeten Modellen oder geben Sie einen neuen Modellnamen ein.

Bei Eingabe eines neuen Modellnamens:
• Bei Anbietern mit automatischer Auflistung - stellen Sie sicher, dass das Modell installiert ist
• Bei Anbietern ohne Auflistungsunterstützung - prüfen Sie die Dokumentation des Anbieters
• Stellen Sie sicher, dass der Modellname exakt übereinstimmt</translation>
    </message>
    <message>
        <source>Model name:</source>
        <translation>Modellname:</translation>
    </message>
    <message>
        <source>OK</source>
        <translation>OK</translation>
    </message>
    <message>
        <source>Cancel</source>
        <translation>Abbrechen</translation>
    </message>
    <message>
        <source>Enter Model Manually</source>
        <translation>Modell manuell eingeben</translation>
    </message>
    <message>
        <source>URL Selection</source>
        <translation>URL-Auswahl</translation>
    </message>
    <message>
        <source>Select from the list of default and previously used URLs, or enter a custom one.
Please ensure the selected URL is accessible and the service is running.</source>
        <translation>Wählen Sie aus der Liste der Standard- und zuvor verwendeten URLs, oder geben Sie eine eigene ein.
Stellen Sie sicher, dass die ausgewählte URL erreichbar ist und der Dienst läuft.</translation>
    </message>
    <message>
        <source>Use default provider URL or from history</source>
        <translation>Standard-Anbieter-URL oder URL aus dem Verlauf verwenden</translation>
    </message>
    <message>
        <source>Enter custom URL</source>
        <translation>Benutzerdefinierte URL eingeben</translation>
    </message>
    <message>
        <source>Enter Model Name Manually</source>
        <translation>Modellnamen manuell eingeben</translation>
    </message>
    <message>
        <source>Auto Completion Settings</source>
        <translation>Einstellungen für automatische Vervollständigung</translation>
    </message>
    <message>
        <source>Add new preset for language</source>
        <translation>Neue Voreinstellung für Sprache hinzufügen</translation>
    </message>
    <message>
        <source>Save Config...</source>
        <translation>Konfiguration speichern...</translation>
    </message>
    <message>
        <source>Load Config...</source>
        <translation>Konfiguration laden...</translation>
    </message>
    <message>
        <source>Open Folder</source>
        <translation>Ordner öffnen</translation>
    </message>
    <message>
        <source>Save Configuration</source>
        <translation>Konfiguration speichern</translation>
    </message>
    <message>
        <source>Load Configuration</source>
        <translation>Konfiguration laden</translation>
    </message>
    <message>
        <source>Configuration name:</source>
        <translation>Konfigurationsname:</translation>
    </message>
    <message>
        <source>Select Configuration</source>
        <translation>Konfiguration auswählen</translation>
    </message>
    <message>
        <source>No saved configurations found.</source>
        <translation>Keine gespeicherten Konfigurationen gefunden.</translation>
    </message>
    <message>
        <source>Configuration saved successfully.</source>
        <translation>Konfiguration erfolgreich gespeichert.</translation>
    </message>
    <message>
        <source>Configuration loaded successfully.</source>
        <translation>Konfiguration erfolgreich geladen.</translation>
    </message>
    <message>
        <source>Delete</source>
        <translation>Löschen</translation>
    </message>
    <message>
        <source>Are you sure you want to delete this configuration?</source>
        <translation>Sind Sie sicher, dass Sie diese Konfiguration löschen möchten?</translation>
    </message>
    <message>
        <source>Enable Auto Complete</source>
        <translation>Automatische Vervollständigung aktivieren</translation>
    </message>
    <message>
        <source>Enable Multiline Completion</source>
        <translation>Mehrzeilige Vervollständigung aktivieren</translation>
    </message>
    <message>
        <source>Text output proccessing mode:</source>
        <translation>Verarbeitungsmodus für Textausgabe:</translation>
    </message>
    <message>
        <source>Auto: Automatically detects codeblock and applies processing when found, other text as comments
Force Processing: Always processes text with codeblock formatting and other text as comments
Raw Text: Shows unprocessed text without any formatting</source>
        <translation>Auto: Erkennt Codeblöcke automatisch und wendet bei Fund eine Verarbeitung an, anderer Text als Kommentare
Verarbeitung erzwingen: Verarbeitet Text immer mit Codeblock-Formatierung und anderen Text als Kommentare
Rohtext: Zeigt unverarbeiteten Text ohne jegliche Formatierung</translation>
    </message>
    <message>
        <source>Completion trigger mode:</source>
        <translation>Auslösemodus für Vervollständigung:</translation>
    </message>
    <message>
        <source>Hint-based: Shows a hint when typing, press Tab to request completion
Automatic: Automatically requests completion after typing threshold</source>
        <translation>Hinweisbasiert: Zeigt einen Hinweis bei der Eingabe, drücken Sie Tab, um eine Vervollständigung anzufordern
Automatisch: Fordert automatisch eine Vervollständigung nach Erreichen des Eingabeschwellwerts an</translation>
    </message>
    <message>
        <source>Completion mode:</source>
        <translation>Vervollständigungsmodus:</translation>
    </message>
    <message>
        <source>Automatic: requests completion while typing (with smart context gates).
Manual: no auto-triggering; invoke via the &apos;Request QodeAssist Suggestion&apos; shortcut (default Ctrl+Alt+Q, reconfigurable in Preferences &gt; Keyboard).</source>
        <translation>Automatisch: fordert Vervollständigung während der Eingabe an (mit intelligenten Kontext-Gates).
Manuell: keine automatische Auslösung; aufrufbar über den Shortcut &apos;QodeAssist-Vorschlag anfordern&apos; (Standard Strg+Alt+Q, in Einstellungen &gt; Tastatur neu konfigurierbar).</translation>
    </message>
    <message>
        <source>Smart context-aware triggering</source>
        <translation>Intelligente kontextbewusste Auslösung</translation>
    </message>
    <message>
        <source>When enabled, auto-completion is suppressed in places where Qt Creator&apos;s built-in completion is usually stronger (middle of an identifier, right after &apos;.&apos;, &apos;-&gt;&apos;, &apos;::&apos;) and is triggered more eagerly after structural characters like &apos;(&apos;, &apos;,&apos;, &apos;{&apos;, &apos;=&apos; and on fresh indented lines.</source>
        <translation>Wenn aktiviert, wird die automatische Vervollständigung an Stellen unterdrückt, an denen die eingebaute Vervollständigung von Qt Creator üblicherweise stärker ist (mitten in einem Bezeichner, direkt nach &apos;.&apos;, &apos;-&gt;&apos;, &apos;::&apos;), und wird nach strukturellen Zeichen wie &apos;(&apos;, &apos;,&apos;, &apos;{&apos;, &apos;=&apos; sowie in frisch eingerückten Zeilen verstärkt ausgelöst.</translation>
    </message>
    <message>
        <source>Don&apos;t dismiss Qt Creator&apos;s completion popup</source>
        <translation>Vervollständigungs-Popup von Qt Creator nicht schließen</translation>
    </message>
    <message>
        <source>When enabled, an AI completion arriving while Qt Creator&apos;s own completion popup is already visible will not force it closed. The LLM suggestion still appears inline.</source>
        <translation>Wenn aktiviert, schließt eine eintreffende KI-Vervollständigung das bereits sichtbare eigene Vervollständigungs-Popup von Qt Creator nicht zwangsweise. Der LLM-Vorschlag erscheint weiterhin inline.</translation>
    </message>
    <message>
        <source>Cancel in-flight request on new input</source>
        <translation>Laufende Anfrage bei neuer Eingabe abbrechen</translation>
    </message>
    <message>
        <source>When enabled, every new keystroke cancels any completion request already in flight and restarts the debounce timer. Useful for slow local models where an outdated answer is rarely worth waiting for.
When disabled (default), the in-flight request is kept; when the answer arrives, the plugin compares it with characters typed in the meantime and either trims the matching prefix or drops the answer.</source>
        <translation>Wenn aktiviert, bricht jeder neue Tastendruck jede bereits laufende Vervollständigungsanfrage ab und startet den Debounce-Timer neu. Nützlich für langsame lokale Modelle, bei denen eine veraltete Antwort selten das Warten wert ist.
Wenn deaktiviert (Standard), wird die laufende Anfrage beibehalten; wenn die Antwort eintrifft, vergleicht das Plugin sie mit den in der Zwischenzeit eingegebenen Zeichen und schneidet entweder das übereinstimmende Präfix ab oder verwirft die Antwort.</translation>
    </message>
    <message>
        <source>with delay(ms)</source>
        <translation>mit Verzögerung (ms)</translation>
    </message>
    <message>
        <source>Delay before sending the completion request.
(Only for Automatic trigger mode)</source>
        <translation>Verzögerung vor dem Senden der Vervollständigungsanfrage.
(Nur für automatischen Auslösemodus)</translation>
    </message>
    <message>
        <source>AI suggestion triggers after typing</source>
        <translation>KI-Vorschlag wird ausgelöst nach Eingabe von</translation>
    </message>
    <message>
        <source>The number of characters that need to be typed within the typing interval before an AI suggestion request is sent automatically.
(Only for Automatic trigger mode)</source>
        <translation>Die Anzahl der Zeichen, die innerhalb des Eingabeintervalls eingegeben werden müssen, bevor eine KI-Vorschlagsanfrage automatisch gesendet wird.
(Nur für automatischen Auslösemodus)</translation>
    </message>
    <message>
        <source>character(s) within(ms)</source>
        <translation>Zeichen innerhalb (ms)</translation>
    </message>
    <message>
        <source>The time window (in milliseconds) during which the character threshold must be met to trigger an AI suggestion request automatically.
(Only for Automatic trigger mode)</source>
        <translation>Das Zeitfenster (in Millisekunden), in dem der Zeichenschwellwert erreicht werden muss, um eine KI-Vorschlagsanfrage automatisch auszulösen.
(Nur für automatischen Auslösemodus)</translation>
    </message>
    <message>
        <source>Hint shows after typing</source>
        <translation>Hinweis wird angezeigt nach Eingabe von</translation>
    </message>
    <message>
        <source>The number of characters that need to be typed before the hint widget appears (only for Hint-based trigger mode).</source>
        <translation>Die Anzahl der Zeichen, die eingegeben werden müssen, bevor das Hinweis-Widget erscheint (nur für hinweisbasierten Auslösemodus).</translation>
    </message>
    <message>
        <source>Hint auto-hide timeout (ms)</source>
        <translation>Zeitlimit für automatisches Ausblenden des Hinweises (ms)</translation>
    </message>
    <message>
        <source>Time in milliseconds after which the hint widget will automatically hide (only for Hint-based trigger mode).</source>
        <translation>Zeit in Millisekunden, nach der das Hinweis-Widget automatisch ausgeblendet wird (nur für hinweisbasierten Auslösemodus).</translation>
    </message>
    <message>
        <source>Trigger key:</source>
        <translation>Auslösetaste:</translation>
    </message>
    <message>
        <source>Key to press for requesting completion when hint is visible.
Space is recommended as least conflicting with context menu.
(Only for Hint-based trigger mode)</source>
        <translation>Taste, die zum Anfordern der Vervollständigung gedrückt werden soll, wenn der Hinweis sichtbar ist.
Leertaste wird empfohlen, da sie am wenigsten mit dem Kontextmenü kollidiert.
(Nur für hinweisbasierten Auslösemodus)</translation>
    </message>
    <message>
        <source>Ignore spaces and tabs in character count</source>
        <translation>Leerzeichen und Tabulatoren bei Zeichenzählung ignorieren</translation>
    </message>
    <message>
        <source>When enabled, spaces and tabs are not counted towards the character threshold for triggering completions. This helps trigger completions based on actual code characters only.</source>
        <translation>Wenn aktiviert, werden Leerzeichen und Tabulatoren nicht auf den Zeichenschwellwert zum Auslösen von Vervollständigungen angerechnet. Dies hilft, Vervollständigungen nur basierend auf tatsächlichen Code-Zeichen auszulösen.</translation>
    </message>
    <message>
        <source>Temperature:</source>
        <translation>Temperatur:</translation>
    </message>
    <message>
        <source>Max Tokens:</source>
        <translation>Max. Token:</translation>
    </message>
    <message>
        <source>Top P:</source>
        <translation>Top P:</translation>
    </message>
    <message>
        <source>Top K:</source>
        <translation>Top K:</translation>
    </message>
    <message>
        <source>Presence Penalty:</source>
        <translation>Presence Penalty:</translation>
    </message>
    <message>
        <source>Frequency Penalty:</source>
        <translation>Frequency Penalty:</translation>
    </message>
    <message>
        <source>Read Full File</source>
        <translation>Gesamte Datei lesen</translation>
    </message>
    <message>
        <source>Read Strings Before Cursor:</source>
        <translation>Zeichenketten vor Cursor lesen:</translation>
    </message>
    <message>
        <source>Read Strings After Cursor:</source>
        <translation>Zeichenketten nach Cursor lesen:</translation>
    </message>
    <message>
        <source>Use System Prompt</source>
        <translation>System-Prompt verwenden</translation>
    </message>
    <message>
        <source>Use special system prompt and user message for non FIM models</source>
        <translation>Speziellen System-Prompt und Benutzernachricht für Nicht-FIM-Modelle verwenden</translation>
    </message>
    <message>
        <source>System prompt for non FIM models:</source>
        <translation>System-Prompt für Nicht-FIM-Modelle:</translation>
    </message>
    <message>
        <source>User message for non FIM models:</source>
        <translation>Benutzernachricht für Nicht-FIM-Modelle:</translation>
    </message>
    <message>
        <source>Additional Programming Languages for handling: Example: rust,//,rust rs,rs</source>
        <translation>Zusätzliche Programmiersprachen zur Behandlung: Beispiel: rust,//,rust rs,rs</translation>
    </message>
    <message>
        <source>Specify additional programming languages in format: name,comment_style,model_names,extensions
Example: rust,//,rust rs,rs
Fields: language name, comment prefix, names from LLM (space-separated), file extensions (space-separated)</source>
        <translation>Geben Sie zusätzliche Programmiersprachen im Format an: name,comment_style,model_names,extensions
Beispiel: rust,//,rust rs,rs
Felder: Sprachname, Kommentar-Präfix, Namen vom LLM (durch Leerzeichen getrennt), Dateierweiterungen (durch Leerzeichen getrennt)</translation>
    </message>
    <message>
        <source>Show progress indicator during code completion</source>
        <translation>Fortschrittsanzeige während der Code-Vervollständigung anzeigen</translation>
    </message>
    <message>
        <source>Abort existing assist on new completion request</source>
        <translation>Bestehende Assist-Anzeige bei neuer Vervollständigungsanfrage abbrechen</translation>
    </message>
    <message>
        <source>When enabled, cancels any active Qt Creator code assist popup before requesting LLM completion.
(Only for Automatic trigger mode)</source>
        <translation>Wenn aktiviert, wird jedes aktive Code-Assist-Popup von Qt Creator abgebrochen, bevor eine LLM-Vervollständigung angefordert wird.
(Nur für automatischen Auslösemodus)</translation>
    </message>
    <message>
        <source>Include context from open files</source>
        <translation>Kontext aus geöffneten Dateien einbeziehen</translation>
    </message>
    <message>
        <source>Max Changes Cache Size:</source>
        <translation>Maximale Größe des Änderungs-Caches:</translation>
    </message>
    <message>
        <source>Time to suspend Ollama after completion request (in minutes), Only Ollama,  -1 to disable</source>
        <translation>Zeit zum Aussetzen von Ollama nach Vervollständigungsanfrage (in Minuten), nur Ollama,  -1 zum Deaktivieren</translation>
    </message>
    <message>
        <source>Context Window:</source>
        <translation>Kontextfenster:</translation>
    </message>
    <message>
        <source>Reasoning effort:</source>
        <translation>Reasoning-Aufwand:</translation>
    </message>
    <message>
        <source>Constrains effort on reasoning for OpenAI gpt-5 and o-series models:

None: No reasoning (gpt-5.1 only)
Minimal: Minimal reasoning effort (o-series only)
Low: Low reasoning effort
Medium: Balanced reasoning (default for most models)
High: Maximum reasoning effort (gpt-5-pro only supports this)

Note: Reducing effort = faster responses + fewer tokens</source>
        <translation>Schränkt den Reasoning-Aufwand für OpenAI gpt-5- und o-Serie-Modelle ein:

Kein: Kein Reasoning (nur gpt-5.1)
Minimal: Minimaler Reasoning-Aufwand (nur o-Serie)
Niedrig: Geringer Reasoning-Aufwand
Mittel: Ausgewogenes Reasoning (Standard für die meisten Modelle)
Hoch: Maximaler Reasoning-Aufwand (nur gpt-5-pro unterstützt dies)

Hinweis: Geringerer Aufwand = schnellere Antworten + weniger Token</translation>
    </message>
    <message>
        <source>Prompts for FIM models</source>
        <translation>Prompts für FIM-Modelle</translation>
    </message>
    <message>
        <source>Prompts for Non FIM models</source>
        <translation>Prompts für Nicht-FIM-Modelle</translation>
    </message>
    <message>
        <source>General Settings</source>
        <translation>Allgemeine Einstellungen</translation>
    </message>
    <message>
        <source>Automatic Trigger Mode</source>
        <translation>Automatischer Auslösemodus</translation>
    </message>
    <message>
        <source>General Parameters</source>
        <translation>Allgemeine Parameter</translation>
    </message>
    <message>
        <source>Advanced Parameters</source>
        <translation>Erweiterte Parameter</translation>
    </message>
    <message>
        <source>Context Settings</source>
        <translation>Kontexteinstellungen</translation>
    </message>
    <message>
        <source>OpenAI Responses API</source>
        <translation>OpenAI Responses API</translation>
    </message>
    <message>
        <source>Ollama Settings</source>
        <translation>Ollama-Einstellungen</translation>
    </message>
    <message>
        <source>Sync open files with assistant by default</source>
        <translation>Offene Dateien standardmäßig mit Assistent synchronisieren</translation>
    </message>
    <message>
        <source>Enable autosave when message received</source>
        <translation>Automatisches Speichern bei Nachrichtenempfang aktivieren</translation>
    </message>
    <message>
        <source>Enable chat in bottom toolbar</source>
        <translation>Chat in unterer Symbolleiste aktivieren</translation>
    </message>
    <message>
        <source>Enable chat in navigation panel</source>
        <translation>Chat in Navigationsbereich aktivieren</translation>
    </message>
    <message>
        <source>Enable tools/function calling</source>
        <translation>Tools-/Function-Calling aktivieren</translation>
    </message>
    <message>
        <source>When enabled, AI can use tools to read files, search project, and build code</source>
        <translation>Wenn aktiviert, kann die KI Tools verwenden, um Dateien zu lesen, das Projekt zu durchsuchen und Code zu bauen</translation>
    </message>
    <message>
        <source>Auto-compress chat when session tokens exceed:</source>
        <translation>Chat automatisch komprimieren, wenn Sitzungs-Token überschreiten:</translation>
    </message>
    <message>
        <source>After each assistant response, if the running session token total exceeds the threshold, the chat is summarized and a new compressed chat is started automatically. The original chat is preserved on disk.</source>
        <translation>Nach jeder Assistentenantwort wird der Chat zusammengefasst und ein neuer komprimierter Chat automatisch gestartet, sofern die laufende Sitzungs-Token-Gesamtzahl den Schwellwert überschreitet. Der ursprüngliche Chat bleibt auf dem Datenträger erhalten.</translation>
    </message>
    <message>
        <source>Enable extended thinking mode.</source>
        <translation>Erweiterten Thinking-Modus aktivieren.</translation>
    </message>
    <message>
        <source>Enable extended thinking mode for complex reasoning tasks.This provides step-by-step reasoning before the final answer.Temperature is 1.0 accordingly API requirement</source>
        <translation>Erweiterten Thinking-Modus für komplexe Reasoning-Aufgaben aktivieren. Dies liefert ein schrittweises Reasoning vor der endgültigen Antwort. Die Temperatur beträgt gemäß API-Anforderung 1.0.</translation>
    </message>
    <message>
        <source>Thinking budget tokens:</source>
        <translation>Thinking-Budget-Token:</translation>
    </message>
    <message>
        <source>Maximum number of tokens Claude can use for internal reasoning. Larger budgets improve quality but increase latency. Minimum: 1024, Recommended: 10000-16000.</source>
        <translation>Maximale Anzahl von Token, die Claude für internes Reasoning verwenden kann. Größere Budgets verbessern die Qualität, erhöhen aber die Latenz. Minimum: 1024, empfohlen: 10000-16000.</translation>
    </message>
    <message>
        <source>Thinking mode max output tokens:</source>
        <translation>Maximale Ausgabe-Token im Thinking-Modus:</translation>
    </message>
    <message>
        <source>Maximum number of tokens for the final response when thinking mode is enabled. Set to -1 to use the default max tokens setting. Recommended: 4096-16000.</source>
        <translation>Maximale Anzahl von Token für die endgültige Antwort, wenn der Thinking-Modus aktiviert ist. Auf -1 setzen, um die Standardeinstellung für maximale Token zu verwenden. Empfohlen: 4096-16000.</translation>
    </message>
    <message>
        <source>Text Font:</source>
        <translation>Textschrift:</translation>
    </message>
    <message>
        <source>Text Font Size:</source>
        <translation>Textschriftgröße:</translation>
    </message>
    <message>
        <source>Code Font:</source>
        <translation>Codeschrift:</translation>
    </message>
    <message>
        <source>Code Font Size:</source>
        <translation>Codeschriftgröße:</translation>
    </message>
    <message>
        <source>Text Format:</source>
        <translation>Textformat:</translation>
    </message>
    <message>
        <source>Chat Renderer:</source>
        <translation>Chat-Renderer:</translation>
    </message>
    <message>
        <source>Chat Settings</source>
        <translation>Chat-Einstellungen</translation>
    </message>
    <message>
        <source>Tools</source>
        <translation>Tools</translation>
    </message>
    <message>
        <source>Extended Thinking (Claude)</source>
        <translation>Erweitertes Thinking (Claude)</translation>
    </message>
    <message>
        <source>Agent Roles</source>
        <translation>Agent-Rollen</translation>
    </message>
    <message>
        <source>Enable Tools</source>
        <translation>Tools aktivieren</translation>
    </message>
    <message>
        <source>Enable AI tools/functions for quick refactoring (allows reading project files, searching code, etc.)</source>
        <translation>KI-Tools/-Funktionen für schnelles Refactoring aktivieren (ermöglicht das Lesen von Projektdateien, Codesuche usw.)</translation>
    </message>
    <message>
        <source>Enable Thinking Mode</source>
        <translation>Thinking-Modus aktivieren</translation>
    </message>
    <message>
        <source>Enable extended thinking mode for complex refactoring tasks (supported by compatible models like Claude and Google AI)</source>
        <translation>Erweiterten Thinking-Modus für komplexe Refactoring-Aufgaben aktivieren (unterstützt von kompatiblen Modellen wie Claude und Google AI)</translation>
    </message>
    <message>
        <source>Thinking Budget Tokens:</source>
        <translation>Thinking-Budget-Token:</translation>
    </message>
    <message>
        <source>Number of tokens allocated for thinking process. Use -1 for dynamic thinking (model decides), 0 to disable, or positive value for custom budget</source>
        <translation>Anzahl der für den Thinking-Prozess zugewiesenen Token. Verwenden Sie -1 für dynamisches Thinking (Modell entscheidet), 0 zum Deaktivieren oder einen positiven Wert für ein benutzerdefiniertes Budget</translation>
    </message>
    <message>
        <source>Thinking Max Output Tokens:</source>
        <translation>Maximale Ausgabe-Token im Thinking:</translation>
    </message>
    <message>
        <source>Maximum output tokens when thinking mode is enabled (includes thinking + response)</source>
        <translation>Maximale Ausgabe-Token, wenn der Thinking-Modus aktiviert ist (umfasst Thinking + Antwort)</translation>
    </message>
    <message>
        <source>Lines Before Cursor/Selection:</source>
        <translation>Zeilen vor Cursor/Auswahl:</translation>
    </message>
    <message>
        <source>Number of lines to include before cursor or selection for context</source>
        <translation>Anzahl der Zeilen, die vor Cursor oder Auswahl für den Kontext einbezogen werden</translation>
    </message>
    <message>
        <source>Lines After Cursor/Selection:</source>
        <translation>Zeilen nach Cursor/Auswahl:</translation>
    </message>
    <message>
        <source>Number of lines to include after cursor or selection for context</source>
        <translation>Anzahl der Zeilen, die nach Cursor oder Auswahl für den Kontext einbezogen werden</translation>
    </message>
    <message>
        <source>Display Mode:</source>
        <translation>Anzeigemodus:</translation>
    </message>
    <message>
        <source>Choose how to display refactoring suggestions:
- Inline Widget: Shows refactor in a widget overlay with Apply/Decline buttons (default)
- Qt Creator Suggestion: Uses Qt Creator&apos;s built-in suggestion system</source>
        <translation>Wählen Sie, wie Refactoring-Vorschläge angezeigt werden sollen:
- Inline-Widget: Zeigt das Refactoring in einem Widget-Overlay mit Schaltflächen Anwenden/Ablehnen an (Standard)
- Qt Creator-Vorschlag: Verwendet das in Qt Creator integrierte Vorschlagssystem</translation>
    </message>
    <message>
        <source>Inline Widget</source>
        <translation>Inline-Widget</translation>
    </message>
    <message>
        <source>Qt Creator Suggestion</source>
        <translation>Qt Creator-Vorschlag</translation>
    </message>
    <message>
        <source>Widget Orientation:</source>
        <translation>Widget-Ausrichtung:</translation>
    </message>
    <message>
        <source>Choose default orientation for refactor widget:
- Horizontal: Original and refactored code side by side (default)
- Vertical: Original and refactored code stacked vertically</source>
        <translation>Standardausrichtung für Refactoring-Widget wählen:
- Horizontal: Original- und refaktorierter Code nebeneinander (Standard)
- Vertikal: Original- und refaktorierter Code vertikal gestapelt</translation>
    </message>
    <message>
        <source>Horizontal</source>
        <translation>Horizontal</translation>
    </message>
    <message>
        <source>Vertical</source>
        <translation>Vertikal</translation>
    </message>
    <message>
        <source>Widget Minimum Width:</source>
        <translation>Minimale Widget-Breite:</translation>
    </message>
    <message>
        <source>Minimum width for the refactor widget (in pixels)</source>
        <translation>Minimale Breite für das Refactoring-Widget (in Pixel)</translation>
    </message>
    <message>
        <source>Widget Maximum Width:</source>
        <translation>Maximale Widget-Breite:</translation>
    </message>
    <message>
        <source>Maximum width for the refactor widget (in pixels)</source>
        <translation>Maximale Breite für das Refactoring-Widget (in Pixel)</translation>
    </message>
    <message>
        <source>Widget Minimum Height:</source>
        <translation>Minimale Widget-Höhe:</translation>
    </message>
    <message>
        <source>Minimum height for the refactor widget (in pixels)</source>
        <translation>Minimale Höhe für das Refactoring-Widget (in Pixel)</translation>
    </message>
    <message>
        <source>Widget Maximum Height:</source>
        <translation>Maximale Widget-Höhe:</translation>
    </message>
    <message>
        <source>Maximum height for the refactor widget (in pixels)</source>
        <translation>Maximale Höhe für das Refactoring-Widget (in Pixel)</translation>
    </message>
    <message>
        <source>System Prompt:</source>
        <translation>System-Prompt:</translation>
    </message>
    <message>
        <source>Include context from open files in quick refactor</source>
        <translation>Kontext aus geöffneten Dateien in schnelles Refactoring einbeziehen</translation>
    </message>
    <message>
        <source>Tools Settings</source>
        <translation>Tools-Einstellungen</translation>
    </message>
    <message>
        <source>Display Settings</source>
        <translation>Anzeigeeinstellungen</translation>
    </message>
    <message>
        <source>Prompt Settings</source>
        <translation>Prompt-Einstellungen</translation>
    </message>
    <message>
        <source>Allow file access outside project</source>
        <translation>Dateizugriff außerhalb des Projekts erlauben</translation>
    </message>
    <message>
        <source>Allow tools to read, write, and create files outside the project scope (system headers, Qt files, external libraries).</source>
        <translation>Tools erlauben, Dateien außerhalb des Projektrahmens zu lesen, zu schreiben und zu erstellen (System-Header, Qt-Dateien, externe Bibliotheken).</translation>
    </message>
    <message>
        <source>Automatically apply file edits</source>
        <translation>Dateibearbeitungen automatisch anwenden</translation>
    </message>
    <message>
        <source>When enabled, file edits suggested by AI are applied immediately. When disabled, each edit is staged for manual approval.</source>
        <translation>Wenn aktiviert, werden von der KI vorgeschlagene Dateibearbeitungen sofort angewendet. Wenn deaktiviert, wird jede Bearbeitung zur manuellen Genehmigung vorgemerkt.</translation>
    </message>
    <message>
        <source>Max tool continuations:</source>
        <translation>Maximale Tool-Fortsetzungen:</translation>
    </message>
    <message>
        <source>Maximum number of consecutive tool-use rounds in a single request. Each round lets the model call tools and receive results before continuing. Higher values allow more complex multi-step tasks but increase token usage.</source>
        <translation>Maximale Anzahl aufeinanderfolgender Tool-Verwendungsrunden in einer einzelnen Anfrage. Jede Runde ermöglicht es dem Modell, Tools aufzurufen und Ergebnisse zu erhalten, bevor es fortfährt. Höhere Werte ermöglichen komplexere mehrstufige Aufgaben, erhöhen aber den Token-Verbrauch.</translation>
    </message>
    <message>
        <source>List Project Files</source>
        <translation>Projektdateien auflisten</translation>
    </message>
    <message>
        <source>Lists every source file tracked by the active Qt Creator project(s).</source>
        <translation>Listet jede Quelldatei auf, die vom aktiven Qt Creator-Projekt verfolgt wird.</translation>
    </message>
    <message>
        <source>Find File</source>
        <translation>Datei suchen</translation>
    </message>
    <message>
        <source>Locates a file in the project by name or partial path. Returns paths only, without file content.</source>
        <translation>Findet eine Datei im Projekt anhand von Name oder Teilpfad. Gibt nur Pfade zurück, ohne Dateiinhalt.</translation>
    </message>
    <message>
        <source>Read File</source>
        <translation>Datei lesen</translation>
    </message>
    <message>
        <source>Reads the content of a file by absolute path or path relative to the project root.</source>
        <translation>Liest den Inhalt einer Datei anhand des absoluten Pfads oder eines Pfads relativ zum Projekt-Stammverzeichnis.</translation>
    </message>
    <message>
        <source>Search in Project</source>
        <translation>Im Projekt suchen</translation>
    </message>
    <message>
        <source>Searches project files for text occurrences or C++ symbol definitions.</source>
        <translation>Durchsucht Projektdateien nach Textvorkommen oder C++-Symboldefinitionen.</translation>
    </message>
    <message>
        <source>Create New File</source>
        <translation>Neue Datei erstellen</translation>
    </message>
    <message>
        <source>Creates a new empty file at the given absolute path, making missing directories.</source>
        <translation>Erstellt eine neue leere Datei am angegebenen absoluten Pfad und legt fehlende Verzeichnisse an.</translation>
    </message>
    <message>
        <source>Edit File</source>
        <translation>Datei bearbeiten</translation>
    </message>
    <message>
        <source>Applies find-and-replace edits to files. See &quot;Automatically apply file edits&quot; to control whether edits apply immediately or wait for review.</source>
        <translation>Wendet Suchen-und-Ersetzen-Bearbeitungen auf Dateien an. Siehe &quot;Dateibearbeitungen automatisch anwenden&quot;, um zu steuern, ob Bearbeitungen sofort angewendet werden oder auf eine Überprüfung warten.</translation>
    </message>
    <message>
        <source>Build Project</source>
        <translation>Projekt bauen</translation>
    </message>
    <message>
        <source>Triggers a build of the active Qt Creator project and reports the result.</source>
        <translation>Löst einen Build des aktiven Qt Creator-Projekts aus und meldet das Ergebnis.</translation>
    </message>
    <message>
        <source>Get Issues List</source>
        <translation>Problemliste abrufen</translation>
    </message>
    <message>
        <source>Reads compiler/clang diagnostics from Qt Creator&apos;s Issues panel.</source>
        <translation>Liest Compiler-/Clang-Diagnosen aus dem Probleme-Bereich von Qt Creator.</translation>
    </message>
    <message>
        <source>Execute Terminal Command</source>
        <translation>Terminalbefehl ausführen</translation>
    </message>
    <message>
        <source>Runs a command from the OS-specific allowed list below, in the project directory.</source>
        <translation>Führt einen Befehl aus der unten stehenden, betriebssystemspezifischen erlaubten Liste im Projektverzeichnis aus.</translation>
    </message>
    <message>
        <source>Todo</source>
        <translation>Todo</translation>
    </message>
    <message>
        <source>Lets the AI maintain a session-scoped todo list for multi-step workflows.</source>
        <translation>Lässt die KI eine sitzungsweite Todo-Liste für mehrstufige Workflows pflegen.</translation>
    </message>
    <message>
        <source>Read Original History (Pre-Compression)</source>
        <translation>Originalverlauf lesen (vor Komprimierung)</translation>
    </message>
    <message>
        <source>Lets the AI read the original, full chat history from before the conversation was compressed into a summary. Useful when a detail is missing from the summary currently in context. Has no effect if the chat was never compressed.</source>
        <translation>Lässt die KI den ursprünglichen, vollständigen Chatverlauf von vor der Komprimierung der Unterhaltung in eine Zusammenfassung lesen. Nützlich, wenn ein Detail in der aktuell im Kontext befindlichen Zusammenfassung fehlt. Hat keine Auswirkung, wenn der Chat nie komprimiert wurde.</translation>
    </message>
    <message>
        <source>Load Skill</source>
        <translation>Skill laden</translation>
    </message>
    <message>
        <source>Lets the AI load the full instructions of a skill on demand. The Available Skills catalog in the system prompt lists each skill; this tool pulls a skill&apos;s complete instructions into context when needed.</source>
        <translation>Lässt die KI die vollständigen Anweisungen eines Skills bei Bedarf laden. Der Katalog der verfügbaren Skills im System-Prompt listet jeden Skill auf; dieses Tool zieht bei Bedarf die vollständigen Anweisungen eines Skills in den Kontext.</translation>
    </message>
    <message>
        <source>Allowed Commands (Linux)</source>
        <translation>Erlaubte Befehle (Linux)</translation>
    </message>
    <message>
        <source>Comma-separated list of terminal commands that AI is allowed to execute on Linux. Example: git, ls, cat, grep, find, cmake</source>
        <translation>Kommagetrennte Liste von Terminalbefehlen, die die KI unter Linux ausführen darf. Beispiel: git, ls, cat, grep, find, cmake</translation>
    </message>
    <message>
        <source>Allowed Commands (macOS)</source>
        <translation>Erlaubte Befehle (macOS)</translation>
    </message>
    <message>
        <source>Comma-separated list of terminal commands that AI is allowed to execute on macOS. Example: git, ls, cat, grep, find, cmake</source>
        <translation>Kommagetrennte Liste von Terminalbefehlen, die die KI unter macOS ausführen darf. Beispiel: git, ls, cat, grep, find, cmake</translation>
    </message>
    <message>
        <source>Allowed Commands (Windows)</source>
        <translation>Erlaubte Befehle (Windows)</translation>
    </message>
    <message>
        <source>Comma-separated list of terminal commands that AI is allowed to execute on Windows. Example: git, dir, type, findstr, where, cmake</source>
        <translation>Kommagetrennte Liste von Terminalbefehlen, die die KI unter Windows ausführen darf. Beispiel: git, dir, type, findstr, where, cmake</translation>
    </message>
    <message>
        <source>Command Timeout (seconds)</source>
        <translation>Befehls-Zeitlimit (Sekunden)</translation>
    </message>
    <message>
        <source>Maximum time in seconds to wait for a terminal command to complete. Increase for long-running commands like builds.</source>
        <translation>Maximale Zeit in Sekunden, die auf den Abschluss eines Terminalbefehls gewartet wird. Bei lang laufenden Befehlen wie Builds erhöhen.</translation>
    </message>
    <message>
        <source>Tool Settings</source>
        <translation>Tool-Einstellungen</translation>
    </message>
    <message>
        <source>Skills</source>
        <translation>Skills</translation>
    </message>
    <message>
        <source>Enable skills</source>
        <translation>Skills aktivieren</translation>
    </message>
    <message>
        <source>Discover Agent Skills from the configured skill directories and expose them to the chat assistant. Each skill is a folder containing a SKILL.md file.</source>
        <translation>Agent-Skills aus den konfigurierten Skill-Verzeichnissen erkennen und dem Chat-Assistenten zur Verfügung stellen. Jeder Skill ist ein Ordner, der eine SKILL.md-Datei enthält.</translation>
    </message>
    <message>
        <source>Global skill directories:</source>
        <translation>Globale Skill-Verzeichnisse:</translation>
    </message>
    <message>
        <source>Absolute paths scanned for skills, one per line. Each path is a directory whose subfolders contain SKILL.md files. A leading ~ expands to your home directory. Lets QodeAssist pick up skills shared with other agents (e.g. ~/.claude/skills).</source>
        <translation>Absolute Pfade, die nach Skills durchsucht werden, einer pro Zeile. Jeder Pfad ist ein Verzeichnis, dessen Unterordner SKILL.md-Dateien enthalten. Ein führendes ~ wird auf Ihr Heimatverzeichnis erweitert. Ermöglicht QodeAssist, Skills aufzunehmen, die mit anderen Agenten geteilt werden (z. B. ~/.claude/skills).</translation>
    </message>
    <message>
        <source>No skills discovered.</source>
        <translation>Keine Skills erkannt.</translation>
    </message>
    <message>
        <source>Skill Directories</source>
        <translation>Skill-Verzeichnisse</translation>
    </message>
    <message>
        <source>Discovered global skills:</source>
        <translation>Erkannte globale Skills:</translation>
    </message>
    <message>
        <source>MCP</source>
        <translation>MCP</translation>
    </message>
    <message>
        <source>Enable MCP server</source>
        <translation>MCP-Server aktivieren</translation>
    </message>
    <message>
        <source>Expose QodeAssist tools to external MCP clients over HTTP. Which tools are visible is controlled on the client side.</source>
        <translation>QodeAssist-Tools über HTTP für externe MCP-Clients bereitstellen. Welche Tools sichtbar sind, wird clientseitig gesteuert.</translation>
    </message>
    <message>
        <source>Server port</source>
        <translation>Server-Port</translation>
    </message>
    <message>
        <source>TCP port the MCP server listens on (localhost only). Requires restart of the server after change.</source>
        <translation>TCP-Port, auf dem der MCP-Server lauscht (nur localhost). Nach Änderung ist ein Neustart des Servers erforderlich.</translation>
    </message>
    <message>
        <source>Connect to external MCP servers</source>
        <translation>Mit externen MCP-Servern verbinden</translation>
    </message>
    <message>
        <source>Connect to MCP servers listed in mcp-server.json and expose their tools to chat/quick-refactor/code-completion. Toggling this off disconnects all currently running MCP client sessions.</source>
        <translation>Mit MCP-Servern verbinden, die in mcp-server.json aufgeführt sind, und deren Tools für Chat/schnelles Refactoring/Code-Vervollständigung bereitstellen. Wenn deaktiviert, werden alle aktuell laufenden MCP-Client-Sitzungen getrennt.</translation>
    </message>
    <message>
        <source>Extra PATH for stdio servers</source>
        <translation>Zusätzlicher PATH für stdio-Server</translation>
    </message>
    <message>
        <source>Directories to prepend to PATH when launching stdio MCP servers. Useful when Qt Creator is started from the dock and doesn&apos;t see Homebrew, nvm, uv, etc. Separate multiple entries with &apos;%1&apos;. Per-server &apos;env&apos; overrides in mcp-server.json still win.</source>
        <translation>Verzeichnisse, die beim Starten von stdio-MCP-Servern dem PATH vorangestellt werden. Nützlich, wenn Qt Creator aus dem Dock gestartet wird und Homebrew, nvm, uv usw. nicht sieht. Mehrere Einträge mit &apos;%1&apos; trennen. Server-spezifische &apos;env&apos;-Überschreibungen in mcp-server.json haben weiterhin Vorrang.</translation>
    </message>
    <message>
        <source>How to connect...</source>
        <translation>Wie verbinden...</translation>
    </message>
    <message>
        <source>Server</source>
        <translation>Server</translation>
    </message>
    <message>
        <source>Clients</source>
        <translation>Clients</translation>
    </message>
    <message>
        <source>Connect to QodeAssist MCP</source>
        <translation>Mit QodeAssist MCP verbinden</translation>
    </message>
    <message>
        <source>Server URL: &lt;code&gt;%1&lt;/code&gt;. If your MCP client speaks HTTP/SSE natively, use the &lt;b&gt;Direct&lt;/b&gt; tab. If it only speaks stdio (e.g. Claude Desktop), use the &lt;b&gt;Bridge&lt;/b&gt; tab.</source>
        <translation>Server-URL: &lt;code&gt;%1&lt;/code&gt;. Wenn Ihr MCP-Client nativ HTTP/SSE spricht, verwenden Sie den Tab &lt;b&gt;Direkt&lt;/b&gt;. Wenn er nur stdio spricht (z. B. Claude Desktop), verwenden Sie den Tab &lt;b&gt;Bridge&lt;/b&gt;.</translation>
    </message>
    <message>
        <source>Copy</source>
        <translation>Kopieren</translation>
    </message>
    <message>
        <source>&lt;b&gt;Claude Code&lt;/b&gt; (CLI): run once —</source>
        <translation>&lt;b&gt;Claude Code&lt;/b&gt; (CLI): einmalig ausführen —</translation>
    </message>
    <message>
        <source>&lt;b&gt;VS Code&lt;/b&gt;: save as &lt;code&gt;.vscode/mcp.json&lt;/code&gt; in the workspace:</source>
        <translation>&lt;b&gt;VS Code&lt;/b&gt;: als &lt;code&gt;.vscode/mcp.json&lt;/code&gt; im Workspace speichern:</translation>
    </message>
    <message>
        <source>Any other client that reads an &lt;code&gt;mcpServers&lt;/code&gt; JSON block:</source>
        <translation>Jeder andere Client, der einen &lt;code&gt;mcpServers&lt;/code&gt;-JSON-Block liest:</translation>
    </message>
    <message>
        <source>Direct (HTTP/SSE)</source>
        <translation>Direkt (HTTP/SSE)</translation>
    </message>
    <message>
        <source>&lt;b&gt;1.&lt;/b&gt; Download &lt;code&gt;mcp-bridge&lt;/code&gt; for your OS from &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;.</source>
        <translation>&lt;b&gt;1.&lt;/b&gt; Laden Sie &lt;code&gt;mcp-bridge&lt;/code&gt; für Ihr Betriebssystem herunter von &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;.</translation>
    </message>
    <message>
        <source>&lt;b&gt;2.&lt;/b&gt; Save the following as &lt;code&gt;mcp-bridge.json&lt;/code&gt;:</source>
        <translation>&lt;b&gt;2.&lt;/b&gt; Speichern Sie Folgendes als &lt;code&gt;mcp-bridge.json&lt;/code&gt;:</translation>
    </message>
    <message>
        <source>&lt;b&gt;3.&lt;/b&gt; Point the stdio-only client at the bridge. Example for &lt;code&gt;claude_desktop_config.json&lt;/code&gt;:</source>
        <translation>&lt;b&gt;3.&lt;/b&gt; Richten Sie den stdio-only-Client auf die Bridge aus. Beispiel für &lt;code&gt;claude_desktop_config.json&lt;/code&gt;:</translation>
    </message>
    <message>
        <source>Bridge (stdio)</source>
        <translation>Bridge (stdio)</translation>
    </message>
    <message>
        <source>Chat History Path:</source>
        <translation>Pfad für Chatverlauf:</translation>
    </message>
    <message>
        <source>Skill directories:</source>
        <translation>Skill-Verzeichnisse:</translation>
    </message>
    <message>
        <source>Project-relative subdirectories scanned for Agent Skills, one per line. Resolved against the project root. These take priority over the global skill directories when a skill name appears in both.</source>
        <translation>Projektrelative Unterverzeichnisse, die nach Agent-Skills durchsucht werden, eines pro Zeile. Werden relativ zum Projekt-Stammverzeichnis aufgelöst. Diese haben Vorrang vor den globalen Skill-Verzeichnissen, wenn ein Skill-Name in beiden erscheint.</translation>
    </message>
    <message>
        <source>Discovered project skills:</source>
        <translation>Erkannte Projekt-Skills:</translation>
    </message>
    <message>
        <source>QodeAssist</source>
        <translation>QodeAssist</translation>
    </message>
    <message>
        <source>Provider Settings</source>
        <translation>Anbieter-Einstellungen</translation>
    </message>
    <message>
        <source>OpenRouter API Key:</source>
        <translation>OpenRouter API-Schlüssel:</translation>
    </message>
    <message>
        <source>Enter your API key here</source>
        <translation>API-Schlüssel hier eingeben</translation>
    </message>
    <message>
        <source>OpenAI Compatible API Key:</source>
        <translation>OpenAI-kompatibler API-Schlüssel:</translation>
    </message>
    <message>
        <source>Claude API Key:</source>
        <translation>Claude API-Schlüssel:</translation>
    </message>
    <message>
        <source>Enable prompt caching</source>
        <translation>Prompt-Caching aktivieren</translation>
    </message>
    <message>
        <source>Marks the system prompt, tool definitions, and stable chat history with cache_control so Anthropic caches the request prefix (5-minute TTL). Reduces cost and latency on repeated turns.</source>
        <translation>Markiert den System-Prompt, Tool-Definitionen und den stabilen Chatverlauf mit cache_control, sodass Anthropic das Anfrage-Präfix zwischenspeichert (5-Minuten-TTL). Reduziert Kosten und Latenz bei wiederholten Runden.</translation>
    </message>
    <message>
        <source>Use 1h cache TTL (beta)</source>
        <translation>1h Cache-TTL verwenden (Beta)</translation>
    </message>
    <message>
        <source>Requests Anthropic&apos;s 1-hour cache TTL instead of the default 5 minutes. Sends the extended-cache-ttl-2025-04-11 beta header.</source>
        <translation>Fordert Anthropics 1-Stunden-Cache-TTL anstelle der Standard 5 Minuten an. Sendet den Beta-Header extended-cache-ttl-2025-04-11.</translation>
    </message>
    <message>
        <source>OpenAI API Key:</source>
        <translation>OpenAI API-Schlüssel:</translation>
    </message>
    <message>
        <source>Mistral AI API Key:</source>
        <translation>Mistral AI API-Schlüssel:</translation>
    </message>
    <message>
        <source>Codestral API Key:</source>
        <translation>Codestral API-Schlüssel:</translation>
    </message>
    <message>
        <source>Google AI API Key:</source>
        <translation>Google AI API-Schlüssel:</translation>
    </message>
    <message>
        <source>Ollama(Bearer) API Key:</source>
        <translation>Ollama(Bearer) API-Schlüssel:</translation>
    </message>
    <message>
        <source>llama.cpp API Key:</source>
        <translation>llama.cpp API-Schlüssel:</translation>
    </message>
    <message>
        <source>Qwen API Key:</source>
        <translation>Qwen API-Schlüssel:</translation>
    </message>
    <message>
        <source>DeepSeek API Key:</source>
        <translation>DeepSeek API-Schlüssel:</translation>
    </message>
    <message>
        <source>OpenRouter Settings</source>
        <translation>OpenRouter-Einstellungen</translation>
    </message>
    <message>
        <source>OpenAI Settings</source>
        <translation>OpenAI-Einstellungen</translation>
    </message>
    <message>
        <source>OpenAI Compatible Settings</source>
        <translation>OpenAI-kompatible Einstellungen</translation>
    </message>
    <message>
        <source>Claude Settings</source>
        <translation>Claude-Einstellungen</translation>
    </message>
    <message>
        <source>Mistral AI Settings</source>
        <translation>Mistral AI-Einstellungen</translation>
    </message>
    <message>
        <source>Google AI Settings</source>
        <translation>Google AI-Einstellungen</translation>
    </message>
    <message>
        <source>llama.cpp Settings</source>
        <translation>llama.cpp-Einstellungen</translation>
    </message>
    <message>
        <source>Qwen (Alibaba) Settings</source>
        <translation>Qwen (Alibaba)-Einstellungen</translation>
    </message>
    <message>
        <source>DeepSeek Settings</source>
        <translation>DeepSeek-Einstellungen</translation>
    </message>
    <message>
        <source>Agent roles define different system prompts for specific tasks.</source>
        <translation>Agent-Rollen definieren unterschiedliche System-Prompts für bestimmte Aufgaben.</translation>
    </message>
    <message>
        <source>Open Roles Folder...</source>
        <translation>Rollenordner öffnen...</translation>
    </message>
    <message>
        <source>Add...</source>
        <translation>Hinzufügen...</translation>
    </message>
    <message>
        <source>Edit...</source>
        <translation>Bearbeiten...</translation>
    </message>
    <message>
        <source>Duplicate...</source>
        <translation>Duplizieren...</translation>
    </message>
    <message>
        <source>(Built-in role)</source>
        <translation>(Integrierte Rolle)</translation>
    </message>
    <message>
        <source>Role Already Exists</source>
        <translation>Rolle existiert bereits</translation>
    </message>
    <message>
        <source>A role with ID &apos;%1&apos; already exists. Please use a different ID.</source>
        <translation>Eine Rolle mit der ID &apos;%1&apos; existiert bereits. Bitte verwenden Sie eine andere ID.</translation>
    </message>
    <message>
        <source>Error</source>
        <translation>Fehler</translation>
    </message>
    <message>
        <source>Failed to save role &apos;%1&apos;.</source>
        <translation>Rolle &apos;%1&apos; konnte nicht gespeichert werden.</translation>
    </message>
    <message>
        <source>Cannot Edit Built-in Role</source>
        <translation>Integrierte Rolle kann nicht bearbeitet werden</translation>
    </message>
    <message>
        <source>Built-in roles cannot be edited. You can duplicate this role and modify the copy.</source>
        <translation>Integrierte Rollen können nicht bearbeitet werden. Sie können diese Rolle duplizieren und die Kopie ändern.</translation>
    </message>
    <message>
        <source>Failed to update role &apos;%1&apos;.</source>
        <translation>Rolle &apos;%1&apos; konnte nicht aktualisiert werden.</translation>
    </message>
    <message>
        <source>Failed to duplicate role.</source>
        <translation>Rolle konnte nicht dupliziert werden.</translation>
    </message>
    <message>
        <source>Cannot Delete Built-in Role</source>
        <translation>Integrierte Rolle kann nicht gelöscht werden</translation>
    </message>
    <message>
        <source>Built-in roles cannot be deleted.</source>
        <translation>Integrierte Rollen können nicht gelöscht werden.</translation>
    </message>
    <message>
        <source>Delete Role</source>
        <translation>Rolle löschen</translation>
    </message>
    <message>
        <source>Are you sure you want to delete the role &apos;%1&apos;?</source>
        <translation>Sind Sie sicher, dass Sie die Rolle &apos;%1&apos; löschen möchten?</translation>
    </message>
    <message>
        <source>Failed to delete role &apos;%1&apos;.</source>
        <translation>Rolle &apos;%1&apos; konnte nicht gelöscht werden.</translation>
    </message>
    <message>
        <source>Generate QodeAssist suggestion at the current cursor position.</source>
        <translation>QodeAssist-Vorschlag an der aktuellen Cursorposition generieren.</translation>
    </message>
    <message>
        <source>Request QodeAssist Suggestion</source>
        <translation>QodeAssist-Vorschlag anfordern</translation>
    </message>
    <message>
        <source>Refactor code using QodeAssist</source>
        <translation>Code mit QodeAssist refaktorieren</translation>
    </message>
    <message>
        <source>Quick Refactor with QodeAssist</source>
        <translation>Schnelles Refactoring mit QodeAssist</translation>
    </message>
    <message>
        <source>Open QodeAssist Chat as an editor tab</source>
        <translation>QodeAssist Chat als Editor-Tab öffnen</translation>
    </message>
    <message>
        <source>Show QodeAssist Chat</source>
        <translation>QodeAssist Chat anzeigen</translation>
    </message>
    <message>
        <source>Close QodeAssist Chat</source>
        <translation>QodeAssist Chat schließen</translation>
    </message>
    <message>
        <source>Open QodeAssist Chat in Separate Window</source>
        <translation>QodeAssist Chat in separatem Fenster öffnen</translation>
    </message>
    <message>
        <source>Open the QodeAssist chat in a separate window</source>
        <translation>Den QodeAssist-Chat in einem separaten Fenster öffnen</translation>
    </message>
    <message>
        <source>New QodeAssist Chat</source>
        <translation>Neuer QodeAssist Chat</translation>
    </message>
    <message>
        <source>Open a fresh chat in a new editor tab</source>
        <translation>Einen neuen Chat in einem neuen Editor-Tab öffnen</translation>
    </message>
    <message>
        <source>Send QodeAssist Chat Message</source>
        <translation>QodeAssist-Chatnachricht senden</translation>
    </message>
    <message>
        <source>Send the current message to the LLM</source>
        <translation>Die aktuelle Nachricht an das LLM senden</translation>
    </message>
    <message>
        <source>Clear QodeAssist Chat Session</source>
        <translation>QodeAssist-Chat-Sitzung leeren</translation>
    </message>
    <message>
        <source>Clear the current chat session</source>
        <translation>Die aktuelle Chat-Sitzung leeren</translation>
    </message>
    <message>
        <source>QodeAssist Chat</source>
        <translation>QodeAssist Chat</translation>
    </message>
    <message>
        <source>Chat in Bottom Panel</source>
        <translation>Chat im unteren Bereich</translation>
    </message>
    <message>
        <source>Chat in Sidebar</source>
        <translation>Chat in Seitenleiste</translation>
    </message>
    <message>
        <source>Open Chat in Editor</source>
        <translation>Chat im Editor öffnen</translation>
    </message>
    <message>
        <source>Open Chat in Separate Window</source>
        <translation>Chat in separatem Fenster öffnen</translation>
    </message>
    <message>
        <source>Select LLM Provider</source>
        <translation>LLM-Anbieter auswählen</translation>
    </message>
    <message>
        <source>Providers:</source>
        <translation>Anbieter:</translation>
    </message>
    <message>
        <source>Select LLM Model</source>
        <translation>LLM-Modell auswählen</translation>
    </message>
    <message>
        <source>Models:</source>
        <translation>Modelle:</translation>
    </message>
    <message>
        <source>Select Template</source>
        <translation>Vorlage auswählen</translation>
    </message>
    <message>
        <source>Templates:</source>
        <translation>Vorlagen:</translation>
    </message>
    <message>
        <source>Switch AI configuration</source>
        <translation>KI-Konfiguration wechseln</translation>
    </message>
    <message>
        <source>Enable/Disable AI Tools</source>
        <translation>KI-Tools aktivieren/deaktivieren</translation>
    </message>
    <message>
        <source>Enable/Disable Thinking Mode</source>
        <translation>Thinking-Modus aktivieren/deaktivieren</translation>
    </message>
    <message>
        <source>Open Quick Refactor Settings</source>
        <translation>Einstellungen für schnelles Refactoring öffnen</translation>
    </message>
    <message>
        <source>Your Current Instruction:</source>
        <translation>Ihre aktuelle Anweisung:</translation>
    </message>
    <message>
        <source>Type or edit your instruction...</source>
        <translation>Geben Sie Ihre Anweisung ein oder bearbeiten Sie sie...</translation>
    </message>
    <message>
        <source>Or Load saved:</source>
        <translation>Oder gespeicherte laden:</translation>
    </message>
    <message>
        <source>Search saved instructions...</source>
        <translation>Gespeicherte Anweisungen durchsuchen...</translation>
    </message>
    <message>
        <source>Add Custom Instruction</source>
        <translation>Benutzerdefinierte Anweisung hinzufügen</translation>
    </message>
    <message>
        <source>Edit Custom Instruction</source>
        <translation>Benutzerdefinierte Anweisung bearbeiten</translation>
    </message>
    <message>
        <source>Delete Custom Instruction</source>
        <translation>Benutzerdefinierte Anweisung löschen</translation>
    </message>
    <message>
        <source>Open Instructions Folder</source>
        <translation>Anweisungsordner öffnen</translation>
    </message>
    <message>
        <source>Repeat Last Instructions</source>
        <translation>Letzte Anweisungen wiederholen</translation>
    </message>
    <message>
        <source>Improve Current Code</source>
        <translation>Aktuellen Code verbessern</translation>
    </message>
    <message>
        <source>Suggest Alternative Solution</source>
        <translation>Alternative Lösung vorschlagen</translation>
    </message>
    <message>
        <source>Improve the selected code by enhancing readability, efficiency, and maintainability. Follow best practices for C++/Qt and fix any potential issues.</source>
        <translation>Verbessern Sie den ausgewählten Code durch Erhöhung von Lesbarkeit, Effizienz und Wartbarkeit. Befolgen Sie Best Practices für C++/Qt und beheben Sie mögliche Probleme.</translation>
    </message>
    <message>
        <source>Suggest an alternative implementation approach for the selected code. Provide a different solution that might be cleaner, more efficient, or uses different Qt/C++ patterns or idioms.</source>
        <translation>Schlagen Sie einen alternativen Implementierungsansatz für den ausgewählten Code vor. Bieten Sie eine andere Lösung, die sauberer, effizienter sein oder andere Qt/C++-Muster oder -Idiome verwenden könnte.</translation>
    </message>
    <message>
        <source>Failed to save custom instruction. Check logs for details.</source>
        <translation>Benutzerdefinierte Anweisung konnte nicht gespeichert werden. Details siehe Logs.</translation>
    </message>
    <message>
        <source>No Instruction Selected</source>
        <translation>Keine Anweisung ausgewählt</translation>
    </message>
    <message>
        <source>Please select an instruction to edit.</source>
        <translation>Bitte wählen Sie eine Anweisung zum Bearbeiten aus.</translation>
    </message>
    <message>
        <source>Failed to update custom instruction. Check logs for details.</source>
        <translation>Benutzerdefinierte Anweisung konnte nicht aktualisiert werden. Details siehe Logs.</translation>
    </message>
    <message>
        <source>Please select an instruction to delete.</source>
        <translation>Bitte wählen Sie eine Anweisung zum Löschen aus.</translation>
    </message>
    <message>
        <source>Confirm Deletion</source>
        <translation>Löschen bestätigen</translation>
    </message>
    <message>
        <source>Are you sure you want to delete the instruction &apos;%1&apos;?</source>
        <translation>Sind Sie sicher, dass Sie die Anweisung &apos;%1&apos; löschen möchten?</translation>
    </message>
    <message>
        <source>Failed to delete custom instruction. Check logs for details.</source>
        <translation>Benutzerdefinierte Anweisung konnte nicht gelöscht werden. Details siehe Logs.</translation>
    </message>
    <message>
        <source>Current</source>
        <translation>Aktuell</translation>
    </message>
    <message>
        <source>Current (%1)</source>
        <translation>Aktuell (%1)</translation>
    </message>
    <message>
        <source>No Instruction</source>
        <translation>Keine Anweisung</translation>
    </message>
    <message>
        <source>Please type an instruction or select a saved one.</source>
        <translation>Bitte geben Sie eine Anweisung ein oder wählen Sie eine gespeicherte aus.</translation>
    </message>
    <message>
        <source>Enter instruction name...</source>
        <translation>Anweisungsnamen eingeben...</translation>
    </message>
    <message>
        <source>Name:</source>
        <translation>Name:</translation>
    </message>
    <message>
        <source>Instruction Body:</source>
        <translation>Anweisungstext:</translation>
    </message>
    <message>
        <source>Enter the refactoring instruction that will be sent to the LLM...</source>
        <translation>Geben Sie die Refactoring-Anweisung ein, die an das LLM gesendet wird...</translation>
    </message>
    <message>
        <source>Set as default instruction</source>
        <translation>Als Standardanweisung festlegen</translation>
    </message>
    <message>
        <source>This instruction will be automatically selected when opening Quick Refactor dialog</source>
        <translation>Diese Anweisung wird beim Öffnen des Dialogs Schnelles Refactoring automatisch ausgewählt</translation>
    </message>
    <message>
        <source>Invalid Input</source>
        <translation>Ungültige Eingabe</translation>
    </message>
    <message>
        <source>Instruction name cannot be empty.</source>
        <translation>Der Anweisungsname darf nicht leer sein.</translation>
    </message>
    <message>
        <source>Instruction body cannot be empty.</source>
        <translation>Der Anweisungstext darf nicht leer sein.</translation>
    </message>
</context>
<context>
    <name>RootItem</name>
    <message>
        <source>Compressing chat…</source>
        <translation>Chat wird komprimiert…</translation>
    </message>
    <message>
        <source>next ~%1  ·  session ↑%2 ↓%3 ↻%4</source>
        <translation>nächste ~%1  ·  Sitzung ↑%2 ↓%3 ↻%4</translation>
    </message>
    <message>
        <source>next ~%1  ·  session ↑%2 ↓%3</source>
        <translation>nächste ~%1  ·  Sitzung ↑%2 ↓%3</translation>
    </message>
    <message>
        <source>next request (estimate)  ·  session prompt ↑ / completion ↓ / cached ↻ (provider cache hits)</source>
        <translation>nächste Anfrage (Schätzung)  ·  Sitzungs-Prompt ↑ / Completion ↓ / zwischengespeichert ↻ (Anbieter-Cache-Treffer)</translation>
    </message>
    <message>
        <source>next request (estimate)  ·  session prompt ↑ / completion ↓</source>
        <translation>nächste Anfrage (Schätzung)  ·  Sitzungs-Prompt ↑ / Completion ↓</translation>
    </message>
    <message>
        <source>Сhat name: %1</source>
        <translation>Chat-Name: %1</translation>
    </message>
    <message>
        <source>Move this chat to an editor tab</source>
        <translation>Diesen Chat in einen Editor-Tab verschieben</translation>
    </message>
    <message>
        <source>Move this chat to a separate window</source>
        <translation>Diesen Chat in ein separates Fenster verschieben</translation>
    </message>
    <message>
        <source>Type your message here... (%1 to send)</source>
        <translation>Geben Sie hier Ihre Nachricht ein... (%1 zum Senden)</translation>
    </message>
    <message>
        <source>Cut</source>
        <translation>Ausschneiden</translation>
    </message>
    <message>
        <source>Copy</source>
        <translation>Kopieren</translation>
    </message>
    <message>
        <source>Paste</source>
        <translation>Einfügen</translation>
    </message>
    <message>
        <source>Select All</source>
        <translation>Alles auswählen</translation>
    </message>
    <message>
        <source>Clear</source>
        <translation>Leeren</translation>
    </message>
    <message>
        <source>Send</source>
        <translation>Senden</translation>
    </message>
    <message>
        <source>Stop</source>
        <translation>Stoppen</translation>
    </message>
    <message>
        <source>Send message to LLM %1</source>
        <translation>Nachricht an LLM %1 senden</translation>
    </message>
    <message>
        <source>Compress Chat</source>
        <translation>Chat komprimieren</translation>
    </message>
    <message>
        <source>Create a summarized copy of this chat?

The summary will be generated by LLM and saved as a new chat file.</source>
        <translation>Eine zusammengefasste Kopie dieses Chats erstellen?

Die Zusammenfassung wird vom LLM generiert und als neue Chat-Datei gespeichert.</translation>
    </message>
    <message>
        <source>Copied</source>
        <translation>Kopiert</translation>
    </message>
</context>
<context>
    <name>SplitDropZone</name>
    <message numerus="yes">
        <source>%n file(s) to drop</source>
        <translation>
            <numerusform>%n Datei(en) zum Ablegen</numerusform>
            <numerusform>%n Datei(en) zum Ablegen</numerusform>
        </translation>
    </message>
    <message>
        <source>Attach</source>
        <translation>Anhängen</translation>
    </message>
    <message>
        <source>Images &amp; Text Files</source>
        <translation>Bilder &amp; Textdateien</translation>
    </message>
    <message>
        <source>(for one-time use)</source>
        <translation>(zur einmaligen Verwendung)</translation>
    </message>
    <message>
        <source>LINK</source>
        <translation>LINK</translation>
    </message>
    <message>
        <source>Text Files</source>
        <translation>Textdateien</translation>
    </message>
    <message>
        <source>(added to context)</source>
        <translation>(zum Kontext hinzugefügt)</translation>
    </message>
</context>
<context>
    <name>TextBlock</name>
    <message>
        <source>Copy</source>
        <translation>Kopieren</translation>
    </message>
    <message>
        <source>Select All</source>
        <translation>Alles auswählen</translation>
    </message>
</context>
<context>
    <name>ThinkingBlock</name>
    <message>
        <source>Thinking (Redacted)</source>
        <translation>Thinking (Redigiert)</translation>
    </message>
    <message>
        <source>Thinking</source>
        <translation>Thinking</translation>
    </message>
    <message>
        <source>Thinking content was redacted by safety systems</source>
        <translation>Thinking-Inhalt wurde von Sicherheitssystemen redigiert</translation>
    </message>
    <message>
        <source>Collapse</source>
        <translation>Einklappen</translation>
    </message>
    <message>
        <source>Expand</source>
        <translation>Ausklappen</translation>
    </message>
</context>
<context>
    <name>ToolBlock</name>
    <message>
        <source>Tool: %1</source>
        <translation>Tool: %1</translation>
    </message>
    <message>
        <source>Copy</source>
        <translation>Kopieren</translation>
    </message>
    <message>
        <source>Select All</source>
        <translation>Alles auswählen</translation>
    </message>
    <message>
        <source>Collapse</source>
        <translation>Einklappen</translation>
    </message>
    <message>
        <source>Expand</source>
        <translation>Ausklappen</translation>
    </message>
</context>
<context>
    <name>TopBar</name>
    <message>
        <source>Unpin chat window</source>
        <translation>Chat-Fenster lösen</translation>
    </message>
    <message>
        <source>Pin chat window to the top</source>
        <translation>Chat-Fenster oben anheften</translation>
    </message>
    <message>
        <source>Clean chat</source>
        <translation>Chat leeren</translation>
    </message>
    <message>
        <source>Open new chat in a new tab</source>
        <translation>Neuen Chat in einem neuen Tab öffnen</translation>
    </message>
    <message>
        <source>Switch saved AI configuration</source>
        <translation>Gespeicherte KI-Konfiguration wechseln</translation>
    </message>
    <message>
        <source>Switch agent role (different system prompts)</source>
        <translation>Agent-Rolle wechseln (verschiedene System-Prompts)</translation>
    </message>
    <message>
        <source>Tools are disabled in General Settings</source>
        <translation>Tools sind in den allgemeinen Einstellungen deaktiviert</translation>
    </message>
    <message>
        <source>Tools enabled: AI can use tools to read files, search project, and build code</source>
        <translation>Tools aktiviert: KI kann Tools verwenden, um Dateien zu lesen, das Projekt zu durchsuchen und Code zu bauen</translation>
    </message>
    <message>
        <source>Tools disabled: Simple conversation without tool access</source>
        <translation>Tools deaktiviert: Einfache Unterhaltung ohne Tool-Zugriff</translation>
    </message>
    <message>
        <source>Thinking Mode enabled (Check model list support it)</source>
        <translation>Thinking-Modus aktiviert (Prüfen Sie die Modellliste auf Unterstützung)</translation>
    </message>
    <message>
        <source>Thinking Mode disabled</source>
        <translation>Thinking-Modus deaktiviert</translation>
    </message>
    <message>
        <source>Thinking Mode is not available for this provider</source>
        <translation>Thinking-Modus ist für diesen Anbieter nicht verfügbar</translation>
    </message>
    <message>
        <source>Open Chat Assistant Settings</source>
        <translation>Chat-Assistent-Einstellungen öffnen</translation>
    </message>
    <message>
        <source>Save chat to *.json file</source>
        <translation>Chat in *.json-Datei speichern</translation>
    </message>
    <message>
        <source>Load chat from *.json file</source>
        <translation>Chat aus *.json-Datei laden</translation>
    </message>
    <message>
        <source>Show in system</source>
        <translation>Im System anzeigen</translation>
    </message>
    <message>
        <source>View chat context (system prompt, role, rules)</source>
        <translation>Chat-Kontext anzeigen (System-Prompt, Rolle, Regeln)</translation>
    </message>
    <message>
        <source>Current amount tokens in chat and LLM limit threshold</source>
        <translation>Aktuelle Anzahl Token im Chat und LLM-Schwellwert</translation>
    </message>
</context>
</TS>
