export const settingsDict = {
  'settings.appearance.language.label': 'Language',
  'settings.appearance.language.description': 'Choose the interface language.',
  'settings.appearance.language.select': 'Select language',
  'settings.window.description': 'OpenChamber settings window.',
  'settings.view.home.title': 'Settings',
  'settings.view.home.description': 'Jump to common pages.',
  'settings.view.home.cards.providers.title': 'Providers',
  'settings.view.home.cards.providers.description': 'Connect models + credentials',
  'settings.view.home.cards.agents.title': 'Agents',
  'settings.view.home.cards.agents.description': 'Prompts, tools, permissions',
  'settings.view.home.cards.skillsCatalog.title': 'Skills Catalog',
  'settings.view.home.cards.skillsCatalog.description': 'Install skills from catalogs',
  'settings.view.home.cards.mcp.title': 'MCP',
  'settings.view.home.cards.mcp.description': 'Configure MCP servers + connections',
  'settings.view.home.cards.usage.title': 'Usage',
  'settings.view.home.cards.usage.description': 'Quota + spend visibility',
  'settings.view.unavailable.title': 'Not available',
  'settings.view.unavailable.description': 'This settings page is not available in this runtime.',
  'settings.view.badge.beta': 'beta',
  'settings.view.actions.reloadOpenCode': 'Reload OpenCode',
  'settings.view.actions.reloadOpenCodeTooltip': 'Restart OpenCode and reload its configuration.',
  'settings.view.actions.backToSettings': 'Back to Settings',
  'settings.view.actions.closeSettings': 'Close settings',
  'settings.view.actions.openSectionList': 'Open section list',
  'settings.view.actions.closeSettingsWithShortcut': 'Close Settings ({shortcut}+,)',
  'settings.view.actions.back': 'Back',
  'settings.view.actions.resizeNavigation': 'Resize settings navigation',
  'settings.page.projects.title': 'Projects',
  'settings.page.remoteInstances.title': 'Remote Instances',
  'settings.page.providers.title': 'Providers',
  'settings.page.usage.title': 'Usage',
  'settings.page.agents.title': 'Agents',
  'settings.page.commands.title': 'Commands',
  'settings.page.mcp.title': 'MCP',
  'settings.page.skills.title': 'Skills',
  'settings.page.skillsCatalog.title': 'Skills Catalog',
  'settings.page.git.title': 'Git',
  'settings.page.appearance.title': 'Appearance',
  'settings.page.chat.title': 'Chat',
  'settings.page.shortcuts.title': 'Shortcuts',
  'settings.page.sessions.title': 'Sessions',
  'settings.page.magicPrompts.title': 'Magic Prompts',
  'settings.page.notifications.title': 'Notifications',
  'settings.page.voice.title': 'Voice',
  'settings.page.tunnel.title': 'Remote Tunnel',
  'settings.openchamber.tunnel.title': 'Remote Tunnel',
  'settings.openchamber.tunnel.description': 'Configure secure remote access with quick links or your own managed remote Cloudflare tunnel.',
  'settings.openchamber.tunnel.note.serverSideEnforced': 'Secure tunnel access is enforced server-side.',
  'settings.openchamber.tunnel.note.connectLinksOneTime': 'Connect links are one-time and are revoked when tunnel stops or connect-link TTL expires.',
  'settings.openchamber.tunnel.note.cloudflareConnectorTarget': 'Cloudflare connector target:',
  'settings.openchamber.tunnel.note.cloudflareConnectorTargetUse': 'For Cloudflare connector target, use',
  'settings.openchamber.tunnel.note.tokensSavedPerTunnel': 'Tokens are saved per tunnel and reused from disk.',
  'settings.openchamber.tunnel.note.customConfigUsed': 'Custom config file will be used when starting the tunnel.',
  'settings.openchamber.tunnel.note.defaultConfigUsed': 'When empty, cloudflared uses its default config (~/.cloudflared/config.yml).',
  'settings.openchamber.tunnel.note.managedRemoteRequiresDomain': 'Managed remote tunnels require a purchased domain in your Cloudflare account.',
  'settings.openchamber.tunnel.note.managedLocalUsesConfig': 'Managed local tunnels use your local cloudflared configuration file.',
  'settings.openchamber.tunnel.note.startModeAndGenerateLink': 'Start a {mode} tunnel and generate a one-time connect link. Do not close the app while this tunnel is in use.',
  'settings.openchamber.tunnel.note.scanQrToConnect': 'Scan with your phone to connect.',
  'settings.openchamber.tunnel.section.redeemedAccessLinks': 'Redeemed access links',
  'settings.openchamber.tunnel.section.savedManagedRemoteTunnels': 'Saved managed remote tunnels',
  'settings.openchamber.tunnel.notAvailable.cloudflaredNotFound': 'cloudflared not found',
  'settings.openchamber.tunnel.notAvailable.installHint': 'Install it to enable remote tunnel access:',
  'settings.openchamber.tunnel.field.provider': 'Provider',
  'settings.openchamber.tunnel.field.providerPlaceholder': 'Select provider',
  'settings.openchamber.tunnel.field.tunnelType': 'Tunnel type',
  'settings.openchamber.tunnel.field.connectLinkTtl': 'Connect link TTL',
  'settings.openchamber.tunnel.field.tunnelSessionTtl': 'Tunnel session TTL',
  'settings.openchamber.tunnel.field.hostnameLabel': 'Hostname:',
  'settings.openchamber.tunnel.field.savedTokenAvailablePlaceholder': 'Saved token available (optional to replace)',
  'settings.openchamber.tunnel.field.pasteTokenPlaceholder': 'Paste token for this tunnel',
  'settings.openchamber.tunnel.field.newPresetNamePlaceholder': 'Tunnel name (e.g. Production)',
  'settings.openchamber.tunnel.field.newPresetHostnamePlaceholder': 'Hostname (e.g. oc.example.com)',
  'settings.openchamber.tunnel.field.newPresetTokenPlaceholder': 'Token',
  'settings.openchamber.tunnel.field.managedRemoteTokenInfoAria': 'Managed remote tunnel token info',
  'settings.openchamber.tunnel.field.configurationFile': 'Configuration file',
  'settings.openchamber.tunnel.field.configurationFilePlaceholder': 'Using default cloudflared config',
  'settings.openchamber.tunnel.field.managedRemoteTunnelToConnect': 'Managed remote tunnel to connect',
  'settings.openchamber.tunnel.field.selectSavedTunnelPlaceholder': 'Select saved tunnel',
  'settings.openchamber.tunnel.field.publicUrlHint': 'Public URL (not accessible without a token)',
  'settings.openchamber.tunnel.field.connectLink': 'Connect link',
  'settings.openchamber.tunnel.field.expires': 'Expires',
  'settings.openchamber.tunnel.field.connectQrAlt': 'Tunnel connect QR code',
  'settings.openchamber.tunnel.actions.removePresetAria': 'Remove {name}',
  'settings.openchamber.tunnel.actions.saveToken': 'Save token',
  'settings.openchamber.tunnel.actions.browseConfigFileAria': 'Browse config file',
  'settings.openchamber.tunnel.actions.clearConfigFileAria': 'Clear config file',
  'settings.openchamber.tunnel.actions.openManagedRemoteDocs': 'Check documentation on how to configure a managed remote tunnel',
  'settings.openchamber.tunnel.actions.openManagedLocalDocs': 'Check documentation on managed local tunnel configuration',
  'settings.openchamber.tunnel.actions.startTunnel': 'Start Tunnel',
  'settings.openchamber.tunnel.actions.startingTunnel': 'Starting tunnel...',
  'settings.openchamber.tunnel.actions.stopTunnel': 'Stop Tunnel',
  'settings.openchamber.tunnel.actions.stopping': 'Stopping...',
  'settings.openchamber.tunnel.actions.newConnectLink': 'New connect link',
  'settings.openchamber.tunnel.actions.copied': 'Copied',
  'settings.openchamber.tunnel.actions.retry': 'Retry',
  'settings.openchamber.tunnel.option.moreProvidersSoon': 'More providers coming soon',
  'settings.openchamber.tunnel.option.mode.quick.label': 'Quick',
  'settings.openchamber.tunnel.option.mode.quick.tooltip': 'Quick Tunnel is best effort and Cloudflare does not guarantee uptime.',
  'settings.openchamber.tunnel.option.mode.managedRemote.label': 'Managed Remote',
  'settings.openchamber.tunnel.option.mode.managedRemote.tooltip': 'Managed Remote uses your Cloudflare account and hostname for long-lived access.',
  'settings.openchamber.tunnel.option.mode.managedLocal.label': 'Managed Local',
  'settings.openchamber.tunnel.option.mode.managedLocal.tooltip': 'Managed Local uses your local cloudflared configuration file.',
  'settings.openchamber.tunnel.warning.quickModeReliability': 'For more reliable long-lived access, switch to Managed Remote or Managed Local tunnel mode.',
  'settings.openchamber.tunnel.warning.replacesActiveTunnel': 'Starting this tunnel replaces the active tunnel and revokes existing connect links and remote sessions.',
  'settings.openchamber.tunnel.badge.quick': 'QUICK',
  'settings.openchamber.tunnel.badge.remote': 'REMOTE',
  'settings.openchamber.tunnel.badge.local': 'LOCAL',
  'settings.openchamber.tunnel.state.loading': 'Loading',
  'settings.openchamber.tunnel.state.expired': 'Expired',
  'settings.openchamber.tunnel.state.revoked': 'Revoked',
  'settings.openchamber.tunnel.state.inactive': 'Inactive',
  'settings.openchamber.tunnel.state.noExpiry': 'No expiry',
  'settings.openchamber.tunnel.state.never': 'Never',
  'settings.openchamber.tunnel.state.tunnelReady': 'Tunnel ready',
  'settings.openchamber.tunnel.session.redeemedAt': 'Redeemed {time}',
  'settings.openchamber.tunnel.session.expiresIn': 'Expires in {remaining}',
  'settings.openchamber.tunnel.session.inactiveWithReason': 'Inactive ({reason})',
  'settings.openchamber.tunnel.error.invalidConfigExtension': 'Config file must use .yml, .yaml, or .json extension.',
  'settings.openchamber.tunnel.tooltip.tokensSavedPath': 'Tokens are saved in ~/.config/openchamber/cloudflare-managed-remote-tunnels.json.',
  'settings.openchamber.tunnel.empty.noManagedRemoteTunnels': 'No managed remote tunnels saved yet.',
  'settings.openchamber.tunnel.toast.checkAvailabilityFailed': 'Failed to check tunnel availability',
  'settings.openchamber.tunnel.toast.saveSettingsFailed': 'Failed to save tunnel settings',
  'settings.openchamber.tunnel.toast.saveTtlFailed': 'Failed to save tunnel TTL settings',
  'settings.openchamber.tunnel.toast.saveTokenFailed': 'Failed to save managed remote tunnel token',
  'settings.openchamber.tunnel.toast.selectOrAddManagedRemoteFirst': 'Select or add a managed remote tunnel first',
  'settings.openchamber.tunnel.toast.managedRemoteTokenRequiredBeforeStarting': 'Managed remote tunnel token is required before starting',
  'settings.openchamber.tunnel.toast.addManagedRemoteTokenBeforeStarting': 'Add a managed remote tunnel token before starting',
  'settings.openchamber.tunnel.toast.startFailed': 'Failed to start tunnel',
  'settings.openchamber.tunnel.toast.startedButNoPublicUrl': 'Tunnel started but no public URL was returned',
  'settings.openchamber.tunnel.toast.replacedTunnelSingleSingle': 'Replaced previous tunnel: revoked 1 link, invalidated 1 session.',
  'settings.openchamber.tunnel.toast.replacedTunnelSingleManySessions': 'Replaced previous tunnel: revoked 1 link, invalidated {invalidatedSessionCount} sessions.',
  'settings.openchamber.tunnel.toast.replacedTunnelManyLinksSingleSession': 'Replaced previous tunnel: revoked {revokedBootstrapCount} links, invalidated 1 session.',
  'settings.openchamber.tunnel.toast.replacedTunnelManyMany': 'Replaced previous tunnel: revoked {revokedBootstrapCount} links, invalidated {invalidatedSessionCount} sessions.',
  'settings.openchamber.tunnel.toast.linkReady': 'Tunnel link ready',
  'settings.openchamber.tunnel.toast.stopped': 'Tunnel stopped',
  'settings.openchamber.tunnel.toast.stopFailed': 'Failed to stop tunnel',
  'settings.openchamber.tunnel.toast.connectLinkCopied': 'Connect link copied',
  'settings.openchamber.tunnel.toast.copyUrlFailed': 'Failed to copy URL',
  'settings.openchamber.tunnel.toast.saveSelectedManagedRemoteFailed': 'Failed to save selected managed remote tunnel',
  'settings.openchamber.tunnel.toast.tunnelNameRequired': 'Tunnel name is required',
  'settings.openchamber.tunnel.toast.managedRemoteHostnameRequired': 'Managed remote tunnel hostname is required',
  'settings.openchamber.tunnel.toast.managedRemoteTokenRequired': 'Managed remote tunnel token is required',
  'settings.openchamber.tunnel.toast.hostnameAlreadyExists': 'This hostname already exists',
  'settings.openchamber.tunnel.toast.managedRemoteSaved': 'Managed remote tunnel saved',
  'settings.openchamber.tunnel.toast.managedRemoteRemoved': 'Managed remote tunnel removed',
  'settings.magicPrompts.sidebar.title': 'Magic Prompts',
  'settings.magicPrompts.sidebar.description': 'Select a prompt template to edit.',
  'settings.magicPrompts.sidebar.group.git': 'Git',
  'settings.magicPrompts.sidebar.group.github': 'GitHub',
  'settings.magicPrompts.sidebar.group.planning': 'Planning',
  'settings.magicPrompts.sidebar.group.session': 'Session',
  'settings.magicPrompts.sidebar.item.gitCommitGenerate': 'Commit Generation',
  'settings.magicPrompts.sidebar.item.gitPrGenerate': 'PR Generation',
  'settings.magicPrompts.sidebar.item.gitConflictResolve': 'Merge/Rebase Conflict Resolution',
  'settings.magicPrompts.sidebar.item.gitCherrypickConflictResolve': 'Cherry-pick Conflict Resolution',
  'settings.magicPrompts.sidebar.item.githubPrReview': 'PR Review',
  'settings.magicPrompts.sidebar.item.githubIssueReview': 'Issue Review',
  'settings.magicPrompts.sidebar.item.githubPrFailedChecksReview': 'PR Failed Checks Review',
  'settings.magicPrompts.sidebar.item.githubPrCommentsReview': 'PR Comments Review',
  'settings.magicPrompts.sidebar.item.githubSinglePrCommentReview': 'Single PR Comment Review',
  'settings.magicPrompts.sidebar.item.planTodo': 'Todo Planning',
  'settings.magicPrompts.sidebar.item.planImprove': 'Improve Plan',
  'settings.magicPrompts.sidebar.item.planImplement': 'Implement Plan',
  'settings.magicPrompts.sidebar.item.sessionSummary': 'Session Summary',
  'settings.magicPrompts.sidebar.item.sessionWorkspaceReview': 'Workspace Review',
  'settings.magicPrompts.sidebar.item.sessionFusion': 'Fusion',
  'settings.remoteInstances.sidebar.title': 'Remote Instances',
  'settings.remoteInstances.sidebar.total': 'Total {count}',
  'settings.remoteInstances.sidebar.newSshInstanceName': 'New SSH Instance',
  'settings.remoteInstances.sidebar.actions.addSshInstance': 'Add SSH instance',
  'settings.remoteInstances.sidebar.actions.connect': 'Connect',
  'settings.remoteInstances.sidebar.actions.disconnect': 'Disconnect',
  'settings.remoteInstances.sidebar.actions.retry': 'Retry',
  'settings.remoteInstances.sidebar.actions.remove': 'Remove',
  'settings.remoteInstances.sidebar.confirm.localPortInUseRetry': 'Local port is already in use. Pick a random free local port and retry?',
  'settings.remoteInstances.sidebar.toast.createFailed': 'Failed to create SSH instance',
  'settings.remoteInstances.sidebar.toast.retriedWithRandomPort': 'Retried with a random local port',
  'settings.remoteInstances.sidebar.toast.connectFailed': 'Failed to connect instance',
  'settings.remoteInstances.sidebar.toast.disconnectFailed': 'Failed to disconnect instance',
  'settings.remoteInstances.sidebar.toast.retryFailed': 'Failed to retry connection',
  'settings.remoteInstances.sidebar.toast.removeFailed': 'Failed to remove instance',
  'settings.remoteInstances.sidebar.phase.ready': 'Ready',
  'settings.remoteInstances.sidebar.phase.error': 'Error',
  'settings.remoteInstances.sidebar.phase.reconnect': 'Reconnect',
  'settings.remoteInstances.sidebar.phase.installing': 'Installing',
  'settings.remoteInstances.sidebar.phase.updating': 'Updating',
  'settings.remoteInstances.sidebar.phase.forwarding': 'Forwarding',
  'settings.remoteInstances.sidebar.phase.starting': 'Starting',
  'settings.remoteInstances.sidebar.phase.connecting': 'Connecting',
  'settings.remoteInstances.sidebar.phase.idle': 'Idle',
  'settings.remoteInstances.page.section.instance': 'Instance',
  'settings.remoteInstances.page.section.instanceDescription': 'Core SSH settings.',
  'settings.remoteInstances.page.field.mode': 'Mode',
  'settings.remoteInstances.page.field.modeHint': 'Managed installs/updates and starts OpenChamber remotely. External assumes it is already running.',
  'settings.remoteInstances.page.field.modePlaceholder': 'Select mode',
  'settings.remoteInstances.page.field.modeManaged': 'Managed (auto start)',
  'settings.remoteInstances.page.field.modeExternal': 'External (already running)',
  'settings.remoteInstances.page.field.preferredRemotePort': 'Preferred remote port',
  'settings.remoteInstances.page.field.preferredRemotePortHint': 'Port OpenChamber should use on the remote host. Leave empty to let the runtime choose.',
  'settings.remoteInstances.page.field.keepServerRunning': 'Keep server running',
  'settings.remoteInstances.page.field.keepServerRunningHint': 'If enabled, OpenChamber daemon is left running remotely when you disconnect.',
  'settings.remoteInstances.page.field.bindHost': 'Bind host',
  'settings.remoteInstances.page.field.bindHostHint': 'Network interface for the main local URL. Use 127.0.0.1/localhost for local-only access.',
  'settings.remoteInstances.page.field.preferredLocalPort': 'Preferred local port',
  'settings.remoteInstances.page.field.preferredLocalPortHint': 'Preferred local port for the main OpenChamber tunnel. Leave empty for auto-select.',
  'settings.remoteInstances.page.field.forwardType': 'Forward type',
  'settings.remoteInstances.page.field.localHostPlaceholder': '127.0.0.1',
  'settings.remoteInstances.page.field.remoteHostPlaceholder': '127.0.0.1',
  'settings.remoteInstances.page.field.auto': 'Auto',
  'settings.remoteInstances.page.confirm.bindAllInterfaces': 'Binding to 0.0.0.0 exposes forwarded ports to your local network. Continue?',
  'settings.remoteInstances.page.preview.localSocks5': '(local SOCKS5)',
  'settings.remoteInstances.page.preview.local': '(local)',
  'settings.remoteInstances.page.preview.remote': '(remote)',
  'settings.remoteInstances.page.toast.openLocalEndpointFailed': 'Failed to open local endpoint',
  'settings.remoteInstances.page.toast.localUrlCopied': 'Local URL copied',
  'settings.remoteInstances.page.actions.copyLocalUrl': 'Copy local URL',
  'settings.remoteInstances.page.actions.open': 'Open',
  'settings.remoteInstances.page.logsDialog.selectedInstanceFallback': 'Selected instance',
  'settings.remoteInstances.page.patternDialog.descriptionWithHost': '{host} requires a concrete destination.',
  'settings.remoteInstances.page.patternDialog.description': 'Enter destination.',
  'settings.common.actions.cancel': 'Cancel',
  'settings.common.actions.create': 'Create',
  'settings.common.actions.delete': 'Delete',
  'settings.common.actions.reset': 'Reset',
  'settings.common.actions.rename': 'Rename',
  'settings.common.actions.duplicate': 'Duplicate',
  'settings.common.actions.import': 'Import',
  'settings.common.actions.copyAll': 'Copy all',
  'settings.common.actions.clear': 'Clear',
  'settings.common.actions.saving': 'Saving...',
  'settings.common.actions.saveChanges': 'Save Changes',
  'settings.common.scope.global': 'Global',
  'settings.common.scope.project': 'Project',
  'settings.common.field.description': 'Description',
  'settings.common.badge.new': 'New',
  'settings.common.badge.modified': 'Modified',
  'settings.common.permission.allow': 'Allow',
  'settings.common.permission.ask': 'Ask',
  'settings.common.permission.deny': 'Deny',
  'settings.common.state.comingSoon': 'Coming soon...',
  'settings.projects.actions.title': 'Actions',
  'settings.projects.actions.description': 'Per-project commands shown in header next to project name.',
  'settings.projects.actions.validation.fillNameAndCommand': 'Fill action name and command before saving.',
  'settings.projects.actions.state.loading': 'Loading...',
  'settings.projects.actions.state.empty': 'No actions configured yet.',
  'settings.projects.actions.state.untitled': 'Untitled action',
  'settings.projects.actions.state.noDesktopSshForwards': 'No enabled local SSH forwards available.',
  'settings.projects.actions.field.selectIconAria': 'Select icon',
  'settings.projects.actions.field.iconAria': 'Icon {icon}',
  'settings.projects.actions.field.actionNamePlaceholder': 'Action name',
  'settings.projects.actions.field.command': 'Command',
  'settings.projects.actions.field.commandPlaceholder': 'e.g. bun run lint',
  'settings.projects.actions.field.autoOpenUrl': 'Auto-open URL',
  'settings.projects.actions.field.autoOpenUrlForAria': 'Auto-open URL for {title}',
  'settings.projects.actions.field.autoOpenUrlDescription': 'Open URL from output or custom URL below',
  'settings.projects.actions.field.overrideUrlPlaceholder': 'Override URL (optional)',
  'settings.projects.actions.field.overrideUrlTooltip': 'If this field is filled, custom URL is used. If empty, app opens best URL from output.',
  'settings.projects.actions.field.desktopSshForward': 'Desktop SSH forward',
  'settings.projects.actions.field.useOutputManualUrl': 'Use output/manual URL',
  'settings.projects.actions.actions.add': 'Add action',
  'settings.projects.actions.actions.save': 'Save Actions',
  'settings.projects.actions.toast.saveFailed': 'Failed to save actions',
  'settings.projects.actions.toast.saved': 'Project actions saved',
  'settings.openchamber.about.title': 'About OpenChamber',
  'settings.openchamber.about.field.version': 'Version',
  'settings.openchamber.about.state.checking': 'Checking...',
  'settings.openchamber.about.state.upToDate': 'Up to date',
  'settings.openchamber.about.actions.checkUpdates': 'Check updates',
  'settings.openchamber.about.actions.update': 'Update',
  'settings.openchamber.about.actions.updateToVersion': 'Update to {version}',
  'settings.openchamber.about.actions.checkForUpdates': 'Check for updates',
  'settings.openchamber.about.toast.latestVersion': 'You are on the latest version',
  'settings.agents.sidebar.title': 'Agents',
  'settings.agents.sidebar.total': 'Total {count}',
  'settings.agents.sidebar.empty.title': 'No agents configured',
  'settings.agents.sidebar.empty.description': 'Use the + button above to create one',
  'settings.agents.sidebar.section.builtIn': 'Built-in Agents',
  'settings.agents.sidebar.section.custom': 'Custom Agents',
  'settings.agents.sidebar.badge.system': 'system',
  'settings.agents.sidebar.dialog.deleteTitle': 'Delete Agent',
  'settings.agents.sidebar.dialog.resetTitle': 'Reset Agent',
  'settings.agents.sidebar.dialog.deleteDescription': 'Are you sure you want to delete agent "{name}"?',
  'settings.agents.sidebar.dialog.resetDescription': 'Are you sure you want to reset agent "{name}" to its default configuration?',
  'settings.agents.sidebar.renameDialog.title': 'Rename Agent',
  'settings.agents.sidebar.renameDialog.description': 'Enter a new name for the agent "@{name}"',
  'settings.agents.sidebar.renameDialog.placeholder': 'New agent name...',
  'settings.agents.sidebar.toast.builtInCannotDelete': 'Built-in agents cannot be deleted',
  'settings.agents.sidebar.toast.agentDeleted': 'Agent "{name}" deleted successfully',
  'settings.agents.sidebar.toast.agentReset': 'Agent "{name}" reset to default',
  'settings.agents.sidebar.toast.deleteFailed': 'Failed to delete agent',
  'settings.agents.sidebar.toast.resetFailed': 'Failed to reset agent',
  'settings.agents.sidebar.toast.agentNameRequired': 'Agent name is required',
  'settings.agents.sidebar.toast.agentExists': 'An agent with this name already exists',
  'settings.agents.sidebar.toast.removeOldAfterRenameFailed': 'Failed to remove old agent after rename',
  'settings.agents.sidebar.toast.renameFailed': 'Failed to rename agent',
  'settings.agents.page.toast.permissionNameRequired': 'Permission name is required',
  'settings.agents.page.toast.created': 'Agent created successfully',
  'settings.agents.page.toast.updated': 'Agent updated successfully',
  'settings.agents.page.toast.createFailed': 'Failed to create agent',
  'settings.agents.page.toast.updateFailed': 'Failed to update agent',
  'settings.agents.page.toast.saveUnexpectedError': 'An error occurred while saving',
  'settings.agents.page.empty.title': 'Select an agent from the sidebar',
  'settings.agents.page.empty.description': 'or create a new one',
  'settings.agents.page.title.new': 'New Agent',
  'settings.agents.page.subtitle.new': 'Configure a new assistant persona',
  'settings.agents.page.subtitle.edit': 'Edit agent settings',
  'settings.agents.page.section.identityRole': 'Identity & Role',
  'settings.agents.page.section.modelParameters': 'Model & Parameters',
  'settings.agents.page.section.systemPrompt': 'System Prompt',
  'settings.agents.page.section.toolPermissions': 'Tool Permissions',
  'settings.agents.page.field.agentName': 'Agent Name',
  'settings.agents.page.field.agentNamePlaceholder': 'agent-name',
  'settings.agents.page.field.scopePlaceholder': 'Scope',
  'settings.agents.page.field.descriptionPlaceholder': 'What does this agent do?',
  'settings.agents.page.field.mode': 'Mode',
  'settings.agents.page.field.modeTooltip': 'Primary vs Subagent visibility',
  'settings.agents.page.field.overrideModel': 'Override Model',
  'settings.agents.page.field.temperature': 'Temperature',
  'settings.agents.page.field.temperatureTooltip': 'Controls randomness. Higher = creative, Lower = focused.',
  'settings.agents.page.field.temperatureRange': '0.0 to 2.0',
  'settings.agents.page.field.clearTemperatureAria': 'Clear temperature override',
  'settings.agents.page.field.topP': 'Top P',
  'settings.agents.page.field.topPTooltip': 'Nucleus sampling diversity. Lower = likely tokens only.',
  'settings.agents.page.field.topPRange': '0.0 to 1.0',
  'settings.agents.page.field.clearTopPAria': 'Clear top p override',
  'settings.agents.page.field.systemPromptPlaceholder': 'You are an expert coding assistant...',
  'settings.agents.page.mode.primary': 'Primary',
  'settings.agents.page.mode.subagent': 'Subagent',
  'settings.agents.page.mode.all': 'All',
  'settings.agents.page.permissions.defaultLabel': 'Default',
  'settings.agents.page.permissions.hideEditor': 'Hide Editor',
  'settings.agents.page.permissions.advancedEditor': 'Advanced Editor',
  'settings.agents.page.permissions.globalSummary': 'Global: {summary}',
  'settings.agents.page.permissions.rulesSummary': 'Rules: {summary}',
  'settings.agents.page.permissions.globalDefault': 'Global Default',
  'settings.agents.page.permissions.pattern': 'Pattern',
  'settings.agents.page.permissions.addCustomRule': 'Add Custom Rule',
  'settings.agents.page.permissions.permissionPlaceholder': 'Permission...',
  'settings.agents.page.permissions.patternPlaceholder': 'Pattern (e.g. *)',
  'settings.page.behavior.title': 'Behavior',
  'settings.behavior.page.title': 'Behavior',
  'settings.behavior.page.warning.title': 'Global rules are combined with project rules',
  'settings.behavior.page.warning.description': 'Changes made here update {path}. OpenCode also includes any project-level AGENTS.md rules when they exist.',
  'settings.behavior.page.section.systemPrompt': 'Global AGENTS.md',
  'settings.behavior.page.field.systemPromptPlaceholder': 'You are a helpful AI assistant...\n\nUse this space to define absolute rules for how the AI should behave across all sessions and providers.',
  'settings.behavior.page.section.responseStyle': 'Response style',
  'settings.behavior.page.responseStyle.tooltip': 'When enabled, these instructions guide how the assistant responds in each new conversation. They are sent with your first message and do not change your global AGENTS.md rules.',
  'settings.behavior.page.responseStyle.enableAria': 'Enable response style instructions',
  'settings.behavior.page.responseStyle.enable': 'Add response style instructions to new conversations',
  'settings.behavior.page.responseStyle.preset': 'Preset',
  'settings.behavior.page.responseStyle.option.concise': 'Concise',
  'settings.behavior.page.responseStyle.option.detailed': 'Detailed',
  'settings.behavior.page.responseStyle.option.mentor': 'Mentor',
  'settings.behavior.page.responseStyle.option.pushback': 'Pushback',
  'settings.behavior.page.responseStyle.option.noFiller': 'No filler',
  'settings.behavior.page.responseStyle.option.matchEnergy': 'Match my energy',
  'settings.behavior.page.responseStyle.option.warmPeer': 'Warm peer',
  'settings.behavior.page.responseStyle.option.custom': 'Custom',
  'settings.behavior.page.responseStyle.customPlaceholder': 'Write the instruction to add to the first message...',
  'settings.behavior.page.toast.saved': 'Behavior saved successfully',
  'settings.behavior.page.toast.saveFailed': 'Failed to save behavior',
  'settings.commands.sidebar.title': 'Commands',
  'settings.commands.sidebar.total': 'Total {count}',
  'settings.commands.sidebar.empty.title': 'No commands configured',
  'settings.commands.sidebar.empty.description': 'Use the + button above to create one',
  'settings.commands.sidebar.section.builtIn': 'Built-in Commands',
  'settings.commands.sidebar.section.custom': 'Custom Commands',
  'settings.commands.sidebar.dialog.deleteTitle': 'Delete Command',
  'settings.commands.sidebar.dialog.resetTitle': 'Reset Command',
  'settings.commands.sidebar.dialog.deleteDescription': 'Are you sure you want to delete command "{name}"?',
  'settings.commands.sidebar.dialog.resetDescription': 'Are you sure you want to reset command "{name}" to its default configuration?',
  'settings.commands.sidebar.renameDialog.title': 'Rename Command',
  'settings.commands.sidebar.renameDialog.description': 'Enter a new name for the command "/{name}"',
  'settings.commands.sidebar.renameDialog.placeholder': 'New command name...',
  'settings.commands.sidebar.toast.builtInCannotDelete': 'Built-in commands cannot be deleted',
  'settings.commands.sidebar.toast.commandDeleted': 'Command "{name}" deleted successfully',
  'settings.commands.sidebar.toast.commandReset': 'Command "{name}" reset to default',
  'settings.commands.sidebar.toast.deleteFailed': 'Failed to delete command',
  'settings.commands.sidebar.toast.resetFailed': 'Failed to reset command',
  'settings.commands.sidebar.toast.commandNameRequired': 'Command name is required',
  'settings.commands.sidebar.toast.commandExists': 'A command with this name already exists',
  'settings.commands.sidebar.toast.removeOldAfterRenameFailed': 'Failed to remove old command after rename',
  'settings.commands.sidebar.toast.renameFailed': 'Failed to rename command',
  'settings.commands.page.toast.templateRequired': 'Command template is required',
  'settings.commands.page.toast.created': 'Command created successfully',
  'settings.commands.page.toast.updated': 'Command updated successfully',
  'settings.commands.page.toast.createFailed': 'Failed to create command',
  'settings.commands.page.toast.updateFailed': 'Failed to update command',
  'settings.commands.page.toast.saveUnexpectedError': 'An error occurred while saving',
  'settings.commands.page.empty.title': 'Select a command from the sidebar',
  'settings.commands.page.empty.description': 'or create a new one',
  'settings.commands.page.title.new': 'New Command',
  'settings.commands.page.subtitle.new': 'Configure a new slash command',
  'settings.commands.page.subtitle.edit': 'Edit command settings',
  'settings.commands.page.section.identity': 'Identity',
  'settings.commands.page.section.executionContext': 'Execution Context',
  'settings.commands.page.section.template': 'Command Template',
  'settings.commands.page.field.commandName': 'Command Name',
  'settings.commands.page.field.commandNamePlaceholder': 'command-name',
  'settings.commands.page.field.descriptionPlaceholder': 'What does this command do?',
  'settings.commands.page.field.overrideAgent': 'Override Agent',
  'settings.commands.page.field.templatePlaceholder': 'Your command template here...\n\nUse $ARGUMENTS to reference user input.\nUse !`shell command` to inject shell output.\nUse @filename to include file contents.',
  'settings.commands.page.templateHint.userInput': 'user input',
  'settings.commands.page.templateHint.shellOutput': 'shell output',
  'settings.commands.page.templateHint.fileContents': 'file contents',
  'settings.commands.agentSelector.title': 'Select agent',
  'settings.commands.agentSelector.notSelected': 'Not selected',
  'settings.commands.agentSelector.selectAgentPlaceholder': 'Select agent...',
  'settings.gitIdentities.page.section.title': 'Identities',
  'settings.gitIdentities.page.empty.title': 'No identities configured',
  'settings.gitIdentities.page.empty.description': 'Create one to manage Git author settings per project',
  'settings.gitIdentities.page.discoveredCredentials.title': 'Found in ~/.git-credentials',
  'settings.gitIdentities.page.badge.default': 'default',
  'settings.gitIdentities.page.actions.setAsDefault': 'Set as default',
  'settings.gitIdentities.page.actions.unsetDefault': 'Unset default',
  'settings.gitIdentities.page.actions.import': 'Import',
  'settings.gitIdentities.page.toast.updateDefaultFailed': 'Failed to update default identity',
  'settings.gitIdentities.page.toast.defaultUpdated': 'Default identity updated',
  'settings.gitIdentities.page.toast.defaultUnset': 'Default identity unset',
  'settings.gitIdentities.page.toast.profileDeleted': 'Profile "{name}" deleted',
  'settings.gitIdentities.page.toast.deleteProfileFailed': 'Failed to delete profile',
  'settings.gitIdentities.page.deleteDialog.title': 'Delete Profile',
  'settings.gitIdentities.page.deleteDialog.description': 'Are you sure you want to delete "{name}"?',
  'settings.gitIdentities.editor.title.importCredential': 'Import Credential',
  'settings.gitIdentities.editor.title.newIdentity': 'New Identity',
  'settings.gitIdentities.editor.title.globalIdentity': 'Global Identity',
  'settings.gitIdentities.editor.title.editIdentity': 'Edit Identity',
  'settings.gitIdentities.editor.description.globalReadOnly': 'System-wide Git identity (read-only)',
  'settings.gitIdentities.editor.description.newProfile': 'Create a new Git identity profile',
  'settings.gitIdentities.editor.description.editProfile': 'Edit identity profile settings',
  'settings.gitIdentities.editor.field.profileName': 'Profile Name',
  'settings.gitIdentities.editor.field.profileNamePlaceholder': 'Work Profile, Personal, etc.',
  'settings.gitIdentities.editor.field.color': 'Color',
  'settings.gitIdentities.editor.field.icon': 'Icon',
  'settings.gitIdentities.editor.field.userName': 'User Name',
  'settings.gitIdentities.editor.field.userNameTooltip': 'The name that will appear in Git commit messages.',
  'settings.gitIdentities.editor.field.userNamePlaceholder': 'John Doe',
  'settings.gitIdentities.editor.field.emailAddress': 'Email Address',
  'settings.gitIdentities.editor.field.emailAddressTooltip': 'Should match your email in GitHub/GitLab for proper attribution.',
  'settings.gitIdentities.editor.field.emailAddressPlaceholder': 'john@example.com',
  'settings.gitIdentities.editor.field.authMethod': 'Auth Method',
  'settings.gitIdentities.editor.field.authToken': 'Token',
  'settings.gitIdentities.editor.field.sshKeyPath': 'SSH Key Path',
  'settings.gitIdentities.editor.field.sshKeyPathTooltip': 'Optional path to private key. e.g. ~/.ssh/id_ed25519',
  'settings.gitIdentities.editor.field.sshKeyPathPlaceholder': '~/.ssh/id_ed25519',
  'settings.gitIdentities.editor.field.host': 'Host',
  'settings.gitIdentities.editor.field.hostTooltip': 'Token will be read from ~/.git-credentials for this host.',
  'settings.gitIdentities.editor.field.hostPlaceholder': 'github.com',
  'settings.gitIdentities.editor.actions.close': 'Close',
  'settings.gitIdentities.editor.actions.create': 'Create',
  'settings.gitIdentities.editor.actions.save': 'Save',
  'settings.gitIdentities.editor.toast.userNameEmailRequired': 'User name and email are required',
  'settings.gitIdentities.editor.toast.hostRequiredForToken': 'Host is required for token-based authentication',
  'settings.gitIdentities.editor.toast.profileCreated': 'Profile created',
  'settings.gitIdentities.editor.toast.profileUpdated': 'Profile updated',
  'settings.gitIdentities.editor.toast.createProfileFailed': 'Failed to create profile',
  'settings.gitIdentities.editor.toast.updateProfileFailed': 'Failed to update profile',
  'settings.gitIdentities.editor.toast.saveUnexpectedError': 'An error occurred while saving',
  'settings.gitIdentities.editor.toast.profileDeleted': 'Profile deleted',
  'settings.gitIdentities.editor.toast.deleteProfileFailed': 'Failed to delete profile',
  'settings.gitIdentities.editor.toast.deleteUnexpectedError': 'An error occurred while deleting',
  'settings.skills.sidebar.title': 'Skills',
  'settings.skills.sidebar.total': 'Total {count}',
  'settings.skills.sidebar.section.project': 'Project Skills',
  'settings.skills.sidebar.section.user': 'User Skills',
  'settings.skills.sidebar.empty.title': 'No skills configured',
  'settings.skills.sidebar.empty.description': 'Use the + button above to create one',
  'settings.skills.sidebar.badge.claude': 'claude',
  'settings.skills.sidebar.badge.agents': 'agents',
  'settings.skills.sidebar.badge.opencode': 'opencode',
  'settings.skills.sidebar.toast.skillDeleted': 'Skill "{name}" deleted successfully',
  'settings.skills.sidebar.toast.deleteSkillFailed': 'Failed to delete skill',
  'settings.skills.sidebar.toast.duplicateLoadFailed': 'Failed to load skill details for duplication',
  'settings.skills.sidebar.toast.renameLoadFailed': 'Failed to load skill details',
  'settings.skills.sidebar.toast.removeOldAfterRenameFailed': 'Failed to remove old skill after rename',
  'settings.skills.sidebar.toast.renameFailed': 'Failed to rename skill',
  'settings.skills.sidebar.deleteDialog.title': 'Delete Skill',
  'settings.skills.sidebar.deleteDialog.description': 'Are you sure you want to delete skill "{name}"?',
  'settings.skills.sidebar.renameDialog.title': 'Rename Skill',
  'settings.skills.sidebar.renameDialog.description': 'Enter a new name for the skill "{name}"',
  'settings.skills.sidebar.renameDialog.placeholder': 'New skill name...',
  'settings.skills.page.title.newSkill': 'New Skill',
  'settings.skills.page.subtitle.newSkill': 'Configure a new skill',
  'settings.skills.page.subtitle.skillLocation': '{location} skill',
  'settings.skills.page.section.basicInformation': 'Basic Information',
  'settings.skills.page.section.instructions': 'Instructions',
  'settings.skills.page.section.supportingFiles': 'Supporting Files',
  'settings.skills.page.field.skillNameLocation': 'Skill Name & Location',
  'settings.skills.page.field.skillNameHint': 'Lowercase, numbers, hyphens',
  'settings.skills.page.field.skillNamePlaceholder': 'skill-name',
  'settings.skills.page.field.descriptionHint': 'The agent uses this to decide when to load the skill',
  'settings.skills.page.field.descriptionPlaceholder': 'Brief description of what this skill does...',
  'settings.skills.page.field.instructionsPlaceholder': 'Step-by-step instructions, guidelines, or reference content...',
  'settings.skills.page.badge.claudeCompatible': 'Claude-compatible',
  'settings.skills.page.badge.pending': 'pending',
  'settings.skills.page.actions.addFile': 'Add File',
  'settings.skills.page.actions.createSkill': 'Create Skill',
  'settings.skills.page.actions.createFile': 'Create File',
  'settings.skills.page.supportingFiles.empty': 'No supporting files. Use "Add File" to include reference materials.',
  'settings.skills.page.loading.details': 'Loading skill details...',
  'settings.skills.page.loading.fileContent': 'Loading file content...',
  'settings.skills.page.empty.title': 'Select a skill from the sidebar',
  'settings.skills.page.empty.description': 'or create a new one',
  'settings.skills.page.deleteFileDialog.title': 'Delete Supporting File',
  'settings.skills.page.deleteFileDialog.description': 'Are you sure you want to delete "{path}"?',
  'settings.skills.page.fileDialog.titleEdit': 'Edit Supporting File',
  'settings.skills.page.fileDialog.titleAdd': 'Add Supporting File',
  'settings.skills.page.fileDialog.descriptionEdit': 'Modify the file content',
  'settings.skills.page.fileDialog.descriptionAdd': 'Create a new file in the skill directory',
  'settings.skills.page.fileDialog.field.filePath': 'File Path',
  'settings.skills.page.fileDialog.field.filePathPlaceholder': 'example.md or docs/reference.txt',
  'settings.skills.page.fileDialog.field.filePathHint': 'Relative path within the skill directory. Subdirectories will be created automatically.',
  'settings.skills.page.fileDialog.field.content': 'Content',
  'settings.skills.page.fileDialog.field.contentPlaceholder': 'File content...',
  'settings.skills.page.toast.skillNameRequired': 'Skill name is required',
  'settings.skills.page.toast.invalidSkillName': 'Skill name must be 1-64 lowercase alphanumeric characters with hyphens, cannot start or end with hyphen',
  'settings.skills.page.toast.descriptionRequired': 'Description is required',
  'settings.skills.page.toast.skillExists': 'A skill with this name already exists',
  'settings.skills.page.toast.skillCreated': 'Skill created successfully',
  'settings.skills.page.toast.skillUpdated': 'Skill updated successfully',
  'settings.skills.page.toast.createSkillFailed': 'Failed to create skill',
  'settings.skills.page.toast.updateSkillFailed': 'Failed to update skill',
  'settings.skills.page.toast.saveUnexpectedError': 'An error occurred while saving',
  'settings.skills.page.toast.loadFileContentFailed': 'Failed to load file content',
  'settings.skills.page.toast.fileNameRequired': 'File name is required',
  'settings.skills.page.toast.fileExists': 'A file with this name already exists',
  'settings.skills.page.toast.noSkillSelected': 'No skill selected',
  'settings.skills.page.toast.fileAdded': 'File "{path}" added',
  'settings.skills.page.toast.fileCreated': 'File "{path}" created',
  'settings.skills.page.toast.fileUpdated': 'File "{path}" updated',
  'settings.skills.page.toast.fileRemoved': 'File "{path}" removed',
  'settings.skills.page.toast.fileDeleted': 'File "{path}" deleted',
  'settings.skills.page.toast.createFileFailed': 'Failed to create file',
  'settings.skills.page.toast.updateFileFailed': 'Failed to update file',
  'settings.skills.page.toast.deleteFileFailed': 'Failed to delete file',
  'settings.skills.location.option.userOpencode.label': 'User / OpenCode',
  'settings.skills.location.option.userOpencode.description': 'Global OpenCode config location',
  'settings.skills.location.option.projectOpencode.label': 'Project / OpenCode',
  'settings.skills.location.option.projectOpencode.description': 'Current project .opencode location',
  'settings.skills.location.option.userClaude.label': 'User / Claude',
  'settings.skills.location.option.userClaude.description': 'Global Claude skills location',
  'settings.skills.location.option.projectClaude.label': 'Project / Claude',
  'settings.skills.location.option.projectClaude.description': 'Current project .claude location',
  'settings.skills.location.option.userAgents.label': 'User / Agents',
  'settings.skills.location.option.userAgents.description': 'Global .agents compatibility location',
  'settings.skills.location.option.projectAgents.label': 'Project / Agents',
  'settings.skills.location.option.projectAgents.description': 'Current project .agents compatibility location',
  'settings.skills.catalog.shared.field.repository': 'Repository',
  'settings.skills.catalog.shared.field.repositoryPlaceholder': 'owner/repo or git@github.com:owner/repo.git',
  'settings.skills.catalog.shared.field.optionalSubpath': 'Optional subpath',
  'settings.skills.catalog.shared.field.subpathPlaceholder': 'e.g. skills',
  'settings.skills.catalog.shared.field.targetLocation': 'Target location',
  'settings.skills.catalog.shared.field.project': 'Project',
  'settings.skills.catalog.shared.field.noProjects': 'No projects available',
  'settings.skills.catalog.shared.field.chooseProjectPlaceholder': 'Choose project',
  'settings.skills.catalog.shared.field.searchSkillsPlaceholder': 'Search skills…',
  'settings.skills.catalog.shared.toast.repositoryRequired': 'Repository source is required',
  'settings.skills.catalog.shared.toast.privateRepoNotSupportedVsCode': 'Private repositories are not supported in VS Code yet',
  'settings.skills.catalog.shared.toast.foundSkills': 'Found {count} skill(s)',
  'settings.skills.catalog.shared.noDescription': 'No description provided',
  'settings.skills.catalog.shared.actions.scan': 'Scan',
  'settings.skills.catalog.shared.actions.scanning': 'Scanning...',
  'settings.skills.catalog.shared.actions.install': 'Install',
  'settings.skills.catalog.shared.actions.installing': 'Installing...',
  'settings.skills.catalog.shared.auth.title': 'Authentication required',
  'settings.skills.catalog.shared.auth.description': 'Select a Git identity (SSH key)',
  'settings.skills.catalog.shared.auth.chooseIdentity': 'Choose identity',
  'settings.skills.catalog.shared.auth.footerHint': 'Configure identities in Settings - Git Identities.',
  'settings.skills.catalog.shared.auth.footerHintArrow': 'Configure identities in Settings → Git Identities.',
  'settings.skills.catalog.conflicts.title': 'Skills already exist',
  'settings.skills.catalog.conflicts.description': 'Some selected skills are already installed in this scope. Choose whether to skip or overwrite them.',
  'settings.skills.catalog.conflicts.count': '{count} conflict(s)',
  'settings.skills.catalog.conflicts.installedIn': 'Installed in {scope} / {source}',
  'settings.skills.catalog.conflicts.scope.user': 'user',
  'settings.skills.catalog.conflicts.scope.project': 'project',
  'settings.skills.catalog.conflicts.source.opencode': 'opencode',
  'settings.skills.catalog.conflicts.source.agents': 'agents',
  'settings.skills.catalog.conflicts.decision.skip': 'Skip',
  'settings.skills.catalog.conflicts.decision.overwrite': 'Overwrite',
  'settings.skills.catalog.conflicts.actions.skipAll': 'Skip all',
  'settings.skills.catalog.conflicts.actions.overwriteAll': 'Overwrite all',
  'settings.skills.catalog.conflicts.actions.continue': 'Continue',
  'settings.skills.catalog.installSkill.title': 'Install skill',
  'settings.skills.catalog.installSkill.descriptionPrefix': 'Install',
  'settings.skills.catalog.installSkill.descriptionSuffix': 'into one of four target locations.',
  'settings.skills.catalog.installSkill.field.destination': 'Destination',
  'settings.skills.catalog.installSkill.field.project': 'Project',
  'settings.skills.catalog.installSkill.field.noProjects': 'No projects available',
  'settings.skills.catalog.installSkill.field.chooseProjectPlaceholder': 'Choose project',
  'settings.skills.catalog.installSkill.actions.install': 'Install',
  'settings.skills.catalog.installSkill.actions.installing': 'Installing...',
  'settings.skills.catalog.installSkill.toast.installed': 'Skill installed successfully',
  'settings.skills.catalog.installSkill.toast.authRequired': 'Authentication required',
  'settings.skills.catalog.installSkill.toast.installFailed': 'Failed to install skill',
  'settings.skills.catalog.add.title': 'Add skills catalog',
  'settings.skills.catalog.add.descriptionPrefix': 'Add a Git repository as a new catalog source. OpenChamber will scan it for folders containing',
  'settings.skills.catalog.add.descriptionSuffix': '.',
  'settings.skills.catalog.add.field.catalogName': 'Catalog name',
  'settings.skills.catalog.add.field.catalogNamePlaceholder': 'e.g. Team Skills',
  'settings.skills.catalog.add.field.repository': 'Repository',
  'settings.skills.catalog.add.field.optionalSubpath': 'Optional subpath',
  'settings.skills.catalog.add.field.repositoryHint': 'Public repos work everywhere. Private repos require SSH identity (Desktop/Web only).',
  'settings.skills.catalog.add.scanResult': 'Scan result: {count} skill(s) found',
  'settings.skills.catalog.add.duplicateMessage': 'This catalog is already added.',
  'settings.skills.catalog.add.actions.addCatalog': 'Add catalog',
  'settings.skills.catalog.add.toast.repositoryRequired': 'Repository source is required',
  'settings.skills.catalog.add.toast.authenticationRequiredScan': 'Authentication required. Select a Git identity and scan again.',
  'settings.skills.catalog.add.toast.scanFailed': 'Failed to scan repository',
  'settings.skills.catalog.add.toast.noSkillsFound': 'No skills found in this repository',
  'settings.skills.catalog.add.toast.catalogNameRequired': 'Catalog name is required',
  'settings.skills.catalog.add.toast.scanBeforeAdd': 'Scan the repository before adding this catalog',
  'settings.skills.catalog.add.toast.catalogAlreadyExists': 'This catalog already exists',
  'settings.skills.catalog.add.toast.catalogAdded': 'Catalog added',
  'settings.skills.catalog.add.toast.saveFailed': 'Failed to save catalog',
  'settings.skills.catalog.installFromRepo.title': 'Install from Git repository',
  'settings.skills.catalog.installFromRepo.descriptionPrefix': 'Scan a repository for folders containing',
  'settings.skills.catalog.installFromRepo.descriptionSuffix': ', then install selected skills.',
  'settings.skills.catalog.installFromRepo.repositoryHintPrefix': 'For GitHub shorthand, you can add a subpath like',
  'settings.skills.catalog.installFromRepo.authDescription': 'Select a Git identity (SSH key) that can access this repository.',
  'settings.skills.catalog.installFromRepo.empty.noScanResultsTitle': 'No scan results yet',
  'settings.skills.catalog.installFromRepo.empty.noScanResultsDescription': 'Scan a repository to discover skills',
  'settings.skills.catalog.installFromRepo.actions.selectAll': 'Select all',
  'settings.skills.catalog.installFromRepo.actions.selectNone': 'Select none',
  'settings.skills.catalog.installFromRepo.actions.installSelected': 'Install selected',
  'settings.skills.catalog.installFromRepo.badge.installed': 'installed ({scope}/{source})',
  'settings.skills.catalog.installFromRepo.selectedCount': 'Selected: {selected} / {total}',
  'settings.skills.catalog.installFromRepo.toast.authenticationRequiredScan': 'Authentication required. Select a Git identity and try scanning again.',
  'settings.skills.catalog.installFromRepo.toast.authenticationRequiredInstall': 'Authentication required. Select a Git identity and try installing again.',
  'settings.skills.catalog.installFromRepo.toast.scanFailed': 'Failed to scan repository',
  'settings.skills.catalog.installFromRepo.toast.selectAtLeastOne': 'Select at least one skill to install',
  'settings.skills.catalog.installFromRepo.toast.installedCount': 'Installed {count} skill(s)',
  'settings.skills.catalog.installFromRepo.toast.installCompleted': 'Installation completed',
  'settings.skills.catalog.installFromRepo.toast.installFailed': 'Failed to install skills',
  'settings.skills.catalog.page.mode.manual': 'Manual',
  'settings.skills.catalog.page.mode.external': 'External',
  'settings.skills.catalog.page.title': 'Skills Catalog',
  'settings.skills.catalog.page.section.sourceRepository': 'Source Repository',
  'settings.skills.catalog.page.field.selectSourcePlaceholder': 'Select source',
  'settings.skills.catalog.page.actions.refreshTitle': 'Refresh',
  'settings.skills.catalog.page.actions.removeCatalogTitle': 'Remove Catalog',
  'settings.skills.catalog.page.actions.addCatalog': 'Add Catalog',
  'settings.skills.catalog.page.actions.removeCatalog': 'Remove Catalog',
  'settings.skills.catalog.page.actions.loadMoreSkills': 'Load More Skills',
  'settings.skills.catalog.page.loading.catalog': 'Loading...',
  'settings.skills.catalog.page.loading.skills': 'Loading skills...',
  'settings.skills.catalog.page.loading.more': 'Loading...',
  'settings.skills.catalog.page.foundCount': '{count} skill(s) found',
  'settings.skills.catalog.page.error.catalogTitle': 'Catalog error',
  'settings.skills.catalog.page.empty.noSkillsTitle': 'No skills found',
  'settings.skills.catalog.page.empty.noSkillsDescription': 'Try a different search or refresh the catalog',
  'settings.skills.catalog.page.badge.installed': 'installed ({scope})',
  'settings.skills.catalog.page.badge.notInstallable': 'not installable',
  'settings.skills.catalog.page.badge.unknown': 'unknown',
  'settings.skills.catalog.page.byOwnerPrefix': 'by',
  'settings.skills.catalog.page.removeDialog.title': 'Remove Catalog',
  'settings.skills.catalog.page.removeDialog.description': 'Are you sure you want to remove this catalog?',
  'settings.openchamber.passkeys.title': 'Passkeys',
  'settings.openchamber.passkeys.field.currentDevice': 'Current device',
  'settings.openchamber.passkeys.actions.add': 'Add passkey',
  'settings.openchamber.passkeys.actions.cancelSetup': 'Cancel passkey setup',
  'settings.openchamber.passkeys.actions.signOutEverywhere': 'Sign out everywhere',
  'settings.openchamber.passkeys.actions.signingOut': 'Signing out…',
  'settings.openchamber.passkeys.actions.removing': 'Removing…',
  'settings.openchamber.passkeys.state.uiPasswordRequired': 'Passkeys are available only when the UI password lock is enabled.',
  'settings.openchamber.passkeys.state.loading': 'Loading passkeys…',
  'settings.openchamber.passkeys.state.noneSaved': 'No passkeys saved for this host yet.',
  'settings.openchamber.passkeys.item.lastUsed': 'Last used {time}',
  'settings.openchamber.passkeys.item.added': 'Added {time}',
  'settings.openchamber.passkeys.time.neverUsed': 'Never used',
  'settings.openchamber.passkeys.toast.loadFailed': 'Could not load passkeys.',
  'settings.openchamber.passkeys.toast.enableUiPasswordFirst': 'Enable the UI password lock before adding passkeys.',
  'settings.openchamber.passkeys.toast.added': 'Passkey added',
  'settings.openchamber.passkeys.toast.setupCanceled': 'Passkey setup canceled',
  'settings.openchamber.passkeys.toast.addFailed': 'Could not add passkey.',
  'settings.openchamber.passkeys.toast.removed': 'Passkey removed',
  'settings.openchamber.passkeys.toast.removeFailed': 'Could not remove passkey.',
  'settings.openchamber.passkeys.toast.clearAuthFailed': 'Could not clear saved authentication.',
  'settings.openchamber.sessionRetention.title': 'Session Retention',
  'settings.openchamber.sessionRetention.tooltip': 'Automatically archive or delete inactive sessions based on last activity. Keeps the 5 most recent sessions.',
  'settings.openchamber.sessionRetention.field.enableAutoCleanupAria': 'Enable auto-cleanup',
  'settings.openchamber.sessionRetention.field.enableAutoCleanup': 'Enable Auto-Cleanup',
  'settings.openchamber.sessionRetention.field.retentionPeriod': 'Retention Period',
  'settings.openchamber.sessionRetention.field.retentionPeriodAria': 'Retention period in days',
  'settings.openchamber.sessionRetention.field.days': 'days',
  'settings.openchamber.sessionRetention.field.whenSessionsExpire': 'When sessions expire',
  'settings.openchamber.sessionRetention.actions.resetRetentionAria': 'Reset retention period',
  'settings.openchamber.sessionRetention.actions.runCleanupNow': 'Run cleanup now',
  'settings.openchamber.sessionRetention.actions.cleaningUp': 'Cleaning up...',
  'settings.openchamber.sessionRetention.action.archive': 'Archive',
  'settings.openchamber.sessionRetention.action.delete': 'Delete',
  'settings.openchamber.sessionRetention.manualCleanup.title': 'Manual Cleanup',
  'settings.openchamber.sessionRetention.manualCleanup.eligibleArchiveNow': 'Eligible for archiving right now: {count}',
  'settings.openchamber.sessionRetention.manualCleanup.eligibleDeleteNow': 'Eligible for deletion right now: {count}',
  'settings.openchamber.sessionRetention.toast.noneEligibleArchive': 'No sessions eligible for archiving',
  'settings.openchamber.sessionRetention.toast.noneEligibleDelete': 'No sessions eligible for deletion',
  'settings.openchamber.sessionRetention.toast.archivedCount': 'Archived {count} session(s)',
  'settings.openchamber.sessionRetention.toast.deletedCount': 'Deleted {count} session(s)',
  'settings.openchamber.sessionRetention.toast.failedArchiveCount': 'Failed to archive {count} session(s)',
  'settings.openchamber.sessionRetention.toast.failedDeleteCount': 'Failed to delete {count} session(s)',
  'settings.openchamber.desktopNetwork.title': 'Desktop Network Access',
  'settings.openchamber.desktopNetwork.field.allowLanAccessAria': 'Allow LAN access to desktop sidecar',
  'settings.openchamber.desktopNetwork.field.allowLanAccess': 'Let other devices on your local network open this app',
  'settings.openchamber.desktopNetwork.field.allowLanAccessDescription': 'Restarts the app so phones, tablets, and other computers on your Wi-Fi can open it.',
  'settings.openchamber.desktopNetwork.field.warning': 'Warning: while enabled, the app is reachable by anyone on the same local network.',
  'settings.openchamber.desktopNetwork.hint.openAfterRestart': 'After restart, open from another device: ',
  'settings.openchamber.desktopNetwork.hint.openNow': 'Open from another device: ',
  'settings.openchamber.desktopNetwork.actions.saveAndRestart': 'Save + Restart',
  'settings.openchamber.desktopNetwork.error.loadFailed': 'Failed to load desktop settings',
  'settings.openchamber.desktopNetwork.error.saveFailed': 'Failed to save desktop settings',
  'settings.openchamber.desktopNetwork.error.savedRestartFailed': 'Saved, but failed to restart app',
  'settings.openchamber.opencodeCli.title': 'OpenCode CLI',
  'settings.openchamber.opencodeCli.tooltipPrefix': 'Optional absolute path to the',
  'settings.openchamber.opencodeCli.tooltipSuffix': 'binary.',
  'settings.openchamber.opencodeCli.field.binaryPath': 'OpenCode Binary Path',
  'settings.openchamber.opencodeCli.field.binaryPathPlaceholder': '/Users/you/.bun/bin/opencode',
  'settings.openchamber.opencodeCli.field.showUpdateNotifications': 'Show OpenCode update notifications',
  'settings.openchamber.opencodeCli.field.showUpdateNotificationsAria': 'Show OpenCode update notifications',
  'settings.openchamber.opencodeCli.actions.browseAria': 'Browse for OpenCode binary path',
  'settings.openchamber.opencodeCli.actions.browse': 'Browse',
  'settings.openchamber.opencodeCli.actions.saveAndReload': 'Save + Reload',
  'settings.openchamber.opencodeCli.actions.restartingOpenCode': 'Restarting OpenCode…',
  'settings.openchamber.opencodeCli.dialog.selectBinaryTitle': 'Select opencode binary',
  'settings.openchamber.opencodeCli.tipPrefix': 'Tip: you can also use',
  'settings.openchamber.opencodeCli.tipMiddle': 'env var, but this setting persists in',
  'settings.mcp.sidebar.title': 'MCP Servers',
  'settings.mcp.sidebar.total': 'Total {count}',
  'settings.mcp.sidebar.actions.refreshStatusAria': 'Refresh MCP status',
  'settings.mcp.sidebar.actions.refreshStatusTitle': 'Refresh MCP status',
  'settings.mcp.sidebar.actions.addServerTitle': 'Add MCP server',
  'settings.mcp.sidebar.actions.deleting': 'Deleting…',
  'settings.mcp.sidebar.empty.title': 'No MCP servers configured',
  'settings.mcp.sidebar.empty.description': 'Use the + button above to add one',
  'settings.mcp.sidebar.group.projectServers': 'Project Servers',
  'settings.mcp.sidebar.group.userServers': 'User Servers',
  'settings.mcp.sidebar.serverType.localTitle': 'Local server',
  'settings.mcp.sidebar.serverType.remoteTitle': 'Remote server',
  'settings.mcp.sidebar.deleteDialog.title': 'Delete MCP Server',
  'settings.mcp.sidebar.deleteDialog.descriptionPrefix': 'Are you sure you want to delete "{name}"? This will remove it from',
  'settings.mcp.sidebar.toast.deleteFailed': 'Failed to delete MCP server',
  'settings.mcp.sidebar.toast.serverDeleted': 'MCP server "{name}" deleted',
  'settings.mcp.sidebar.toast.refreshListIfStale': 'Refresh the MCP list if the UI looks stale.',
  'settings.openchamber.keyboardShortcuts.title': 'Keyboard Shortcuts',
  'settings.openchamber.keyboardShortcuts.actions.resetAll': 'Reset All',
  'settings.openchamber.keyboardShortcuts.actions.overwrite': 'Overwrite',
  'settings.openchamber.keyboardShortcuts.tooltip': 'Capture a new key combo, save it, and bindings will update immediately.',
  'settings.openchamber.keyboardShortcuts.overwritePrompt': 'This combo is already used by another shortcut. Overwrite and clear that other mapping?',
  'settings.openchamber.keyboardShortcuts.field.pressKeys': 'Press keys...',
  'settings.openchamber.keyboardShortcuts.error.captureFirst': 'Capture a shortcut first.',
  'settings.openchamber.keyboardShortcuts.warning.riskyBrowserShortcut': 'This shortcut can conflict with browser defaults. It is still saved.',
  'settings.openchamber.keyboardShortcuts.action.open_go_to_line.label': 'Go to line (files editor)',
  'settings.openchamber.keyboardShortcuts.action.open_command_palette.label': 'Open command palette',
  'settings.openchamber.keyboardShortcuts.action.focus_input.label': 'Focus input',
  'settings.openchamber.keyboardShortcuts.action.open_settings.label': 'Open settings',
  'settings.openchamber.keyboardShortcuts.action.toggle_terminal.label': 'Toggle terminal dock',
  'settings.openchamber.keyboardShortcuts.action.toggle_terminal_expanded.label': 'Toggle terminal expanded',
  'settings.openchamber.keyboardShortcuts.action.toggle_sidebar.label': 'Toggle sidebar',
  'settings.openchamber.keyboardShortcuts.action.toggle_right_sidebar.label': 'Toggle right sidebar',
  'settings.openchamber.keyboardShortcuts.action.open_right_sidebar_git.label': 'Open right sidebar Git tab',
  'settings.openchamber.keyboardShortcuts.action.open_right_sidebar_files.label': 'Open right sidebar Files tab',
  'settings.openchamber.keyboardShortcuts.action.cycle_right_sidebar_tab.label': 'Cycle right sidebar tab',
  'settings.openchamber.keyboardShortcuts.action.new_chat.label': 'New session',
  'settings.openchamber.keyboardShortcuts.action.new_chat_worktree.label': 'New worktree draft',
  'settings.openchamber.keyboardShortcuts.action.new_mini_chat.label': 'New Mini Chat window',
  'settings.openchamber.keyboardShortcuts.action.open_help.label': 'Open keyboard shortcuts',
  'settings.openchamber.keyboardShortcuts.action.toggle_context_plan.label': 'Toggle plan context panel',
  'settings.openchamber.keyboardShortcuts.action.toggle_services_menu.label': 'Toggle services menu',
  'settings.openchamber.keyboardShortcuts.action.cycle_services_tab.label': 'Cycle services tab',
  'settings.openchamber.keyboardShortcuts.action.cycle_theme.label': 'Cycle theme',
  'settings.openchamber.keyboardShortcuts.action.cycle_agent.label': 'Cycle agent',
  'settings.openchamber.keyboardShortcuts.action.cycle_favorite_model_forward.label': 'Cycle favorite model forward',
  'settings.openchamber.keyboardShortcuts.action.cycle_favorite_model_backward.label': 'Cycle favorite model backward',
  'settings.openchamber.keyboardShortcuts.action.expand_input.label': 'Expand input',
  'settings.openchamber.keyboardShortcuts.action.open_timeline_dialog.label': 'Open conversation timeline',
  'settings.projects.sidebar.total': 'Total {count}',
  'settings.projects.sidebar.actions.addProject': 'Add project',
  'settings.projects.page.empty.noProjects': 'No projects available.',
  'settings.projects.page.title.default': 'Project Settings',
  'settings.projects.page.section.worktree': 'Worktree',
  'settings.projects.page.field.projectName': 'Project Name',
  'settings.projects.page.field.projectNamePlaceholder': 'Project name',
  'settings.projects.page.field.accentColor': 'Accent Color',
  'settings.projects.page.field.projectIcon': 'Project Icon',
  'settings.projects.page.field.projectIconBackgroundAria': 'Project icon background color',
  'settings.projects.page.field.clearIconBackgroundAria': 'Clear icon background',
  'settings.projects.page.field.clearBackground': 'Clear background',
  'settings.projects.page.field.none': 'None',
  'settings.projects.page.field.preview': 'Preview',
  'settings.projects.page.actions.uploadIcon': 'Upload Icon',
  'settings.projects.page.actions.uploading': 'Uploading...',
  'settings.projects.page.actions.discoverFavicon': 'Discover Favicon',
  'settings.projects.page.actions.discovering': 'Discovering...',
  'settings.projects.page.actions.removeProjectIcon': 'Remove Project Icon',
  'settings.projects.page.actions.removing': 'Removing...',
  'settings.projects.page.actions.undoRemove': 'Undo Remove',
  'settings.projects.page.toast.uploadIconFailed': 'Failed to upload project icon',
  'settings.projects.page.toast.iconUpdated': 'Project icon updated',
  'settings.projects.page.toast.removeIconFailed': 'Failed to remove project icon',
  'settings.projects.page.toast.iconRemoved': 'Project icon removed',
  'settings.projects.page.toast.discoverIconFailed': 'Failed to discover project icon',
  'settings.projects.page.toast.customIconAlreadySet': 'Custom icon already set for this project',
  'settings.projects.page.toast.iconDiscovered': 'Project icon discovered',
  'settings.usage.sidebar.title': 'Usage',
  'settings.usage.sidebar.total': 'Total {count}',
  'settings.usage.sidebar.actions.toggleAutoRefreshAria': 'Toggle auto refresh',
  'settings.usage.sidebar.actions.refreshAria': 'Refresh usage',
  'settings.usage.sidebar.actions.refreshTitle': 'Refresh usage',
  'settings.usage.sidebar.tooltip.autoRefresh': 'Auto-refresh usage data at set interval',
  'settings.usage.sidebar.field.intervalPlaceholder': 'Interval',
  'settings.usage.sidebar.field.display': 'Display',
  'settings.usage.sidebar.field.displayModePlaceholder': 'Display mode',
  'settings.usage.sidebar.field.displayModeUsage': 'Usage',
  'settings.usage.sidebar.field.displayModeRemaining': 'Quota remaining',
  'settings.usage.sidebar.status.notSet': 'Not set',
  'settings.usage.page.empty.selectProvider': 'Select a provider to view usage details.',
  'settings.usage.page.header.providerUsage': '{provider} Usage',
  'settings.usage.page.header.refreshing': 'Refreshing usage...',
  'settings.usage.page.header.lastUpdated': 'Last updated: {time}',
  'settings.usage.page.options.showInHeaderAria': 'Show in header menu',
  'settings.usage.page.options.showInHeader': 'Show in Header Menu',
  'settings.usage.page.options.showInHeaderTooltip': 'When enabled, this provider\'s usage will be visible in the quick access dropdown menu in the app header.',
  'settings.usage.page.state.noData': 'No usage data available yet.',
  'settings.usage.page.state.refreshFailedTitle': 'Failed to refresh usage data',
  'settings.usage.page.state.providerNotConfiguredTitle': 'Provider not configured',
  'settings.usage.page.state.providerNotConfiguredDescription': 'Add credentials in the Providers tab to enable usage tracking.',
  'settings.usage.page.section.modelQuotas': 'Model Quotas',
  'settings.usage.page.section.otherModels': 'Other Models',
  'settings.usage.page.state.noQuotaWindowsTitle': 'No quota windows reported',
  'settings.usage.page.state.noQuotaWindowsDescription': 'This provider does not currently report any rate limits or usage quotas.',
  'settings.usage.pace.status.onTrack': 'On track',
  'settings.usage.pace.status.slightlyFast': 'Slightly fast',
  'settings.usage.pace.status.tooFast': 'Too fast',
  'settings.usage.pace.status.usedUp': 'Used up',
  'settings.usage.pace.predictionTooltip': 'Predicted usage at window end based on current pace: {prediction}',
  'settings.usage.pace.wait': 'Wait {duration}',
  'settings.usage.pace.prediction': 'Pred: {prediction}',
  'settings.usage.pace.rate': 'Pace: {rate}',
  'settings.usage.pace.waitSeparator': ' · Wait ',
  'settings.usage.pace.predictionLabel': 'Pred: ',
  'settings.remoteInstances.page.title': 'Remote Instance',
  'settings.remoteInstances.page.description': 'Configure SSH connection, remote server, and forwarding settings.',
  'settings.remoteInstances.page.empty.selectInstance': 'Select an instance to view and edit its settings.',
  'settings.remoteInstances.page.empty.noExtraForwards': 'No extra port forwards configured.',
  'settings.remoteInstances.page.section.actions': 'Actions',
  'settings.remoteInstances.page.section.actionsDescription': 'Connect, reconnect, inspect logs, or remove this instance.',
  'settings.remoteInstances.page.section.remoteServer': 'Remote Server',
  'settings.remoteInstances.page.section.remoteServerDescription': 'How OpenChamber is managed and started on the remote host.',
  'settings.remoteInstances.page.section.mainTunnel': 'Main Tunnel',
  'settings.remoteInstances.page.section.mainTunnelDescription': 'Primary local endpoint for this remote instance.',
  'settings.remoteInstances.page.section.authentication': 'Authentication',
  'settings.remoteInstances.page.section.authenticationDescription': 'Optional credentials for SSH and the remote OpenChamber UI.',
  'settings.remoteInstances.page.section.portForwards': 'Port Forwards',
  'settings.remoteInstances.page.section.portForwardsDescription': 'Additional SSH forwards beyond the main tunnel.',
  'settings.remoteInstances.page.field.sshCommand': 'SSH command',
  'settings.remoteInstances.page.field.sshCommandPlaceholder': 'ssh user@host',
  'settings.remoteInstances.page.field.nickname': 'Nickname',
  'settings.remoteInstances.page.field.nicknamePlaceholder': 'My remote host',
  'settings.remoteInstances.page.field.connectionTimeoutSeconds': 'Connection timeout (seconds)',
  'settings.remoteInstances.page.field.installMethod': 'Install method',
  'settings.remoteInstances.page.field.installMethodHint': 'How OpenChamber is installed when running in managed mode.',
  'settings.remoteInstances.page.field.selectInstallMethodPlaceholder': 'Select install method',
  'settings.remoteInstances.page.field.installMethodDownloadRelease': 'Download release',
  'settings.remoteInstances.page.field.installMethodUploadBundle': 'Upload bundle',
  'settings.remoteInstances.page.field.selectBindHostPlaceholder': 'Select bind host',
  'settings.remoteInstances.page.field.sshPasswordOptional': 'SSH password (optional)',
  'settings.remoteInstances.page.field.sshPasswordPlaceholder': 'Enter SSH password',
  'settings.remoteInstances.page.field.uiPasswordOptional': 'UI password (optional)',
  'settings.remoteInstances.page.field.uiPasswordPlaceholder': 'Enter UI password',
  'settings.remoteInstances.page.field.forwardTypeHint': 'Choose local (-L), remote (-R), or dynamic (-D) forwarding.',
  'settings.remoteInstances.page.field.typePlaceholder': 'Type',
  'settings.remoteInstances.page.forwardType.local': 'Local (-L)',
  'settings.remoteInstances.page.forwardType.remote': 'Remote (-R)',
  'settings.remoteInstances.page.forwardType.dynamic': 'Dynamic (-D)',
  'settings.remoteInstances.page.forwardTypeDescription.local': 'Forward local traffic to a remote destination.',
  'settings.remoteInstances.page.forwardTypeDescription.remote': 'Expose a remote endpoint and forward it back to your local machine.',
  'settings.remoteInstances.page.forwardTypeDescription.dynamic': 'Expose a local SOCKS5 proxy over SSH.',
  'settings.remoteInstances.page.actions.create': 'Create',
  'settings.remoteInstances.page.actions.cancel': 'Cancel',
  'settings.remoteInstances.page.actions.connecting': 'Connecting...',
  'settings.remoteInstances.page.actions.reconnecting': 'Reconnecting...',
  'settings.remoteInstances.page.actions.reconnectNow': 'Reconnect now',
  'settings.remoteInstances.page.actions.logs': 'SSH Logs',
  'settings.remoteInstances.page.actions.pickRandomPort': 'Pick random port',
  'settings.remoteInstances.page.actions.enableForwardAria': 'Enable forward',
  'settings.remoteInstances.page.actions.openLocal': 'Open local',
  'settings.remoteInstances.page.actions.addForward': 'Add forward',
  'settings.remoteInstances.page.import.sectionTitle': 'Import from SSH config',
  'settings.remoteInstances.page.import.loading': 'Loading SSH hosts...',
  'settings.remoteInstances.page.import.noneFound': 'No SSH hosts found.',
  'settings.remoteInstances.page.import.noneAvailable': 'No SSH hosts available to import.',
  'settings.remoteInstances.page.import.patternSuffix': '(pattern)',
  'settings.remoteInstances.page.status.currentLocalUrl': 'Current local URL:',
  'settings.remoteInstances.page.status.reconnectStale': 'Reconnection looks stuck. You can retry now.',
  'settings.remoteInstances.page.logsDialog.title': 'SSH Logs',
  'settings.remoteInstances.page.logsDialog.loading': 'Loading logs...',
  'settings.remoteInstances.page.logsDialog.empty': 'No SSH logs yet.',
  'settings.remoteInstances.page.patternDialog.title': 'Create from wildcard pattern',
  'settings.remoteInstances.page.patternDialog.destinationPlaceholder': 'user@host',
  'settings.remoteInstances.page.phase.resolvingConfiguration': 'Resolving configuration',
  'settings.remoteInstances.page.phase.checkingAuth': 'Checking authentication',
  'settings.remoteInstances.page.phase.establishingSsh': 'Establishing SSH connection',
  'settings.remoteInstances.page.phase.probingRemote': 'Probing remote host',
  'settings.remoteInstances.page.phase.installingOpenChamber': 'Installing OpenChamber',
  'settings.remoteInstances.page.phase.updatingOpenChamber': 'Updating OpenChamber',
  'settings.remoteInstances.page.phase.detectingServer': 'Detecting server',
  'settings.remoteInstances.page.phase.startingServer': 'Starting server',
  'settings.remoteInstances.page.phase.forwardingPorts': 'Forwarding ports',
  'settings.remoteInstances.page.phase.reconnecting': 'Reconnecting',
  'settings.remoteInstances.page.confirm.storeSshPasswordPlaintext': 'Store SSH password in plaintext on disk?',
  'settings.remoteInstances.page.confirm.storeUiPasswordPlaintext': 'Store UI password in plaintext on disk?',
  'settings.remoteInstances.page.confirm.removeInstance': 'Remove this remote instance?',
  'settings.remoteInstances.page.toast.sshCommandRequired': 'SSH command is required',
  'settings.remoteInstances.page.toast.saveFailed': 'Failed to save instance',
  'settings.remoteInstances.page.toast.instanceSaved': 'Instance saved',
  'settings.remoteInstances.page.toast.instanceCreated': 'Instance created',
  'settings.remoteInstances.page.toast.destinationRequired': 'Destination is required',
  'settings.remoteInstances.page.toast.noLogsToCopy': 'No logs to copy',
  'settings.remoteInstances.page.toast.logsCopied': 'Logs copied',
  'settings.remoteInstances.page.toast.logsCleared': 'Logs cleared',
  'settings.remoteInstances.page.toast.clearLogsFailed': 'Failed to clear logs',
  'settings.remoteInstances.page.toast.instanceUrlUnavailable': 'Instance URL is unavailable',
  'settings.remoteInstances.page.toast.connectFailed': 'Failed to connect instance',
  'settings.remoteInstances.page.toast.cancelConnectionFailed': 'Failed to cancel connection',
  'settings.remoteInstances.page.toast.disconnectFailed': 'Failed to disconnect instance',
  'settings.remoteInstances.page.toast.retryFailed': 'Failed to retry connection',
  'settings.remoteInstances.page.toast.instanceRemoved': 'Instance removed',
  'settings.remoteInstances.page.toast.removeInstanceFailed': 'Failed to remove instance',
  'settings.openchamber.worktrees.state.selectProject': 'Select a project to manage worktrees.',
  'settings.openchamber.worktrees.state.gitOnly': 'Worktree settings are only available for Git repositories.',
  'settings.openchamber.worktrees.setup.title': 'Setup commands',
  'settings.openchamber.worktrees.setup.tooltipPrefix': 'Run automatically inside the new worktree directory when a worktree is created. Use',
  'settings.openchamber.worktrees.setup.tooltipSuffix': 'for the project root.',
  'settings.openchamber.worktrees.setup.loading': 'Loading...',
  'settings.openchamber.worktrees.setup.commandPlaceholder': 'e.g., bun install',
  'settings.openchamber.worktrees.setup.removeCommandAria': 'Remove command',
  'settings.openchamber.worktrees.setup.addCommand': 'Add command',
  'settings.openchamber.worktrees.list.title': 'Existing worktrees',
  'settings.openchamber.worktrees.list.tooltip': 'Worktrees live outside the repo (OpenCode-managed). Deleting a worktree also removes linked sessions.',
  'settings.openchamber.worktrees.list.loading': 'Loading worktrees...',
  'settings.openchamber.worktrees.list.empty': 'No worktrees found for this project',
  'settings.openchamber.worktrees.list.detachedHead': 'Detached HEAD',
  'settings.openchamber.worktrees.list.deleteWorktreeAria': 'Delete worktree {name}',
  'settings.agents.modelSelector.title': 'Select model',
  'settings.agents.modelSelector.searchPlaceholder': 'Search models',
  'settings.agents.modelSelector.selectPlaceholder': 'Select model...',
  'settings.agents.modelSelector.notSelected': 'Not selected',
  'settings.agents.modelSelector.noModelOptional': 'No model (optional)',
  'settings.agents.modelSelector.section.favorites': 'Favorites',
  'settings.agents.modelSelector.section.recents': 'Recents',
  'settings.agents.modelSelector.section.recent': 'Recent',
  'settings.agents.modelSelector.badge.current': 'Current',
  'settings.agents.modelSelector.actions.favorite': 'Favorite',
  'settings.agents.modelSelector.actions.unfavorite': 'Unfavorite',
  'settings.agents.modelSelector.actions.addToFavorites': 'Add to favorites',
  'settings.agents.modelSelector.actions.removeFromFavorites': 'Remove from favorites',
  'settings.agents.modelSelector.state.noModelsFound': 'No models found',
  'settings.agents.modelSelector.keyboardHints': '↑↓ navigate • Enter select • Esc close',
  'settings.providers.sidebar.title': 'Providers',
  'settings.providers.sidebar.total': 'Total {count}',
  'settings.providers.sidebar.actions.connectProviderAria': 'Connect provider',
  'settings.providers.sidebar.actions.connectProviderTitle': 'Connect provider',
  'settings.providers.sidebar.empty.title': 'No providers found',
  'settings.providers.sidebar.empty.description': 'Check your OpenCode configuration',
  'settings.providers.sidebar.section.userProviders': 'User Providers',
  'settings.providers.sidebar.section.projectProviders': 'Project Providers',
  'settings.providers.page.state.loading': 'Loading...',
  'settings.providers.page.state.unableToLoadProviderList': 'Unable to load provider list',
  'settings.providers.page.empty.noProvidersDetected': 'No providers detected',
  'settings.providers.page.empty.checkOpenCodeConfiguration': 'Check your OpenCode configuration',
  'settings.providers.page.empty.selectProviderFromSidebar': 'Select a provider from the sidebar',
  'settings.providers.page.empty.reviewDetailsAndConfigureAuth': 'Review details and configure auth',
  'settings.providers.page.connect.title': 'Connect Provider',
  'settings.providers.page.connect.selectProviderTitle': 'Select Provider',
  'settings.providers.page.connect.providerField': 'Provider',
  'settings.providers.page.connect.selectProviderPlaceholder': 'Select provider',
  'settings.providers.page.connect.searchProvidersPlaceholder': 'Search...',
  'settings.providers.page.connect.noProvidersFound': 'No providers found',
  'settings.providers.page.connect.allProvidersConnected': 'All providers connected.',
  'settings.providers.page.auth.title': 'Authentication',
  'settings.providers.page.auth.loadingMethods': 'Loading authentication methods...',
  'settings.providers.page.auth.apiKeyLabel': 'API Key',
  'settings.providers.page.auth.apiKeyTooltip': 'Keys are sent directly to OpenCode and never stored by OpenChamber.',
  'settings.providers.page.auth.apiKeyPlaceholder': 'sk-...',
  'settings.providers.page.auth.oauthMethodFallback': 'OAuth method {index}',
  'settings.providers.page.auth.pasteAuthorizationCodePlaceholder': 'Paste authorization code',
  'settings.providers.page.auth.connected': 'Connected',
  'settings.providers.page.auth.useReconnectHint': '· Use Reconnect to update credentials',
  'settings.providers.page.connectionDetails.title': 'Connection Details',
  'settings.providers.page.connectionDetails.configuredIn': 'Configured in:',
  'settings.providers.page.connectionDetails.noActiveSource': 'No active configuration source',
  'settings.providers.page.connectionDetails.source.authCredentials': 'auth credentials',
  'settings.providers.page.connectionDetails.source.userConfig': 'user config',
  'settings.providers.page.connectionDetails.source.projectConfig': 'project config',
  'settings.providers.page.connectionDetails.source.customConfig': 'custom config',
  'settings.providers.page.models.title': 'Available Models',
  'settings.providers.page.models.filterPlaceholder': 'Filter models...',
  'settings.providers.page.models.noModelsMatchFilter': 'No models match this filter.',
  'settings.providers.page.models.capability.toolCalling': 'Tool calling',
  'settings.providers.page.models.capability.reasoning': 'Reasoning',
  'settings.providers.page.models.capability.imageInput': 'Image input',
  'settings.providers.page.models.tokenBadge.context': 'ctx',
  'settings.providers.page.models.tokenBadge.output': 'out',
  'settings.providers.page.models.actions.hideModelFromSelectors': 'Hide model from selectors',
  'settings.providers.page.models.actions.showModelInSelectors': 'Show model in selectors',
  'settings.providers.page.models.actions.hideModel': 'Hide model',
  'settings.providers.page.models.actions.showModel': 'Show model',
  'settings.providers.page.actions.saving': 'Saving...',
  'settings.providers.page.actions.saveKey': 'Save Key',
  'settings.providers.page.actions.connect': 'Connect',
  'settings.providers.page.actions.copyCode': 'Copy Code',
  'settings.providers.page.actions.open': 'Open',
  'settings.providers.page.actions.copy': 'Copy',
  'settings.providers.page.actions.complete': 'Complete',
  'settings.providers.page.actions.hide': 'Hide',
  'settings.providers.page.actions.reconnect': 'Reconnect',
  'settings.providers.page.actions.disconnecting': 'Disconnecting...',
  'settings.providers.page.actions.disconnect': 'Disconnect',
  'settings.providers.page.actions.hideAll': 'Hide all',
  'settings.providers.page.actions.showAll': 'Show all',
  'settings.providers.page.toast.authMethodsLoadFailed': 'Failed to load provider authentication methods',
  'settings.providers.page.toast.providerSourcesLoadFailed': 'Failed to load provider sources',
  'settings.providers.page.toast.apiKeyRequired': 'API key is required',
  'settings.providers.page.toast.apiKeySaveFailed': 'Failed to save API key',
  'settings.providers.page.toast.apiKeySaved': 'API key saved',
  'settings.providers.page.toast.oauthStartFailed': 'Failed to start OAuth flow',
  'settings.providers.page.toast.oauthDetailsMissing': 'No OAuth details returned',
  'settings.providers.page.toast.completeOAuthInBrowser': 'Complete the OAuth flow in your browser',
  'settings.providers.page.toast.oauthCompleteFailed': 'Failed to complete OAuth flow',
  'settings.providers.page.toast.oauthCompleted': 'OAuth connection completed',
  'settings.providers.page.toast.oauthLinkCopied': 'OAuth link copied',
  'settings.providers.page.toast.oauthLinkCopyFailed': 'Failed to copy OAuth link',
  'settings.providers.page.toast.deviceCodeCopied': 'Device code copied',
  'settings.providers.page.toast.deviceCodeCopyFailed': 'Failed to copy device code',
  'settings.providers.page.toast.providerDisconnected': 'Provider disconnected',
  'settings.providers.page.toast.providerDisconnectFailed': 'Failed to disconnect provider',
  'settings.mcp.page.empty.selectServer': 'Select an MCP server from the sidebar',
  'settings.mcp.page.empty.addNewOne': 'or add a new one',
  'settings.mcp.page.header.newServer': 'New MCP Server',
  'settings.mcp.page.header.configureNewServer': 'Configure a new MCP server',
  'settings.mcp.page.header.transport': '{type} transport',
  'settings.mcp.page.transport.local': 'Local · stdio',
  'settings.mcp.page.transport.remote': 'Remote · SSE',
  'settings.mcp.page.status.label.connected': 'Connected',
  'settings.mcp.page.status.label.failed': 'Failed',
  'settings.mcp.page.status.label.needsAuth': 'Needs auth',
  'settings.mcp.page.status.label.needsRegistration': 'Needs registration',
  'settings.mcp.page.status.description.connected': 'Connected and ready for OpenCode to discover tools and resources.',
  'settings.mcp.page.status.description.failedDefault': 'OpenCode could not reach this MCP server.',
  'settings.mcp.page.status.description.needsAuth': 'This remote MCP server requires authorization before it can connect.',
  'settings.mcp.page.status.description.needsClientRegistrationDefault': 'This remote MCP server requires client registration before authorization can complete.',
  'settings.mcp.page.status.description.disabled': 'This MCP server is disabled in configuration.',
  'settings.mcp.page.status.description.default': 'Refresh or test the connection to load live runtime status.',
  'settings.mcp.page.status.runtimeStatus': 'Runtime Status',
  'settings.mcp.page.status.projectScopedTo': 'Project-scoped to {directory}',
  'settings.mcp.page.status.userScoped': 'User-scoped configuration',
  'settings.mcp.page.status.activeProject': 'the active project',
  'settings.mcp.page.actions.connect': 'Connect',
  'settings.mcp.page.actions.disconnect': 'Disconnect',
  'settings.mcp.page.actions.authorize': 'Authorize',
  'settings.mcp.page.actions.reauthorize': 'Reauthorize',
  'settings.mcp.page.actions.clearAuth': 'Clear Auth',
  'settings.mcp.page.actions.test': 'Test',
  'settings.mcp.page.actions.testConnection': 'Test Connection',
  'settings.mcp.page.actions.working': 'Working...',
  'settings.mcp.page.actions.starting': 'Starting...',
  'settings.mcp.page.actions.clearing': 'Clearing...',
  'settings.mcp.page.actions.testing': 'Testing...',
  'settings.mcp.page.actions.completing': 'Completing...',
  'settings.mcp.page.actions.completeAuthorization': 'Complete Authorization',
  'settings.mcp.page.actions.openInBrowser': 'Open in Browser',
  'settings.mcp.page.actions.copyLink': 'Copy Link',
  'settings.mcp.page.actions.deleting': 'Deleting…',
  'settings.mcp.page.auth.authorizationUrl': 'Authorization URL',
  'settings.mcp.page.auth.manualFallbackTitle': 'Manual Authorization Fallback',
  'settings.mcp.page.auth.manualFallbackDescription': 'If the browser returns to a different machine or shows a callback URL with a code, paste that full URL or the raw code here.',
  'settings.mcp.page.auth.callbackInputPlaceholder': 'Paste the callback URL or authorization code',
  'settings.mcp.page.auth.waitingForOpenCode': 'Waiting for OpenCode to observe the completed browser authorization flow...',
  'settings.mcp.page.server.title': 'Server',
  'settings.mcp.page.server.name': 'Server Name',
  'settings.mcp.page.server.namePlaceholder': 'my-mcp-server',
  'settings.mcp.page.server.importJson': 'Import from JSON Snippet',
  'settings.mcp.page.server.importJsonTitle': 'Import a full MCP server configuration from a JSON snippet',
  'settings.mcp.page.server.enable': 'Enable Server',
  'settings.mcp.page.server.enableAria': 'Enable server',
  'settings.mcp.page.server.transportMode': 'Transport Mode',
  'settings.mcp.page.connection.command': 'Command',
  'settings.mcp.page.connection.serverUrl': 'Server URL',
  'settings.mcp.page.connection.serverUrlPlaceholder': 'https://mcp.example.com/mcp',
  'settings.mcp.page.connection.pasteCommand': 'Paste Command',
  'settings.mcp.page.connection.pasteCommandTitle': 'Paste a local command from clipboard and auto-split',
  'settings.mcp.page.connection.previewArgs': 'Preview ({count} args)',
  'settings.mcp.page.advanced.title': 'Advanced Remote Options',
  'settings.mcp.page.advanced.configure': 'Configure advanced options',
  'settings.mcp.page.advanced.autoDetect': 'Auto-detect',
  'settings.mcp.page.advanced.custom': 'Custom',
  'settings.mcp.page.advanced.headers': 'headers',
  'settings.mcp.page.advanced.timeoutMs': 'Timeout (ms)',
  'settings.mcp.page.advanced.timeoutHint': 'Leave blank to use OpenCode\'s default MCP timeout.',
  'settings.mcp.page.advanced.requestHeaders': 'Request Headers',
  'settings.mcp.page.advanced.headerNamePlaceholder': 'Header-Name',
  'settings.mcp.page.advanced.pasteHeaders': 'Paste headers',
  'settings.mcp.page.advanced.pasteHeadersTitle': 'Paste KEY=VALUE header lines from clipboard',
  'settings.mcp.page.advanced.oauthAutoDetection': 'Enable OAuth auto-detection',
  'settings.mcp.page.advanced.oauthAutoDetectionAria': 'Enable OAuth auto-detection',
  'settings.mcp.page.advanced.oauthClientIdPlaceholder': 'OAuth client ID',
  'settings.mcp.page.advanced.oauthClientSecretPlaceholder': 'OAuth client secret',
  'settings.mcp.page.advanced.oauthScopesPlaceholder': 'Scopes (space-delimited)',
  'settings.mcp.page.advanced.oauthRedirectUriPlaceholder': 'Redirect URI',
  'settings.mcp.page.advanced.oauthHint': 'Leave these fields blank to let OpenCode infer OAuth settings from the MCP server.',
  'settings.mcp.page.advanced.oauthCallbackHint': 'Browser-based MCP authorization uses this callback URL when the redirect URI is blank:',
  'settings.mcp.page.env.title': 'Environment Variables',
  'settings.mcp.page.env.key': 'Key',
  'settings.mcp.page.env.value': 'Value',
  'settings.mcp.page.env.valuePlaceholder': 'value',
  'settings.mcp.page.env.hide': 'Hide',
  'settings.mcp.page.env.show': 'Show',
  'settings.mcp.page.env.addVariable': 'Add variable',
  'settings.mcp.page.env.addEnvironmentVariable': 'Add environment variable',
  'settings.mcp.page.env.keyPlaceholder': 'API_KEY',
  'settings.mcp.page.env.pasteEnv': 'Paste .env',
  'settings.mcp.page.env.pasteEnvTitle': 'Paste KEY=VALUE lines from clipboard',
  'settings.mcp.page.env.plainTextWarning': '⚠ Values are stored as plain text in opencode.json',
  'settings.mcp.page.env.removeVariableAria': 'Remove variable',
  'settings.mcp.page.importDialog.title': 'Import JSON Snippet',
  'settings.mcp.page.importDialog.description': 'Paste a full MCP JSON snippet from docs or another config file. The parsed values will populate this form for review before saving.',
  'settings.mcp.page.importDialog.pasteFromClipboard': 'Paste JSON from Clipboard',
  'settings.mcp.page.deleteDialog.title': 'Delete "{name}"?',
  'settings.mcp.page.deleteDialog.descriptionPrefix': 'This removes the server from',
  'settings.mcp.page.deleteDialog.descriptionSuffix': 'OpenCode will need to reload.',
  'settings.mcp.page.toast.clipboardReadFailed': 'Cannot read clipboard',
  'settings.mcp.page.toast.configImported': 'MCP configuration imported',
  'settings.mcp.page.toast.nameRequired': 'Name is required',
  'settings.mcp.page.toast.serverNameExists': 'A server with this name already exists',
  'settings.mcp.page.toast.localCommandRequired': 'Command cannot be empty for a local server',
  'settings.mcp.page.toast.remoteUrlRequired': 'URL cannot be empty for a remote server',
  'settings.mcp.page.toast.serverCreatedReloadFailed': 'MCP server created, but OpenCode reload failed.',
  'settings.mcp.page.toast.savedReloadFailed': 'Saved, but OpenCode reload failed.',
  'settings.mcp.page.toast.retryRefreshHint': 'Retry refresh or reopen Settings before authorizing this server.',
  'settings.mcp.page.toast.serverCreatedReloading': 'MCP server created. OpenCode reloading…',
  'settings.mcp.page.toast.savedReloading': 'Saved. OpenCode reloading…',
  'settings.mcp.page.toast.saveFailed': 'Failed to save',
  'settings.mcp.page.toast.unexpectedError': 'An error occurred',
  'settings.mcp.page.toast.serverDeletedReloadFailed': '"{name}" deleted, but OpenCode reload failed',
  'settings.mcp.page.toast.refreshListIfStale': 'Refresh the MCP list if the UI looks stale.',
  'settings.mcp.page.toast.serverDeleted': '"{name}" deleted',
  'settings.mcp.page.toast.deleteFailed': 'Failed to delete',
  'settings.mcp.page.toast.disconnected': 'Disconnected',
  'settings.mcp.page.toast.connected': 'Connected',
  'settings.mcp.page.toast.connectionNeedsAuthorization': 'Connection requires authorization',
  'settings.mcp.page.toast.connectionNeedsClientRegistration': 'Connection requires client registration',
  'settings.mcp.page.toast.connectionFailed': 'Connection failed',
  'settings.mcp.page.toast.connectionAttemptFinished': 'Connection attempt finished. Refresh status for details.',
  'settings.mcp.page.toast.createServerBeforeLiveActions': 'Create the server before running live actions',
  'settings.mcp.page.toast.saveBeforeLiveActions': 'Save changes before running live actions',
  'settings.mcp.page.toast.refreshStatusFailed': 'Failed to refresh MCP status',
  'settings.mcp.page.toast.oauthRedirectUrlBuildFailed': 'Unable to build MCP OAuth redirect URL',
  'settings.mcp.page.toast.oauthBrowserCallbackSaveFailed': 'Failed to save the browser callback URL for MCP authorization',
  'settings.mcp.page.toast.openCodeReloadFailedAfterCallbackSave': 'OpenCode reload failed after saving the browser callback URL',
  'settings.mcp.page.toast.completeAuthorizationInBrowserWithPaste': 'Complete the MCP authorization flow in your browser, then paste the returned code or callback URL here',
  'settings.mcp.page.toast.completeAuthorizationInBrowser': 'Complete the MCP authorization flow in your browser',
  'settings.mcp.page.toast.openAuthorizationUrlFailed': 'Could not open the authorization URL automatically',
  'settings.mcp.page.toast.authorizationStartFailed': 'Failed to start authorization',
  'settings.mcp.page.toast.authSessionExpired': 'Authorization session expired or was cleared during reload. Click Authorize again.',
  'settings.mcp.page.toast.savedAuthorizationRemoved': 'Saved MCP authorization was removed',
  'settings.mcp.page.toast.clearAuthorizationFailed': 'Failed to clear authorization',
  'settings.mcp.page.toast.authorizationUrlCopied': 'Authorization URL copied',
  'settings.mcp.page.toast.authorizationUrlCopyFailed': 'Failed to copy authorization URL',
  'settings.mcp.page.toast.pasteCallbackOrCodeFirst': 'Paste the callback URL or authorization code first',
  'settings.mcp.page.toast.missingServerDetails': 'Missing MCP server details. Select the server again or paste the full callback URL.',
  'settings.mcp.page.toast.authorizationCompleted': 'MCP authorization completed',
  'settings.mcp.page.toast.authorizationCompletedFor': 'MCP authorization completed for {name}',
  'settings.mcp.page.toast.authorizationCompleteFailed': 'Failed to complete MCP authorization',
  'settings.mcp.page.toast.enableServerBeforeTest': 'Enable this server before testing the connection',
  'settings.mcp.page.toast.connectionTestSucceeded': 'Connection test succeeded',
  'settings.mcp.page.toast.connectionTestFailed': 'Connection test failed',
  'settings.mcp.page.toast.connectionTestFinished': 'Connection test finished. Refresh status for details.',
  'settings.mcp.page.toast.authorizationFailed': 'Authorization failed',
  'settings.mcp.page.toast.authorizationStillInProgress': 'Authorization is still in progress in your browser. Paste the callback URL or code if needed.',
  'settings.mcp.page.toast.noKeyValuePairsFound': 'No KEY=VALUE pairs found in clipboard',
  'settings.mcp.page.toast.importedVariablesCount': 'Imported variables: {count}',
  'settings.mcp.page.toast.pastedArgumentsCount': 'Pasted arguments: {count}',
  'settings.shared.projectSelector.fallbackProject': 'Project',
  'settings.shared.projectSelector.switchProjectAria': 'Switch project',
  'settings.shared.projectSelector.switchProjectTitle': 'Switch project',
  'settings.openchamber.defaults.title': 'Session Defaults',
  'settings.openchamber.defaults.summaryPrefix': 'New sessions will start with:',
  'settings.openchamber.defaults.summaryOpenCodeDefault': 'OpenCode agent default',
  'settings.openchamber.defaults.field.defaultModel': 'Default Model',
  'settings.openchamber.defaults.field.defaultThinking': 'Default Thinking',
  'settings.openchamber.defaults.field.thinkingPlaceholder': 'Thinking',
  'settings.openchamber.defaults.field.defaultAgent': 'Default Agent',
  'settings.openchamber.defaults.field.showDeletionDialogAria': 'Show deletion dialog',
  'settings.openchamber.defaults.field.showDeletionDialog': 'Show Deletion Dialog',
  'settings.openchamber.defaults.field.openFilesPreviewAria': 'Open files in preview mode',
  'settings.openchamber.defaults.field.openFilesPreview': 'Open files in preview mode',
  'settings.openchamber.defaults.option.default': 'Default',
  'settings.openchamber.defaults.option.defaultLowercase': 'default',
  'settings.openchamber.git.title': 'Git Preferences',
  'settings.openchamber.git.changesViewTitle': 'Changes View',
  'settings.openchamber.git.changesViewAria': 'Git changes view mode',
  'settings.openchamber.git.option.flatList': 'Flat List',
  'settings.openchamber.git.option.treeView': 'Tree View',
  'settings.openchamber.git.optionAria': 'Git changes view mode: {option}',
  'settings.openchamber.git.enableGitmojiAria': 'Enable Gitmoji picker',
  'settings.openchamber.git.enableGitmoji': 'Enable Gitmoji Picker',
  'settings.openchamber.git.showGitignoredAria': 'Display gitignored files',
  'settings.openchamber.git.showGitignored': 'Display Gitignored Files',
  'settings.github.page.tooltip.connectAccount': 'Connect a GitHub account for in-app PR and issue workflows.',
  'settings.github.page.avatarAlt.withLogin': '{login} avatar',
  'settings.github.page.avatarAlt.fallback': 'GitHub avatar',
  'settings.github.page.label.unknownUser': 'unknown',
  'settings.github.page.label.scopes': 'Scopes: {value}',
  'settings.github.page.label.otherAccounts': 'Other Accounts',
  'settings.github.page.actions.disconnect': 'Disconnect',
  'settings.github.page.actions.connect': 'Connect GitHub',
  'settings.github.page.actions.switchTo': 'Switch to',
  'settings.github.page.actions.addAccount': 'Add Account',
  'settings.github.page.actions.openGithub': 'Open GitHub',
  'settings.github.page.status.notConnected': 'Not Connected',
  'settings.github.page.status.active': 'Active',
  'settings.github.page.flow.title': 'Authorize OpenChamber',
  'settings.github.page.flow.description': 'In GitHub, enter the following code to authorize this device:',
  'settings.github.page.flow.waiting': 'Waiting for approval… (auto-refresh)',
  'settings.github.page.toast.startConnectFailed': 'Failed to start GitHub connect',
  'settings.github.page.toast.connected': 'GitHub connected',
  'settings.github.page.toast.authorizationFailed': 'GitHub authorization failed',
  'settings.github.page.toast.disconnected': 'GitHub disconnected',
  'settings.github.page.toast.disconnectFailed': 'Failed to disconnect GitHub',
  'settings.github.page.toast.accountSwitched': 'GitHub account switched',
  'settings.github.page.toast.accountSwitchFailed': 'Failed to switch GitHub account',
  'settings.notifications.page.delivery.title': 'Notification Delivery',
  'settings.notifications.page.delivery.enableAria': 'Enable notifications',
  'settings.notifications.page.delivery.enableLabel': 'Enable Notifications',
  'settings.notifications.page.delivery.focusedAria': 'Notify while app is focused',
  'settings.notifications.page.delivery.focusedLabel': 'Notify While App is Focused',
  'settings.notifications.page.delivery.testAction': 'Send test notification',
  'settings.notifications.page.delivery.browserPermissionHint': 'Your browser may ask for permission the first time.',
  'settings.notifications.page.delivery.permissionDenied': 'Notification permission denied. Enable it in your browser settings.',
  'settings.notifications.page.delivery.permissionGrantedButDisabled': 'Permission granted, but notifications are disabled.',
  'settings.notifications.page.delivery.vscodeHint': 'When enabled, notifications are delivered through VS Code native notifications.',
  'settings.notifications.page.events.title': 'Notification Events',
  'settings.notifications.page.events.completionAria': 'Agent completion',
  'settings.notifications.page.events.completionLabel': 'Agent Completion',
  'settings.notifications.page.events.subtaskAria': 'Subagent completion',
  'settings.notifications.page.events.subtaskLabel': 'Subagent Completion',
  'settings.notifications.page.events.errorAria': 'Agent errors',
  'settings.notifications.page.events.errorLabel': 'Agent Errors',
  'settings.notifications.page.events.questionAria': 'Agent questions',
  'settings.notifications.page.events.questionLabel': 'Agent Questions',
  'settings.notifications.page.template.title': 'Notification Templates',
  'settings.notifications.page.template.variablesLabel': 'Variables:',
  'settings.notifications.page.template.event.completion': 'completion',
  'settings.notifications.page.template.event.subtask': 'Subagent Completion',
  'settings.notifications.page.template.event.error': 'error',
  'settings.notifications.page.template.event.question': 'question',
  'settings.notifications.page.template.field.title': 'Title',
  'settings.notifications.page.template.field.message': 'Message',
  'settings.notifications.page.template.defaults.completion.title': '{agent_name} is ready',
  'settings.notifications.page.template.defaults.completion.message': '{model_name} completed the task',
  'settings.notifications.page.template.defaults.error.title': 'Tool error',
  'settings.notifications.page.template.defaults.error.message': '{last_message}',
  'settings.notifications.page.template.defaults.question.title': 'Input needed',
  'settings.notifications.page.template.defaults.question.message': '{last_message}',
  'settings.notifications.page.template.defaults.subtask.title': '{agent_name} is ready',
  'settings.notifications.page.template.defaults.subtask.message': '{model_name} completed the task',
  'settings.notifications.page.summary.title': 'AI Summarization',
  'settings.notifications.page.summary.toggleAria': 'Summarize last message',
  'settings.notifications.page.summary.toggleLabel': 'Summarize Last Message',
  'settings.notifications.page.summary.requiresTemplateVariable': 'Requires',
  'settings.notifications.page.summary.modelLabel': 'Summarization Model',
  'settings.notifications.page.summary.modelTooltip': 'Used for notification and voice summaries.',
  'settings.notifications.page.summary.notSelected': 'Not selected',
  'settings.notifications.page.summary.thresholdLabel': 'Threshold',
  'settings.notifications.page.summary.thresholdHint': 'Messages longer than this will be summarized',
  'settings.notifications.page.summary.resetThresholdAria': 'Reset threshold',
  'settings.notifications.page.summary.lengthLabel': 'Length',
  'settings.notifications.page.summary.lengthHint': 'Target character length of the summary',
  'settings.notifications.page.summary.resetLengthAria': 'Reset summary length',
  'settings.notifications.page.summary.maxLengthLabel': 'Max Length',
  'settings.notifications.page.summary.maxLengthHint': 'Truncate {last_message} to this length',
  'settings.notifications.page.summary.resetMaxLengthAria': 'Reset max message length',
  'settings.notifications.page.push.title': 'Background Push Notifications',
  'settings.notifications.page.push.enableAria': 'Enable push notifications',
  'settings.notifications.page.push.enableLabel': 'Enable push notifications',
  'settings.notifications.page.push.unsupportedHint': 'Push not supported. Desktop Chrome/Edge and Android support push. iOS requires an installed PWA.',
  'settings.notifications.page.push.supportedHint': 'Receive alerts via your operating system background service',
  'settings.notifications.page.push.loadingAria': 'Loading',
  'settings.notifications.page.toast.permissionDenied.title': 'Notification permission denied',
  'settings.notifications.page.toast.permissionDenied.description': 'Please enable notifications in your browser settings.',
  'settings.notifications.page.toast.permissionDenied.enableInBrowser': 'Enable notifications in your browser settings.',
  'settings.notifications.page.toast.requestPermissionFailed': 'Failed to request notification permission',
  'settings.notifications.page.toast.notificationsApiUnavailable': 'Notifications API not available',
  'settings.notifications.page.toast.testNotificationSent': 'Test notification sent successfully',
  'settings.notifications.page.toast.testNotificationFailed': 'Failed to send test notification',
  'settings.notifications.page.toast.pushUnsupported': 'Push notifications not supported',
  'settings.notifications.page.toast.pushApiUnavailable': 'Push API not available',
  'settings.notifications.page.toast.pushKeyLoadFailed': 'Failed to load push key',
  'settings.notifications.page.toast.enableBackgroundFailed': 'Failed to enable background notifications',
  'settings.notifications.page.toast.backgroundEnabled': 'Background notifications enabled',
  'settings.notifications.page.toast.backgroundDisabled': 'Background notifications disabled',
  'settings.notifications.page.testNotification.title': 'Test Notification',
  'settings.notifications.page.testNotification.body': 'This is a test notification from OpenChamber.',
  'settings.voice.page.section.voiceSetup': 'Voice Setup',
  'settings.voice.page.section.speechRecognition': 'Speech Recognition',
  'settings.voice.page.section.playbackAndSummary': 'Playback',
  'settings.voice.page.field.enableVoiceModeAria': 'Enable voice mode',
  'settings.voice.page.field.enableVoiceMode': 'Enable Voice Mode',
  'settings.voice.page.field.provider': 'Provider',
  'settings.voice.page.provider.browser': 'Browser',
  'settings.voice.page.provider.custom': 'Custom',
  'settings.voice.page.provider.say': 'Say',
  'settings.voice.page.provider.server': 'Server',
  'settings.voice.page.provider.wasm': 'Local',
  'settings.voice.page.stt.wasmModel': 'Whisper Model',
  'settings.voice.page.stt.wasmLoaded': 'Model loaded, ready',
  'settings.voice.page.stt.wasmDownloading': 'Downloading model...',
  'settings.voice.page.stt.wasmLoading': 'Loading model...',
  'settings.voice.page.stt.wasmNotLoaded': 'Model will load on first voice use',
  'settings.voice.page.stt.wasmDownload': 'Load',
  'settings.voice.page.stt.wasmRetry': 'Retry',
  'settings.voice.page.tooltip.browser': 'Free, offline, limited mobile support.',
  'settings.voice.page.tooltip.openai': 'High quality, mobile ready, needs API key.',
  'settings.voice.page.tooltip.custom': 'OpenAI-compatible server (for example Kokoro).',
  'settings.voice.page.tooltip.say': 'macOS native. Fast, free, offline.',
  'settings.voice.page.tooltip.sttBrowser': 'Web Speech API (Chrome/Edge). Free, no setup.',
  'settings.voice.page.tooltip.sttServer': 'OpenAI-compatible Whisper server. Better accuracy, any language.',
  'settings.voice.page.field.apiKey': 'API Key',
  'settings.voice.page.field.apiKeyHintUsingConfig': 'Using key from configuration',
  'settings.voice.page.field.apiKeyHintRequired': 'OpenAI TTS requires an API key',
  'settings.voice.page.field.apiKeyHintProvide': 'Provide your OpenAI key',
  'settings.voice.page.field.serverUrl': 'Server URL',
  'settings.voice.page.field.serverUrlHint': 'Base URL of the OpenAI-compatible TTS server',
  'settings.voice.page.field.model': 'Model',
  'settings.voice.page.field.voice': 'Voice',
  'settings.voice.page.field.voiceIdentifierHint': 'Voice identifier supported by the server',
  'settings.voice.page.field.configuredAbove': 'Configured above',
  'settings.voice.page.actions.preview': 'Preview',
  'settings.voice.page.field.selectVoicePlaceholder': 'Select voice',
  'settings.voice.page.field.auto': 'Auto',
  'settings.voice.page.field.speechRate': 'Speech Rate',
  'settings.voice.page.field.speechPitch': 'Speech Pitch',
  'settings.voice.page.field.speechVolume': 'Speech Volume',
  'settings.voice.page.field.language': 'Language',
  'settings.voice.page.field.selectLanguagePlaceholder': 'Select language',
  'settings.voice.page.field.sttBrowserSupportError': 'MediaRecorder or AudioContext is not available in this browser. Server STT may not work.',
  'settings.voice.page.field.sttServerUrlHint': 'Base URL of the Whisper-compatible server',
  'settings.voice.page.field.sttLanguageHint': 'BCP-47 code (for example en, fr). Leave blank for auto-detect.',
  'settings.voice.page.field.silenceThreshold': 'Silence Threshold',
  'settings.voice.page.field.silenceHold': 'Silence Hold',
  'settings.voice.page.field.transcribeOnStopAria': 'Transcribe when stopping recording',
  'settings.voice.page.field.transcribeOnStop': 'Transcribe on Stop',
  'settings.voice.page.field.millisecondsUnit': 'ms',
  'settings.voice.page.field.messageReadAloudButtonAria': 'Message read aloud button',
  'settings.voice.page.field.messageReadAloudButton': 'Message Read Aloud Button',
  'settings.voice.page.field.summarizeBeforePlaybackAria': 'Summarize before playback',
  'settings.voice.page.field.summarizeBeforePlayback': 'Summarize Before Playback',
  'settings.voice.page.field.summarizeVoiceModeResponsesAria': 'Summarize voice mode responses',
  'settings.voice.page.field.summarizeVoiceModeResponses': 'Summarize Voice Mode Responses',
  'settings.voice.page.field.summarizationThreshold': 'Summarization Threshold',
  'settings.voice.page.field.summaryMaxLength': 'Summary Max Length',
  'settings.voice.page.hint.shiftClickPrefix': 'Press',
  'settings.voice.page.hint.shiftClickSuffix': 'on the mic button to toggle continuous mode',
  'settings.voice.page.preview.browserVoiceFallback': 'your browser voice',
  'settings.voice.page.preview.voiceLine': 'Hello! I\'m {voiceName}. This is how I sound.',
  'settings.voice.page.preview.customServerLine': 'Hello! This is a preview of the custom TTS server.',
  'settings.openchamber.visual.section.colorMode': 'Color Mode',
  'settings.openchamber.visual.section.localization': 'Localization',
  'settings.openchamber.visual.section.spacingAndLayout': 'Spacing & Layout',
  'settings.openchamber.visual.section.navigation': 'Navigation',
  'settings.openchamber.visual.section.chatRenderMode': 'Chat Render Mode',
  'settings.openchamber.visual.section.chatRenderModeAria': 'Chat render mode',
  'settings.openchamber.visual.section.messageStreamTransport': 'Message Stream Transport',
  'settings.openchamber.visual.section.activityDefault': 'Activity Default',
  'settings.openchamber.visual.section.activityDefaultAria': 'Activity default mode',
  'settings.openchamber.visual.section.showToolsOpenedByDefault': 'Show tools opened by default:',
  'settings.openchamber.visual.section.userMessageRendering': 'User Message Rendering',
  'settings.openchamber.visual.section.userMessageRenderingAria': 'User message rendering mode',
  'settings.openchamber.visual.section.mermaidRendering': 'Mermaid Rendering',
  'settings.openchamber.visual.section.mermaidRenderingAria': 'Mermaid rendering mode',
  'settings.openchamber.visual.section.diffLayout': 'Diff Layout',
  'settings.openchamber.visual.section.diffLayoutAria': 'Diff layout',
  'settings.openchamber.visual.section.diffViewMode': 'Diff View Mode',
  'settings.openchamber.visual.section.diffViewModeAria': 'Diff view mode',
  'settings.openchamber.visual.section.privacy': 'Privacy',
  'settings.openchamber.visual.field.lightTheme': 'Light Theme',
  'settings.openchamber.visual.field.darkTheme': 'Dark Theme',
  'settings.openchamber.visual.field.selectLightThemeAria': 'Select light theme',
  'settings.openchamber.visual.field.selectDarkThemeAria': 'Select dark theme',
  'settings.openchamber.visual.field.selectThemePlaceholder': 'Select theme',
  'settings.openchamber.visual.field.timeFormat': 'Time Format',
  'settings.openchamber.visual.field.weekStartsOn': 'Week Starts On',
  'settings.openchamber.visual.field.selectTimeFormatAria': 'Select time format',
  'settings.openchamber.visual.field.selectWeekStartAria': 'Select week start',
  'settings.openchamber.visual.actions.reloadThemes': 'Reload themes',
  'settings.openchamber.visual.actions.reloadingThemes': 'Reloading themes...',
  'settings.openchamber.visual.field.themeImportInfoAria': 'Theme import info',
  'settings.openchamber.visual.field.themeImportInfoTooltip': 'Import custom themes from ~/.config/openchamber/themes/',
  'settings.openchamber.visual.field.installAppName': 'Install App Name',
  'settings.openchamber.visual.field.installAppNameHint': 'Used by PWA installation process.',
  'settings.openchamber.visual.field.pwaInstallAppNameAria': 'PWA install app name',
  'settings.openchamber.visual.actions.resetInstallAppNameAria': 'Reset install app name',
  'settings.openchamber.visual.field.installOrientation': 'Install Orientation',
  'settings.openchamber.visual.field.installOrientationHint': 'Used by the installed web app. Reinstall the PWA after changing this.',
  'settings.openchamber.visual.field.pwaInstallOrientationAria': 'PWA install orientation',
  'settings.openchamber.visual.field.selectOrientationPlaceholder': 'Select orientation',
  'settings.openchamber.visual.actions.resetInstallOrientationAria': 'Reset install orientation',
  'settings.openchamber.visual.field.mobileKeyboardMode': 'Mobile Keyboard Behavior',
  'settings.openchamber.visual.field.mobileKeyboardModeHint': 'Default browser behavior is safest. Resize content asks supported browsers to shrink the app when the on-screen keyboard opens.',
  'settings.openchamber.visual.field.mobileKeyboardModeAria': 'Mobile keyboard behavior',
  'settings.openchamber.visual.field.selectMobileKeyboardModePlaceholder': 'Select keyboard behavior',
  'settings.openchamber.visual.actions.resetMobileKeyboardModeAria': 'Reset mobile keyboard behavior',
  'settings.openchamber.visual.field.interfaceFontSize': 'Interface Font Size',
  'settings.openchamber.visual.field.interfaceFont': 'Interface Font',
  'settings.openchamber.visual.field.selectInterfaceFontAria': 'Select interface font',
  'settings.openchamber.visual.actions.resetInterfaceFontAria': 'Reset interface font',
  'settings.openchamber.visual.field.fontSizePercentageAria': 'Font size percentage',
  'settings.openchamber.visual.actions.resetFontSizeAria': 'Reset font size',
  'settings.openchamber.visual.field.terminalFontSize': 'Terminal Font Size',
  'settings.openchamber.visual.field.codeFont': 'Code Font',
  'settings.openchamber.visual.field.selectCodeFontAria': 'Select code font',
  'settings.openchamber.visual.actions.resetCodeFontAria': 'Reset code font',
  'settings.openchamber.visual.actions.resetTerminalFontSizeAria': 'Reset terminal font size',
  'settings.openchamber.visual.field.spacingDensity': 'Spacing Density',
  'settings.openchamber.visual.actions.resetSpacingAria': 'Reset spacing',
  'settings.openchamber.visual.field.inputBarOffset': 'Input Bar Offset',
  'settings.openchamber.visual.field.inputBarOffsetTooltip': 'Raise input bar to avoid OS-level screen obstructions like home bars.',
  'settings.openchamber.visual.actions.resetInputBarOffsetAria': 'Reset input bar offset',
  'settings.openchamber.visual.field.terminalQuickKeysAria': 'Terminal quick keys',
  'settings.openchamber.visual.field.terminalQuickKeys': 'Terminal Quick Keys',
  'settings.openchamber.visual.field.terminalQuickKeysTooltip': 'Show Esc, Ctrl, Arrows in terminal view',
  'settings.openchamber.visual.field.activityDefaultModeAria': 'Activity default mode: {option}',
  'settings.openchamber.visual.field.showExpandedBashToolsAria': 'Show expanded bash tools',
  'settings.openchamber.visual.field.showExpandedEditToolsAria': 'Show expanded edit tools',
  'settings.openchamber.visual.field.bash': 'Bash',
  'settings.openchamber.visual.field.editTools': 'Edit tools',
  'settings.openchamber.visual.field.userMessageRenderingAria': 'User message rendering: {option}',
  'settings.openchamber.visual.field.mermaidRenderingAria': 'Mermaid rendering: {option}',
  'settings.openchamber.visual.field.diffLayoutAria': 'Diff layout: {option}',
  'settings.openchamber.visual.field.diffViewModeAria': 'Diff view mode: {option}',
  'settings.openchamber.visual.field.showReasoningTracesAria': 'Show reasoning traces',
  'settings.openchamber.visual.field.showReasoningTraces': 'Show Reasoning Traces',
  'settings.openchamber.visual.field.collapsibleThinkingBlocksAria': 'Enable collapsible reasoning blocks',
  'settings.openchamber.visual.field.collapsibleThinkingBlocks': 'Enable Collapsible Reasoning Blocks',
  'settings.openchamber.visual.field.stickyUserHeaderAria': 'Sticky user header',
  'settings.openchamber.visual.field.stickyUserHeader': 'Sticky User Header',
  'settings.openchamber.visual.field.wideChatLayoutAria': 'Wide chat layout',
  'settings.openchamber.visual.field.wideChatLayout': 'Wide Chat Layout',
  'settings.openchamber.visual.field.showSplitAssistantMessageActionsAria': 'Inline assistant actions',
  'settings.openchamber.visual.field.showSplitAssistantMessageActions': 'Inline Assistant Actions',
  'settings.openchamber.visual.field.showSplitAssistantMessageActionsTooltip': 'Show Copy Answer, Save as image, and Read aloud on assistant text blocks that appear before later tool calls in the same response.',
  'settings.openchamber.visual.field.showToolFileIconsAria': 'Show tool file icons',
  'settings.openchamber.visual.field.showToolFileIcons': 'Show Tool File Icons',
  'settings.openchamber.visual.field.showMobileStatusBarAria': 'Show mobile status bar',
  'settings.openchamber.visual.field.showMobileStatusBar': 'Show Mobile Status Bar',
  'settings.openchamber.visual.field.showDotfilesAria': 'Show dotfiles',
  'settings.openchamber.visual.field.showDotfiles': 'Show Dotfiles',
  'settings.openchamber.visual.field.queueMessagesByDefaultAria': 'Queue messages by default',
  'settings.openchamber.visual.field.queueMessagesByDefault': 'Queue Messages by Default',
  'settings.openchamber.visual.field.queueMessagesByDefaultTooltip': 'When enabled, Enter queues messages. Use {modifier}+Enter to send.',
  'settings.openchamber.visual.field.persistDraftMessagesAria': 'Persist draft messages',
  'settings.openchamber.visual.field.persistDraftMessages': 'Persist Draft Messages',
  'settings.openchamber.visual.field.enableSpellcheckInTextInputsAria': 'Enable spellcheck in text inputs',
  'settings.openchamber.visual.field.enableSpellcheckInTextInputs': 'Enable Spellcheck in Text Inputs',
  'settings.openchamber.visual.field.sendAnonymousUsageReportsAria': 'Send anonymous usage reports',
  'settings.openchamber.visual.field.sendAnonymousUsageReports': 'Send anonymous usage reports',
  'settings.openchamber.visual.field.sendAnonymousUsageReportsHint': 'Helps us understand which app versions are actively used so we can prioritize improvements. Only app version, platform, and runtime are collected - no personal data or code.',
  'settings.openchamber.visual.option.themeMode.system': 'System',
  'settings.openchamber.visual.option.themeMode.light': 'Light',
  'settings.openchamber.visual.option.themeMode.dark': 'Dark',
  'settings.openchamber.visual.option.diffLayout.dynamic.label': 'Dynamic',
  'settings.openchamber.visual.option.diffLayout.dynamic.description': 'New inline, modified side-by-side.',
  'settings.openchamber.visual.option.diffLayout.inline.label': 'Always inline',
  'settings.openchamber.visual.option.diffLayout.inline.description': 'Show as a single unified view.',
  'settings.openchamber.visual.option.diffLayout.sideBySide.label': 'Always side-by-side',
  'settings.openchamber.visual.option.diffLayout.sideBySide.description': 'Compare original and modified files.',
  'settings.openchamber.visual.option.diffViewMode.single.label': 'Single file',
  'settings.openchamber.visual.option.diffViewMode.single.description': 'Show one file at a time.',
  'settings.openchamber.visual.option.diffViewMode.stacked.label': 'All files',
  'settings.openchamber.visual.option.diffViewMode.stacked.description': 'Stack all changed files together.',
  'settings.openchamber.visual.option.mermaidRendering.svg.label': 'SVG',
  'settings.openchamber.visual.option.mermaidRendering.svg.description': 'Render diagrams as scalable graphics.',
  'settings.openchamber.visual.option.mermaidRendering.ascii.label': 'ASCII',
  'settings.openchamber.visual.option.mermaidRendering.ascii.description': 'Render diagrams as text blocks.',
  'settings.openchamber.visual.option.pwaOrientation.system.label': 'Follow system',
  'settings.openchamber.visual.option.pwaOrientation.system.description': 'Respect the device rotation setting.',
  'settings.openchamber.visual.option.pwaOrientation.portrait.label': 'Portrait lock',
  'settings.openchamber.visual.option.pwaOrientation.portrait.description': 'Install the app locked to portrait.',
  'settings.openchamber.visual.option.pwaOrientation.landscape.label': 'Landscape lock',
  'settings.openchamber.visual.option.pwaOrientation.landscape.description': 'Install the app locked to landscape.',
  'settings.openchamber.visual.option.mobileKeyboardMode.native.label': 'Follow browser',
  'settings.openchamber.visual.option.mobileKeyboardMode.native.description': 'Use the browser default for panning and viewport changes when the keyboard opens.',
  'settings.openchamber.visual.option.mobileKeyboardMode.resizeContent.label': 'Resize content',
  'settings.openchamber.visual.option.mobileKeyboardMode.resizeContent.description': 'Ask supported browsers to shrink the app layout instead of relying only on panning.',
  'settings.openchamber.visual.option.userMessageRendering.markdown.label': 'Markdown',
  'settings.openchamber.visual.option.userMessageRendering.markdown.description': 'Render user text with markdown formatting.',
  'settings.openchamber.visual.option.userMessageRendering.plain.label': 'Plain text',
  'settings.openchamber.visual.option.userMessageRendering.plain.description': 'Render user text with preserved whitespace and links.',
  'settings.openchamber.visual.option.chatRenderMode.sorted.label': 'Sorted',
  'settings.openchamber.visual.option.chatRenderMode.sorted.description': 'Render completed assistant messages without live streaming.',
  'settings.openchamber.visual.option.chatRenderMode.live.label': 'Live',
  'settings.openchamber.visual.option.chatRenderMode.live.description': 'Stream assistant text and tools as they arrive.',
  'settings.openchamber.visual.option.messageTransport.auto.label': 'Auto',
  'settings.openchamber.visual.option.messageTransport.auto.description': 'Prefer WebSocket and fall back to SSE if needed.',
  'settings.openchamber.visual.option.messageTransport.ws.label': 'WebSocket',
  'settings.openchamber.visual.option.messageTransport.ws.description': 'Use WebSocket for message streaming.',
  'settings.openchamber.visual.option.messageTransport.sse.label': 'SSE',
  'settings.openchamber.visual.option.messageTransport.sse.description': 'Use Server-Sent Events for message streaming.',
  'settings.openchamber.visual.option.activityRenderMode.collapsed.label': 'Collapsed',
  'settings.openchamber.visual.option.activityRenderMode.collapsed.description': 'Keep Activity collapsed by default.',
  'settings.openchamber.visual.option.activityRenderMode.summary.label': 'Expanded',
  'settings.openchamber.visual.option.activityRenderMode.summary.description': 'Expand Activity by default.',
  'settings.openchamber.visual.option.timeFormat.auto.label': 'Auto',
  'settings.openchamber.visual.option.timeFormat.auto.description': 'Use system locale preference.',
  'settings.openchamber.visual.option.timeFormat.24h.label': '24-hour',
  'settings.openchamber.visual.option.timeFormat.24h.description': 'Show time as 14:15.',
  'settings.openchamber.visual.option.timeFormat.12h.label': '12-hour',
  'settings.openchamber.visual.option.timeFormat.12h.description': 'Show time as 02:15 PM.',
  'settings.openchamber.visual.option.weekStart.auto.label': 'Auto',
  'settings.openchamber.visual.option.weekStart.auto.description': 'Use locale week start.',
  'settings.openchamber.visual.option.weekStart.monday.label': 'Monday',
  'settings.openchamber.visual.option.weekStart.sunday.label': 'Sunday',
  'settings.magicPrompts.page.loading.aria': 'Loading',
  'settings.magicPrompts.page.loading.text': 'Loading Magic Prompts...',
  'settings.magicPrompts.page.block.visiblePrompt': 'Visible Prompt',
  'settings.magicPrompts.page.block.instructions': 'Instructions',
  'settings.magicPrompts.page.group.gitCommitGenerate.title': 'Commit Generation',
  'settings.magicPrompts.page.group.gitCommitGenerate.description': 'Prompts used for commit message generation: visible user message + hidden instructions.',
  'settings.magicPrompts.page.group.gitPrGenerate.title': 'PR Generation',
  'settings.magicPrompts.page.group.gitPrGenerate.description': 'Prompts used for PR title/body generation: visible user message + hidden instructions.',
  'settings.magicPrompts.page.group.githubPrReview.title': 'PR Review',
  'settings.magicPrompts.page.group.githubPrReview.description': 'Prompts used for PR review flow: visible user message + hidden instruction payload.',
  'settings.magicPrompts.page.group.githubIssueReview.title': 'Issue Review',
  'settings.magicPrompts.page.group.githubIssueReview.description': 'Prompts used for issue review flow: visible user message + hidden instruction payload.',
  'settings.magicPrompts.page.group.githubPrFailedChecksReview.title': 'PR Failed Checks Review',
  'settings.magicPrompts.page.group.githubPrFailedChecksReview.description': 'Prompts used for PR failed checks analysis.',
  'settings.magicPrompts.page.group.githubPrCommentsReview.title': 'PR Comments Review',
  'settings.magicPrompts.page.group.githubPrCommentsReview.description': 'Prompts used for PR comments analysis.',
  'settings.magicPrompts.page.group.githubSinglePrCommentReview.title': 'Single PR Comment Review',
  'settings.magicPrompts.page.group.githubSinglePrCommentReview.description': 'Prompts used for single PR comment analysis.',
  'settings.magicPrompts.page.group.gitConflictResolve.title': 'Merge/Rebase Conflict Resolution',
  'settings.magicPrompts.page.group.gitConflictResolve.description': 'Prompts used when resolving merge/rebase conflicts with AI.',
  'settings.magicPrompts.page.group.gitCherrypickConflictResolve.title': 'Cherry-pick Conflict Resolution',
  'settings.magicPrompts.page.group.gitCherrypickConflictResolve.description': 'Prompts used when resolving cherry-pick conflicts in integrate flow.',
  'settings.magicPrompts.page.group.planImprove.title': 'Improve Plan',
  'settings.magicPrompts.page.group.planImprove.description': 'Hidden prompt used when sending a saved plan into an improve flow.',
  'settings.magicPrompts.page.group.planTodo.title': 'Todo Planning',
  'settings.magicPrompts.page.group.planTodo.description': 'Hidden prompt used when sending a todo into a new planning session.',
  'settings.magicPrompts.page.group.planImplement.title': 'Implement Plan',
  'settings.magicPrompts.page.group.planImplement.description': 'Hidden prompt used when sending a saved plan into an implement flow.',
  'settings.magicPrompts.page.group.sessionSummary.title': 'Session Summary',
  'settings.magicPrompts.page.group.sessionSummary.description': 'Prompts used by the /summary slash command: visible user message + hidden instructions. Non-destructive - does not compact session history.',
  'settings.magicPrompts.page.group.sessionWorkspaceReview.title': 'Workspace Review',
  'settings.magicPrompts.page.group.sessionWorkspaceReview.description': 'Prompts used by the /workspace-review slash command: visible user message + hidden instructions. Reviews current workspace changes for high-signal issues only.',
  'settings.magicPrompts.page.group.sessionFusion.title': 'Fusion',
  'settings.magicPrompts.page.group.sessionFusion.description': 'Prompts used when combining multi-run outputs into one final answer: visible user message + hidden instructions before source results.',
  'settings.magicPrompts.page.actions.resetting': 'Resetting...',
  'settings.magicPrompts.page.actions.resetAllOverrides': 'Reset All Overrides',
  'settings.magicPrompts.page.actions.resetToDefault': 'Reset to Default',
  'settings.magicPrompts.page.actions.save': 'Save',
  'settings.magicPrompts.page.placeholdersLabel': 'Placeholders:',
  'settings.magicPrompts.page.validation.visiblePromptRequired': 'Visible prompt cannot be empty.',
  'settings.magicPrompts.page.status.unsavedChanges': 'Unsaved changes',
  'settings.magicPrompts.page.status.usingSavedOverride': 'Using saved override',
  'settings.magicPrompts.page.status.usingBuiltinDefault': 'Using built-in default',
  'settings.magicPrompts.page.toast.loadFailed': 'Failed to load Magic Prompts',
  'settings.magicPrompts.page.toast.visiblePromptRequired': 'Visible prompt cannot be empty',
  'settings.magicPrompts.page.toast.saved': 'Magic prompt saved',
  'settings.magicPrompts.page.toast.saveFailed': 'Failed to save magic prompt',
  'settings.magicPrompts.page.toast.resetSuccess': 'Prompt reset to default',
  'settings.magicPrompts.page.toast.resetFailed': 'Failed to reset prompt',
  'settings.magicPrompts.page.toast.resetAllSuccess': 'All prompt overrides reset',
  'settings.magicPrompts.page.toast.resetAllFailed': 'Failed to reset all prompts',
} as const;
