@neuralnomads/codenomad-dev 0.17.1-dev-20260619-1c9eddd6 → 0.18.0-dev-20260620-e29c3a08

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/dist/opencode-plugin/codenomad-opencode-plugin.tgz +0 -0
  2. package/package.json +1 -1
  3. package/public/assets/{FilesTab-DYQlikI6.js → FilesTab-DugdDC9s.js} +2 -2
  4. package/public/assets/{GitChangesTab-DpC_GZOG.js → GitChangesTab-wF0tL7PL.js} +2 -2
  5. package/public/assets/{SplitFilePanel-0EmPVGzs.js → SplitFilePanel-C4FztlTR.js} +1 -1
  6. package/public/assets/{StatusTab-BB0eu8MT.js → StatusTab-30t_J03f.js} +1 -1
  7. package/public/assets/{align-justify-CwUnMKH1.js → align-justify-DnoeiXCd.js} +1 -1
  8. package/public/assets/{bundle-full-BVDA-a9Y.js → bundle-full-B0vc8NGv.js} +1 -1
  9. package/public/assets/{diff-viewer-Dd6KTGcm.js → diff-viewer-DH-lH6jq.js} +1 -1
  10. package/public/assets/index--bYE3fA1.js +1 -0
  11. package/public/assets/index-B-9c-wPM.css +1 -0
  12. package/public/assets/index-BDJqHo1E.js +1 -0
  13. package/public/assets/index-BEXDNmDA.js +1 -0
  14. package/public/assets/index-BWX6Cyx3.js +2 -0
  15. package/public/assets/{index-Ddsv8Uc0.js → index-Bv867yIC.js} +1 -1
  16. package/public/assets/index-CUB1cngT.js +1 -0
  17. package/public/assets/{index-DnCBfFB3.js → index-ChDVvMF4.js} +1 -1
  18. package/public/assets/index-CyGPk9Qx.js +1 -0
  19. package/public/assets/index-D9T8sYiH.js +1 -0
  20. package/public/assets/index-DQ8RfkwK.js +1 -0
  21. package/public/assets/index-udaOwtFG.js +1 -0
  22. package/public/assets/{loading-Cq2BV5aG.js → loading-DRzViX8M.js} +1 -1
  23. package/public/assets/main-Bc7SPDUI.js +68 -0
  24. package/public/assets/{markdown-B7Z2XEW_.js → markdown-Bl4gL2Nd.js} +3 -3
  25. package/public/assets/{monaco-viewer-BFNhPQX7.js → monaco-viewer-BbohfXZk.js} +12 -12
  26. package/public/assets/tool-call-DQdOWbkk.js +59 -0
  27. package/public/assets/{unified-picker-CvGpadwy.js → unified-picker-CGg8mlSo.js} +1 -1
  28. package/public/assets/{wrap-text-BQcJM7nv.js → wrap-text-DMzX5Xp2.js} +1 -1
  29. package/public/index.html +4 -4
  30. package/public/loading.html +4 -4
  31. package/public/sw.js +1 -1
  32. package/public/ui-version.json +1 -1
  33. package/public/assets/index-BV8k2sC0.js +0 -2
  34. package/public/assets/index-BXfEYP03.js +0 -1
  35. package/public/assets/index-C5mhkY-6.js +0 -1
  36. package/public/assets/index-CCGREwWR.js +0 -1
  37. package/public/assets/index-CkOMuqoF.js +0 -1
  38. package/public/assets/index-CqoUlH3-.js +0 -1
  39. package/public/assets/index-DIVooRPn.js +0 -1
  40. package/public/assets/index-G37GrhG6.js +0 -1
  41. package/public/assets/index-iK7Z6bMV.js +0 -1
  42. package/public/assets/index-pz9ICcLI.css +0 -1
  43. package/public/assets/main-CNMW4Jc1.js +0 -68
  44. package/public/assets/tool-call-DwD83RQP.js +0 -59
