{ "Language": { "followSystem": "Systemsprache verwenden", "english": "Englisch", "simplifiedChinese": "Vereinfachtes Chinesisch", "traditionalChinese": "Traditionelles Chinesisch", "japanese": "Japanisch", "korean": "Koreanisch", "spanish": "Spanisch", "german": "Deutsch", "french": "Französisch", "portuguese": "Portugiesisch", "arabic": "Arabisch" }, "WelcomePage": { "title": "Willkommen bei Codeg", "openSettings": "Einstellungen öffnen", "searchPlaceholder": "Ordner suchen...", "loading": "Wird geladen...", "emptyFolders": "Noch keine Ordner", "removeFromHistory": "Aus Verlauf entfernen", "openFolder": "Ordner öffnen", "cloneRepository": "Repository klonen", "projectBoot": "Projekt-Starter", "softwareVersion": "Version {version}", "toasts": { "loadFolderHistoryFailed": "Ordnerverlauf konnte nicht geladen werden", "openFolderFailed": "Ordner konnte nicht geöffnet werden", "removeFromHistoryFailed": "Ordner konnte nicht entfernt werden", "openSettingsFailed": "Einstellungen konnten nicht geöffnet werden", "cloneFailed": "Repository konnte nicht geklont werden", "openProjectBootFailed": "Projekt-Starter konnte nicht geöffnet werden" }, "errors": { "unknown": "Unerwarteter Fehler", "invalidInput": "Ungültige Eingabe.", "notFound": "Ressource nicht gefunden.", "alreadyExists": "Ressource existiert bereits.", "dependencyMissing": "Erforderliche Abhängigkeit fehlt.", "databaseError": "Datenbankoperation fehlgeschlagen.", "ioError": "Dateioperation fehlgeschlagen.", "externalCommandFailed": "Externer Befehl fehlgeschlagen.", "windowOperationFailed": "Fensteroperation fehlgeschlagen.", "gitNotInstalled": "Git ist nicht installiert. Bitte installiere zuerst Git.", "targetDirectoryNotEmpty": "Das Zielverzeichnis existiert bereits und ist nicht leer.", "repositoryNotFound": "Repository nicht gefunden. Prüfe URL und Zugriffsrechte.", "networkUnavailable": "Netzwerk ist nicht verfügbar. Prüfe die Verbindung und versuche es erneut.", "authenticationFailed": "Authentifizierung fehlgeschlagen. Prüfe Zugangsdaten oder SSH-Schlüssel.", "permissionDenied": "Zugriff verweigert. Prüfe die Verzeichnisrechte." }, "cloneDialog": { "title": "Repository klonen", "repositoryUrl": "Repository-URL", "repositoryUrlPlaceholder": "https://github.com/user/repo.git", "directory": "Verzeichnis", "directoryPlaceholder": "Zielverzeichnis auswählen...", "browseDirectory": "Verzeichnis durchsuchen", "cancel": "Abbrechen", "clone": "Klonen", "clonePath": "Klonpfad: {path}" } }, "GitCredentialDialog": { "title": "Authentifizierung erforderlich", "description": "Der Remote-Server erfordert Anmeldedaten. Geben Sie Ihren Benutzernamen und Ihr Passwort (oder persönliches Zugriffstoken) ein.", "username": "Benutzername", "usernamePlaceholder": "Benutzername oder E-Mail", "password": "Passwort / Token", "passwordPlaceholder": "Passwort oder persönliches Zugriffstoken", "passwordHint": "Geben Sie Benutzername und Passwort des Servers ein.", "cancel": "Abbrechen", "authenticate": "Authentifizieren", "authenticating": "Authentifizierung...", "invalidCredentials": "Ungültige Anmeldedaten. Bitte versuchen Sie es erneut.", "saveCredentials": "Anmeldedaten für zukünftige Vorgänge speichern", "githubTitle": "GitHub-Authentifizierung", "githubDescription": "Geben Sie ein persönliches Zugriffstoken ein, um sich mit GitHub zu verbinden. Das Token wird validiert und automatisch gespeichert.", "githubToken": "Persönliches Zugriffstoken", "githubTokenPlaceholder": "ghp_xxxxxxxxxxxx", "githubTokenHint": "Erstellen Sie ein Token unter GitHub → Settings → Developer settings → Personal access tokens.", "githubAuthenticate": "Validieren & verbinden", "generateToken": "Token erstellen" }, "SettingsShell": { "title": "Einstellungen", "preferences": "Präferenzen", "nav": { "appearance": "Darstellung", "agents": "Agenten", "mcp": "MCP", "skills": "Skills", "shortcuts": "Kurzbefehle", "version_control": "Versionskontrolle", "system": "Systemeinstellungen", "chat_channels": "Chat-Kanäle", "web_service": "Webdienst", "model_providers": "Modellanbieter", "experts": "Experten" } }, "AppearanceSettings": { "sectionTitle": "Design-Erscheinungsbild", "sectionDescription": "Wähle hell, dunkel oder Systemvorgabe. Einstellungen werden automatisch gespeichert.", "themeMode": "Designmodus", "placeholder": "Designmodus auswählen", "system": "Systemvorgabe", "light": "Hell", "dark": "Dunkel", "currentTheme": "Aktuell wirksames Design: {theme}", "resolvedTheme": { "light": "Hell", "dark": "Dunkel", "unknown": "--" }, "themeColor": { "sectionTitle": "Themenfarbe", "sectionDescription": "Wähle eine Farbpalette für Akzente, Schaltflächen und Hervorhebungen.", "current": "Aktuelle Farbe: {color}", "options": { "neutral": "Neutral", "zinc": "Zinc", "slate": "Slate", "stone": "Stone", "gray": "Gray", "red": "Red", "rose": "Rose", "orange": "Orange", "green": "Green", "blue": "Blue", "yellow": "Yellow", "violet": "Violet" } }, "zoomLevel": { "sectionTitle": "Fensterzoom", "sectionDescription": "Skaliert die gesamte Oberfläche. Wird sofort übernommen und pro Gerät gespeichert.", "placeholder": "Zoomstufe wählen", "default": "Standard", "current": "Aktueller Zoom: {zoom}%" }, "resetToDefaults": "Auf Standard zurücksetzen", "resetHint": "Themenfarbe und Fensterzoom auf Standardwerte zurücksetzen." }, "SystemSettings": { "loading": "Wird geladen...", "sectionTitle": "Systemverwaltung", "sectionDescription": "Verwalte Netzwerk-Proxy, App-Updates und Spracheinstellungen.", "proxyTitle": "Netzwerk-Proxy", "proxyDescription": "Wenn aktiviert, werden nachfolgende Netzwerkanfragen bevorzugt über diesen Proxy ausgeführt (einschließlich ACP-Chat, Agent-Installation und Git-Remote-Operationen).", "loadFailed": "Laden fehlgeschlagen: {message}", "enableProxy": "System-Proxy aktivieren", "proxyAddress": "Proxy-Adresse", "proxyHint": "Unterstützt http(s)/socks5, Beispiel: {example}. Wirksam nur bei aktiviertem System-Proxy.", "save": "Speichern", "saving": "Wird gespeichert...", "proxyRequired": "Bei aktiviertem Proxy ist eine Proxy-URL erforderlich", "saveSuccess": "System-Proxy-Einstellungen wurden gespeichert", "saveFailed": "Speichern fehlgeschlagen: {message}", "languageTitle": "Sprache", "languageDescription": "Lege die App-Sprache fest. Bei Systemsprache wird bei nicht unterstützten Sprachen auf Englisch zurückgefallen.", "appLanguage": "App-Sprache", "languageSaveSuccess": "Spracheinstellungen wurden gespeichert", "languageSaveFailed": "Spracheinstellungen konnten nicht gespeichert werden: {message}", "updateTitle": "App-Update", "versionTitle": "Softwareupdate", "updateDescription": "Prüft die konfigurierte Release-Quelle auf neue Versionen und installiert sie bei Verfügbarkeit direkt.", "currentVersion": "Aktuelle Version", "upgradableVersion": "Neueste Version", "none": "Keine", "lastChecked": "Zuletzt geprüft: {time}", "updateError": "Update-Fehler: {message}", "checking": "Wird geprüft...", "checkUpdate": "Nach Updates suchen", "updating": "Wird installiert...", "downloading": "Herunterladen...", "upgradeTo": "Auf v{version} aktualisieren", "foundUpdate": "Neue Version v{version} gefunden", "alreadyLatest": "Du verwendest bereits die neueste Version", "checkUpdateFailed": "Update-Prüfung fehlgeschlagen: {message}", "installSuccess": "Update installiert. App wird neu gestartet.", "installFailed": "Update fehlgeschlagen: {message}", "updateErrors": { "sourceUnavailable": "Die Update-Quelle ist nicht erreichbar. Prüfe Netzwerk oder Proxy und versuche es erneut.", "network": "Netzwerkverbindung fehlgeschlagen. Prüfe Netzwerk oder Proxy und versuche es erneut.", "downloadFailed": "Das Update-Paket konnte nicht heruntergeladen werden. Bitte später erneut versuchen.", "installFailed": "Das Update konnte nicht installiert werden. Bitte App schließen und erneut versuchen.", "unknown": "Update fehlgeschlagen. Bitte später erneut versuchen." } }, "VersionControlSettings": { "loading": "Laden...", "sectionTitle": "Versionskontrolle", "sectionDescription": "Git-Programm konfigurieren und GitHub-Konten verwalten.", "gitTitle": "Git-Konfiguration", "gitDescription": "Konfigurieren Sie das von der Anwendung verwendete Git-Programm.", "gitDetected": "Git erkannt", "gitNotFound": "Git wurde nicht gefunden", "gitVersion": "Version", "gitPath": "Pfad", "customGitPath": "Benutzerdefinierter Git-Pfad", "customGitPathPlaceholder": "/usr/bin/git", "customGitPathHint": "Leer lassen, um den automatisch erkannten Pfad zu verwenden.", "test": "Testen", "testing": "Teste...", "testSuccess": "Git-Programm ist gültig.", "testFailed": "Git-Test fehlgeschlagen: {message}", "save": "Speichern", "saving": "Speichern...", "saveSuccess": "Git-Einstellungen gespeichert.", "saveFailed": "Speichern fehlgeschlagen: {message}", "githubTitle": "GitHub-Konten", "githubDescription": "GitHub-Konten für die Authentifizierung verwalten. Token werden lokal gespeichert.", "noAccounts": "Keine GitHub-Konten konfiguriert.", "addAccount": "Konto hinzufügen", "serverUrl": "Server-URL", "serverUrlPlaceholder": "https://github.com", "token": "Persönlicher Zugriffstoken", "tokenPlaceholder": "ghp_xxxxxxxxxxxx", "generateToken": "Token erstellen", "tokenHint": "Erstellen Sie einen Token unter GitHub → Settings → Developer settings → Personal access tokens.", "validateAndAdd": "Validieren & hinzufügen", "validating": "Validiere...", "addSuccess": "Konto {username} erfolgreich hinzugefügt.", "addFailed": "Konto konnte nicht hinzugefügt werden: {message}", "testConnection": "Testen", "connectionSuccess": "Verbindung erfolgreich.", "connectionFailed": "Verbindung fehlgeschlagen: {message}", "setDefault": "Als Standard festlegen", "defaultLabel": "Standard", "defaultSet": "Standardkonto aktualisiert.", "removeAccount": "Entfernen", "removeConfirmTitle": "Konto entfernen", "removeConfirmMessage": "Möchten Sie das Konto \"{username}\" wirklich entfernen?", "removeConfirm": "Entfernen", "removeCancel": "Abbrechen", "removeSuccess": "Konto entfernt.", "scopes": "Berechtigungen", "loadFailed": "Einstellungen konnten nicht geladen werden: {message}", "gitAccount": { "sectionTitle": "Git-Server-Konten", "sectionDescription": "Verwalten Sie Anmeldedaten für Nicht-GitHub-Git-Server (GitLab, Bitbucket, selbst gehostet usw.).", "noAccounts": "Keine Git-Server-Konten konfiguriert.", "addAccount": "Konto hinzufügen", "addTitle": "Git-Konto hinzufügen", "addDescription": "Geben Sie Serveradresse, Benutzername und Passwort oder Zugriffstoken ein.", "serverUrl": "Server-URL", "serverUrlPlaceholder": "https://gitlab.example.com", "username": "Benutzername", "usernamePlaceholder": "Benutzername oder E-Mail", "password": "Passwort / Token", "passwordPlaceholder": "Passwort oder Zugriffstoken", "passwordHint": "Geben Sie das Passwort oder Zugriffstoken des Servers ein.", "add": "Hinzufügen", "serverRequired": "Server-URL ist erforderlich.", "usernameRequired": "Benutzername ist erforderlich.", "passwordRequired": "Passwort ist erforderlich." } }, "ShortcutSettings": { "sectionTitle": "Kurzbefehle", "resetDefault": "Standardwerte zurücksetzen", "recordInstruction": "Klicke auf die rechte Schaltfläche und drücke dann eine Tastenkombination. Verwende Ctrl/Cmd, Alt und Shift. Drücke Esc, um die Aufzeichnung abzubrechen.", "recording": "Kurzbefehl drücken...", "toasts": { "conflict": "Der Kurzbefehl wird bereits von \"{title}\" verwendet", "updated": "Kurzbefehl aktualisiert", "invalid": "Ungültiger Kurzbefehl, bitte erneut versuchen", "reset": "Standard-Kurzbefehle wurden wiederhergestellt" }, "actions": { "toggle_search": { "title": "Suche öffnen", "description": "Zeigt das Konversations-Suchpanel an oder blendet es aus" }, "toggle_sidebar": { "title": "Linke Seitenleiste umschalten", "description": "Zeigt die Seitenleiste mit der Konversationsliste an oder blendet sie aus" }, "toggle_terminal": { "title": "Terminal umschalten", "description": "Zeigt das untere Terminal-Panel an oder blendet es aus" }, "new_terminal_tab": { "title": "Neues Terminal", "description": "Erstellt einen neuen Terminal-Tab, wenn das Terminal fokussiert ist" }, "close_current_terminal_tab": { "title": "Aktuelles Terminal schließen", "description": "Schließt den aktuellen Terminal-Tab, wenn das Terminal fokussiert ist" }, "toggle_aux_panel": { "title": "Rechtes Panel umschalten", "description": "Zeigt das Zusatzinformations-Panel an oder blendet es aus" }, "new_conversation": { "title": "Neue Konversation", "description": "Erstellt einen neuen Konversations-Tab im aktuellen Ordner" }, "open_folder": { "title": "Ordner öffnen", "description": "Öffnet die Ordnerauswahl und den Ordner in einem neuen Fenster" }, "open_settings": { "title": "Einstellungen öffnen", "description": "Öffnet das Einstellungsfenster" }, "close_current_tab": { "title": "Aktuellen Tab schließen", "description": "Schließt den aktuellen Konversations- oder Dateitab" }, "close_all_file_tabs": { "title": "Alle Dateitabs schließen", "description": "Schließt alle Dateitabs nur im Dateimodus" }, "send_message": { "title": "Nachricht senden", "description": "Die aktuelle Nachricht im Eingabefeld senden" }, "newline_in_message": { "title": "Zeilenumbruch einfügen", "description": "Einen Zeilenumbruch im Eingabefeld einfügen" } } }, "SkillsSettings": { "title": "Skills", "description": "Wähle links einen Skill aus. Rechts wird standardmäßig eine Markdown-Vorschau angezeigt; wechsle zum Bearbeiten, um zu ändern und zu speichern.", "loadingAgents": "Agenten mit Skill-Unterstützung werden geladen...", "emptyNoManageableAgents": "Keine Agenten für Skill-Verwaltung verfügbar.", "managedTarget": "Verwaltetes Ziel", "selectAgentPlaceholder": "Agent auswählen", "searchPlaceholder": "Nach Name / ID / Pfad suchen...", "skillsList": "Skill-Liste", "loadingSkills": "Skills werden geladen...", "agentNotSupported": "Der aktuelle Agent unterstützt keine Skill-Verwaltung.", "emptySkills": "Noch keine Skills. Klicke auf „Neuer Skill“, um einen zu erstellen.", "newSkillTitle": "Neuer Skill", "skillInfo": "Skill-Info", "skillIdPlaceholder": "skill-id (Buchstaben/Zahlen/-/_/.)", "skillsDirectoryWithPath": "Skill-Verzeichnis: {path}", "skillsDirectoryNeedId": "Skill-Verzeichnis: Skill-ID eingeben, um den vollständigen Pfad zu erzeugen", "markdownContent": "Markdown-Inhalt", "editingStatus": "Bearbeiten", "previewStatus": "Vorschau", "contentPlaceholder": "Markdown-Inhalt des Skills eingeben...", "metadataTitle": "Skill-Metadaten", "onlyYamlMetadata": "Dieser Skill enthält nur YAML-Metadaten.", "emptyContentHint": "Noch kein Inhalt. Klicke auf „Bearbeiten“, um zu starten.", "loadingSkill": "Skill wird geladen...", "emptyNoAgents": "Kein verfügbarer Agent.", "noSelectionHint": "Wählen Sie links einen Skill oder klicken Sie auf „Neuer Skill“, um einen zu erstellen.", "scope": { "global": "Global", "folder": "Ordner", "selectFolderPlaceholder": "Ordner auswählen", "noFolders": "Keine Ordner gefunden", "pickFolderHint": "Wählen Sie einen Ordner, um dessen Skills anzuzeigen." }, "actions": { "preview": "Vorschau", "edit": "Bearbeiten", "openInWindow": "In neuem Fenster öffnen", "delete": "Löschen", "deleting": "Wird gelöscht...", "refresh": "Aktualisieren", "newSkill": "Neuer Skill", "reset": "Zurücksetzen", "save": "Speichern", "saving": "Wird gespeichert...", "cancel": "Abbrechen" }, "deleteDialog": { "title": "Skill löschen", "confirm": "Aktuellen Skill löschen? Diese Aktion kann nicht rückgängig gemacht werden.", "confirmWithNamePrefix": "Skill", "confirmWithNameSuffix": "löschen? Diese Aktion kann nicht rückgängig gemacht werden." }, "toasts": { "loadFailed": "Skill konnte nicht geladen werden", "openFolderFailed": "Ordner konnte nicht geöffnet werden", "noSkillDirectory": "Kein verfügbares Skill-Verzeichnis für den aktuellen Agenten gefunden", "nameRequired": "Skill-Name darf nicht leer sein", "updated": "Skill aktualisiert", "created": "Skill erstellt", "saveFailed": "Skill konnte nicht gespeichert werden", "deleted": "Skill gelöscht", "deleteFailed": "Skill konnte nicht gelöscht werden" }, "templates": { "gemini": "---\nname: example-skill\ndescription: Describe when this skill should be used.\n---\n\n# Skill Name\n\nInstructions for the agent when this skill is active.\n\n## Workflow\n\n1. Add actionable step one.\n2. Add actionable step two.\n", "openCode": "---\nname: example-skill\ndescription: Describe when this skill should be used.\n---\n\n# Purpose\n\nDescribe what this skill helps with.\n\n# Steps\n\n1. Add actionable step one.\n2. Add actionable step two.\n", "openClaw": "---\nname: example-skill\ndescription: Describe when this skill should be used.\nuser-invocable: true\ndisable-model-invocation: false\n---\n\n# Purpose\n\nDescribe what this skill helps with.\n\n# Instructions\n\n1. Add actionable instruction one.\n2. Add actionable instruction two.\n", "default": "# Skill: example-skill\n\n## When to use\n\n- Describe trigger conditions.\n\n## Instructions\n\n1. Add actionable instruction one.\n2. Add actionable instruction two.\n" } }, "McpSettings": { "loading": "Wird geladen...", "summary": { "missingCommand": "(fehlender Befehl)", "missingUrl": "(fehlende URL)" }, "protocol": { "stdio": "Stdio" }, "errors": { "selectInstallProtocol": "Bitte ein Installationsprotokoll auswählen", "fieldRequired": "{field} ist erforderlich", "fieldNeedsBoolean": "{field} muss true oder false sein", "fieldNeedsNumber": "{field} muss eine Zahl sein", "fieldNeedsInteger": "{field} muss eine Ganzzahl sein", "fieldInvalidJson": "{field} enthält ungültiges JSON: {message}", "fieldOutOfRange": "Der Wert von {field} liegt außerhalb des erlaubten Bereichs", "jsonEmpty": "{name} darf nicht leer sein", "jsonInvalid": "{name} ist kein gültiges JSON: {message}", "jsonMustBeObject": "{name} muss ein JSON-Objekt sein" }, "jsonNames": { "localConfig": "MCP-Konfiguration", "installConfig": "Installationskonfiguration" }, "toasts": { "uninstalled": "MCP deinstalliert", "uninstallFailed": "Deinstallation fehlgeschlagen: {message}", "selectAtLeastOneApp": "Bitte mindestens eine Ziel-App auswählen", "saveSuccess": "Gespeichert", "saveFailed": "Speichern fehlgeschlagen: {message}", "installed": "{name} installiert", "installFailed": "Installation fehlgeschlagen: {message}" }, "installDialog": { "title": "MCP-Installation bestätigen", "descriptionWithName": "{name} in lokale Konfiguration installieren.", "description": "Ziel-Apps für die Installation auswählen.", "protocol": "Protokoll", "selectProtocol": "Protokoll auswählen", "parameters": "Konfigurationsparameter", "booleanPlaceholder": "Bitte true/false auswählen", "selectOneValue": "Wert auswählen", "targetApps": "Ziel-Apps" }, "actions": { "cancel": "Abbrechen", "confirmInstall": "Installation bestätigen", "installing": "Installieren", "uninstall": "Deinstallieren", "uninstalling": "Deinstallieren", "viewDetails": "Details anzeigen", "save": "Speichern", "saving": "Speichern", "install": "Installieren" }, "tabs": { "local": "Lokales MCP", "market": "MCP-Marktplatz" }, "local": { "filterPlaceholder": "Lokales MCP filtern...", "loadFailed": "Laden fehlgeschlagen: {message}", "empty": "Kein lokales MCP erkannt.", "description": "Die lokale MCP-Konfiguration kann direkt bearbeitet und gespeichert werden.", "enabledApps": "Aktivierte Apps", "configJson": "MCP-Konfiguration (JSON)" }, "market": { "selectMarketplace": "Marktplatz auswählen", "searchPlaceholder": "MCP suchen...", "searchFailed": "Suche fehlgeschlagen: {message}", "loadingList": "MCP-Liste wird geladen...", "empty": "Keine MCP-Ergebnisse.", "loadingDetail": "Marktplatzdetails werden geladen...", "detailLoadFailed": "Details konnten nicht geladen werden: {message}", "owner": "Inhaber: {owner}", "namespace": "Namensraum: {namespace}", "defaultInstallProtocol": "Standard-Installationsprotokoll", "currentOptionParameterCount": "Anzahl der Parameter der aktuellen Option: {count}", "installConfigDescription": "Installationskonfiguration (JSON, vor der Installation bearbeitbar; Änderungen überschreiben das Protokoll-/Parameterformular)", "selectLeftToView": "Wähle links ein Marktplatz-MCP aus, um Details anzuzeigen." }, "badges": { "verified": "Verifiziert", "remote": "Remote", "hasHomepage": "Hat Homepage", "uses": "{count} Nutzungen", "deployed": "Bereitgestellt", "notDeployed": "Nicht bereitgestellt" }, "selectLeftMcp": "Wähle links ein MCP aus." }, "AcpAgentSettings": { "title": "Agent SDK-Verwaltung", "description": "Verwalten Sie Agent-SDK-Verbindung, Aktivierungsstatus, Umgebungsvariablen, Konfigurationsverwaltung und Versions-Preflight-Infos zentral an einem Ort.", "loadingAgents": "Agentenliste wird geladen...", "agentList": "Agentenliste", "emptyNoAgent": "Keine verfügbaren Agenten.", "configManagement": "Konfigurationsverwaltung", "envVars": "Umgebungsvariablen", "nativeJsonConfig": "Natives JSON-Config", "modelHintDefault": "Leer lassen, um das System-Standardmodell zu verwenden.", "generalConfigDescriptionClaude": "Unterstützt schnelle Konfiguration von API-URL, API-Key und Claude-Modellen und synchronisiert mit der nativen JSON-Konfiguration.", "generalConfigDescriptionDefault": "Unterstützt wichtige Konfigurationseingaben (API URL, API Key, Model) und native JSON-Konfigurationsverwaltung.", "actions": { "dragSort": "Zum Neuordnen ziehen", "dragSortAgent": "{name} zum Neuordnen ziehen", "refreshCheck": "Prüfung aktualisieren", "refreshCheckAgent": "Prüfung für {name} aktualisieren", "clickEnable": "Klicken, um {name} zu aktivieren", "clickDisable": "Klicken, um {name} zu deaktivieren", "install": "Installieren", "upgrade": "Aktualisieren", "uninstall": "Deinstallieren", "uninstalling": "Wird deinstalliert...", "saveEnvVars": "Umgebungsvariablen speichern", "saving": "Speichern...", "saveCodexConfig": "Codex-Konfiguration speichern", "saveGeminiConfig": "Gemini-Konfiguration speichern", "saveOpenCodeConfig": "OpenCode-Konfiguration speichern", "saveOpenClawConfig": "OpenClaw-Konfiguration speichern", "saveConfigManagement": "Konfigurationsverwaltung speichern", "saveCurrentProvider": "Aktuellen Provider speichern", "showApiKey": "API-Key anzeigen", "hideApiKey": "API-Key ausblenden", "showKey": "Schlüssel anzeigen", "hideKey": "Schlüssel ausblenden", "showToken": "Token anzeigen", "hideToken": "Token ausblenden", "cancel": "Abbrechen", "delete": "Löschen", "deleting": "Löschen...", "confirmDelete": "Löschen bestätigen", "confirmUninstall": "Deinstallation bestätigen", "saveClineConfig": "Cline-Konfiguration speichern" }, "status": { "enabled": "Aktiviert", "disabled": "Deaktiviert", "unchecked": "Nicht geprüft", "agentEnabledAria": "{name} aktiviert", "agentEnabledSwitch": "{name} Aktivierungsschalter" }, "preflight": { "count": "Preflight-Elemente: {count}", "notRun": "Prüfungen wurden noch nicht ausgeführt." }, "codex": { "configDescription": "Unterstützt schnelle Konfiguration von API-URL, API-Key, Modellname und reasoning effort und synchronisiert mit `auth.json` / `config.toml`.", "authMode": "Authentifizierungsmodus", "chatgptSubscription": "Offizielles Abonnement", "chatgptSubscriptionHint": "Mit offiziellem ChatGPT-Abonnement anmelden, kein API Key erforderlich", "apiKeyHint": "Mit API Key zu OpenAI oder kompatiblen API-Diensten verbinden", "selectProvider": "Provider auswählen", "modelName": "Modellname", "selectReasoningEffort": "Reasoning Effort auswählen", "enableWebsocket": "WebSocket aktivieren", "enableWebsocketAria": "WebSocket für Codex Provider aktivieren", "enableSkills": "Skills aktivieren", "enableSkillsAria": "Skills für Codex aktivieren", "enableFast": "Fast aktivieren", "enableFastAria": "Fast-Servicestufe für Codex aktivieren", "authJsonNative": "auth.json (nativ)", "configTomlNative": "config.toml (nativ)" }, "gemini": { "authConfig": "Gemini-Auth-Konfiguration", "authConfigDescription": "Ausgerichtet an den Gemini CLI-Authentifizierungsdokumenten, mit Unterstützung für benutzerdefinierten Endpoint, Google-Login, Gemini API Key und Vertex AI (ADC / Servicekonto / API Key).", "authMode": "Auth-Modus", "selectAuthMode": "Auth-Modus auswählen", "viewAuthDoc": "Auth-Dokumentation anzeigen", "mode": { "custom": "Benutzerdefinierter Endpoint", "loginGoogle": "Google-Login (OAuth)", "vertexServiceAccount": "Vertex AI (Servicekonto)" }, "hint": { "custom": "API URL, API Key und Modell ausfüllen; wird auf GOOGLE_GEMINI_BASE_URL / GEMINI_API_KEY / GEMINI_MODEL abgebildet.", "loginGoogle": "Gemini zuerst im Terminal ausführen und Google-Login abschließen; API key ist nicht erforderlich.", "geminiApiKey": "Beim Verwenden der Gemini API GEMINI_API_KEY eintragen.", "vertexAdc": "gcloud ADC verwenden; GOOGLE_CLOUD_PROJECT und GOOGLE_CLOUD_LOCATION werden empfohlen.", "vertexServiceAccount": "Pfad zur Servicekonto-JSON in GOOGLE_APPLICATION_CREDENTIALS setzen.", "vertexApiKey": "Beim Verwenden eines Vertex AI API Keys GOOGLE_API_KEY eintragen." } }, "openCode": { "configManagement": "OpenCode-Konfigurationsverwaltung", "configDescription": "An OpenCode-`provider`-Schema ausgerichtet, unterstützt Multi-Provider-Verwaltung und bidirektionale Synchronisierung mit nativen JSON-Dateien.", "providerManagement": "Provider-Verwaltung", "providerCount": "{count} Provider", "addProvider": "Provider hinzufügen", "emptyProvider": "Noch kein Provider vorhanden. ID eingeben und dann auf „Provider hinzufügen“ klicken.", "providerEnabledState": "{providerId} Aktivierungsstatus", "selectProviderNpm": "provider.npm auswählen", "notSet": "Nicht gesetzt", "modelManagement": "Modellverwaltung", "modelCount": "{count} Modelle", "modelDescription": "Ausgerichtet an OpenCode `provider.models`. Schnellverwaltung unterstützt derzeit `name` / `id`; andere erweiterte Felder bleiben erhalten und können unten im nativen JSON bearbeitet werden.", "addModel": "Modell hinzufügen", "emptyModel": "Noch kein Modell vorhanden. model id eingeben und dann auf „Modell hinzufügen“ klicken.", "modelId": "Modell-ID", "modelName": "Modellname", "deleteModel": "Modell {modelId} löschen", "nativeJsonConfig": "OpenCode Native JSON-Konfiguration", "mainModel": "Hauptmodell", "smallModel": "Kleines Modell", "noMatchingModels": "Keine passenden Modelle" }, "openClaw": { "gatewayConfig": "Gateway-Konfiguration", "gatewayDescription": "OpenClaw-Gateway-Verbindung konfigurieren. Unterstützt lokales oder entferntes Gateway.", "gatewayUrlHint": "Leer lassen, um gateway.remote.url aus der lokalen openclaw-Konfiguration zu verwenden.", "gatewayTokenPlaceholder": "Gateway-Auth-Token", "gatewayTokenHint": "Wenn möglich token-file statt Klartext-Token verwenden; über openclaw CLI konfigurieren.", "sessionKeyHint": "Optional. Gateway-Session-Key angeben; leer lassen für automatische Zuweisung einer isolierten Session." }, "authModeOfficialSubscription": "Offizielles Abonnement", "authModeCustomEndpoint": "Benutzerdefinierter Endpunkt", "authModeCustomEndpointHint": "API-URL und API-Key manuell für einen benutzerdefinierten Endpunkt konfigurieren.", "authModeModelProvider": "Modellanbieter", "modelProvider": "Modellanbieter", "modelProviderHint": "API-URL und API-Key eines konfigurierten Modellanbieters verwenden.", "selectModelProvider": "Modellanbieter auswählen", "noModelProviderAvailable": "Kein Modellanbieter für diesen Agent konfiguriert. Gehen Sie zu den Modellanbieter-Einstellungen, um einen hinzuzufügen.", "claude": { "authMode": "Authentifizierungsmodus", "officialSubscription": "Offizielles Abonnement", "officialSubscriptionHint": "Offizielles Anthropic-Abonnement verwenden, kein API-Key erforderlich.", "mainModel": "Hauptmodell", "reasoningModel": "Reasoning-Modell (thinking)", "haikuDefaultModel": "Standard-Haiku-Modell", "sonnetDefaultModel": "Standard-Sonnet-Modell", "opusDefaultModel": "Standard-Opus-Modell", "effortLevel": "Reasoning-Stufe", "effortLevelDefault": "Standardstufe", "effortLevel_low": "Niedrig", "effortLevel_medium": "Mittel", "effortLevel_high": "Hoch" }, "dialogs": { "confirmDeleteProvider": "Provider {providerId} löschen?", "confirmDeleteProviderDescription": "OpenCode-Konfiguration und auth JSON werden zusammen aktualisiert. Diese Aktion kann nicht rückgängig gemacht werden.", "confirmUninstall": "{name} deinstallieren?", "confirmUninstallDescription": "Dadurch wird die lokal installierte Version entfernt. Eine Neuinstallation ist später möglich." }, "errors": { "nativeJsonMustBeObject": "Native JSON-Konfiguration muss ein Objekt sein", "nativeJsonInvalid": "Formatfehler in nativer JSON-Konfiguration: {message}", "openCodeAuthMustBeObject": "OpenCode auth.json muss ein JSON-Objekt sein", "openCodeAuthInvalid": "Formatfehler in OpenCode auth.json: {message}", "authMustBeObject": "auth.json muss ein JSON-Objekt sein", "authInvalid": "Formatfehler in auth.json: {message}", "providerIdPattern": "Provider-ID unterstützt nur Buchstaben, Zahlen, Unterstrich, Punkt und Bindestrich", "providerExists": "Provider '{providerId}' existiert bereits", "modelIdPattern": "Model-ID unterstützt nur Buchstaben, Zahlen, Unterstrich, Punkt, Doppelpunkt und Bindestrich", "modelExists": "Model '{modelId}' existiert bereits" }, "warnings": { "nativeJsonRecoveredStructured": "Native JSON-Konfiguration ist ungültig; auf strukturierte Konfiguration zurückgesetzt", "nativeJsonRecoveredOpenCode": "Native JSON-Konfiguration ist ungültig; auf OpenCode-strukturierte Konfiguration zurückgesetzt", "openCodeAuthRecovered": "OpenCode auth.json ist ungültig; auf Standardkonfiguration zurückgesetzt", "authRecoveredStructured": "auth.json ist ungültig; auf strukturierte Konfiguration zurückgesetzt" }, "toasts": { "agentActionCompleted": "{name} {action} abgeschlossen", "agentActionFailed": "{name} {action} fehlgeschlagen", "localVersion": "Lokale Version: {version}", "installCompletedVersionLater": "Installation abgeschlossen, Version wird bei der nächsten Prüfung aktualisiert", "uninstallCompleted": "Deinstallation von {name} abgeschlossen", "uninstallFailed": "Deinstallation von {name} fehlgeschlagen", "localVersionRemoved": "Lokale Version entfernt", "saveAgentOrderFailed": "Speichern der Agent-Reihenfolge fehlgeschlagen", "saveAgentSwitchFailed": "Speichern des Agent-Schalters fehlgeschlagen", "saveEnvFailed": "Speichern der Umgebungsvariablen fehlgeschlagen", "codexSaved": "Codex-Konfiguration gespeichert", "saveCodexNativeFailed": "Speichern der nativen Codex-Konfiguration fehlgeschlagen", "geminiSaved": "Gemini-Konfiguration gespeichert", "saveGeminiFailed": "Speichern der Gemini-Konfiguration fehlgeschlagen", "providerDeleted": "Provider {providerId} gelöscht", "providerDeleteFailed": "Löschen von Provider {providerId} fehlgeschlagen", "providerSaved": "Provider {providerId} gespeichert", "saveProviderFailed": "Speichern von Provider {providerId} fehlgeschlagen", "openCodeConfigSynced": "OpenCode-Konfiguration und auth JSON wurden synchronisiert.", "openCodeSaved": "OpenCode-Konfiguration gespeichert", "saveOpenCodeFailed": "Speichern der OpenCode-Konfiguration fehlgeschlagen", "openClawSaved": "OpenClaw-Konfiguration gespeichert", "saveOpenClawFailed": "Speichern der OpenClaw-Konfiguration fehlgeschlagen", "configSaved": "Konfiguration gespeichert", "configSavedHint": "Bestehende Sitzungen müssen neu geöffnet werden, damit die Änderungen wirksam werden", "saveConfigManagementFailed": "Speichern der Konfigurationsverwaltung fehlgeschlagen", "clineSaved": "Cline-Konfiguration gespeichert", "saveClineFailed": "Cline-Konfiguration konnte nicht gespeichert werden", "modelProviderRequired": "Bitte wählen Sie vor dem Speichern einen Modellanbieter aus." }, "version": { "statusLabel": "Versionsstatus", "notInstalled": "Nicht installiert", "remoteLocal": "Remote: {remoteVersion} · Lokal: {localVersion}", "platformUnsupported": "{versionText}. Aktuelle Plattform unterstützt diesen Agenten nicht.", "clickInstall": "{versionText}. Rechts auf Installieren klicken.", "localUnrecognized": "{versionText}. Lokale Version ist nicht vergleichbar; zum Überschreiben bitte Upgrade versuchen.", "upgradeAvailable": "{versionText}. Upgrade verfügbar.", "remoteUnavailable": "{versionText}. Remote-Version ist derzeit nicht verfügbar.", "latest": "{versionText}. Bereits aktuell." }, "cline": { "configDescription": "Konfigurieren Sie den Cline API-Anbieter und die Anmeldedaten. Einstellungen werden in ~/.cline/data/ gespeichert." }, "opencodePlugins": { "title": "OpenCode-Plugins", "declared": "Deklarierte Plugins", "noPlugins": "Keine Plugins in opencode.json deklariert", "status": { "installed": "Installiert", "missing": "Nicht installiert" }, "installAll": "Alle fehlenden installieren", "pinVersions": "@latest-Versionen fixieren", "install": "Installieren", "uninstall": "Deinstallieren", "refresh": "Aktualisieren", "success": "Alle Plugins wurden erfolgreich installiert", "failed": "Plugin-Vorgang fehlgeschlagen" } }, "SettingsPages": { "agentsLoading": "Agent-Einstellungen werden geladen..." }, "CommitPage": { "title": "Einchecken", "invalidFolderId": "Ungültige Ordner-ID", "loadingRepo": "Repository wird geladen..." }, "MergePage": { "title": "Konflikte lösen", "invalidFolderId": "Ungültige Ordner-ID", "loadingRepo": "Repository wird geladen...", "localVersion": "Lokal (Unsere)", "result": "Ergebnis", "remoteVersion": "Remote (Deren)", "acceptLocal": "Lokal übernehmen", "acceptRemote": "Remote übernehmen", "markResolved": "Als gelöst markieren", "abortMerge": "Abbrechen", "completeMerge": "Merge abschließen", "unresolvedConflicts": "Es gibt noch ungelöste Konfliktmarkierungen in dieser Datei", "fileResolved": "Datei erfolgreich gelöst", "allResolved": "Alle Konflikte gelöst", "conflictFiles": "Konfliktdateien", "loadingFile": "Datei wird geladen...", "preparingMerge": "Merge wird vorbereitet...", "selectFile": "Datei zum Lösen auswählen", "noConflicts": "Keine Konfliktdateien", "skipFile": "Überspringen", "abortSuccess": "Vorgang abgebrochen", "applyAllNonConflicting": "Alle konfliktfreien Änderungen anwenden", "applyLeftNonConflicting": "Lokal anwenden", "applyRightNonConflicting": "Remote anwenden" }, "Folder": { "common": { "all": "Alle", "cancel": "Abbrechen", "close": "Schließen", "closeOthers": "Andere schließen", "closeAll": "Alle schließen", "confirm": "Bestätigen", "save": "Speichern", "delete": "Löschen", "rename": "Umbenennen", "loading": "Wird geladen...", "refresh": "Aktualisieren", "refreshing": "Aktualisierung...", "create": "Erstellen", "createAndSwitch": "Erstellen und wechseln", "openFile": "Datei öffnen", "viewDiff": "Diff anzeigen", "push": "Pushen..." }, "modes": { "conversation": "Konversationsmodus", "fusion": "Fusionsmodus", "files": "Dateimodus", "workspaceModesAria": "Workspace-Modi" }, "statusLabels": { "in_progress": "In Bearbeitung", "pending_review": "Prüfung", "completed": "Abgeschlossen", "cancelled": "Abgebrochen" }, "sidebar": { "title": "Konversationen", "locateActiveConversation": "Aktive Konversation finden", "expandAllGroups": "Alle Gruppen erweitern", "collapseAllGroups": "Alle Gruppen einklappen", "newConversation": "Neue Konversation", "noConversationsFound": "Keine Konversationen gefunden.", "importLocalSessions": "Lokale Sitzungen importieren", "importing": "Importiere...", "error": "Fehler: {message}", "completeAllSessions": "Alle Sitzungen abschließen", "completeAllReviewTitle": "Alle Review-Sitzungen abschließen?", "completeAllReviewDescription": "Dadurch werden alle {count, plural, one {# Sitzung} other {# Sitzungen}} im Review als abgeschlossen markiert.", "completing": "Abschließen...", "toasts": { "importedSessions": "{imported, plural, one {# Sitzung} other {# Sitzungen}} importiert, {skipped} übersprungen", "noNewSessionsFound": "Keine neuen Sitzungen gefunden ({skipped} übersprungen)", "importFailed": "Import fehlgeschlagen: {message}", "reviewCompleted": "{count, plural, one {# Review-Sitzung} other {# Review-Sitzungen}} als abgeschlossen markiert", "completeReviewFailed": "Review-Sitzungen konnten nicht abgeschlossen werden: {message}" } }, "conversation": { "reloadFailed": "Konversation konnte nicht neu geladen werden: {message}", "reloaded": "Konversation neu geladen", "reload": "Neu laden", "newConversation": "Neue Konversation", "closeConversation": "Konversation schließen", "forkSession": "Sitzung forken", "forkSessionSuccess": "Sitzung erfolgreich geforkt", "forkSessionFailed": "Sitzung konnte nicht geforkt werden: {error}", "exportConversation": "Konversation exportieren", "exportImage": "Bild", "exportMarkdown": "Markdown", "exportHtml": "HTML", "exportSuccess": "Konversation exportiert", "exportFailed": "Export fehlgeschlagen", "exportImageTooLong": "Konversation ist zu lang für den Bildexport", "exportLabels": { "untitledConversation": "Unbenannte Konversation", "agent": "Agent", "model": "Modell", "status": "Status", "started": "Gestartet", "updated": "Aktualisiert", "tokens": "Token-Statistik", "duration": "Dauer", "inputTokens": "Eingabe", "outputTokens": "Ausgabe", "cacheRead": "Cache gelesen", "cacheWrite": "Cache geschrieben", "user": "Benutzer", "assistant": "Assistent", "system": "System", "toolResult": "Ergebnis", "toolError": "Fehler" } }, "conversationCard": { "untitledConversation": "Unbenannte Konversation", "newConversation": "Neue Konversation", "rename": "Umbenennen", "status": "Zustand", "delete": "Löschen", "importLocalSessions": "Lokale Sitzungen importieren", "importing": "Importiere...", "renameConversation": "Konversation umbenennen", "deleteConversationTitle": "Konversation löschen?", "deleteConversationDescription": "\"{title}\" wird gelöscht. Diese Aktion kann nicht rückgängig gemacht werden.", "cancel": "Abbrechen", "save": "Speichern" }, "search": { "dialogTitle": "Suchen", "tabConversations": "Konversationen", "tabFiles": "Dateien", "placeholder": "Konversationen suchen...", "filePlaceholder": "Dateien oder Verzeichnisse suchen...", "allAgents": "Alle", "searching": "Suche...", "typeToSearch": "Tippen, um Konversationen zu suchen", "typeToSearchFiles": "Tippen, um Dateien oder Verzeichnisse zu suchen", "noResults": "Keine Ergebnisse gefunden.", "untitledConversation": "Unbenannte Konversation" }, "folderTitleBar": { "showSidebar": "Seitenleiste anzeigen", "hideSidebar": "Seitenleiste ausblenden", "toggleTerminal": "Terminal umschalten", "toggleAuxPanel": "Hilfspaneel umschalten", "search": "Suchen", "openSettings": "Einstellungen öffnen", "withShortcut": "{label} (Tastenkürzel: {shortcut})" }, "statusBar": { "connection": { "connected": "Verbunden", "connecting": "Verbinde...", "prompting": "Antworte...", "error": "Verbindungsfehler", "disconnected": "Getrennt", "tooltip": "{agent}: {status}", "tooltipError": "{agent}: {error}" }, "tasks": { "title": "Aufgaben" }, "alerts": { "title": "Warnungen", "empty": "Keine Warnungen" }, "stats": { "conversations": "{count} Konversationen", "summary": "{conversations} Konversationen / {messages} Nachrichten" }, "tokens": { "contextWindowUsageAria": "Kontextfenster-Nutzung", "contextWindow": "Kontextfenster", "usedMax": "Verwendet / Max", "tokenUsage": "Token-Nutzung", "input": "Eingabe", "output": "Ausgabe", "cacheRead": "Cache lesen", "cacheWrite": "Cache schreiben", "total": "Gesamt" } }, "auxPanel": { "tabs": { "diff": "Unterschiede", "files": "Dateien", "changes": "Änderungen", "commits": "Einträge" } }, "windowControls": { "minimizeWindow": "Fenster minimieren", "minimize": "Minimieren", "maximizeWindow": "Fenster maximieren", "maximize": "Maximieren", "restoreWindow": "Fenster wiederherstellen", "restore": "Wiederherstellen", "closeWindow": "Fenster schließen", "close": "Schließen" }, "tabs": { "closeConversationTab": "Konversationstab schließen", "close": "Schließen", "closeOthers": "Andere schließen", "closeAll": "Alle schließen", "tileDisplay": "Kachelansicht", "untileDisplay": "Kachel beenden" }, "fileWorkspace": { "files": "Dateien", "closeFileTab": "Dateitab schließen", "close": "Schließen", "closeOthers": "Andere schließen", "closeAll": "Alle schließen", "preview": "Vorschau", "editSource": "Quelle bearbeiten" }, "terminal": { "rename": "Umbenennen", "close": "Schließen", "closeOthers": "Andere schließen", "closeAll": "Alle schließen", "hideTerminal": "Terminal ausblenden ({shortcut})" }, "sessionFiles": { "currentResponse": "Aktuelle Antwort", "noDiffDataAvailable": "Keine Diff-Daten verfügbar für {filePath}", "loading": "Wird geladen...", "noFileChangesInConversation": "Keine Dateiänderungen in dieser Konversation gefunden", "openConversationToSeeChanges": "Öffne eine Konversation, um Dateiänderungen zu sehen", "remove": "Entfernen", "changeCount": "{count, plural, one {# Änderung} other {# Änderungen}}", "fileCount": "{count, plural, one {# Datei} other {# Dateien}}" }, "folderNameDropdown": { "fallbackFolderName": "Ordner", "openFolder": "Ordner öffnen", "cloneRepository": "Repository klonen", "projectBoot": "Projekt-Boot", "opened": "Geöffnet", "recentOpen": "Zuletzt geöffnet" }, "fileWorkspacePanel": { "viewDiff": "Diff anzeigen", "openFile": "Datei öffnen", "fileCount": "{count, plural, one {# Datei} other {# Dateien}}", "openFileOrDiff": "Öffne eine Datei oder Diff im rechten Panel", "disk": "Datenträger", "head": "HEAD", "unsaved": "Ungespeichert", "workingTree": "Arbeitsverzeichnis", "loading": "Wird geladen...", "compareWithBranch": "{path} · vergleichen mit {branch}", "hunkCount": "{count, plural, one {# Hunk} other {# Hunks}}", "prev": "Zurück", "next": "Weiter", "jumpToLine": "Zu Zeile {line} springen", "noParsedDiffSections": "Keine geparsten Diff-Abschnitte", "loadingEditor": "Editor wird geladen...", "imageZoomIn": "Vergrößern", "imageZoomOut": "Verkleinern", "imageZoomReset": "Zoom zurücksetzen" }, "branchDropdown": { "toasts": { "commitCodeCompleted": "Code-Commit abgeschlossen", "pushCodeCompleted": "Code-Push abgeschlossen", "committedFiles": "{count, plural, one {# Datei committet} other {# Dateien committet}}", "taskCompleted": "{label} abgeschlossen", "taskFailed": "{label} fehlgeschlagen", "mergeNoNewCommits": "{branchName} hat keine neuen Commits", "mergedCommits": "{count, plural, one {# Commit zusammengeführt} other {# Commits zusammengeführt}}", "allFilesUpToDate": "Alle Dateien sind aktuell", "updatedFiles": "{count, plural, one {# Datei aktualisiert} other {# Dateien aktualisiert}}", "openCommitWindowFailed": "Commit-Fenster konnte nicht geöffnet werden", "openPushWindowFailed": "Push-Fenster konnte nicht geöffnet werden", "upstreamSet": "Upstream-Branch wurde gesetzt", "upstreamSetAndPushed": "Upstream-Branch gesetzt und {count, plural, one {# Commit} other {# Commits}} gepusht", "noCommitsToPush": "Keine Commits zum Pushen", "pushedCommits": "{count, plural, one {# Commit gepusht} other {# Commits gepusht}}" }, "tasks": { "newBranch": "Branch {name} erstellen", "newWorktree": "Worktree {name} erstellen", "checkoutTo": "Zu {branchName} wechseln", "mergeBranch": "{branchName} mergen", "rebaseTo": "Auf {branchName} rebasen", "deleteBranch": "Branch {branchName} löschen", "deleteRemoteBranch": "Remote-Branch {branchName} löschen", "initGitRepo": "Git-Repository initialisieren", "pullCode": "Code pullen", "fetchInfo": "Informationen fetchen", "pushCode": "Code pushen", "stashChanges": "Änderungen stashen", "stashPop": "Stash anwenden" }, "confirm": { "mergeTitle": "Branch mergen", "rebaseTitle": "Branch rebasen", "deleteTitle": "Branch löschen", "mergeDescription": "{branchName} in den aktuellen Branch {currentBranch} mergen?", "rebaseDescription": "Aktuellen Branch {currentBranch} auf {branchName} rebasen?", "deleteDescription": "Branch {branchName} löschen? Diese Aktion kann nicht rückgängig gemacht werden.", "forceDeleteTitle": "Branch erzwungen löschen", "forceDeleteDescription": "Der Branch {branchName} ist nicht vollständig gemergt. Möchten Sie ihn wirklich erzwungen löschen? Diese Aktion kann nicht rückgängig gemacht werden.", "deleteRemoteTitle": "Remote-Branch löschen", "deleteRemoteDescription": "Remote-Branch {branchName} löschen? Dies entfernt ihn aus dem Remote-Repository und kann nicht rückgängig gemacht werden." }, "current": "Aktuell", "switchToBranch": "Zu diesem Branch wechseln", "mergeBranchIntoCurrent": "{branchName} in {currentBranch} mergen", "rebaseCurrentToBranch": "{currentBranch} auf {branchName} rebasen", "deleteBranch": "Branch löschen", "versionControl": "Versionskontrolle", "initGitRepo": "Git-Repository initialisieren", "pullCode": "Code pullen", "fetchRemoteBranches": "Remote-Branches fetchen", "openCommitWindow": "Code committen...", "pushCode": "Hochladen...", "newBranch": "Neuer Branch...", "newWorktree": "Neuer Worktree...", "stashChanges": "Änderungen stashen...", "stashPop": "Stash anwenden...", "manageRemotes": "Remotes verwalten...", "localBranches": "Lokale Branches ({count, plural, one {#} other {#}})", "noLocalBranches": "Keine lokalen Branches", "remoteBranches": "Remote-Branches ({count, plural, one {#} other {#}})", "noRemoteBranches": "Keine Remote-Branches", "parentBranchHint": "Der aktuelle Branch wurde von {parentBranch} erstellt. Klicken, um {parentBranch} in den aktuellen Branch zu mergen.", "dialogs": { "newBranchTitle": "Neuer Branch", "newBranchDescription": "Neuen Branch vom aktuellen Branch {branch} erstellen", "branchNamePlaceholder": "Branch-Name", "newWorktreeTitle": "Neuer Worktree", "newWorktreeDescription": "Neuen Worktree vom aktuellen Branch {branch} erstellen", "branchNameLabel": "Branch-Name", "worktreePathLabel": "Worktree-Pfad", "worktreePathPlaceholder": "Worktree-Pfad", "manageRemotesTitle": "Remotes verwalten", "manageRemotesEmpty": "Keine Remotes konfiguriert", "remoteNamePlaceholder": "Remote-Name", "remoteUrlPlaceholder": "Remote-URL", "addRemote": "Hinzufügen", "savingRemotes": "Speichern..." }, "conflict": { "title": "Merge-Konflikte", "description": "Die folgenden Dateien haben Konflikte, die gelöst werden müssen:", "abort": "Merge abbrechen", "openMergeTool": "Merge-Tool öffnen", "completeMerge": "Merge abschließen", "abortSuccess": "Merge erfolgreich abgebrochen", "completeSuccess": "Merge erfolgreich abgeschlossen" }, "stashDialog": { "title": "Änderungen stashen", "description": "Aktuelle Änderungen im Stash speichern", "messageLabel": "Nachricht", "messagePlaceholder": "Stash-Nachricht (optional)", "keepIndex": "Index beibehalten (gestagete Änderungen bleiben erhalten)", "cancel": "Abbrechen", "stash": "Stashen", "success": "Änderungen wurden gestasht", "error": "Stash fehlgeschlagen" }, "unstashDialog": { "title": "Stash anwenden", "noStashes": "Keine Stashes vorhanden", "selectFile": "Datei auswählen um Diff anzuzeigen", "viewDiff": "Diff anzeigen", "original": "Original", "modified": "Geändert", "apply": "Anwenden", "drop": "Löschen", "applySuccess": "Stash angewendet", "dropSuccess": "Stash gelöscht", "confirmApply": "Stash {ref} auf das Arbeitsverzeichnis anwenden?", "cancel": "Abbrechen" } }, "commitDialog": { "toasts": { "commitCompleted": "Code-Commit abgeschlossen", "pushFailed": "Push fehlgeschlagen", "committedFiles": "{count, plural, one {# Datei committet} other {# Dateien committet}}", "addedToVcs": "Zu VCS hinzugefügt", "addToVcsFailed": "Hinzufügen zu VCS fehlgeschlagen", "fileDeleted": "Datei gelöscht", "deleteFailed": "Löschen fehlgeschlagen", "fileRolledBack": "Datei zurückgesetzt", "rollbackFailed": "Rollback fehlgeschlagen", "dirRolledBack": "Verzeichnis zurückgesetzt", "dirDeleted": "Verzeichnis gelöscht" }, "confirm": { "deleteTitle": "Löschen bestätigen", "deleteDescription": "Datei \"{file}\" löschen? Diese Aktion kann nicht rückgängig gemacht werden.", "rollbackTitle": "Rollback bestätigen", "rollbackDescription": "Datei \"{file}\" auf HEAD zurücksetzen? Ungespeicherte Änderungen gehen verloren.", "rollbackDirDescription": "Verzeichnis \"{dir}\" auf HEAD zurücksetzen? Nicht gespeicherte Änderungen gehen verloren.", "deleteDirDescription": "Verzeichnis \"{dir}\" löschen? Diese Aktion kann nicht rückgängig gemacht werden." }, "actions": { "select": "Auswählen", "unselect": "Auswahl aufheben", "rollback": "Zurücksetzen", "addToVcs": "Zu VCS hinzufügen" }, "aria": { "selectFile": "{action}: {path}", "unselectAllFiles": "Auswahl aller Dateien aufheben", "selectAllFiles": "Alle Dateien auswählen", "unselectTracked": "Auswahl verfolgter Änderungen aufheben", "selectTracked": "Verfolgte Änderungen auswählen", "unselectUntracked": "Auswahl nicht verfolgter Dateien aufheben", "selectUntracked": "Nicht verfolgte Dateien auswählen" }, "loading": "Wird geladen...", "selectionCount": "{selected} / {total} Dateien", "emptyFiles": "Keine geänderten Dateien", "trackedChanges": "Verfolgte Änderungen ({count})", "untrackedFiles": "Nicht verfolgte Dateien ({count})", "commitMessage": "Commit-Nachricht", "commitMessagePlaceholder": "Commit-Nachricht eingeben...", "commitButton": "Einchecken ({count})", "commitAndPushButton": "Committen und pushen ({count})", "head": "HEAD", "workingTree": "Arbeitsverzeichnis", "clickFileToDiff": "Dateinamen anklicken, um Diff zu sehen", "loadingDiff": "Diff wird geladen..." }, "pushWindow": { "title": "Code pushen", "noUnpushedCommits": "Keine ungepushten Commits", "noRemoteConfigured": "Kein Git-Remote konfiguriert\nFüge einen unter Remotes verwalten hinzu", "newBranchNoPushedCommits": "Neuer Branch — pushen, um Remote-Tracking-Branch zu erstellen", "unpushed": "Nicht gepusht", "selectFileToViewDiff": "Datei auswählen, um Unterschiede anzuzeigen", "before": "Vorher", "after": "Nachher", "push": "Pushen", "toasts": { "pushSuccess": "Push erfolgreich", "pushFailed": "Push fehlgeschlagen", "upstreamSet": "Remote-Tracking-Branch wurde eingerichtet", "upstreamSetAndPushed": "Remote-Tracking-Branch eingerichtet und {count} Commits gepusht", "noCommitsToPush": "Keine Commits zum Pushen", "pushedCommits": "{count} Commits gepusht" } }, "gitLogTab": { "filesTitle": "Dateien", "expandAllFiles": "Alle Dateien ausklappen", "collapseAllFiles": "Alle Dateien einklappen", "workspace": "Arbeitsbereich", "retry": "Erneut versuchen", "noCommitsFound": "Keine Commits gefunden", "hash": "Hash-Wert", "copyHash": "Hash kopieren", "copyMessage": "Nachricht kopieren", "author": "Autor", "noFileChangeDetails": "Keine Details zu Dateiänderungen verfügbar.", "branchesTitle": "Zweige", "loadingBranches": "Branches werden geladen...", "noContainingBranches": "Keine enthaltenen Branches gefunden.", "newBranch": "Neuer Branch...", "resetToHere": "Auf diesen Stand zurücksetzen", "resetDisabledReasonNotCurrentBranchView": "Nur in der Ansicht des aktuellen Branches verfügbar", "viewCommitDiffAria": "Diff für Commit {hash} anzeigen", "copyFullCommitHashAria": "Vollständigen Commit-Hash {hash} kopieren", "pushStatus": { "pushed": "Zum Remote gepusht", "notPushed": "Nicht zum Remote gepusht", "unknown": "Push-Status unbekannt (kein Upstream konfiguriert)" }, "time": { "monthsAgo": "{count, plural, one {vor # Monat} other {vor # Monaten}}", "daysAgo": "{count, plural, one {vor # Tag} other {vor # Tagen}}", "hoursAgo": "{count, plural, one {vor # Stunde} other {vor # Stunden}}", "minsAgo": "{count, plural, one {vor # Min} other {vor # Min}}", "justNow": "gerade eben" }, "toasts": { "createdAndSwitchedNewBranch": "Neuen Branch erstellt und gewechselt", "newBranchFromCommit": "{name} (aus {shortHash})", "createBranchFailed": "Branch konnte nicht erstellt werden", "openPushWindowFailed": "Push-Fenster konnte nicht geöffnet werden", "resetSuccess": "Zurücksetzen erfolgreich", "resetSuccessDescription": "{branch} wurde mit {mode} auf {shortHash} zurückgesetzt", "resetFailed": "Zurücksetzen fehlgeschlagen" }, "branchSelector": { "selectBranchPlaceholder": "Branch auswählen...", "localBranches": "Lokale Branches", "current": "Aktuell", "remoteBranches": "Remote-Branches", "refreshCommitHistory": "Commit-Verlauf aktualisieren" }, "dialogs": { "newBranchTitle": "Neuer Branch", "newBranchDescription": "Erstelle einen neuen Branch mit Commit {shortHash} als letztem Commit.", "branchNamePlaceholder": "Branch-Name", "reset": { "title": "Aktuellen Branch auf diesen Commit zurücksetzen", "branchLabel": "Branch", "targetLabel": "Ziel-Commit", "messageLabel": "Nachricht", "modeLabel": "Reset-Modus", "confirmButton": "Zurücksetzen", "modes": { "soft": { "label": "--soft", "description": "Verschiebt HEAD und den Zeiger des aktuellen Branches auf den Ziel-Commit.\nIndex und Working Tree bleiben unverändert.\nÄnderungen aus den entfernten Commits bleiben staged." }, "mixed": { "label": "--mixed (Standard)", "description": "Verschiebt HEAD auf den Ziel-Commit.\nSetzt den Index auf den Ziel-Commit zurück und behält Änderungen im Working Tree.\nÄnderungen wechseln von staged zu unstaged." }, "hard": { "label": "--hard", "description": "Verschiebt HEAD und setzt sowohl Index als auch Working Tree auf den Ziel-Commit zurück.\nLokale verfolgte Änderungen nach dem Ziel-Commit werden verworfen.\nDies ist eine destruktive Operation." }, "keep": { "label": "--keep", "description": "Verschiebt HEAD auf den Ziel-Commit und versucht lokale Änderungen zu behalten.\nNur nicht-konfliktierende Änderungen bleiben erhalten.\nBei Konflikten wird der Reset zum Schutz der Änderungen abgebrochen." } } } } }, "gitChangesTab": { "workspace": "Arbeitsbereich", "noChanges": "Keine lokalen Änderungen", "trackedChanges": "Verfolgte Änderungen ({count})", "untrackedFiles": "Nicht verfolgte Dateien ({count})", "expandTracked": "Verfolgte Änderungen ausklappen", "collapseTracked": "Verfolgte Änderungen einklappen", "expandUntracked": "Nicht verfolgte Dateien ausklappen", "collapseUntracked": "Nicht verfolgte Dateien einklappen", "actions": { "commitCode": "Code committen", "rollback": "Zurücksetzen", "addToVcs": "Zu VCS hinzufügen", "delete": "Löschen" }, "toasts": { "noAddableFilesInDir": "Keine geänderten Dateien in diesem Verzeichnis können zu VCS hinzugefügt werden", "noRollbackFilesInDir": "Keine geänderten Dateien in diesem Verzeichnis können zurückgesetzt werden", "addedToVcs": "{name} zu VCS hinzugefügt", "addToVcsFailed": "Hinzufügen zu VCS fehlgeschlagen", "openCommitWindowFailed": "Commit-Fenster konnte nicht geöffnet werden", "rolledBack": "{name} zurückgesetzt", "rollbackFailed": "Rollback fehlgeschlagen", "addedFilesToVcs": "{count, plural, one {# Datei} other {# Dateien}} zu VCS hinzugefügt", "rolledBackFiles": "{count, plural, one {# Datei zurückgesetzt} other {# Dateien zurückgesetzt}}", "deleted": "{name} gelöscht", "deleteFailed": "Löschen fehlgeschlagen", "deletedFiles": "{count} Dateien gelöscht", "noDeletableFilesInDir": "In diesem Verzeichnis gibt es keine löschbaren geänderten Dateien" }, "directoryDialog": { "descriptionAdd": "Dateien unter Verzeichnis {path} auswählen, um sie zu VCS hinzuzufügen.", "descriptionRollback": "Dateien unter Verzeichnis {path} auswählen, um sie zurückzusetzen.", "descriptionDelete": "Dateien unter Verzeichnis {path} auswählen, um sie zu löschen. Diese Aktion kann nicht rückgängig gemacht werden.", "descriptionFallback": "Dateien auswählen, um fortzufahren.", "selectionCount": "{selected} / {total} Dateien ausgewählt", "selectAll": "Alle auswählen", "unselectAll": "Auswahl aller aufheben", "loadingCandidates": "Verzeichnisänderungen werden geladen...", "noOperableFiles": "Keine bearbeitbaren Dateien" }, "rollbackConfirm": { "title": "Rollback bestätigen", "descriptionWithTarget": "Lokale Änderungen für {kind} \"{name}\" zurücksetzen?", "descriptionFallback": "Lokale Änderungen zurücksetzen?", "kindDirectory": "Verzeichnis", "kindFile": "Datei" }, "deleteConfirm": { "title": "Löschen bestätigen", "descriptionWithTarget": "{kind} \"{name}\" löschen? Diese Aktion kann nicht rückgängig gemacht werden.", "descriptionFallback": "Diese Aktion kann nicht rückgängig gemacht werden.", "kindDirectory": "Verzeichnis", "kindFile": "Datei" } }, "tabContext": { "loadingConversation": "Wird geladen...", "untitledConversation": "Unbenannte Konversation", "newConversation": "Neue Konversation" }, "fileTreeTab": { "workspace": "Arbeitsbereich", "retry": "Erneut versuchen", "git": "Git", "openInFileManager": "Im Dateimanager öffnen", "openInFinder": "In Finder öffnen", "openInExplorer": "In Explorer öffnen", "attachToCurrentSession": "Zur Sitzung hinzufügen", "compareWithBranch": "Mit Branch vergleichen...", "reloadFromDisk": "Von Datenträger neu laden", "new": "Neu", "newFile": "Datei", "newDirectory": "Verzeichnis", "openIn": "Öffnen in", "openInTerminal": "Im Terminal öffnen", "actions": { "select": "Auswählen", "unselect": "Auswahl aufheben", "commitCode": "Code committen", "rollback": "Zurücksetzen", "addToVcs": "Zu VCS hinzufügen" }, "aria": { "selectPath": "{action}: {path}" }, "toasts": { "openDirectoryFailed": "Verzeichnis konnte nicht geöffnet werden", "openBuiltinTerminalFailed": "Integriertes Terminal konnte nicht geöffnet werden", "openCommitWindowFailed": "Commit-Fenster konnte nicht geöffnet werden", "noAddableFilesInDir": "Keine geänderten Dateien in diesem Verzeichnis können zu VCS hinzugefügt werden", "noRollbackFilesInDir": "Keine geänderten Dateien in diesem Verzeichnis können zurückgesetzt werden", "addedToVcs": "{name} zu VCS hinzugefügt", "addToVcsFailed": "Hinzufügen zu VCS fehlgeschlagen", "loadBranchesFailed": "Branches konnten nicht geladen werden", "renameFailed": "Umbenennen fehlgeschlagen", "deleteFailed": "Löschen fehlgeschlagen", "rolledBack": "{name} zurückgesetzt", "rollbackFailed": "Zurücksetzen fehlgeschlagen", "addedFilesToVcs": "{count, plural, one {# Datei zu VCS hinzugefügt} other {# Dateien zu VCS hinzugefügt}}", "rolledBackFiles": "{count, plural, one {# Datei zurückgesetzt} other {# Dateien zurückgesetzt}}", "savedAsCopy": "Als Kopie gespeichert", "saveCopyFailed": "Speichern als Kopie fehlgeschlagen", "watchStartFailed": "Dateiwatch konnte nicht gestartet werden", "createFailed": "Erstellen fehlgeschlagen" }, "createDialog": { "newFile": "Neue Datei", "newDirectory": "Neues Verzeichnis", "description": "Geben Sie einen Namen für das neue {kind} ein.", "placeholderFile": "file-name.ext", "placeholderDirectory": "folder-name" }, "renameDialog": { "renameDirectory": "Verzeichnis umbenennen", "renameFile": "Datei umbenennen", "description": "Geben Sie einen neuen Namen ein (nur Name, kein Pfad).", "placeholderDirectory": "neuer-ordnername", "placeholderFile": "neuer-dateiname.ext" }, "directoryDialog": { "descriptionAdd": "Wählen Sie Dateien im Verzeichnis {path} aus, um sie zu VCS hinzuzufügen.", "descriptionRollback": "Wählen Sie Dateien im Verzeichnis {path} aus, um sie zurückzusetzen.", "descriptionFallback": "Wählen Sie Dateien aus, um fortzufahren.", "selectionCount": "{selected} / {total} Dateien ausgewählt", "selectAll": "Alle auswählen", "unselectAll": "Auswahl aufheben", "loadingCandidates": "Verzeichnisänderungen werden geladen...", "noOperableFiles": "Keine bearbeitbaren Dateien" }, "compareDialog": { "title": "Mit Branch vergleichen", "descriptionWithTarget": "Wählen Sie einen Branch und vergleichen Sie mit {kind} {path}", "descriptionFallback": "Wählen Sie einen Branch zum Vergleichen.", "kindDirectory": "Verzeichnis", "kindFile": "Datei", "filterPlaceholder": "Branches filtern, z. B. main / origin/main", "singleClickHint": "Klicken Sie auf einen Branch, um direkt zu vergleichen", "loadingBranches": "Branches werden geladen...", "recentBranches": "Letzte Branches ({count})", "noCurrentBranch": "Kein aktueller Branch", "localBranches": "Lokale Branches ({count})", "remoteBranches": "Remote-Branches ({count})", "noMatchingBranches": "Keine passenden Branches" }, "externalConflictDialog": { "title": "Externe Dateiänderungen erkannt", "descriptionWithPath": "Datei {path} wurde auf dem Datenträger geändert, und aktuelle Bearbeitungen sind nicht gespeichert.", "descriptionFallback": "Aktuelle Datei wurde auf dem Datenträger geändert, und aktuelle Bearbeitungen sind nicht gespeichert.", "compare": "Vergleichen", "savingCopy": "Kopie wird gespeichert...", "saveAsCopy": "Als Kopie speichern", "reload": "Neu laden" }, "deleteConfirm": { "title": "Löschen bestätigen", "descriptionWithTarget": "{kind} \"{name}\" löschen? Diese Aktion kann nicht rückgängig gemacht werden.", "descriptionFallback": "Diese Aktion kann nicht rückgängig gemacht werden.", "kindDirectory": "Verzeichnis", "kindFile": "Datei" }, "rollbackConfirm": { "title": "Zurücksetzen bestätigen", "descriptionWithTarget": "Lokale Änderungen für Datei \"{name}\" zurücksetzen?", "descriptionFallback": "Lokale Änderungen für diese Datei zurücksetzen?" }, "terminalTitle": "Konsole · {name}" }, "commandDropdown": { "loading": "Wird geladen...", "addCommand": "Befehl hinzufügen", "manageCommands": "Befehle verwalten...", "runCommandTitle": "Ausführen: {command}", "stopCommandTitle": "Stoppen: {command}", "manageDialog": { "title": "Befehle verwalten", "empty": "Noch keine Befehle", "namePlaceholder": "Bezeichnung", "commandPlaceholder": "Befehl", "add": "Hinzufügen", "saving": "Speichern..." } }, "workspaceContext": { "confirmCloseDirtyTab": "„{title}“ ohne Speichern schließen?", "confirmCloseOtherDirtyTabs": "Andere Tabs mit ungespeicherten Änderungen schließen?", "confirmCloseAllDirtyTabs": "Alle Tabs mit ungespeicherten Änderungen schließen?", "unableLoadContent": "Inhalt konnte nicht geladen werden.\n\n{message}", "previewRequestTimedOut": "Vorschauanfrage hat das Zeitlimit überschritten", "diffRequestTimedOut": "Diff-Anfrage hat das Zeitlimit überschritten", "branchCompareRequestTimedOut": "Branch-Vergleichsanfrage hat das Zeitlimit überschritten", "commitDiffRequestTimedOut": "Commit-Diff-Anfrage hat das Zeitlimit überschritten", "saveRequestTimedOut": "Speicheranfrage hat das Zeitlimit überschritten", "reloadRequestTimedOut": "Neuladeanfrage hat das Zeitlimit überschritten", "noChanges": "Keine Änderungen.", "noDiffOutput": "Keine Diff-Ausgabe.", "diffTitleWorkspace": "Diff · Arbeitsbereich", "diffDescriptionWorkingTree": "Working Tree (HEAD)", "diffTitleFile": "Unterschied · {name}", "compareTitleFile": "Vergleich · {name}", "compareTitleBranch": "Vergleich · {branch}", "compareDescriptionPath": "{path} · vergleichen mit {branch}", "compareDescriptionBranch": "vergleichen mit {branch}", "diffTitleCommitFile": "Unterschied · {name} @ {hash}", "diffTitleCommit": "Unterschied · {hash}", "diffDescriptionCommitPath": "{path} · Commit {commit}", "diffDescriptionCommit": "Commit {commit}", "diffTitleConflictFile": "Konflikt · {name}", "diffDescriptionConflict": "{path} · Disk vs ungespeichert" }, "chat": { "acpConnections": { "actions": { "openAgentsSettings": "Agenten-Einstellungen öffnen", "retry": "Erneut versuchen" }, "agentsSetupHint": "Öffnen Sie Einstellungen > Agenten, um die Installation zu verwalten.", "withSetupHint": "{message}\n{hint}", "blocked": { "missingConfig": "Aktuelle Agenten-Konfiguration kann nicht gelesen werden.", "disabled": "{agent} ist in den Agenten-Einstellungen deaktiviert. Aktivieren Sie ihn vor dem Verbinden.", "unavailable": "{agent} ist auf der aktuellen Plattform nicht verfügbar.", "sdkMissing": "{agent} SDK ist nicht installiert" }, "backendErrors": { "initializeTimeout": "Der Verbindungs-Handshake von {agent} hat nach 60 Sekunden das Zeitlimit überschritten. Öffnen Sie die Einstellungen, um Agenten- und Netzwerkkonfiguration zu prüfen.", "processExited": "{agent}-Prozess wurde unerwartet beendet.", "spawnFailed": "{agent} konnte nicht gestartet werden: {message}", "downloadFailed": "{agent}-Download fehlgeschlagen: {message}" }, "unableReadAgentConfig": "Agenten-Konfiguration kann nicht gelesen werden: {message}", "connectFailedTitle": "{agent} Verbindung fehlgeschlagen", "toolFallbackTitle": "Werkzeug", "eventErrorTitle": "Agentenfehler", "notificationTurnComplete": "{agent} hat die Antwort abgeschlossen", "notificationError": "{agent} Fehler: {message}", "claudeApiRetry": { "fallbackError": "authentication_failed", "retryingWithMax": "erneuter Versuch {attempt}/{max}", "retryingAttempt": "erneuter Versuch {attempt}", "retrying": "erneuter Versuch", "nextRetryIn": "nächster in {seconds}s", "line": "{error}{status} · {retry}", "lineWithDelay": "{error}{status} · {retry}, {delay}", "httpStatus": " (HTTP {status})" } }, "connectionLifecycle": { "tasks": { "connectingTitle": "Verbinde mit {agent}", "connectingDescription": "Verbindung wird hergestellt", "loadingSelectorsTitle": "{agent}-Selektoren werden geladen", "loadingSelectorsDescription": "Modus- und Sitzungsoptionen werden abgerufen", "initSessionTitle": "Initializing {agent} session", "initSessionDescription": "Creating session and loading configuration" }, "errors": { "connectionFailed": "Verbindung fehlgeschlagen" } }, "shared": { "attachedResources": "Angehängte Ressourcen", "toolCallFailed": "Tool-Aufruf fehlgeschlagen" }, "messageThread": { "emptyTitle": "Noch keine Nachrichten", "emptyDescription": "Starten Sie eine Unterhaltung, um hier Nachrichten zu sehen" }, "chatInput": { "connecting": "Verbinden...", "agentResponding": "{agent} antwortet...", "sendMessage": "Nachricht senden..." }, "messageInput": { "askAnything": "Fragen Sie alles...", "removeAttachmentAria": "{name} entfernen", "attachFiles": "Dateien anhängen", "dropFilesToAttach": "Dateien zum Anhängen ablegen", "loadingSettings": "Einstellungen werden geladen...", "loadingMode": "Modus wird geladen...", "cancel": "Abbrechen", "send": "Senden", "forkAndSend": "Fork & Senden", "slashCommands": "Slash-Befehle", "expertSkills": "Expertenfähigkeiten", "expertsEmptyForAgent": "Dieser Agent hat keine aktivierten Experten. Aktivieren Sie sie unter Einstellungen > Experten." }, "messageQueue": { "addToQueue": "Zur Warteschlange", "saveEdit": "Speichern", "cancelEdit": "Bearbeitung abbrechen", "editItem": "Bearbeiten", "deleteItem": "Entfernen" }, "welcomeInputPanel": { "agentsSettingsPath": "Einstellungen > Agenten", "autoConnectFallback": "Klicken Sie, um {path} zu öffnen und die Installation zu verwalten.", "autoConnectAppend": "{message}. Klicken Sie, um {path} zu öffnen und die Installation zu verwalten.", "enableAgentFirstPlaceholder": "Aktivieren Sie mindestens einen Agenten, bevor Sie eine Sitzung starten...", "askAnythingPlaceholder": "Fragen Sie alles..." }, "agentSelector": { "noEnabledAgents": "Keine aktivierten Agenten", "openAgentsSettings": "Agenten-Einstellungen öffnen" }, "agentPlanOverlay": { "title": "Agentenplan", "collapsePlanAria": "Plan einklappen", "collapsedSummary": "Arbeitsplan {completed}/{total}", "status": { "completed": "Abgeschlossen", "inProgress": "In Bearbeitung", "pending": "Ausstehend", "unknown": "Unbekannt" }, "priority": { "high": "Hoch", "medium": "Mittel", "low": "Niedrig", "unknown": "Unbekannt" } }, "permissionDialog": { "subtitle": "Agent fordert Berechtigung an, um diesen Zug fortzusetzen.", "kindFallbackTool": "Tool", "command": "Befehl", "cwd": "Arbeitsverzeichnis: {cwd}", "filesSummary": "Dateien: {count}", "moreFiles": "+{count} weitere Dateien", "plan": "Arbeitsplan", "allowedActions": "Erlaubte Aktionen", "targetMode": "Zielmodus: {mode}" }, "questionDialog": { "title": "Agent stellt eine Frage", "placeholder": "Antwort eingeben...", "send": "Senden" }, "messageBranch": { "previousBranchAria": "Vorheriger Branch", "nextBranchAria": "Nächster Branch", "pageOf": "{current} von {total}" }, "terminal": { "title": "Konsole", "running": "Läuft" }, "reasoning": { "thinking": "Denkt nach…", "thoughtForFewSeconds": "Nachgedacht", "thoughtForSeconds": "Nachgedacht" }, "linkSafety": { "localFileTitle": "Lokale Datei öffnen?", "externalLinkTitle": "Externen Link öffnen?", "localFileDescription": "Sie sind dabei, eine lokale Datei im Dateipanel zu öffnen.", "externalLinkDescription": "Sie sind dabei, eine externe Website zu besuchen.", "cancel": "Abbrechen", "opening": "Wird geöffnet…", "openFile": "Datei öffnen", "openLink": "Link öffnen", "errorCannotOpen": "Lokale Datei kann nicht geöffnet werden", "errorNoWorkspace": "Es ist kein Arbeitsbereichsordner aktiv.", "errorOutsideWorkspace": "Die Datei befindet sich außerhalb des aktuellen Arbeitsbereichsordners.", "errorFailedOpen": "Lokale Datei konnte nicht geöffnet werden", "errorFailedLink": "Link konnte nicht geöffnet werden" }, "messageList": { "attachedResources": "Angehängte Ressourcen", "loading": "Lädt...", "error": "Fehler: {message}", "emptyConversation": "Keine Nachrichten in dieser Unterhaltung.", "systemMessage": "Systemnachricht", "copyMessage": "Kopieren", "copied": "Kopiert" }, "liveTurnStats": { "thinking": "Denkt nach...", "streaming": "Übertragung", "elapsedHours": "{value} Std", "elapsedMinutes": "{value} Min", "elapsedSeconds": "{value} Sek", "toolUseCount": "{count} Tool {count, plural, one {use} other {uses}}" }, "tool": { "parameters": "Parameter", "error": "Fehler", "result": "Ergebnis", "status": { "approvalRequested": "Warten auf Genehmigung", "approvalResponded": "Beantwortet", "inputAvailable": "Läuft", "inputStreaming": "Ausstehend", "outputAvailable": "Abgeschlossen", "outputDenied": "Abgelehnt", "outputError": "Fehler" } }, "toolCallBlock": { "tool": "Werkzeug", "error": "Fehler", "result": "Ergebnis" }, "contentParts": { "showingTailOutput": "Zur besseren Performance wird während des Streamings nur die Endausgabe angezeigt.", "result": "Ergebnis", "unknown": "unbekannt", "inputTruncated": "Eingabe wurde gekürzt — Diff ist möglicherweise unvollständig.", "replaceAll": "ALLES ERSETZEN", "filesCount": "Dateien: {count}", "update": "aktualisieren", "moreFiles": "+{count} weitere Dateien", "timeoutMs": "Zeitlimit: {timeout}ms", "backgroundTrue": "Hintergrund: true", "offset": "Versatz: {offset}", "limit": "Grenze: {limit}", "pages": "Seiten: {pages}", "mode": "Modus: {mode}", "cell": "Zelle: {cell}", "pathLabel": "Pfad:", "globLabel": "Glob-Muster:", "typeLabel": "Typ:", "outputLabel": "Ausgabe:", "caseInsensitive": "Groß-/Kleinschreibung ignorieren", "multiline": "Mehrzeilig", "promptLabel": "Eingabe", "subjectLabel": "Betreff", "taskLabel": "Aufgabe", "nameLabel": "Bezeichnung:", "field": { "file": "Datei", "notebook": "Notizbuch", "command": "Befehl", "old": "Alt", "new": "Neu", "pattern": "Muster", "path": "Pfad", "query": "Abfrage", "url": "URL:", "description": "Beschreibung", "content": "Inhalt", "source": "Quelle", "prompt": "Eingabe", "subject": "Betreff", "taskId": "Aufgaben-ID", "status": "Zustand", "skill": "Skill", "args": "Argumente", "offset": "Versatz", "limit": "Grenze", "glob": "Glob-Muster", "type": "Typ", "output": "Ausgabe", "replaceAll": "Alles ersetzen", "language": "Sprache", "timeout": "Zeitlimit", "background": "Hintergrund", "agentType": "Agent-Typ", "library": "Bibliothek", "libraryId": "Bibliotheks-ID" }, "title": { "edit": "Bearbeiten", "command": "Befehl", "todoWrite": "TodoWrite (Aufgaben aktualisieren)", "read": "Lesen", "write": "Schreiben", "notebookEdit": "NotebookEdit (Notizbuch bearbeiten)", "editFiles": "Bearbeiten ({count} Dateien)", "editWithTarget": "{target} bearbeiten", "readWithTarget": "{target} lesen", "writeWithTarget": "{target} schreiben", "notebookEditWithTarget": "NotebookEdit ({target})", "globWithPattern": "Glob-Muster {pattern}", "grepWithPattern": "Grep-Muster {pattern}", "taskCreateWithSubject": "Aufgabe erstellen: {subject}", "taskUpdateWithStatus": "Aufgabe aktualisieren #{id} -> {status}", "taskUpdate": "Aufgabe aktualisieren #{id}", "webFetchWithUrl": "WebFetch ({url})", "webSearchWithQuery": "Websuche: {query}", "todosProgress": "Aufgaben ({done}/{total})", "skillWithName": "Skill: {name}", "genericWithContext": "{tool} ({context})" } } }, "diffPreview": { "mode": { "added": "Hinzugefügt", "deleted": "Gelöscht", "renamed": "Umbenannt", "modified": "Geändert" }, "hunkLabel": "Block {index}", "loadingHunk": "Hunk wird geladen...", "noDiffData": "Keine Diff-Daten" } }, "ProjectBoot": { "title": "Projekt-Starter", "tabs": { "shadcn": "shadcn" }, "config": { "base": "Basis", "style": "Stil", "baseColor": "Basisfarbe", "theme": "Thema", "chartColor": "Diagrammfarbe", "iconLibrary": "Icon-Bibliothek", "font": "Schriftart", "fontHeading": "Überschrift-Schriftart", "menuAccent": "Menü-Akzent", "menuColor": "Menü-Farbe", "radius": "Radius", "template": "Vorlage", "createProject": "Projekt erstellen", "sectionStyle": "Stil", "sectionColors": "Farben", "sectionTypography": "Typografie", "sectionInterface": "Oberfläche" }, "preview": { "loading": "Vorschau wird geladen..." }, "createDialog": { "title": "Projekt erstellen", "projectName": "Projektname", "projectNamePlaceholder": "my-app", "frameworkTemplate": "Framework-Vorlage", "packageManager": "Paketmanager", "saveDirectory": "Speicherverzeichnis", "saveDirectoryPlaceholder": "Verzeichnis auswählen...", "browseDirectory": "Durchsuchen", "projectPath": "Projekt wird erstellt in: {path}", "advancedOptions": "Erweiterte Optionen", "base": "Basisbibliothek", "enableRtl": "RTL-Unterstützung aktivieren", "enableRtlDescription": "Layout-Unterstützung für Rechts-nach-links-Sprachen (z.B. Arabisch, Hebräisch) aktivieren", "pmChecking": "Wird überprüft...", "pmNotInstalled": "Nicht installiert", "cancel": "Abbrechen", "create": "Erstellen", "creating": "Projekt wird erstellt..." }, "toasts": { "createFailed": "Projekt konnte nicht erstellt werden", "createSuccess": "Projekt erfolgreich erstellt" }, "errors": { "directoryExists": "Zielverzeichnis existiert bereits", "commandFailed": "Projekterstellungsbefehl fehlgeschlagen." } }, "WebServiceSettings": { "sectionTitle": "Webdienst", "sectionDescription": "Aktivieren Sie den Fernzugriff auf Codeg über den Browser", "port": "Port", "status": "Status", "running": "Läuft", "stopped": "Gestoppt", "processing": "Verarbeitung...", "start": "Starten", "stop": "Stoppen", "startFailed": "Start fehlgeschlagen", "stopFailed": "Stopp fehlgeschlagen", "open": "Öffnen", "hide": "Ausblenden", "show": "Einblenden", "copy": "Kopieren", "addressLabel": "Zugriffsadresse", "tokenLabel": "Zugriffstoken", "tokenHint": "Geben Sie dieses Token beim ersten Zugriff auf den Web-Client ein" }, "DirectoryBrowser": { "title": "Verzeichnis durchsuchen", "pathPlaceholder": "Verzeichnispfad eingeben...", "goHome": "Zum Heimverzeichnis", "navigateUp": "Zum übergeordneten Verzeichnis", "select": "Auswählen", "cancel": "Abbrechen", "loading": "Wird geladen...", "emptyDirectory": "Dieses Verzeichnis ist leer", "errorLoadingDir": "Verzeichnis konnte nicht geladen werden", "permissionDenied": "Zugriff verweigert" }, "ChatChannelSettings": { "loading": "Wird geladen...", "sectionTitle": "Chat-Kanäle", "sectionDescription": "Konfigurieren Sie IM-Bots, um Ereignisbenachrichtigungen zu empfangen und Codieraktivitäten abzufragen.", "addChannel": "Kanal hinzufügen", "noChannels": "Noch keine Chat-Kanäle konfiguriert.", "channelName": "Name", "channelNamePlaceholder": "Mein Telegram Bot", "channelType": "Kanaltyp", "lark": "Lark (Feishu)", "weixin": "WeChat", "dailyReport": "Tagesbericht", "dailyReportTime": "Berichtszeit", "nameRequired": "Kanalname ist erforderlich.", "tokenRequired": "Token ist erforderlich.", "chatIdRequired": "Chat-ID ist erforderlich.", "loadFailed": "Kanäle konnten nicht geladen werden.", "saveFailed": "Änderungen konnten nicht gespeichert werden.", "connectSuccess": "Kanal verbunden.", "connectFailed": "Verbindung fehlgeschlagen", "disconnectSuccess": "Kanal getrennt.", "disconnectFailed": "Trennung fehlgeschlagen.", "testSuccess": "Verbindungstest bestanden.", "testFailed": "Verbindungstest fehlgeschlagen", "deleteSuccess": "Kanal gelöscht.", "deleteFailed": "Kanal konnte nicht gelöscht werden.", "deleteConfirmTitle": "Kanal löschen", "deleteConfirmMessage": "Der Kanal und seine Nachrichtenprotokolle werden dauerhaft gelöscht. Sind Sie sicher?", "cancel": "Abbrechen", "delete": "Löschen", "create": "Erstellen", "save": "Speichern", "channelListTitle": "Konfigurierte Kanäle", "channelListDescription": "Aktivierte Kanäle werden beim Dienststart automatisch verbunden.", "editChannel": "Kanal bearbeiten", "editSuccess": "Kanal aktualisiert.", "tokenPlaceholderKeep": "Leer lassen, um aktuellen Wert beizubehalten", "weixinScanTitle": "QR-Code scannen", "weixinScanDescription": "Öffnen Sie WeChat und scannen Sie den QR-Code, um eine Verbindung herzustellen.", "weixinQrcodeExpired": "QR-Code abgelaufen.", "weixinRefreshQrcode": "Aktualisieren", "weixinWaitingScan": "Warten auf Scan...", "weixinPollError": "Verbindung instabil, erneuter Versuch...", "connect": "Verbinden", "disconnect": "Trennen", "test": "Verbindung testen", "tabs": { "channels": "Kanäle", "commands": "Befehle", "events": "Ereignisse", "other": "Sonstiges" }, "commands": { "title": "Integrierte Befehle", "description": "Im Chat-Kanal verfügbare Bot-Befehle. In Gruppenchats ist @Bot erforderlich, um Nachrichten zu verarbeiten.", "prefixLabel": "Befehlspräfix", "prefixDescription": "1-3 nicht-alphanumerische Zeichen zum Auslösen von Bot-Befehlen (Standard /).", "prefixSaved": "Befehlspräfix gespeichert.", "prefixSaveFailed": "Fehler beim Speichern des Präfixes.", "prefixInvalid": "Das Präfix muss 1-3 nicht-alphanumerische Zeichen sein.", "save": "Speichern", "folderDesc": "Arbeitsordner auswählen", "agentDesc": "KI-Agent auswählen", "taskDesc": "Sitzung erstellen und Aufgabe ausführen", "sessionsDesc": "Aktive Sitzungen im Ordner anzeigen", "resumeDesc": "Neueste Konversationen / Sitzung fortsetzen", "cancelDesc": "Aktuelle Aufgabe abbrechen", "approveDesc": "Berechtigungsanfrage des Agenten genehmigen", "denyDesc": "Berechtigungsanfrage des Agenten ablehnen", "searchDesc": "Konversationen nach Stichwort suchen", "todayDesc": "Heutige Aktivitätsübersicht", "statusDesc": "Kanal-Verbindungsstatus", "helpDesc": "Hilfe anzeigen" }, "events": { "title": "Ereignisbenachrichtigungen", "description": "Nach Aktivierung werden ausgelöste Ereignisse an den Kanal gesendet.", "turnComplete": "Runde abgeschlossen", "turnCompleteDesc": "Wenn eine Agentenrunde endet", "error": "Agentenfehler", "errorDesc": "Wenn ein Agent einen Fehler feststellt", "saved": "Ereignisfilter aktualisiert.", "saveFailed": "Fehler beim Speichern des Ereignisfilters." }, "language": { "title": "Nachrichtensprache", "description": "Sprache für Ereignisbenachrichtigungen, Befehlsantworten und tägliche Berichte, die an Chat-Kanäle gesendet werden.", "saved": "Nachrichtensprache gespeichert.", "saveFailed": "Fehler beim Speichern der Nachrichtensprache.", "en": "Englisch", "zh-cn": "Vereinfachtes Chinesisch", "zh-tw": "Traditionelles Chinesisch", "ja": "Japanisch", "ko": "Koreanisch", "es": "Spanisch", "de": "Deutsch", "fr": "Französisch", "pt": "Portugiesisch", "ar": "Arabisch" } }, "ModelProviderSettings": { "sectionTitle": "Modellanbieter", "sectionDescription": "API-Anbieter-Zugangsdaten für Agenten verwalten.", "filterAll": "Alle", "providerListTitle": "Konfigurierte Anbieter", "addProvider": "Anbieter hinzufügen", "editProvider": "Anbieter bearbeiten", "noProviders": "Noch keine Modellanbieter konfiguriert.", "providerName": "Name", "providerNamePlaceholder": "z.B. OpenAI, Anthropic", "apiUrl": "API-URL", "apiUrlPlaceholder": "https://api.openai.com/v1", "apiKey": "API-Schlüssel", "apiKeyPlaceholder": "sk-...", "apiKeyKeepCurrent": "Leer lassen, um aktuellen Wert beizubehalten", "agentTypes": "Agententypen", "agentTypesRequired": "Mindestens ein Agententyp ist erforderlich.", "nameRequired": "Anbietername ist erforderlich.", "apiUrlRequired": "API-URL ist erforderlich.", "apiKeyRequired": "API-Schlüssel ist erforderlich.", "loadFailed": "Anbieter konnten nicht geladen werden.", "saveFailed": "Änderungen konnten nicht gespeichert werden.", "createSuccess": "Anbieter erstellt.", "editSuccess": "Anbieter aktualisiert.", "deleteSuccess": "Anbieter gelöscht.", "deleteConfirmTitle": "Anbieter löschen", "deleteConfirmMessage": "Der Anbieter \"{name}\" wird dauerhaft gelöscht. Sind Sie sicher?", "deleteBlockedByAgent": "{agents} verwendet diesen Anbieter. Bitte trennen Sie die Verbindung vor dem Löschen.", "cancel": "Abbrechen", "delete": "Löschen", "create": "Erstellen", "save": "Speichern" }, "ExpertsSettings": { "title": "Experten-Skills", "description": "Aktivieren Sie kuratierte, praxiserprobte Skill-Workflows für Ihre KI-Coding-Agents. Jeder Experte ist ein eigenständiger Skill aus dem superpowers-Projekt — codeg verwaltet die zentrale Kopie und verknüpft sie mit den von Ihnen ausgewählten Agents.", "loading": "Experten werden geladen…", "loadingContent": "Inhalt wird geladen…", "emptyExperts": "Keine Experten verfügbar. Prüfen Sie die Anwendungsprotokolle.", "emptySelection": "Wählen Sie einen Experten aus, um seinen Inhalt anzuzeigen und die Aktivierung zu verwalten.", "emptySearch": "Keine Experten entsprechen der aktuellen Suche.", "searchPlaceholder": "Experten nach Name, ID oder Beschreibung suchen", "enableForAgents": "Für Agents aktivieren", "noAgents": "Keine ACP-Agents erkannt.", "copyModeWarning": "Kopiert (nicht verknüpft). Nach codeg-Updates erneut aktivieren, um die neueste Version zu erhalten.", "previewTitle": "SKILL.md-Vorschau", "categories": { "discovery": "Entdeckung & Design", "planning": "Planung", "execution": "Ausführung", "quality": "Qualität & Tests", "debugging": "Debugging", "review": "Review & Integration", "meta": "Meta" }, "states": { "not_linked": "Nicht aktiviert", "linked_to_codeg": "Aktiviert", "linked_elsewhere": "Blockiert — ein anderer Link existiert", "blocked_by_real_directory": "Blockiert — ein benutzerdefinierter Skill belegt diesen Namen", "broken": "Defekter Link" }, "badges": { "userModified": "Vom Benutzer geändert" }, "actions": { "openCentralDir": "Zentralen Ordner öffnen", "refresh": "Aktualisieren" }, "toasts": { "loadFailed": "Laden der Expertendetails fehlgeschlagen", "enabled": "Experte für diesen Agent aktiviert", "disabled": "Experte für diesen Agent deaktiviert", "enableFailed": "Aktivieren des Experten fehlgeschlagen", "disableFailed": "Deaktivieren des Experten fehlgeschlagen", "openFolderFailed": "Ordner konnte nicht geöffnet werden" } } }