The preview panel worked by proxying a dev server through OpenChamber's own origin and rewriting the HTML that came back. Anything the rewriter did not anticipate broke, and pages that refuse to be embedded never loaded at all. This deletes the proxy (-1604 lines and its tests) and merges the preview and browser panels into one surface backed by a real Chromium view. What the panel is now - A `<webview>` in its own session partition: logins and cookies persist, hot reload works because nothing is rewritten, DevTools are one click away. - Annotation: pick one element, drag a region, or draw freehand, write a note, and it reaches chat with a screenshot of the visible page with the marks on it. - Toolbar: hard reload, page zoom, device sizes, a light/dark switch that applies to the page rather than the app, and cookie/cache clearing scoped to the panel alone. - Several pages at once, each tab showing the page's own favicon, and an address bar that suggests pages already visited in this project. - Dev servers are listed from what is actually listening on the machine, checked against what a project announced, so a server is offered no matter how it was started. One that is still starting is waited for instead of failing. Remote dev servers The desktop app binds a local port and pipes raw bytes to the OpenChamber host over the existing authenticated connection, so the page keeps its own origin at the root of its own host. The reachable set is exactly what discovery reports and is re-checked per connection, so an authenticated client cannot dial arbitrary local services on the host. Links and redirects to another loopback port stay on the machine that served the page. A tunnel that cannot be opened is reported; it is never replaced by the plain loopback URL, which would answer from the user's own machine under a remote address. Agent control Browser actions are a separate `openchamber_web` tool: open, snapshot, click, type, scroll, inspect computed styles, resize between mobile/tablet/desktop, and capture a screenshot into `.openchamber/screenshots/` in the project. The existing `openchamber` tool keeps sessions, worktrees and scheduled tasks. Each has its own setting in the new Settings -> General -> OpenChamber Tools section, and the plugin is not injected at all when both are off. Capability belongs to the connected client, not to configuration: a client declares on its event stream that it can drive a page, which only a Chromium host does. Exactly one client performs each request — it claims the request before acting, and the first claim wins — because deciding by whose result arrives first would be too late for a click that already happened. No client listening is answered immediately with an explanation rather than a timeout. Runtime boundaries Web tabs get a plain iframe that can display a page but not inspect one. The VS Code extension no longer offers the surface at all, since nothing that makes the panel worth having works there. Mobile is unaffected. Native boundary Camera, microphone, location and device-picker requests from panel pages are denied — Electron grants them by default when no handler is set, and the panel loads whatever address the user types. Page capture, appearance emulation and storage clearing verify that their target belongs to the panel's own session instead of trusting a web-contents id from the renderer. Persisted state Stored `preview` tabs migrate to `browser` (v13 -> v14). Context panel tab limits are now per surface, so filling one surface no longer evicts another's tabs. Address history is stored per project and per runtime. Documentation `preview.mdx` and `desktop-browser.mdx` rewritten across all locales, the agent tool settings path corrected, new `DOCUMENTATION.md` for the browser-control broker and the dev tunnel, and the `ui-api-decoupling` skill updated where it still described the deleted proxy.
2137 lines
171 KiB
TypeScript
2137 lines
171 KiB
TypeScript
export const settingsDict = {
|
||
'settings.providers.page.openCodeGo.title': 'OpenCode Go 用量跟踪',
|
||
'settings.providers.page.openCodeGo.description': '连接 OpenCode Go 控制面板以显示滚动、每周和每月配额。',
|
||
'settings.providers.page.openCodeGo.workspaceId': '工作区 ID',
|
||
'settings.providers.page.openCodeGo.authCookie': '身份验证 Cookie',
|
||
'settings.providers.page.openCodeGo.apiKey': 'API 密钥',
|
||
'settings.providers.page.openCodeGo.help': '从控制面板网址复制工作区 ID,并从浏览器开发者工具复制 auth Cookie。OpenChamber 绝不会扫描浏览器 Cookie 存储。',
|
||
'settings.providers.page.openCodeGo.save': '保存并验证',
|
||
'settings.providers.page.openCodeGo.replace': '替换',
|
||
'settings.providers.page.openCodeGo.validate': '验证',
|
||
'settings.providers.page.openCodeGo.delete': '删除',
|
||
'settings.providers.page.quotaCredentials.saved': '已保存 {provider} 凭据。',
|
||
'settings.providers.page.quotaCredentials.accessToken': '访问令牌',
|
||
'settings.providers.page.quotaCredentials.refreshToken': '刷新令牌',
|
||
'settings.providers.page.quotaCredentials.tokenPlaceholder': '粘贴令牌',
|
||
'settings.providers.page.openCodeGo.saveFailed': '无法验证 OpenCode Go 凭据。',
|
||
'settings.providers.page.openCodeGo.valid': 'OpenCode Go 凭据有效。',
|
||
'settings.providers.page.openCodeGo.invalid': 'OpenCode Go 凭据无效或已过期。',
|
||
'settings.providers.page.openCodeGo.deleted': '已删除 OpenCode Go 凭据。',
|
||
'settings.providers.page.openCodeGo.deleteFailed': '无法删除 OpenCode Go 凭据。',
|
||
'settings.appearance.language.label': '语言',
|
||
'settings.appearance.language.description': '选择界面语言。',
|
||
'settings.appearance.language.select': '选择语言',
|
||
'settings.window.description': 'OpenChamber 设置窗口。',
|
||
'settings.view.home.title': '设置',
|
||
'settings.view.home.description': '跳转到常用页面。',
|
||
'settings.view.home.cards.providers.title': '提供商',
|
||
'settings.view.home.cards.providers.description': '连接模型和凭据',
|
||
'settings.view.home.cards.agents.title': '智能体',
|
||
'settings.view.home.cards.agents.description': '提示词、工具、权限',
|
||
'settings.view.home.cards.skillsCatalog.title': '技能目录',
|
||
'settings.view.home.cards.skillsCatalog.description': '从目录安装技能',
|
||
'settings.view.home.cards.mcp.title': 'MCP',
|
||
'settings.view.home.cards.mcp.description': '配置 MCP 服务器和连接',
|
||
'settings.view.home.cards.plugins.title': 'Plugins',
|
||
'settings.view.home.cards.plugins.description': 'Manage opencode plugins',
|
||
'settings.view.home.cards.usage.title': '用量',
|
||
'settings.view.home.cards.usage.description': '配额和花费可见性',
|
||
'settings.view.unavailable.title': '不可用',
|
||
'settings.view.unavailable.description': '此设置页面在当前运行环境中不可用。',
|
||
'settings.view.badge.beta': '测试版',
|
||
'settings.view.actions.reloadOpenCode': '重新加载 OpenCode',
|
||
'settings.view.actions.reloadOpenCodeTooltip': '重启 OpenCode 并重新加载其配置。',
|
||
|
||
'settings.view.actions.applyAndRestartOpenCode': '应用并重启',
|
||
'settings.view.actions.applyAndRestartOpenCodeTooltipSingle': '应用 1 项待处理的配置更改并重启 OpenCode。',
|
||
'settings.view.actions.applyAndRestartOpenCodeTooltipPlural': '应用 {count} 项待处理的配置更改并重启 OpenCode。',
|
||
'settings.view.pendingRestart.applying': '正在重启…',
|
||
'settings.view.pendingRestart.applied': '已使用待处理的配置更改重启 OpenCode。',
|
||
'settings.view.pendingRestart.applyFailed': '应用配置更改失败。',
|
||
'settings.view.pendingRestart.manualRestartRequired': '已保存到磁盘。请重启已连接的 OpenCode 服务器以应用更改。',
|
||
'settings.view.pendingRestart.saved': '已保存。请重启 OpenCode 以应用。',
|
||
|
||
'settings.view.pendingRestart.confirm.title': '应用并重启?',
|
||
'settings.view.pendingRestart.confirm.description': '重启 OpenCode 将停止所有正在运行的聊天。已保存的配置更改将在重启后生效。',
|
||
'settings.view.pendingRestart.confirm.dontShowAgain': '不再显示',
|
||
'settings.view.pendingRestart.confirm.cancel': '取消', 'settings.view.actions.backToSettings': '返回设置',
|
||
'settings.view.actions.closeSettings': '关闭设置',
|
||
'settings.view.actions.openSectionList': '打开分组列表',
|
||
'settings.view.actions.closeSettingsWithShortcut': '关闭设置({shortcut}+,)',
|
||
'settings.view.actions.back': '返回',
|
||
'settings.view.actions.resizeNavigation': '调整设置导航宽度',
|
||
'settings.view.search.placeholder': '搜索设置',
|
||
'settings.view.search.aria': '搜索设置',
|
||
'settings.view.search.clear': '清除设置搜索',
|
||
'settings.view.search.noResults': '没有匹配的设置',
|
||
'settings.view.nav.group.general': 'OpenChamber',
|
||
'settings.view.nav.group.projects': '工作区',
|
||
'settings.view.nav.group.opencode': 'OpenCode',
|
||
'settings.view.nav.group.content': '资源库',
|
||
'settings.page.projects.title': '项目',
|
||
'settings.page.remoteInstances.title': '远程实例',
|
||
'settings.page.providers.title': '提供商',
|
||
'settings.page.usage.title': '用量',
|
||
'settings.page.agents.title': '智能体',
|
||
'settings.page.commands.title': '命令',
|
||
'settings.page.mcp.title': 'MCP',
|
||
'settings.page.plugins.title': 'Plugins',
|
||
'settings.page.skills.title': '技能',
|
||
'settings.page.skillsCatalog.title': '技能目录',
|
||
'settings.page.git.title': 'Git',
|
||
'settings.page.appearance.title': '外观',
|
||
'settings.page.appearance.description': '自定义 OpenChamber 的外观与体验。',
|
||
'settings.page.chat.title': '聊天',
|
||
'settings.page.chat.description': '配置消息和工具的显示方式。',
|
||
'settings.page.shortcuts.title': '快捷键',
|
||
'settings.page.shortcuts.description': '自定义键盘快捷键。',
|
||
'settings.page.general.title': '通用',
|
||
'settings.page.general.description': '应用启动、安全、连接与隐私。',
|
||
'settings.page.sessions.title': '会话',
|
||
'settings.page.sessions.description': '设置会话的默认值和保留策略。',
|
||
'settings.page.magicPrompts.title': '魔法提示词',
|
||
'settings.page.notifications.title': '通知',
|
||
'settings.page.notifications.description': '选择何时以及如何接收通知。',
|
||
'settings.page.voice.title': '语音',
|
||
'settings.page.voice.description': '配置语音朗读与听写。',
|
||
'settings.page.tunnel.title': '外部隧道',
|
||
'settings.page.tunnel.description': '通过远程隧道公开此实例。',
|
||
'settings.page.about.title': '关于',
|
||
'settings.page.snippets.title': '代码片段',
|
||
'settings.snippets.sidebar.title': '代码片段',
|
||
'settings.snippets.sidebar.total': '共 {count} 个',
|
||
'settings.snippets.sidebar.actions.create': '创建代码片段',
|
||
'settings.snippets.sidebar.actions.more': '{name} 的更多操作',
|
||
'settings.snippets.sidebar.toast.deleted': '代码片段已删除',
|
||
'settings.snippets.sidebar.toast.deleteFailed': '删除代码片段失败',
|
||
'settings.snippets.sidebar.dialog.deleteTitle': '删除代码片段?',
|
||
'settings.snippets.sidebar.dialog.deleteDescription': '这将永久删除 #{name}。',
|
||
'settings.snippets.page.empty.title': '选择代码片段',
|
||
'settings.snippets.page.empty.description': '从侧边栏选择代码片段进行编辑。',
|
||
'settings.snippets.page.title.new': '新建代码片段',
|
||
'settings.snippets.page.field.namePlaceholder': 'snippet-name',
|
||
'settings.snippets.page.field.descriptionPlaceholder': '这个代码片段的作用',
|
||
'settings.snippets.page.field.aliases': '别名',
|
||
'settings.snippets.page.field.aliasesPlaceholder': 'safe, careful',
|
||
'settings.snippets.page.field.content': '内容',
|
||
'settings.snippets.page.field.contentPlaceholder': '代码片段 Markdown...',
|
||
'settings.snippets.page.hint': '在提示词中使用 #name。支持别名和与 opencode-snippets 兼容的 prepend/append 块。',
|
||
'settings.snippets.page.toast.nameRequired': '代码片段名称为必填项',
|
||
'settings.snippets.page.toast.contentRequired': '代码片段内容为必填项',
|
||
'settings.snippets.page.toast.saveFailed': '保存代码片段失败',
|
||
'settings.snippets.page.toast.saved': '代码片段已保存',
|
||
'settings.openchamber.tunnel.title': '外部隧道',
|
||
'settings.openchamber.tunnel.description': '通过快速链接或你自己的 Cloudflare Managed Remote 隧道配置安全远程访问。',
|
||
'settings.openchamber.tunnel.note.serverSideEnforced': '安全隧道访问在服务端强制执行。',
|
||
'settings.openchamber.tunnel.note.connectLinksOneTime': '连接链接为一次性,隧道停止或连接链接 TTL 到期后会被吊销。',
|
||
'settings.openchamber.tunnel.note.cloudflareConnectorTarget': 'Cloudflare connector 目标:',
|
||
'settings.openchamber.tunnel.note.cloudflareConnectorTargetUse': '对于 Cloudflare connector 目标,请使用',
|
||
'settings.openchamber.tunnel.note.tokensSavedPerTunnel': 'Token 按隧道保存并从磁盘复用。',
|
||
'settings.openchamber.tunnel.note.customConfigUsed': '启动隧道时将使用自定义配置文件。',
|
||
'settings.openchamber.tunnel.note.defaultConfigUsed': '为空时,cloudflared 使用默认配置(~/.cloudflared/config.yml)。',
|
||
'settings.openchamber.tunnel.note.managedRemoteRequiresDomain': 'Managed Remote 隧道需要你在 Cloudflare 账户中购买的域名。',
|
||
'settings.openchamber.tunnel.note.managedLocalUsesConfig': 'Managed Local 隧道使用本地 cloudflared 配置文件。',
|
||
'settings.openchamber.tunnel.note.startModeAndGenerateLink': '启动 {mode} 隧道并生成一次性连接链接。此隧道使用期间请勿关闭应用。',
|
||
'settings.openchamber.tunnel.note.scanQrToConnect': '用手机扫码连接。',
|
||
'settings.openchamber.tunnel.section.redeemedAccessLinks': '已兑换访问链接',
|
||
'settings.openchamber.tunnel.section.savedManagedRemoteTunnels': '已保存的 Managed Remote 隧道',
|
||
'settings.openchamber.tunnel.notAvailable.cloudflaredNotFound': '未找到 cloudflared',
|
||
'settings.openchamber.tunnel.notAvailable.dependencyNotFound': '未找到 {dependency}。',
|
||
'settings.openchamber.tunnel.notAvailable.installHint': '安装它以启用远程隧道访问:',
|
||
'settings.openchamber.tunnel.field.provider': '提供商',
|
||
'settings.openchamber.tunnel.field.providerPlaceholder': '选择提供商',
|
||
'settings.openchamber.tunnel.field.tunnelType': '隧道类型',
|
||
'settings.openchamber.tunnel.field.connectLinkTtl': '连接链接 TTL',
|
||
'settings.openchamber.tunnel.field.tunnelSessionTtl': '隧道会话 TTL',
|
||
'settings.openchamber.tunnel.field.hostnameLabel': '主机名:',
|
||
'settings.openchamber.tunnel.field.savedTokenAvailablePlaceholder': '已保存 token(可选替换)',
|
||
'settings.openchamber.tunnel.field.pasteTokenPlaceholder': '粘贴此隧道的 token',
|
||
'settings.openchamber.tunnel.field.newPresetNamePlaceholder': '隧道名称(例如 Production)',
|
||
'settings.openchamber.tunnel.field.newPresetHostnamePlaceholder': '主机名(例如 oc.example.com)',
|
||
'settings.openchamber.tunnel.field.newPresetTokenPlaceholder': 'Token',
|
||
'settings.openchamber.tunnel.field.managedRemoteTokenInfoAria': 'Managed Remote 隧道 token 信息',
|
||
'settings.openchamber.tunnel.field.configurationFile': '配置文件',
|
||
'settings.openchamber.tunnel.field.configurationFilePlaceholder': '使用默认 cloudflared 配置',
|
||
'settings.openchamber.tunnel.field.managedRemoteTunnelToConnect': '用于连接的 Managed Remote 隧道',
|
||
'settings.openchamber.tunnel.field.selectSavedTunnelPlaceholder': '选择已保存隧道',
|
||
'settings.openchamber.tunnel.field.publicUrlHint': '公开 URL(没有 token 无法访问)',
|
||
'settings.openchamber.tunnel.field.connectLink': '连接链接',
|
||
'settings.openchamber.tunnel.field.expires': '到期',
|
||
'settings.openchamber.tunnel.field.connectQrAlt': '隧道连接二维码',
|
||
'settings.openchamber.tunnel.actions.removePresetAria': '移除 {name}',
|
||
'settings.openchamber.tunnel.actions.saveToken': '保存 token',
|
||
'settings.openchamber.tunnel.actions.browseConfigFileAria': '浏览配置文件',
|
||
'settings.openchamber.tunnel.actions.clearConfigFileAria': '清除配置文件',
|
||
'settings.openchamber.tunnel.actions.openManagedRemoteDocs': '查看 Managed Remote 隧道配置文档',
|
||
'settings.openchamber.tunnel.actions.openManagedLocalDocs': '查看 Managed Local 隧道配置文档',
|
||
'settings.openchamber.tunnel.actions.startTunnel': '启动隧道',
|
||
'settings.openchamber.tunnel.actions.startingTunnel': '正在启动隧道...',
|
||
'settings.openchamber.tunnel.actions.stopTunnel': '停止隧道',
|
||
'settings.openchamber.tunnel.actions.stopping': '正在停止...',
|
||
'settings.openchamber.tunnel.actions.newConnectLink': '新建连接链接',
|
||
'settings.openchamber.tunnel.actions.copied': '已复制',
|
||
'settings.openchamber.tunnel.actions.retry': '重试',
|
||
'settings.openchamber.tunnel.option.moreProvidersSoon': '更多提供商即将上线',
|
||
'settings.openchamber.tunnel.option.mode.quick.label': 'Quick',
|
||
'settings.openchamber.tunnel.option.mode.quick.tooltip': 'Quick Tunnel 仅尽力提供,不保证可用性。',
|
||
'settings.openchamber.tunnel.option.mode.managedRemote.label': 'Managed Remote',
|
||
'settings.openchamber.tunnel.option.mode.managedRemote.tooltip': 'Managed Remote 使用你的 Cloudflare 账户与主机名提供长期访问。',
|
||
'settings.openchamber.tunnel.option.mode.managedLocal.label': 'Managed Local',
|
||
'settings.openchamber.tunnel.option.mode.managedLocal.tooltip': 'Managed Local 使用本地 cloudflared 配置文件。',
|
||
'settings.openchamber.tunnel.warning.quickModeReliability': '如需更可靠的长期访问,请切换到 Managed Remote 或 Managed Local 隧道模式。',
|
||
'settings.openchamber.tunnel.warning.replacesActiveTunnel': '启动该隧道会替换当前活动隧道,并吊销现有连接链接与远程会话。',
|
||
'settings.openchamber.tunnel.badge.quick': 'QUICK',
|
||
'settings.openchamber.tunnel.badge.remote': 'REMOTE',
|
||
'settings.openchamber.tunnel.badge.local': 'LOCAL',
|
||
'settings.openchamber.tunnel.state.loading': '加载中',
|
||
'settings.openchamber.tunnel.state.expired': '已过期',
|
||
'settings.openchamber.tunnel.state.revoked': '已吊销',
|
||
'settings.openchamber.tunnel.state.inactive': '不活跃',
|
||
'settings.openchamber.tunnel.state.noExpiry': '无过期时间',
|
||
'settings.openchamber.tunnel.state.never': '永不过期',
|
||
'settings.openchamber.tunnel.state.tunnelReady': '隧道已就绪',
|
||
'settings.openchamber.tunnel.session.redeemedAt': '已兑换 {time}',
|
||
'settings.openchamber.tunnel.session.expiresIn': '{remaining} 后过期',
|
||
'settings.openchamber.tunnel.session.inactiveWithReason': '不活跃({reason})',
|
||
'settings.openchamber.tunnel.error.invalidConfigExtension': '配置文件必须使用 .yml、.yaml 或 .json 扩展名。',
|
||
'settings.openchamber.tunnel.tooltip.tokensSavedPath': 'Token 保存在 ~/.config/openchamber/cloudflare-managed-remote-tunnels.json。',
|
||
'settings.openchamber.tunnel.empty.noManagedRemoteTunnels': '尚未保存任何 Managed Remote 隧道。',
|
||
'settings.openchamber.tunnel.toast.checkAvailabilityFailed': '检查隧道可用性失败',
|
||
'settings.openchamber.tunnel.toast.saveSettingsFailed': '保存隧道设置失败',
|
||
'settings.openchamber.tunnel.toast.saveTtlFailed': '保存隧道 TTL 设置失败',
|
||
'settings.openchamber.tunnel.toast.saveTokenFailed': '保存 Managed Remote 隧道 token 失败',
|
||
'settings.openchamber.tunnel.toast.selectOrAddManagedRemoteFirst': '请先选择或添加一个 Managed Remote 隧道',
|
||
'settings.openchamber.tunnel.toast.managedRemoteTokenRequiredBeforeStarting': '启动前必须提供 Managed Remote 隧道 token',
|
||
'settings.openchamber.tunnel.toast.addManagedRemoteTokenBeforeStarting': '请先添加 Managed Remote 隧道 token 再启动',
|
||
'settings.openchamber.tunnel.toast.startFailed': '启动隧道失败',
|
||
'settings.openchamber.tunnel.toast.startedButNoPublicUrl': '隧道已启动,但未返回公开 URL',
|
||
'settings.openchamber.tunnel.toast.replacedTunnelSingleSingle': '已替换之前的隧道:吊销 1 个链接,失效 1 个会话。',
|
||
'settings.openchamber.tunnel.toast.replacedTunnelSingleManySessions': '已替换之前的隧道:吊销 1 个链接,失效 {invalidatedSessionCount} 个会话。',
|
||
'settings.openchamber.tunnel.toast.replacedTunnelManyLinksSingleSession': '已替换之前的隧道:吊销 {revokedBootstrapCount} 个链接,失效 1 个会话。',
|
||
'settings.openchamber.tunnel.toast.replacedTunnelManyMany': '已替换之前的隧道:吊销 {revokedBootstrapCount} 个链接,失效 {invalidatedSessionCount} 个会话。',
|
||
'settings.openchamber.tunnel.toast.linkReady': '隧道链接已就绪',
|
||
'settings.openchamber.tunnel.toast.stopped': '隧道已停止',
|
||
'settings.openchamber.tunnel.toast.stopFailed': '停止隧道失败',
|
||
'settings.openchamber.tunnel.toast.connectLinkCopied': '连接链接已复制',
|
||
'settings.openchamber.tunnel.toast.copyUrlFailed': '复制 URL 失败',
|
||
'settings.openchamber.tunnel.toast.saveSelectedManagedRemoteFailed': '保存所选 Managed Remote 隧道失败',
|
||
'settings.openchamber.tunnel.toast.tunnelNameRequired': '隧道名称为必填项',
|
||
'settings.openchamber.tunnel.toast.managedRemoteHostnameRequired': 'Managed Remote 隧道主机名为必填项',
|
||
'settings.openchamber.tunnel.toast.managedRemoteTokenRequired': 'Managed Remote 隧道 token 为必填项',
|
||
'settings.openchamber.tunnel.toast.hostnameAlreadyExists': '该主机名已存在',
|
||
'settings.openchamber.tunnel.toast.managedRemoteSaved': 'Managed Remote 隧道已保存',
|
||
'settings.openchamber.tunnel.toast.managedRemoteRemoved': 'Managed Remote 隧道已移除',
|
||
'settings.magicPrompts.sidebar.title': '魔法提示词',
|
||
'settings.magicPrompts.sidebar.description': '选择要编辑的提示词模板。',
|
||
'settings.magicPrompts.sidebar.group.git': 'Git',
|
||
'settings.magicPrompts.sidebar.group.github': 'GitHub',
|
||
'settings.magicPrompts.sidebar.group.planning': '规划',
|
||
'settings.magicPrompts.sidebar.group.session': '会话',
|
||
'settings.magicPrompts.sidebar.item.gitCommitGenerate': '提交生成',
|
||
'settings.magicPrompts.sidebar.item.gitPrGenerate': 'PR 生成',
|
||
'settings.magicPrompts.sidebar.item.gitConflictResolve': '合并/Rebase 冲突解决',
|
||
'settings.magicPrompts.sidebar.item.gitCherrypickConflictResolve': 'Cherry-pick 冲突解决',
|
||
'settings.magicPrompts.sidebar.item.githubPrReview': 'PR 审查',
|
||
'settings.magicPrompts.sidebar.item.githubIssueReview': 'Issue 审查',
|
||
'settings.magicPrompts.sidebar.item.githubPrFailedChecksReview': 'PR 失败检查审查',
|
||
'settings.magicPrompts.sidebar.item.githubPrCommentsReview': 'PR 评论审查',
|
||
'settings.magicPrompts.sidebar.item.githubSinglePrCommentReview': '单条 PR 评论审查',
|
||
'settings.magicPrompts.sidebar.item.planTodo': '待办规划',
|
||
'settings.magicPrompts.sidebar.item.planImprove': '改进计划',
|
||
'settings.magicPrompts.sidebar.item.planImplement': '执行计划',
|
||
'settings.magicPrompts.sidebar.item.sessionSummary': '会话总结',
|
||
'settings.magicPrompts.sidebar.item.sessionWorkspaceReview': '工作区审查',
|
||
'settings.magicPrompts.sidebar.item.sessionExplore': '代码库导览',
|
||
'settings.magicPrompts.sidebar.item.sessionFeaturePlan': '功能规划',
|
||
'settings.magicPrompts.sidebar.item.sessionCraftGoal': '创建 Goal',
|
||
'settings.magicPrompts.page.group.sessionCraftGoal.title': '创建 Goal',
|
||
'settings.magicPrompts.page.group.sessionCraftGoal.description': '由 /craft-goal 斜杠命令使用的提示词:可见用户消息 + 隐藏说明。通过引导式探索将想法或任务转化为清晰且有证据可验证的 Goal。',
|
||
'settings.magicPrompts.sidebar.item.sessionCatchUp': '快速回顾',
|
||
'settings.magicPrompts.sidebar.item.sessionDebug': '调试',
|
||
'settings.magicPrompts.sidebar.item.sessionWeigh': '权衡方案',
|
||
'settings.magicPrompts.sidebar.item.sessionFusion': '融合',
|
||
'settings.remoteInstances.sidebar.title': '远程实例',
|
||
'settings.remoteInstances.sidebar.total': '总计 {count}',
|
||
'settings.remoteInstances.sidebar.newSshInstanceName': '新的 SSH 连接',
|
||
'settings.remoteInstances.sidebar.actions.addSshInstance': '添加 SSH 连接',
|
||
'settings.remoteInstances.sidebar.actions.connect': '连接',
|
||
'settings.remoteInstances.sidebar.actions.disconnect': '断开连接',
|
||
'settings.remoteInstances.sidebar.actions.retry': '重试',
|
||
'settings.remoteInstances.sidebar.actions.remove': '移除',
|
||
'settings.remoteInstances.sidebar.confirm.localPortInUseRetry': '本地端口已被占用。是否选择一个随机空闲本地端口并重试?',
|
||
'settings.remoteInstances.sidebar.toast.createFailed': '无法创建 SSH 连接',
|
||
'settings.remoteInstances.sidebar.toast.retriedWithRandomPort': '已使用随机本地端口重试',
|
||
'settings.remoteInstances.sidebar.toast.connectFailed': '连接实例失败',
|
||
'settings.remoteInstances.sidebar.toast.disconnectFailed': '断开实例连接失败',
|
||
'settings.remoteInstances.sidebar.toast.retryFailed': '重试连接失败',
|
||
'settings.remoteInstances.sidebar.toast.removeFailed': '移除实例失败',
|
||
'settings.remoteInstances.direct.sidebarTitle': '服务器链接',
|
||
'settings.remoteInstances.direct.sidebarDescription': '使用链接或令牌连接',
|
||
'settings.remoteInstances.direct.title': '其他 OpenChamber 服务器',
|
||
'settings.remoteInstances.direct.description': '此应用可切换到的服务器。从另一台服务器导入配对链接,或通过地址添加。',
|
||
'settings.remoteInstances.direct.addDialog.description': '通过 URL 添加另一个 OpenChamber 服务器。适用于服务器已在运行且你拥有连接令牌的情况。',
|
||
'settings.remoteInstances.direct.field.labelPlaceholder': '标签(可选)',
|
||
'settings.remoteInstances.direct.field.urlPlaceholder': 'https://host:port',
|
||
'settings.remoteInstances.direct.field.tokenPlaceholder': '连接令牌(受信任的本地服务器可选)',
|
||
'settings.remoteInstances.direct.note': '连接令牌会保存在此设备上,并且只在此应用连接到该服务器时使用。',
|
||
'settings.remoteInstances.direct.headers.title': 'Additional headers',
|
||
'settings.remoteInstances.direct.headers.description': 'Optional HTTP headers for desktop API requests. Authorization is reserved for the connection token.',
|
||
'settings.remoteInstances.direct.headers.field.namePlaceholder': 'Header name',
|
||
'settings.remoteInstances.direct.headers.field.valuePlaceholder': 'Header value',
|
||
'settings.remoteInstances.direct.headers.actions.add': 'Add header',
|
||
'settings.remoteInstances.direct.headers.removeAria': 'Remove header',
|
||
'settings.remoteInstances.direct.actions.add': '添加服务器',
|
||
'settings.remoteInstances.direct.import.description': '粘贴来自另一个 OpenChamber 服务器的连接链接。',
|
||
'settings.remoteInstances.direct.import.placeholder': 'openchamber://connect?...',
|
||
'settings.remoteInstances.direct.import.action': '导入链接',
|
||
'settings.remoteInstances.direct.error.invalidConnectLink': '无效的 OpenChamber 连接链接。',
|
||
'settings.remoteInstances.direct.state.loading': '正在加载服务器...',
|
||
'settings.remoteInstances.direct.state.empty': '尚未添加其他服务器。',
|
||
'settings.remoteInstances.clientAuth.title': '连接到此服务器',
|
||
'settings.remoteInstances.clientAuth.description': '创建安全链接或令牌,让 OpenChamber Desktop 可以连接到此服务器。',
|
||
'settings.remoteInstances.clientAuth.field.labelPlaceholder': '设备名称 — 例如 My iPhone',
|
||
'settings.remoteInstances.clientAuth.actions.create': '创建令牌',
|
||
'settings.remoteInstances.clientAuth.actions.pair': '创建链接',
|
||
'settings.remoteInstances.clientAuth.actions.revoke': '撤销',
|
||
'settings.remoteInstances.clientAuth.actions.clearRevoked': '清除已撤销',
|
||
'settings.remoteInstances.clientAuth.qrAlt': 'OpenChamber connection QR code',
|
||
'settings.remoteInstances.clientAuth.qrEnlarge': '放大二维码',
|
||
'settings.remoteInstances.clientAuth.qrScanHint': '用另一台设备上的 OpenChamber 应用扫描。一次性使用且会过期。',
|
||
'settings.remoteInstances.clientAuth.qrDialogTitle': '扫码连接',
|
||
'settings.remoteInstances.clientAuth.actions.addDevice': '添加设备',
|
||
'settings.remoteInstances.clientAuth.actions.copied': '已复制',
|
||
'settings.remoteInstances.clientAuth.addDevice.transportLabel': '你会在哪里使用这台设备?',
|
||
'settings.remoteInstances.clientAuth.addDevice.subtitle': '创建一次性二维码,把另一台设备连接到此服务器。',
|
||
'settings.remoteInstances.clientAuth.addDevice.transport.local': '仅本机',
|
||
'settings.remoteInstances.clientAuth.addDevice.transport.localHint': '供同一台电脑上的应用使用。',
|
||
'settings.remoteInstances.clientAuth.addDevice.transport.lan': '仅家庭网络',
|
||
'settings.remoteInstances.clientAuth.addDevice.transport.lanHint': '通过 Wi-Fi 直接连接。离开此网络后无法使用。',
|
||
'settings.remoteInstances.clientAuth.addDevice.transport.relay': '任何地方',
|
||
'settings.remoteInstances.clientAuth.addDevice.transport.relayHint': '在家和外出都可用。外出时流量经由 OpenChamber Private Relay(端到端加密隧道)传输,无需配置。',
|
||
'settings.remoteInstances.clientAuth.addDevice.fallback.relay': '外出时也允许通过加密中继连接',
|
||
'settings.remoteInstances.clientAuth.addDevice.fallback.preferLocal': '在家时优先使用直接连接',
|
||
'settings.remoteInstances.clientAuth.addDevice.create': '创建二维码',
|
||
'settings.remoteInstances.clientAuth.addDevice.done': '完成',
|
||
'settings.remoteInstances.clientAuth.addDevice.connectedToast': '设备已连接。',
|
||
'settings.remoteInstances.clientAuth.pairingUrl': '连接链接',
|
||
'settings.remoteInstances.clientAuth.createdToken': '请立即复制此令牌。出于安全考虑,它不会再次显示。',
|
||
'settings.remoteInstances.clientAuth.state.loading': '正在加载令牌...',
|
||
'settings.remoteInstances.clientAuth.state.empty': '尚无已连接设备。',
|
||
'settings.remoteInstances.clientAuth.state.revoked': '已撤销',
|
||
'settings.remoteInstances.clientAuth.state.thisDevice': '此设备',
|
||
'settings.remoteInstances.clientAuth.state.pending': '等待连接…',
|
||
'settings.remoteInstances.clientAuth.state.viaRelay': 'Relay',
|
||
'settings.remoteInstances.clientAuth.state.connectedDirect': '已连接 · 局域网',
|
||
'settings.remoteInstances.clientAuth.state.connectedRelay': '已连接 · 中继',
|
||
'settings.remoteInstances.clientAuth.lastUsed': '上次使用 {date}',
|
||
'settings.remoteInstances.clientAuth.neverUsed': '从未使用',
|
||
'settings.remoteInstances.relay.title': 'OpenChamber Relay',
|
||
'settings.remoteInstances.relay.autoHint': '通过中继配对设备时自动开启。',
|
||
'settings.remoteInstances.relay.description': '无需开放端口,即可让你的其他设备从任何地方连接。流量端到端加密,中继无法读取内容。',
|
||
'settings.remoteInstances.relay.enableHint': '在此服务器上启用中继之前,不会共享任何内容。',
|
||
'settings.remoteInstances.relay.actions.enable': '启用中继',
|
||
'settings.remoteInstances.relay.actions.disable': '停用',
|
||
'settings.remoteInstances.relay.confirm.disable': '停用中继?通过它连接的设备将立即断开。',
|
||
'settings.remoteInstances.relay.state.loading': '正在检查中继状态...',
|
||
'settings.remoteInstances.relay.state.disabled': '已停用',
|
||
'settings.remoteInstances.relay.state.connecting': '连接中',
|
||
'settings.remoteInstances.relay.state.connected': '已连接',
|
||
'settings.remoteInstances.relay.state.reconnecting': '重新连接中',
|
||
'settings.remoteInstances.relay.state.error': '错误',
|
||
'settings.remoteInstances.relay.status.clientsOne': '已连接 {count} 台设备',
|
||
'settings.remoteInstances.relay.status.clientsMany': '已连接 {count} 台设备',
|
||
'settings.remoteInstances.relay.pair.title': '配对设备',
|
||
'settings.remoteInstances.relay.pair.labelPlaceholder': '设备名称(可选)',
|
||
'settings.remoteInstances.relay.pair.includeToken': '包含访问令牌(扫一次即完成配对)',
|
||
'settings.remoteInstances.relay.pair.noTokenHint': '不包含令牌时,设备连接后需使用此服务器的界面密码登录。',
|
||
'settings.remoteInstances.relay.pair.generate': '创建配对链接',
|
||
'settings.remoteInstances.relay.pair.requiresConnected': '中继连接后即可配对。',
|
||
'settings.remoteInstances.relay.pair.linkLabel': '配对链接',
|
||
'settings.remoteInstances.relay.pair.warning': '此链接可访问此服务器,请勿分享。',
|
||
'settings.remoteInstances.relay.pair.qrAlt': '中继配对二维码',
|
||
'settings.remoteInstances.relay.pair.showQr': '显示二维码',
|
||
'settings.remoteInstances.relay.pair.qrDialogTitle': '扫描配对',
|
||
'settings.remoteInstances.relay.pair.qrDialogDescription': '用其他设备上的 OpenChamber 应用扫描此二维码。',
|
||
'settings.remoteInstances.relay.pair.manageHint': '可在上方“连接到此服务器”列表中管理或吊销已配对的设备。',
|
||
'settings.remoteInstances.relay.toast.enableFailed': '无法启用中继',
|
||
'settings.remoteInstances.relay.toast.disableFailed': '无法停用中继',
|
||
'settings.remoteInstances.relay.toast.offerFailed': '无法创建配对链接',
|
||
'settings.remoteInstances.relay.toast.linkCopied': '已复制配对链接',
|
||
'settings.remoteInstances.sidebar.phase.ready': '就绪',
|
||
'settings.remoteInstances.sidebar.phase.error': '错误',
|
||
'settings.remoteInstances.sidebar.phase.reconnect': '重连',
|
||
'settings.remoteInstances.sidebar.phase.installing': '安装中',
|
||
'settings.remoteInstances.sidebar.phase.updating': '更新中',
|
||
'settings.remoteInstances.sidebar.phase.forwarding': '转发中',
|
||
'settings.remoteInstances.sidebar.phase.starting': '启动中',
|
||
'settings.remoteInstances.sidebar.phase.connecting': '连接中',
|
||
'settings.remoteInstances.sidebar.phase.idle': '空闲',
|
||
'settings.remoteInstances.page.section.instance': '实例',
|
||
'settings.remoteInstances.page.section.instanceDescription': '为此连接选择 SSH 命令和显示名称。',
|
||
'settings.remoteInstances.page.field.mode': '模式',
|
||
'settings.remoteInstances.page.field.modeHint': '选择是由 OpenChamber 为你启动服务器,还是连接到已在运行的服务器。',
|
||
'settings.remoteInstances.page.field.modePlaceholder': '选择模式',
|
||
'settings.remoteInstances.page.field.modeManaged': '帮我启动',
|
||
'settings.remoteInstances.page.field.modeExternal': '已在运行',
|
||
'settings.remoteInstances.page.field.preferredRemotePort': '首选远程端口',
|
||
'settings.remoteInstances.page.field.preferredRemotePortHint': '远程机器上使用的端口。留空则自动选择。',
|
||
'settings.remoteInstances.page.field.keepServerRunning': '保持服务运行',
|
||
'settings.remoteInstances.page.field.keepServerRunningHint': '断开连接后仍让 OpenChamber 在远程机器上运行。',
|
||
'settings.remoteInstances.page.field.bindHost': '绑定主机',
|
||
'settings.remoteInstances.page.field.bindHostHint': '本地连接监听的地址。除非需要局域网访问,否则请使用 127.0.0.1 或 localhost。',
|
||
'settings.remoteInstances.page.field.preferredLocalPort': '首选本地端口',
|
||
'settings.remoteInstances.page.field.preferredLocalPortHint': '为此连接打开的本地端口。留空则自动选择。',
|
||
'settings.remoteInstances.page.field.forwardType': '转发类型',
|
||
'settings.remoteInstances.page.field.localHostPlaceholder': '127.0.0.1',
|
||
'settings.remoteInstances.page.field.remoteHostPlaceholder': '127.0.0.1',
|
||
'settings.remoteInstances.page.field.auto': '自动',
|
||
'settings.remoteInstances.page.confirm.bindAllInterfaces': '绑定到 0.0.0.0 会将转发端口暴露到本地网络。是否继续?',
|
||
'settings.remoteInstances.page.preview.localSocks5': '(本地 SOCKS5)',
|
||
'settings.remoteInstances.page.preview.local': '(本地)',
|
||
'settings.remoteInstances.page.preview.remote': '(远程)',
|
||
'settings.remoteInstances.page.toast.openLocalEndpointFailed': '无法打开本地地址',
|
||
'settings.remoteInstances.page.toast.localUrlCopied': '本地 URL 已复制',
|
||
'settings.remoteInstances.page.actions.copyLocalUrl': '复制本地 URL',
|
||
'settings.remoteInstances.page.actions.open': '打开',
|
||
'settings.remoteInstances.page.logsDialog.selectedInstanceFallback': '所选实例',
|
||
'settings.remoteInstances.page.patternDialog.descriptionWithHost': '{host} 需要一个具体目标地址。',
|
||
'settings.remoteInstances.page.patternDialog.description': '输入目标地址。',
|
||
'settings.common.infoAria': '更多信息',
|
||
'settings.common.actions.cancel': '取消',
|
||
'settings.common.actions.create': '创建',
|
||
'settings.common.actions.delete': '删除',
|
||
'settings.common.actions.reset': '重置',
|
||
'settings.common.actions.rename': '重命名',
|
||
'settings.common.actions.duplicate': '复制',
|
||
'settings.common.actions.import': '导入',
|
||
'settings.common.actions.copyAll': '全部复制',
|
||
'settings.common.actions.clear': '清除',
|
||
'settings.common.actions.saving': '保存中...',
|
||
'settings.common.status.saved': '已保存',
|
||
'settings.common.status.saveFailed': '保存失败',
|
||
'settings.common.actions.saveChanges': '保存更改',
|
||
'settings.common.scope.global': '全局',
|
||
'settings.common.scope.project': '项目',
|
||
'settings.common.field.description': '描述',
|
||
'settings.common.badge.new': '新建',
|
||
'settings.common.badge.modified': '已修改',
|
||
'settings.common.permission.allow': '允许',
|
||
'settings.common.permission.ask': '询问',
|
||
'settings.common.permission.deny': '拒绝',
|
||
'settings.common.state.comingSoon': '即将推出...',
|
||
'settings.projects.actions.title': '操作',
|
||
'settings.projects.actions.description': '按项目显示在项目名旁边表头中的命令。',
|
||
'settings.projects.actions.validation.fillNameAndCommand': '保存前请填写操作名称和命令。',
|
||
'settings.projects.actions.state.loading': '加载中...',
|
||
'settings.projects.actions.state.empty': '尚未配置任何操作。',
|
||
'settings.projects.actions.state.untitled': '未命名操作',
|
||
'settings.projects.actions.state.noDesktopSshForwards': '没有可用的本地 SSH 转发。',
|
||
'settings.projects.actions.field.selectIconAria': '选择图标',
|
||
'settings.projects.actions.field.iconAria': '图标 {icon}',
|
||
'settings.projects.actions.field.actionNamePlaceholder': '操作名称',
|
||
'settings.projects.actions.field.command': '命令',
|
||
'settings.projects.actions.field.commandPlaceholder': '例如 bun run lint',
|
||
'settings.projects.actions.field.autoOpenUrl': '自动打开 URL',
|
||
'settings.projects.actions.field.autoOpenUrlForAria': '为 {title} 自动打开 URL',
|
||
'settings.projects.actions.field.autoOpenUrlDescription': '从输出中打开 URL,或使用下面的自定义 URL',
|
||
'settings.projects.actions.field.overrideUrlPlaceholder': '覆盖 URL(可选)',
|
||
'settings.projects.actions.field.overrideUrlTooltip': '如果填写此字段,将使用自定义 URL。为空时,应用会从输出中选择最佳 URL 打开。',
|
||
'settings.projects.actions.field.desktopSshForward': '桌面 SSH 转发',
|
||
'settings.projects.actions.field.useOutputManualUrl': '使用输出/手动 URL',
|
||
'settings.projects.actions.actions.add': '添加操作',
|
||
'settings.projects.actions.actions.save': '保存操作',
|
||
'settings.projects.actions.toast.saveFailed': '保存操作失败',
|
||
'settings.projects.actions.toast.saved': '项目操作已保存',
|
||
'settings.openchamber.about.title': '关于 OpenChamber',
|
||
'settings.openchamber.about.field.version': '版本',
|
||
'settings.openchamber.about.field.openCodeVersion': 'OpenCode 版本',
|
||
'settings.openchamber.about.field.instanceUrls': '实例 URL',
|
||
'settings.openchamber.about.field.applicationUrl': '应用',
|
||
'settings.openchamber.about.field.tunnelUrl': '隧道',
|
||
'settings.openchamber.about.state.checking': '检查中...',
|
||
'settings.openchamber.about.state.upToDate': '已是最新',
|
||
'settings.openchamber.about.state.unknown': '未知',
|
||
'settings.openchamber.about.actions.checkUpdates': '检查更新',
|
||
'settings.openchamber.about.actions.update': '更新',
|
||
'settings.openchamber.about.actions.updateToVersion': '更新到 {version}',
|
||
'settings.openchamber.about.actions.checkForUpdates': '检查更新',
|
||
'settings.openchamber.about.toast.latestVersion': '你已是最新版本',
|
||
'settings.agents.sidebar.title': '智能体',
|
||
'settings.agents.sidebar.total': '总计 {count}',
|
||
'settings.agents.sidebar.empty.title': '未配置智能体',
|
||
'settings.agents.sidebar.empty.description': '使用上方 + 按钮创建一个',
|
||
'settings.agents.sidebar.section.builtIn': '内置智能体',
|
||
'settings.agents.sidebar.section.custom': '自定义智能体',
|
||
'settings.agents.sidebar.badge.system': '系统',
|
||
'settings.agents.sidebar.dialog.deleteTitle': '删除智能体',
|
||
'settings.agents.sidebar.dialog.resetTitle': '重置智能体',
|
||
'settings.agents.sidebar.dialog.deleteDescription': '确定要删除智能体“{name}”吗?',
|
||
'settings.agents.sidebar.dialog.resetDescription': '确定要将智能体“{name}”重置为默认配置吗?',
|
||
'settings.agents.sidebar.renameDialog.title': '重命名智能体',
|
||
'settings.agents.sidebar.renameDialog.description': '为智能体“@{name}”输入新名称',
|
||
'settings.agents.sidebar.renameDialog.placeholder': '新智能体名称...',
|
||
'settings.agents.sidebar.toast.builtInCannotDelete': '内置智能体无法删除',
|
||
'settings.agents.sidebar.toast.agentDeleted': '智能体“{name}”已删除',
|
||
'settings.agents.sidebar.toast.agentReset': '智能体“{name}”已重置为默认值',
|
||
'settings.agents.sidebar.toast.deleteFailed': '删除智能体失败',
|
||
'settings.agents.sidebar.toast.definitionNotFound': '未找到智能体定义。未进行任何更改。',
|
||
'settings.agents.sidebar.toast.resetFailed': '重置智能体失败',
|
||
'settings.agents.sidebar.toast.agentNameRequired': '智能体名称为必填项',
|
||
'settings.agents.sidebar.toast.agentExists': '已存在同名智能体',
|
||
'settings.agents.sidebar.toast.removeOldAfterRenameFailed': '重命名后移除旧智能体失败',
|
||
'settings.agents.sidebar.toast.renameFailed': '重命名智能体失败',
|
||
'settings.agents.sidebar.toast.agentRenamed': '智能体已重命名为 "{name}"',
|
||
'settings.agents.page.toast.permissionNameRequired': '权限名称为必填项',
|
||
'settings.agents.page.toast.created': '智能体创建成功',
|
||
'settings.agents.page.toast.updated': '智能体更新成功',
|
||
'settings.agents.page.toast.createFailed': '创建智能体失败',
|
||
'settings.agents.page.toast.updateFailed': '更新智能体失败',
|
||
'settings.agents.page.toast.saveUnexpectedError': '保存时发生错误',
|
||
'settings.agents.page.toast.savedManualRestart': '已保存到磁盘。请重启已连接的 OpenCode 服务器以应用更改。',
|
||
'settings.agents.page.empty.title': '从侧边栏选择一个智能体',
|
||
'settings.agents.page.empty.description': '或新建一个智能体',
|
||
'settings.agents.page.title.new': '新建智能体',
|
||
'settings.agents.page.subtitle.new': '配置新的助手人格',
|
||
'settings.agents.page.subtitle.edit': '编辑智能体设置',
|
||
'settings.agents.page.section.identityRole': '身份与角色',
|
||
'settings.agents.page.section.modelParameters': '模型与参数',
|
||
'settings.agents.page.section.systemPrompt': '系统提示词',
|
||
'settings.agents.page.permissionsEditor.sectionInfo': '按配置文件中保存的原样编辑此代理自身的权限规则。“继承”表示不设置该键,将应用全局配置和默认值。',
|
||
'settings.agents.page.permissionsEditor.defaultLabel': '所有工具的默认值',
|
||
'settings.agents.page.permissionsEditor.defaultAria': '所有工具的默认权限',
|
||
'settings.agents.page.permissionsEditor.defaultInfo': '代理级别的回退(* 键),适用于没有单独规则的工具。',
|
||
'settings.agents.page.permissionsEditor.effectiveHint': '→ {action}',
|
||
'settings.agents.page.permissionsEditor.ruleCount': '{count} 条规则',
|
||
'settings.agents.page.permissionsEditor.keyAria': '{key} 的权限',
|
||
'settings.agents.page.permissionsEditor.patternPlaceholder': '模式,例如 rm -rf * 或 /path/**',
|
||
'settings.agents.page.permissionsEditor.patternActionAria': '{key} 模式的操作',
|
||
'settings.agents.page.permissionsEditor.customKeyPlaceholder': '自定义权限键…',
|
||
'settings.agents.page.permissionsEditor.sessionRulesTitle': '会话中授予(未保存)',
|
||
'settings.agents.page.permissionsEditor.sessionRulesInfo': '在会话中授予的规则(如“始终允许”的回答)。当前生效,但不属于已保存的配置,重启后消失。',
|
||
'settings.agents.page.permissionsEditor.action.default': '默认',
|
||
'settings.agents.page.permissionsEditor.action.inherit': '继承',
|
||
'settings.agents.page.permissionsEditor.action.allow': '允许',
|
||
'settings.agents.page.permissionsEditor.action.ask': '询问',
|
||
'settings.agents.page.permissionsEditor.action.deny': '拒绝',
|
||
'settings.agents.page.permissionsEditor.actions.save': '保存权限',
|
||
'settings.agents.page.permissionsEditor.actions.discard': '放弃',
|
||
'settings.agents.page.permissionsEditor.actions.addRule': '添加规则',
|
||
'settings.agents.page.permissionsEditor.actions.addKey': '添加键',
|
||
'settings.agents.page.permissionsEditor.actions.removeRuleAria': '删除规则',
|
||
'settings.agents.page.permissionsEditor.actions.retry': '重试',
|
||
'settings.agents.page.permissionsEditor.state.loadFailed': '无法加载代理的权限配置。',
|
||
'settings.agents.page.permissionsEditor.toast.saved': '权限已保存',
|
||
'settings.agents.page.permissionsEditor.toast.savedRestartRequired': '权限已保存 — 重启 OpenCode 服务器后生效',
|
||
'settings.agents.page.permissionsEditor.toast.saveFailed': '保存权限失败',
|
||
'settings.agents.page.section.toolPermissions': '工具权限',
|
||
'settings.agents.page.field.agentName': '智能体名称',
|
||
'settings.agents.page.field.agentNamePlaceholder': 'agent-name',
|
||
'settings.agents.page.field.scopePlaceholder': '作用域',
|
||
'settings.agents.page.field.descriptionPlaceholder': '这个智能体的作用是什么?',
|
||
'settings.agents.page.field.mode': '模式',
|
||
'settings.agents.page.field.modeTooltip': '主智能体与子智能体可见性',
|
||
'settings.agents.page.field.overrideModel': '覆盖模型',
|
||
'settings.agents.page.field.variant': '思考变体',
|
||
'settings.agents.page.field.variantTooltip': '可选。如果模型支持推理,变体控制推理深度。',
|
||
'settings.agents.page.field.variantHint': '模型特定(如 Anthropic variant)',
|
||
'settings.agents.page.field.variantPlaceholder': '例如 high, max, low, none',
|
||
'settings.agents.page.field.temperature': 'Temperature',
|
||
'settings.agents.page.field.temperatureTooltip': '控制随机性。越高越有创造性,越低越聚焦。',
|
||
'settings.agents.page.field.temperatureRange': '0.0 到 2.0',
|
||
'settings.agents.page.field.clearTemperatureAria': '清除 Temperature 覆盖',
|
||
'settings.agents.page.field.topP': 'Top P',
|
||
'settings.agents.page.field.topPTooltip': '核采样多样性。越低越倾向高概率 token。',
|
||
'settings.agents.page.field.topPRange': '0.0 到 1.0',
|
||
'settings.agents.page.field.clearTopPAria': '清除 Top P 覆盖',
|
||
'settings.agents.page.field.systemPromptPlaceholder': '你是一名专业编码助手...',
|
||
'settings.agents.page.mode.primary': '主智能体',
|
||
'settings.agents.page.mode.subagent': '子智能体',
|
||
'settings.agents.page.mode.all': '全部',
|
||
'settings.agents.page.permissions.defaultLabel': '默认',
|
||
'settings.agents.page.permissions.hideEditor': '隐藏编辑器',
|
||
'settings.agents.page.permissions.advancedEditor': '高级编辑器',
|
||
'settings.agents.page.permissions.globalSummary': '全局:{summary}',
|
||
'settings.agents.page.permissions.rulesSummary': '规则:{summary}',
|
||
'settings.agents.page.permissions.globalDefault': '全局默认',
|
||
'settings.agents.page.permissions.pattern': '模式',
|
||
'settings.agents.page.permissions.addCustomRule': '添加自定义规则',
|
||
'settings.agents.page.permissions.permissionPlaceholder': '权限...',
|
||
'settings.agents.page.permissions.patternPlaceholder': '模式(例如 *)',
|
||
'settings.page.behavior.title': '行为',
|
||
'settings.page.behavior.description': '引导智能体的回复方式。',
|
||
'settings.behavior.page.title': '行为',
|
||
'settings.behavior.page.warning.title': '全局规则会与项目规则合并使用',
|
||
'settings.behavior.page.warning.description': '此处所做的更改会更新 {path}。当项目级 AGENTS.md 存在时,OpenCode 也会包含它。',
|
||
'settings.behavior.page.section.systemPrompt': '全局 AGENTS.md',
|
||
'settings.behavior.page.section.systemPromptOptimization': '系统提示词优化',
|
||
'settings.behavior.page.systemPromptOptimization.enable': '优化系统提示词大小',
|
||
'settings.behavior.page.systemPromptOptimization.enableAria': '优化 OpenCode 系统提示词大小',
|
||
'settings.behavior.page.systemPromptOptimization.info': '预计可将 build 和 plan 代理的系统提示词缩减约 40%,其他代理不会改变。这可能会移除覆盖 build 或 plan 的自定义定义,因此此类工作流请勿启用。重启 OpenCode 后应用更改。',
|
||
'settings.behavior.page.systemPromptOptimization.restarting': '正在重启 OpenCode 以应用系统提示词优化…',
|
||
'settings.behavior.page.field.systemPromptPlaceholder': '你是一个有帮助的 AI 助手...\n\n使用此空间定义 AI 在所有会话和提供商中的绝对行为规则。',
|
||
'settings.behavior.page.section.responseStyle': '回复风格',
|
||
'settings.behavior.page.responseStyle.tooltip': '启用后,这些说明会指导助手在每个新对话中的回复方式。它们会随你的第一条消息一起发送,不会更改全局 AGENTS.md 规则。',
|
||
'settings.behavior.page.responseStyle.enableAria': '启用回复风格说明',
|
||
'settings.behavior.page.responseStyle.enable': '向新对话添加回复风格说明',
|
||
'settings.behavior.page.responseStyle.preset': '预设',
|
||
'settings.behavior.page.responseStyle.option.concise': '简洁',
|
||
'settings.behavior.page.responseStyle.option.detailed': '详细',
|
||
'settings.behavior.page.responseStyle.option.mentor': '导师',
|
||
'settings.behavior.page.responseStyle.option.pushback': '反驳',
|
||
'settings.behavior.page.responseStyle.option.noFiller': '无废话',
|
||
'settings.behavior.page.responseStyle.option.matchEnergy': '匹配我的语气',
|
||
'settings.behavior.page.responseStyle.option.warmPeer': '亲近的同事',
|
||
'settings.behavior.page.responseStyle.option.custom': '自定义',
|
||
'settings.behavior.page.responseStyle.customPlaceholder': '编写要添加到第一条消息的说明...',
|
||
'settings.behavior.page.toast.saved': '行为保存成功',
|
||
'settings.behavior.page.toast.saveFailed': '行为保存失败',
|
||
'settings.commands.sidebar.title': '命令',
|
||
'settings.commands.sidebar.total': '总计 {count}',
|
||
'settings.commands.sidebar.empty.title': '未配置命令',
|
||
'settings.commands.sidebar.empty.description': '使用上方 + 按钮创建一个',
|
||
'settings.commands.sidebar.section.builtIn': '内置命令',
|
||
'settings.commands.sidebar.section.custom': '自定义命令',
|
||
'settings.commands.sidebar.dialog.deleteTitle': '删除命令',
|
||
'settings.commands.sidebar.dialog.resetTitle': '重置命令',
|
||
'settings.commands.sidebar.dialog.deleteDescription': '确定要删除命令“{name}”吗?',
|
||
'settings.commands.sidebar.dialog.resetDescription': '确定要将命令“{name}”重置为默认配置吗?',
|
||
'settings.commands.sidebar.renameDialog.title': '重命名命令',
|
||
'settings.commands.sidebar.renameDialog.description': '为命令“/{name}”输入新名称',
|
||
'settings.commands.sidebar.renameDialog.placeholder': '新命令名称...',
|
||
'settings.commands.sidebar.toast.builtInCannotDelete': '内置命令无法删除',
|
||
'settings.commands.sidebar.toast.commandDeleted': '命令“{name}”已删除',
|
||
'settings.commands.sidebar.toast.commandReset': '命令“{name}”已重置为默认值',
|
||
'settings.commands.sidebar.toast.deleteFailed': '删除命令失败',
|
||
'settings.commands.sidebar.toast.resetFailed': '重置命令失败',
|
||
'settings.commands.sidebar.toast.commandNameRequired': '命令名称为必填项',
|
||
'settings.commands.sidebar.toast.commandExists': '已存在同名命令',
|
||
'settings.commands.sidebar.toast.removeOldAfterRenameFailed': '重命名后移除旧命令失败',
|
||
'settings.commands.sidebar.toast.renameFailed': '重命名命令失败',
|
||
'settings.commands.page.toast.templateRequired': '命令模板为必填项',
|
||
'settings.commands.page.toast.created': '命令创建成功',
|
||
'settings.commands.page.toast.updated': '命令更新成功',
|
||
'settings.commands.page.toast.createFailed': '创建命令失败',
|
||
'settings.commands.page.toast.updateFailed': '更新命令失败',
|
||
'settings.commands.page.toast.saveUnexpectedError': '保存时发生错误',
|
||
'settings.commands.page.empty.title': '从侧边栏选择一个命令',
|
||
'settings.commands.page.empty.description': '或新建一个命令',
|
||
'settings.commands.page.title.new': '新建命令',
|
||
'settings.commands.page.subtitle.new': '配置新的斜杠命令',
|
||
'settings.commands.page.subtitle.edit': '编辑命令设置',
|
||
'settings.commands.page.section.identity': '身份',
|
||
'settings.commands.page.section.executionContext': '执行上下文',
|
||
'settings.commands.page.section.template': '命令模板',
|
||
'settings.commands.page.field.commandName': '命令名称',
|
||
'settings.commands.page.field.commandNamePlaceholder': 'command-name',
|
||
'settings.commands.page.field.descriptionPlaceholder': '这个命令的作用是什么?',
|
||
'settings.commands.page.field.overrideAgent': '覆盖智能体',
|
||
'settings.commands.page.field.templatePlaceholder': '在此输入命令模板...\n\n使用 $ARGUMENTS 引用用户输入。\n使用 !`shell command` 注入 shell 输出。\n使用 @filename 包含文件内容。',
|
||
'settings.commands.page.templateHint.userInput': '用户输入',
|
||
'settings.commands.page.templateHint.shellOutput': 'shell 输出',
|
||
'settings.commands.page.templateHint.fileContents': '文件内容',
|
||
'settings.commands.agentSelector.title': '选择智能体',
|
||
'settings.commands.agentSelector.notSelected': '未选择',
|
||
'settings.commands.agentSelector.selectAgentPlaceholder': '选择智能体...',
|
||
'settings.gitIdentities.page.section.title': '身份',
|
||
'settings.gitIdentities.page.empty.title': '未配置身份',
|
||
'settings.gitIdentities.page.empty.description': '创建一个以按项目管理 Git 作者设置',
|
||
'settings.gitIdentities.page.discoveredCredentials.title': '在 ~/.git-credentials 中发现',
|
||
'settings.gitIdentities.page.badge.default': '默认',
|
||
'settings.gitIdentities.page.actions.setAsDefault': '设为默认',
|
||
'settings.gitIdentities.page.actions.unsetDefault': '取消默认',
|
||
'settings.gitIdentities.page.actions.import': '导入',
|
||
'settings.gitIdentities.page.toast.updateDefaultFailed': '更新默认身份失败',
|
||
'settings.gitIdentities.page.toast.defaultUpdated': '默认身份已更新',
|
||
'settings.gitIdentities.page.toast.defaultUnset': '默认身份已取消',
|
||
'settings.gitIdentities.page.toast.profileDeleted': '身份“{name}”已删除',
|
||
'settings.gitIdentities.page.toast.deleteProfileFailed': '删除身份失败',
|
||
'settings.gitIdentities.page.deleteDialog.title': '删除身份',
|
||
'settings.gitIdentities.page.deleteDialog.description': '确定要删除“{name}”吗?',
|
||
'settings.gitIdentities.editor.title.importCredential': '导入凭据',
|
||
'settings.gitIdentities.editor.title.newIdentity': '新建身份',
|
||
'settings.gitIdentities.editor.title.globalIdentity': '全局身份',
|
||
'settings.gitIdentities.editor.title.editIdentity': '编辑身份',
|
||
'settings.gitIdentities.editor.description.globalReadOnly': '系统范围 Git 身份(只读)',
|
||
'settings.gitIdentities.editor.description.newProfile': '创建新的 Git 身份配置',
|
||
'settings.gitIdentities.editor.description.editProfile': '编辑身份配置设置',
|
||
'settings.gitIdentities.editor.section.commitSigning': '提交签名',
|
||
'settings.gitIdentities.editor.field.profileName': '身份名称',
|
||
'settings.gitIdentities.editor.field.profileNamePlaceholder': '工作身份、个人身份等',
|
||
'settings.gitIdentities.editor.field.color': '颜色',
|
||
'settings.gitIdentities.editor.field.icon': '图标',
|
||
'settings.gitIdentities.editor.field.userName': '用户名',
|
||
'settings.gitIdentities.editor.field.userNameTooltip': '该名称会显示在 Git 提交信息中。',
|
||
'settings.gitIdentities.editor.field.userNamePlaceholder': '张三',
|
||
'settings.gitIdentities.editor.field.emailAddress': '邮箱地址',
|
||
'settings.gitIdentities.editor.field.emailAddressTooltip': '应与你在 GitHub/GitLab 中的邮箱一致以便正确归属。',
|
||
'settings.gitIdentities.editor.field.emailAddressPlaceholder': 'name@example.com',
|
||
'settings.gitIdentities.editor.field.authMethod': '认证方式',
|
||
'settings.gitIdentities.editor.field.authToken': 'Token',
|
||
'settings.gitIdentities.editor.field.sshKeyPath': 'SSH 密钥路径',
|
||
'settings.gitIdentities.editor.field.sshKeyPathTooltip': '可选私钥路径,例如 ~/.ssh/id_ed25519',
|
||
'settings.gitIdentities.editor.field.sshKeyPathPlaceholder': '~/.ssh/id_ed25519',
|
||
'settings.gitIdentities.editor.field.signCommits': '使用此身份签名提交',
|
||
'settings.gitIdentities.editor.field.signingKey': '签名密钥',
|
||
'settings.gitIdentities.editor.field.signingKeyPlaceholder': '~/.ssh/id_ed25519.pub',
|
||
'settings.gitIdentities.editor.field.host': 'Host',
|
||
'settings.gitIdentities.editor.field.hostTooltip': '该 host 的 token 将从 ~/.git-credentials 读取。',
|
||
'settings.gitIdentities.editor.field.hostPlaceholder': 'github.com',
|
||
'settings.gitIdentities.editor.actions.close': '关闭',
|
||
'settings.gitIdentities.editor.actions.create': '创建',
|
||
'settings.gitIdentities.editor.actions.save': '保存',
|
||
'settings.gitIdentities.editor.toast.userNameEmailRequired': '用户名和邮箱为必填项',
|
||
'settings.gitIdentities.editor.toast.hostRequiredForToken': '基于 token 认证时 Host 为必填项',
|
||
'settings.gitIdentities.editor.toast.signingKeyRequired': '启用提交签名时需要签名密钥',
|
||
'settings.gitIdentities.editor.toast.profileCreated': '身份已创建',
|
||
'settings.gitIdentities.editor.toast.profileUpdated': '身份已更新',
|
||
'settings.gitIdentities.editor.toast.createProfileFailed': '创建身份失败',
|
||
'settings.gitIdentities.editor.toast.updateProfileFailed': '更新身份失败',
|
||
'settings.gitIdentities.editor.toast.saveUnexpectedError': '保存时发生错误',
|
||
'settings.gitIdentities.editor.toast.profileDeleted': '身份已删除',
|
||
'settings.gitIdentities.editor.toast.deleteProfileFailed': '删除身份失败',
|
||
'settings.gitIdentities.editor.toast.deleteUnexpectedError': '删除时发生错误',
|
||
'settings.skills.sidebar.title': '技能',
|
||
'settings.skills.sidebar.total': '总计 {count}',
|
||
'settings.skills.sidebar.section.project': '项目技能',
|
||
'settings.skills.sidebar.section.user': '用户技能',
|
||
'settings.skills.sidebar.empty.title': '未配置技能',
|
||
'settings.skills.sidebar.empty.description': '使用上方 + 按钮创建一个',
|
||
'settings.skills.sidebar.badge.claude': 'claude',
|
||
'settings.skills.sidebar.badge.agents': 'agents',
|
||
'settings.skills.sidebar.badge.opencode': 'opencode',
|
||
'settings.skills.sidebar.toast.skillDeleted': '技能“{name}”已删除',
|
||
'settings.skills.sidebar.toast.deleteSkillFailed': '删除技能失败',
|
||
'settings.skills.sidebar.toast.duplicateLoadFailed': '加载技能详情以复制失败',
|
||
'settings.skills.sidebar.toast.renameFailed': '重命名技能失败',
|
||
'settings.skills.sidebar.toast.skillRenamed': '技能已重命名为“{name}”',
|
||
'settings.skills.sidebar.deleteDialog.title': '删除技能',
|
||
'settings.skills.sidebar.deleteDialog.description': '确定要删除技能“{name}”吗?',
|
||
'settings.skills.sidebar.renameDialog.title': '重命名技能',
|
||
'settings.skills.sidebar.renameDialog.description': '为技能“{name}”输入新名称',
|
||
'settings.skills.sidebar.renameDialog.placeholder': '新技能名称...',
|
||
'settings.skills.page.title.newSkill': '新建技能',
|
||
'settings.skills.page.subtitle.newSkill': '配置新技能',
|
||
'settings.skills.page.subtitle.skillLocation': '{location} 技能',
|
||
'settings.skills.page.section.basicInformation': '基础信息',
|
||
'settings.skills.page.section.instructions': '说明',
|
||
'settings.skills.page.section.supportingFiles': '支持文件',
|
||
'settings.skills.page.field.skillNameLocation': '技能名称与位置',
|
||
'settings.skills.page.field.skillNameHint': '小写字母、数字、连字符',
|
||
'settings.skills.page.field.skillNamePlaceholder': 'skill-name',
|
||
'settings.skills.page.field.descriptionHint': '智能体会用它判断何时加载此技能',
|
||
'settings.skills.page.field.descriptionPlaceholder': '简要描述该技能的作用...',
|
||
'settings.skills.page.field.instructionsPlaceholder': '分步说明、指南或参考内容...',
|
||
'settings.skills.page.badge.claudeCompatible': 'Claude 兼容',
|
||
'settings.skills.page.badge.pending': '待处理',
|
||
'settings.skills.page.actions.addFile': '添加文件',
|
||
'settings.skills.page.actions.createSkill': '创建技能',
|
||
'settings.skills.page.actions.createFile': '创建文件',
|
||
'settings.skills.page.supportingFiles.empty': '暂无支持文件。使用“添加文件”包含参考资料。',
|
||
'settings.skills.page.loading.details': '正在加载技能详情...',
|
||
'settings.skills.page.loading.fileContent': '正在加载文件内容...',
|
||
'settings.skills.page.empty.title': '从侧边栏选择一个技能',
|
||
'settings.skills.page.empty.description': '或新建一个技能',
|
||
'settings.skills.page.deleteFileDialog.title': '删除支持文件',
|
||
'settings.skills.page.deleteFileDialog.description': '确定要删除“{path}”吗?',
|
||
'settings.skills.page.fileDialog.titleEdit': '编辑支持文件',
|
||
'settings.skills.page.fileDialog.titleAdd': '添加支持文件',
|
||
'settings.skills.page.fileDialog.descriptionEdit': '修改文件内容',
|
||
'settings.skills.page.fileDialog.descriptionAdd': '在技能目录中新建文件',
|
||
'settings.skills.page.fileDialog.field.filePath': '文件路径',
|
||
'settings.skills.page.fileDialog.field.filePathPlaceholder': 'example.md 或 docs/reference.txt',
|
||
'settings.skills.page.fileDialog.field.filePathHint': '技能目录下的相对路径。子目录会自动创建。',
|
||
'settings.skills.page.fileDialog.field.content': '内容',
|
||
'settings.skills.page.fileDialog.field.contentPlaceholder': '文件内容...',
|
||
'settings.skills.page.toast.skillNameRequired': '技能名称为必填项',
|
||
'settings.skills.page.toast.invalidSkillName': '技能名必须为 1-64 位小写字母数字或连字符,且不能以连字符开头或结尾',
|
||
'settings.skills.page.toast.descriptionRequired': '描述为必填项',
|
||
'settings.skills.page.toast.skillExists': '已存在同名技能',
|
||
'settings.skills.page.toast.skillCreated': '技能创建成功',
|
||
'settings.skills.page.toast.skillUpdated': '技能更新成功',
|
||
'settings.skills.page.toast.createSkillFailed': '创建技能失败',
|
||
'settings.skills.page.toast.updateSkillFailed': '更新技能失败',
|
||
'settings.skills.page.toast.saveUnexpectedError': '保存时发生错误',
|
||
'settings.skills.page.toast.loadFileContentFailed': '加载文件内容失败',
|
||
'settings.skills.page.toast.fileNameRequired': '文件名为必填项',
|
||
'settings.skills.page.toast.fileExists': '已存在同名文件',
|
||
'settings.skills.page.toast.noSkillSelected': '未选择技能',
|
||
'settings.skills.page.toast.fileAdded': '文件“{path}”已添加',
|
||
'settings.skills.page.toast.fileCreated': '文件“{path}”已创建',
|
||
'settings.skills.page.toast.fileUpdated': '文件“{path}”已更新',
|
||
'settings.skills.page.toast.fileRemoved': '文件“{path}”已移除',
|
||
'settings.skills.page.toast.fileDeleted': '文件“{path}”已删除',
|
||
'settings.skills.page.toast.createFileFailed': '创建文件失败',
|
||
'settings.skills.page.toast.updateFileFailed': '更新文件失败',
|
||
'settings.skills.page.toast.deleteFileFailed': '删除文件失败',
|
||
'settings.skills.location.option.userOpencode.label': '用户 / OpenCode',
|
||
'settings.skills.location.option.userOpencode.description': '全局 OpenCode 配置位置',
|
||
'settings.skills.location.option.projectOpencode.label': '项目 / OpenCode',
|
||
'settings.skills.location.option.projectOpencode.description': '当前项目 .opencode 位置',
|
||
'settings.skills.location.option.userClaude.label': '用户 / Claude',
|
||
'settings.skills.location.option.userClaude.description': '全局 Claude skills 位置',
|
||
'settings.skills.location.option.projectClaude.label': '项目 / Claude',
|
||
'settings.skills.location.option.projectClaude.description': '当前项目 .claude 位置',
|
||
'settings.skills.location.option.userAgents.label': '用户 / Agents',
|
||
'settings.skills.location.option.userAgents.description': '全局 .agents 兼容位置',
|
||
'settings.skills.location.option.projectAgents.label': '项目 / Agents',
|
||
'settings.skills.location.option.projectAgents.description': '当前项目 .agents 兼容位置',
|
||
'settings.skills.catalog.shared.field.repository': '仓库',
|
||
'settings.skills.catalog.shared.field.repositoryPlaceholder': 'owner/repo 或 git@github.com:owner/repo.git',
|
||
'settings.skills.catalog.shared.field.optionalSubpath': '可选子路径',
|
||
'settings.skills.catalog.shared.field.subpathPlaceholder': '例如 skills',
|
||
'settings.skills.catalog.shared.field.targetLocation': '目标位置',
|
||
'settings.skills.catalog.shared.field.project': '项目',
|
||
'settings.skills.catalog.shared.field.noProjects': '没有可用项目',
|
||
'settings.skills.catalog.shared.field.chooseProjectPlaceholder': '选择项目',
|
||
'settings.skills.catalog.shared.field.searchSkillsPlaceholder': '搜索技能…',
|
||
'settings.skills.catalog.shared.toast.repositoryRequired': '仓库来源为必填项',
|
||
'settings.skills.catalog.shared.toast.privateRepoNotSupportedVsCode': 'VS Code 暂不支持私有仓库',
|
||
'settings.skills.catalog.shared.toast.foundSkills': '找到 {count} 个技能',
|
||
'settings.skills.catalog.shared.noDescription': '未提供描述',
|
||
'settings.skills.catalog.shared.actions.scan': '扫描',
|
||
'settings.skills.catalog.shared.actions.scanning': '扫描中...',
|
||
'settings.skills.catalog.shared.actions.install': '安装',
|
||
'settings.skills.catalog.shared.actions.installing': '安装中...',
|
||
'settings.skills.catalog.shared.auth.title': '需要认证',
|
||
'settings.skills.catalog.shared.auth.description': '选择一个 Git 身份(SSH 密钥)',
|
||
'settings.skills.catalog.shared.auth.chooseIdentity': '选择身份',
|
||
'settings.skills.catalog.shared.auth.footerHint': '在设置 - Git Identities 中配置身份。',
|
||
'settings.skills.catalog.shared.auth.footerHintArrow': '在设置 → Git Identities 中配置身份。',
|
||
'settings.skills.catalog.conflicts.title': '技能已存在',
|
||
'settings.skills.catalog.conflicts.description': '部分选中技能在此作用域已安装。请选择跳过或覆盖。',
|
||
'settings.skills.catalog.conflicts.count': '{count} 个冲突',
|
||
'settings.skills.catalog.conflicts.installedIn': '已安装于 {scope} / {source}',
|
||
'settings.skills.catalog.conflicts.scope.user': '用户',
|
||
'settings.skills.catalog.conflicts.scope.project': '项目',
|
||
'settings.skills.catalog.conflicts.source.opencode': 'opencode',
|
||
'settings.skills.catalog.conflicts.source.agents': 'agents',
|
||
'settings.skills.catalog.conflicts.decision.skip': '跳过',
|
||
'settings.skills.catalog.conflicts.decision.overwrite': '覆盖',
|
||
'settings.skills.catalog.conflicts.actions.skipAll': '全部跳过',
|
||
'settings.skills.catalog.conflicts.actions.overwriteAll': '全部覆盖',
|
||
'settings.skills.catalog.conflicts.actions.continue': '继续',
|
||
'settings.skills.catalog.installSkill.title': '安装技能',
|
||
'settings.skills.catalog.installSkill.descriptionPrefix': '将',
|
||
'settings.skills.catalog.installSkill.descriptionSuffix': '安装到四个目标位置之一。',
|
||
'settings.skills.catalog.installSkill.field.destination': '目标位置',
|
||
'settings.skills.catalog.installSkill.field.project': '项目',
|
||
'settings.skills.catalog.installSkill.field.noProjects': '没有可用项目',
|
||
'settings.skills.catalog.installSkill.field.chooseProjectPlaceholder': '选择项目',
|
||
'settings.skills.catalog.installSkill.actions.install': '安装',
|
||
'settings.skills.catalog.installSkill.actions.installing': '安装中...',
|
||
'settings.skills.catalog.installSkill.toast.installed': '技能安装成功',
|
||
'settings.skills.catalog.installSkill.toast.authRequired': '需要认证',
|
||
'settings.skills.catalog.installSkill.toast.installFailed': '安装技能失败',
|
||
'settings.skills.catalog.add.title': '添加技能目录',
|
||
'settings.skills.catalog.add.descriptionPrefix': '将 Git 仓库添加为新的目录来源。OpenChamber 会扫描其中包含',
|
||
'settings.skills.catalog.add.descriptionSuffix': '的文件夹。',
|
||
'settings.skills.catalog.add.field.catalogName': '目录名称',
|
||
'settings.skills.catalog.add.field.catalogNamePlaceholder': '例如 Team Skills',
|
||
'settings.skills.catalog.add.field.repository': '仓库',
|
||
'settings.skills.catalog.add.field.optionalSubpath': '可选子路径',
|
||
'settings.skills.catalog.add.field.repositoryHint': '公共仓库在所有环境可用。私有仓库需要 SSH 身份(仅 Desktop/Web)。',
|
||
'settings.skills.catalog.add.scanResult': '扫描结果:找到 {count} 个技能',
|
||
'settings.skills.catalog.add.duplicateMessage': '该目录已添加。',
|
||
'settings.skills.catalog.add.actions.addCatalog': '添加目录',
|
||
'settings.skills.catalog.add.toast.repositoryRequired': '仓库来源为必填项',
|
||
'settings.skills.catalog.add.toast.authenticationRequiredScan': '需要认证。请选择 Git 身份后再扫描。',
|
||
'settings.skills.catalog.add.toast.scanFailed': '扫描仓库失败',
|
||
'settings.skills.catalog.add.toast.noSkillsFound': '该仓库中未找到技能',
|
||
'settings.skills.catalog.add.toast.catalogNameRequired': '目录名称为必填项',
|
||
'settings.skills.catalog.add.toast.scanBeforeAdd': '请先扫描仓库再添加目录',
|
||
'settings.skills.catalog.add.toast.catalogAlreadyExists': '该目录已存在',
|
||
'settings.skills.catalog.add.toast.catalogAdded': '目录已添加',
|
||
'settings.skills.catalog.add.toast.saveFailed': '保存目录失败',
|
||
'settings.skills.catalog.installFromRepo.title': '从 Git 仓库安装',
|
||
'settings.skills.catalog.installFromRepo.descriptionPrefix': '扫描仓库中包含',
|
||
'settings.skills.catalog.installFromRepo.descriptionSuffix': '的文件夹,然后安装选中的技能。',
|
||
'settings.skills.catalog.installFromRepo.repositoryHintPrefix': '对于 GitHub 简写,你可以添加子路径,例如',
|
||
'settings.skills.catalog.installFromRepo.authDescription': '选择一个可访问该仓库的 Git 身份(SSH 密钥)。',
|
||
'settings.skills.catalog.installFromRepo.empty.noScanResultsTitle': '暂无扫描结果',
|
||
'settings.skills.catalog.installFromRepo.empty.noScanResultsDescription': '扫描仓库以发现技能',
|
||
'settings.skills.catalog.installFromRepo.actions.selectAll': '全选',
|
||
'settings.skills.catalog.installFromRepo.actions.selectNone': '全不选',
|
||
'settings.skills.catalog.installFromRepo.actions.installSelected': '安装所选',
|
||
'settings.skills.catalog.installFromRepo.badge.installed': '已安装({scope}/{source})',
|
||
'settings.skills.catalog.installFromRepo.selectedCount': '已选:{selected} / {total}',
|
||
'settings.skills.catalog.installFromRepo.toast.authenticationRequiredScan': '需要认证。请选择 Git 身份后再扫描。',
|
||
'settings.skills.catalog.installFromRepo.toast.authenticationRequiredInstall': '需要认证。请选择 Git 身份后再安装。',
|
||
'settings.skills.catalog.installFromRepo.toast.scanFailed': '扫描仓库失败',
|
||
'settings.skills.catalog.installFromRepo.toast.selectAtLeastOne': '请至少选择一个要安装的技能',
|
||
'settings.skills.catalog.installFromRepo.toast.installedCount': '已安装 {count} 个技能',
|
||
'settings.skills.catalog.installFromRepo.toast.installCompleted': '安装完成',
|
||
'settings.skills.catalog.installFromRepo.toast.installFailed': '安装技能失败',
|
||
'settings.skills.catalog.page.mode.manual': '手动',
|
||
'settings.skills.catalog.page.mode.external': '外部',
|
||
'settings.skills.catalog.page.title': '技能目录',
|
||
'settings.skills.catalog.page.section.sourceRepository': '来源仓库',
|
||
'settings.skills.catalog.page.field.selectSourcePlaceholder': '选择来源',
|
||
'settings.skills.catalog.page.actions.refreshTitle': '刷新',
|
||
'settings.skills.catalog.page.actions.removeCatalogTitle': '移除目录',
|
||
'settings.skills.catalog.page.actions.addCatalog': '添加目录',
|
||
'settings.skills.catalog.page.actions.removeCatalog': '移除目录',
|
||
'settings.skills.catalog.page.actions.loadMoreSkills': '加载更多技能',
|
||
'settings.skills.catalog.page.loading.catalog': '加载中...',
|
||
'settings.skills.catalog.page.loading.skills': '正在加载技能...',
|
||
'settings.skills.catalog.page.loading.more': '加载中...',
|
||
'settings.skills.catalog.page.foundCount': '找到 {count} 个技能',
|
||
'settings.skills.catalog.page.error.catalogTitle': '目录错误',
|
||
'settings.skills.catalog.page.empty.noSkillsTitle': '未找到技能',
|
||
'settings.skills.catalog.page.empty.noSkillsDescription': '请尝试其他搜索条件或刷新目录',
|
||
'settings.skills.catalog.page.badge.installed': '已安装({scope})',
|
||
'settings.skills.catalog.page.badge.notInstallable': '不可安装',
|
||
'settings.skills.catalog.page.badge.unknown': '未知',
|
||
'settings.skills.catalog.page.byOwnerPrefix': '作者',
|
||
'settings.skills.catalog.page.removeDialog.title': '移除目录',
|
||
'settings.skills.catalog.page.removeDialog.description': '确定要移除此目录吗?',
|
||
'settings.openchamber.passkeys.title': 'Passkeys',
|
||
'settings.openchamber.passkeys.field.currentDevice': '当前设备',
|
||
'settings.openchamber.passkeys.actions.add': '添加 passkey',
|
||
'settings.openchamber.passkeys.actions.cancelSetup': '取消 passkey 设置',
|
||
'settings.openchamber.passkeys.actions.signOutEverywhere': '全部登出',
|
||
'settings.openchamber.passkeys.actions.signingOut': '正在登出…',
|
||
'settings.openchamber.passkeys.actions.removing': '移除中…',
|
||
'settings.openchamber.passkeys.state.uiPasswordRequired': '仅在启用 UI 密码锁后可使用 passkey。',
|
||
'settings.openchamber.passkeys.state.loading': '正在加载 passkey…',
|
||
'settings.openchamber.passkeys.state.noneSaved': '此主机尚未保存 passkey。',
|
||
'settings.openchamber.passkeys.item.lastUsed': '上次使用 {time}',
|
||
'settings.openchamber.passkeys.item.added': '添加于 {time}',
|
||
'settings.openchamber.passkeys.time.neverUsed': '从未使用',
|
||
'settings.openchamber.passkeys.toast.loadFailed': '无法加载 passkey。',
|
||
'settings.openchamber.passkeys.toast.enableUiPasswordFirst': '请先启用 UI 密码锁再添加 passkey。',
|
||
'settings.openchamber.passkeys.toast.added': 'passkey 已添加',
|
||
'settings.openchamber.passkeys.toast.setupCanceled': 'passkey 设置已取消',
|
||
'settings.openchamber.passkeys.toast.addFailed': '无法添加 passkey。',
|
||
'settings.openchamber.passkeys.toast.removed': 'passkey 已移除',
|
||
'settings.openchamber.passkeys.toast.removeFailed': '无法移除 passkey。',
|
||
'settings.openchamber.passkeys.toast.clearAuthFailed': '无法清除已保存的认证信息。',
|
||
'settings.openchamber.sessionRetention.title': '会话保留',
|
||
'settings.openchamber.sessionRetention.tooltip': '根据最后活动时间自动归档或删除不活跃会话。会保留最近 5 个会话。',
|
||
'settings.openchamber.sessionRetention.field.enableAutoCleanupAria': '启用自动清理',
|
||
'settings.openchamber.sessionRetention.field.enableAutoCleanup': '启用自动清理',
|
||
'settings.openchamber.sessionRetention.field.retentionPeriod': '保留时长',
|
||
'settings.openchamber.sessionRetention.field.retentionPeriodAria': '按天设置保留时长',
|
||
'settings.openchamber.sessionRetention.field.days': '天',
|
||
'settings.openchamber.sessionRetention.field.whenSessionsExpire': '会话过期时',
|
||
'settings.openchamber.sessionRetention.actions.resetRetentionAria': '重置保留时长',
|
||
'settings.openchamber.sessionRetention.actions.runCleanupNow': '立即执行清理',
|
||
'settings.openchamber.sessionRetention.actions.cleaningUp': '清理中...',
|
||
'settings.openchamber.sessionRetention.action.archive': '归档',
|
||
'settings.openchamber.sessionRetention.action.delete': '删除',
|
||
'settings.openchamber.sessionRetention.manualCleanup.title': '手动清理',
|
||
'settings.openchamber.sessionRetention.manualCleanup.eligibleArchiveNow': '当前可归档:{count}',
|
||
'settings.openchamber.sessionRetention.manualCleanup.eligibleDeleteNow': '当前可删除:{count}',
|
||
'settings.openchamber.sessionRetention.toast.noneEligibleArchive': '没有可归档的会话',
|
||
'settings.openchamber.sessionRetention.toast.noneEligibleDelete': '没有可删除的会话',
|
||
'settings.openchamber.sessionRetention.toast.archivedCount': '已归档 {count} 个会话',
|
||
'settings.openchamber.sessionRetention.toast.deletedCount': '已删除 {count} 个会话',
|
||
'settings.openchamber.sessionRetention.toast.failedArchiveCount': '归档 {count} 个会话失败',
|
||
'settings.openchamber.sessionRetention.toast.failedDeleteCount': '删除 {count} 个会话失败',
|
||
'settings.openchamber.desktopNetwork.title': '桌面端网络访问',
|
||
'settings.openchamber.desktopNetwork.field.windowControlsPosition': '窗口控件位置',
|
||
'settings.openchamber.desktopNetwork.field.windowControlsPositionDescription': '选择最小化、最大化和关闭按钮的显示位置。默认在右侧。',
|
||
'settings.openchamber.desktopNetwork.field.windowControlsPositionAria': '窗口控件位置',
|
||
'settings.openchamber.desktopNetwork.option.windowControlsLeft': '左侧',
|
||
'settings.openchamber.desktopNetwork.option.windowControlsRight': '右侧',
|
||
'settings.openchamber.desktopNetwork.field.windowControls': '窗口控件',
|
||
'settings.openchamber.desktopNetwork.field.windowControlsStyle': '样式',
|
||
'settings.openchamber.desktopNetwork.field.windowControlsStyleAria': '窗口控件样式',
|
||
'settings.openchamber.desktopNetwork.option.windowControlsClassic': '经典',
|
||
'settings.openchamber.desktopNetwork.option.windowControlsTrafficLights': '红绿灯',
|
||
'settings.openchamber.desktopNetwork.field.launchAtLoginAria': '登录时启动 OpenChamber',
|
||
'settings.openchamber.desktopNetwork.field.launchAtLogin': '登录时启动 OpenChamber',
|
||
'settings.openchamber.desktopNetwork.field.launchAtLoginDescription': '在后台启动应用且不打开窗口。可通过桌面状态图标打开。',
|
||
'settings.openchamber.desktopNetwork.field.macMenuBarAria': '在 macOS 菜单栏中显示 OpenChamber',
|
||
'settings.openchamber.desktopNetwork.field.macMenuBar': '在菜单栏中显示 OpenChamber',
|
||
'settings.openchamber.desktopNetwork.field.macMenuBarDescription': '需要重启应用。关闭后,OpenChamber 不会创建菜单栏项目,也不会运行相关的会话、审批和用量更新。',
|
||
'settings.openchamber.desktopNetwork.field.minimizeToTrayAria': '将 OpenChamber 关闭到系统托盘',
|
||
'settings.openchamber.desktopNetwork.field.minimizeToTray': '关闭到系统托盘',
|
||
'settings.openchamber.desktopNetwork.field.minimizeToTrayDescription': '关闭主窗口时,让 OpenChamber 继续在系统托盘中运行;最小化仍会将窗口保留在任务栏。',
|
||
'settings.openchamber.desktopNetwork.field.keepAwakeAria': 'OpenChamber 运行时保持电脑唤醒',
|
||
'settings.openchamber.desktopNetwork.field.keepAwake': 'OpenChamber 运行时保持电脑唤醒',
|
||
'settings.openchamber.desktopNetwork.field.keepAwakeDescription': '让手机可以继续打开此应用。屏幕仍可关闭。',
|
||
'settings.openchamber.desktopNetwork.field.allowLanAccessAria': '允许桌面 sidecar 局域网访问',
|
||
'settings.openchamber.desktopNetwork.field.allowLanAccess': '允许你本地网络中的其他设备打开此应用',
|
||
'settings.openchamber.desktopNetwork.field.allowLanAccessDescription': '会重启应用,以便手机、平板和同一 Wi‑Fi 下的其他电脑访问。',
|
||
'settings.openchamber.desktopNetwork.field.warning': '警告:启用后,同一本地网络中的任何人都可访问此应用。',
|
||
'settings.openchamber.desktopNetwork.field.passwordRequiredWarning': '局域网访问需要桌面 UI 密码。在设置密码之前,桌面应用只会以本机访问模式启动。',
|
||
'settings.openchamber.desktopPassword.actions.showPassword': '显示密码',
|
||
'settings.openchamber.desktopPassword.actions.hidePassword': '隐藏密码',
|
||
'settings.openchamber.desktopPassword.field.password': '桌面 UI 密码',
|
||
'settings.openchamber.desktopPassword.field.passwordPlaceholder': '不需要密码',
|
||
'settings.openchamber.desktopPassword.field.passwordDescription': 'OpenChamber 会在重启后要求输入密码,之后在登录会话过期时再次要求:12 小时后,或选择“信任此设备”后 7 天。留空可关闭登录。',
|
||
'settings.openchamber.desktopNetwork.hint.openAfterRestart': '重启后可在其他设备打开:',
|
||
'settings.openchamber.desktopNetwork.hint.openNow': '可在其他设备打开:',
|
||
'settings.openchamber.desktopNetwork.actions.saveAndRestart': '保存并重启',
|
||
'settings.openchamber.desktopNetwork.error.loadFailed': '加载桌面设置失败',
|
||
'settings.openchamber.desktopNetwork.error.saveFailed': '保存桌面设置失败',
|
||
'settings.openchamber.desktopNetwork.error.savedRestartFailed': '已保存,但重启应用失败',
|
||
'settings.openchamber.desktopNetwork.error.launchAtLoginUnsupported': '此系统不支持登录时启动',
|
||
'settings.openchamber.desktopNetwork.error.launchAtLoginSaveFailed': '更新登录时启动设置失败',
|
||
'settings.openchamber.desktopNetwork.error.minimizeToTrayUnsupported': '此系统不支持系统托盘后台模式',
|
||
'settings.openchamber.desktopNetwork.error.minimizeToTraySaveFailed': '更新系统托盘设置失败',
|
||
'settings.openchamber.desktopNetwork.error.keepAwakeUnsupported': '此系统不支持防止睡眠',
|
||
'settings.openchamber.desktopNetwork.error.keepAwakeSaveFailed': '更新保持唤醒设置失败',
|
||
'settings.openchamber.opencodeCli.title': 'OpenCode CLI',
|
||
'settings.openchamber.tools.title': 'OpenChamber 工具',
|
||
'settings.openchamber.tools.field.agentControlTool': '智能体控制工具',
|
||
'settings.openchamber.tools.field.agentControlToolAria': '启用智能体控制工具',
|
||
'settings.openchamber.tools.field.agentControlToolInfo': '让智能体在聊天中编排你的工作:创建会话和 worktree、将提示委派给其他智能体、管理计划任务。会为每个会话添加少量工具说明。在 OpenCode 重启后生效。',
|
||
'settings.openchamber.tools.field.agentWebTool': 'OpenChamber Web 工具',
|
||
'settings.openchamber.tools.field.agentWebToolAria': '启用 OpenChamber Web 工具',
|
||
'settings.openchamber.tools.field.agentWebToolInfo': '让智能体在 OpenChamber 浏览器面板中查看并操作页面:打开网址、读取内容、点击、输入、滚动,以及在移动端与桌面端布局之间切换。会为每个会话添加少量工具说明。在 OpenCode 重启后生效。',
|
||
'settings.openchamber.opencodeCli.tooltipPrefix': '可选的',
|
||
'settings.openchamber.opencodeCli.tooltipSuffix': '二进制绝对路径。',
|
||
'settings.openchamber.opencodeCli.field.binaryPath': 'OpenCode 可执行文件路径',
|
||
'settings.openchamber.opencodeCli.field.binaryPathPlaceholder': '/Users/you/.bun/bin/opencode',
|
||
'settings.openchamber.opencodeCli.field.showUpdateNotifications': '显示 OpenCode 更新通知',
|
||
'settings.openchamber.opencodeCli.field.showUpdateNotificationsAria': '显示 OpenCode 更新通知',
|
||
'settings.openchamber.opencodeCli.actions.browseAria': '浏览 OpenCode 可执行文件路径',
|
||
'settings.openchamber.opencodeCli.actions.browse': '浏览',
|
||
'settings.openchamber.opencodeCli.actions.saveAndReload': '保存并重载',
|
||
'settings.openchamber.opencodeCli.actions.restartingOpenCode': '正在重启 OpenCode…',
|
||
'settings.openchamber.opencodeCli.dialog.selectBinaryTitle': '选择 OpenCode 可执行文件',
|
||
'settings.openchamber.opencodeCli.tipPrefix': '提示:你也可以使用',
|
||
'settings.openchamber.opencodeCli.tipMiddle': '环境变量,但此设置会持久化到',
|
||
'settings.mcp.sidebar.title': 'MCP 服务器',
|
||
'settings.mcp.sidebar.total': '总计 {count}',
|
||
'settings.mcp.sidebar.actions.refreshStatusAria': '刷新 MCP 状态',
|
||
'settings.mcp.sidebar.actions.refreshStatusTitle': '刷新 MCP 状态',
|
||
'settings.mcp.sidebar.actions.addServerTitle': '添加 MCP 服务器',
|
||
'settings.mcp.sidebar.actions.deleting': '删除中…',
|
||
'settings.mcp.sidebar.empty.title': '未配置 MCP 服务器',
|
||
'settings.mcp.sidebar.empty.description': '使用上方 + 按钮添加一个',
|
||
'settings.mcp.sidebar.group.projectServers': '项目服务器',
|
||
'settings.mcp.sidebar.group.userServers': '用户服务器',
|
||
'settings.mcp.sidebar.serverType.localTitle': '本地服务器',
|
||
'settings.mcp.sidebar.serverType.remoteTitle': '远程服务器',
|
||
'settings.mcp.sidebar.deleteDialog.title': '删除 MCP 服务器',
|
||
'settings.mcp.sidebar.deleteDialog.descriptionPrefix': '确定要删除“{name}”吗?这将把它从以下文件中移除',
|
||
'settings.mcp.sidebar.toast.deleteFailed': '删除 MCP 服务器失败',
|
||
'settings.mcp.sidebar.toast.serverDeleted': 'MCP 服务器“{name}”已删除',
|
||
'settings.mcp.sidebar.toast.refreshListIfStale': '如果界面看起来未更新,请刷新 MCP 列表。',
|
||
'settings.plugins.sidebar.title': '插件',
|
||
'settings.plugins.sidebar.total': '总计 {count}',
|
||
'settings.plugins.sidebar.actions.addTitle': '添加插件',
|
||
'settings.plugins.sidebar.actions.deleting': '正在删除…',
|
||
'settings.plugins.sidebar.empty.title': '尚未配置插件',
|
||
'settings.plugins.sidebar.empty.description': '使用上方的 + 按钮添加一个插件',
|
||
'settings.plugins.sidebar.group.userEntries': '用户配置',
|
||
'settings.plugins.sidebar.group.userFiles': '用户插件文件',
|
||
'settings.plugins.sidebar.group.projectEntries': '项目配置',
|
||
'settings.plugins.sidebar.group.projectFiles': '项目插件文件',
|
||
'settings.plugins.sidebar.kind.npm': 'npm 包',
|
||
'settings.plugins.sidebar.kind.path': '本地路径',
|
||
'settings.plugins.sidebar.kind.file': '插件文件',
|
||
'settings.plugins.sidebar.deleteDialog.title': '删除插件',
|
||
'settings.plugins.sidebar.deleteDialog.description': '确定要删除“{name}”吗?',
|
||
'settings.plugins.sidebar.toast.deleted': '插件“{name}”已删除',
|
||
'settings.plugins.sidebar.toast.deleteFailed': '删除插件失败',
|
||
'settings.plugins.page.empty.select': '选择一个插件以查看或编辑',
|
||
'settings.plugins.page.empty.add': '或点击 + 添加新插件',
|
||
'settings.plugins.page.header.entry': '已安装插件',
|
||
'settings.plugins.page.header.file': '插件文件',
|
||
'settings.plugins.page.field.spec': '规格',
|
||
'settings.plugins.page.field.spec.placeholder': 'npm-package@version 或 /absolute/path',
|
||
'settings.plugins.page.field.options': '选项(JSON)',
|
||
'settings.plugins.page.field.options.invalidJson': 'JSON 无效',
|
||
'settings.plugins.page.field.fileName': '文件名',
|
||
'settings.plugins.page.field.content': '内容',
|
||
'settings.plugins.page.field.scope': '范围',
|
||
'settings.plugins.scope.user': '用户',
|
||
'settings.plugins.scope.project': '项目',
|
||
'settings.plugins.page.action.save': '保存',
|
||
'settings.plugins.page.action.discard': '放弃',
|
||
'settings.plugins.dialog.add.title': '添加插件',
|
||
'settings.plugins.dialog.add.tab.npm': '从 npm',
|
||
'settings.plugins.dialog.add.tab.path': '从本地路径',
|
||
'settings.plugins.dialog.add.tab.file': '新建文件',
|
||
'settings.plugins.dialog.add.action.submit': '添加',
|
||
'settings.plugins.dialog.add.action.cancel': '取消',
|
||
'settings.plugins.toast.created': '插件已添加',
|
||
'settings.plugins.toast.updated': '插件已更新',
|
||
'settings.plugins.toast.reloadFailed': 'opencode 重新加载失败;需要重启',
|
||
'settings.plugins.validation.fileName': '文件名必须为小写,并以 .js / .ts / .mjs / .cjs 结尾',
|
||
'settings.plugins.validation.specRequired': '规格为必填项',
|
||
'settings.plugins.registry.badge.update.label': '↑ {version}',
|
||
'settings.plugins.registry.badge.update.tooltip': '有可用更新:{current} → {latest}',
|
||
'settings.plugins.registry.badge.malformed.tooltip': '规格格式不正确',
|
||
'settings.plugins.registry.badge.missingPackage.tooltip': 'npm 上找不到包 {name}',
|
||
'settings.plugins.registry.badge.missingVersion.tooltip': '{name} 的版本 {version} 尚未发布',
|
||
'settings.plugins.registry.badge.pathMissing.tooltip': '找不到文件:{path}',
|
||
'settings.plugins.registry.badge.pathUnreadable.tooltip': '无法读取文件:{path}',
|
||
'settings.plugins.registry.badge.network.tooltip': '无法连接到 npm 注册表',
|
||
'settings.plugins.registry.banner.updateAvailable.title': '有可用更新',
|
||
'settings.plugins.registry.banner.updateAvailable.description': '{current} → {latest}',
|
||
'settings.plugins.registry.banner.updateAvailable.action': '更新到 {latest}',
|
||
'settings.plugins.registry.banner.invalid.title': '插件无效',
|
||
'settings.plugins.registry.banner.invalid.malformed': '规格语法格式不正确',
|
||
'settings.plugins.registry.banner.invalid.missingPackage': 'npm 上找不到该包',
|
||
'settings.plugins.registry.banner.invalid.missingVersion': '版本尚未发布',
|
||
'settings.plugins.registry.banner.invalid.pathMissing': '文件不存在',
|
||
'settings.plugins.registry.banner.invalid.pathUnreadable': '文件不可读',
|
||
'settings.plugins.sidebar.actions.updateToLatest': '更新到最新版',
|
||
'settings.plugins.sidebar.actions.refresh': '检查更新',
|
||
'settings.plugins.sidebar.group.updatesAvailable_one': '有 {count} 个更新',
|
||
'settings.plugins.sidebar.group.updatesAvailable_other': '有 {count} 个更新',
|
||
'settings.plugins.toast.updatedToLatest': '插件已更新到 {version}',
|
||
'settings.plugins.toast.refreshing': '正在检查 npm 更新…',
|
||
'settings.plugins.toast.refreshFailed': '无法检查 npm 注册表',
|
||
'settings.openchamber.keyboardShortcuts.title': '键盘快捷键',
|
||
'settings.openchamber.keyboardShortcuts.actions.resetAll': '全部重置',
|
||
'settings.openchamber.keyboardShortcuts.actions.overwrite': '覆盖',
|
||
'settings.openchamber.keyboardShortcuts.tooltip': '录入新的按键组合并保存,绑定会立即生效。',
|
||
'settings.openchamber.keyboardShortcuts.overwritePrompt': '该组合已被其他快捷键使用。是否覆盖并清除原映射?',
|
||
'settings.openchamber.keyboardShortcuts.field.pressKeys': '按下按键...',
|
||
'settings.openchamber.keyboardShortcuts.error.captureFirst': '请先录入一个快捷键。',
|
||
'settings.openchamber.keyboardShortcuts.warning.riskyBrowserShortcut': '该快捷键可能与浏览器默认快捷键冲突,但仍已保存。',
|
||
'settings.openchamber.keyboardShortcuts.action.open_go_to_line.label': '跳转到行(文件编辑器)',
|
||
'settings.openchamber.keyboardShortcuts.action.open_command_palette.label': '打开命令面板',
|
||
'settings.openchamber.keyboardShortcuts.action.focus_input.label': '聚焦输入框',
|
||
'settings.openchamber.keyboardShortcuts.action.open_settings.label': '打开设置',
|
||
'settings.openchamber.keyboardShortcuts.action.toggle_terminal.label': '切换终端停靠区',
|
||
'settings.openchamber.keyboardShortcuts.action.toggle_terminal_expanded.label': '切换终端展开',
|
||
'settings.openchamber.keyboardShortcuts.action.add_selection_to_chat.label': '将选中内容添加到聊天',
|
||
'settings.openchamber.keyboardShortcuts.action.toggle_sidebar.label': '切换侧边栏',
|
||
'settings.openchamber.keyboardShortcuts.action.toggle_right_sidebar.label': '切换上下文面板',
|
||
'settings.openchamber.keyboardShortcuts.action.open_right_sidebar_git.label': '打开 Git 界面',
|
||
'settings.openchamber.keyboardShortcuts.action.open_right_sidebar_files.label': '打开文件界面',
|
||
'settings.openchamber.keyboardShortcuts.action.switch_context_surface.label': '切换上下文面板界面',
|
||
'settings.openchamber.keyboardShortcuts.action.switch_context_surface.suffix': ' + 1…0',
|
||
'settings.openchamber.keyboardShortcuts.action.new_chat.label': '新建会话',
|
||
'settings.openchamber.keyboardShortcuts.action.new_chat_worktree.label': '新建工作树草稿',
|
||
'settings.openchamber.keyboardShortcuts.action.new_mini_chat.label': '新建 Mini Chat 窗口',
|
||
'settings.openchamber.keyboardShortcuts.action.open_help.label': '打开键盘快捷键',
|
||
'settings.openchamber.keyboardShortcuts.action.toggle_context_plan.label': '切换上下文面板中的计划',
|
||
'settings.openchamber.keyboardShortcuts.action.toggle_services_menu.label': '切换服务菜单',
|
||
'settings.openchamber.keyboardShortcuts.action.cycle_services_tab.label': '轮换服务菜单标签',
|
||
'settings.openchamber.keyboardShortcuts.action.cycle_theme.label': '轮换主题',
|
||
'settings.openchamber.keyboardShortcuts.action.cycle_agent.label': '轮换智能体',
|
||
'settings.openchamber.keyboardShortcuts.action.cycle_favorite_model_forward.label': '向前轮换收藏模型',
|
||
'settings.openchamber.keyboardShortcuts.action.cycle_favorite_model_backward.label': '向后轮换收藏模型',
|
||
'settings.openchamber.keyboardShortcuts.action.open_model_selector.label': '打开模型选择器',
|
||
'settings.openchamber.keyboardShortcuts.action.expand_input.label': '展开输入框',
|
||
'settings.openchamber.keyboardShortcuts.action.open_timeline_dialog.label': '打开对话时间线',
|
||
'settings.openchamber.keyboardShortcuts.action.toggle_prompt_navigator.label': '显示或隐藏提示词导航',
|
||
'settings.projects.sidebar.total': '总计 {count}',
|
||
'settings.projects.sidebar.actions.addProject': '添加项目',
|
||
'settings.projects.page.empty.noProjects': '暂无项目。',
|
||
'settings.projects.page.title.default': '项目设置',
|
||
'settings.projects.page.section.worktree': '工作树',
|
||
'settings.projects.page.field.projectName': '项目名称',
|
||
'settings.projects.page.field.projectNamePlaceholder': '项目名称',
|
||
'settings.projects.page.field.defaultModel': '新聊天的默认模型',
|
||
'settings.projects.page.field.defaultModelDescription': '在此项目中开始新聊天时使用。未设置时回退到全局默认值。',
|
||
'settings.projects.page.field.accentColor': '强调色',
|
||
'settings.projects.page.field.projectIcon': '项目图标',
|
||
'settings.projects.page.field.projectIconBackgroundAria': '项目图标背景颜色',
|
||
'settings.projects.page.field.clearIconBackgroundAria': '清除图标背景',
|
||
'settings.projects.page.field.clearBackground': '清除背景',
|
||
'settings.projects.page.field.none': '无',
|
||
'settings.projects.page.field.preview': '预览',
|
||
'settings.projects.page.actions.uploadIcon': '上传图标',
|
||
'settings.projects.page.actions.uploading': '上传中...',
|
||
'settings.projects.page.actions.discoverFavicon': '发现站点图标',
|
||
'settings.projects.page.actions.discovering': '发现中...',
|
||
'settings.projects.page.actions.removeProjectIcon': '移除项目图标',
|
||
'settings.projects.page.actions.removing': '移除中...',
|
||
'settings.projects.page.actions.undoRemove': '撤销移除',
|
||
'settings.projects.page.toast.uploadIconFailed': '上传项目图标失败',
|
||
'settings.projects.page.toast.iconUpdated': '项目图标已更新',
|
||
'settings.projects.page.toast.removeIconFailed': '移除项目图标失败',
|
||
'settings.projects.page.toast.iconRemoved': '项目图标已移除',
|
||
'settings.projects.page.toast.discoverIconFailed': '发现项目图标失败',
|
||
'settings.projects.page.toast.customIconAlreadySet': '该项目已设置自定义图标',
|
||
'settings.projects.page.toast.iconDiscovered': '项目图标已发现',
|
||
'settings.projects.page.toast.saveFailed': '保存项目设置失败',
|
||
'settings.usage.sidebar.title': '用量',
|
||
'settings.usage.sidebar.total': '总计 {count}',
|
||
'settings.usage.sidebar.actions.toggleAutoRefreshAria': '切换自动刷新',
|
||
'settings.usage.sidebar.actions.refreshAria': '刷新用量',
|
||
'settings.usage.sidebar.actions.refreshTitle': '刷新用量',
|
||
'settings.usage.sidebar.tooltip.autoRefresh': '按设定间隔自动刷新用量数据',
|
||
'settings.usage.sidebar.field.intervalPlaceholder': '间隔',
|
||
'settings.usage.sidebar.field.display': '显示',
|
||
'settings.usage.sidebar.field.displayModePlaceholder': '显示模式',
|
||
'settings.usage.sidebar.field.displayModeUsage': '用量',
|
||
'settings.usage.sidebar.field.displayModeRemaining': '剩余配额',
|
||
'settings.usage.sidebar.status.notSet': '未设置',
|
||
'settings.usage.page.empty.selectProvider': '选择一个提供商以查看用量详情。',
|
||
'settings.usage.page.header.providerUsage': '{provider} 用量',
|
||
'settings.usage.page.header.refreshing': '正在刷新用量...',
|
||
'settings.usage.page.header.lastUpdated': '最后更新:{time}',
|
||
'settings.usage.page.options.showInWorkStatusAria': '在工作状态面板中显示',
|
||
'settings.usage.page.options.showInWorkStatus': '在工作状态面板中显示',
|
||
'settings.usage.page.options.showInWorkStatusTooltip': '启用后,该提供商的用量会显示在工作状态面板中。',
|
||
'settings.usage.page.state.noData': '暂无用量数据。',
|
||
'settings.usage.page.state.refreshFailedTitle': '刷新用量数据失败',
|
||
'settings.usage.page.state.providerNotConfiguredTitle': '提供商未配置',
|
||
'settings.usage.page.state.providerNotConfiguredDescription': '请在“提供商”标签页添加凭据以启用用量跟踪。',
|
||
'settings.usage.page.section.modelQuotas': '模型配额',
|
||
'settings.usage.page.section.otherModels': '其他模型',
|
||
'settings.usage.page.state.noQuotaWindowsTitle': '未报告配额窗口',
|
||
'settings.usage.page.state.noQuotaWindowsDescription': '该提供商当前未报告任何速率限制或用量配额。',
|
||
'settings.usage.pace.status.onTrack': '正常',
|
||
'settings.usage.pace.status.slightlyFast': '稍快',
|
||
'settings.usage.pace.status.tooFast': '过快',
|
||
'settings.usage.pace.status.usedUp': '已用尽',
|
||
'settings.usage.pace.predictionTooltip': '基于当前速度预测窗口结束时的用量:{prediction}',
|
||
'settings.usage.pace.wait': '等待 {duration}',
|
||
'settings.usage.pace.prediction': '预测:{prediction}',
|
||
'settings.usage.pace.rate': '速度:{rate}',
|
||
'settings.usage.pace.waitSeparator': ' · 等待 ',
|
||
'settings.usage.pace.predictionLabel': '预测:',
|
||
'settings.remoteInstances.page.title': '远程实例',
|
||
'settings.remoteInstances.page.description': '通过 SSH 连接到另一台机器,并在那里打开 OpenChamber。',
|
||
'settings.remoteInstances.page.empty.selectInstance': '选择一个实例以查看和编辑其设置。',
|
||
'settings.remoteInstances.page.empty.noExtraForwards': '尚未配置额外端口转发。',
|
||
'settings.remoteInstances.page.section.actions': '操作',
|
||
'settings.remoteInstances.page.section.actionsDescription': '连接、重新连接、查看日志或移除此连接。',
|
||
'settings.remoteInstances.page.section.remoteServer': '远程机器上的 OpenChamber',
|
||
'settings.remoteInstances.page.section.remoteServerDescription': '选择 SSH 连接后 OpenChamber 的运行方式。',
|
||
'settings.remoteInstances.page.section.mainTunnel': '本地访问',
|
||
'settings.remoteInstances.page.section.mainTunnelDescription': '选择用于打开此远程 OpenChamber 服务器的本地地址。',
|
||
'settings.remoteInstances.page.section.authentication': '认证',
|
||
'settings.remoteInstances.page.section.authenticationDescription': 'SSH 和远程 OpenChamber UI 的可选凭据。',
|
||
'settings.remoteInstances.page.section.portForwards': '端口转发',
|
||
'settings.remoteInstances.page.section.portForwardsDescription': '可选的额外端口,可通过此 SSH 连接访问。',
|
||
'settings.remoteInstances.page.field.sshCommand': 'SSH 命令',
|
||
'settings.remoteInstances.page.field.sshCommandPlaceholder': 'ssh user@host',
|
||
'settings.remoteInstances.page.field.nickname': '昵称',
|
||
'settings.remoteInstances.page.field.nicknamePlaceholder': '工作笔记本',
|
||
'settings.remoteInstances.page.field.connectionTimeoutSeconds': '连接超时(秒)',
|
||
'settings.remoteInstances.page.field.installMethod': '安装方式',
|
||
'settings.remoteInstances.page.field.installMethodHint': '当此应用为你启动 OpenChamber 时,如何将它放到远程机器上。',
|
||
'settings.remoteInstances.page.field.selectInstallMethodPlaceholder': '选择安装方式',
|
||
'settings.remoteInstances.page.field.installMethodDownloadRelease': '下载发布版本',
|
||
'settings.remoteInstances.page.field.installMethodUploadBundle': '上传安装包',
|
||
'settings.remoteInstances.page.field.selectBindHostPlaceholder': '选择绑定主机',
|
||
'settings.remoteInstances.page.field.sshPasswordOptional': 'SSH 密码(可选)',
|
||
'settings.remoteInstances.page.field.sshPasswordPlaceholder': '输入 SSH 密码',
|
||
'settings.remoteInstances.page.field.uiPasswordOptional': 'UI 密码(可选)',
|
||
'settings.remoteInstances.page.field.uiPasswordPlaceholder': '输入 UI 密码',
|
||
'settings.remoteInstances.page.field.forwardTypeHint': '选择此 SSH 连接应提供哪种端口访问。',
|
||
'settings.remoteInstances.page.field.typePlaceholder': '类型',
|
||
'settings.remoteInstances.page.forwardType.local': '本地(-L)',
|
||
'settings.remoteInstances.page.forwardType.remote': '远程(-R)',
|
||
'settings.remoteInstances.page.forwardType.dynamic': '动态(-D)',
|
||
'settings.remoteInstances.page.forwardTypeDescription.local': '打开一个本地端口,连接到远程机器上的服务。',
|
||
'settings.remoteInstances.page.forwardTypeDescription.remote': '在远程机器上打开一个端口,并连接回你的电脑。',
|
||
'settings.remoteInstances.page.forwardTypeDescription.dynamic': '通过 SSH 连接打开本地 SOCKS 代理。',
|
||
'settings.remoteInstances.page.actions.create': '创建',
|
||
'settings.remoteInstances.page.actions.cancel': '取消',
|
||
'settings.remoteInstances.page.actions.connecting': '连接中...',
|
||
'settings.remoteInstances.page.actions.reconnecting': '重连中...',
|
||
'settings.remoteInstances.page.actions.reconnectNow': '立即重连',
|
||
'settings.remoteInstances.page.actions.logs': 'SSH 日志',
|
||
'settings.remoteInstances.page.actions.pickRandomPort': '随机端口',
|
||
'settings.remoteInstances.page.actions.enableForwardAria': '启用转发',
|
||
'settings.remoteInstances.page.actions.openLocal': '打开本地',
|
||
'settings.remoteInstances.page.actions.addForward': '添加转发',
|
||
'settings.remoteInstances.page.import.sectionTitle': '已保存的 SSH 主机',
|
||
'settings.remoteInstances.page.import.loading': '正在加载 SSH 主机...',
|
||
'settings.remoteInstances.page.import.noneFound': '未找到 SSH 主机。',
|
||
'settings.remoteInstances.page.import.noneAvailable': '没有可导入的 SSH 主机。',
|
||
'settings.remoteInstances.page.import.patternSuffix': '(模式)',
|
||
'settings.remoteInstances.page.status.currentLocalUrl': '当前本地 URL:',
|
||
'settings.remoteInstances.page.status.reconnectStale': '重连似乎卡住了。你可以立即重试。',
|
||
'settings.remoteInstances.page.logsDialog.title': 'SSH 日志',
|
||
'settings.remoteInstances.page.logsDialog.loading': '正在加载日志...',
|
||
'settings.remoteInstances.page.logsDialog.empty': '暂无 SSH 日志。',
|
||
'settings.remoteInstances.page.patternDialog.title': '根据通配符模式创建',
|
||
'settings.remoteInstances.page.patternDialog.destinationPlaceholder': 'user@host',
|
||
'settings.remoteInstances.page.phase.resolvingConfiguration': '正在解析配置',
|
||
'settings.remoteInstances.page.phase.checkingAuth': '正在检查认证',
|
||
'settings.remoteInstances.page.phase.establishingSsh': '正在建立 SSH 连接',
|
||
'settings.remoteInstances.page.phase.probingRemote': '正在检查远程机器',
|
||
'settings.remoteInstances.page.phase.installingOpenChamber': '正在安装 OpenChamber',
|
||
'settings.remoteInstances.page.phase.updatingOpenChamber': '正在更新 OpenChamber',
|
||
'settings.remoteInstances.page.phase.detectingServer': '正在检测服务',
|
||
'settings.remoteInstances.page.phase.startingServer': '正在启动服务',
|
||
'settings.remoteInstances.page.phase.forwardingPorts': '正在转发端口',
|
||
'settings.remoteInstances.page.phase.reconnecting': '正在重连',
|
||
'settings.remoteInstances.page.confirm.storeSshPasswordPlaintext': '是否将 SSH 密码以明文存储到磁盘?',
|
||
'settings.remoteInstances.page.confirm.storeUiPasswordPlaintext': '是否将 UI 密码以明文存储到磁盘?',
|
||
'settings.remoteInstances.page.confirm.removeInstance': '要移除此远程实例吗?',
|
||
'settings.remoteInstances.page.toast.sshCommandRequired': 'SSH 命令为必填项',
|
||
'settings.remoteInstances.page.toast.saveFailed': '保存实例失败',
|
||
'settings.remoteInstances.page.toast.instanceSaved': '实例已保存',
|
||
'settings.remoteInstances.page.toast.instanceCreated': '实例已创建',
|
||
'settings.remoteInstances.page.toast.destinationRequired': '目标地址为必填项',
|
||
'settings.remoteInstances.page.toast.noLogsToCopy': '没有可复制的日志',
|
||
'settings.remoteInstances.page.toast.logsCopied': '日志已复制',
|
||
'settings.remoteInstances.page.toast.logsCleared': '日志已清除',
|
||
'settings.remoteInstances.page.toast.clearLogsFailed': '清除日志失败',
|
||
'settings.remoteInstances.page.toast.instanceUrlUnavailable': '实例 URL 不可用',
|
||
'settings.remoteInstances.page.toast.connectFailed': '连接实例失败',
|
||
'settings.remoteInstances.page.toast.cancelConnectionFailed': '取消连接失败',
|
||
'settings.remoteInstances.page.toast.disconnectFailed': '断开实例连接失败',
|
||
'settings.remoteInstances.page.toast.retryFailed': '重试连接失败',
|
||
'settings.remoteInstances.page.toast.instanceRemoved': '实例已移除',
|
||
'settings.remoteInstances.page.toast.removeInstanceFailed': '移除实例失败',
|
||
'settings.openchamber.worktrees.state.selectProject': '选择一个项目以管理工作树。',
|
||
'settings.openchamber.worktrees.state.gitOnly': '工作树设置仅适用于 Git 仓库。',
|
||
'settings.openchamber.worktrees.setup.title': '初始化命令',
|
||
'settings.openchamber.worktrees.setup.tooltipPrefix': '创建工作树后会在新工作树目录内自动执行。项目根目录可使用',
|
||
'settings.openchamber.worktrees.setup.tooltipSuffix': '。',
|
||
'settings.openchamber.worktrees.setup.loading': '加载中...',
|
||
'settings.openchamber.worktrees.setup.commandPlaceholder': '例如:bun install',
|
||
'settings.openchamber.worktrees.setup.removeCommandAria': '移除命令',
|
||
'settings.openchamber.worktrees.setup.addCommand': '添加命令',
|
||
'settings.openchamber.worktrees.setup.waitForCommands': '创建或发送会话前等待初始化命令完成',
|
||
'settings.openchamber.worktrees.setup.waitForCommandsAria': '创建或发送会话前等待 Worktree 初始化命令完成',
|
||
'settings.openchamber.worktrees.setup.toast.saveFailed': '保存 Worktree 初始化命令失败',
|
||
'settings.openchamber.worktrees.list.title': '现有工作树',
|
||
'settings.openchamber.worktrees.list.tooltip': '删除工作树也会删除其关联会话。',
|
||
'settings.openchamber.worktrees.list.loading': '正在加载工作树...',
|
||
'settings.openchamber.worktrees.list.empty': '该项目未找到工作树',
|
||
'settings.openchamber.worktrees.list.detachedHead': '分离 HEAD',
|
||
'settings.openchamber.worktrees.list.deleteWorktreeAria': '删除工作树 {name}',
|
||
'settings.agents.modelSelector.title': '选择模型',
|
||
'settings.agents.modelSelector.searchPlaceholder': '搜索模型',
|
||
'settings.agents.modelSelector.selectPlaceholder': '选择模型...',
|
||
'settings.agents.modelSelector.notSelected': '未选择',
|
||
'settings.agents.modelSelector.noModelOptional': '无模型(可选)',
|
||
'settings.agents.modelSelector.section.favorites': '收藏',
|
||
'settings.agents.modelSelector.section.recents': '最近使用',
|
||
'settings.agents.modelSelector.section.recent': '最近',
|
||
'settings.agents.modelSelector.badge.current': '当前',
|
||
'settings.agents.modelSelector.actions.favorite': '收藏',
|
||
'settings.agents.modelSelector.actions.unfavorite': '取消收藏',
|
||
'settings.agents.modelSelector.actions.addToFavorites': '添加到收藏',
|
||
'settings.agents.modelSelector.actions.removeFromFavorites': '从收藏中移除',
|
||
'settings.agents.modelSelector.state.noModelsFound': '未找到模型',
|
||
'settings.agents.modelSelector.keyboardHints': '↑↓ 导航 • Enter 选择 • Esc 关闭',
|
||
'settings.providers.sidebar.title': '提供商',
|
||
'settings.providers.sidebar.total': '总计 {count}',
|
||
'settings.providers.sidebar.actions.connectProviderAria': '连接提供商',
|
||
'settings.providers.sidebar.actions.connectProviderTitle': '连接提供商',
|
||
'settings.providers.sidebar.empty.title': '未找到提供商',
|
||
'settings.providers.sidebar.empty.description': '请检查 OpenCode 配置',
|
||
'settings.providers.sidebar.section.userProviders': '用户级提供商',
|
||
'settings.providers.sidebar.section.projectProviders': '项目级提供商',
|
||
'settings.providers.page.state.loading': '加载中...',
|
||
'settings.providers.page.state.unableToLoadProviderList': '无法加载提供商列表',
|
||
'settings.providers.page.empty.noProvidersDetected': '未检测到提供商',
|
||
'settings.providers.page.empty.checkOpenCodeConfiguration': '请检查 OpenCode 配置',
|
||
'settings.providers.page.empty.selectProviderFromSidebar': '请从侧边栏选择提供商',
|
||
'settings.providers.page.empty.reviewDetailsAndConfigureAuth': '查看详情并配置认证',
|
||
'settings.providers.page.connect.title': '连接提供商',
|
||
'settings.providers.page.connect.selectProviderTitle': '选择提供商',
|
||
'settings.providers.page.connect.providerField': '提供商',
|
||
'settings.providers.page.connect.selectProviderPlaceholder': '选择提供商',
|
||
'settings.providers.page.connect.searchProvidersPlaceholder': '搜索...',
|
||
'settings.providers.page.connect.noProvidersFound': '未找到提供商',
|
||
'settings.providers.page.custom.optionLabel': '其他 / 自定义',
|
||
'settings.providers.page.custom.title': '自定义提供商',
|
||
'settings.providers.page.custom.editTitle': '编辑自定义提供商',
|
||
|
||
'settings.providers.page.custom.description': '通过指定基础 URL、凭据和模型列表,添加兼容 OpenAI 的提供商。会写入 OpenCode 配置,可像其他提供商一样在聊天中使用。',
|
||
'settings.providers.page.custom.field.providerID.label': '提供商 ID',
|
||
'settings.providers.page.custom.field.providerID.placeholder': 'my-provider',
|
||
'settings.providers.page.custom.field.providerID.info': '小写字母、数字、连字符和下划线。用作 OpenCode 提供商 ID。',
|
||
'settings.providers.page.custom.field.name.label': '显示名称',
|
||
'settings.providers.page.custom.field.name.placeholder': '我的提供商',
|
||
'settings.providers.page.custom.field.name.info': '显示在提供商和模型选择器中。',
|
||
'settings.providers.page.custom.field.baseURL.label': '基础 URL',
|
||
'settings.providers.page.custom.field.baseURL.placeholder': 'https://api.example.com/v1',
|
||
'settings.providers.page.custom.field.baseURL.info': '兼容 OpenAI 的 API 基础 URL。必须以 http:// 或 https:// 开头。',
|
||
'settings.providers.page.custom.field.apiKey.label': 'API 密钥',
|
||
'settings.providers.page.custom.field.apiKey.placeholder': 'sk-... 或 {env:VAR_NAME}',
|
||
'settings.providers.page.custom.field.apiKey.info': '保存在 OpenCode 认证中,而非 OpenChamber。使用 {env:VAR_NAME} 可从环境变量读取密钥。',
|
||
'settings.providers.page.custom.field.apiKey.editInfo': '留空以保留现有凭据,或输入新密钥 / {env:VAR_NAME}。',
|
||
'settings.providers.page.custom.field.apiKey.editPlaceholder': '留空以保留现有密钥',
|
||
|
||
|
||
'settings.providers.page.custom.models.title': '模型',
|
||
'settings.providers.page.custom.models.idLabel': '模型 ID',
|
||
'settings.providers.page.custom.models.idPlaceholder': 'gpt-4o',
|
||
'settings.providers.page.custom.models.nameLabel': '模型名称',
|
||
'settings.providers.page.custom.models.namePlaceholder': 'GPT-4o',
|
||
'settings.providers.page.custom.models.add': '添加模型',
|
||
'settings.providers.page.custom.models.remove': '移除模型',
|
||
'settings.providers.page.custom.headers.title': '请求头',
|
||
'settings.providers.page.custom.headers.description': '每次调用可选发送的请求头。',
|
||
'settings.providers.page.custom.headers.keyLabel': '请求头名称',
|
||
'settings.providers.page.custom.headers.keyPlaceholder': 'X-Custom-Header',
|
||
'settings.providers.page.custom.headers.valueLabel': '请求头值',
|
||
'settings.providers.page.custom.headers.valuePlaceholder': 'value',
|
||
'settings.providers.page.custom.headers.add': '添加请求头',
|
||
'settings.providers.page.custom.headers.remove': '移除请求头',
|
||
'settings.providers.page.custom.actions.back': '返回',
|
||
'settings.providers.page.custom.actions.save': '保存提供商',
|
||
'settings.providers.page.custom.actions.update': '更新提供商',
|
||
|
||
'settings.providers.page.custom.error.providerID.required': '提供商 ID 为必填项',
|
||
'settings.providers.page.custom.error.providerID.format': '请使用小写字母、数字、连字符或下划线',
|
||
'settings.providers.page.custom.error.providerID.exists': '已连接具有此 ID 的提供商',
|
||
'settings.providers.page.custom.error.name.required': '显示名称为必填项',
|
||
'settings.providers.page.custom.error.baseURL.required': '基础 URL 为必填项',
|
||
'settings.providers.page.custom.error.baseURL.format': '基础 URL 必须以 http:// 或 https:// 开头',
|
||
'settings.providers.page.custom.error.required': '必填',
|
||
'settings.providers.page.custom.error.duplicate': '重复',
|
||
'settings.providers.page.custom.error.apiKey.required': '需要 API 密钥或 {env:VAR_NAME}',
|
||
'settings.providers.page.custom.authFailure.configAfterAuth': '凭据已保存,但提供商配置未保存。请修复错误后重试,或断开连接以清除部分保存。',
|
||
|
||
|
||
'settings.providers.page.auth.title': '认证',
|
||
'settings.providers.page.auth.loadingMethods': '正在加载认证方式...',
|
||
'settings.providers.page.auth.apiKeyLabel': 'API Key',
|
||
'settings.providers.page.auth.apiKeyTooltip': '密钥将直接发送给 OpenCode,不会被 OpenChamber 存储。',
|
||
'settings.providers.page.auth.apiKeyPlaceholder': 'sk-...',
|
||
'settings.providers.page.auth.oauthMethodFallback': 'OAuth 方式 {index}',
|
||
'settings.providers.page.auth.pasteAuthorizationCodePlaceholder': '粘贴授权码',
|
||
'settings.providers.page.auth.oauth.starting': '正在启动授权…',
|
||
'settings.providers.page.auth.oauth.waiting': '正在等待授权…',
|
||
'settings.providers.page.auth.oauth.waitingHint': '请在浏览器中完成登录。保持此页面打开,连接会自动完成。',
|
||
'settings.providers.page.auth.oauth.codeHint': '从浏览器复制授权码并粘贴到此处。',
|
||
'settings.providers.page.auth.oauth.deviceCodeLabel': '设备码',
|
||
'settings.providers.page.auth.oauth.linkLabel': '授权链接',
|
||
'settings.providers.page.auth.oauth.promptRequired': '请填写“{field}”后继续',
|
||
'settings.providers.page.auth.oauth.error.sessionExpired': '授权请求已过期。请重新连接以重新开始。',
|
||
'settings.providers.page.auth.oauth.error.codeRequired': '此提供方需要浏览器中的授权码。',
|
||
'settings.providers.page.auth.oauth.error.declined': '授权被拒绝或未完成。',
|
||
'settings.providers.page.auth.oauth.error.invalidInput': '输入的信息被拒绝。',
|
||
'settings.providers.page.auth.connected': '已连接',
|
||
'settings.providers.page.auth.incomplete': '缺少凭据',
|
||
'settings.providers.page.auth.incompleteHint': '· 在聊天中使用此提供商之前,请添加 API 密钥或 {env:VAR}',
|
||
|
||
|
||
'settings.providers.page.auth.useReconnectHint': '· 使用“重新连接”以更新凭据',
|
||
'settings.providers.page.connectionDetails.title': '连接详情',
|
||
'settings.providers.page.connectionDetails.configuredIn': '配置来源:',
|
||
'settings.providers.page.connectionDetails.noActiveSource': '没有活动配置来源',
|
||
'settings.providers.page.connectionDetails.source.authCredentials': '认证凭据',
|
||
'settings.providers.page.connectionDetails.source.userConfig': '用户配置',
|
||
'settings.providers.page.connectionDetails.source.projectConfig': '项目配置',
|
||
'settings.providers.page.connectionDetails.source.customConfig': '自定义配置',
|
||
'settings.providers.page.models.title': '可用模型',
|
||
'settings.providers.page.models.filterPlaceholder': '筛选模型...',
|
||
'settings.providers.page.models.noModelsMatchFilter': '没有模型匹配此筛选条件。',
|
||
'settings.providers.page.models.capability.toolCalling': '工具调用',
|
||
'settings.providers.page.models.capability.reasoning': '推理',
|
||
'settings.providers.page.models.capability.imageInput': '图像输入',
|
||
'settings.providers.page.models.tokenBadge.context': '上下文',
|
||
'settings.providers.page.models.tokenBadge.output': '输出',
|
||
'settings.providers.page.models.actions.hideModelFromSelectors': '在选择器中隐藏模型',
|
||
'settings.providers.page.models.actions.showModelInSelectors': '在选择器中显示模型',
|
||
'settings.providers.page.models.actions.hideModel': '隐藏模型',
|
||
'settings.providers.page.models.actions.showModel': '显示模型',
|
||
'settings.providers.page.actions.saving': '保存中...',
|
||
'settings.providers.page.actions.saveKey': '保存密钥',
|
||
'settings.providers.page.actions.connect': '连接',
|
||
'settings.providers.page.actions.copyCode': '复制代码',
|
||
'settings.providers.page.actions.open': '打开',
|
||
'settings.providers.page.actions.copy': '复制',
|
||
'settings.providers.page.actions.complete': '完成',
|
||
'settings.providers.page.actions.continue': '继续',
|
||
'settings.providers.page.actions.cancel': '取消',
|
||
'settings.providers.page.actions.tryAgain': '重试',
|
||
'settings.providers.page.actions.hide': '隐藏',
|
||
'settings.providers.page.actions.reconnect': '重新连接',
|
||
'settings.providers.page.actions.edit': '编辑',
|
||
|
||
'settings.providers.page.actions.disconnecting': '断开连接中...',
|
||
'settings.providers.page.actions.disconnect': '断开连接',
|
||
'settings.providers.page.actions.hideAll': '全部隐藏',
|
||
'settings.providers.page.actions.showAll': '全部显示',
|
||
'settings.providers.page.toast.authMethodsLoadFailed': '加载提供商认证方式失败',
|
||
'settings.providers.page.toast.providerSourcesLoadFailed': '加载提供商来源失败',
|
||
'settings.providers.page.toast.apiKeyRequired': 'API Key 为必填项',
|
||
'settings.providers.page.toast.apiKeySaveFailed': '保存 API Key 失败',
|
||
'settings.providers.page.toast.apiKeySaved': 'API Key 已保存',
|
||
'settings.providers.page.toast.oauthStartFailed': '启动 OAuth 流程失败',
|
||
'settings.providers.page.toast.oauthDetailsMissing': '未返回 OAuth 详情',
|
||
'settings.providers.page.toast.oauthCompleteFailed': '完成 OAuth 流程失败',
|
||
'settings.providers.page.toast.oauthCompleted': 'OAuth 连接已完成',
|
||
'settings.providers.page.toast.oauthLinkCopied': 'OAuth 链接已复制',
|
||
'settings.providers.page.toast.oauthLinkCopyFailed': '复制 OAuth 链接失败',
|
||
'settings.providers.page.toast.deviceCodeCopied': '设备代码已复制',
|
||
'settings.providers.page.toast.deviceCodeCopyFailed': '复制设备代码失败',
|
||
'settings.providers.page.toast.providerDisconnected': '提供商已断开连接',
|
||
'settings.providers.page.toast.providerDisconnectFailed': '断开提供商连接失败',
|
||
'settings.providers.page.toast.customProviderSaved': '已连接 {provider}',
|
||
'settings.providers.page.toast.customProviderSaveFailed': '保存自定义提供商失败',
|
||
'settings.mcp.page.empty.selectServer': '请从侧边栏选择一个 MCP 服务器',
|
||
'settings.mcp.page.empty.addNewOne': '或添加一个新的',
|
||
'settings.mcp.page.header.newServer': '新建 MCP 服务器',
|
||
'settings.mcp.page.header.configureNewServer': '配置新的 MCP 服务器',
|
||
'settings.mcp.page.header.transport': '{type} 传输',
|
||
'settings.mcp.page.transport.local': '本地 · stdio',
|
||
'settings.mcp.page.transport.remote': '远程 · SSE',
|
||
'settings.mcp.page.status.label.connected': '已连接',
|
||
'settings.mcp.page.status.label.failed': '失败',
|
||
'settings.mcp.page.status.label.needsAuth': '需要授权',
|
||
'settings.mcp.page.status.label.needsRegistration': '需要注册',
|
||
'settings.mcp.page.status.label.awaitingRestart': '等待重启',
|
||
'settings.mcp.page.status.description.awaitingRestart': '该服务器已保存但尚未生效。使用 Apply & Restart 让 OpenCode 加载它——之后即可进行连接和授权。',
|
||
'settings.mcp.page.status.description.connected': '已连接,OpenCode 可发现工具和资源。',
|
||
'settings.mcp.page.status.description.failedDefault': 'OpenCode 无法连接到此 MCP 服务器。',
|
||
'settings.mcp.page.status.description.needsAuth': '此远程 MCP 服务器在连接前需要授权。',
|
||
'settings.mcp.page.status.description.needsClientRegistrationDefault': '此远程 MCP 服务器在完成授权前需要客户端注册。',
|
||
'settings.mcp.page.status.description.disabled': '此 MCP 服务器在配置中已禁用。',
|
||
'settings.mcp.page.status.description.default': '请刷新或测试连接以加载实时运行状态。',
|
||
'settings.mcp.page.status.runtimeStatus': '运行状态',
|
||
'settings.mcp.page.status.projectScopedTo': '项目作用域:{directory}',
|
||
'settings.mcp.page.status.userScoped': '用户作用域配置',
|
||
'settings.mcp.page.status.activeProject': '当前项目',
|
||
'settings.mcp.page.actions.connect': '连接',
|
||
'settings.mcp.page.actions.disconnect': '断开连接',
|
||
'settings.mcp.page.actions.authorize': '授权',
|
||
'settings.mcp.page.actions.reauthorize': '重新授权',
|
||
'settings.mcp.page.actions.clearAuth': '清除授权',
|
||
'settings.mcp.page.actions.test': '测试',
|
||
'settings.mcp.page.actions.testConnection': '测试连接',
|
||
'settings.mcp.page.actions.working': '处理中...',
|
||
'settings.mcp.page.actions.starting': '启动中...',
|
||
'settings.mcp.page.actions.clearing': '清除中...',
|
||
'settings.mcp.page.actions.testing': '测试中...',
|
||
'settings.mcp.page.actions.completing': '完成中...',
|
||
'settings.mcp.page.actions.completeAuthorization': '完成授权',
|
||
'settings.mcp.page.actions.openInBrowser': '在浏览器中打开',
|
||
'settings.mcp.page.actions.copyLink': '复制链接',
|
||
'settings.mcp.page.actions.deleting': '删除中…',
|
||
'settings.mcp.page.auth.authorizationUrl': '授权 URL',
|
||
'settings.mcp.page.auth.manualFallbackTitle': '手动授权回退',
|
||
'settings.mcp.page.auth.manualFallbackDescription': '如果浏览器跳转到了其他机器,或显示了带 code 的回调 URL,请在这里粘贴完整 URL 或原始 code。',
|
||
'settings.mcp.page.auth.callbackInputPlaceholder': '粘贴回调 URL 或授权代码',
|
||
'settings.mcp.page.auth.waitingForOpenCode': '正在等待 OpenCode 识别浏览器中已完成的授权流程...',
|
||
'settings.mcp.page.server.title': '服务器',
|
||
'settings.mcp.page.server.name': '服务器名称',
|
||
'settings.mcp.page.server.namePlaceholder': 'my-mcp-server',
|
||
'settings.mcp.page.server.importJson': '从 JSON 片段导入',
|
||
'settings.mcp.page.server.importJsonTitle': '从 JSON 片段导入完整 MCP 服务器配置',
|
||
'settings.mcp.page.server.enable': '启用服务器',
|
||
'settings.mcp.page.server.enableAria': '启用服务器',
|
||
'settings.mcp.page.server.transportMode': '传输模式',
|
||
'settings.mcp.page.connection.command': '命令',
|
||
'settings.mcp.page.connection.serverUrl': '服务器 URL',
|
||
'settings.mcp.page.connection.serverUrlPlaceholder': 'https://mcp.example.com/mcp',
|
||
'settings.mcp.page.connection.pasteCommand': '粘贴命令',
|
||
'settings.mcp.page.connection.pasteCommandTitle': '从剪贴板粘贴本地命令并自动拆分',
|
||
'settings.mcp.page.connection.previewArgs': '预览({count} 个参数)',
|
||
'settings.mcp.page.advanced.title': '远程高级选项',
|
||
'settings.mcp.page.advanced.configure': '配置高级选项',
|
||
'settings.mcp.page.advanced.autoDetect': '自动检测',
|
||
'settings.mcp.page.advanced.custom': '自定义',
|
||
'settings.mcp.page.advanced.headers': '请求头',
|
||
'settings.mcp.page.advanced.timeoutMs': '超时(毫秒)',
|
||
'settings.mcp.page.advanced.timeoutHint': '留空以使用 OpenCode 的默认 MCP 超时。',
|
||
'settings.mcp.page.advanced.requestHeaders': '请求头',
|
||
'settings.mcp.page.advanced.headerNamePlaceholder': 'Header-Name',
|
||
'settings.mcp.page.advanced.pasteHeaders': '粘贴请求头',
|
||
'settings.mcp.page.advanced.pasteHeadersTitle': '从剪贴板粘贴 KEY=VALUE 请求头',
|
||
'settings.mcp.page.advanced.oauthAutoDetection': '启用 OAuth 自动检测',
|
||
'settings.mcp.page.advanced.oauthAutoDetectionAria': '启用 OAuth 自动检测',
|
||
'settings.mcp.page.advanced.oauthClientIdPlaceholder': 'OAuth 客户端 ID',
|
||
'settings.mcp.page.advanced.oauthClientSecretPlaceholder': 'OAuth 客户端密钥',
|
||
'settings.mcp.page.advanced.oauthScopesPlaceholder': 'Scopes(空格分隔)',
|
||
'settings.mcp.page.advanced.oauthRedirectUriPlaceholder': '重定向 URI',
|
||
'settings.mcp.page.advanced.oauthHint': '将这些字段留空可让 OpenCode 从 MCP 服务器推断 OAuth 设置。',
|
||
'settings.mcp.page.advanced.oauthCallbackHint': '当重定向 URI 为空时,浏览器 MCP 授权会使用以下回调 URL:',
|
||
'settings.mcp.page.env.title': '环境变量',
|
||
'settings.mcp.page.env.key': '键',
|
||
'settings.mcp.page.env.value': '值',
|
||
'settings.mcp.page.env.valuePlaceholder': 'value',
|
||
'settings.mcp.page.env.hide': '隐藏',
|
||
'settings.mcp.page.env.show': '显示',
|
||
'settings.mcp.page.env.addVariable': '添加变量',
|
||
'settings.mcp.page.env.addEnvironmentVariable': '添加环境变量',
|
||
'settings.mcp.page.env.keyPlaceholder': 'API_KEY',
|
||
'settings.mcp.page.env.pasteEnv': '粘贴 .env',
|
||
'settings.mcp.page.env.pasteEnvTitle': '从剪贴板粘贴 KEY=VALUE 行',
|
||
'settings.mcp.page.env.plainTextWarning': '⚠ 值将以明文存储在 opencode.json 中',
|
||
'settings.mcp.page.env.removeVariableAria': '移除变量',
|
||
'settings.mcp.page.importDialog.title': '导入 JSON 片段',
|
||
'settings.mcp.page.importDialog.description': '从文档或其他配置文件粘贴完整 MCP JSON 片段。解析后的值将填充到此表单,保存前可先检查。',
|
||
'settings.mcp.page.importDialog.pasteFromClipboard': '从剪贴板粘贴 JSON',
|
||
'settings.mcp.page.deleteDialog.title': '删除“{name}”?',
|
||
'settings.mcp.page.deleteDialog.descriptionPrefix': '这会从以下文件中移除该服务器:',
|
||
'settings.mcp.page.deleteDialog.descriptionSuffix': 'OpenCode 需要重新加载。',
|
||
'settings.mcp.page.toast.clipboardReadFailed': '无法读取剪贴板',
|
||
'settings.mcp.page.toast.configImported': 'MCP 配置已导入',
|
||
'settings.mcp.page.toast.nameRequired': '名称为必填项',
|
||
'settings.mcp.page.toast.serverNameExists': '已存在同名服务器',
|
||
'settings.mcp.page.toast.localCommandRequired': '本地服务器的命令不能为空',
|
||
'settings.mcp.page.toast.remoteUrlRequired': '远程服务器的 URL 不能为空',
|
||
'settings.mcp.page.toast.serverCreatedReloadFailed': 'MCP 服务器已创建,但 OpenCode 重载失败。',
|
||
'settings.mcp.page.toast.savedReloadFailed': '已保存,但 OpenCode 重载失败。',
|
||
'settings.mcp.page.toast.retryRefreshHint': '请重试刷新或重新打开设置后再授权该服务器。',
|
||
'settings.mcp.page.toast.serverCreatedReloading': 'MCP 服务器已创建。OpenCode 正在重载…',
|
||
'settings.mcp.page.toast.savedReloading': '已保存。OpenCode 正在重载…',
|
||
'settings.mcp.page.toast.saveFailed': '保存失败',
|
||
'settings.mcp.page.toast.unexpectedError': '发生错误',
|
||
'settings.mcp.page.toast.serverDeletedReloadFailed': '“{name}”已删除,但 OpenCode 重载失败',
|
||
'settings.mcp.page.toast.refreshListIfStale': '如果 UI 看起来陈旧,请刷新 MCP 列表。',
|
||
'settings.mcp.page.toast.serverDeleted': '“{name}”已删除',
|
||
'settings.mcp.page.toast.deleteFailed': '删除失败',
|
||
'settings.mcp.page.toast.disconnected': '已断开连接',
|
||
'settings.mcp.page.toast.connected': '已连接',
|
||
'settings.mcp.page.toast.connectionNeedsAuthorization': '连接需要授权',
|
||
'settings.mcp.page.toast.connectionNeedsClientRegistration': '连接需要客户端注册',
|
||
'settings.mcp.page.toast.connectionFailed': '连接失败',
|
||
'settings.mcp.page.toast.connectionAttemptFinished': '连接尝试已完成。请刷新状态查看详情。',
|
||
'settings.mcp.page.toast.createServerBeforeLiveActions': '请先创建服务器再执行实时操作',
|
||
'settings.mcp.page.toast.saveBeforeLiveActions': '请先保存更改再执行实时操作',
|
||
'settings.mcp.page.toast.refreshStatusFailed': '刷新 MCP 状态失败',
|
||
'settings.mcp.page.toast.oauthRedirectUrlBuildFailed': '无法构建 MCP OAuth 重定向 URL',
|
||
'settings.mcp.page.toast.oauthBrowserCallbackSaveFailed': '保存 MCP 授权浏览器回调 URL 失败',
|
||
'settings.mcp.page.toast.openCodeReloadFailedAfterCallbackSave': '保存浏览器回调 URL 后 OpenCode 重载失败',
|
||
'settings.mcp.page.toast.completeAuthorizationInBrowserWithPaste': '请在浏览器中完成 MCP 授权流程,然后在这里粘贴返回的 code 或回调 URL',
|
||
'settings.mcp.page.toast.completeAuthorizationInBrowser': '请在浏览器中完成 MCP 授权流程',
|
||
'settings.mcp.page.toast.openAuthorizationUrlFailed': '无法自动打开授权 URL',
|
||
'settings.mcp.page.toast.authorizationStartFailed': '启动授权失败',
|
||
'settings.mcp.page.toast.authSessionExpired': '授权会话已过期或在重载时被清除。请再次点击“授权”。',
|
||
'settings.mcp.page.toast.savedAuthorizationRemoved': '已保存的 MCP 授权已移除',
|
||
'settings.mcp.page.toast.clearAuthorizationFailed': '清除授权失败',
|
||
'settings.mcp.page.toast.authorizationUrlCopied': '授权 URL 已复制',
|
||
'settings.mcp.page.toast.authorizationUrlCopyFailed': '复制授权 URL 失败',
|
||
'settings.mcp.page.toast.pasteCallbackOrCodeFirst': '请先粘贴回调 URL 或授权代码',
|
||
'settings.mcp.page.toast.missingServerDetails': '缺少 MCP 服务器信息。请重新选择服务器或粘贴完整回调 URL。',
|
||
'settings.mcp.page.toast.authorizationCompleted': 'MCP 授权已完成',
|
||
'settings.mcp.page.toast.authorizationCompletedFor': '已为 {name} 完成 MCP 授权',
|
||
'settings.mcp.page.toast.authorizationCompleteFailed': '完成 MCP 授权失败',
|
||
'settings.mcp.page.toast.enableServerBeforeTest': '测试连接前请先启用该服务器',
|
||
'settings.mcp.page.toast.connectionTestSucceeded': '连接测试成功',
|
||
'settings.mcp.page.toast.connectionTestFailed': '连接测试失败',
|
||
'settings.mcp.page.toast.connectionTestFinished': '连接测试已完成。请刷新状态查看详情。',
|
||
'settings.mcp.page.toast.authorizationFailed': '授权失败',
|
||
'settings.mcp.page.toast.authorizationStillInProgress': '浏览器中的授权仍在进行中。如有需要请粘贴回调 URL 或代码。',
|
||
'settings.mcp.page.toast.noKeyValuePairsFound': '剪贴板中未找到 KEY=VALUE 对',
|
||
'settings.mcp.page.toast.importedVariablesCount': '已导入变量:{count}',
|
||
'settings.mcp.page.toast.pastedArgumentsCount': '已粘贴参数:{count}',
|
||
'settings.shared.projectSelector.fallbackProject': '项目',
|
||
'settings.shared.projectSelector.switchProjectAria': '切换项目',
|
||
'settings.shared.projectSelector.switchProjectTitle': '切换项目',
|
||
'settings.openchamber.defaults.title': '会话默认值',
|
||
'settings.openchamber.defaults.summaryPrefix': '新会话将默认使用:',
|
||
'settings.openchamber.defaults.summaryOpenCodeDefault': 'OpenCode 智能体默认值',
|
||
'settings.openchamber.defaults.field.defaultModel': '默认模型',
|
||
'settings.openchamber.defaults.field.defaultThinking': '默认思考模式',
|
||
'settings.openchamber.defaults.field.thinkingPlaceholder': '思考模式',
|
||
'settings.openchamber.defaults.field.defaultAgent': '默认智能体',
|
||
'settings.openchamber.defaults.field.showDeletionDialogAria': '显示删除对话框',
|
||
'settings.openchamber.defaults.smallModel.title': '小模型',
|
||
'settings.openchamber.defaults.smallModel.description': '用于快速实用任务(如简短回顾和摘要)的廉价模型。',
|
||
'settings.openchamber.defaults.smallModel.useDefault': '使用默认小模型',
|
||
'settings.openchamber.defaults.smallModel.useDefaultAria': '使用默认小模型',
|
||
'settings.openchamber.defaults.smallModel.overrideModel': '覆盖模型',
|
||
'settings.openchamber.defaults.walkthroughModel.title': '改动导读模型',
|
||
'settings.openchamber.defaults.walkthroughModel.description': 'AI 评审改动需要结构化输出和容纳整份差异的空间,廉价的小模型往往做不到。目录中标注为不支持结构化输出的模型不会出现在此列表里。 未选择时将使用小模型。',
|
||
'settings.openchamber.defaults.walkthroughModel.overrideModel': '导读模型',
|
||
'settings.openchamber.defaults.walkthroughModel.usesSmallModel': '小模型',
|
||
'settings.openchamber.defaults.field.showDeletionDialog': '显示删除对话框',
|
||
'settings.openchamber.defaults.field.openFilesPreviewAria': '以预览模式打开可预览文件',
|
||
'settings.openchamber.defaults.field.openFilesPreview': '以预览模式打开可预览文件',
|
||
'settings.openchamber.defaults.option.default': '默认',
|
||
'settings.openchamber.defaults.option.defaultLowercase': '默认',
|
||
'settings.openchamber.git.title': 'Git 偏好设置',
|
||
'settings.openchamber.git.changesViewTitle': '更改视图',
|
||
'settings.openchamber.git.changesViewAria': 'Git 更改视图模式',
|
||
'settings.openchamber.git.option.flatList': '平铺列表',
|
||
'settings.openchamber.git.option.treeView': '树形视图',
|
||
'settings.openchamber.git.optionAria': 'Git 更改视图模式:{option}',
|
||
'settings.openchamber.git.enableGitmojiAria': '启用 Gitmoji 选择器',
|
||
'settings.openchamber.git.enableGitmoji': '启用 Gitmoji 选择器',
|
||
'settings.openchamber.git.showGitignoredAria': '显示已被 gitignore 忽略的文件',
|
||
'settings.openchamber.git.showGitignored': '显示 Gitignored 文件',
|
||
'settings.github.page.tooltip.connectAccount': '连接 GitHub 账号以在应用内处理 PR 和 Issue 工作流。',
|
||
'settings.github.page.avatarAlt.withLogin': '{login} 头像',
|
||
'settings.github.page.avatarAlt.fallback': 'GitHub 头像',
|
||
'settings.github.page.label.unknownUser': '未知',
|
||
'settings.github.page.label.scopes': '作用域:{value}',
|
||
'settings.github.page.label.otherAccounts': '其他账号',
|
||
'settings.github.page.accountSource.oauth': 'OAuth',
|
||
'settings.github.page.accountSource.cli': 'CLI',
|
||
'settings.github.page.actions.disconnect': '断开连接',
|
||
'settings.github.page.actions.connect': '连接 GitHub',
|
||
'settings.github.page.actions.switchTo': '切换到',
|
||
'settings.github.page.actions.addAccount': '添加账号',
|
||
'settings.github.page.actions.openGithub': '打开 GitHub',
|
||
'settings.github.page.status.notConnected': '未连接',
|
||
'settings.github.page.status.active': '当前',
|
||
'settings.github.page.flow.title': '授权 OpenChamber',
|
||
'settings.github.page.flow.description': '在 GitHub 中输入以下代码以授权此设备:',
|
||
'settings.github.page.flow.waiting': '等待批准…(自动刷新)',
|
||
'settings.github.page.toast.startConnectFailed': '启动 GitHub 连接失败',
|
||
'settings.github.page.toast.connected': 'GitHub 已连接',
|
||
'settings.github.page.toast.authorizationFailed': 'GitHub 授权失败',
|
||
'settings.github.page.toast.disconnected': 'GitHub 已断开连接',
|
||
'settings.github.page.toast.disconnectFailed': '断开 GitHub 失败',
|
||
'settings.github.page.toast.accountSwitched': 'GitHub 账号已切换',
|
||
'settings.github.page.toast.accountSwitchFailed': '切换 GitHub 账号失败',
|
||
'settings.github.page.oauth.title': 'GitHub OAuth 令牌',
|
||
'settings.github.page.ghCli.title': 'GitHub CLI 令牌',
|
||
'settings.github.page.ghCli.activeDescription': '已通过 gh CLI 认证',
|
||
'settings.github.page.ghCli.fallbackDescription': '在 OpenChamber 认证被移除时可作为备用',
|
||
'settings.github.page.ghCli.disabledDescription': '已安装但未作为备用使用',
|
||
'settings.github.page.ghCli.actions.disable': '禁用',
|
||
'settings.github.page.ghCli.actions.enable': '启用',
|
||
'settings.github.page.toast.ghCliEnabled': 'gh CLI 备用已启用',
|
||
'settings.github.page.toast.ghCliDisabled': 'gh CLI 备用已禁用',
|
||
'settings.github.page.toast.ghCliUpdateFailed': '更新 gh CLI 设置失败',
|
||
'settings.notifications.page.delivery.title': '通知投递',
|
||
'settings.notifications.page.delivery.enableAria': '启用通知',
|
||
'settings.notifications.page.delivery.enableLabel': '启用通知',
|
||
'settings.notifications.page.delivery.focusedAria': '应用聚焦时通知',
|
||
'settings.notifications.page.delivery.focusedLabel': '应用聚焦时通知',
|
||
'settings.notifications.page.delivery.testAction': '发送测试通知',
|
||
'settings.notifications.page.delivery.browserPermissionHint': '浏览器可能会在首次使用时请求权限。',
|
||
'settings.notifications.page.delivery.permissionDenied': '通知权限被拒绝。请在浏览器设置中启用。',
|
||
'settings.notifications.page.delivery.permissionGrantedButDisabled': '权限已授予,但通知处于关闭状态。',
|
||
'settings.notifications.page.delivery.vscodeHint': '启用后,通知将通过 VS Code 原生通知投递。',
|
||
'settings.notifications.page.events.title': '通知事件',
|
||
'settings.notifications.page.events.completionAria': '智能体完成',
|
||
'settings.notifications.page.events.completionLabel': '智能体完成',
|
||
'settings.notifications.page.events.subtaskAria': '子智能体完成',
|
||
'settings.notifications.page.events.subtaskLabel': '子智能体完成',
|
||
'settings.notifications.page.events.errorAria': '智能体错误',
|
||
'settings.notifications.page.events.errorLabel': '智能体错误',
|
||
'settings.notifications.page.events.questionAria': '智能体提问',
|
||
'settings.notifications.page.events.questionLabel': '智能体提问',
|
||
'settings.notifications.page.template.title': '通知模板',
|
||
'settings.notifications.page.template.variablesLabel': '变量:',
|
||
'settings.notifications.page.template.event.completion': '完成',
|
||
'settings.notifications.page.template.event.subtask': '子智能体完成',
|
||
'settings.notifications.page.template.event.error': '错误',
|
||
'settings.notifications.page.template.event.question': '提问',
|
||
'settings.notifications.page.template.field.title': '标题',
|
||
'settings.notifications.page.template.field.message': '消息',
|
||
'settings.notifications.page.template.defaults.completion.title': '{agent_name} 已完成',
|
||
'settings.notifications.page.template.defaults.completion.message': '{model_name} 已完成任务',
|
||
'settings.notifications.page.template.defaults.error.title': '工具错误',
|
||
'settings.notifications.page.template.defaults.error.message': '{last_message}',
|
||
'settings.notifications.page.template.defaults.question.title': '需要输入',
|
||
'settings.notifications.page.template.defaults.question.message': '{last_message}',
|
||
'settings.notifications.page.template.defaults.subtask.title': '{agent_name} 已完成',
|
||
'settings.notifications.page.template.defaults.subtask.message': '{model_name} 已完成任务',
|
||
'settings.notifications.page.summary.title': 'AI 摘要',
|
||
'settings.notifications.page.summary.toggleAria': '摘要最后一条消息',
|
||
'settings.notifications.page.summary.toggleLabel': '摘要最后一条消息',
|
||
'settings.notifications.page.summary.requiresTemplateVariable': '需要在通知模板中包含',
|
||
'settings.notifications.page.summary.modelLabel': '摘要模型',
|
||
'settings.notifications.page.summary.modelTooltip': '用于通知和语音摘要。',
|
||
'settings.notifications.page.summary.notSelected': '未选择',
|
||
'settings.notifications.page.summary.thresholdLabel': '阈值',
|
||
'settings.notifications.page.summary.thresholdHint': '超过该长度的消息将被摘要',
|
||
'settings.notifications.page.summary.resetThresholdAria': '重置阈值',
|
||
'settings.notifications.page.summary.lengthLabel': '长度',
|
||
'settings.notifications.page.summary.lengthHint': '摘要目标字符长度',
|
||
'settings.notifications.page.summary.resetLengthAria': '重置摘要长度',
|
||
'settings.notifications.page.summary.maxLengthLabel': '最大长度',
|
||
'settings.notifications.page.summary.maxLengthHint': '将 {last_message} 截断到该长度',
|
||
'settings.notifications.page.summary.resetMaxLengthAria': '重置最大消息长度',
|
||
'settings.notifications.page.push.title': '后台推送通知',
|
||
'settings.notifications.page.push.enableAria': '启用推送通知',
|
||
'settings.notifications.page.push.enableLabel': '启用推送通知',
|
||
'settings.notifications.page.push.unsupportedHint': '当前不支持推送。桌面 Chrome/Edge 与 Android 支持推送。iOS 需要已安装 PWA。',
|
||
'settings.notifications.page.push.supportedHint': '通过操作系统后台服务接收提醒',
|
||
'settings.notifications.page.push.loadingAria': '加载中',
|
||
'settings.notifications.page.toast.permissionDenied.title': '通知权限被拒绝',
|
||
'settings.notifications.page.toast.permissionDenied.description': '请在浏览器设置中启用通知。',
|
||
'settings.notifications.page.toast.permissionDenied.enableInBrowser': '请在浏览器设置中启用通知。',
|
||
'settings.notifications.page.toast.requestPermissionFailed': '请求通知权限失败',
|
||
'settings.notifications.page.toast.notificationsApiUnavailable': '通知 API 不可用',
|
||
'settings.notifications.page.toast.testNotificationSent': '测试通知发送成功',
|
||
'settings.notifications.page.toast.testNotificationFailed': '发送测试通知失败',
|
||
'settings.notifications.page.toast.pushUnsupported': '不支持推送通知',
|
||
'settings.notifications.page.toast.pushApiUnavailable': '推送 API 不可用',
|
||
'settings.notifications.page.toast.pushKeyLoadFailed': '加载推送密钥失败',
|
||
'settings.notifications.page.toast.enableBackgroundFailed': '启用后台通知失败',
|
||
'settings.notifications.page.toast.backgroundEnabled': '后台通知已启用',
|
||
'settings.notifications.page.toast.backgroundDisabled': '后台通知已关闭',
|
||
'settings.notifications.page.testNotification.title': '测试通知',
|
||
'settings.notifications.page.testNotification.body': '这是来自 OpenChamber 的测试通知。',
|
||
'settings.voice.page.section.speechRecognition': '语音识别',
|
||
'settings.voice.page.field.enableVoiceInput': '启用语音输入',
|
||
'settings.voice.page.field.enableVoiceInputAria': '启用语音输入(听写)',
|
||
'settings.voice.page.section.playbackAndSummary': '播放',
|
||
'settings.voice.page.field.provider': '提供方',
|
||
'settings.voice.page.provider.browser': '浏览器',
|
||
'settings.voice.page.provider.openai': 'OpenAI',
|
||
'settings.voice.page.provider.custom': '自定义',
|
||
'settings.voice.page.provider.say': 'Say',
|
||
'settings.voice.page.provider.server': '服务器',
|
||
'settings.voice.page.provider.local': '本地',
|
||
'settings.voice.page.tooltip.sttLocal': '在 OpenChamber 服务器上本地转写。模型自动下载,无需 API 密钥。',
|
||
'settings.voice.page.tooltip.localTts': '在 OpenChamber 服务器上本地合成语音(Kokoro,英语)。模型自动下载,无需 API 密钥。',
|
||
'settings.voice.page.stt.model.parakeetV2': 'Parakeet v2(英语)',
|
||
'settings.voice.page.stt.model.parakeetV3': 'Parakeet v3(25 种欧洲语言)',
|
||
'settings.voice.page.stt.model.whisperBase': 'Whisper base(多语言)',
|
||
'settings.voice.page.stt.model.whisperTiny': 'Whisper tiny(多语言)',
|
||
'settings.voice.page.stt.badge.bestForEnglish': '英语最佳',
|
||
'settings.voice.page.stt.badge.bestForMultilingual': '多语言最佳',
|
||
'settings.voice.page.stt.meta.accuracy': '准确度',
|
||
'settings.voice.page.stt.meta.speed': '速度',
|
||
'settings.voice.page.stt.modelInstalled': '模型已安装',
|
||
'settings.voice.page.stt.modelDownloading': '正在下载模型...',
|
||
'settings.voice.page.stt.modelDownloadingProgress': '正在下载模型... {percent}%',
|
||
'settings.voice.page.stt.modelNotInstalled': '模型未下载',
|
||
'settings.voice.page.stt.modelDownload': '下载',
|
||
'settings.voice.page.stt.modelDelete': '删除模型',
|
||
'settings.voice.page.stt.modelRetry': '重试',
|
||
'settings.voice.page.provider.wasm': '本地',
|
||
'settings.voice.page.stt.wasmModel': 'Whisper 模型',
|
||
'settings.voice.page.stt.wasmLoaded': '模型已加载',
|
||
'settings.voice.page.stt.wasmDownloading': '下载模型中...',
|
||
'settings.voice.page.stt.wasmLoading': '加载模型中...',
|
||
'settings.voice.page.stt.wasmNotLoaded': '模型将在首次使用时下载',
|
||
'settings.voice.page.stt.wasmDownload': '下载',
|
||
'settings.voice.page.stt.wasmRetry': '重试',
|
||
'settings.voice.page.tooltip.browser': '免费、离线,移动端支持有限。',
|
||
'settings.voice.page.tooltip.openai': '质量高,移动端可用,需要 API Key。',
|
||
'settings.voice.page.tooltip.custom': 'OpenAI 兼容服务器(例如 Kokoro)。',
|
||
'settings.voice.page.tooltip.say': 'macOS 原生。快速、免费、离线。',
|
||
'settings.voice.page.tooltip.sttBrowser': 'Web Speech API(Chrome/Edge)。免费,无需配置。',
|
||
'settings.voice.page.tooltip.sttServer': 'OpenAI 兼容 Whisper 服务器。准确率更好,支持任意语言。',
|
||
'settings.voice.page.field.apiKey': 'API Key',
|
||
'settings.voice.page.field.apiKeyHintUsingConfig': '使用配置中的密钥',
|
||
'settings.voice.page.field.apiKeyHintRequired': 'OpenAI TTS 需要 API Key',
|
||
'settings.voice.page.field.apiKeyHintProvide': '提供你的 OpenAI Key',
|
||
'settings.voice.page.field.serverUrl': '服务器 URL',
|
||
'settings.voice.page.field.serverUrlHint': 'OpenAI 兼容 TTS 服务器的基础 URL',
|
||
'settings.voice.page.field.model': '模型',
|
||
'settings.voice.page.field.voice': '声音',
|
||
'settings.voice.page.field.voiceIdentifierHint': '服务器支持的声音标识符',
|
||
'settings.voice.page.field.configuredAbove': '已在上方配置',
|
||
'settings.voice.page.actions.preview': '预览',
|
||
'settings.voice.page.field.selectVoicePlaceholder': '选择声音',
|
||
'settings.voice.page.field.auto': '自动',
|
||
'settings.voice.page.field.speechRate': '语速',
|
||
'settings.voice.page.field.speechPitch': '音高',
|
||
'settings.voice.page.field.speechVolume': '音量',
|
||
'settings.voice.page.field.language': '语言',
|
||
'settings.voice.page.field.selectLanguagePlaceholder': '选择语言',
|
||
'settings.voice.page.field.sttBrowserSupportError': '此浏览器不支持 MediaRecorder 或 AudioContext。服务器 STT 可能无法工作。',
|
||
'settings.voice.page.field.sttServerUrlHint': 'Whisper 兼容服务器的基础 URL',
|
||
'settings.voice.page.field.sttLanguageHint': 'BCP-47 代码(例如 en、fr)。留空为自动检测。',
|
||
'settings.voice.page.field.silenceThreshold': '静音阈值',
|
||
'settings.voice.page.field.silenceHold': '静音保持时长',
|
||
'settings.voice.page.field.transcribeOnStopAria': '停止录音时转写',
|
||
'settings.voice.page.field.transcribeOnStop': '停止时转写',
|
||
'settings.voice.page.field.millisecondsUnit': '毫秒',
|
||
'settings.voice.page.field.messageReadAloudButtonAria': '消息朗读按钮',
|
||
'settings.voice.page.field.messageReadAloudButton': '消息朗读按钮',
|
||
'settings.voice.page.field.summarizeBeforePlaybackAria': '播放前摘要',
|
||
'settings.voice.page.field.summarizeBeforePlayback': '播放前摘要',
|
||
'settings.voice.page.field.summarizeVoiceModeResponsesAria': '摘要语音模式回复',
|
||
'settings.voice.page.field.summarizeVoiceModeResponses': '摘要语音模式回复',
|
||
'settings.voice.page.field.summarizationThreshold': '摘要阈值',
|
||
'settings.voice.page.field.summaryMaxLength': '摘要最大长度',
|
||
'settings.voice.page.hint.shiftClickPrefix': '按住',
|
||
'settings.voice.page.hint.shiftClickSuffix': '点击麦克风按钮可切换连续模式',
|
||
'settings.voice.page.preview.browserVoiceFallback': '你的浏览器声音',
|
||
'settings.voice.page.preview.voiceLine': '你好!我是 {voiceName}。这是我的声音效果。',
|
||
'settings.voice.page.preview.customServerLine': '你好!这是自定义 TTS 服务器的预览。',
|
||
'settings.voice.page.field.ttsInputMode': 'TTS 输入模式',
|
||
'settings.voice.page.field.ttsInputModeSanitized': '清理后文本',
|
||
'settings.voice.page.field.ttsInputModeRaw': '原始 Markdown',
|
||
'settings.voice.page.field.ttsInputModeSummarized': '摘要',
|
||
'settings.openchamber.visual.section.colorMode': '颜色模式',
|
||
'settings.openchamber.visual.section.colorModeAndTheme': '颜色模式与主题',
|
||
'settings.openchamber.visual.section.mobileLayout': '移动端布局',
|
||
'settings.openchamber.visual.option.mobileLayout.default': '旧版',
|
||
'settings.openchamber.visual.option.mobileLayout.new': '新版',
|
||
'settings.openchamber.visual.section.localization': '本地化',
|
||
'settings.openchamber.visual.section.spacingAndLayout': '间距与布局',
|
||
'settings.openchamber.visual.section.densityAndType': '密度与字体',
|
||
'settings.openchamber.visual.section.appInstall': '应用安装',
|
||
'settings.openchamber.visual.section.navigation': '导航',
|
||
'settings.openchamber.visual.section.chatRenderMode': '聊天渲染模式',
|
||
'settings.openchamber.visual.section.chatRenderModeAria': '聊天渲染模式',
|
||
'settings.openchamber.visual.section.chatDisplay': '显示',
|
||
'settings.openchamber.visual.section.chatMessageOptions': '消息选项',
|
||
'settings.openchamber.visual.section.chatFeatures': '功能',
|
||
'settings.openchamber.visual.section.messageStreamTransport': '消息流传输方式',
|
||
'settings.openchamber.visual.section.activityDefault': '活动默认状态',
|
||
'settings.openchamber.visual.section.activityDefaultAria': '活动默认模式',
|
||
'settings.openchamber.visual.section.showToolsOpenedByDefault': '默认展开以下工具',
|
||
'settings.openchamber.visual.section.sessionAssistance': '会话辅助',
|
||
'settings.openchamber.visual.section.reasoning': '推理',
|
||
'settings.openchamber.visual.section.messageAppearance': '消息外观',
|
||
'settings.openchamber.visual.section.toolsAndFiles': '工具和文件',
|
||
'settings.openchamber.visual.section.composer': '输入框',
|
||
'settings.openchamber.visual.section.userMessageRendering': '用户消息渲染',
|
||
'settings.openchamber.visual.section.userMessageRenderingAria': '用户消息渲染模式',
|
||
'settings.openchamber.visual.section.mermaidRendering': 'Mermaid 渲染',
|
||
'settings.openchamber.visual.section.mermaidRenderingAria': 'Mermaid 渲染模式',
|
||
'settings.openchamber.visual.section.diffLayout': '差异布局',
|
||
'settings.openchamber.visual.section.diffLayoutAria': '差异布局',
|
||
'settings.openchamber.visual.section.privacy': '隐私',
|
||
'settings.openchamber.visual.field.lightTheme': '浅色主题',
|
||
'settings.openchamber.visual.field.darkTheme': '深色主题',
|
||
'settings.openchamber.visual.field.selectLightThemeAria': '选择浅色主题',
|
||
'settings.openchamber.visual.field.selectDarkThemeAria': '选择深色主题',
|
||
'settings.openchamber.visual.field.selectThemePlaceholder': '选择主题',
|
||
'settings.openchamber.visual.field.timeFormat': '时间格式',
|
||
'settings.openchamber.visual.field.weekStartsOn': '一周起始日',
|
||
'settings.openchamber.visual.field.selectTimeFormatAria': '选择时间格式',
|
||
'settings.openchamber.visual.field.selectWeekStartAria': '选择一周起始日',
|
||
'settings.openchamber.visual.actions.reloadThemes': '重新加载主题',
|
||
'settings.openchamber.visual.field.dockBadge': 'Dock 角标',
|
||
'settings.openchamber.visual.field.dockBadgeHint': '在 macOS Dock 图标上显示有未读动态的会话数量。',
|
||
'settings.openchamber.visual.actions.saveAndRestart': '保存并重启',
|
||
'settings.openchamber.visual.actions.restarting': '正在重启…',
|
||
'settings.openchamber.visual.actions.reloadingThemes': '正在重新加载主题...',
|
||
'settings.openchamber.visual.field.themeImportInfoAria': '主题导入说明',
|
||
'settings.openchamber.visual.field.themeImportInfoTooltip': '从 ~/.config/openchamber/themes/ 导入自定义主题',
|
||
'settings.openchamber.visual.field.installAppName': '安装应用名称',
|
||
'settings.openchamber.visual.field.installAppNameHint': '用于 PWA 安装流程。',
|
||
'settings.openchamber.visual.field.pwaInstallAppNameAria': 'PWA 安装应用名称',
|
||
'settings.openchamber.visual.actions.resetInstallAppNameAria': '重置安装应用名称',
|
||
'settings.openchamber.visual.field.installOrientation': '安装方向',
|
||
'settings.openchamber.visual.field.installOrientationHint': '用于已安装的 Web 应用。更改后请重新安装 PWA。',
|
||
'settings.openchamber.visual.field.pwaInstallOrientationAria': 'PWA 安装方向',
|
||
'settings.openchamber.visual.field.selectOrientationPlaceholder': '选择方向',
|
||
'settings.openchamber.visual.actions.resetInstallOrientationAria': '重置安装方向',
|
||
'settings.openchamber.visual.field.mobileKeyboardMode': '移动键盘行为',
|
||
'settings.openchamber.visual.field.mobileKeyboardModeHint': '默认浏览器行为最稳妥。调整内容大小会请求受支持的浏览器在键盘打开时缩小应用布局。',
|
||
'settings.openchamber.visual.field.mobileKeyboardModeAria': '移动键盘行为',
|
||
'settings.openchamber.visual.field.selectMobileKeyboardModePlaceholder': '选择键盘行为',
|
||
'settings.openchamber.visual.actions.resetMobileKeyboardModeAria': '重置移动键盘行为',
|
||
'settings.openchamber.visual.field.interfaceFontSize': '界面字体大小',
|
||
'settings.openchamber.visual.field.interfaceFont': '界面字体',
|
||
'settings.openchamber.visual.field.selectInterfaceFontAria': '选择界面字体',
|
||
'settings.openchamber.visual.actions.resetInterfaceFontAria': '重置界面字体',
|
||
'settings.openchamber.visual.field.fontSizePercentageAria': '字体大小百分比',
|
||
'settings.openchamber.visual.actions.resetFontSizeAria': '重置字体大小',
|
||
'settings.openchamber.visual.field.terminalFontSize': '终端字体大小',
|
||
'settings.openchamber.visual.field.terminalShell': '终端 Shell',
|
||
'settings.openchamber.visual.field.terminalShellAria': '选择终端 Shell',
|
||
'settings.openchamber.visual.field.terminalShellHint': '重启终端以将此更改应用到当前会话。',
|
||
'settings.openchamber.visual.field.terminalLoginShell': '作为登录 Shell 启动',
|
||
'settings.openchamber.visual.option.terminalShell.auto': '自动',
|
||
'settings.openchamber.visual.field.editorFontSize': '编辑器字体大小',
|
||
'settings.openchamber.visual.field.codeFont': '代码字体',
|
||
'settings.openchamber.visual.field.selectCodeFontAria': '选择代码字体',
|
||
'settings.openchamber.visual.actions.resetCodeFontAria': '重置代码字体',
|
||
'settings.openchamber.visual.actions.resetTerminalFontSizeAria': '重置终端字体大小',
|
||
'settings.openchamber.visual.actions.resetEditorFontSizeAria': '重置编辑器字体大小',
|
||
'settings.openchamber.visual.field.spacingDensity': '间距密度',
|
||
'settings.openchamber.visual.actions.resetSpacingAria': '重置间距',
|
||
'settings.openchamber.visual.field.inputBarOffset': '输入栏偏移',
|
||
'settings.openchamber.visual.field.inputBarOffsetTooltip': '上移输入栏以避开系统级遮挡(如底部手势条)。',
|
||
'settings.openchamber.visual.actions.resetInputBarOffsetAria': '重置输入栏偏移',
|
||
'settings.openchamber.visual.field.terminalQuickKeysAria': '终端快捷键',
|
||
'settings.openchamber.visual.field.terminalQuickKeys': '终端快捷键',
|
||
'settings.openchamber.visual.field.terminalQuickKeysTooltip': '在终端视图显示 Esc、Ctrl、方向键',
|
||
'settings.openchamber.visual.field.fileEditorKeymap': '文件编辑器键位映射',
|
||
'settings.openchamber.visual.option.fileEditorKeymap.default': '默认',
|
||
'settings.openchamber.visual.option.fileEditorKeymap.vim': 'Vim',
|
||
'settings.openchamber.visual.field.activityDefaultModeAria': '活动默认模式:{option}',
|
||
'settings.openchamber.visual.field.showExpandedBashToolsAria': '默认展开 Bash 工具',
|
||
'settings.openchamber.visual.field.showExpandedEditToolsAria': '默认展开编辑工具',
|
||
'settings.openchamber.visual.field.bash': 'Bash',
|
||
'settings.openchamber.visual.field.editTools': '编辑工具',
|
||
'settings.openchamber.visual.field.userMessageRenderingAria': '用户消息渲染:{option}',
|
||
'settings.openchamber.visual.field.mermaidRenderingAria': 'Mermaid 渲染:{option}',
|
||
'settings.openchamber.visual.field.diffLayoutAria': '差异布局:{option}',
|
||
'settings.openchamber.visual.field.sessionRecap': '生成会话回顾',
|
||
'settings.openchamber.visual.field.sessionRecapAria': '代理完成后生成回顾',
|
||
'settings.openchamber.visual.field.sessionSuggestion': '生成下一条用户消息建议',
|
||
'settings.openchamber.visual.field.sessionSuggestionAria': '代理完成后生成下一条用户消息建议',
|
||
'settings.openchamber.visual.field.sessionGoal': '启用会话目标',
|
||
'settings.openchamber.visual.field.sessionGoalAria': '让会话自动朝着目标持续工作',
|
||
'settings.openchamber.visual.goal.sectionTitle': '目标',
|
||
'settings.openchamber.visual.goal.budgetLabel': '默认令牌预算',
|
||
'settings.openchamber.visual.goal.budgetAria': '为新目标应用默认令牌预算',
|
||
'settings.openchamber.visual.goal.description': '在输入框中启用靶心按钮,下一条消息即成为目标:代理将在小模型的审核下自动持续工作,即使你不在电脑前。',
|
||
'settings.openchamber.visual.field.showReasoningTracesAria': '显示推理轨迹',
|
||
'settings.openchamber.visual.field.showReasoningTraces': '显示推理轨迹',
|
||
'settings.openchamber.visual.field.collapsibleThinkingBlocksAria': '启用可折叠推理块',
|
||
'settings.openchamber.visual.field.collapsibleThinkingBlocks': '启用可折叠推理块',
|
||
'settings.openchamber.visual.field.collapsibleUserMessagesAria': '折叠较长的用户消息',
|
||
'settings.openchamber.visual.field.collapsibleUserMessages': '折叠较长的用户消息',
|
||
'settings.openchamber.visual.field.stickyUserHeaderAria': '固定用户消息头',
|
||
'settings.openchamber.visual.field.stickyUserHeader': '固定用户消息头',
|
||
'settings.openchamber.visual.field.promptNavigatorEnabledAria': '提示词导航',
|
||
'settings.openchamber.visual.field.promptNavigatorEnabled': '提示词导航',
|
||
'settings.openchamber.visual.field.expandedEditorToolbarAria': 'Always show editor toolbar',
|
||
'settings.openchamber.visual.field.expandedEditorToolbar': 'Always show editor toolbar (docked under the file tabs)',
|
||
'settings.openchamber.visual.field.autoSaveEnabledAria': '自动保存文件',
|
||
'settings.openchamber.visual.field.autoSaveEnabled': '自动保存文件',
|
||
'settings.openchamber.visual.field.autoSaveEnabledInfo': '停止输入后自动保存文件编辑内容。关闭后需手动保存。',
|
||
'settings.openchamber.visual.field.wideChatLayoutAria': '宽聊天布局',
|
||
'settings.openchamber.visual.field.wideChatLayout': '宽聊天布局',
|
||
'settings.openchamber.visual.field.showSplitAssistantMessageActionsAria': '内联助手操作',
|
||
'settings.openchamber.visual.field.showSplitAssistantMessageActions': '内联助手操作',
|
||
'settings.openchamber.visual.field.showSplitAssistantMessageActionsTooltip': '在同一条回复中,如果助手文本块后面还有工具调用,则显示“复制回答”“保存为图片”和“朗读”操作。',
|
||
'settings.openchamber.visual.field.allowPromptingSubagentSessionsAria': '允许向子智能体会话发送提示',
|
||
'settings.openchamber.visual.field.allowPromptingSubagentSessions': '允许向子智能体会话发送提示',
|
||
'settings.openchamber.visual.field.draftStartersVisible': '在新会话页面显示快捷入口',
|
||
'settings.openchamber.visual.field.draftStartersVisibleAria': '在新会话页面显示快捷入口',
|
||
'settings.openchamber.visual.field.showToolFileIconsAria': '显示工具文件图标',
|
||
'settings.openchamber.visual.field.codeBlockLineWrapAria': '代码块自动换行',
|
||
'settings.openchamber.visual.field.codeBlockLineWrap': '代码块自动换行',
|
||
'settings.openchamber.visual.field.showToolFileIcons': '显示工具文件图标',
|
||
'settings.openchamber.visual.field.showTurnChangedFilesAria': '显示已完成回合的更改文件',
|
||
'settings.openchamber.visual.field.showTurnChangedFiles': '显示已完成回合的更改文件',
|
||
'settings.openchamber.visual.field.showDotfilesAria': '显示点文件',
|
||
'settings.openchamber.visual.field.showDotfiles': '显示点文件',
|
||
'settings.openchamber.visual.field.queueMessagesByDefaultAria': '默认排队消息',
|
||
'settings.openchamber.visual.field.queueMessagesByDefault': '默认排队消息',
|
||
'settings.openchamber.visual.field.queueMessagesByDefaultTooltip': '启用后,按 Enter 会将消息加入队列。使用 {modifier}+Enter 直接发送。',
|
||
'settings.openchamber.visual.field.persistDraftMessagesAria': '保留草稿消息',
|
||
'settings.openchamber.visual.field.persistDraftMessages': '保留草稿消息',
|
||
'settings.openchamber.visual.field.enableSpellcheckInTextInputsAria': '在文本输入框启用拼写检查',
|
||
'settings.openchamber.visual.field.enableSpellcheckInTextInputs': '在文本输入框启用拼写检查',
|
||
'settings.openchamber.visual.field.sendAnonymousUsageReportsAria': '发送匿名使用报告',
|
||
'settings.openchamber.visual.field.sendAnonymousUsageReports': '发送匿名使用报告',
|
||
'settings.openchamber.visual.field.sendAnonymousUsageReportsHint': '帮助我们了解哪些应用版本正在被积极使用,以便优先改进。仅收集应用版本、平台和运行时信息,不收集个人数据或代码。',
|
||
'settings.openchamber.visual.option.themeMode.system': '跟随系统',
|
||
'settings.openchamber.visual.option.themeMode.system.description': '跟随系统设置',
|
||
'settings.openchamber.visual.option.themeMode.light': '浅色',
|
||
'settings.openchamber.visual.option.themeMode.light.description': '始终使用浅色外观',
|
||
'settings.openchamber.visual.option.themeMode.dark': '深色',
|
||
'settings.openchamber.visual.option.themeMode.dark.description': '始终使用深色外观',
|
||
'settings.openchamber.visual.option.diffLayout.dynamic.label': '动态',
|
||
'settings.openchamber.visual.option.diffLayout.dynamic.description': '新增文件用行内视图,修改文件用并排视图。',
|
||
'settings.openchamber.visual.option.diffLayout.inline.label': '始终行内',
|
||
'settings.openchamber.visual.option.diffLayout.inline.description': '以单一统一视图显示。',
|
||
'settings.openchamber.visual.option.diffLayout.sideBySide.label': '始终并排',
|
||
'settings.openchamber.visual.option.diffLayout.sideBySide.description': '对比原始文件与修改后文件。',
|
||
'settings.openchamber.visual.option.mermaidRendering.svg.label': 'SVG',
|
||
'settings.openchamber.visual.option.mermaidRendering.svg.description': '将图表渲染为可缩放图形。',
|
||
'settings.openchamber.visual.option.mermaidRendering.ascii.label': 'ASCII',
|
||
'settings.openchamber.visual.option.mermaidRendering.ascii.description': '将图表渲染为文本块。',
|
||
'settings.openchamber.visual.option.pwaOrientation.system.label': '跟随系统',
|
||
'settings.openchamber.visual.option.pwaOrientation.system.description': '遵循设备旋转设置。',
|
||
'settings.openchamber.visual.option.pwaOrientation.portrait.label': '锁定竖屏',
|
||
'settings.openchamber.visual.option.pwaOrientation.portrait.description': '安装后应用锁定为竖屏。',
|
||
'settings.openchamber.visual.option.pwaOrientation.landscape.label': '锁定横屏',
|
||
'settings.openchamber.visual.option.pwaOrientation.landscape.description': '安装后应用锁定为横屏。',
|
||
'settings.openchamber.visual.option.mobileKeyboardMode.native.label': '跟随浏览器',
|
||
'settings.openchamber.visual.option.mobileKeyboardMode.native.description': '键盘打开时使用浏览器默认的平移和视口变化行为。',
|
||
'settings.openchamber.visual.option.mobileKeyboardMode.resizeContent.label': '调整内容大小',
|
||
'settings.openchamber.visual.option.mobileKeyboardMode.resizeContent.description': '请求受支持的浏览器缩小应用布局,而不是只依赖平移。',
|
||
'settings.openchamber.visual.option.userMessageRendering.markdown.label': 'Markdown',
|
||
'settings.openchamber.visual.option.userMessageRendering.markdown.description': '用 Markdown 格式渲染用户文本。',
|
||
'settings.openchamber.visual.option.userMessageRendering.plain.label': '纯文本',
|
||
'settings.openchamber.visual.option.userMessageRendering.plain.description': '保留空白和链接,以纯文本渲染用户文本。',
|
||
'chat.message.userText.collapseAria': '折叠用户消息',
|
||
'settings.openchamber.visual.option.chatRenderMode.sorted.label': '排序后显示',
|
||
'settings.openchamber.visual.option.chatRenderMode.sorted.description': '不进行实时流式显示,待助手消息完成后再渲染。',
|
||
'settings.openchamber.visual.option.chatRenderMode.live.label': '实时显示',
|
||
'settings.openchamber.visual.option.chatRenderMode.live.description': '助手文本与工具输出到达即流式渲染。',
|
||
'settings.openchamber.visual.option.messageTransport.auto.label': '自动',
|
||
'settings.openchamber.visual.option.messageTransport.auto.description': '优先使用 WebSocket,必要时回退到 SSE。',
|
||
'settings.openchamber.visual.option.messageTransport.ws.label': 'WebSocket',
|
||
'settings.openchamber.visual.option.messageTransport.ws.description': '使用 WebSocket 进行消息流传输。',
|
||
'settings.openchamber.visual.option.messageTransport.sse.label': 'SSE',
|
||
'settings.openchamber.visual.option.messageTransport.sse.description': '使用 Server-Sent Events 进行消息流传输。',
|
||
'settings.openchamber.visual.option.activityRenderMode.collapsed.label': '折叠',
|
||
'settings.openchamber.visual.option.activityRenderMode.collapsed.description': '默认折叠 Activity。',
|
||
'settings.openchamber.visual.option.activityRenderMode.summary.label': '展开',
|
||
'settings.openchamber.visual.option.activityRenderMode.summary.description': '默认展开 Activity。',
|
||
'settings.openchamber.visual.option.timeFormat.auto.label': '自动',
|
||
'settings.openchamber.visual.option.timeFormat.auto.description': '使用系统区域设置偏好。',
|
||
'settings.openchamber.visual.option.timeFormat.24h.label': '24 小时制',
|
||
'settings.openchamber.visual.option.timeFormat.24h.description': '时间显示为 14:15。',
|
||
'settings.openchamber.visual.option.timeFormat.12h.label': '12 小时制',
|
||
'settings.openchamber.visual.option.timeFormat.12h.description': '时间显示为 02:15 PM。',
|
||
'settings.openchamber.visual.option.weekStart.auto.label': '自动',
|
||
'settings.openchamber.visual.option.weekStart.auto.description': '使用地区默认周起始日。',
|
||
'settings.openchamber.visual.option.weekStart.monday.label': '星期一',
|
||
'settings.openchamber.visual.option.weekStart.sunday.label': '星期日',
|
||
'settings.magicPrompts.page.loading.aria': '加载中',
|
||
'settings.magicPrompts.page.loading.text': '正在加载魔法提示词...',
|
||
'settings.magicPrompts.page.block.visiblePrompt': '可见提示词',
|
||
'settings.magicPrompts.page.block.instructions': '说明',
|
||
'settings.magicPrompts.page.group.gitCommitGenerate.title': '提交生成',
|
||
'settings.magicPrompts.page.group.gitCommitGenerate.description': '用于提交信息生成的提示词:可见用户消息 + 隐藏说明。',
|
||
'settings.magicPrompts.page.group.gitPrGenerate.title': 'PR 生成',
|
||
'settings.magicPrompts.page.group.gitPrGenerate.description': '用于 PR 标题/正文生成的提示词:可见用户消息 + 隐藏说明。',
|
||
'settings.magicPrompts.page.group.githubPrReview.title': 'PR 审查',
|
||
'settings.magicPrompts.page.group.githubPrReview.description': '用于 PR 审查流程的提示词:可见用户消息 + 隐藏指令负载。',
|
||
'settings.magicPrompts.page.group.githubIssueReview.title': 'Issue 审查',
|
||
'settings.magicPrompts.page.group.githubIssueReview.description': '用于 Issue 审查流程的提示词:可见用户消息 + 隐藏指令负载。',
|
||
'settings.magicPrompts.page.group.githubPrFailedChecksReview.title': 'PR 失败检查审查',
|
||
'settings.magicPrompts.page.group.githubPrFailedChecksReview.description': '用于 PR 失败检查分析的提示词。',
|
||
'settings.magicPrompts.page.group.githubPrCommentsReview.title': 'PR 评论审查',
|
||
'settings.magicPrompts.page.group.githubPrCommentsReview.description': '用于 PR 评论分析的提示词。',
|
||
'settings.magicPrompts.page.group.githubSinglePrCommentReview.title': '单条 PR 评论审查',
|
||
'settings.magicPrompts.page.group.githubSinglePrCommentReview.description': '用于单条 PR 评论分析的提示词。',
|
||
'settings.magicPrompts.page.group.gitConflictResolve.title': '合并/Rebase 冲突解决',
|
||
'settings.magicPrompts.page.group.gitConflictResolve.description': '用于 AI 解决合并/Rebase 冲突的提示词。',
|
||
'settings.magicPrompts.page.group.gitCherrypickConflictResolve.title': 'Cherry-pick 冲突解决',
|
||
'settings.magicPrompts.page.group.gitCherrypickConflictResolve.description': '用于 integrate 流程中解决 cherry-pick 冲突的提示词。',
|
||
'settings.magicPrompts.page.group.planImprove.title': '改进计划',
|
||
'settings.magicPrompts.page.group.planImprove.description': '把已保存计划发送到改进流程时使用的隐藏提示词。',
|
||
'settings.magicPrompts.page.group.planTodo.title': '待办规划',
|
||
'settings.magicPrompts.page.group.planTodo.description': '把待办发送到新规划会话时使用的隐藏提示词。',
|
||
'settings.magicPrompts.page.group.planImplement.title': '执行计划',
|
||
'settings.magicPrompts.page.group.planImplement.description': '把已保存计划发送到执行流程时使用的隐藏提示词。',
|
||
'settings.magicPrompts.page.group.sessionSummary.title': '会话总结',
|
||
'settings.magicPrompts.page.group.sessionSummary.description': '由 /summary 斜杠命令使用的提示词:可见用户消息 + 隐藏说明。非破坏性,不会压缩会话历史。',
|
||
'settings.magicPrompts.page.group.sessionWorkspaceReview.title': '工作区审查',
|
||
'settings.magicPrompts.page.group.sessionExplore.title': '代码库导览',
|
||
'settings.magicPrompts.page.group.sessionExplore.description': '由 /explore 斜杠命令使用的提示词:可见用户消息 + 隐藏说明。调研仓库并给出结构化的导览——整体概貌、主要模块、它们如何连接以及从哪里入手——而不是逐文件罗列。',
|
||
'settings.magicPrompts.page.group.sessionWorkspaceReview.description': '由 /workspace-review 斜杠命令使用的提示词:可见用户消息 + 隐藏说明。审查工作区 diff:是否达成其意图、实现是否正确且充分,并按严重程度对发现进行分类。',
|
||
'settings.magicPrompts.page.group.sessionFeaturePlan.title': '功能规划',
|
||
'settings.magicPrompts.page.group.sessionFeaturePlan.description': '由 /plan-feature 斜杠命令使用的提示词:可见用户消息 + 隐藏说明。运行引导式对话,先调研代码并分小批提出澄清问题,然后生成实现计划。',
|
||
'settings.magicPrompts.page.group.sessionCatchUp.title': '快速回顾',
|
||
'settings.magicPrompts.page.group.sessionCatchUp.description': '由 /catch-up 斜杠命令使用的提示词:可见用户消息 + 隐藏说明。结合分支的提交、PR 以及未提交的改动,建立与分支相关的上下文,理解你之前在做什么,然后给出易于理解的概要和以产品为中心的下一步。',
|
||
'settings.magicPrompts.page.group.sessionDebug.title': '调试',
|
||
'settings.magicPrompts.page.group.sessionDebug.description': '由 /debug 斜杠命令使用的提示词:可见用户消息 + 隐藏说明。引导式排查根本原因——记录症状、提出假设、对照代码验证,并在提出修复方案前确认原因。',
|
||
'settings.magicPrompts.page.group.sessionWeigh.title': '权衡方案',
|
||
'settings.magicPrompts.page.group.sessionWeigh.description': '由 /weigh 斜杠命令使用的提示词:可见用户消息 + 隐藏说明。先调研代码,再列出 2-3 种不同方案及其利弊并给出推荐——不写计划也不写代码。',
|
||
'settings.magicPrompts.page.group.sessionFusion.title': '融合',
|
||
'settings.magicPrompts.page.group.sessionFusion.description': '用于将多运行输出融合为一个最终答案的提示词:可见用户消息 + 源结果前的隐藏说明。',
|
||
'settings.magicPrompts.page.actions.resetting': '重置中...',
|
||
'settings.magicPrompts.page.actions.resetAllOverrides': '重置全部覆盖',
|
||
'settings.magicPrompts.page.actions.resetToDefault': '重置为默认',
|
||
'settings.magicPrompts.page.actions.save': '保存',
|
||
'settings.magicPrompts.page.placeholdersLabel': '占位符:',
|
||
'settings.magicPrompts.page.validation.visiblePromptRequired': '可见提示词不能为空。',
|
||
'settings.magicPrompts.page.status.unsavedChanges': '未保存更改',
|
||
'settings.magicPrompts.page.status.usingSavedOverride': '使用已保存覆盖',
|
||
'settings.magicPrompts.page.status.usingBuiltinDefault': '使用内置默认值',
|
||
'settings.magicPrompts.page.toast.loadFailed': '加载魔法提示词失败',
|
||
'settings.magicPrompts.page.toast.visiblePromptRequired': '可见提示词不能为空',
|
||
'settings.magicPrompts.page.toast.saved': '魔法提示词已保存',
|
||
'settings.magicPrompts.page.toast.saveFailed': '保存魔法提示词失败',
|
||
'settings.magicPrompts.page.toast.resetSuccess': '提示词已重置为默认值',
|
||
'settings.magicPrompts.page.toast.resetFailed': '重置提示词失败',
|
||
'settings.magicPrompts.page.toast.resetAllSuccess': '所有提示词覆盖已重置',
|
||
'settings.magicPrompts.page.toast.resetAllFailed': '重置全部提示词失败',
|
||
'settings.page.promptTemplates.title': '提示词模板',
|
||
'settings.promptTemplates.sidebar.title': '提示词模板',
|
||
'settings.promptTemplates.sidebar.total': '共 {count} 个',
|
||
'settings.promptTemplates.sidebar.empty.title': '暂无提示词模板',
|
||
'settings.promptTemplates.sidebar.empty.description': '创建一个提示词模板开始使用。',
|
||
'settings.promptTemplates.sidebar.toast.deleted': '模板"{name}"已删除',
|
||
'settings.promptTemplates.sidebar.toast.deleteFailed': '删除模板失败',
|
||
'settings.promptTemplates.sidebar.toast.nameRequired': '模板名称为必填项',
|
||
'settings.promptTemplates.sidebar.toast.renamed': '模板已重命名',
|
||
'settings.promptTemplates.sidebar.toast.renameFailed': '重命名模板失败',
|
||
'settings.promptTemplates.sidebar.dialog.deleteTitle': '删除模板?',
|
||
'settings.promptTemplates.sidebar.dialog.deleteDescription': '将永久删除"{name}"。此操作无法撤销。',
|
||
'settings.promptTemplates.sidebar.renameDialog.title': '重命名模板',
|
||
'settings.promptTemplates.sidebar.renameDialog.description': '为"{name}"输入新名称。',
|
||
'settings.promptTemplates.sidebar.renameDialog.placeholder': '模板名称',
|
||
'settings.promptTemplates.sidebar.badge.default': '默认',
|
||
'settings.promptTemplates.page.empty.title': '选择一个模板',
|
||
'settings.promptTemplates.page.empty.description': '从侧边栏选择一个模板进行编辑。',
|
||
'settings.promptTemplates.page.title.new': '新建模板',
|
||
'settings.promptTemplates.page.subtitle.edit': '编辑模板',
|
||
'settings.promptTemplates.page.subtitle.new': '创建新的提示词模板',
|
||
'settings.promptTemplates.page.section.identity': '标识',
|
||
'settings.promptTemplates.page.field.name': '名称',
|
||
'settings.promptTemplates.page.field.namePlaceholder': '模板名称',
|
||
'settings.promptTemplates.page.section.template': '模板',
|
||
'settings.promptTemplates.page.field.templatePlaceholder': '输入提示词模板文本...',
|
||
'settings.promptTemplates.page.templateHint': '在多运行组中选择此模板时,此文本将添加到用户提示词之前。',
|
||
'settings.promptTemplates.page.toast.nameRequired': '模板名称为必填项',
|
||
'settings.promptTemplates.page.toast.updated': '模板已更新',
|
||
'settings.promptTemplates.page.toast.updateFailed': '更新模板失败',
|
||
'settings.promptTemplates.page.toast.created': '模板已创建',
|
||
'settings.promptTemplates.page.toast.createFailed': '创建模板失败',
|
||
'settings.promptTemplates.page.toast.saveUnexpectedError': '保存时发生意外错误',
|
||
'settings.openchamber.visual.section.followUpBehavior': 'Follow-up behavior',
|
||
'settings.openchamber.visual.section.followUpBehaviorAria': 'Follow-up behavior',
|
||
'settings.openchamber.visual.field.followUpBehaviorAria': 'Follow-up behavior: {option}',
|
||
'settings.openchamber.visual.field.followUpBehaviorDescription': 'Choose what happens when you press Enter on a follow-up message while the agent is still responding.',
|
||
'settings.openchamber.visual.option.followUpBehavior.steer.label': 'Steer',
|
||
'settings.openchamber.visual.option.followUpBehavior.queue.label': 'Queue',
|
||
} as const;
|