@@ -1,2 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-G37GrhG6.js","assets/monaco-viewer-BFNhPQX7.js","assets/git-diff-vendor-CSgooKT_.js","assets/fast-diff-vendor-DgdwVvTQ.js","assets/highlight-vendor-8FKMu9os.js","assets/git-diff-vendor-HAZkIolJ.css","assets/index-C5mhkY-6.js","assets/index-iK7Z6bMV.js","assets/index-CCGREwWR.js","assets/index-CkOMuqoF.js","assets/index-DIVooRPn.js","assets/index-BXfEYP03.js","assets/index-CqoUlH3-.js"])))=>i.map(i=>d[i]);
2
- import{_ as r,M as x}from"./monaco-viewer-BFNhPQX7.js";import{d as S,l as U,k as E,t as N,c as C,b as k,o as P,n as V}from"./git-diff-vendor-CSgooKT_.js";(function(){const s=document.createElement("link").relList;if(s&&s.supports&&s.supports("modulepreload"))return;for(const t of document.querySelectorAll('link[rel="modulepreload"]'))i(t);new MutationObserver(t=>{for(const o of t)if(o.type==="childList")for(const p of o.addedNodes)p.tagName==="LINK"&&p.rel==="modulepreload"&&i(p)}).observe(document,{childList:!0,subtree:!0});function n(t){const o={};return t.integrity&&(o.integrity=t.integrity),t.referrerPolicy&&(o.referrerPolicy=t.referrerPolicy),t.crossOrigin==="use-credentials"?o.credentials="include":t.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function i(t){if(t.ep)return;t.ep=!0;const o=n(t);fetch(t.href,o)}})();const q={"advancedSettings.title":"Advanced Settings","advancedSettings.environmentVariables.title":"Environment Variables","advancedSettings.environmentVariables.subtitle":"Applied whenever a new OpenCode instance starts","advancedSettings.actions.close":"Close"},H={"app.launchError.title":"Unable to launch OpenCode","app.launchError.description":"We couldn't start the selected OpenCode binary. Review the error output below or choose a different binary from OpenCode settings.","app.launchError.binaryPathLabel":"Binary path","app.launchError.errorOutputLabel":"Error output","app.launchError.openAdvancedSettings":"Open OpenCode Settings","app.launchError.close":"Close","app.launchError.closeTitle":"Close (Esc)","app.launchError.fallbackMessage":"Failed to launch workspace","app.stopInstance.confirmMessage":"Stop OpenCode instance? This will stop the server.","app.stopInstance.title":"Stop instance","app.stopInstance.confirmLabel":"Stop","app.stopInstance.cancelLabel":"Keep running","app.stopInstance.toast.error":"Failed to stop workspace.","emptyState.logoAlt":"CodeNomad logo","emptyState.brandTitle":"CodeNomad","emptyState.tagline":"Select a folder to start coding with AI","emptyState.actions.selectFolder":"Select Folder","emptyState.actions.selecting":"Selecting...","emptyState.keyboardShortcut":"Keyboard shortcut: {shortcut}","emptyState.examples":"Examples: {example}","emptyState.multipleInstances":"You can have multiple instances of the same folder","releases.upgradeRequired.title":"Upgrade required","releases.upgradeRequired.message.withVersion":"Update to CodeNomad {version} to use the latest UI.","releases.upgradeRequired.message.noVersion":"Update CodeNomad to use the latest UI.","releases.upgradeRequired.action.getUpdate":"Get update","releases.uiUpdated.title":"UI updated","releases.uiUpdated.message":"UI is now updated to {version}.","releases.devUpdateAvailable.title":"Dev build available","releases.devUpdateAvailable.message":"A new dev build is available: {version}.","releases.devUpdateAvailable.action":"View release","theme.mode.system":"System","theme.mode.light":"Light","theme.mode.dark":"Dark","theme.toggle.title":"Theme: {mode}","theme.toggle.ariaLabel":"Theme: {mode}"},W={"commandPalette.title":"Command Palette","commandPalette.description":"Search and execute commands","commandPalette.searchPlaceholder":"Type a command or search...","commandPalette.empty":'No commands found for "{query}"',"commandPalette.category.customCommands":"Custom Commands","commandPalette.category.instance":"Instance","commandPalette.category.session":"Session","commandPalette.category.agentModel":"Agent & Model","commandPalette.category.inputFocus":"Input & Focus","commandPalette.category.system":"System","commandPalette.category.other":"Other","commands.newInstance.label":"New Instance","commands.newInstance.description":"Open folder picker to create new instance","commands.newInstance.keywords":"folder, project, workspace","commands.closeInstance.label":"Close Tab","commands.closeInstance.description":"Close the current top-level tab","commands.closeInstance.keywords":"stop, quit, close, tab","commands.nextInstance.label":"Next Tab","commands.nextInstance.description":"Cycle to the next top-level tab","commands.nextInstance.keywords":"switch, navigate, tab","commands.previousInstance.label":"Previous Tab","commands.previousInstance.description":"Cycle to the previous top-level tab","commands.previousInstance.keywords":"switch, navigate, tab","commands.newSession.label":"New Session","commands.newSession.description":"Create a new parent session","commands.newSession.keywords":"create, start","commands.closeSession.label":"Close Session","commands.closeSession.description":"Close current parent session","commands.closeSession.keywords":"close, stop","commands.scrubSessions.label":"Scrub Sessions","commands.scrubSessions.description":"Remove empty sessions, subagent sessions that have completed their primary task, and extraneous forked sessions.","commands.scrubSessions.keywords":"cleanup, blank, empty, sessions, remove, delete, scrub","commands.instanceInfo.label":"Instance Info","commands.instanceInfo.description":"Open the instance overview for logs and status","commands.instanceInfo.keywords":"info, logs, console, output","commands.nextSession.label":"Next Session","commands.nextSession.description":"Cycle to next session tab","commands.nextSession.keywords":"switch, navigate","commands.previousSession.label":"Previous Session","commands.previousSession.description":"Cycle to previous session tab","commands.previousSession.keywords":"switch, navigate","commands.compactSession.label":"Compact Session","commands.compactSession.description":"Summarize and compact the current session","commands.compactSession.keywords":"summarize, compress","commands.compactSession.errorFallback":"Failed to compact session","commands.compactSession.alert.title":"Compact failed","commands.compactSession.alert.message":"Compact failed: {message}","commands.undoLastMessage.label":"Undo Last Message","commands.undoLastMessage.description":"Revert the last message","commands.undoLastMessage.keywords":"revert, undo","commands.undoLastMessage.none.title":"No actions to undo","commands.undoLastMessage.none.message":"Nothing to undo","commands.undoLastMessage.failed.title":"Undo failed","commands.undoLastMessage.failed.message":"Failed to revert message","commands.openModelSelector.label":"Open Model Selector","commands.openModelSelector.description":"Choose a different model","commands.openModelSelector.keywords":"model, llm, ai","commands.selectModelVariant.label":"Select Model Variant","commands.selectModelVariant.description":"Choose a thinking effort for the current model","commands.selectModelVariant.keywords":"variant, thinking, reasoning, effort","commands.openAgentSelector.label":"Open Agent Selector","commands.openAgentSelector.description":"Choose a different agent","commands.openAgentSelector.keywords":"agent, mode","commands.clearInput.label":"Clear Input","commands.clearInput.description":"Clear the prompt textarea","commands.clearInput.keywords":"clear, reset","commands.promptSubmitShortcut.label.default":"Enter: New Line, Cmd/Ctrl+Enter: Submit Prompt","commands.promptSubmitShortcut.label.swapped":"Enter: Submit Prompt, Cmd/Ctrl+Enter: New Line","commands.promptSubmitShortcut.description":"Swap Enter and Cmd/Ctrl+Enter behavior in the prompt input","commands.promptSubmitShortcut.keywords":"enter, cmd, ctrl, submit, send, newline, shortcut, keybind, prompt","commands.thinkingBlocks.label.show":"Show Thinking","commands.thinkingBlocks.label.hide":"Hide Thinking","commands.thinkingBlocks.description":"Show or hide AI thinking sections","commands.thinkingBlocks.keywords":"thinking, reasoning, toggle, show, hide","commands.timelineToolCalls.label.show":"Show Timeline Tool Calls","commands.timelineToolCalls.label.hide":"Hide Timeline Tool Calls","commands.timelineToolCalls.description":"Toggle tool call entries in the message timeline","commands.timelineToolCalls.keywords":"timeline, tool, toggle","commands.keyboardShortcutHints.label.show":"Show Keyboard Shortcut Hints","commands.keyboardShortcutHints.label.hide":"Hide Keyboard Shortcut Hints","commands.keyboardShortcutHints.description":"Show or hide keyboard shortcut hints across the UI","commands.keyboardShortcutHints.description.disabledWeb":"Disabled in WebUI (shortcut hints are always hidden)","commands.keyboardShortcutHints.keywords":"shortcut, shortcuts, keyboard, keybind, hints","commands.common.expanded":"Expanded","commands.common.collapsed":"Collapsed","commands.common.visible":"Visible","commands.common.hidden":"Hidden","commands.common.enabled":"Enabled","commands.common.disabled":"Disabled","commands.thinkingBlocksDefault.label":"Thinking View: {state}","commands.thinkingBlocksDefault.description":"Collapse / Expand AI thinking sections when shown","commands.thinkingBlocksDefault.keywords":"thinking, reasoning, expand, collapse, default","commands.diffViewSplit.label":"Use Split Diff View","commands.diffViewSplit.description":"Display tool-call diffs side-by-side","commands.diffViewSplit.keywords":"diff, split, view","commands.diffViewUnified.label":"Use Unified Diff View","commands.diffViewUnified.description":"Display tool-call diffs inline","commands.diffViewUnified.keywords":"diff, unified, view","commands.toolOutputsDefault.label":"Tool Outputs Default · {state}","commands.toolOutputsDefault.description":"Toggle default expansion for tool outputs","commands.toolOutputsDefault.keywords":"tool, output, expand, collapse","commands.diagnosticsDefault.label":"Diagnostics Default · {state}","commands.diagnosticsDefault.description":"Toggle default expansion for diagnostics output","commands.diagnosticsDefault.keywords":"diagnostics, expand, collapse","commands.toolInputsVisibility.label":"Tool Inputs Visibility · {state}","commands.toolInputsVisibility.description":"Set default visibility for tool call input arguments","commands.toolInputsVisibility.keywords":"tool, inputs, arguments, visibility, hide, show, expand, collapse","commands.tokenUsageDisplay.label":"Token Usage Display · {state}","commands.tokenUsageDisplay.description":"Show or hide token and cost stats for assistant messages","commands.tokenUsageDisplay.keywords":"token, usage, cost, stats","commands.autoCleanupBlankSessions.label":"Auto-Cleanup Blank Sessions · {state}","commands.autoCleanupBlankSessions.description":"Automatically clean up blank sessions when creating new ones","commands.autoCleanupBlankSessions.keywords":"auto, cleanup, blank, sessions, toggle","commands.showHelp.label":"Show Help","commands.showHelp.description":"Display keyboard shortcuts and help","commands.showHelp.keywords":"shortcuts, help","commands.custom.argumentsPrompt.message":"Arguments for /{name}","commands.custom.argumentsPrompt.title":"Custom command","commands.custom.argumentsPrompt.inputLabel":"Arguments","commands.custom.argumentsPrompt.inputPlaceholder":"e.g. foo bar","commands.custom.argumentsPrompt.confirmLabel":"Run","commands.custom.argumentsPrompt.cancelLabel":"Cancel","commands.custom.argumentsPrompt.openFailed.message":"Failed to open arguments prompt.","commands.custom.argumentsPrompt.openFailed.title":"Command arguments","commands.custom.entries.descriptionFallback":"Custom command","commands.custom.sessionRequired.message":"Select a session before running a custom command.","commands.custom.sessionRequired.title":"Session required","commands.custom.runFailed.message":"Failed to run custom command. Check the console for details.","commands.custom.runFailed.title":"Command failed","unifiedPicker.loading.searching":"Searching...","unifiedPicker.loading.loadingWorkspace":"Loading workspace...","unifiedPicker.title.command":"Select Command","unifiedPicker.title.mention":"Select Agent or File","unifiedPicker.empty":"No results found","unifiedPicker.sections.commands":"COMMANDS","unifiedPicker.sections.agents":"AGENTS","unifiedPicker.sections.files":"FILES","unifiedPicker.sections.workspaceRoot":"WORKSPACE ROOT","unifiedPicker.badge.subagent":"subagent","unifiedPicker.footer.navigate":"navigate","unifiedPicker.footer.select":"select","unifiedPicker.footer.close":"close"},_={"alertDialog.fallbackTitle.info":"Heads up","alertDialog.fallbackTitle.warning":"Please review","alertDialog.fallbackTitle.error":"Something went wrong","alertDialog.actions.confirm":"Confirm","alertDialog.actions.run":"Run","alertDialog.actions.ok":"OK","alertDialog.actions.cancel":"Cancel","alertDialog.prompt.inputLabel":"Input","backgroundProcessOutputDialog.title":"Background Output","backgroundProcessOutputDialog.actions.close":"Close","backgroundProcessOutputDialog.loading":"Loading output...","backgroundProcessOutputDialog.truncatedNotice":"Output truncated for display.","backgroundProcessOutputDialog.loadErrorFallback":"Failed to load output."},z={"directoryBrowser.defaultDescription":"Browse folders under the configured workspace root.","directoryBrowser.close":"Close","directoryBrowser.currentFolder":"Select folder or enter path","directoryBrowser.currentFolder.inputAriaLabel":"Folder path","directoryBrowser.currentFolder.inputPlaceholder":"Type or paste a folder path","directoryBrowser.openCurrent":"Open","directoryBrowser.selectCurrent":"Select Current","directoryBrowser.newFolder":"New Folder","directoryBrowser.creating":"Creating…","directoryBrowser.loadingFolders":"Loading folders…","directoryBrowser.noFolders":"No folders available.","directoryBrowser.upOneLevel":"Up one level","directoryBrowser.select":"Select","directoryBrowser.load.errorFallback":"Unable to load filesystem","directoryBrowser.createFolder.promptMessage":"Create a new folder in the current directory.","directoryBrowser.createFolder.title":"New Folder","directoryBrowser.createFolder.inputLabel":"Folder name","directoryBrowser.createFolder.inputPlaceholder":"e.g. my-new-project","directoryBrowser.createFolder.confirmLabel":"Create","directoryBrowser.createFolder.cancelLabel":"Cancel","directoryBrowser.createFolder.invalidNameMessage":"Please enter a single folder name.","directoryBrowser.createFolder.invalidNameDetail":"Folder names cannot include slashes, '..', or '~'.","directoryBrowser.createFolder.errorFallback":"Unable to create folder","filesystemBrowser.descriptionFallback":"Search for a path under the configured workspace root.","filesystemBrowser.rootLabel":"Root: {root}","filesystemBrowser.actions.close":"Close","filesystemBrowser.actions.retry":"Retry","filesystemBrowser.actions.select":"Select","filesystemBrowser.filterLabel":"Filter","filesystemBrowser.search.placeholder.directories":"Search for folders","filesystemBrowser.search.placeholder.files":"Search for files","filesystemBrowser.currentFolder.label":"Current folder","filesystemBrowser.currentFolder.selectCurrent":"Select Current","filesystemBrowser.loading.filesystem":"filesystem","filesystemBrowser.loading.workspaceRoot":"workspace root","filesystemBrowser.loading.loadingWithPath":"Loading {path}…","filesystemBrowser.empty.noEntries":"No entries found.","filesystemBrowser.navigation.upOneLevel":"Up one level","filesystemBrowser.hints.navigate":"Navigate","filesystemBrowser.hints.select":"Select","filesystemBrowser.hints.close":"Close","filesystemBrowser.errors.loadFilesystemFallback":"Unable to load filesystem","filesystemBrowser.errors.openDirectoryFallback":"Unable to open directory"},j={"folderSelection.language.ariaLabel":"Language","folderSelection.logoAlt":"CodeNomad logo","folderSelection.tagline":"Select a folder to start coding with AI","folderSelection.links.github":"CodeNomad GitHub","folderSelection.links.githubStars":"CodeNomad GitHub Stars","folderSelection.links.discord":"CodeNomad Discord","folderSelection.empty.title":"No Recent Folders","folderSelection.empty.description":"Browse for a folder to get started","folderSelection.recent.title":"Recent Folders","folderSelection.recent.subtitle.one":"{count} folder available","folderSelection.recent.subtitle.other":"{count} folders available","folderSelection.recent.rename":"Rename workspace","folderSelection.recent.remove":"Remove from recent","folderSelection.recent.openBadge":"Open","folderSelection.recent.alreadyOpenTitle":"Project already open","folderSelection.recent.alreadyOpenMessage":"Choose how to open this folder.","folderSelection.recent.switchToOpenProject":"Switch to open project","folderSelection.recent.openAnotherInstance":"Open another instance","folderSelection.browse.title":"Browse for Folder","folderSelection.browse.subtitle":"Select any folder on your computer","folderSelection.browse.button":"Browse Folders","folderSelection.browse.buttonOpening":"Opening...","folderSelection.clone.button":"Clone Git Repo","folderSelection.clone.destination.title":"Select Clone Destination","folderSelection.clone.destination.description":"Select the folder where the repository should be cloned.","folderSelection.clone.dialog.title":"Clone Git Repository","folderSelection.clone.dialog.description":"Clone a Git repository into a local folder, then open it as your workspace.","folderSelection.clone.dialog.repositoryUrl":"Repository URL","folderSelection.clone.dialog.repositoryUrlPlaceholder":"https://github.com/user/repo.git","folderSelection.clone.dialog.destinationPath":"Destination folder","folderSelection.clone.dialog.destinationPathPlaceholder":"Select or enter a destination folder","folderSelection.clone.dialog.browseDestination":"Browse","folderSelection.clone.dialog.cleanupDestination":"Remove the destination folder first if it already exists.","folderSelection.clone.dialog.cancel":"Cancel","folderSelection.clone.dialog.clone":"Clone","folderSelection.clone.dialog.cloning":"Cloning...","folderSelection.clone.dialog.errorRequired":"Repository URL and destination folder are required.","folderSelection.actions.title":"Open Folder or Connect Server","folderSelection.actions.subtitle":"Open local folder or connect to a CodeNomad server","folderSelection.actions.connectButton":"Connect CodeNomad Server","folderSelection.advancedSettings":"Advanced Settings","folderSelection.opencode":"OpenCode","folderSelection.hints.navigate":"Navigate","folderSelection.hints.select":"Select","folderSelection.hints.remove":"Remove","folderSelection.hints.browse":"Browse","folderSelection.loading.title":"Starting instance...","folderSelection.loading.subtitle":"Hang tight while we prepare your workspace.","folderSelection.drop.title":"Drop a folder to open it","folderSelection.drop.subtitle":"Start a new instance in the dropped folder.","folderSelection.drop.invalidTitle":"Couldn't open dropped item","folderSelection.drop.invalidMessage":"Drop a folder to start a new instance.","folderSelection.dialog.title":"Select Workspace","folderSelection.dialog.description":"Select workspace to start coding.","folderSelection.tabs.local":"Local Folders","folderSelection.tabs.servers":"Servers","folderSelection.servers.title":"Saved Servers","folderSelection.servers.subtitle":"Open a saved remote CodeNomad server in a new window","folderSelection.servers.count":"{count} Servers","folderSelection.servers.empty.title":"No Saved Servers","folderSelection.servers.empty.description":"Add a remote server to reconnect quickly from this device","folderSelection.servers.connectTitle":"Connect to Server","folderSelection.servers.connectSubtitle":"Save a remote CodeNomad server and open it in a new window","folderSelection.servers.connectButton":"Connect to Server","folderSelection.servers.remove":"Remove saved server","folderSelection.servers.skipTls":"Self-signed TLS","folderSelection.servers.errorTitle":"Remote Connection Failed","folderSelection.servers.dialog.title":"Connect to Server","folderSelection.servers.dialog.description":"Add a remote CodeNomad server and optionally open it right away.","folderSelection.servers.dialog.name":"Server name","folderSelection.servers.dialog.namePlaceholder":"Production Server","folderSelection.servers.dialog.url":"Server URL","folderSelection.servers.dialog.urlPlaceholder":"https://server.example.com","folderSelection.servers.dialog.skipTls":"Skip TLS verification for self-signed certificates.","folderSelection.servers.dialog.cancel":"Cancel","folderSelection.servers.dialog.save":"Save","folderSelection.servers.dialog.connect":"Connect","folderSelection.servers.dialog.connecting":"Connecting...","folderSelection.servers.dialog.errorRequired":"Server name and URL are required.","folderSelection.servers.dialog.errorConnect":"Could not connect to the remote server.","folderSelection.servers.certificateInstall.title":"Install Local Certificate","folderSelection.servers.certificateInstall.confirmMessage":"CodeNomad needs to install a local certificate to open self-signed HTTPS remote windows. This certificate is only used for local desktop proxy traffic on your machine. Your operating system may show a second certificate prompt after this.","folderSelection.servers.certificateInstall.confirmLabel":"Continue","folderSelection.servers.certificateInstall.cancelLabel":"Cancel","folderSelection.servers.certificateInstall.cancelled":"CodeNomad needs the local certificate to be trusted before it can open self-signed HTTPS remote windows.","folderSelection.sidecars.button":"Open SideCar","projectRenameDialog.title":"Rename workspace","projectRenameDialog.description.withLabel":'Update the workspace name for "{label}".',"projectRenameDialog.description.default":"Set a workspace name for this folder.","projectRenameDialog.input.label":"Workspace name","projectRenameDialog.input.placeholder":"Enter workspace name","projectRenameDialog.actions.cancel":"Cancel","projectRenameDialog.actions.rename":"Rename","projectRenameDialog.actions.renaming":"Renaming..."},G={"instanceTabs.new.title":"New instance (Cmd/Ctrl+N)","instanceTabs.new.ariaLabel":"New instance","instanceTabs.remote.title":"Remote connect","instanceTabs.remote.ariaLabel":"Remote connect","instanceInfo.title":"Instance Information","instanceInfo.labels.folder":"Folder","instanceInfo.labels.project":"Project","instanceInfo.labels.versionControl":"Version Control","instanceInfo.labels.opencodeVersion":"OpenCode Version","instanceInfo.labels.binaryPath":"Binary Path","instanceInfo.labels.environmentVariables":"Environment Variables ({count})","instanceInfo.loading":"Loading...","instanceInfo.server.title":"Server","instanceInfo.server.port":"Port:","instanceInfo.server.pid":"PID:","instanceInfo.server.status":"Status:","instanceTab.status.permission":"Waiting on permission","instanceTab.status.compacting":"Compacting","instanceTab.status.working":"Working","instanceTab.status.idle":"Idle","instanceTab.status.ariaLabel":"Instance status: {status}","instanceTab.actions.close.ariaLabel":"Close instance","instanceShell.leftPanel.sessionsTitle":"Sessions","instanceShell.leftPanel.instanceInfo":"Instance Info","instanceShell.leftDrawer.pin":"Pin left drawer","instanceShell.leftDrawer.unpin":"Unpin left drawer","instanceShell.leftDrawer.toggle.pinned":"Left drawer pinned","instanceShell.leftDrawer.toggle.open":"Open left drawer","instanceShell.leftDrawer.toggle.close":"Close left drawer","instanceShell.rightDrawer.pin":"Pin right drawer","instanceShell.rightDrawer.unpin":"Unpin right drawer","instanceShell.rightDrawer.toggle.pinned":"Right drawer pinned","instanceShell.rightDrawer.toggle.open":"Open right drawer","instanceShell.rightDrawer.toggle.close":"Close right drawer","instanceShell.fullscreen.enter":"Full screen","instanceShell.fullscreen.exit":"Exit full screen","instanceShell.metrics.usedLabel":"Used","instanceShell.metrics.availableLabel":"Avail","instanceShell.commandPalette.openAriaLabel":"Open command palette","instanceShell.commandPalette.button":"Command Palette","instanceShell.chatSearch.openAriaLabel":"Search chat history","instanceShell.connection.ariaLabel":"Connection {status}","instanceShell.connection.connected":"Connected","instanceShell.connection.connecting":"Connecting...","instanceShell.connection.disconnected":"Disconnected","instanceShell.connection.unknown":"Unknown","instanceWelcome.shortcuts.newSession":"New Session","instanceWelcome.empty.title":"No Previous Sessions","instanceWelcome.empty.description":"Create a new session below to get started","instanceWelcome.loading.title":"Launching workspace","instanceWelcome.loading.description":"Starting OpenCode for this workspace...","instanceWelcome.resume.title":"Resume Session","instanceWelcome.resume.subtitle.one":"{count} session available","instanceWelcome.resume.subtitle.other":"{count} sessions available","instanceWelcome.session.untitled":"Untitled Session","instanceWelcome.new.title":"Start New Session","instanceWelcome.new.subtitle":"We’ll reuse your last agent/model automatically","instanceWelcome.new.createButton":"Create Session","instanceWelcome.overlay.close":"Close","instanceWelcome.actions.viewInstanceInfo":"View Instance Info","instanceWelcome.actions.renameTitle":"Rename session","instanceWelcome.actions.deleteTitle":"Delete session","instanceWelcome.hints.navigate":"Navigate","instanceWelcome.hints.jump":"Jump","instanceWelcome.hints.firstLast":"First/Last","instanceWelcome.hints.resume":"Resume","instanceWelcome.hints.delete":"Delete","instanceWelcome.toasts.renameError":"Unable to rename session","instanceDisconnected.title":"Instance Disconnected","instanceDisconnected.folderFallback":"this workspace","instanceDisconnected.reasonFallback":"The server stopped responding","instanceDisconnected.description":"{folder} can no longer be reached. Close the tab to continue working.","instanceDisconnected.details.title":"Details","instanceDisconnected.details.folderLabel":"Folder:","instanceDisconnected.actions.closeInstance":"Close Instance","instanceShell.empty.title":"No session selected","instanceShell.empty.description":"Send a message below to create a new session, or select an existing session to continue.","instanceShell.rightPanel.title":"Status Panel","instanceShell.rightPanel.tabs.gitChanges":"Git Changes","instanceShell.rightPanel.tabs.files":"Files","instanceShell.rightPanel.tabs.status":"Status","instanceShell.rightPanel.tabs.ariaLabel":"Right panel tabs","instanceShell.rightPanel.actions.refresh":"Refresh","instanceShell.rightPanel.actions.save":"Save (Ctrl+S)","instanceShell.rightPanel.actions.saveConfirm.message":'Do you want to save changes to "{path}" before switching?',"instanceShell.rightPanel.actions.saveConfirm.confirmLabel":"Save","instanceShell.rightPanel.actions.saveConfirm.cancelLabel":"Discard Changes","instanceShell.rightPanel.actions.conflict.message":"File was modified by the agent. Overwrite agent's changes?","instanceShell.rightPanel.actions.conflict.confirmLabel":"Overwrite","instanceShell.rightPanel.actions.conflict.cancelLabel":"Cancel","instanceShell.rightPanel.actions.refreshDirty.message":"File has unsaved changes. Refresh will discard your edits. Continue?","instanceShell.rightPanel.actions.refreshDirty.confirmLabel":"Refresh","instanceShell.rightPanel.actions.refreshDirty.cancelLabel":"Cancel","instanceShell.rightPanel.toast.saveSuccess":"File saved successfully","instanceShell.rightPanel.toast.saveError":"Failed to save file","instanceShell.rightPanel.sections.yoloMode":"Yolo Mode","instanceShell.rightPanel.sections.yoloMode.tooltip":"Automatically approves permission requests for the current session. Use it only when you trust the tools being run.","instanceShell.rightPanel.sections.plan":"Plan","instanceShell.rightPanel.sections.plan.tooltip":"The agent's roadmap for this session. Tracks tasks, subtasks, and their completion status.","instanceShell.rightPanel.sections.backgroundProcesses":"Background Shells","instanceShell.rightPanel.sections.backgroundProcesses.tooltip":"Long-running processes started by the agent. You can monitor their output, stop, or terminate them.","instanceShell.rightPanel.sections.mcp":"MCP Servers","instanceShell.rightPanel.sections.mcp.tooltip":"Model Context Protocol servers that extend the agent's capabilities with external tools and services.","instanceShell.rightPanel.sections.lsp":"LSP Servers","instanceShell.rightPanel.sections.lsp.tooltip":"Language Server Protocol servers providing code intelligence, diagnostics, and language-specific features.","instanceShell.rightPanel.sections.plugins":"Plugins","instanceShell.rightPanel.sections.plugins.tooltip":"Plugins that customize the UI and server behavior, adding features beyond MCP and LSP.","instanceShell.gitChanges.noSessionSelected":"Select a session to view git changes.","instanceShell.gitChanges.loading":"Loading git changes...","instanceShell.gitChanges.empty":"No git changes yet.","instanceShell.gitChanges.deleted":"Deleted","instanceShell.gitChanges.binaryViewer":"Binary file cannot be displayed","instanceShell.gitChanges.sections.staged":"Staged Changes","instanceShell.gitChanges.sections.unstaged":"Changes","instanceShell.gitChanges.actions.insertContext":"Add to prompt","instanceShell.gitChanges.actions.stage":"Stage file","instanceShell.gitChanges.actions.unstage":"Unstage file","instanceShell.gitChanges.commit.placeholder":"Enter commit message","instanceShell.gitChanges.commit.submit":"Commit","instanceShell.gitChanges.commit.submitting":"Committing...","instanceShell.gitChanges.commit.success":"Commit created successfully","instanceShell.gitChanges.commit.error":"Failed to create commit","instanceShell.filesShell.fileListTitle":"File list","instanceShell.filesShell.mobileSelectorLabel":"Select file","instanceShell.filesShell.mobileSelectorEmpty":"Select a file","instanceShell.filesShell.viewerTitle":"Change viewer","instanceShell.filesShell.viewerPlaceholder":"Detailed change rendering will be added in the next step.","instanceShell.filesShell.viewerEmpty":"No file selected.","instanceShell.filesShell.listEmpty":"No files in this folder.","instanceShell.filesShell.hideFiles":"Hide files","instanceShell.filesShell.showFiles":"Show files","instanceShell.filesShell.search.placeholder":"Filter files in this folder","instanceShell.filesShell.search.ariaLabel":"Filter files in this folder","instanceShell.filesShell.search.empty":"No matching files.","instanceShell.filesShell.actions.copyPath":"Copy path","instanceShell.filesShell.toast.copyPathSuccess":"Copied path","instanceShell.filesShell.toast.copyPathError":"Failed to copy path","instanceShell.filesShell.previewMarkdown":"Preview Markdown","instanceShell.filesShell.showSource":"Show source","instanceShell.filesShell.enableWordWrap":"Enable word wrap","instanceShell.filesShell.disableWordWrap":"Disable word wrap","instanceShell.diff.hideUnchanged":"Hide unchanged regions","instanceShell.diff.showFull":"Show full file","instanceShell.diff.switchToSplit":"Switch to split view","instanceShell.diff.switchToUnified":"Switch to unified view","instanceShell.diff.enableWordWrap":"Enable word wrap","instanceShell.diff.disableWordWrap":"Disable word wrap","instanceShell.worktree.create":"+ Create worktree","instanceShell.worktree.delete.error.title":"Delete failed","instanceShell.worktree.delete.error.fallback":"Failed to delete worktree","instanceShell.worktree.delete.error.causeLabel":"Likely cause:","instanceShell.worktree.delete.error.nextStepLabel":"Suggested next step:","instanceShell.worktree.delete.error.summary.localChanges":"Git refused to delete this worktree because it has modified or untracked files.","instanceShell.worktree.delete.error.summary.inUse":"CodeNomad could not delete this worktree because something is still using files in the directory.","instanceShell.worktree.delete.error.summary.notFound":"CodeNomad could not delete this worktree because the directory or worktree record was not found.","instanceShell.worktree.delete.error.summary.permissionDenied":"CodeNomad could not delete this worktree because access to the directory was denied.","instanceShell.worktree.delete.error.summary.unknown":"CodeNomad could not delete this worktree.","instanceShell.worktree.delete.error.cause.localChanges":"Local changes","instanceShell.worktree.delete.error.cause.inUse":"Another process is using this worktree","instanceShell.worktree.delete.error.cause.notFound":"The worktree directory or record is missing","instanceShell.worktree.delete.error.cause.permissionDenied":"Insufficient filesystem permissions","instanceShell.worktree.delete.error.cause.unknown":"The backend returned an unclassified delete error","instanceShell.worktree.delete.error.nextStep.localChanges":"Enable Force delete if you want to discard local changes, or clean the worktree and try again.","instanceShell.worktree.delete.error.nextStep.inUse":"Close terminals, editors, watchers, or background processes using this worktree and try again.","instanceShell.worktree.delete.error.nextStep.notFound":"Refresh worktrees and try again. If it still fails, inspect the worktree path on disk.","instanceShell.worktree.delete.error.nextStep.permissionDenied":"Check filesystem permissions and close applications that may be locking this directory, then try again.","instanceShell.worktree.delete.error.nextStep.unknown":"Review the raw error below for details, then retry after addressing the reported problem.","instanceShell.worktree.delete.error.copyRaw":"Copy error","instanceShell.worktree.delete.error.copySanitized":"Copy sanitized","instanceShell.worktree.delete.error.copySuccess":"Copied delete error","instanceShell.worktree.delete.error.copySanitizedSuccess":"Copied sanitized delete error","instanceShell.worktree.delete.error.copyFailure":"Failed to copy delete error","instanceShell.plan.noSessionSelected":"Select a session to view plan.","instanceShell.plan.empty":"Nothing planned yet.","instanceShell.yoloMode.noSessionSelected":"Select a session to configure Yolo mode.","instanceShell.yoloMode.title":"Yolo mode","instanceShell.yoloMode.description":"Automatically approve permission requests for this session. Disabled by default.","instanceShell.yoloMode.badge":"Yolo mode","instanceShell.yoloMode.badgeAriaLabel":"Yolo mode enabled","instanceShell.backgroundProcesses.empty":"No background processes.","instanceShell.backgroundProcesses.status":"Status: {status}","instanceShell.backgroundProcesses.output":"Output: {sizeKb}KB","instanceShell.backgroundProcesses.notify.enabled":"Completion notification enabled","instanceShell.backgroundProcesses.notify.disabled":"Completion notification disabled","instanceShell.backgroundProcesses.actions.output":"Output","instanceShell.backgroundProcesses.actions.stop":"Stop","instanceShell.backgroundProcesses.actions.terminate":"Terminate","versionPill.appWithVersion":"App {version}","versionPill.ui":"UI","versionPill.uiWithVersion":"UI {version}","versionPill.source":" ({source})","opencodeBinarySelector.title":"OpenCode Binary","opencodeBinarySelector.subtitle":"Choose which executable OpenCode should run","opencodeBinarySelector.customPath.placeholder":"Enter path to opencode binary…","opencodeBinarySelector.actions.add":"Add","opencodeBinarySelector.actions.browse":"Browse for Binary…","opencodeBinarySelector.actions.removeTitle":"Remove binary","opencodeBinarySelector.badge.systemPath":"Use binary from system PATH","opencodeBinarySelector.status.checkingVersions":"Checking versions…","opencodeBinarySelector.status.checking":"Checking…","opencodeBinarySelector.dialog.title":"Select OpenCode Binary","opencodeBinarySelector.dialog.description":"Browse files exposed by the CLI server.","opencodeBinarySelector.validation.invalidBinary":"Invalid OpenCode binary","opencodeBinarySelector.validation.alreadyValidating":"Already validating","opencodeBinarySelector.display.systemPath":"{name} (system PATH)","opencodeBinarySelector.versionLabel":"v{version}"},K={"loadingScreen.logoAlt":"CodeNomad logo","loadingScreen.status.issue":"Encountered an issue","loadingScreen.actions.showAnother":"Show another","loadingScreen.errors.missingRoot":"Loading root element not found","loadingScreen.phrases.neurons":"Warming up the AI neurons…","loadingScreen.phrases.daydreaming":"Convincing the AI to stop daydreaming…","loadingScreen.phrases.goggles":"Polishing the AI’s code goggles…","loadingScreen.phrases.reorganizingFiles":"Asking the AI to stop reorganizing your files…","loadingScreen.phrases.coffee":"Feeding the AI additional coffee…","loadingScreen.phrases.nodeModules":"Teaching the AI not to delete node_modules (again)…","loadingScreen.phrases.actNatural":"Telling the AI to act natural before you arrive…","loadingScreen.phrases.rewritingHistory":"Asking the AI to please stop rewriting history…","loadingScreen.phrases.stretch":"Letting the AI stretch before its coding sprint…","loadingScreen.phrases.keyboardControl":"Persuading the AI to give you keyboard control…"},Q={"logsView.title":"Server Logs","logsView.actions.show":"Show server logs","logsView.actions.hide":"Hide server logs","logsView.actions.clear":"Clear logs","logsView.actions.back":"Back to conversation","logsView.envVars.title":"Environment Variables ({count})","logsView.paused.title":"Server logs are paused","logsView.paused.description":"Enable streaming to watch your OpenCode server activity.","logsView.empty.waiting":"Waiting for server output...","logsView.scrollToTop":"Scroll to top","logsView.scrollToBottom":"Scroll to bottom","infoView.logs.title":"Server Logs","infoView.logs.actions.show":"Show server logs","infoView.logs.actions.hide":"Hide server logs","infoView.logs.actions.clear":"Clear logs","infoView.logs.actions.back":"Back to conversation","infoView.logs.paused.title":"Server logs are paused","infoView.logs.paused.description":"Enable streaming to watch your OpenCode server activity.","infoView.logs.empty.waiting":"Waiting for server output...","infoView.logs.scrollToTop":"Scroll to top","infoView.logs.scrollToBottom":"Scroll to bottom","infoView.dispose.actions.dispose":"Dispose instance","infoView.dispose.actions.disposing":"Disposing...","infoView.dispose.confirm.title":"Dispose instance?","infoView.dispose.confirm.message":"This clears cached per-project state for this directory and reloads the instance.","infoView.dispose.confirm.confirmLabel":"Dispose","infoView.dispose.confirm.cancelLabel":"Cancel","infoView.dispose.toast.success":"Instance disposed. Reloading...","infoView.dispose.toast.error":"Failed to dispose instance."},Y={"markdown.codeBlock.copy.label":"Copy","markdown.codeBlock.copy.copied":"Copied!","markdown.codeBlock.copy.failed":"Failed","markdown.copy":"Copy"},J={"messageListHeader.sidebar.openSessionListAriaLabel":"Open session list","messageListHeader.metrics.usedLabel":"Used","messageListHeader.metrics.availableLabel":"Avail","messageListHeader.commandPalette.ariaLabel":"Open command palette","messageListHeader.commandPalette.button":"Command Palette","messageListHeader.connection.connected":"Connected","messageListHeader.connection.connecting":"Connecting...","messageListHeader.connection.disconnected":"Disconnected","messageSection.empty.logoAlt":"CodeNomad logo","messageSection.empty.brandTitle":"CodeNomad","messageSection.empty.title":"Start a conversation","messageSection.empty.description":"Type a message below or open the Command Palette:","messageSection.empty.tips.commandPalette":"Command Palette","messageSection.empty.tips.askAboutCodebase":"Ask about your codebase","messageSection.empty.tips.attachFilesPrefix":"Attach files with","messageSection.loading.messages":"Loading messages...","messageSection.loadError.title":"Could not load messages","messageSection.loadError.reload":"Reload messages","messageSection.scroll.toFirstAriaLabel":"Scroll to first message","messageSection.scroll.toLatestAriaLabel":"Scroll to latest message","messageSection.scroll.enableHoldAriaLabel":"Enable hold for long assistant replies","messageSection.scroll.disableHoldAriaLabel":"Disable hold for long assistant replies","messageSection.quote.addAsQuote":"Add as quote","messageSection.quote.addAsCode":"Add as code","messageSection.quote.copy":"Copy","messageSection.quote.copied":"Copied!","messageSection.quote.copyFailed":"Copy failed","messageSection.search.ariaLabel":"Search chat history","messageSection.search.placeholder":"Search current chat...","messageSection.search.count.empty":"Search","messageSection.search.count.minChars":"{count}+ chars","messageSection.search.count.searching":"Searching...","messageSection.search.count.none":"No matches","messageSection.search.count.matches":"{current} / {total}","messageSection.search.previousAriaLabel":"Previous match","messageSection.search.nextAriaLabel":"Next match","messageSection.search.closeAriaLabel":"Close search","messageSection.search.searching":"Searching...","messageSection.search.noVisibleMatches":"No visible matches","messageTimeline.ariaLabel":"Message timeline","messageTimeline.segment.user.label":"You","messageTimeline.segment.assistant.label":"Asst","messageTimeline.segment.compaction.label":"Compaction","messageTimeline.tool.fallbackLabel":"Tool Call","messageTimeline.tooltip.userFallback":"User message","messageTimeline.tooltip.assistantFallback":"Assistant response","messageTimeline.tooltip.compaction.auto":"Auto Compaction","messageTimeline.tooltip.compaction.manual":"User Compaction","messageTimeline.text.filePrefix":"[File] {filename}","messageTimeline.text.attachment":"Attachment","messageBlock.tool.header":"Tool Call","messageBlock.tool.unknown":"unknown","messageBlock.tool.goToSession.label":"Go to Session","messageBlock.tool.goToSession.title":"Go to session","messageBlock.tool.goToSession.unavailableTitle":"Session not available yet","messageBlock.tool.deletePart.label":"Delete Part","messageBlock.tool.deletePart.deleting":"Deleting...","messageBlock.tool.deletePart.title":"Delete this tool call output","messageBlock.tool.deletePart.failed.title":"Delete failed","messageBlock.tool.deletePart.failed.message":"Failed to delete tool call output","messageBlock.compaction.ariaLabel":"Session compaction","messageBlock.compaction.autoLabel":"Session auto-compacted","messageBlock.compaction.manualLabel":"Session compacted by you","messageBlock.usage.input":"Input","messageBlock.usage.output":"Output","messageBlock.usage.reasoning":"Reasoning","messageBlock.usage.cacheRead":"Cache Read","messageBlock.usage.cacheWrite":"Cache Write","messageBlock.usage.cost":"Cost","messageBlock.step.agentLabel":"Agent: {agent}","messageBlock.step.modelLabel":"Model: {model}","messageBlock.reasoning.thinkingLabel":"Thinking","messageBlock.reasoning.expandAriaLabel":"Expand thinking","messageBlock.reasoning.collapseAriaLabel":"Collapse thinking","messageBlock.reasoning.indicator.hide":"Hide","messageBlock.reasoning.indicator.view":"View","messageBlock.reasoning.detailsAriaLabel":"Reasoning details","messageBlock.reasoning.thoughtsFallback":"Thoughts","messageBlock.reasoning.thoughtFor.seconds.one":"Thought for {count} second","messageBlock.reasoning.thoughtFor.seconds.other":"Thought for {count} seconds","messageBlock.reasoning.thoughtFor.minutes.one":"Thought for {count} minute","messageBlock.reasoning.thoughtFor.minutes.other":"Thought for {count} minutes","messageBlock.reasoning.thoughtFor.hours.one":"Thought for {count} hour","messageBlock.reasoning.thoughtFor.hours.other":"Thought for {count} hours","messageBlock.reasoning.copyTitle":"Copy thoughts","messageBlock.reasoning.copyAriaLabel":"Copy thoughts","codeBlockInline.actions.copy":"Copy","codeBlockInline.actions.copied":"Copied!","messageItem.speaker.you":"You","messageItem.speaker.assistant":"Assistant","messageItem.actions.revert":"Revert","messageItem.actions.revertTitle":"Undo changes up to here (deletes messages)","messageItem.actions.fork":"Fork","messageItem.actions.forkTitle":"Fork from this message","messageItem.actions.copy":"Copy","messageItem.actions.copyTitle":"Copy message","messageItem.actions.copied":"Copied!","messageItem.actions.more":"More actions","messageItem.actions.speak":"Speak message","messageItem.actions.generatingSpeech":"Generating speech","messageItem.actions.stopSpeech":"Stop playback","messageItem.actions.speak.error.title":"Speech playback failed","messageItem.actions.speak.error.unsupported":"Speech playback is not supported in this browser.","messageItem.actions.speak.error.unavailable":"Speech playback is unavailable until speech settings are configured.","messageItem.actions.speak.error.generate":"Unable to generate speech for this message.","messageItem.actions.deleteMessage":"Delete message (doesn't undo changes)","messageItem.actions.deleteMessagesUpTo":"Delete messages up to here (doesn't undo changes)","messageItem.actions.deletingMessage":"Deleting...","messageItem.actions.deleteMessageFailedTitle":"Delete failed","messageItem.actions.deleteMessageFailedMessage":"Failed to delete message","messageItem.selection.checkboxAriaLabel":"Select message for deletion","messageItem.selection.selectForDeletion":"Select message for deletion","messageItem.selection.deselectForDeletion":"Deselect message for deletion","messageItem.duration.workedFor.seconds.one":"Worked for {count} second","messageItem.duration.workedFor.seconds.other":"Worked for {count} seconds","messageItem.duration.workedFor.minutes.one":"Worked for {count} minute","messageItem.duration.workedFor.minutes.other":"Worked for {count} minutes","messageItem.duration.workedFor.hours.one":"Worked for {count} hour","messageItem.duration.workedFor.hours.other":"Worked for {count} hours","messageSection.bulkDelete.toolbarAriaLabel":"Selected items ({count})","messageSection.bulkDelete.deleteSelectedTitle":"Delete selected items","messageSection.bulkDelete.selectAllTitle":"Select all messages","messageSection.bulkDelete.moreOptionsTitle":"More options","messageSection.bulkDelete.selectionModeLabel":"Selection","messageSection.bulkDelete.selectionModeAll":"All","messageSection.bulkDelete.selectionModeTools":"Tools only","messageSection.bulkDelete.selectionHint.toggle":"Select item","messageSection.bulkDelete.selectionHint.range":"Select range","messageSection.bulkDelete.selectionHint.clear":"Clear Selection","messageSection.bulkDelete.cancelTitle":"Cancel selection","messageSection.bulkDelete.failedTitle":"Delete failed","messageSection.bulkDelete.failedMessage":"Failed to delete selected items","messageItem.status.queued":"QUEUED","messageItem.status.generating":"Generating...","messageItem.status.sending":"Sending...","messageItem.status.failedToSend":"Message failed to send","messagePart.actions.delete":"Delete Part","messagePart.actions.deleting":"Deleting...","messagePart.actions.deleteTitle":"Delete this item","messagePart.actions.deleteFailedTitle":"Delete failed","messagePart.actions.deleteFailedMessage":"Failed to delete item","messagePart.pastedText.summary":"Pasted text","messagePart.pastedText.lines.one":"{count} line","messagePart.pastedText.lines.other":"{count} lines","messagePart.pastedText.copyAriaLabel":"Copy pasted text block","messageItem.attachment.defaultName":"attachment","messageItem.attachment.downloadAriaLabel":"Download {name}","messageItem.agentMeta.agentLabel":"Agent: {agent}","messageItem.agentMeta.modelLabel":"Model: {model}","messageItem.errors.authenticationFallback":"Authentication error","messageItem.errors.outputLengthExceeded":"Message output length exceeded","messageItem.errors.requestAborted":"Request was aborted","messageItem.errors.unknownFallback":"Unknown error occurred","attachmentChip.removeAriaLabel":"Remove attachment","expandButton.toggleAriaLabel":"Toggle chat input height","promptInput.placeholder.shell":"Run a shell command (Esc to exit)...","promptInput.placeholder.default":"Type your message, @file, @agent, or paste images and text...","promptInput.hints.shell.exit":"to exit shell mode","promptInput.hints.shell.enable":"Shell mode","promptInput.hints.commands":"Commands","promptInput.history.previousAriaLabel":"Previous prompt","promptInput.history.nextAriaLabel":"Next prompt","promptInput.overlay.newLine":"New line","promptInput.overlay.send":"Send","promptInput.overlay.filesAgents":"Files/agents","promptInput.overlay.history":"History","promptInput.overlay.attachments":"• {count} file(s) attached","promptInput.overlay.shellModeActive":"Shell mode active","promptInput.overlay.press":"Press","promptInput.overlay.againToAbort":"again to abort session","promptInput.stopSession.ariaLabel":"Stop session","promptInput.stopSession.title":"Stop session","promptInput.attachFiles.ariaLabel":"Attach files","promptInput.attachFiles.title":"Attach files","promptInput.attachFiles.dialogTitle":"Attach files","promptInput.attachFiles.errorTitle":"Attach failed","promptInput.attachFiles.skipped.title":"Some files were not attached","promptInput.attachFiles.skipped.one":"1 selected file could not be attached because this environment did not expose a file path or supported preview data.","promptInput.attachFiles.skipped.other":"{count} selected files could not be attached because this environment did not expose file paths or supported preview data.","promptInput.attachFiles.tooLarge.one":"1 selected file could not be attached because it is larger than the 5 MB attachment limit.","promptInput.clear.ariaLabel":"Clear prompt text","promptInput.clear.title":"Clear prompt text","promptInput.send.ariaLabel":"Send message","promptInput.send.errorFallback":"Failed to send message","promptInput.send.errorTitle":"Send failed","promptInput.conversationMode.enable.title":"Enable conversation mode","promptInput.conversationMode.disable.title":"Disable conversation mode","promptInput.conversationMode.error.title":"Conversation playback failed","promptInput.conversationMode.error.message":"Unable to continue speaking assistant replies.","promptInput.voiceInput.start.title":"Start voice input","promptInput.voiceInput.stop.title":"Stop recording and transcribe","promptInput.voiceInput.transcribing.title":"Transcribing audio","promptInput.voiceInput.error.title":"Voice input failed","promptInput.voiceInput.error.permission":"Microphone access is required to record voice input.","promptInput.voiceInput.error.permissionDenied":"Microphone access was denied by macOS.","promptInput.voiceInput.error.unsupported":"Voice input is not supported in this browser.","promptInput.voiceInput.error.transcribe":"Unable to transcribe the recorded audio.","promptInput.resizeHandle.title":"Drag to resize input height"},$={"remoteAccess.eyebrow":"Remote handover","remoteAccess.title":"Connect to CodeNomad remotely","remoteAccess.subtitle":"Use the addresses below to open CodeNomad from another device.","remoteAccess.close":"Close remote access","remoteAccess.refresh":"Refresh","remoteAccess.sections.listeningMode.label":"Listening mode","remoteAccess.sections.listeningMode.help":"Allow or limit remote handovers by binding to all interfaces or just localhost.","remoteAccess.toggle.on":"On","remoteAccess.toggle.off":"Off","remoteAccess.toggle.title":"Allow connections from other IPs","remoteAccess.toggle.caption.all":"Binding to 0.0.0.0","remoteAccess.toggle.caption.local":"Binding to 127.0.0.1","remoteAccess.toggle.note":"Changing this requires a restart and temporarily stops all active instances. Share the addresses below once the server restarts.","remoteAccess.listeningMode.restartConfirm.message":"Restart to apply listening mode? This will stop all running instances.","remoteAccess.listeningMode.restartConfirm.title.all":"Open to other devices","remoteAccess.listeningMode.restartConfirm.title.local":"Limit to this device","remoteAccess.listeningMode.restartConfirm.confirmLabel":"Restart now","remoteAccess.listeningMode.restartConfirm.cancelLabel":"Cancel","remoteAccess.restart.errorManual":"Unable to restart automatically. Please restart the app to apply the change.","remoteAccess.sections.serverPassword.label":"Server password","remoteAccess.sections.serverPassword.help":"Remote handovers require a password. Set a memorable one to enable logins from other devices.","remoteAccess.authStatus.unavailable":"Authentication status unavailable.","remoteAccess.username":"Username: {username}","remoteAccess.password.status.set":"A password is set for remote access.","remoteAccess.password.status.unset":"No memorable password is set yet. Set one to allow remote handover logins.","remoteAccess.password.actions.cancel":"Cancel","remoteAccess.password.actions.change":"Change password","remoteAccess.password.actions.set":"Set password","remoteAccess.password.form.newPassword":"New password","remoteAccess.password.form.confirmPassword":"Confirm password","remoteAccess.password.form.placeholder":"At least 8 characters","remoteAccess.password.error.tooShort":"Password must be at least 8 characters.","remoteAccess.password.error.mismatch":"Passwords do not match.","remoteAccess.password.save.saving":"Saving…","remoteAccess.password.save.label":"Save password","remoteAccess.sections.addresses.label":"Reachable addresses","remoteAccess.sections.addresses.help":"Launch or scan from another machine to hand over control.","remoteAccess.addresses.loading":"Loading addresses…","remoteAccess.addresses.none":"No addresses available yet.","remoteAccess.addresses.actions.showOther":"Show {count} other addresses","remoteAccess.addresses.actions.hideOther":"Hide other addresses","remoteAccess.address.scope.network":"Network","remoteAccess.address.scope.loopback":"Loopback","remoteAccess.address.scope.internal":"Internal","remoteAccess.address.open":"Open","remoteAccess.address.showQr":"Show QR","remoteAccess.address.hideQr":"Hide QR","remoteAccess.address.qrAlt":"QR for {url}"},X={"sessionPicker.title":"OpenCode • {folder}","sessionPicker.empty.noPrevious":"No previous sessions","sessionPicker.resume.title":"Resume a session ({count}):","sessionPicker.session.untitled":"Untitled","sessionPicker.divider.or":"or","sessionPicker.new.title":"Start new session:","sessionPicker.agents.loading":"Loading agents...","sessionPicker.actions.creating":"Creating...","sessionPicker.actions.createSession":"Create Session","sessionPicker.actions.cancel":"Cancel","sessionList.header.title":"Sessions","sessionList.session.untitled":"Untitled","sessionList.status.working":"Working","sessionList.status.compacting":"Compacting","sessionList.status.idle":"Idle","sessionList.status.retrying":"Retrying","sessionList.status.retryingIn":"Retrying in {seconds}s","sessionList.status.retryTooltip":"{message} (Attempt {attempt})","sessionList.status.retryToast":"{countdown}: {message} (Attempt {attempt})","sessionList.status.needsPermission":"Needs Permission","sessionList.status.needsInput":"Needs Input","sessionList.expand.collapseAriaLabel":"Collapse session","sessionList.expand.expandAriaLabel":"Expand session","sessionList.expand.collapseTitle":"Collapse","sessionList.expand.expandTitle":"Expand","sessionList.actions.newSession.ariaLabel":"New session","sessionList.actions.newSession.title":"New session","sessionList.actions.copyId.ariaLabel":"Copy session ID","sessionList.actions.copyId.title":"Copy session ID","sessionList.actions.reload.ariaLabel":"Reload session","sessionList.actions.reload.title":"Reload session","sessionList.actions.rename.ariaLabel":"Rename session","sessionList.actions.rename.title":"Rename session","sessionList.actions.delete.ariaLabel":"Delete session","sessionList.actions.delete.title":"Delete session","sessionList.copyId.success":"Session ID copied","sessionList.copyId.error":"Unable to copy session ID","sessionList.reload.error":"Unable to reload session","sessionList.delete.error":"Unable to delete session","sessionList.delete.title":"Delete session","sessionList.delete.confirmMessage":'Delete "{label}"? This cannot be undone.',"sessionList.delete.confirmLabel":"Delete","sessionList.delete.cancelLabel":"Cancel","sessionList.rename.error":"Unable to rename session","sessionList.filter.placeholder":"Search sessions…","sessionList.filter.ariaLabel":"Search sessions","sessionList.loading.more":"Loading more sessions…","sessionList.selection.selectAllLabel":"Select all","sessionList.selection.selectAllAriaLabel":"Select all sessions","sessionList.selection.clearLabel":"Clear","sessionList.selection.clearAriaLabel":"Clear selection","sessionList.selection.checkboxAriaLabel":"Select session","sessionList.bulkDelete.button":"Delete {count}","sessionList.bulkDelete.ariaLabel":"Delete {count} selected sessions","sessionList.bulkDelete.title":"Delete sessions","sessionList.bulkDelete.confirmMessage":"Delete {count} selected sessions? This cannot be undone.","sessionList.bulkDelete.confirmLabel":"Delete","sessionList.bulkDelete.cancelLabel":"Cancel","sessionList.bulkDelete.error":"Unable to delete {count} sessions","sessionRenameDialog.title":"Rename Session","sessionRenameDialog.description.withLabel":'Update the title for "{label}".',"sessionRenameDialog.description.default":"Set a new title for this session.","sessionRenameDialog.input.label":"Session name","sessionRenameDialog.input.placeholder":"Enter a session name","sessionRenameDialog.actions.cancel":"Cancel","sessionRenameDialog.actions.rename":"Rename","sessionRenameDialog.actions.renaming":"Renaming…","sessionView.fallback.sessionNotFound":"Session not found","sessionView.alerts.abortFailed.message":"Failed to stop session","sessionView.alerts.abortFailed.title":"Stop failed","sessionView.alerts.revertFailed.message":"Failed to revert to message","sessionView.alerts.revertFailed.title":"Revert failed","sessionView.alerts.deleteUpToFailed.message":"Failed to delete messages","sessionView.alerts.deleteUpToFailed.title":"Delete failed","sessionView.alerts.forkFailed.message":"Failed to fork session","sessionView.alerts.forkFailed.title":"Fork failed","sessionView.attachments.expandPastedTextAriaLabel":"Expand pasted text","sessionView.attachments.insertPastedTextTitle":"Insert pasted text","sessionView.attachments.removeAriaLabel":"Remove attachment","sessionPreview.title":"Web preview","sessionPreview.backToChat":"Back to chat","sessionPreview.close":"Close preview","sessionPreview.chat.button":"Back to chat","sessionPreview.open.button":"Open web preview","sessionPreview.open.title":"Open web preview","sessionPreview.open.prompt":"Enter a trusted local or staging URL to preview in this session.","sessionPreview.open.label":"Preview URL","sessionPreview.open.placeholder":"https://staging.example.com","sessionPreview.open.confirm":"Open preview","sessionPreview.open.cancel":"Cancel","sessionPreview.comment.mode":"Comment mode","sessionPreview.comment.title":"Add preview comment","sessionPreview.comment.prompt":"Describe what should change for the selected element.","sessionPreview.comment.label":"Comment","sessionPreview.comment.add":"Add comment","sessionPreview.comment.cancel":"Cancel","browserFrame.viewport":"Viewport size","browserFrame.viewport.responsive":"Responsive viewport","browserFrame.viewport.desktop":"Desktop viewport (1440 x 900)","browserFrame.viewport.tablet":"Tablet viewport (768 x 1024)","browserFrame.viewport.tabletLandscape":"Tablet landscape (1024 x 768)","browserFrame.viewport.mobile":"Mobile viewport (390 x 844)","browserFrame.viewport.mobileLandscape":"Mobile landscape (844 x 390)","sessionEvents.sessionCompactedToast":"Session {label} was compacted","sessionEvents.sessionError.unknown":"Unknown error","sessionEvents.sessionError.title":"Session error","sessionEvents.sessionError.message":"Error: {message}","sessionState.cleanup.deepConfirm.message":"This cleanup may be slow, and may delete sessions you didn't intend to delete. Are you sure?","sessionState.cleanup.deepConfirm.title":"Deep Clean Sessions","sessionState.cleanup.deepConfirm.detail":"Deep Clean Sessions will delete all sessions that have no messages, remove any finished sub-agent sessions, and clear out any unused forks of a session.","sessionState.cleanup.deepConfirm.confirmLabel":"Continue","sessionState.cleanup.deepConfirm.cancelLabel":"Cancel","sessionState.cleanup.toast.one":"Cleaned up {count} blank session","sessionState.cleanup.toast.other":"Cleaned up {count} blank sessions"},Z={"instanceServiceStatus.sections.lsp":"LSP Servers","instanceServiceStatus.sections.mcp":"MCP Servers","instanceServiceStatus.sections.plugins":"Plugins","instanceServiceStatus.lsp.loading":"Loading LSP servers...","instanceServiceStatus.lsp.empty":"No LSP servers detected.","instanceServiceStatus.lsp.status.connected":"Connected","instanceServiceStatus.lsp.status.error":"Error","instanceServiceStatus.mcp.loading":"Loading MCP servers...","instanceServiceStatus.mcp.empty":"No MCP servers detected.","instanceServiceStatus.mcp.toggleAriaLabel":"Toggle {name} MCP server","instanceServiceStatus.plugins.loading":"Loading plugins...","instanceServiceStatus.plugins.empty":"No plugins configured.","permissionBanner.pendingRequests.one":"{count} pending request","permissionBanner.pendingRequests.other":"{count} pending requests","permissionBanner.detail.permission.one":"{count} permission","permissionBanner.detail.permission.other":"{count} permissions","permissionBanner.detail.question.one":"{count} question","permissionBanner.detail.question.other":"{count} questions","permissionBanner.detail.wrapper":" ({detail})","agentSelector.placeholder":"Select agent...","agentSelector.badge.subagent":"subagent","agentSelector.none":"None","agentSelector.trigger.primary":"Agent: {agent}","modelSelector.placeholder.search":"Search models...","modelSelector.none":"None","modelSelector.trigger.primary":"Model: {model}","modelSelector.favoritesOnly.toggle.ariaLabel":"Toggle favorites only","modelSelector.favoritesOnly.showAll":"Show all models","modelSelector.favorite.add":"Add to favorites","modelSelector.favorite.remove":"Remove from favorites","modelSelector.manageProviders":"Manage Providers","thinkingSelector.variant.default":"Default","thinkingSelector.label":"Thinking: {variant}","envEditor.title":"Environment Variables","envEditor.count.one":"({count} variable)","envEditor.count.other":"({count} variables)","envEditor.fields.name.placeholder":"Variable name","envEditor.fields.name.readOnlyTitle":"Variable name (read-only)","envEditor.fields.value.placeholder":"Variable value","envEditor.fields.secure.enabled":"Value masked (secure)","envEditor.fields.secure.disabled":"Click to mask value","envEditor.fields.secure.masked":"Value hidden (secure)","envEditor.actions.remove.title":"Remove variable","envEditor.actions.add.title":"Add variable","envEditor.empty":"No environment variables configured. Add variables above to customize the OpenCode environment.","envEditor.help":"These variables will be available in the OpenCode environment when starting instances.","contextUsagePanel.headings.tokens":"Tokens","contextUsagePanel.headings.context":"Context","contextUsagePanel.labels.input":"Input","contextUsagePanel.labels.output":"Output","contextUsagePanel.labels.cost":"Cost","contextUsagePanel.labels.totalInput":"Total In","contextUsagePanel.labels.totalOutput":"Total Out","contextUsagePanel.labels.totalCost":"Total Cost","contextUsagePanel.labels.totalReasoning":"Total Reasoning","contextUsagePanel.labels.used":"Used","contextUsagePanel.labels.available":"Avail","contextUsagePanel.unavailable":"--","settings.title":"Settings","settings.navigationAriaLabel":"Settings sections","settings.close":"Close settings","settings.content.eyebrow":"Workspace preferences","settings.open.title":"Open settings","settings.open.ariaLabel":"Open settings","settings.nav.appearance":"Appearance","settings.nav.notifications":"Notifications","settings.nav.remote":"Remote Access","settings.nav.speech":"Speech","settings.nav.providers":"Providers","settings.nav.opencode":"OpenCode","settings.nav.configFiles":"Config Files","settings.nav.info":"Info","settings.scope.device":"This device","settings.scope.server":"Server setting","settings.common.enabled":"Enabled","settings.common.disabled":"Disabled","settings.section.appearance.title":"Appearance","settings.section.appearance.subtitle":"Adjust how the app looks on this device.","settings.appearance.theme.title":"Theme","settings.appearance.theme.subtitle":"Choose the color mode used throughout the app.","settings.appearance.theme.option.system":"Match your operating system setting","settings.appearance.theme.option.light":"Use the light appearance","settings.appearance.theme.option.dark":"Use the dark appearance","settings.section.notifications.title":"Notifications","settings.section.notifications.subtitle":"Control OS-level notifications for session activity.","settings.notifications.permission.granted":"Granted","settings.notifications.permission.denied":"Denied","settings.notifications.permission.default":"Not granted","settings.notifications.permission.unsupported":"Unsupported","settings.notifications.messages.unsupportedEnvironment":"OS notifications are not supported in this environment.","settings.notifications.messages.permissionDenied":"Notification permission denied. Enable notifications in your system or browser settings.","settings.notifications.messages.permissionNotGranted":"Notification permission not granted.","settings.notifications.messages.unsupportedGeneral":"Notifications are not supported in this environment.","settings.notifications.messages.permissionGranted":"Permission granted. You can now enable notifications.","settings.notifications.messages.permissionRequestDenied":"Permission denied. You may need to enable notifications in your system or browser settings.","settings.notifications.sessionStatus.title":"Session status notifications","settings.notifications.sessionStatus.subtitle":"Receive alerts when sessions need your attention.","settings.notifications.enable.title":"Enable notifications","settings.notifications.enable.permission":"Permission: {permission}","settings.notifications.requestPermission.title":"Request permission","settings.notifications.requestPermission.subtitle":"Allow the app to send notifications on this device.","settings.notifications.requestPermission.action":"Request","settings.notifications.allowVisible.title":"Notify when the app is focused","settings.notifications.allowVisible.subtitle":"Keep alerts enabled even while this window is visible.","settings.notifications.unsupportedNote":"Notifications are not supported in this environment. The notifications control stays disabled.","settings.notifications.events.title":"Notify me when","settings.notifications.events.subtitle":"Choose which session events should send alerts.","settings.notifications.events.needsInput":"Session needs input","settings.notifications.events.idle":"Session becomes idle","settings.notifications.status.enabled":"Notifications enabled","settings.notifications.status.disabled":"Notifications disabled","settings.notifications.status.unsupported":"Notifications unsupported","settings.section.remote.title":"Remote Access","settings.section.remote.subtitle":"Review how this server is exposed on your network and secure access credentials.","settings.section.opencode.title":"OpenCode","settings.section.opencode.subtitle":"Choose the OpenCode binary and environment used for new instances.","settings.opencode.runtime.title":"Runtime","settings.opencode.runtime.subtitle":"Configure which OpenCode binary new instances launch with.","settings.opencode.logLevel.title":"OpenCode Log Level","settings.opencode.logLevel.subtitle":"Control the log verbosity used when launching new OpenCode instances.","settings.opencode.logLevel.selector.title":"Default log level","settings.opencode.logLevel.selector.subtitle":"Choose how verbose new OpenCode instances should be.","settings.opencode.logLevel.option.debug":"Debug","settings.opencode.logLevel.option.info":"Info","settings.opencode.logLevel.option.warn":"Warn","settings.opencode.logLevel.option.error":"Error","settings.configFiles.title":"Config Files","settings.configFiles.subtitle":"Edit allowlisted global configuration files on this server.","settings.configFiles.selector.label":"File","settings.configFiles.selector.placeholder":"Select config file","settings.configFiles.actions.save":"Save","settings.configFiles.actions.reload":"Reload","settings.configFiles.state.unsaved":"Unsaved changes","settings.configFiles.state.notCreated":"File will be created on save","settings.configFiles.empty":"No config file selected.","settings.configFiles.errors.loadList":"Failed to load config files.","settings.configFiles.errors.loadContent":"Failed to load config file.","settings.configFiles.errors.save":"Failed to save config file.","settings.configFiles.toast.saveSuccess":"Config file saved.","settings.configFiles.toast.saveError":"Failed to save config file.","settings.configFiles.confirmDiscard.message":"Discard unsaved changes before continuing?","settings.configFiles.confirmDiscard.confirmLabel":"Discard changes","settings.configFiles.confirmDiscard.cancelLabel":"Keep editing","settings.providers.title":"Provider Authentication","settings.providers.subtitle":"Connect API keys or OAuth accounts for the active OpenCode instance.","settings.providers.refresh":"Refresh","settings.providers.selectProvider":"Select provider","settings.providers.available.title":"Available Providers","settings.providers.configured.title":"Configured Providers","settings.providers.loading":"Loading provider authentication methods...","settings.providers.empty.noInstance":"Start an OpenCode workspace before managing provider authentication.","settings.providers.empty.noProviders":"No providers are available from this OpenCode instance.","settings.providers.empty.noConfiguredProviders":"No providers are currently configured for this OpenCode instance.","settings.providers.models.one":"{count} model","settings.providers.models.other":"{count} models","settings.providers.actions.connect":"Connect","settings.providers.actions.disconnect":"Disconnect","settings.providers.actions.remove":"Remove saved auth","settings.providers.actions.close":"Close","settings.providers.actions.continue":"Continue","settings.providers.actions.working":"Working...","settings.providers.method.title":"Authentication method","settings.providers.method.subtitle":"Choose the flow OpenCode exposes for this provider.","settings.providers.method.api":"API key","settings.providers.method.oauth":"OAuth","settings.providers.method.mixed":"API key and OAuth","settings.providers.method.fallback":"API key","settings.providers.status.available":"Available","settings.providers.auth.title":"Connect {provider}","settings.providers.auth.subtitle":"Authentication is saved inside the active OpenCode server.","settings.providers.apiKey.label":"API key","settings.providers.apiKey.placeholder":"Paste provider API key","settings.providers.oauth.noPrompts":"This OAuth method does not need additional details before opening the browser.","settings.providers.oauth.promptsUnsupported":"This OAuth method requires provider-specific prompt inputs that are not supported by the current SDK build.","settings.providers.oauth.enterCode":"Complete the browser flow, then paste the authorization code.","settings.providers.oauth.openPage":"Open authorization page","settings.providers.oauth.openHere":"Open in this tab","settings.providers.oauth.copyLink":"Copy link","settings.providers.oauth.linkCopied":"Link copied","settings.providers.oauth.popupBlocked":"Your browser may have blocked the authorization page. Use the actions above to continue the sign-in flow.","settings.providers.oauth.popup.loadingTitle":"OpenCode authorization","settings.providers.oauth.popup.loadingBody":"Preparing authorization page...","settings.providers.oauth.codeLabel":"Authorization code","settings.providers.oauth.codePlaceholder":"Paste code from provider","settings.providers.oauth.submitCode":"Submit code","settings.providers.oauth.waitingTitle":"Waiting for authorization","settings.providers.oauth.cancelWait":"Cancel","settings.providers.prompt.selectPlaceholder":"Select an option","settings.providers.success":"Provider authentication saved. Provider data has been refreshed.","settings.providers.source.api":"Saved provider authentication","settings.providers.source.config":"Configured in opencode.jsonc","settings.providers.source.custom":"Configured by custom provider logic","settings.providers.source.env":"Configured from environment variables","settings.providers.source.unknown":"Configured provider source","settings.providers.errors.loadFailed":"Failed to load provider authentication methods.","settings.providers.errors.noAuthorization":"Provider did not return authorization data.","settings.providers.errors.authorizationFailed":"Authorization failed.","settings.providers.errors.removeFailed":"Failed to remove provider authentication.","settings.providers.errors.envDisconnectUnavailable":"This provider is configured from environment variables and cannot be disconnected from the UI.","settings.appearance.behavior.title":"Interaction","settings.appearance.behavior.subtitle":"Message, diff, and input defaults.","settings.behavior.keyboardHints.title":"Keyboard shortcut hints","settings.behavior.keyboardHints.subtitle":"Show keyboard shortcut hints across the UI.","settings.behavior.thinking.title":"Thinking sections","settings.behavior.thinking.subtitle":"Show or hide AI thinking sections in messages.","settings.behavior.thinkingDefault.title":"Thinking default","settings.behavior.thinkingDefault.subtitle":"Choose whether thinking sections start expanded or collapsed.","settings.behavior.messageTimeline.title":"Message timeline","settings.behavior.messageTimeline.subtitle":"Show or hide the message timeline sidebar.","settings.behavior.timelineTools.title":"Timeline tool calls","settings.behavior.timelineTools.subtitle":"Show or hide tool call entries in the message timeline.","settings.behavior.diffView.title":"Diff view","settings.behavior.diffView.subtitle":"Choose how tool-call diffs are displayed.","settings.behavior.diffView.option.split":"Split","settings.behavior.diffView.option.unified":"Unified","settings.behavior.toolOutputsDefault.title":"Tool outputs default","settings.behavior.toolOutputsDefault.subtitle":"Choose whether tool outputs start expanded or collapsed.","settings.behavior.diagnosticsDefault.title":"Diagnostics default","settings.behavior.diagnosticsDefault.subtitle":"Choose whether diagnostics output starts expanded or collapsed.","settings.behavior.toolInputsVisibility.title":"Tool inputs visibility","settings.behavior.toolInputsVisibility.subtitle":"Set default visibility for tool call input arguments.","settings.behavior.usageMetrics.title":"Token usage metrics","settings.behavior.usageMetrics.subtitle":"Show or hide token and cost stats for assistant messages.","settings.behavior.autoCleanup.title":"Auto-cleanup blank sessions","settings.behavior.autoCleanup.subtitle":"Automatically clean up blank sessions when creating new ones.","settings.behavior.keepUnseenSubagentIdle.title":"Keep subagent idle markers","settings.behavior.keepUnseenSubagentIdle.subtitle":"Keep subagent idle markers visible until viewed instead of hiding them after 5 seconds.","settings.behavior.tauriNativeEventTransport.title":"Native Tauri event transport","settings.behavior.tauriNativeEventTransport.subtitle":"Use the Rust-native desktop event transport in Tauri. Disable this to fall back to the browser EventSource path.","settings.behavior.promptVoiceInput.title":"Prompt voice input","settings.behavior.promptVoiceInput.subtitle":"Show the microphone control for speech-to-text prompt input when speech is configured.","settings.behavior.promptSubmit.title":"Enter to submit","settings.behavior.promptSubmit.subtitle":"Use Enter to submit prompts; Cmd/Ctrl+Enter inserts a new line.","settings.speech.title":"Speech","settings.speech.subtitle":"Configure speech-to-text now and text-to-speech groundwork for later features.","settings.speech.provider.title":"Provider","settings.speech.provider.subtitle":"Speech requests use the server-side speech adapter.","settings.speech.provider.openaiCompatible":"OpenAI-compatible","settings.speech.status.loading":"Checking configuration...","settings.speech.status.configured":"Configured","settings.speech.status.missing":"Missing API key","settings.speech.status.error":"Speech service unavailable","settings.speech.apiKey.title":"API key","settings.speech.apiKey.subtitle":"Used for CodeNomad-managed speech requests.","settings.speech.apiKey.placeholder":"Enter a new API key","settings.speech.apiKey.storedNote":"A saved API key is hidden. Enter a new value to replace it, or leave the field blank to keep it.","settings.speech.apiKey.clearAction":"Clear saved key","settings.speech.apiKey.clearPending":"The saved API key will be removed when you save.","settings.speech.baseUrl.title":"Base URL","settings.speech.baseUrl.subtitle":"Optional override for OpenAI-compatible speech endpoints.","settings.speech.baseUrl.placeholder":"https://api.openai.com/v1","settings.speech.sttModel.title":"Transcription model","settings.speech.sttModel.subtitle":"Model used for prompt speech-to-text requests.","settings.speech.ttsModel.title":"Speech model","settings.speech.ttsModel.subtitle":"Default text-to-speech model reserved for future playback features.","settings.speech.ttsVoice.title":"Default voice","settings.speech.ttsVoice.subtitle":"Default text-to-speech voice reserved for future playback features.","settings.speech.playbackMode.title":"Playback mode","settings.speech.playbackMode.subtitle":"Choose whether TTS starts playing as audio streams in or after the full file is generated.","settings.speech.playbackMode.streaming":"Streaming","settings.speech.playbackMode.buffered":"Buffered","settings.speech.ttsFormat.title":"Output format","settings.speech.ttsFormat.subtitle":"Choose the audio format for synthesized speech. Streaming support depends on your provider and browser.","settings.speech.help":"Prompt voice input appears when speech transcription is configured and supported. Message playback uses the TTS mode and format selected here.","settings.speech.compatibility.streamingUnavailable":"Your current speech provider configuration does not advertise streaming TTS. Switch playback mode to buffered if you want playback to work now.","settings.speech.compatibility.browserStreamingUnavailable":"Your current browser cannot stream the selected TTS format. Choose buffered playback or switch to a different format.","settings.speech.compatibility.runtimeNote":"All formats stay selectable in streaming mode. Some browser and provider combinations may still fail at playback time.","settings.speech.testPlayback.action":"Test playback","settings.speech.testPlayback.generating":"Generating sample","settings.speech.testPlayback.stop":"Stop sample","settings.speech.testPlayback.sample":"Thank you for using CodeNomad, your speech settings are working fine.","settings.speech.testPlayback.note":"The test uses your current playback mode and format immediately. Save API key, base URL, model, or voice changes first if you want those reflected too.","settings.speech.save.action":"Save","settings.speech.save.saving":"Saving...","settings.speech.save.saved":"Saved","settings.speech.save.unsaved":"Unsaved changes","settings.speech.save.error":"Save failed","settings.nav.sidecars":"SideCars","settings.section.sidecars.eyebrow":"Server services","settings.section.sidecars.title":"SideCars","settings.section.sidecars.subtitle":"Configure local services listening on fixed ports that the server can proxy into tabs.","sidecars.form.name":"Name","sidecars.form.validation":"Enter a valid SideCar name and port.","sidecars.form.port":"Port","sidecars.form.insecure":"Use HTTP","sidecars.form.protocol":"Protocol","sidecars.form.protocol.help":"Choose how the proxy should connect to the local service.","sidecars.form.protocol.https":"HTTPS","sidecars.form.protocol.http":"HTTP","sidecars.form.prefixMode":"Prefix mode","sidecars.form.prefixMode.help":"Choose whether the SideCar receives the public /sidecars path prefix.","sidecars.form.prefixMode.strip":"Strip prefix","sidecars.form.prefixMode.preserve":"Preserve prefix","sidecars.form.add":"Add SideCar","sidecars.kind.port":"Port","sidecars.status.running":"Running","sidecars.status.stopped":"Stopped","sidecars.basePath":"Base path","sidecars.settings.listTitle":"Configured SideCars","sidecars.settings.listSubtitle":"Review the port-based SideCars available in the picker.","sidecars.settings.empty":"No SideCars configured yet.","sidecars.picker.title":"Open SideCar","sidecars.picker.loading":"Loading SideCars...","sidecars.picker.subtitle":"Choose an available SideCar to open in a new tab.","sidecars.picker.empty":"No port-based SideCars are available yet.","sidecars.picker.close":"Close","sidecars.open.errorTitle":"Unable to open SideCar","sidecars.open.notFound":"SideCar not found.","sidecars.open.notRunning":"SideCar is not reachable on its configured port.","sidecars.back":"Back","sidecars.refresh":"Refresh","sidecars.path":"Path","sidecars.go":"Go","toastHistory.title":"Notification History","toastHistory.empty":"No notifications yet","toastHistory.empty.filter":"No matching notifications for this filter","toastHistory.clearAll":"Clear all","toastHistory.markAllRead":"Mark all read","toastHistory.filter.label":"Filter notifications","toastHistory.filter.all":"All","toastHistory.filter.info":"Info","toastHistory.filter.success":"Success","toastHistory.filter.warning":"Warning","toastHistory.filter.error":"Error","toastHistory.today":"Today","toastHistory.yesterday":"Yesterday","toastHistory.earlier":"Earlier","toastHistory.unread":"{count} unread","toastHistory.viewSettings":"Settings","toastHistory.close":"Close","toastHistory.deleteItem":"Delete notification","settings.section.info.title":"About","settings.section.info.subtitle":"View version, runtime, and gather diagnostic information.","settings.info.version.server":"Server version","settings.info.version.ui":"UI version","settings.info.version.uiSource":"UI source","settings.info.runtime.type":"Runtime","settings.info.runtime.platform":"Platform","settings.info.runtime.os":"Operating system","settings.info.server.url":"Server URL","settings.info.server.root":"Workspace root","settings.info.updates.title":"Updates","settings.info.updates.subtitle":"Check for new releases of CodeNomad.","settings.info.updates.latest":"Latest version","settings.info.updates.download":"Download update","settings.info.updates.refresh":"Refresh","settings.info.diagnostics.copyFailed":"Clipboard access denied. Use the download button instead.","settings.info.diagnostics.title":"Diagnostics","settings.info.diagnostics.subtitle":"Collect system and version info for bug reports.","settings.info.diagnostics.copy":"Copy to clipboard","settings.info.diagnostics.download":"Download .txt","settings.info.diagnostics.copied":"Diagnostic info copied to clipboard."},ee={"time.relative.justNow":"just now","time.relative.daysAgoShort":"{count}d ago","time.relative.hoursAgoShort":"{count}h ago","time.relative.minutesAgoShort":"{count}m ago"},te={"toolCall.pending.waitingToRun":"Waiting to run...","toolCall.error.label":"Error:","toolCall.header.copyTitle":"Copy tool call title","toolCall.header.copyAriaLabel":"Copy tool call title","toolCall.header.copyOutputTitle":"Copy tool output","toolCall.header.copyOutputAriaLabel":"Copy tool output","toolCall.header.showInputTitle":"Show Tool Arguments","toolCall.header.showInputAriaLabel":"Show Tool Arguments","toolCall.header.hideInputTitle":"Hide Tool Arguments","toolCall.header.hideInputAriaLabel":"Hide Tool Arguments","toolCall.io.input":"Tool Input","toolCall.io.output":"Tool Output","toolCall.io.copyInputTitle":"Copy tool input","toolCall.io.copyInputAriaLabel":"Copy tool input","toolCall.io.copyOutputTitle":"Copy tool output","toolCall.io.copyOutputAriaLabel":"Copy tool output","toolCall.diff.label":"Diff","toolCall.diff.label.withPath":"Diff · {path}","toolCall.diff.viewMode.ariaLabel":"Diff view mode","toolCall.diff.viewMode.split":"Split","toolCall.diff.viewMode.unified":"Unified","toolCall.diff.switchToSplit":"Switch to split view","toolCall.diff.switchToUnified":"Switch to unified view","toolCall.diff.enableWordWrap":"Enable word wrap","toolCall.diff.disableWordWrap":"Disable word wrap","toolCall.diff.copyPatch":"Copy patch","toolCall.diagnostics.title":"Diagnostics","toolCall.diagnostics.ariaLabel":"Diagnostics","toolCall.diagnostics.ariaLabel.withLabel":"Diagnostics {label}","toolCall.diagnostics.severity.error.short":"ERR","toolCall.diagnostics.severity.warning.short":"WARN","toolCall.diagnostics.severity.info.short":"INFO","toolCall.renderer.toolName.shell":"Shell","toolCall.renderer.toolName.fetch":"Fetch","toolCall.renderer.toolName.invalid":"Invalid","toolCall.renderer.toolName.plan":"Plan","toolCall.renderer.toolName.applyPatch":"Apply patch","toolCall.renderer.action.working":"Working...","toolCall.renderer.action.writingCommand":"Writing command...","toolCall.renderer.action.preparingEdit":"Preparing edit...","toolCall.renderer.action.readingFile":"Reading file...","toolCall.renderer.action.preparingWrite":"Preparing write...","toolCall.renderer.action.preparingPatch":"Preparing patch...","toolCall.renderer.action.planning":"Planning...","toolCall.renderer.action.fetchingFromWeb":"Fetching from the web...","toolCall.renderer.action.findingFiles":"Finding files...","toolCall.renderer.action.searchingContent":"Searching content...","toolCall.renderer.action.listingDirectory":"Listing directory...","toolCall.renderer.bash.title.timeout":"Timeout: {timeout}","toolCall.renderer.read.detail.offset":"Offset: {offset}","toolCall.renderer.read.detail.limit":"Limit: {limit}","toolCall.renderer.todo.empty":"No items planned","toolCall.renderer.todo.status.pending":"Pending","toolCall.renderer.todo.status.inProgress":"In progress","toolCall.renderer.todo.status.completed":"Completed","toolCall.renderer.todo.status.cancelled":"Cancelled","toolCall.renderer.todo.title.plan":"Plan","toolCall.renderer.todo.title.creating":"Creating plan","toolCall.renderer.todo.title.completing":"Completing plan","toolCall.renderer.todo.title.updating":"Updating plan","toolCall.permission.status.required":"Permission Required","toolCall.permission.status.queued":"Permission Queued","toolCall.permission.requestedDiff.label":"Requested diff","toolCall.permission.requestedDiff.withPath":"Requested diff · {path}","toolCall.permission.queuedText":"Waiting for earlier permission responses.","toolCall.permission.actions.allowOnce":"Allow Once","toolCall.permission.actions.alwaysAllow":"Always Allow","toolCall.permission.actions.deny":"Deny","toolCall.permission.shortcuts.allowOnce":"Allow once","toolCall.permission.shortcuts.alwaysAllow":"Always allow","toolCall.permission.rejectReason.placeholder":"Optional feedback for Deny, e.g. use a safer command...","toolCall.permission.errors.unableToUpdate":"Unable to update permission","permissionApproval.title":"Requests","permissionApproval.empty":"No pending requests.","permissionApproval.kind.permission":"Permission","permissionApproval.kind.question":"Question","permissionApproval.questionCount.one":"{count} question","permissionApproval.questionCount.other":"{count} questions","permissionApproval.status.active":"Active","permissionApproval.actions.closeAriaLabel":"Close","permissionApproval.actions.goToSession":"Go to Session","permissionApproval.actions.loadingSession":"Loading…","permissionApproval.actions.loadSession":"Load Session","permissionApproval.actions.allowOnce":"Allow Once","permissionApproval.actions.alwaysAllow":"Always Allow","permissionApproval.actions.deny":"Deny","permissionApproval.rejectReason.placeholder":"Optional feedback for Deny, e.g. use a safer command...","permissionApproval.fallbackHint":"Load session for more information.","permissionApproval.errors.unableToUpdatePermission":"Unable to update permission","toolCall.question.status.required":"Question Required","toolCall.question.status.queued":"Question Queued","toolCall.question.status.questions":"Questions","toolCall.question.action.awaitingAnswers":"Awaiting answers...","toolCall.question.title.questions":"Questions","toolCall.question.title.askingQuestions":"Asking questions","toolCall.question.type.one":"Question","toolCall.question.type.other":"Questions","toolCall.question.number":"Q{number}:","toolCall.question.multiple":"Multiple","toolCall.question.custom.title":"Type a custom answer","toolCall.question.custom.label":"Custom answer","toolCall.question.custom.placeholder":"Type your own answer","toolCall.question.actions.submit":"Submit","toolCall.question.actions.dismiss":"Dismiss","toolCall.question.shortcuts.submit":"Submit","toolCall.question.shortcuts.dismiss":"Dismiss","toolCall.question.queuedText":"Waiting for earlier responses.","toolCall.question.validation.answerAll":"Please answer all questions before submitting.","toolCall.question.errors.unableToReply":"Unable to reply","toolCall.question.errors.unableToDismiss":"Unable to dismiss","toolCall.task.action.delegating":"Delegating...","toolCall.task.sections.prompt":"Prompt","toolCall.task.sections.steps":"Steps","toolCall.task.sections.output":"Output","toolCall.task.steps.count":"{count} steps","toolCall.task.meta.agentModel":"Agent: {agent} • Model: {model}","toolCall.task.meta.agent":"Agent: {agent}","toolCall.task.meta.model":"Model: {model}","toolCall.status.pending":"Pending","toolCall.status.running":"Running","toolCall.status.completed":"Completed","toolCall.status.error":"Error","toolCall.status.unknown":"Unknown","toolCall.applyPatch.action.preparing":"Preparing apply_patch...","toolCall.applyPatch.title.withFileCount.one":"{tool} ({count} file)","toolCall.applyPatch.title.withFileCount.other":"{tool} ({count} files)","toolCall.applyPatch.fileFallback":"File {number}"};function se(...e){const s={};for(const n of e)for(const[i,t]of Object.entries(n)){if(i in s)throw new Error(`Duplicate i18n message key: ${i}`);s[i]=t}return s}const d=se(j,q,K,ee,H,_,z,G,Q,X,J,te,Y,Z,$,W),oe=["en","es","fr","ru","ja","zh-Hans","he","de","ne"],b=new Map(oe.map(e=>[e.toLowerCase(),e])),ne=new Set(["he"]),v=new Map([["en",d]]),u=new Map,ie={en:async()=>d,es:async()=>(await r(async()=>{const{esMessages:e}=await import("./index-G37GrhG6.js");return{esMessages:e}},__vite__mapDeps([0,1,2,3,4,5]))).esMessages,fr:async()=>(await r(async()=>{const{frMessages:e}=await import("./index-C5mhkY-6.js");return{frMessages:e}},__vite__mapDeps([6,1,2,3,4,5]))).frMessages,ru:async()=>(await r(async()=>{const{ruMessages:e}=await import("./index-iK7Z6bMV.js");return{ruMessages:e}},__vite__mapDeps([7,1,2,3,4,5]))).ruMessages,ja:async()=>(await r(async()=>{const{jaMessages:e}=await import("./index-CCGREwWR.js");return{jaMessages:e}},__vite__mapDeps([8,1,2,3,4,5]))).jaMessages,"zh-Hans":async()=>(await r(async()=>{const{zhHansMessages:e}=await import("./index-CkOMuqoF.js");return{zhHansMessages:e}},__vite__mapDeps([9,1,2,3,4,5]))).zhHansMessages,he:async()=>(await r(async()=>{const{heMessages:e}=await import("./index-DIVooRPn.js");return{heMessages:e}},__vite__mapDeps([10,1,2,3,4,5]))).heMessages,de:async()=>(await r(async()=>{const{deMessages:e}=await import("./index-BXfEYP03.js");return{deMessages:e}},__vite__mapDeps([11,1,2,3,4,5]))).deMessages,ne:async()=>(await r(async()=>{const{neMessages:e}=await import("./index-CqoUlH3-.js");return{neMessages:e}},__vite__mapDeps([12,1,2,3,4,5]))).neMessages};function ae(e){return ne.has(e)?"rtl":"ltr"}function re(e){return e.trim().replace(/_/g,"-")}function w(e){if(!e)return null;const n=re(e).toLowerCase(),i=b.get(n);if(i)return i;const o=n.split("-")[0];return o?o==="zh"?b.get("zh-hans")??null:b.get(o)??null:null}function L(){if(typeof navigator>"u")return null;const e=Array.isArray(navigator.languages)&&navigator.languages.length>0?navigator.languages:navigator.language?[navigator.language]:[];for(const s of e){const n=w(s);if(n)return n}return null}function le(e,s){return s?e.replace(/\{(\w+)\}/g,(n,i)=>{const t=s[i];return t==null?"":String(t)}):e}function A(e,s,n){const i=e[s],t=d[s];return le(i??t??s,n)}const[ce,g]=S(0);let c=d,l="en";function de(e){return v.get(e)??d}async function I(e){const s=v.get(e);if(s)return s;const n=u.get(e);if(n)return n;const i=ie[e],t=i().then(o=>(v.set(e,o),u.delete(e),o)).catch(o=>{throw u.delete(e),o});return u.set(e,t),t}async function ge(e){const s=w(e??void 0)??L()??"en";try{return c=await I(s),l=s,g(n=>n+1),s}catch{return c=d,l="en",g(n=>n+1),"en"}}function ue(e,s){return ce(),A(c,e,s)}const T=E(),he=e=>{const{preferences:s}=x(),[n,i]=S(l),[t,o]=S(l),p=c,y=l,D=typeof document<"u"?document.documentElement.lang:"",F=typeof document<"u"?document.documentElement.dir:"";N(()=>{const a=L();a&&i(a)});const h=C(()=>w(s().locale)??n()??"en"),M=C(()=>de(t()));function R(a,m){return A(M(),a,m)}k(()=>{const a=h();let m=!1;I(a).then(f=>{m||(o(a),l=a,c=f,g(O=>O+1))}).catch(()=>{m||(o("en"),c=d,l="en",g(f=>f+1))}),P(()=>{m=!0})}),k(()=>{if(typeof document>"u")return;const a=h();document.documentElement.dir=ae(a),document.documentElement.lang=a}),P(()=>{c=p,l=y,g(a=>a+1),typeof document<"u"&&(document.documentElement.lang=D,document.documentElement.dir=F)});const B={locale:h,t:R};return V(T.Provider,{value:B,get children(){return e.children}})};function fe(){const e=U(T);if(!e)throw new Error("useI18n must be used within I18nProvider");return e}export{he as I,d as e,se as m,ge as p,ue as t,fe as u};
@@ -1 +0,0 @@
1
- import{m as e}from"./index-BV8k2sC0.js";import"./monaco-viewer-BFNhPQX7.js";import"./git-diff-vendor-CSgooKT_.js";import"./fast-diff-vendor-DgdwVvTQ.js";import"./highlight-vendor-8FKMu9os.js";const n={"advancedSettings.title":"Erweiterte Einstellungen","advancedSettings.environmentVariables.title":"Umgebungsvariablen","advancedSettings.environmentVariables.subtitle":"Wird angewendet, wenn eine neue OpenCode-Instanz startet","advancedSettings.actions.close":"Schließen"},t={"app.launchError.title":"OpenCode konnte nicht gestartet werden","app.launchError.description":"Die ausgewählte OpenCode-Binärdatei konnte nicht gestartet werden. Überprüfen Sie die Fehlerausgabe unten oder wählen Sie eine andere Binärdatei in den OpenCode-Einstellungen.","app.launchError.binaryPathLabel":"Binärpfad","app.launchError.errorOutputLabel":"Fehlerausgabe","app.launchError.openAdvancedSettings":"OpenCode-Einstellungen öffnen","app.launchError.close":"Schließen","app.launchError.closeTitle":"Schließen (Esc)","app.launchError.fallbackMessage":"Arbeitsbereich konnte nicht gestartet werden","app.stopInstance.confirmMessage":"OpenCode-Instanz stoppen? Dies wird den Server beenden.","app.stopInstance.title":"Instanz stoppen","app.stopInstance.confirmLabel":"Stoppen","app.stopInstance.cancelLabel":"Weiterlaufen lassen","app.stopInstance.toast.error":"Arbeitsbereich konnte nicht gestoppt werden.","emptyState.logoAlt":"CodeNomad Logo","emptyState.brandTitle":"CodeNomad","emptyState.tagline":"Wählen Sie einen Ordner aus, um mit dem AI-Coding zu beginnen","emptyState.actions.selectFolder":"Ordner auswählen","emptyState.actions.selecting":"Wird ausgewählt...","emptyState.keyboardShortcut":"Tastenkombination: {shortcut}","emptyState.examples":"Beispiele: {example}","emptyState.multipleInstances":"Sie können mehrere Instanzen desselben Ordners haben","releases.upgradeRequired.title":"Update erforderlich","releases.upgradeRequired.message.withVersion":"Aktualisieren Sie auf CodeNomad {version}, um die neueste Benutzeroberfläche zu verwenden.","releases.upgradeRequired.message.noVersion":"Aktualisieren Sie CodeNomad, um die neueste Benutzeroberfläche zu verwenden.","releases.upgradeRequired.action.getUpdate":"Update holen","releases.uiUpdated.title":"UI aktualisiert","releases.uiUpdated.message":"Die Benutzeroberfläche wurde auf Version {version} aktualisiert.","releases.devUpdateAvailable.title":"Dev-Build verfügbar","releases.devUpdateAvailable.message":"Ein neuer Dev-Build ist verfügbar: {version}.","releases.devUpdateAvailable.action":"Release ansehen","theme.mode.system":"System","theme.mode.light":"Hell","theme.mode.dark":"Dunkel","theme.toggle.title":"Design: {mode}","theme.toggle.ariaLabel":"Design: {mode}"},i={"commandPalette.title":"Befehlspalette","commandPalette.description":"Befehle suchen und ausführen","commandPalette.searchPlaceholder":"Befehl eingeben oder suchen...","commandPalette.empty":'Keine Befehle für "{query}" gefunden',"commandPalette.category.customCommands":"Benutzerdefinierte Befehle","commandPalette.category.instance":"Instanz","commandPalette.category.session":"Sitzung","commandPalette.category.agentModel":"Agent & Modell","commandPalette.category.inputFocus":"Eingabe & Fokus","commandPalette.category.system":"System","commandPalette.category.other":"Andere","commands.newInstance.label":"Neue Instanz","commands.newInstance.description":"Ordnerauswahl öffnen, um eine neue Instanz zu erstellen","commands.newInstance.keywords":"ordner, projekt, arbeitsbereich","commands.closeInstance.label":"Tab schließen","commands.closeInstance.description":"Den aktuellen obersten Tab schließen","commands.closeInstance.keywords":"stoppen, beenden, schließen, tab","commands.nextInstance.label":"Nächster Tab","commands.nextInstance.description":"Zum nächsten obersten Tab wechseln","commands.nextInstance.keywords":"wechseln, navigieren, tab","commands.previousInstance.label":"Vorheriger Tab","commands.previousInstance.description":"Zum vorherigen obersten Tab wechseln","commands.previousInstance.keywords":"wechseln, navigieren, tab","commands.newSession.label":"Neue Sitzung","commands.newSession.description":"Eine neue Hauptsitzung erstellen","commands.newSession.keywords":"erstellen, starten","commands.closeSession.label":"Sitzung schließen","commands.closeSession.description":"Aktuelle Hauptsitzung schließen","commands.closeSession.keywords":"schließen, stoppen","commands.scrubSessions.label":"Sitzungen bereinigen","commands.scrubSessions.description":"Leere Sitzungen, Unteragenten-Sitzungen, die ihre Hauptaufgabe abgeschlossen haben, und überflüssige verzweigte Sitzungen entfernen.","commands.scrubSessions.keywords":"bereinigen, leer, sitzungen, entfernen, löschen","commands.instanceInfo.label":"Instanz-Info","commands.instanceInfo.description":"Instanzübersicht für Protokolle und Status öffnen","commands.instanceInfo.keywords":"info, protokolle, konsole, ausgabe","commands.nextSession.label":"Nächste Sitzung","commands.nextSession.description":"Zum nächsten Sitzungs-Tab wechseln","commands.nextSession.keywords":"wechseln, navigieren","commands.previousSession.label":"Vorherige Sitzung","commands.previousSession.description":"Zum vorherigen Sitzungs-Tab wechseln","commands.previousSession.keywords":"wechseln, navigieren","commands.compactSession.label":"Sitzung komprimieren","commands.compactSession.description":"Die aktuelle Sitzung zusammenfassen und komprimieren","commands.compactSession.keywords":"zusammenfassen, komprimieren","commands.compactSession.errorFallback":"Sitzung konnte nicht komprimiert werden","commands.compactSession.alert.title":"Komprimierung fehlgeschlagen","commands.compactSession.alert.message":"Komprimierung fehlgeschlagen: {message}","commands.undoLastMessage.label":"Letzte Nachricht rückgängig machen","commands.undoLastMessage.description":"Die letzte Nachricht rückgängig machen","commands.undoLastMessage.keywords":"rückgängig, wiederherstellen","commands.undoLastMessage.none.title":"Keine Aktionen zum Rückgängigmachen","commands.undoLastMessage.none.message":"Nichts zum Rückgängigmachen","commands.undoLastMessage.failed.title":"Rückgängigmachen fehlgeschlagen","commands.undoLastMessage.failed.message":"Nachricht konnte nicht rückgängig gemacht werden","commands.openModelSelector.label":"Modellauswahl öffnen","commands.openModelSelector.description":"Ein anderes Modell wählen","commands.openModelSelector.keywords":"modell, llm, ai","commands.selectModelVariant.label":"Modellvariante auswählen","commands.selectModelVariant.description":"Den Denkaufwand für das aktuelle Modell wählen","commands.selectModelVariant.keywords":"variante, denken, schlussfolgern, aufwand","commands.openAgentSelector.label":"Agentenauswahl öffnen","commands.openAgentSelector.description":"Einen anderen Agenten wählen","commands.openAgentSelector.keywords":"agent, modus","commands.clearInput.label":"Eingabe löschen","commands.clearInput.description":"Den Textbereich des Prompts löschen","commands.clearInput.keywords":"löschen, zurücksetzen","commands.promptSubmitShortcut.label.default":"Enter: Neue Zeile, Cmd/Ctrl+Enter: Prompt absenden","commands.promptSubmitShortcut.label.swapped":"Enter: Prompt absenden, Cmd/Ctrl+Enter: Neue Zeile","commands.promptSubmitShortcut.description":"Verhalten von Enter und Cmd/Ctrl+Enter bei der Prompt-Eingabe vertauschen","commands.promptSubmitShortcut.keywords":"enter, cmd, ctrl, senden, neuezeile, tastenkombination, prompt","commands.thinkingBlocks.label.show":"Denken anzeigen","commands.thinkingBlocks.label.hide":"Denken ausblenden","commands.thinkingBlocks.description":"AI-Denkabschnitte anzeigen oder ausblenden","commands.thinkingBlocks.keywords":"denken, schlussfolgern, umschalten, anzeigen, ausblenden","commands.timelineToolCalls.label.show":"Timeline-Tool-Aufrufe anzeigen","commands.timelineToolCalls.label.hide":"Timeline-Tool-Aufrufe ausblenden","commands.timelineToolCalls.description":"Tool-Aufruf-Einträge in der Nachrichten-Timeline umschalten","commands.timelineToolCalls.keywords":"timeline, tool, umschalten","commands.keyboardShortcutHints.label.show":"Tastenkombinations-Hinweise anzeigen","commands.keyboardShortcutHints.label.hide":"Tastenkombinations-Hinweise ausblenden","commands.keyboardShortcutHints.description":"Tastenkombinations-Hinweise in der Benutzeroberfläche anzeigen oder ausblenden","commands.keyboardShortcutHints.description.disabledWeb":"In der Web-UI deaktiviert (Hinweise sind immer ausgeblendet)","commands.keyboardShortcutHints.keywords":"tastenkombination, tastatur, hinweise","commands.common.expanded":"Erweitert","commands.common.collapsed":"Eingeklappt","commands.common.visible":"Sichtbar","commands.common.hidden":"Ausgeblendet","commands.common.enabled":"Aktiviert","commands.common.disabled":"Deaktiviert","commands.thinkingBlocksDefault.label":"Denkansicht: {state}","commands.thinkingBlocksDefault.description":"AI-Denkabschnitte beim Anzeigen ein- oder ausklappen","commands.thinkingBlocksDefault.keywords":"denken, schlussfolgern, erweitern, einklappen, standard","commands.diffViewSplit.label":"Geteilte Diff-Ansicht verwenden","commands.diffViewSplit.description":"Tool-Aufruf-Diffs nebeneinander anzeigen","commands.diffViewSplit.keywords":"diff, geteilt, ansicht","commands.diffViewUnified.label":"Einheitliche Diff-Ansicht verwenden","commands.diffViewUnified.description":"Tool-Aufruf-Diffs inline anzeigen","commands.diffViewUnified.keywords":"diff, einheitlich, ansicht","commands.toolOutputsDefault.label":"Standard für Tool-Ausgaben · {state}","commands.toolOutputsDefault.description":"Standardmäßige Erweiterung für Tool-Ausgaben umschalten","commands.toolOutputsDefault.keywords":"tool, ausgabe, erweitern, einklappen","commands.diagnosticsDefault.label":"Standard für Diagnose · {state}","commands.diagnosticsDefault.description":"Standardmäßige Erweiterung für die Diagnoseausgabe umschalten","commands.diagnosticsDefault.keywords":"diagnose, erweitern, einklappen","commands.toolInputsVisibility.label":"Sichtbarkeit von Tool-Eingaben · {state}","commands.toolInputsVisibility.description":"Standardsichtbarkeit für Argumente von Tool-Aufrufen festlegen","commands.toolInputsVisibility.keywords":"tool, eingaben, argumente, sichtbarkeit, ausblenden, anzeigen, erweitern, einklappen","commands.tokenUsageDisplay.label":"Token-Verbrauchsanzeige · {state}","commands.tokenUsageDisplay.description":"Token- und Kostenstatistiken für Assistenten-Nachrichten anzeigen oder ausblenden","commands.tokenUsageDisplay.keywords":"token, verbrauch, kosten, statistik","commands.autoCleanupBlankSessions.label":"Automatische Bereinigung leerer Sitzungen · {state}","commands.autoCleanupBlankSessions.description":"Leere Sitzungen beim Erstellen neuer Sitzungen automatisch bereinigen","commands.autoCleanupBlankSessions.keywords":"auto, bereinigen, leer, sitzungen, umschalten","commands.showHelp.label":"Hilfe anzeigen","commands.showHelp.description":"Tastenkombinationen und Hilfe anzeigen","commands.showHelp.keywords":"tastenkombinationen, hilfe","commands.custom.argumentsPrompt.message":"Argumente für /{name}","commands.custom.argumentsPrompt.title":"Benutzerdefinierter Befehl","commands.custom.argumentsPrompt.inputLabel":"Argumente","commands.custom.argumentsPrompt.inputPlaceholder":"z. B. foo bar","commands.custom.argumentsPrompt.confirmLabel":"Ausführen","commands.custom.argumentsPrompt.cancelLabel":"Abbrechen","commands.custom.argumentsPrompt.openFailed.message":"Abfrage der Argumente fehlgeschlagen.","commands.custom.argumentsPrompt.openFailed.title":"Befehlsargumente","commands.custom.entries.descriptionFallback":"Benutzerdefinierter Befehl","commands.custom.sessionRequired.message":"Wählen Sie eine Sitzung aus, bevor Sie einen benutzerdefinierten Befehl ausführen.","commands.custom.sessionRequired.title":"Sitzung erforderlich","commands.custom.runFailed.message":"Ausführen des benutzerdefinierten Befehls fehlgeschlagen. Überprüfen Sie die Konsole für Details.","commands.custom.runFailed.title":"Befehl fehlgeschlagen","unifiedPicker.loading.searching":"Suche...","unifiedPicker.loading.loadingWorkspace":"Arbeitsbereich wird geladen...","unifiedPicker.title.command":"Befehl auswählen","unifiedPicker.title.mention":"Agent oder Datei auswählen","unifiedPicker.empty":"Keine Ergebnisse gefunden","unifiedPicker.sections.commands":"BEFEHLE","unifiedPicker.sections.agents":"AGENTEN","unifiedPicker.sections.files":"DATEIEN","unifiedPicker.sections.workspaceRoot":"ARBEITSBEREICH-ROOT","unifiedPicker.badge.subagent":"unteragent","unifiedPicker.footer.navigate":"navigieren","unifiedPicker.footer.select":"auswählen","unifiedPicker.footer.close":"schließen"},s={"alertDialog.fallbackTitle.info":"Hinweis","alertDialog.fallbackTitle.warning":"Bitte überprüfen","alertDialog.fallbackTitle.error":"Etwas ist schiefgelaufen","alertDialog.actions.confirm":"Bestätigen","alertDialog.actions.run":"Ausführen","alertDialog.actions.ok":"OK","alertDialog.actions.cancel":"Abbrechen","alertDialog.prompt.inputLabel":"Eingabe","backgroundProcessOutputDialog.title":"Hintergrund-Ausgabe","backgroundProcessOutputDialog.actions.close":"Schließen","backgroundProcessOutputDialog.loading":"Ausgabe wird geladen...","backgroundProcessOutputDialog.truncatedNotice":"Die Ausgabe wurde für die Anzeige gekürzt.","backgroundProcessOutputDialog.loadErrorFallback":"Ausgabe konnte nicht geladen werden."},r={"directoryBrowser.defaultDescription":"Durchsuchen Sie Ordner unter dem konfigurierten Arbeitsbereich-Root.","directoryBrowser.close":"Schließen","directoryBrowser.currentFolder":"Ordner auswählen oder Pfad eingeben","directoryBrowser.currentFolder.inputAriaLabel":"Ordnerpfad","directoryBrowser.currentFolder.inputPlaceholder":"Ordnerpfad eingeben oder einfügen","directoryBrowser.openCurrent":"Öffnen","directoryBrowser.selectCurrent":"Aktuellen auswählen","directoryBrowser.newFolder":"Neuer Ordner","directoryBrowser.creating":"Wird erstellt...","directoryBrowser.loadingFolders":"Ordner werden geladen...","directoryBrowser.noFolders":"Keine Ordner verfügbar.","directoryBrowser.upOneLevel":"Eine Ebene nach oben","directoryBrowser.select":"Auswählen","directoryBrowser.load.errorFallback":"Dateisystem konnte nicht geladen werden","directoryBrowser.createFolder.promptMessage":"Erstellen Sie einen neuen Ordner im aktuellen Verzeichnis.","directoryBrowser.createFolder.title":"Neuer Ordner","directoryBrowser.createFolder.inputLabel":"Ordnername","directoryBrowser.createFolder.inputPlaceholder":"z. B. mein-neues-projekt","directoryBrowser.createFolder.confirmLabel":"Erstellen","directoryBrowser.createFolder.cancelLabel":"Abbrechen","directoryBrowser.createFolder.invalidNameMessage":"Bitte geben Sie einen einzelnen Ordnernamen ein.","directoryBrowser.createFolder.invalidNameDetail":"Ordnernamen dürfen keine Schrägstriche, '..' oder '~' enthalten.","directoryBrowser.createFolder.errorFallback":"Ordner konnte nicht erstellt werden","filesystemBrowser.descriptionFallback":"Suchen Sie nach einem Pfad unter dem konfigurierten Arbeitsbereich-Root.","filesystemBrowser.rootLabel":"Root: {root}","filesystemBrowser.actions.close":"Schließen","filesystemBrowser.actions.retry":"Wiederholen","filesystemBrowser.actions.select":"Auswählen","filesystemBrowser.filterLabel":"Filter","filesystemBrowser.search.placeholder.directories":"Nach Ordnern suchen","filesystemBrowser.search.placeholder.files":"Nach Dateien suchen","filesystemBrowser.currentFolder.label":"Aktueller Ordner","filesystemBrowser.currentFolder.selectCurrent":"Aktuellen auswählen","filesystemBrowser.loading.filesystem":"Dateisystem","filesystemBrowser.loading.workspaceRoot":"Arbeitsbereich-Root","filesystemBrowser.loading.loadingWithPath":"{path} wird geladen...","filesystemBrowser.empty.noEntries":"Keine Einträge gefunden.","filesystemBrowser.navigation.upOneLevel":"Eine Ebene nach oben","filesystemBrowser.hints.navigate":"Navigieren","filesystemBrowser.hints.select":"Auswählen","filesystemBrowser.hints.close":"Schließen","filesystemBrowser.errors.loadFilesystemFallback":"Dateisystem konnte nicht geladen werden","filesystemBrowser.errors.openDirectoryFallback":"Verzeichnis konnte nicht geöffnet werden"},o={"folderSelection.language.ariaLabel":"Sprache","folderSelection.logoAlt":"CodeNomad Logo","folderSelection.tagline":"Wählen Sie einen Ordner aus, um mit dem AI-Coding zu beginnen","folderSelection.links.github":"CodeNomad GitHub","folderSelection.links.githubStars":"CodeNomad GitHub Sterne","folderSelection.links.discord":"CodeNomad Discord","folderSelection.empty.title":"Keine letzten Ordner","folderSelection.empty.description":"Suchen Sie nach einem Ordner, um zu beginnen","folderSelection.recent.title":"Letzte Ordner","folderSelection.recent.subtitle.one":"{count} Ordner verfügbar","folderSelection.recent.subtitle.other":"{count} Ordner verfügbar","folderSelection.recent.rename":"Arbeitsbereich umbenennen","folderSelection.recent.remove":"Aus Liste entfernen","folderSelection.recent.openBadge":"Offen","folderSelection.recent.alreadyOpenTitle":"Projekt bereits offen","folderSelection.recent.alreadyOpenMessage":"Wählen Sie, wie dieser Ordner geöffnet werden soll.","folderSelection.recent.switchToOpenProject":"Zum offenen Projekt wechseln","folderSelection.recent.openAnotherInstance":"Weitere Instanz öffnen","folderSelection.browse.title":"Nach Ordner suchen","folderSelection.browse.subtitle":"Wählen Sie einen beliebigen Ordner auf Ihrem Computer aus","folderSelection.browse.button":"Ordner durchsuchen","folderSelection.browse.buttonOpening":"Wird geöffnet...","folderSelection.clone.button":"Git-Repo klonen","folderSelection.clone.destination.title":"Klon-Ziel auswählen","folderSelection.clone.destination.description":"Wählen Sie den Ordner aus, in den das Repository geklont werden soll.","folderSelection.clone.dialog.title":"Git-Repository klonen","folderSelection.clone.dialog.description":"Klonen Sie ein Git-Repository in einen lokalen Ordner und öffnen Sie ihn als Arbeitsbereich.","folderSelection.clone.dialog.repositoryUrl":"Repository-URL","folderSelection.clone.dialog.repositoryUrlPlaceholder":"https://github.com/benutzer/repo.git","folderSelection.clone.dialog.destinationPath":"Zielordner","folderSelection.clone.dialog.destinationPathPlaceholder":"Zielordner auswählen oder eingeben","folderSelection.clone.dialog.browseDestination":"Durchsuchen","folderSelection.clone.dialog.cleanupDestination":"Zielordner zuerst entfernen, falls er bereits existiert.","folderSelection.clone.dialog.cancel":"Abbrechen","folderSelection.clone.dialog.clone":"Klonen","folderSelection.clone.dialog.cloning":"Wird geklont...","folderSelection.clone.dialog.errorRequired":"Repository-URL und Zielordner sind erforderlich.","folderSelection.actions.title":"Ordner öffnen oder Server verbinden","folderSelection.actions.subtitle":"Lokalen Ordner öffnen oder mit einem CodeNomad-Server verbinden","folderSelection.actions.connectButton":"CodeNomad-Server verbinden","folderSelection.advancedSettings":"Erweiterte Einstellungen","folderSelection.opencode":"OpenCode","folderSelection.hints.navigate":"Navigieren","folderSelection.hints.select":"Auswählen","folderSelection.hints.remove":"Entfernen","folderSelection.hints.browse":"Durchsuchen","folderSelection.loading.title":"Instanz wird gestartet...","folderSelection.loading.subtitle":"Bitte warten Sie, während wir Ihren Arbeitsbereich vorbereiten.","folderSelection.drop.title":"Ordner hier ablegen zum Öffnen","folderSelection.drop.subtitle":"Neue Instanz im abgelegten Ordner starten.","folderSelection.drop.invalidTitle":"Abgelegtes Element konnte nicht geöffnet werden","folderSelection.drop.invalidMessage":"Legen Sie einen Ordner ab, um eine neue Instanz zu starten.","folderSelection.dialog.title":"Arbeitsbereich auswählen","folderSelection.dialog.description":"Wählen Sie einen Arbeitsbereich aus, um mit dem Codieren zu beginnen.","folderSelection.tabs.local":"Lokale Ordner","folderSelection.tabs.servers":"Server","folderSelection.servers.title":"Gespeicherte Server","folderSelection.servers.subtitle":"Einen gespeicherten CodeNomad-Remote-Server in einem neuen Fenster öffnen","folderSelection.servers.count":"{count} Server","folderSelection.servers.empty.title":"Keine gespeicherten Server","folderSelection.servers.empty.description":"Fügen Sie einen Remote-Server hinzu, um sich von diesem Gerät aus schnell wieder zu verbinden","folderSelection.servers.connectTitle":"Mit Server verbinden","folderSelection.servers.connectSubtitle":"Einen CodeNomad-Remote-Server speichern und in einem neuen Fenster öffnen","folderSelection.servers.connectButton":"Mit Server verbinden","folderSelection.servers.remove":"Gespeicherten Server entfernen","folderSelection.servers.skipTls":"Selbstsigniertes TLS","folderSelection.servers.errorTitle":"Remote-Verbindung fehlgeschlagen","folderSelection.servers.dialog.title":"Mit Server verbinden","folderSelection.servers.dialog.description":"Fügen Sie einen CodeNomad-Remote-Server hinzu und öffnen Sie ihn optional sofort.","folderSelection.servers.dialog.name":"Servername","folderSelection.servers.dialog.namePlaceholder":"Produktionsserver","folderSelection.servers.dialog.url":"Server-URL","folderSelection.servers.dialog.urlPlaceholder":"https://server.beispiel.de","folderSelection.servers.dialog.skipTls":"TLS-Verifizierung für selbstsignierte Zertifikate überspringen.","folderSelection.servers.dialog.cancel":"Abbrechen","folderSelection.servers.dialog.save":"Speichern","folderSelection.servers.dialog.connect":"Verbinden","folderSelection.servers.dialog.connecting":"Verbindung wird hergestellt...","folderSelection.servers.dialog.errorRequired":"Servername und URL sind erforderlich.","folderSelection.servers.dialog.errorConnect":"Verbindung zum Remote-Server konnte nicht hergestellt werden.","folderSelection.servers.certificateInstall.title":"Lokales Zertifikat installieren","folderSelection.servers.certificateInstall.confirmMessage":"CodeNomad muss ein lokales Zertifikat installieren, um selbstsignierte HTTPS-Remote-Fenster zu öffnen. Dieses Zertifikat wird nur für den lokalen Desktop-Proxy-Verkehr auf Ihrem Rechner verwendet. Ihr Betriebssystem zeigt danach möglicherweise eine zweite Zertifikatsabfrage an.","folderSelection.servers.certificateInstall.confirmLabel":"Weiter","folderSelection.servers.certificateInstall.cancelLabel":"Abbrechen","folderSelection.servers.certificateInstall.cancelled":"CodeNomad benötigt das Vertrauen in das lokale Zertifikat, bevor es selbstsignierte HTTPS-Remote-Fenster öffnen kann.","folderSelection.sidecars.button":"SideCar öffnen","projectRenameDialog.title":"Arbeitsbereich umbenennen","projectRenameDialog.description.withLabel":'Arbeitsbereichsnamen für "{label}" aktualisieren.',"projectRenameDialog.description.default":"Legen Sie einen Arbeitsbereichsnamen für diesen Ordner fest.","projectRenameDialog.input.label":"Arbeitsbereichsname","projectRenameDialog.input.placeholder":"Arbeitsbereichsnamen eingeben","projectRenameDialog.actions.cancel":"Abbrechen","projectRenameDialog.actions.rename":"Umbenennen","projectRenameDialog.actions.renaming":"Umbenennung läuft..."},a={"instanceTabs.new.title":"Neue Instanz (Cmd/Ctrl+N)","instanceTabs.new.ariaLabel":"Neue Instanz","instanceTabs.remote.title":"Remote-Verbindung","instanceTabs.remote.ariaLabel":"Remote-Verbindung","instanceInfo.title":"Instanz-Informationen","instanceInfo.labels.folder":"Ordner","instanceInfo.labels.project":"Projekt","instanceInfo.labels.versionControl":"Versionskontrolle","instanceInfo.labels.opencodeVersion":"OpenCode-Version","instanceInfo.labels.binaryPath":"Binärpfad","instanceInfo.labels.environmentVariables":"Umgebungsvariablen ({count})","instanceInfo.loading":"Wird geladen...","instanceInfo.server.title":"Server","instanceInfo.server.port":"Port:","instanceInfo.server.pid":"PID:","instanceInfo.server.status":"Status:","instanceTab.status.permission":"Wartet auf Berechtigung","instanceTab.status.compacting":"Wird komprimiert","instanceTab.status.working":"Arbeitet","instanceTab.status.idle":"Bereit","instanceTab.status.ariaLabel":"Instanz-Status: {status}","instanceTab.actions.close.ariaLabel":"Instanz schließen","instanceShell.leftPanel.sessionsTitle":"Sitzungen","instanceShell.leftPanel.instanceInfo":"Instanz-Info","instanceShell.leftDrawer.pin":"Linkes Panel anheften","instanceShell.leftDrawer.unpin":"Linkes Panel lösen","instanceShell.leftDrawer.toggle.pinned":"Linkes Panel angeheftet","instanceShell.leftDrawer.toggle.open":"Linkes Panel öffnen","instanceShell.leftDrawer.toggle.close":"Linkes Panel schließen","instanceShell.rightDrawer.pin":"Rechtes Panel anheften","instanceShell.rightDrawer.unpin":"Rechtes Panel lösen","instanceShell.rightDrawer.toggle.pinned":"Rechtes Panel angeheftet","instanceShell.rightDrawer.toggle.open":"Rechtes Panel öffnen","instanceShell.rightDrawer.toggle.close":"Rechtes Panel schließen","instanceShell.fullscreen.enter":"Vollbild","instanceShell.fullscreen.exit":"Vollbild beenden","instanceShell.metrics.usedLabel":"Benutzt","instanceShell.metrics.availableLabel":"Verfügbar","instanceShell.commandPalette.openAriaLabel":"Befehlspalette öffnen","instanceShell.commandPalette.button":"Befehlspalette","instanceShell.chatSearch.openAriaLabel":"Chat-Verlauf durchsuchen","instanceShell.connection.ariaLabel":"Verbindung {status}","instanceShell.connection.connected":"Verbunden","instanceShell.connection.connecting":"Wird verbunden...","instanceShell.connection.disconnected":"Getrennt","instanceShell.connection.unknown":"Unbekannt","instanceWelcome.shortcuts.newSession":"Neue Sitzung","instanceWelcome.empty.title":"Keine vorherigen Sitzungen","instanceWelcome.empty.description":"Erstellen Sie unten eine neue Sitzung, um zu beginnen","instanceWelcome.loading.title":"Arbeitsbereich wird gestartet","instanceWelcome.loading.description":"OpenCode wird für diesen Arbeitsbereich gestartet...","instanceWelcome.resume.title":"Sitzung fortsetzen","instanceWelcome.resume.subtitle.one":"{count} Sitzung verfügbar","instanceWelcome.resume.subtitle.other":"{count} Sitzungen verfügbar","instanceWelcome.session.untitled":"Unbenannte Sitzung","instanceWelcome.new.title":"Neue Sitzung starten","instanceWelcome.new.subtitle":"Wir verwenden automatisch Ihren letzten Agenten/Modell","instanceWelcome.new.createButton":"Sitzung erstellen","instanceWelcome.overlay.close":"Schließen","instanceWelcome.actions.viewInstanceInfo":"Instanz-Info anzeigen","instanceWelcome.actions.renameTitle":"Sitzung umbenennen","instanceWelcome.actions.deleteTitle":"Sitzung löschen","instanceWelcome.hints.navigate":"Navigieren","instanceWelcome.hints.jump":"Springen","instanceWelcome.hints.firstLast":"Erster/Letzter","instanceWelcome.hints.resume":"Fortsetzen","instanceWelcome.hints.delete":"Löschen","instanceWelcome.toasts.renameError":"Sitzung konnte nicht umbenannt werden","instanceDisconnected.title":"Instanz getrennt","instanceDisconnected.folderFallback":"dieser Arbeitsbereich","instanceDisconnected.reasonFallback":"Der Server antwortet nicht mehr","instanceDisconnected.description":"{folder} kann nicht mehr erreicht werden. Schließen Sie den Tab, um fortzufahren.","instanceDisconnected.details.title":"Details","instanceDisconnected.details.folderLabel":"Ordner:","instanceDisconnected.actions.closeInstance":"Instanz schließen","instanceShell.empty.title":"Keine Sitzung ausgewählt","instanceShell.empty.description":"Senden Sie eine Nachricht, um eine neue Sitzung zu erstellen, oder wählen Sie eine bestehende Sitzung aus.","instanceShell.rightPanel.title":"Status-Panel","instanceShell.rightPanel.tabs.gitChanges":"Git-Änderungen","instanceShell.rightPanel.tabs.files":"Dateien","instanceShell.rightPanel.tabs.status":"Status","instanceShell.rightPanel.tabs.ariaLabel":"Tabs im rechten Panel","instanceShell.rightPanel.actions.refresh":"Aktualisieren","instanceShell.rightPanel.actions.save":"Speichern (Ctrl+S)","instanceShell.rightPanel.actions.saveConfirm.message":'Möchten Sie die Änderungen an "{path}" speichern, bevor Sie wechseln?',"instanceShell.rightPanel.actions.saveConfirm.confirmLabel":"Speichern","instanceShell.rightPanel.actions.saveConfirm.cancelLabel":"Änderungen verwerfen","instanceShell.rightPanel.actions.conflict.message":"Die Datei wurde vom Agenten geändert. Die Änderungen des Agenten überschreiben?","instanceShell.rightPanel.actions.conflict.confirmLabel":"Überschreiben","instanceShell.rightPanel.actions.conflict.cancelLabel":"Abbrechen","instanceShell.rightPanel.actions.refreshDirty.message":"Die Datei hat ungespeicherte Änderungen. Das Aktualisieren verwirft Ihre Bearbeitungen. Fortfahren?","instanceShell.rightPanel.actions.refreshDirty.confirmLabel":"Aktualisieren","instanceShell.rightPanel.actions.refreshDirty.cancelLabel":"Abbrechen","instanceShell.rightPanel.toast.saveSuccess":"Datei erfolgreich gespeichert","instanceShell.rightPanel.toast.saveError":"Datei konnte nicht gespeichert werden","instanceShell.rightPanel.sections.yoloMode":"Yolo-Modus","instanceShell.rightPanel.sections.yoloMode.tooltip":"Genehmigt Berechtigungsanfragen für die aktuelle Sitzung automatisch. Nur verwenden, wenn Sie den ausgeführten Tools vertrauen.","instanceShell.rightPanel.sections.plan":"Plan","instanceShell.rightPanel.sections.plan.tooltip":"Die Roadmap des Agenten für diese Sitzung. Verfolgt Aufgaben, Unteraufgaben und deren Abschlussstatus.","instanceShell.rightPanel.sections.backgroundProcesses":"Hintergrund-Shells","instanceShell.rightPanel.sections.backgroundProcesses.tooltip":"Vom Agenten gestartete Langzeitprozesse. Sie können deren Ausgabe überwachen, sie stoppen oder beenden.","instanceShell.rightPanel.sections.mcp":"MCP-Server","instanceShell.rightPanel.sections.mcp.tooltip":"Model Context Protocol Server, die die Fähigkeiten des Agenten um externe Tools und Dienste erweitern.","instanceShell.rightPanel.sections.lsp":"LSP-Server","instanceShell.rightPanel.sections.lsp.tooltip":"Language Server Protocol Server, die Code-Intelligenz, Diagnose und sprachenspezifische Funktionen bereitstellen.","instanceShell.rightPanel.sections.plugins":"Plugins","instanceShell.rightPanel.sections.plugins.tooltip":"Plugins, die die Benutzeroberfläche und das Serververhalten anpassen.","instanceShell.gitChanges.noSessionSelected":"Wählen Sie eine Sitzung aus, um Git-Änderungen zu sehen.","instanceShell.gitChanges.loading":"Git-Änderungen werden geladen...","instanceShell.gitChanges.empty":"Noch keine Git-Änderungen.","instanceShell.gitChanges.deleted":"Gelöscht","instanceShell.gitChanges.binaryViewer":"Binärdatei kann nicht angezeigt werden","instanceShell.gitChanges.sections.staged":"Gestagte Änderungen","instanceShell.gitChanges.sections.unstaged":"Änderungen","instanceShell.gitChanges.actions.insertContext":"Zum Prompt hinzufügen","instanceShell.gitChanges.actions.stage":"Datei stagen","instanceShell.gitChanges.actions.unstage":"Datei unstagen","instanceShell.gitChanges.commit.placeholder":"Commit-Nachricht eingeben","instanceShell.gitChanges.commit.submit":"Commit erstellen","instanceShell.gitChanges.commit.submitting":"Commit wird erstellt...","instanceShell.gitChanges.commit.success":"Commit erfolgreich erstellt","instanceShell.gitChanges.commit.error":"Commit konnte nicht erstellt werden","instanceShell.filesShell.fileListTitle":"Dateiliste","instanceShell.filesShell.mobileSelectorLabel":"Datei auswählen","instanceShell.filesShell.mobileSelectorEmpty":"Wählen Sie eine Datei","instanceShell.filesShell.viewerTitle":"Änderungs-Viewer","instanceShell.filesShell.viewerPlaceholder":"Detaillierte Änderungsdarstellung wird im nächsten Schritt hinzugefügt.","instanceShell.filesShell.viewerEmpty":"Keine Datei ausgewählt.","instanceShell.filesShell.listEmpty":"Keine Dateien in diesem Ordner.","instanceShell.filesShell.hideFiles":"Dateien ausblenden","instanceShell.filesShell.showFiles":"Dateien anzeigen","instanceShell.filesShell.search.placeholder":"Dateien in diesem Ordner filtern","instanceShell.filesShell.search.ariaLabel":"Dateien in diesem Ordner filtern","instanceShell.filesShell.search.empty":"Keine passenden Dateien.","instanceShell.filesShell.actions.copyPath":"Pfad kopieren","instanceShell.filesShell.toast.copyPathSuccess":"Pfad kopiert","instanceShell.filesShell.toast.copyPathError":"Pfad konnte nicht kopiert werden","instanceShell.filesShell.previewMarkdown":"Markdown-Vorschau","instanceShell.filesShell.showSource":"Quellcode anzeigen","instanceShell.filesShell.enableWordWrap":"Zeilenumbruch aktivieren","instanceShell.filesShell.disableWordWrap":"Zeilenumbruch deaktivieren","instanceShell.diff.hideUnchanged":"Unveränderte Bereiche ausblenden","instanceShell.diff.showFull":"Vollständige Datei anzeigen","instanceShell.diff.switchToSplit":"Zur geteilten Ansicht wechseln","instanceShell.diff.switchToUnified":"Zur einheitlichen Ansicht wechseln","instanceShell.diff.enableWordWrap":"Zeilenumbruch aktivieren","instanceShell.diff.disableWordWrap":"Zeilenumbruch deaktivieren","instanceShell.worktree.create":"+ Worktree erstellen","instanceShell.worktree.delete.error.title":"Löschen fehlgeschlagen","instanceShell.worktree.delete.error.fallback":"Worktree konnte nicht gelöscht werden","instanceShell.worktree.delete.error.causeLabel":"Wahrscheinliche Ursache:","instanceShell.worktree.delete.error.nextStepLabel":"Vorgeschlagener nächster Schritt:","instanceShell.worktree.delete.error.summary.localChanges":"Git hat das Löschen dieses Worktrees verweigert, da er geänderte oder nicht verfolgte Dateien enthält.","instanceShell.worktree.delete.error.summary.inUse":"CodeNomad konnte diesen Worktree nicht löschen, da noch etwas auf Dateien im Verzeichnis zugreift.","instanceShell.worktree.delete.error.summary.notFound":"CodeNomad konnte diesen Worktree nicht löschen, da das Verzeichnis oder der Worktree-Eintrag nicht gefunden wurde.","instanceShell.worktree.delete.error.summary.permissionDenied":"CodeNomad konnte diesen Worktree nicht löschen, da der Zugriff auf das Verzeichnis verweigert wurde.","instanceShell.worktree.delete.error.summary.unknown":"CodeNomad konnte diesen Worktree nicht löschen.","instanceShell.worktree.delete.error.cause.localChanges":"Lokale Änderungen","instanceShell.worktree.delete.error.cause.inUse":"Ein anderer Prozess verwendet diesen Worktree","instanceShell.worktree.delete.error.cause.notFound":"Das Worktree-Verzeichnis oder der Eintrag fehlt","instanceShell.worktree.delete.error.cause.permissionDenied":"Unzureichende Dateisystemberechtigungen","instanceShell.worktree.delete.error.cause.unknown":"Das Backend hat einen nicht klassifizierten Löschfehler zurückgegeben","instanceShell.worktree.delete.error.nextStep.localChanges":"Aktivieren Sie 'Löschen erzwingen', wenn Sie lokale Änderungen verwerfen möchten, oder bereinigen Sie den Worktree und versuchen Sie es erneut.","instanceShell.worktree.delete.error.nextStep.inUse":"Schließen Sie Terminals, Editoren, Watcher oder Hintergrundprozesse, die diesen Worktree verwenden, und versuchen Sie es erneut.","instanceShell.worktree.delete.error.nextStep.notFound":"Aktualisieren Sie die Worktrees und versuchen Sie es erneut.","instanceShell.worktree.delete.error.nextStep.permissionDenied":"Überprüfen Sie die Dateisystemberechtigungen und schließen Sie Anwendungen, die dieses Verzeichnis sperren könnten.","instanceShell.worktree.delete.error.nextStep.unknown":"Überprüfen Sie den untenstehenden Fehler für Details.","instanceShell.worktree.delete.error.copyRaw":"Fehler kopieren","instanceShell.worktree.delete.error.copySanitized":"Bereinigten Fehler kopieren","instanceShell.worktree.delete.error.copySuccess":"Löschfehler kopiert","instanceShell.worktree.delete.error.copySanitizedSuccess":"Bereinigten Löschfehler kopiert","instanceShell.worktree.delete.error.copyFailure":"Löschfehler konnte nicht kopiert werden","instanceShell.plan.noSessionSelected":"Wählen Sie eine Sitzung aus, um den Plan zu sehen.","instanceShell.plan.empty":"Noch nichts geplant.","instanceShell.yoloMode.noSessionSelected":"Wählen Sie eine Sitzung aus, um den Yolo-Modus zu konfigurieren.","instanceShell.yoloMode.title":"Yolo-Modus","instanceShell.yoloMode.description":"Berechtigungsanfragen für diese Sitzung automatisch genehmigen. Standardmäßig deaktiviert.","instanceShell.yoloMode.badge":"Yolo-Modus","instanceShell.yoloMode.badgeAriaLabel":"Yolo-Modus aktiviert","instanceShell.backgroundProcesses.empty":"Keine Hintergrundprozesse.","instanceShell.backgroundProcesses.status":"Status: {status}","instanceShell.backgroundProcesses.output":"Ausgabe: {sizeKb}KB","instanceShell.backgroundProcesses.notify.enabled":"Abschlussbenachrichtigung aktiviert","instanceShell.backgroundProcesses.notify.disabled":"Abschlussbenachrichtigung deaktiviert","instanceShell.backgroundProcesses.actions.output":"Ausgabe","instanceShell.backgroundProcesses.actions.stop":"Stoppen","instanceShell.backgroundProcesses.actions.terminate":"Beenden","versionPill.appWithVersion":"App {version}","versionPill.ui":"UI","versionPill.uiWithVersion":"UI {version}","versionPill.source":" ({source})","opencodeBinarySelector.title":"OpenCode-Binärdatei","opencodeBinarySelector.subtitle":"Wählen Sie aus, welche OpenCode-Binärdatei ausgeführt werden soll","opencodeBinarySelector.customPath.placeholder":"Pfad zur OpenCode-Binärdatei eingeben...","opencodeBinarySelector.actions.add":"Hinzufügen","opencodeBinarySelector.actions.browse":"Nach Binärdatei suchen...","opencodeBinarySelector.actions.removeTitle":"Binärdatei entfernen","opencodeBinarySelector.badge.systemPath":"Binärdatei aus dem System-PATH verwenden","opencodeBinarySelector.status.checkingVersions":"Versionen werden geprüft...","opencodeBinarySelector.status.checking":"Wird geprüft...","opencodeBinarySelector.dialog.title":"OpenCode-Binärdatei auswählen","opencodeBinarySelector.dialog.description":"Vom CLI-Server bereitgestellte Dateien durchsuchen.","opencodeBinarySelector.validation.invalidBinary":"Ungültige OpenCode-Binärdatei","opencodeBinarySelector.validation.alreadyValidating":"Wird bereits validiert","opencodeBinarySelector.display.systemPath":"{name} (System-PATH)","opencodeBinarySelector.versionLabel":"v{version}"},l={"loadingScreen.logoAlt":"CodeNomad Logo","loadingScreen.status.issue":"Ein Problem ist aufgetreten","loadingScreen.actions.showAnother":"Noch eine anzeigen","loadingScreen.errors.missingRoot":"Lade-Root-Element nicht gefunden","loadingScreen.phrases.neurons":"KI-Neuronen werden aufgewärmt...","loadingScreen.phrases.daydreaming":"Die KI wird vom Tagträumen abgehalten...","loadingScreen.phrases.goggles":"Die Code-Brille der KI wird poliert...","loadingScreen.phrases.reorganizingFiles":"KI wird gebeten, die Dateien nicht mehr umzuorganisieren...","loadingScreen.phrases.coffee":"Die KI bekommt mehr Kaffee...","loadingScreen.phrases.nodeModules":"Der KI wird beigebracht, node_modules nicht (schon wieder) zu löschen...","loadingScreen.phrases.actNatural":"Der KI wird gesagt, sie soll sich natürlich verhalten, bevor du ankommst...","loadingScreen.phrases.rewritingHistory":"Die KI wird gebeten, die Geschichte nicht umzuschreiben...","loadingScreen.phrases.stretch":"Die KI darf sich vor ihrem Coding-Sprint noch einmal dehnen...","loadingScreen.phrases.keyboardControl":"Die KI wird überzeugt, dir die Tastaturkontrolle zu geben..."},c={"logsView.title":"Server-Protokolle","logsView.actions.show":"Server-Protokolle anzeigen","logsView.actions.hide":"Server-Protokolle ausblenden","logsView.actions.clear":"Protokolle löschen","logsView.actions.back":"Zurück zur Unterhaltung","logsView.envVars.title":"Umgebungsvariablen ({count})","logsView.paused.title":"Server-Protokolle sind pausiert","logsView.paused.description":"Aktivieren Sie das Streaming, um Ihre OpenCode-Serveraktivitäten zu beobachten.","logsView.empty.waiting":"Warten auf Serverausgabe...","logsView.scrollToTop":"Nach oben scrollen","logsView.scrollToBottom":"Nach unten scrollen","infoView.logs.title":"Server-Protokolle","infoView.logs.actions.show":"Server-Protokolle anzeigen","infoView.logs.actions.hide":"Server-Protokolle ausblenden","infoView.logs.actions.clear":"Protokolle löschen","infoView.logs.actions.back":"Zurück zur Unterhaltung","infoView.logs.paused.title":"Server-Protokolle sind pausiert","infoView.logs.paused.description":"Aktivieren Sie das Streaming, um Ihre OpenCode-Serveraktivitäten zu beobachten.","infoView.logs.empty.waiting":"Warten auf Serverausgabe...","infoView.logs.scrollToTop":"Nach oben scrollen","infoView.logs.scrollToBottom":"Nach unten scrollen","infoView.dispose.actions.dispose":"Instanz verwerfen","infoView.dispose.actions.disposing":"Wird verworfen...","infoView.dispose.confirm.title":"Instanz verwerfen?","infoView.dispose.confirm.message":"Dies löscht den zwischengespeicherten pro-Projekt-Status für dieses Verzeichnis und lädt die Instanz neu.","infoView.dispose.confirm.confirmLabel":"Verwerfen","infoView.dispose.confirm.cancelLabel":"Abbrechen","infoView.dispose.toast.success":"Instanz verworfen. Wird neu geladen...","infoView.dispose.toast.error":"Instanz konnte nicht verworfen werden."},d={"markdown.codeBlock.copy.label":"Kopieren","markdown.codeBlock.copy.copied":"Kopiert!","markdown.codeBlock.copy.failed":"Fehlgeschlagen","markdown.copy":"Kopieren"},g={"messageListHeader.sidebar.openSessionListAriaLabel":"Sitzungsliste öffnen","messageListHeader.metrics.usedLabel":"Benutzt","messageListHeader.metrics.availableLabel":"Verfügbar","messageListHeader.commandPalette.ariaLabel":"Befehlspalette öffnen","messageListHeader.commandPalette.button":"Befehlspalette","messageListHeader.connection.connected":"Verbunden","messageListHeader.connection.connecting":"Wird verbunden...","messageListHeader.connection.disconnected":"Getrennt","messageSection.empty.logoAlt":"CodeNomad Logo","messageSection.empty.brandTitle":"CodeNomad","messageSection.empty.title":"Eine Unterhaltung beginnen","messageSection.empty.description":"Geben Sie unten eine Nachricht ein oder öffnen Sie die Befehlspalette:","messageSection.empty.tips.commandPalette":"Befehlspalette","messageSection.empty.tips.askAboutCodebase":"Fragen Sie nach Ihrem Code","messageSection.empty.tips.attachFilesPrefix":"Dateien anhängen mit","messageSection.loading.messages":"Nachrichten werden geladen...","messageSection.loadError.title":"Nachrichten konnten nicht geladen werden","messageSection.loadError.reload":"Nachrichten neu laden","messageSection.scroll.toFirstAriaLabel":"Zur ersten Nachricht scrollen","messageSection.scroll.toLatestAriaLabel":"Zur neuesten Nachricht scrollen","messageSection.scroll.enableHoldAriaLabel":"Halten für lange Assistentenantworten aktivieren","messageSection.scroll.disableHoldAriaLabel":"Halten für lange Assistentenantworten deaktivieren","messageSection.quote.addAsQuote":"Als Zitat hinzufügen","messageSection.quote.addAsCode":"Als Code hinzufügen","messageSection.quote.copy":"Kopieren","messageSection.quote.copied":"Kopiert!","messageSection.quote.copyFailed":"Kopieren fehlgeschlagen","messageSection.search.ariaLabel":"Chat-Verlauf durchsuchen","messageSection.search.placeholder":"Aktuellen Chat durchsuchen...","messageSection.search.count.empty":"Suche","messageSection.search.count.minChars":"{count}+ Zeichen","messageSection.search.count.searching":"Suche...","messageSection.search.count.none":"Keine Treffer","messageSection.search.count.matches":"{current} / {total}","messageSection.search.previousAriaLabel":"Vorheriger Treffer","messageSection.search.nextAriaLabel":"Nächster Treffer","messageSection.search.closeAriaLabel":"Suche schließen","messageSection.search.searching":"Suche...","messageSection.search.noVisibleMatches":"Keine sichtbaren Treffer","messageTimeline.ariaLabel":"Nachrichten-Timeline","messageTimeline.segment.user.label":"Du","messageTimeline.segment.assistant.label":"KI","messageTimeline.segment.compaction.label":"Komprimierung","messageTimeline.tool.fallbackLabel":"Tool-Aufruf","messageTimeline.tooltip.userFallback":"Benutzernachricht","messageTimeline.tooltip.assistantFallback":"Assistentenantwort","messageTimeline.tooltip.compaction.auto":"Auto-Komprimierung","messageTimeline.tooltip.compaction.manual":"Manuelle Komprimierung","messageTimeline.text.filePrefix":"[Datei] {filename}","messageTimeline.text.attachment":"Anhang","messageBlock.tool.header":"Tool-Aufruf","messageBlock.tool.unknown":"unbekannt","messageBlock.tool.goToSession.label":"Zur Sitzung","messageBlock.tool.goToSession.title":"Zur Sitzung gehen","messageBlock.tool.goToSession.unavailableTitle":"Sitzung noch nicht verfügbar","messageBlock.tool.deletePart.label":"Teil löschen","messageBlock.tool.deletePart.deleting":"Wird gelöscht...","messageBlock.tool.deletePart.title":"Diesen Tool-Aufruf-Output löschen","messageBlock.tool.deletePart.failed.title":"Löschen fehlgeschlagen","messageBlock.tool.deletePart.failed.message":"Tool-Aufruf-Output konnte nicht gelöscht werden","messageBlock.compaction.ariaLabel":"Sitzungskomprimierung","messageBlock.compaction.autoLabel":"Sitzung automatisch komprimiert","messageBlock.compaction.manualLabel":"Sitzung von Ihnen komprimiert","messageBlock.usage.input":"Eingabe","messageBlock.usage.output":"Ausgabe","messageBlock.usage.reasoning":"Denken","messageBlock.usage.cacheRead":"Cache-Lesen","messageBlock.usage.cacheWrite":"Cache-Schreiben","messageBlock.usage.cost":"Kosten","messageBlock.step.agentLabel":"Agent: {agent}","messageBlock.step.modelLabel":"Modell: {model}","messageBlock.reasoning.thinkingLabel":"Denken","messageBlock.reasoning.expandAriaLabel":"Denken ausklappen","messageBlock.reasoning.collapseAriaLabel":"Denken einklappen","messageBlock.reasoning.indicator.hide":"Verbergen","messageBlock.reasoning.indicator.view":"Ansehen","messageBlock.reasoning.detailsAriaLabel":"Denk-Details","messageBlock.reasoning.thoughtsFallback":"Gedanken","messageBlock.reasoning.thoughtFor.seconds.one":"{count} Sekunde nachgedacht","messageBlock.reasoning.thoughtFor.seconds.other":"{count} Sekunden nachgedacht","messageBlock.reasoning.thoughtFor.minutes.one":"{count} Minute nachgedacht","messageBlock.reasoning.thoughtFor.minutes.other":"{count} Minuten nachgedacht","messageBlock.reasoning.thoughtFor.hours.one":"{count} Stunde nachgedacht","messageBlock.reasoning.thoughtFor.hours.other":"{count} Stunden nachgedacht","messageBlock.reasoning.copyTitle":"Gedanken kopieren","messageBlock.reasoning.copyAriaLabel":"Gedanken kopieren","codeBlockInline.actions.copy":"Kopieren","codeBlockInline.actions.copied":"Kopiert!","messageItem.speaker.you":"Du","messageItem.speaker.assistant":"Assistent","messageItem.actions.revert":"Rückgängig","messageItem.actions.revertTitle":"Änderungen bis hierhin rückgängig machen (löscht Nachrichten)","messageItem.actions.fork":"Abzweigen","messageItem.actions.forkTitle":"Von dieser Nachricht abzweigen (Fork)","messageItem.actions.copy":"Kopieren","messageItem.actions.copyTitle":"Nachricht kopieren","messageItem.actions.copied":"Kopiert!","messageItem.actions.more":"Weitere Aktionen","messageItem.actions.speak":"Nachricht vorlesen","messageItem.actions.generatingSpeech":"Sprache wird erzeugt","messageItem.actions.stopSpeech":"Wiedergabe stoppen","messageItem.actions.speak.error.title":"Sprachwiedergabe fehlgeschlagen","messageItem.actions.speak.error.unsupported":"Sprachwiedergabe wird in diesem Browser nicht unterstützt.","messageItem.actions.speak.error.unavailable":"Sprachwiedergabe ist nicht verfügbar, bis die Spracheinstellungen konfiguriert sind.","messageItem.actions.speak.error.generate":"Sprache für diese Nachricht konnte nicht erzeugt werden.","messageItem.actions.deleteMessage":"Nachricht löschen (macht Änderungen nicht rückgängig)","messageItem.actions.deleteMessagesUpTo":"Nachrichten bis hierhin löschen (macht Änderungen nicht rückgängig)","messageItem.actions.deletingMessage":"Wird gelöscht...","messageItem.actions.deleteMessageFailedTitle":"Löschen fehlgeschlagen","messageItem.actions.deleteMessageFailedMessage":"Nachricht konnte nicht gelöscht werden","messageItem.selection.checkboxAriaLabel":"Nachricht zum Löschen auswählen","messageItem.selection.selectForDeletion":"Nachricht zum Löschen auswählen","messageItem.selection.deselectForDeletion":"Nachricht zum Löschen abwählen","messageItem.duration.workedFor.seconds.one":"Hat {count} Sekunde gearbeitet","messageItem.duration.workedFor.seconds.other":"Hat {count} Sekunden gearbeitet","messageItem.duration.workedFor.minutes.one":"Hat {count} Minute gearbeitet","messageItem.duration.workedFor.minutes.other":"Hat {count} Minuten gearbeitet","messageItem.duration.workedFor.hours.one":"Hat {count} Stunde gearbeitet","messageItem.duration.workedFor.hours.other":"Hat {count} Stunden gearbeitet","messageSection.bulkDelete.toolbarAriaLabel":"Ausgewählte Elemente ({count})","messageSection.bulkDelete.deleteSelectedTitle":"Ausgewählte Elemente löschen","messageSection.bulkDelete.selectAllTitle":"Alle Nachrichten auswählen","messageSection.bulkDelete.moreOptionsTitle":"Weitere Optionen","messageSection.bulkDelete.selectionModeLabel":"Auswahl","messageSection.bulkDelete.selectionModeAll":"Alle","messageSection.bulkDelete.selectionModeTools":"Nur Tools","messageSection.bulkDelete.selectionHint.toggle":"Element auswählen","messageSection.bulkDelete.selectionHint.range":"Bereich auswählen","messageSection.bulkDelete.selectionHint.clear":"Auswahl aufheben","messageSection.bulkDelete.cancelTitle":"Auswahl abbrechen","messageSection.bulkDelete.failedTitle":"Löschen fehlgeschlagen","messageSection.bulkDelete.failedMessage":"Ausgewählte Elemente konnten nicht gelöscht werden","messageItem.status.queued":"WARTESCHLANGE","messageItem.status.generating":"Wird generiert...","messageItem.status.sending":"Wird gesendet...","messageItem.status.failedToSend":"Nachricht konnte nicht gesendet werden","messagePart.actions.delete":"Teil löschen","messagePart.actions.deleting":"Wird gelöscht...","messagePart.actions.deleteTitle":"Dieses Element löschen","messagePart.actions.deleteFailedTitle":"Löschen fehlgeschlagen","messagePart.actions.deleteFailedMessage":"Element konnte nicht gelöscht werden","messagePart.pastedText.summary":"Eingefügter Text","messagePart.pastedText.lines.one":"{count} Zeile","messagePart.pastedText.lines.other":"{count} Zeilen","messagePart.pastedText.copyAriaLabel":"Eingefügten Textblock kopieren","messageItem.attachment.defaultName":"Anhang","messageItem.attachment.downloadAriaLabel":"{name} herunterladen","messageItem.agentMeta.agentLabel":"Agent: {agent}","messageItem.agentMeta.modelLabel":"Modell: {model}","messageItem.errors.authenticationFallback":"Authentifizierungsfehler","messageItem.errors.outputLengthExceeded":"Nachrichtenausgabelänge überschritten","messageItem.errors.requestAborted":"Anfrage wurde abgebrochen","messageItem.errors.unknownFallback":"Unbekannter Fehler aufgetreten","attachmentChip.removeAriaLabel":"Anhang entfernen","expandButton.toggleAriaLabel":"Höhe der Chat-Eingabe umschalten","promptInput.placeholder.shell":"Einen Shell-Befehl ausführen (Esc zum Verlassen)...","promptInput.placeholder.default":"Nachricht eingeben, @datei, @agent, oder Bilder und Text einfügen...","promptInput.hints.shell.exit":"um den Shell-Modus zu verlassen","promptInput.hints.shell.enable":"Shell-Modus","promptInput.hints.commands":"Befehle","promptInput.history.previousAriaLabel":"Vorheriger Prompt","promptInput.history.nextAriaLabel":"Nächster Prompt","promptInput.overlay.newLine":"Neue Zeile","promptInput.overlay.send":"Senden","promptInput.overlay.filesAgents":"Dateien/Agenten","promptInput.overlay.history":"Verlauf","promptInput.overlay.attachments":"• {count} Datei(en) angehängt","promptInput.overlay.shellModeActive":"Shell-Modus aktiv","promptInput.overlay.press":"Drücke","promptInput.overlay.againToAbort":"erneut zum Abbrechen der Sitzung","promptInput.stopSession.ariaLabel":"Sitzung stoppen","promptInput.stopSession.title":"Sitzung stoppen","promptInput.attachFiles.ariaLabel":"Dateien anhängen","promptInput.attachFiles.title":"Dateien anhängen","promptInput.attachFiles.dialogTitle":"Dateien anhängen","promptInput.attachFiles.errorTitle":"Anhängen fehlgeschlagen","promptInput.attachFiles.skipped.title":"Einige Dateien wurden nicht angehängt","promptInput.attachFiles.skipped.one":"1 ausgewählte Datei konnte nicht angehängt werden, da diese Umgebung keinen Dateipfad oder unterstützte Vorschaudaten bereitstellt.","promptInput.attachFiles.skipped.other":"{count} ausgewählte Dateien konnten nicht angehängt werden, da diese Umgebung keine Dateipfade oder unterstützte Vorschaudaten bereitstellt.","promptInput.attachFiles.tooLarge.one":"1 ausgewählte Datei konnte nicht angehängt werden, da sie größer als das 5-MB-Limit für Anhänge ist.","promptInput.clear.ariaLabel":"Prompt-Text löschen","promptInput.clear.title":"Prompt-Text löschen","promptInput.send.ariaLabel":"Nachricht senden","promptInput.send.errorFallback":"Nachricht konnte nicht gesendet werden","promptInput.send.errorTitle":"Senden fehlgeschlagen","promptInput.conversationMode.enable.title":"Konversationsmodus aktivieren","promptInput.conversationMode.disable.title":"Konversationsmodus deaktivieren","promptInput.conversationMode.error.title":"Konversationswiedergabe fehlgeschlagen","promptInput.conversationMode.error.message":"Assistentenantworten konnten nicht weiter vorgelesen werden.","promptInput.voiceInput.start.title":"Spracheingabe starten","promptInput.voiceInput.stop.title":"Aufnahme stoppen und transkribieren","promptInput.voiceInput.transcribing.title":"Audio wird transkribiert","promptInput.voiceInput.error.title":"Spracheingabe fehlgeschlagen","promptInput.voiceInput.error.permission":"Mikrofonzugriff ist für die Spracheingabe erforderlich.","promptInput.voiceInput.error.permissionDenied":"Mikrofonzugriff wurde von macOS verweigert.","promptInput.voiceInput.error.unsupported":"Spracheingabe wird in diesem Browser nicht unterstützt.","promptInput.voiceInput.error.transcribe":"Das aufgenommene Audio konnte nicht transkribiert werden.","promptInput.resizeHandle.title":"Ziehen, um die Eingabehöhe zu ändern"},u={"remoteAccess.eyebrow":"Remote-Übergabe","remoteAccess.title":"Remote mit CodeNomad verbinden","remoteAccess.subtitle":"Verwenden Sie die folgenden Adressen, um CodeNomad von einem anderen Gerät aus zu öffnen.","remoteAccess.close":"Remote-Zugriff schließen","remoteAccess.refresh":"Aktualisieren","remoteAccess.sections.listeningMode.label":"Abhörmodus (Listening mode)","remoteAccess.sections.listeningMode.help":"Remote-Übergaben erlauben oder einschränken, indem an alle Schnittstellen oder nur an localhost gebunden wird.","remoteAccess.toggle.on":"An","remoteAccess.toggle.off":"Aus","remoteAccess.toggle.title":"Verbindungen von anderen IPs zulassen","remoteAccess.toggle.caption.all":"Bindung an 0.0.0.0","remoteAccess.toggle.caption.local":"Bindung an 127.0.0.1","remoteAccess.toggle.note":"Das Ändern dieser Einstellung erfordert einen Neustart und stoppt vorübergehend alle aktiven Instanzen. Teilen Sie die unten stehenden Adressen nach dem Neustart des Servers.","remoteAccess.listeningMode.restartConfirm.message":"Neustart zum Übernehmen des Abhörmodus? Dies stoppt alle laufenden Instanzen.","remoteAccess.listeningMode.restartConfirm.title.all":"Für andere Geräte öffnen","remoteAccess.listeningMode.restartConfirm.title.local":"Auf dieses Gerät beschränken","remoteAccess.listeningMode.restartConfirm.confirmLabel":"Jetzt neu starten","remoteAccess.listeningMode.restartConfirm.cancelLabel":"Abbrechen","remoteAccess.restart.errorManual":"Automatischer Neustart nicht möglich. Bitte starten Sie die App manuell neu.","remoteAccess.sections.serverPassword.label":"Server-Passwort","remoteAccess.sections.serverPassword.help":"Remote-Übergaben erfordern ein Passwort. Legen Sie ein Passwort fest, um Anmeldungen von anderen Geräten zu ermöglichen.","remoteAccess.authStatus.unavailable":"Authentifizierungsstatus nicht verfügbar.","remoteAccess.username":"Benutzername: {username}","remoteAccess.password.status.set":"Ein Passwort für den Remote-Zugriff ist festgelegt.","remoteAccess.password.status.unset":"Noch kein Passwort festgelegt. Legen Sie eines fest, um Remote-Anmeldungen zu ermöglichen.","remoteAccess.password.actions.cancel":"Abbrechen","remoteAccess.password.actions.change":"Passwort ändern","remoteAccess.password.actions.set":"Passwort festlegen","remoteAccess.password.form.newPassword":"Neues Passwort","remoteAccess.password.form.confirmPassword":"Passwort bestätigen","remoteAccess.password.form.placeholder":"Mindestens 8 Zeichen","remoteAccess.password.error.tooShort":"Das Passwort muss mindestens 8 Zeichen lang sein.","remoteAccess.password.error.mismatch":"Die Passwörter stimmen nicht überein.","remoteAccess.password.save.saving":"Wird gespeichert...","remoteAccess.password.save.label":"Passwort speichern","remoteAccess.sections.addresses.label":"Erreichbare Adressen","remoteAccess.sections.addresses.help":"Von einem anderen Gerät aus starten oder scannen, um die Steuerung zu übernehmen.","remoteAccess.addresses.loading":"Adressen werden geladen...","remoteAccess.addresses.none":"Noch keine Adressen verfügbar.","remoteAccess.addresses.actions.showOther":"{count} weitere Adressen anzeigen","remoteAccess.addresses.actions.hideOther":"Andere Adressen ausblenden","remoteAccess.address.scope.network":"Netzwerk","remoteAccess.address.scope.loopback":"Loopback","remoteAccess.address.scope.internal":"Intern","remoteAccess.address.open":"Öffnen","remoteAccess.address.showQr":"QR anzeigen","remoteAccess.address.hideQr":"QR ausblenden","remoteAccess.address.qrAlt":"QR für {url}"},h={"sessionPicker.title":"OpenCode • {folder}","sessionPicker.empty.noPrevious":"Keine vorherigen Sitzungen","sessionPicker.resume.title":"Sitzung fortsetzen ({count}):","sessionPicker.session.untitled":"Unbenannt","sessionPicker.divider.or":"oder","sessionPicker.new.title":"Neue Sitzung starten:","sessionPicker.agents.loading":"Agenten werden geladen...","sessionPicker.actions.creating":"Wird erstellt...","sessionPicker.actions.createSession":"Sitzung erstellen","sessionPicker.actions.cancel":"Abbrechen","sessionList.header.title":"Sitzungen","sessionList.session.untitled":"Unbenannte Sitzung","sessionList.status.working":"Arbeitet","sessionList.status.compacting":"Wird komprimiert","sessionList.status.idle":"Bereit","sessionList.status.retrying":"Wiederholung","sessionList.status.retryingIn":"Wiederholung in {seconds}s","sessionList.status.retryTooltip":"{message} (Versuch {attempt})","sessionList.status.retryToast":"{countdown}: {message} (Versuch {attempt})","sessionList.status.needsPermission":"Berechtigung erforderlich","sessionList.status.needsInput":"Eingabe erforderlich","sessionList.expand.collapseAriaLabel":"Sitzung einklappen","sessionList.expand.expandAriaLabel":"Sitzung ausklappen","sessionList.expand.collapseTitle":"Einklappen","sessionList.expand.expandTitle":"Ausklappen","sessionList.actions.newSession.ariaLabel":"Neue Sitzung","sessionList.actions.newSession.title":"Neue Sitzung","sessionList.actions.copyId.ariaLabel":"Sitzungs-ID kopieren","sessionList.actions.copyId.title":"Sitzungs-ID kopieren","sessionList.actions.reload.ariaLabel":"Sitzung neu laden","sessionList.actions.reload.title":"Sitzung neu laden","sessionList.actions.rename.ariaLabel":"Sitzung umbenennen","sessionList.actions.rename.title":"Sitzung umbenennen","sessionList.actions.delete.ariaLabel":"Sitzung löschen","sessionList.actions.delete.title":"Sitzung löschen","sessionList.copyId.success":"Sitzungs-ID kopiert","sessionList.copyId.error":"Sitzungs-ID konnte nicht kopiert werden","sessionList.reload.error":"Sitzung konnte nicht neu geladen werden","sessionList.delete.error":"Sitzung konnte nicht gelöscht werden","sessionList.delete.title":"Sitzung löschen","sessionList.delete.confirmMessage":'"{label}" löschen? Dies kann nicht rückgängig gemacht werden.',"sessionList.delete.confirmLabel":"Löschen","sessionList.delete.cancelLabel":"Abbrechen","sessionList.rename.error":"Sitzung konnte nicht umbenannt werden","sessionList.filter.placeholder":"Sitzungen suchen...","sessionList.filter.ariaLabel":"Sitzungen suchen","sessionList.loading.more":"Weitere Sitzungen werden geladen...","sessionList.selection.selectAllLabel":"Alle auswählen","sessionList.selection.selectAllAriaLabel":"Alle Sitzungen auswählen","sessionList.selection.clearLabel":"Leeren","sessionList.selection.clearAriaLabel":"Auswahl aufheben","sessionList.selection.checkboxAriaLabel":"Sitzung auswählen","sessionList.bulkDelete.button":"{count} löschen","sessionList.bulkDelete.ariaLabel":"{count} ausgewählte Sitzungen löschen","sessionList.bulkDelete.title":"Sitzungen löschen","sessionList.bulkDelete.confirmMessage":"{count} ausgewählte Sitzungen löschen? Dies kann nicht rückgängig gemacht werden.","sessionList.bulkDelete.confirmLabel":"Löschen","sessionList.bulkDelete.cancelLabel":"Abbrechen","sessionList.bulkDelete.error":"{count} Sitzungen konnten nicht gelöscht werden","sessionRenameDialog.title":"Sitzung umbenennen","sessionRenameDialog.description.withLabel":'Titel für "{label}" aktualisieren.',"sessionRenameDialog.description.default":"Legen Sie einen neuen Titel für diese Sitzung fest.","sessionRenameDialog.input.label":"Sitzungsname","sessionRenameDialog.input.placeholder":"Sitzungsnamen eingeben","sessionRenameDialog.actions.cancel":"Abbrechen","sessionRenameDialog.actions.rename":"Umbenennen","sessionRenameDialog.actions.renaming":"Umbenennung läuft...","sessionView.fallback.sessionNotFound":"Sitzung nicht gefunden","sessionView.alerts.abortFailed.message":"Sitzung konnte nicht gestoppt werden","sessionView.alerts.abortFailed.title":"Stoppen fehlgeschlagen","sessionView.alerts.revertFailed.message":"Wiederherstellen der Nachricht fehlgeschlagen","sessionView.alerts.revertFailed.title":"Wiederherstellung fehlgeschlagen","sessionView.alerts.deleteUpToFailed.message":"Nachrichten konnten nicht gelöscht werden","sessionView.alerts.deleteUpToFailed.title":"Löschen fehlgeschlagen","sessionView.alerts.forkFailed.message":"Sitzung konnte nicht abgezweigt (fork) werden","sessionView.alerts.forkFailed.title":"Fork fehlgeschlagen","sessionView.attachments.expandPastedTextAriaLabel":"Eingefügten Text ausklappen","sessionView.attachments.insertPastedTextTitle":"Eingefügten Text einfügen","sessionView.attachments.removeAriaLabel":"Anhang entfernen","sessionPreview.title":"Web-Vorschau","sessionPreview.backToChat":"Zurück zum Chat","sessionPreview.close":"Vorschau schließen","sessionPreview.chat.button":"Zurück zum Chat","sessionPreview.open.button":"Web-Vorschau öffnen","sessionPreview.open.title":"Web-Vorschau öffnen","sessionPreview.open.prompt":"Geben Sie eine vertrauenswürdige lokale oder Staging-URL für die Vorschau ein.","sessionPreview.open.label":"Vorschau-URL","sessionPreview.open.placeholder":"https://staging.beispiel.de","sessionPreview.open.confirm":"Vorschau öffnen","sessionPreview.open.cancel":"Abbrechen","sessionPreview.comment.mode":"Kommentarmodus","sessionPreview.comment.title":"Vorschau-Kommentar hinzufügen","sessionPreview.comment.prompt":"Beschreiben Sie, was sich für das ausgewählte Element ändern soll.","sessionPreview.comment.label":"Kommentar","sessionPreview.comment.add":"Kommentar hinzufügen","sessionPreview.comment.cancel":"Abbrechen","browserFrame.viewport":"Viewport-Größe","browserFrame.viewport.responsive":"Responsiver Viewport","browserFrame.viewport.desktop":"Desktop-Viewport (1440 x 900)","browserFrame.viewport.tablet":"Tablet-Viewport (768 x 1024)","browserFrame.viewport.tabletLandscape":"Tablet-Querformat (1024 x 768)","browserFrame.viewport.mobile":"Mobile-Viewport (390 x 844)","browserFrame.viewport.mobileLandscape":"Mobile-Querformat (844 x 390)","sessionEvents.sessionCompactedToast":"Sitzung {label} wurde komprimiert","sessionEvents.sessionError.unknown":"Unbekannter Fehler","sessionEvents.sessionError.title":"Sitzungsfehler","sessionEvents.sessionError.message":"Fehler: {message}","sessionState.cleanup.deepConfirm.message":"Diese Bereinigung kann langsam sein und Sitzungen löschen, die Sie nicht löschen wollten. Sind Sie sicher?","sessionState.cleanup.deepConfirm.title":"Tiefenbereinigung der Sitzungen","sessionState.cleanup.deepConfirm.detail":"Die Tiefenbereinigung löscht alle Sitzungen ohne Nachrichten, entfernt abgeschlossene Unteragenten-Sitzungen und löscht ungenutzte Abzweigungen (Forks).","sessionState.cleanup.deepConfirm.confirmLabel":"Weiter","sessionState.cleanup.deepConfirm.cancelLabel":"Abbrechen","sessionState.cleanup.toast.one":"{count} leere Sitzung bereinigt","sessionState.cleanup.toast.other":"{count} leere Sitzungen bereinigt"},m={"instanceServiceStatus.sections.lsp":"LSP-Server","instanceServiceStatus.sections.mcp":"MCP-Server","instanceServiceStatus.sections.plugins":"Plugins","instanceServiceStatus.lsp.loading":"LSP-Server werden geladen...","instanceServiceStatus.lsp.empty":"Keine LSP-Server erkannt.","instanceServiceStatus.lsp.status.connected":"Verbunden","instanceServiceStatus.lsp.status.error":"Fehler","instanceServiceStatus.mcp.loading":"MCP-Server werden geladen...","instanceServiceStatus.mcp.empty":"Keine MCP-Server erkannt.","instanceServiceStatus.mcp.toggleAriaLabel":"{name} MCP-Server umschalten","instanceServiceStatus.plugins.loading":"Plugins werden geladen...","instanceServiceStatus.plugins.empty":"Keine Plugins konfiguriert.","permissionBanner.pendingRequests.one":"{count} ausstehende Anfrage","permissionBanner.pendingRequests.other":"{count} ausstehende Anfragen","permissionBanner.detail.permission.one":"{count} Berechtigung","permissionBanner.detail.permission.other":"{count} Berechtigungen","permissionBanner.detail.question.one":"{count} Frage","permissionBanner.detail.question.other":"{count} Fragen","permissionBanner.detail.wrapper":" ({detail})","agentSelector.placeholder":"Agent auswählen...","agentSelector.badge.subagent":"Unteragent","agentSelector.none":"Keiner","agentSelector.trigger.primary":"Agent: {agent}","modelSelector.placeholder.search":"Modelle suchen...","modelSelector.none":"Keines","modelSelector.trigger.primary":"Modell: {model}","modelSelector.favoritesOnly.toggle.ariaLabel":"Nur Favoriten umschalten","modelSelector.favoritesOnly.showAll":"Alle Modelle anzeigen","modelSelector.favorite.add":"Zu Favoriten hinzufügen","modelSelector.favorite.remove":"Aus Favoriten entfernen","modelSelector.manageProviders":"Anbieter verwalten","thinkingSelector.variant.default":"Standard","thinkingSelector.label":"Denken: {variant}","envEditor.title":"Umgebungsvariablen","envEditor.count.one":"({count} Variable)","envEditor.count.other":"({count} Variablen)","envEditor.fields.name.placeholder":"Variablenname","envEditor.fields.name.readOnlyTitle":"Variablenname (schreibgeschützt)","envEditor.fields.value.placeholder":"Variablenwert","envEditor.fields.secure.enabled":"Wert maskiert (sicher)","envEditor.fields.secure.disabled":"Klicken, um Wert zu maskieren","envEditor.fields.secure.masked":"Wert ausgeblendet (sicher)","envEditor.actions.remove.title":"Variable entfernen","envEditor.actions.add.title":"Variable hinzufügen","envEditor.empty":"Keine Umgebungsvariablen konfiguriert. Fügen Sie oben Variablen hinzu, um die OpenCode-Umgebung anzupassen.","envEditor.help":"Diese Variablen sind in der OpenCode-Umgebung beim Starten von Instanzen verfügbar.","contextUsagePanel.headings.tokens":"Token","contextUsagePanel.headings.context":"Kontext","contextUsagePanel.labels.input":"Eingabe","contextUsagePanel.labels.output":"Ausgabe","contextUsagePanel.labels.cost":"Kosten","contextUsagePanel.labels.totalInput":"Gesamt Ein","contextUsagePanel.labels.totalOutput":"Gesamt Aus","contextUsagePanel.labels.totalCost":"Gesamtkosten","contextUsagePanel.labels.totalReasoning":"Gesamt Denken","contextUsagePanel.labels.used":"Benutzt","contextUsagePanel.labels.available":"Verfügbar","contextUsagePanel.unavailable":"--","settings.title":"Einstellungen","settings.navigationAriaLabel":"Einstellungsbereiche","settings.close":"Einstellungen schließen","settings.content.eyebrow":"Arbeitsbereich-Präferenzen","settings.open.title":"Einstellungen öffnen","settings.open.ariaLabel":"Einstellungen öffnen","settings.nav.appearance":"Aussehen","settings.nav.notifications":"Benachrichtigungen","settings.nav.remote":"Remote-Zugriff","settings.nav.speech":"Sprache","settings.nav.providers":"Anbieter","settings.nav.opencode":"OpenCode","settings.nav.configFiles":"Konfigurationsdateien","settings.nav.info":"Info","settings.scope.device":"Dieses Gerät","settings.scope.server":"Server-Einstellung","settings.common.enabled":"Aktiviert","settings.common.disabled":"Deaktiviert","settings.section.appearance.title":"Aussehen","settings.section.appearance.subtitle":"Anpassen, wie die App auf diesem Gerät aussieht.","settings.appearance.theme.title":"Design","settings.appearance.theme.subtitle":"Wählen Sie den Farbmodus der App.","settings.appearance.theme.option.system":"An Betriebssystem-Einstellung anpassen","settings.appearance.theme.option.light":"Helles Design verwenden","settings.appearance.theme.option.dark":"Dunkles Design verwenden","settings.section.notifications.title":"Benachrichtigungen","settings.section.notifications.subtitle":"Steuern Sie OS-Benachrichtigungen für Sitzungsaktivitäten.","settings.notifications.permission.granted":"Erteilt","settings.notifications.permission.denied":"Abgelehnt","settings.notifications.permission.default":"Nicht erteilt","settings.notifications.permission.unsupported":"Nicht unterstützt","settings.notifications.messages.unsupportedEnvironment":"OS-Benachrichtigungen werden in dieser Umgebung nicht unterstützt.","settings.notifications.messages.permissionDenied":"Benachrichtigungsberechtigung abgelehnt. Aktivieren Sie Benachrichtigungen in Ihren System- oder Browsereinstellungen.","settings.notifications.messages.permissionNotGranted":"Benachrichtigungsberechtigung nicht erteilt.","settings.notifications.messages.unsupportedGeneral":"Benachrichtigungen werden in dieser Umgebung nicht unterstützt.","settings.notifications.messages.permissionGranted":"Berechtigung erteilt. Sie können nun Benachrichtigungen aktivieren.","settings.notifications.messages.permissionRequestDenied":"Berechtigung abgelehnt. Sie müssen Benachrichtigungen möglicherweise in Ihren System- oder Browsereinstellungen aktivieren.","settings.notifications.sessionStatus.title":"Sitzungsstatus-Benachrichtigungen","settings.notifications.sessionStatus.subtitle":"Benachrichtigungen erhalten, wenn Sitzungen Ihre Aufmerksamkeit erfordern.","settings.notifications.enable.title":"Benachrichtigungen aktivieren","settings.notifications.enable.permission":"Berechtigung: {permission}","settings.notifications.requestPermission.title":"Berechtigung anfordern","settings.notifications.requestPermission.subtitle":"Erlauben Sie der App, Benachrichtigungen auf diesem Gerät zu senden.","settings.notifications.requestPermission.action":"Anfordern","settings.notifications.allowVisible.title":"Benachrichtigen, wenn die App im Fokus ist","settings.notifications.allowVisible.subtitle":"Warnungen auch dann aktiviert lassen, wenn dieses Fenster sichtbar ist.","settings.notifications.unsupportedNote":"Benachrichtigungen werden in dieser Umgebung nicht unterstützt. Die Steuerung bleibt deaktiviert.","settings.notifications.events.title":"Benachrichtigen bei","settings.notifications.events.subtitle":"Wählen Sie, welche Sitzungsereignisse Warnungen senden sollen.","settings.notifications.events.needsInput":"Sitzung benötigt Eingabe","settings.notifications.events.idle":"Sitzung wird inaktiv","settings.notifications.status.enabled":"Benachrichtigungen aktiviert","settings.notifications.status.disabled":"Benachrichtigungen deaktiviert","settings.notifications.status.unsupported":"Benachrichtigungen nicht unterstützt","settings.section.remote.title":"Remote-Zugriff","settings.section.remote.subtitle":"Überprüfen Sie, wie dieser Server in Ihrem Netzwerk freigegeben ist, und sichern Sie die Zugangsdaten.","settings.section.opencode.title":"OpenCode","settings.section.opencode.subtitle":"Wählen Sie die OpenCode-Binärdatei und Umgebung für neue Instanzen.","settings.opencode.runtime.title":"Laufzeit","settings.opencode.runtime.subtitle":"Konfigurieren Sie, mit welcher OpenCode-Binärdatei neue Instanzen starten.","settings.opencode.logLevel.title":"OpenCode Log-Level","settings.opencode.logLevel.subtitle":"Steuern Sie die Ausführlichkeit der Protokolle beim Starten neuer OpenCode-Instanzen.","settings.opencode.logLevel.selector.title":"Standard-Log-Level","settings.opencode.logLevel.selector.subtitle":"Wählen Sie, wie ausführlich neue OpenCode-Instanzen sein sollen.","settings.opencode.logLevel.option.debug":"Debug","settings.opencode.logLevel.option.info":"Info","settings.opencode.logLevel.option.warn":"Warn","settings.opencode.logLevel.option.error":"Fehler","settings.configFiles.title":"Konfigurationsdateien","settings.configFiles.subtitle":"Bearbeiten Sie freigegebene globale Konfigurationsdateien auf diesem Server.","settings.configFiles.selector.label":"Datei","settings.configFiles.selector.placeholder":"Konfigurationsdatei auswählen","settings.configFiles.actions.save":"Speichern","settings.configFiles.actions.reload":"Neu laden","settings.configFiles.state.unsaved":"Ungespeicherte Änderungen","settings.configFiles.state.notCreated":"Datei wird beim Speichern erstellt","settings.configFiles.empty":"Keine Konfigurationsdatei ausgewählt.","settings.configFiles.errors.loadList":"Konfigurationsdateien konnten nicht geladen werden.","settings.configFiles.errors.loadContent":"Konfigurationsdatei konnte nicht geladen werden.","settings.configFiles.errors.save":"Konfigurationsdatei konnte nicht gespeichert werden.","settings.configFiles.toast.saveSuccess":"Konfigurationsdatei gespeichert.","settings.configFiles.toast.saveError":"Konfigurationsdatei konnte nicht gespeichert werden.","settings.configFiles.confirmDiscard.message":"Ungespeicherte Änderungen verwerfen, bevor Sie fortfahren?","settings.configFiles.confirmDiscard.confirmLabel":"Änderungen verwerfen","settings.configFiles.confirmDiscard.cancelLabel":"Weiter bearbeiten","settings.providers.title":"Anbieter-Authentifizierung","settings.providers.subtitle":"API-Schlüssel oder OAuth-Konten für die aktive OpenCode-Instanz verbinden.","settings.providers.refresh":"Aktualisieren","settings.providers.selectProvider":"Anbieter auswählen","settings.providers.available.title":"Verfügbare Anbieter","settings.providers.configured.title":"Konfigurierte Anbieter","settings.providers.loading":"Authentifizierungsmethoden werden geladen...","settings.providers.empty.noInstance":"Starten Sie einen OpenCode-Arbeitsbereich, bevor Sie die Anbieter-Authentifizierung verwalten.","settings.providers.empty.noProviders":"Keine Anbieter von dieser OpenCode-Instanz verfügbar.","settings.providers.empty.noConfiguredProviders":"Derzeit sind keine Anbieter für diese OpenCode-Instanz konfiguriert.","settings.providers.models.one":"{count} Modell","settings.providers.models.other":"{count} Modelle","settings.providers.actions.connect":"Verbinden","settings.providers.actions.disconnect":"Trennen","settings.providers.actions.remove":"Gespeicherte Authentifizierung entfernen","settings.providers.actions.close":"Schließen","settings.providers.actions.continue":"Weiter","settings.providers.actions.working":"Wird verarbeitet...","settings.providers.method.title":"Authentifizierungsmethode","settings.providers.method.subtitle":"Wählen Sie den Ablauf, den OpenCode für diesen Anbieter bereitstellt.","settings.providers.method.api":"API-Schlüssel","settings.providers.method.oauth":"OAuth","settings.providers.method.mixed":"API-Schlüssel und OAuth","settings.providers.method.fallback":"API-Schlüssel","settings.providers.status.available":"Verfügbar","settings.providers.auth.title":"{provider} verbinden","settings.providers.auth.subtitle":"Die Authentifizierung wird auf dem aktiven OpenCode-Server gespeichert.","settings.providers.apiKey.label":"API-Schlüssel","settings.providers.apiKey.placeholder":"Anbieter-API-Schlüssel einfügen","settings.providers.oauth.noPrompts":"Diese OAuth-Methode benötigt keine zusätzlichen Details, bevor der Browser geöffnet wird.","settings.providers.oauth.promptsUnsupported":"Diese OAuth-Methode erfordert anbieterspezifische Eingaben, die vom aktuellen SDK nicht unterstützt werden.","settings.providers.oauth.enterCode":"Schließen Sie den Ablauf im Browser ab und fügen Sie dann den Autorisierungscode ein.","settings.providers.oauth.openPage":"Autorisierungsseite öffnen","settings.providers.oauth.openHere":"In diesem Tab öffnen","settings.providers.oauth.copyLink":"Link kopieren","settings.providers.oauth.linkCopied":"Link kopiert","settings.providers.oauth.popupBlocked":"Ihr Browser hat möglicherweise die Autorisierungsseite blockiert. Verwenden Sie die obigen Aktionen, um fortzufahren.","settings.providers.oauth.popup.loadingTitle":"OpenCode Autorisierung","settings.providers.oauth.popup.loadingBody":"Autorisierungsseite wird vorbereitet...","settings.providers.oauth.codeLabel":"Autorisierungscode","settings.providers.oauth.codePlaceholder":"Code vom Anbieter einfügen","settings.providers.oauth.submitCode":"Code absenden","settings.providers.oauth.waitingTitle":"Warten auf Autorisierung","settings.providers.oauth.cancelWait":"Abbrechen","settings.providers.prompt.selectPlaceholder":"Option auswählen","settings.providers.success":"Anbieter-Authentifizierung gespeichert. Anbieterdaten wurden aktualisiert.","settings.providers.source.api":"Gespeicherte Anbieter-Authentifizierung","settings.providers.source.config":"Konfiguriert in opencode.jsonc","settings.providers.source.custom":"Konfiguriert durch benutzerdefinierte Anbieterlogik","settings.providers.source.env":"Konfiguriert über Umgebungsvariablen","settings.providers.source.unknown":"Konfigurierte Anbieterquelle","settings.providers.errors.loadFailed":"Anbieter-Authentifizierungsmethoden konnten nicht geladen werden.","settings.providers.errors.noAuthorization":"Anbieter hat keine Autorisierungsdaten zurückgegeben.","settings.providers.errors.authorizationFailed":"Autorisierung fehlgeschlagen.","settings.providers.errors.removeFailed":"Anbieter-Authentifizierung konnte nicht entfernt werden.","settings.providers.errors.envDisconnectUnavailable":"Dieser Anbieter wird über Umgebungsvariablen konfiguriert und kann nicht über die UI getrennt werden.","settings.appearance.behavior.title":"Interaktion","settings.appearance.behavior.subtitle":"Standardwerte für Nachrichten, Diffs und Eingaben.","settings.behavior.keyboardHints.title":"Tastenkombinations-Hinweise","settings.behavior.keyboardHints.subtitle":"Tastenkombinations-Hinweise in der UI anzeigen.","settings.behavior.thinking.title":"Denkabschnitte","settings.behavior.thinking.subtitle":"AI-Denkabschnitte in Nachrichten anzeigen oder ausblenden.","settings.behavior.thinkingDefault.title":"Denken-Standard","settings.behavior.thinkingDefault.subtitle":"Wählen Sie, ob Denkabschnitte standardmäßig aus- oder eingeklappt sind.","settings.behavior.messageTimeline.title":"Nachrichten-Timeline","settings.behavior.messageTimeline.subtitle":"Die Nachrichten-Timeline-Seitenleiste anzeigen oder ausblenden.","settings.behavior.timelineTools.title":"Timeline-Tool-Aufrufe","settings.behavior.timelineTools.subtitle":"Tool-Aufruf-Einträge in der Nachrichten-Timeline anzeigen oder ausblenden.","settings.behavior.diffView.title":"Diff-Ansicht","settings.behavior.diffView.subtitle":"Wählen Sie, wie Tool-Aufruf-Diffs angezeigt werden.","settings.behavior.diffView.option.split":"Geteilt","settings.behavior.diffView.option.unified":"Einheitlich","settings.behavior.toolOutputsDefault.title":"Standard für Tool-Ausgaben","settings.behavior.toolOutputsDefault.subtitle":"Wählen Sie, ob Tool-Ausgaben standardmäßig aus- oder eingeklappt sind.","settings.behavior.diagnosticsDefault.title":"Diagnose-Standard","settings.behavior.diagnosticsDefault.subtitle":"Wählen Sie, ob Diagnoseausgaben standardmäßig aus- oder eingeklappt sind.","settings.behavior.toolInputsVisibility.title":"Sichtbarkeit von Tool-Eingaben","settings.behavior.toolInputsVisibility.subtitle":"Standardsichtbarkeit für Argumente von Tool-Aufrufen festlegen.","settings.behavior.usageMetrics.title":"Token-Verbrauchsmetriken","settings.behavior.usageMetrics.subtitle":"Token- und Kostenstatistiken für Assistenten-Nachrichten anzeigen oder ausblenden.","settings.behavior.autoCleanup.title":"Automatische Bereinigung leerer Sitzungen","settings.behavior.autoCleanup.subtitle":"Leere Sitzungen beim Erstellen neuer Sitzungen automatisch bereinigen.","settings.behavior.keepUnseenSubagentIdle.title":"Statusanzeigen von Unteragenten beibehalten","settings.behavior.keepUnseenSubagentIdle.subtitle":"Statusanzeigen von Unteragenten sichtbar lassen, bis sie angesehen wurden.","settings.behavior.tauriNativeEventTransport.title":"Nativer Tauri-Ereignistransport","settings.behavior.tauriNativeEventTransport.subtitle":"Den Rust-nativen Desktop-Ereignistransport in Tauri verwenden. Deaktivieren, um auf den Browser-EventSource-Pfad zurückzufallen.","settings.behavior.promptVoiceInput.title":"Prompt-Spracheingabe","settings.behavior.promptVoiceInput.subtitle":"Mikrofon-Steuerung für Sprache-zu-Text anzeigen, wenn Sprache konfiguriert ist.","settings.behavior.promptSubmit.title":"Enter zum Absenden","settings.behavior.promptSubmit.subtitle":"Enter zum Absenden von Prompts verwenden; Cmd/Ctrl+Enter fügt eine neue Zeile ein.","settings.speech.title":"Sprache","settings.speech.subtitle":"Konfigurieren Sie Sprache-zu-Text und Text-zu-Sprache.","settings.speech.provider.title":"Anbieter","settings.speech.provider.subtitle":"Sprachanfragen verwenden den serverseitigen Sprach-Adapter.","settings.speech.provider.openaiCompatible":"OpenAI-kompatibel","settings.speech.status.loading":"Konfiguration wird geprüft...","settings.speech.status.configured":"Konfiguriert","settings.speech.status.missing":"API-Schlüssel fehlt","settings.speech.status.error":"Sprachdienst nicht verfügbar","settings.speech.apiKey.title":"API-Schlüssel","settings.speech.apiKey.subtitle":"Wird für CodeNomad-gesteuerte Sprachanfragen verwendet.","settings.speech.apiKey.placeholder":"Neuen API-Schlüssel eingeben","settings.speech.apiKey.storedNote":"Ein gespeicherter Schlüssel ist ausgeblendet. Geben Sie einen neuen Wert ein, um ihn zu ersetzen.","settings.speech.apiKey.clearAction":"Gespeicherten Schlüssel löschen","settings.speech.apiKey.clearPending":"Der Schlüssel wird beim Speichern entfernt.","settings.speech.baseUrl.title":"Basis-URL","settings.speech.baseUrl.subtitle":"Optionale Überschreibung für OpenAI-kompatible Endpunkte.","settings.speech.baseUrl.placeholder":"https://api.openai.com/v1","settings.speech.sttModel.title":"Transkriptionsmodell","settings.speech.sttModel.subtitle":"Modell für Sprache-zu-Text-Anfragen.","settings.speech.ttsModel.title":"Sprachmodell (TTS)","settings.speech.ttsModel.subtitle":"Standard-Text-zu-Sprache-Modell.","settings.speech.ttsVoice.title":"Standardstimme","settings.speech.ttsVoice.subtitle":"Standardstimme für Text-zu-Sprache.","settings.speech.playbackMode.title":"Wiedergabemodus","settings.speech.playbackMode.subtitle":"Wählen Sie, ob die Wiedergabe sofort (Streaming) oder nach der Generierung (gepuffert) startet.","settings.speech.playbackMode.streaming":"Streaming","settings.speech.playbackMode.buffered":"Gepuffert","settings.speech.ttsFormat.title":"Ausgabeformat","settings.speech.ttsFormat.subtitle":"Wählen Sie das Audioformat für die synthetisierte Sprache.","settings.speech.help":"Die Spracheingabe erscheint, wenn die Transkription konfiguriert ist. Die Wiedergabe verwendet den gewählten TTS-Modus.","settings.speech.compatibility.streamingUnavailable":"Ihr Anbieter unterstützt kein Streaming-TTS. Schalten Sie auf 'Gepuffert' um.","settings.speech.compatibility.browserStreamingUnavailable":"Ihr Browser unterstützt kein Streaming für dieses Format. Wählen Sie 'Gepuffert' oder ein anderes Format.","settings.speech.compatibility.runtimeNote":"Alle Formate bleiben im Streaming-Modus auswählbar. Manche Browser-Anbieter-Kombinationen können bei der Wiedergabe dennoch fehlschlagen.","settings.speech.testPlayback.action":"Wiedergabe testen","settings.speech.testPlayback.generating":"Beispiel wird generiert","settings.speech.testPlayback.stop":"Beispiel stoppen","settings.speech.testPlayback.sample":"Vielen Dank für die Nutzung von CodeNomad. Ihre Spracheinstellungen funktionieren einwandfrei.","settings.speech.testPlayback.note":"Der Test verwendet sofort den aktuellen Modus und das Format.","settings.speech.save.action":"Speichern","settings.speech.save.saving":"Wird gespeichert...","settings.speech.save.saved":"Gespeichert","settings.speech.save.unsaved":"Ungespeicherte Änderungen","settings.speech.save.error":"Speichern fehlgeschlagen","settings.nav.sidecars":"SideCars","settings.section.sidecars.eyebrow":"Server-Dienste","settings.section.sidecars.title":"SideCars","settings.section.sidecars.subtitle":"Konfigurieren Sie lokale Dienste, die der Server in Tabs tunneln kann.","sidecars.form.name":"Name","sidecars.form.validation":"Geben Sie einen gültigen Namen und Port an.","sidecars.form.port":"Port","sidecars.form.insecure":"HTTP verwenden","sidecars.form.protocol":"Protokoll","sidecars.form.protocol.help":"Wählen Sie, wie der Proxy mit dem Dienst verbindet.","sidecars.form.protocol.https":"HTTPS","sidecars.form.protocol.http":"HTTP","sidecars.form.prefixMode":"Präfix-Modus","sidecars.form.prefixMode.help":"Wählen Sie, ob der SideCar den Pfad-Präfix erhält.","sidecars.form.prefixMode.strip":"Präfix entfernen","sidecars.form.prefixMode.preserve":"Präfix beibehalten","sidecars.form.add":"SideCar hinzufügen","sidecars.kind.port":"Port","sidecars.status.running":"Läuft","sidecars.status.stopped":"Gestoppt","sidecars.basePath":"Basispfad","sidecars.settings.listTitle":"Konfigurierte SideCars","sidecars.settings.listSubtitle":"Überprüfen Sie die verfügbaren SideCars.","sidecars.settings.empty":"Noch keine SideCars konfiguriert.","sidecars.picker.title":"SideCar öffnen","sidecars.picker.loading":"SideCars werden geladen...","sidecars.picker.subtitle":"Wählen Sie einen SideCar zum Öffnen.","sidecars.picker.empty":"Keine SideCars verfügbar.","sidecars.picker.close":"Schließen","sidecars.open.errorTitle":"SideCar konnte nicht geöffnet werden","sidecars.open.notFound":"SideCar nicht gefunden.","sidecars.open.notRunning":"SideCar ist auf dem konfigurierten Port nicht erreichbar.","sidecars.back":"Zurück","sidecars.refresh":"Aktualisieren","sidecars.path":"Pfad","sidecars.go":"Los","toastHistory.title":"Benachrichtigungsverlauf","toastHistory.empty":"Noch keine Benachrichtigungen","toastHistory.empty.filter":"Keine passenden Benachrichtigungen für diesen Filter","toastHistory.clearAll":"Alle löschen","toastHistory.markAllRead":"Alle als gelesen markieren","toastHistory.filter.label":"Benachrichtigungen filtern","toastHistory.filter.all":"Alle","toastHistory.filter.info":"Info","toastHistory.filter.success":"Erfolg","toastHistory.filter.warning":"Warnung","toastHistory.filter.error":"Fehler","toastHistory.today":"Heute","toastHistory.yesterday":"Gestern","toastHistory.earlier":"Früher","toastHistory.unread":"{count} ungelesen","toastHistory.viewSettings":"Einstellungen","toastHistory.close":"Schließen","toastHistory.deleteItem":"Benachrichtigung löschen","settings.section.info.title":"Über","settings.section.info.subtitle":"Version, Laufzeit und Diagnoseinformationen anzeigen.","settings.info.version.server":"Server-Version","settings.info.version.ui":"UI-Version","settings.info.version.uiSource":"UI-Quelle","settings.info.runtime.type":"Laufzeit","settings.info.runtime.platform":"Plattform","settings.info.runtime.os":"Betriebssystem","settings.info.server.url":"Server-URL","settings.info.server.root":"Arbeitsbereich-Root","settings.info.updates.title":"Updates","settings.info.updates.subtitle":"Nach neuen CodeNomad-Releases suchen.","settings.info.updates.latest":"Neueste Version","settings.info.updates.download":"Update herunterladen","settings.info.updates.refresh":"Aktualisieren","settings.info.diagnostics.copyFailed":"Zwischenablage-Zugriff verweigert. Nutzen Sie den Download.","settings.info.diagnostics.title":"Diagnose","settings.info.diagnostics.subtitle":"System- und Versionsinfo für Fehlerberichte sammeln.","settings.info.diagnostics.copy":"In Zwischenablage kopieren","settings.info.diagnostics.download":".txt herunterladen","settings.info.diagnostics.copied":"Diagnoseinfo in Zwischenablage kopiert."},p={"time.relative.justNow":"gerade eben","time.relative.daysAgoShort":"vor {count}T","time.relative.hoursAgoShort":"vor {count}Std","time.relative.minutesAgoShort":"vor {count}Min"},b={"toolCall.pending.waitingToRun":"Wartet auf Ausführung...","toolCall.error.label":"Fehler:","toolCall.header.copyTitle":"Tool-Aufruf-Titel kopieren","toolCall.header.copyAriaLabel":"Tool-Aufruf-Titel kopieren","toolCall.header.copyOutputTitle":"Tool-Ausgabe kopieren","toolCall.header.copyOutputAriaLabel":"Tool-Ausgabe kopieren","toolCall.header.showInputTitle":"Tool-Argumente anzeigen","toolCall.header.showInputAriaLabel":"Tool-Argumente anzeigen","toolCall.header.hideInputTitle":"Tool-Argumente ausblenden","toolCall.header.hideInputAriaLabel":"Tool-Argumente ausblenden","toolCall.io.input":"Tool-Eingabe","toolCall.io.output":"Tool-Ausgabe","toolCall.io.copyInputTitle":"Tool-Eingabe kopieren","toolCall.io.copyInputAriaLabel":"Tool-Eingabe kopieren","toolCall.io.copyOutputTitle":"Tool-Ausgabe kopieren","toolCall.io.copyOutputAriaLabel":"Tool-Ausgabe kopieren","toolCall.diff.label":"Diff","toolCall.diff.label.withPath":"Diff · {path}","toolCall.diff.viewMode.ariaLabel":"Diff-Ansichtsmodus","toolCall.diff.viewMode.split":"Geteilt","toolCall.diff.viewMode.unified":"Einheitlich","toolCall.diff.switchToSplit":"Zur geteilten Ansicht wechseln","toolCall.diff.switchToUnified":"Zur einheitlichen Ansicht wechseln","toolCall.diff.enableWordWrap":"Zeilenumbruch aktivieren","toolCall.diff.disableWordWrap":"Zeilenumbruch deaktivieren","toolCall.diff.copyPatch":"Patch kopieren","toolCall.diagnostics.title":"Diagnose","toolCall.diagnostics.ariaLabel":"Diagnose","toolCall.diagnostics.ariaLabel.withLabel":"Diagnose {label}","toolCall.diagnostics.severity.error.short":"ERR","toolCall.diagnostics.severity.warning.short":"WARN","toolCall.diagnostics.severity.info.short":"INFO","toolCall.renderer.toolName.shell":"Shell","toolCall.renderer.toolName.fetch":"Fetch","toolCall.renderer.toolName.invalid":"Ungültig","toolCall.renderer.toolName.plan":"Plan","toolCall.renderer.toolName.applyPatch":"Patch anwenden","toolCall.renderer.action.working":"Wird verarbeitet...","toolCall.renderer.action.writingCommand":"Befehl wird geschrieben...","toolCall.renderer.action.preparingEdit":"Bearbeitung wird vorbereitet...","toolCall.renderer.action.readingFile":"Datei wird gelesen...","toolCall.renderer.action.preparingWrite":"Schreibvorgang wird vorbereitet...","toolCall.renderer.action.preparingPatch":"Patch wird vorbereitet...","toolCall.renderer.action.planning":"Wird geplant...","toolCall.renderer.action.fetchingFromWeb":"Wird aus dem Web abgerufen...","toolCall.renderer.action.findingFiles":"Dateien werden gesucht...","toolCall.renderer.action.searchingContent":"Inhalt wird durchsucht...","toolCall.renderer.action.listingDirectory":"Verzeichnis wird aufgelistet...","toolCall.renderer.bash.title.timeout":"Zeitüberschreitung: {timeout}","toolCall.renderer.read.detail.offset":"Offset: {offset}","toolCall.renderer.read.detail.limit":"Limit: {limit}","toolCall.renderer.todo.empty":"Keine Elemente geplant","toolCall.renderer.todo.status.pending":"Ausstehend","toolCall.renderer.todo.status.inProgress":"In Arbeit","toolCall.renderer.todo.status.completed":"Abgeschlossen","toolCall.renderer.todo.status.cancelled":"Abgebrochen","toolCall.renderer.todo.title.plan":"Plan","toolCall.renderer.todo.title.creating":"Plan wird erstellt","toolCall.renderer.todo.title.completing":"Plan wird abgeschlossen","toolCall.renderer.todo.title.updating":"Plan wird aktualisiert","toolCall.permission.status.required":"Berechtigung erforderlich","toolCall.permission.status.queued":"Berechtigung in Warteschlange","toolCall.permission.requestedDiff.label":"Angefordertes Diff","toolCall.permission.requestedDiff.withPath":"Angefordertes Diff · {path}","toolCall.permission.queuedText":"Warten auf vorherige Berechtigungsantworten.","toolCall.permission.actions.allowOnce":"Einmalig erlauben","toolCall.permission.actions.alwaysAllow":"Immer erlauben","toolCall.permission.actions.deny":"Ablehnen","toolCall.permission.shortcuts.allowOnce":"Einmalig erlauben","toolCall.permission.shortcuts.alwaysAllow":"Immer erlauben","toolCall.permission.rejectReason.placeholder":"Optionales Feedback beim Ablehnen, z. B. einen sichereren Befehl verwenden...","toolCall.permission.errors.unableToUpdate":"Berechtigung konnte nicht aktualisiert werden","permissionApproval.title":"Anfragen","permissionApproval.empty":"Keine ausstehenden Anfragen.","permissionApproval.kind.permission":"Berechtigung","permissionApproval.kind.question":"Frage","permissionApproval.questionCount.one":"{count} Frage","permissionApproval.questionCount.other":"{count} Fragen","permissionApproval.status.active":"Aktiv","permissionApproval.actions.closeAriaLabel":"Schließen","permissionApproval.actions.goToSession":"Zur Sitzung gehen","permissionApproval.actions.loadingSession":"Wird geladen...","permissionApproval.actions.loadSession":"Sitzung laden","permissionApproval.actions.allowOnce":"Einmalig erlauben","permissionApproval.actions.alwaysAllow":"Immer erlauben","permissionApproval.actions.deny":"Ablehnen","permissionApproval.rejectReason.placeholder":"Optionales Feedback beim Ablehnen, z. B. einen sichereren Befehl verwenden...","permissionApproval.fallbackHint":"Sitzung für weitere Informationen laden.","permissionApproval.errors.unableToUpdatePermission":"Berechtigung konnte nicht aktualisiert werden","toolCall.question.status.required":"Antwort erforderlich","toolCall.question.status.queued":"Frage in Warteschlange","toolCall.question.status.questions":"Fragen","toolCall.question.action.awaitingAnswers":"Warten auf Antworten...","toolCall.question.title.questions":"Fragen","toolCall.question.title.askingQuestions":"Fragen werden gestellt","toolCall.question.type.one":"Frage","toolCall.question.type.other":"Fragen","toolCall.question.number":"F{number}:","toolCall.question.multiple":"Mehrere","toolCall.question.custom.title":"Eigene Antwort eingeben","toolCall.question.custom.label":"Eigene Antwort","toolCall.question.custom.placeholder":"Eigene Antwort eingeben","toolCall.question.actions.submit":"Absenden","toolCall.question.actions.dismiss":"Verwerfen","toolCall.question.shortcuts.submit":"Absenden","toolCall.question.shortcuts.dismiss":"Verwerfen","toolCall.question.queuedText":"Warten auf vorherige Antworten.","toolCall.question.validation.answerAll":"Bitte beantworten Sie alle Fragen vor dem Absenden.","toolCall.question.errors.unableToReply":"Antwort nicht möglich","toolCall.question.errors.unableToDismiss":"Verwerfen nicht möglich","toolCall.task.action.delegating":"Delegieren...","toolCall.task.sections.prompt":"Prompt","toolCall.task.sections.steps":"Schritte","toolCall.task.sections.output":"Ausgabe","toolCall.task.steps.count":"{count} Schritte","toolCall.task.meta.agentModel":"Agent: {agent} • Modell: {model}","toolCall.task.meta.agent":"Agent: {agent}","toolCall.task.meta.model":"Modell: {model}","toolCall.status.pending":"Ausstehend","toolCall.status.running":"Läuft","toolCall.status.completed":"Abgeschlossen","toolCall.status.error":"Fehler","toolCall.status.unknown":"Unbekannt","toolCall.applyPatch.action.preparing":"apply_patch wird vorbereitet...","toolCall.applyPatch.title.withFileCount.one":"{tool} ({count} Datei)","toolCall.applyPatch.title.withFileCount.other":"{tool} ({count} Dateien)","toolCall.applyPatch.fileFallback":"Datei {number}"},A=e(o,n,l,p,t,s,r,a,c,h,g,b,d,m,u,i);export{A as deMessages};