Files
cc-switch/src/i18n/locales/zh.json
Dex Miller 8f7423f011 Feat/deeplink multi endpoints (#597)
* feat(deeplink): support comma-separated multiple endpoints in URL

Allow importing multiple API endpoints via single endpoint parameter.
First URL becomes primary endpoint, rest are added as custom endpoints.

* feat(deeplink): add usage query fields to deeplink generator

Add form fields for usage query configuration in deeplink HTML generator:
- usageEnabled, usageBaseUrl, usageApiKey
- usageScript, usageAutoInterval
- usageAccessToken, usageUserId

* fix(deeplink): auto-infer homepage and improve multi-endpoint display

- Auto-infer homepage from primary endpoint when not provided
- Display multiple endpoints as list in import dialog (primary marked)
- Update deeplink parser in deplink.html to show multi-endpoint info
- Add test for homepage inference from endpoint
- Minor log format fix in live.rs

* fix(deeplink): use primary endpoint for usage script base_url

- Fix usage_script.base_url getting comma-separated string when multiple endpoints
- Add i18n support for primary endpoint label in DeepLinkImportDialog
2026-01-12 15:57:45 +08:00

1250 lines
54 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"app": {
"title": "CC Switch",
"description": "Claude Code / Codex / Gemini CLI 全方位辅助工具"
},
"common": {
"add": "添加",
"edit": "编辑",
"delete": "删除",
"save": "保存",
"saving": "保存中...",
"cancel": "取消",
"confirm": "确定",
"close": "关闭",
"done": "完成",
"settings": "设置",
"about": "关于",
"version": "版本",
"loading": "加载中...",
"notInstalled": "未安装",
"success": "成功",
"error": "错误",
"unknown": "未知",
"enterValidValue": "请输入有效的内容",
"clear": "清除",
"toggleTheme": "切换主题",
"format": "格式化",
"formatSuccess": "格式化成功",
"formatError": "格式化失败:{{error}}",
"copy": "复制",
"view": "查看",
"back": "返回",
"refresh": "刷新",
"refreshing": "刷新中...",
"all": "全部",
"search": "查询",
"reset": "重置",
"actions": "操作",
"deleting": "删除中..."
},
"apiKeyInput": {
"placeholder": "请输入API Key",
"show": "显示API Key",
"hide": "隐藏API Key"
},
"jsonEditor": {
"mustBeObject": "配置必须是JSON对象不能是数组或其他类型",
"invalidJson": "JSON格式错误"
},
"claudeConfig": {
"configLabel": "Claude Code 配置 (JSON) *",
"writeCommonConfig": "写入通用配置",
"editCommonConfig": "编辑通用配置",
"editCommonConfigTitle": "编辑通用配置片段",
"commonConfigHint": "该片段会在勾选\"写入通用配置\"时合并到 settings.json 中",
"fullSettingsHint": "完整的 Claude Code settings.json 配置内容",
"extractFromCurrent": "从编辑内容提取",
"extractNoCommonConfig": "当前编辑内容没有可提取的通用配置",
"extractFailed": "提取失败: {{error}}",
"saveFailed": "保存失败: {{error}}"
},
"header": {
"viewOnGithub": "在 GitHub 上查看",
"toggleDarkMode": "切换到暗色模式",
"toggleLightMode": "切换到亮色模式",
"addProvider": "添加供应商",
"switchToChinese": "切换到中文",
"switchToEnglish": "切换到英文",
"enterEditMode": "进入编辑模式",
"exitEditMode": "退出编辑模式"
},
"provider": {
"tabProvider": "供应商",
"tabUniversal": "统一供应商",
"noProviders": "还没有添加任何供应商",
"noProvidersDescription": "点击右上角的\"添加供应商\"按钮开始配置您的第一个API供应商",
"currentlyUsing": "当前使用",
"enable": "启用",
"inUse": "使用中",
"editProvider": "编辑供应商",
"editProviderHint": "更新配置后将立即应用到当前供应商。",
"deleteProvider": "删除供应商",
"addNewProvider": "添加新供应商",
"addClaudeProvider": "添加 Claude Code 供应商",
"addCodexProvider": "添加 Codex 供应商",
"addGeminiProvider": "添加 Gemini 供应商",
"addProviderHint": "填写信息后即可在列表中快速切换供应商。",
"editClaudeProvider": "编辑 Claude Code 供应商",
"editCodexProvider": "编辑 Codex 供应商",
"configError": "配置错误",
"notConfigured": "未配置官网地址",
"applyToClaudePlugin": "应用到 Claude 插件",
"removeFromClaudePlugin": "从 Claude 插件移除",
"dragToReorder": "拖拽以重新排序",
"dragHandle": "拖拽排序",
"searchPlaceholder": "按名称/备注/网址搜索供应商...",
"searchAriaLabel": "搜索供应商",
"searchScopeHint": "根据名称、备注和官网链接匹配结果。",
"searchCloseHint": "按 Esc 关闭",
"searchCloseAriaLabel": "关闭供应商搜索",
"noSearchResults": "没有符合搜索条件的供应商。",
"duplicate": "复制",
"sortUpdateFailed": "排序更新失败",
"configureUsage": "配置用量查询",
"name": "供应商名称",
"namePlaceholder": "例如Claude 官方",
"websiteUrl": "官网链接",
"notes": "备注",
"notesPlaceholder": "例如:公司专用账号",
"configJson": "配置 JSON",
"writeCommonConfig": "写入通用配置",
"editCommonConfigButton": "编辑通用配置",
"configJsonHint": "请填写完整的 Claude Code 配置",
"editCommonConfigTitle": "编辑通用配置片段",
"editCommonConfigHint": "通用配置片段将合并到所有启用它的供应商配置中",
"addProvider": "添加供应商",
"sortUpdated": "排序已更新",
"usageSaved": "用量查询配置已保存",
"usageSaveFailed": "用量查询配置保存失败",
"geminiConfig": "Gemini 配置",
"geminiConfigHint": "使用 .env 格式配置 Gemini",
"form": {
"gemini": {
"model": "模型",
"oauthTitle": "OAuth 认证模式",
"oauthHint": "Google 官方使用 OAuth 个人认证,无需填写 API Key。首次使用时会自动打开浏览器进行登录。",
"apiKeyPlaceholder": "请输入 Gemini API Key"
}
}
},
"notifications": {
"providerAdded": "供应商已添加",
"providerSaved": "供应商配置已保存",
"providerDeleted": "供应商删除成功",
"switchSuccess": "切换成功!",
"switchFailedTitle": "切换失败",
"switchFailed": "切换失败:{{error}}",
"autoImported": "已从现有配置创建默认供应商",
"addFailed": "添加供应商失败:{{error}}",
"saveFailed": "保存失败:{{error}}",
"saveFailedGeneric": "保存失败,请重试",
"appliedToClaudePlugin": "已应用到 Claude 插件",
"removedFromClaudePlugin": "已从 Claude 插件移除",
"syncClaudePluginFailed": "同步 Claude 插件失败",
"skipClaudeOnboardingFailed": "跳过 Claude Code 初次安装确认失败",
"clearClaudeOnboardingSkipFailed": "恢复 Claude Code 初次安装确认失败",
"updateSuccess": "供应商更新成功",
"updateFailed": "更新供应商失败:{{error}}",
"deleteSuccess": "供应商已删除",
"deleteFailed": "删除供应商失败:{{error}}",
"settingsSaved": "设置已保存",
"settingsSaveFailed": "保存设置失败:{{error}}"
},
"confirm": {
"deleteProvider": "删除供应商",
"deleteProviderMessage": "确定要删除供应商 \"{{name}}\" 吗?此操作无法撤销。"
},
"settings": {
"title": "设置",
"general": "通用",
"tabGeneral": "通用",
"tabAdvanced": "高级",
"advanced": {
"configDir": {
"title": "配置文件目录",
"description": "管理 Claude、Codex 和 Gemini 的配置存储路径"
},
"proxy": {
"title": "本地代理",
"description": "控制代理服务开关、查看状态与端口信息",
"running": "运行中",
"stopped": "已停止"
},
"modelTest": {
"title": "模型测试配置",
"description": "配置模型测试使用的默认模型和提示词"
},
"failover": {
"title": "自动故障转移",
"description": "配置故障转移队列和熔断策略"
},
"pricing": {
"title": "成本定价",
"description": "管理各模型 Token 计费规则"
},
"data": {
"title": "数据管理",
"description": "导入导出配置与备份恢复"
}
},
"language": "界面语言",
"languageHint": "切换后立即预览界面语言,保存后永久生效。",
"theme": "外观主题",
"themeHint": "选择应用的外观主题,立即生效。",
"themeLight": "浅色",
"themeDark": "深色",
"themeSystem": "跟随系统",
"importExport": "SQL 导入导出",
"importExportHint": "导入/导出数据库 SQL 备份(仅支持导入由 CC Switch 导出的备份),便于备份或迁移。",
"exportConfig": "导出 SQL 备份",
"selectConfigFile": "选择 SQL 文件",
"noFileSelected": "尚未选择配置文件。",
"import": "导入",
"importing": "导入中...",
"importSuccess": "导入成功!",
"importFailed": "导入失败",
"syncLiveFailed": "已导入,但同步到当前供应商失败,请手动重新选择一次供应商。",
"importPartialSuccess": "配置已导入,但同步到当前供应商失败。",
"importPartialHint": "请手动重新选择一次供应商以刷新对应配置。",
"configExported": "配置已导出到:",
"exportFailed": "导出失败",
"selectFileFailed": "请选择有效的 SQL 备份文件",
"configCorrupted": "SQL 文件可能已损坏或格式不正确",
"backupId": "备份ID",
"autoReload": "数据已刷新",
"languageOptionChinese": "中文",
"languageOptionEnglish": "English",
"languageOptionJapanese": "日本語",
"windowBehavior": "窗口行为",
"windowBehaviorHint": "配置窗口最小化与 Claude 插件联动策略。",
"launchOnStartup": "开机自启",
"launchOnStartupDescription": "随系统启动自动运行 CC Switch",
"autoLaunchFailed": "设置开机自启失败",
"minimizeToTray": "关闭时最小化到托盘",
"minimizeToTrayDescription": "勾选后点击关闭按钮会隐藏到系统托盘,取消则直接退出应用。",
"enableClaudePluginIntegration": "应用到 Claude Code 插件",
"enableClaudePluginIntegrationDescription": "开启后 Vscode Claude Code 插件的供应商将随本软件切换",
"skipClaudeOnboarding": "跳过 Claude Code 初次安装确认",
"skipClaudeOnboardingDescription": "开启后跳过 Claude Code 初次安装确认",
"configDirectoryOverride": "配置目录覆盖(高级)",
"configDirectoryDescription": "在 WSL 等环境使用 Claude Code 或 Codex 的时候,可手动指定为 WSL 里的配置目录,供应商数据与主环境保持一致。",
"appConfigDir": "CC Switch 配置目录",
"appConfigDirDescription": "自定义 CC Switch 的配置存储位置(指定到云同步文件夹即可云同步配置)",
"browsePlaceholderApp": "例如C:\\Users\\Administrator\\.cc-switch",
"claudeConfigDir": "Claude Code 配置目录",
"claudeConfigDirDescription": "覆盖 Claude 配置目录 (settings.json),同时会在同级存放 Claude MCP 的 claude.json。",
"codexConfigDir": "Codex 配置目录",
"codexConfigDirDescription": "覆盖 Codex 配置目录。",
"geminiConfigDir": "Gemini 配置目录",
"geminiConfigDirDescription": "覆盖 Gemini 配置目录 (.env)。",
"browsePlaceholderClaude": "例如:/home/<你的用户名>/.claude",
"browsePlaceholderCodex": "例如:/home/<你的用户名>/.codex",
"browsePlaceholderGemini": "例如:/home/<你的用户名>/.gemini",
"browseDirectory": "浏览目录",
"resetDefault": "恢复默认目录(需保存后生效)",
"checkForUpdates": "检查更新",
"updateTo": "更新到 v{{version}}",
"updating": "更新中...",
"checking": "检查中...",
"upToDate": "已是最新",
"aboutHint": "查看版本信息与更新状态。",
"portableMode": "当前为便携版,更新需手动下载。",
"updateAvailable": "检测到新版本:{{version}}",
"updateBadge": "有更新可用",
"updateFailed": "更新安装失败,已尝试打开下载页面。",
"checkUpdateFailed": "检查更新失败,请稍后重试。",
"openReleaseNotesFailed": "打开更新日志失败",
"releaseNotes": "更新日志",
"viewReleaseNotes": "查看该版本更新日志",
"viewCurrentReleaseNotes": "查看当前版本更新日志",
"oneClickInstall": "一键安装",
"oneClickInstallHint": "安装 Claude Code / Codex / Gemini CLI",
"localEnvCheck": "本地环境检查",
"installCommandsCopied": "安装命令已复制",
"installCommandsCopyFailed": "复制失败,请手动复制。",
"importFailedError": "导入配置失败:{{message}}",
"exportFailedError": "导出配置失败:",
"restartRequired": "需要重启应用",
"restartRequiredMessage": "修改 CC Switch 配置目录后需要重启应用才能生效,是否立即重启?",
"restartNow": "立即重启",
"restartLater": "稍后重启",
"restartFailed": "应用重启失败,请手动关闭后重新打开。",
"devModeRestartHint": "开发模式下不支持自动重启,请手动重新启动应用。",
"saving": "正在保存..."
},
"apps": {
"claude": "Claude Code",
"codex": "Codex",
"gemini": "Gemini"
},
"console": {
"providerSwitchReceived": "收到供应商切换事件:",
"setupListenerFailed": "设置供应商切换监听器失败:",
"updateProviderFailed": "更新供应商失败:",
"autoImportFailed": "自动导入默认配置失败:",
"openLinkFailed": "打开链接失败:",
"getVersionFailed": "获取版本信息失败:",
"loadSettingsFailed": "加载设置失败:",
"getConfigPathFailed": "获取配置路径失败:",
"getConfigDirFailed": "获取配置目录失败:",
"detectPortableFailed": "检测便携模式失败:",
"saveSettingsFailed": "保存设置失败:",
"updateFailed": "更新失败:",
"checkUpdateFailed": "检查更新失败:",
"openConfigFolderFailed": "打开配置文件夹失败:",
"selectConfigDirFailed": "选择配置目录失败:",
"getDefaultConfigDirFailed": "获取默认配置目录失败:",
"openReleaseNotesFailed": "打开更新日志失败:"
},
"providerForm": {
"supplierName": "供应商名称",
"supplierNameRequired": "供应商名称 *",
"supplierNamePlaceholder": "例如Anthropic 官方",
"websiteUrl": "官网地址",
"websiteUrlPlaceholder": "https://example.com可选",
"apiEndpoint": "请求地址",
"apiEndpointPlaceholder": "https://your-api-endpoint.com",
"codexApiEndpointPlaceholder": "https://your-api-endpoint.com/v1",
"manageAndTest": "管理与测速",
"configContent": "配置内容",
"officialNoApiKey": "官方登录无需填写 API Key直接保存即可",
"codexOfficialNoApiKey": "官方无需填写 API Key直接保存即可",
"codexApiKeyAutoFill": "只需要填这里,下方 auth.json 会自动填充",
"apiKeyAutoFill": "只需要填这里,下方配置会自动填充",
"cnOfficialApiKeyHint": "💡 只需填写 API Key请求地址已预设",
"aggregatorApiKeyHint": "💡 只需填写 API Key请求地址已预设",
"thirdPartyApiKeyHint": "💡 只需填写 API Key请求地址已预设",
"customApiKeyHint": "💡 自定义配置需手动填写所有必要字段",
"officialHint": "💡 官方供应商使用浏览器登录,无需配置 API Key",
"getApiKey": "获取 API Key",
"partnerPromotion": {
"zhipu": "智谱 GLM 是 CC Switch 的官方合作伙伴使用此链接充值可以获得9折优惠",
"packycode": "PackyCode 是 CC Switch 的官方合作伙伴,使用此链接注册并在充值时填写 \"cc-switch\" 优惠码可以享受9折优惠",
"minimax_cn": "MiniMax Coding Plan 特惠Starter 套餐 9.9 元起",
"minimax_en": "MiniMax Coding Plan 黑五特惠Starter 套餐现仅 $2/月2折优惠",
"dmxapi": "Claude Code 专属模型 3.4 折优惠进行中!",
"cubence": "Cubence 是 CC Switch 的官方合作伙伴,使用此链接注册并在充值时填写 \"CCSWITCH\" 优惠码每次充值均可享受9折优惠",
"aigocode": "AIGoCode 是 CC Switch 的官方合作伙伴使用此链接注册首次充值时可以获得10%额度奖励!"
},
"parameterConfig": "参数配置 - {{name}} *",
"mainModel": "主模型 (可选)",
"mainModelPlaceholder": "例如: GLM-4.6",
"fastModel": "快速模型 (可选)",
"fastModelPlaceholder": "例如: GLM-4.5-Air",
"modelHint": "💡 留空将使用供应商的默认模型",
"apiHint": "💡 填写兼容 Claude API 的服务端点地址,不要以斜杠结尾",
"codexApiHint": "💡 填写兼容 OpenAI Response 格式的服务端点地址",
"fillSupplierName": "请填写供应商名称",
"fillConfigContent": "请填写配置内容",
"fillParameter": "请填写 {{label}}",
"fillTemplateValue": "请填写 {{label}}",
"endpointRequired": "非官方供应商请填写 API 端点",
"apiKeyRequired": "非官方供应商请填写 API Key",
"configJsonError": "配置JSON格式错误请检查语法",
"authJsonRequired": "auth.json 必须是 JSON 对象",
"authJsonError": "auth.json 格式错误请检查JSON语法",
"fillAuthJson": "请填写 auth.json 配置",
"fillApiKey": "请填写 OPENAI_API_KEY",
"visitWebsite": "访问 {{url}}",
"anthropicModel": "主模型",
"anthropicSmallFastModel": "快速模型",
"anthropicReasoningModel": "推理模型 (Thinking)",
"openrouterCompatMode": "OpenRouter 兼容模式",
"openrouterCompatModeHint": "使用 OpenAI Chat Completions 接口并转换为 Anthropic SSE。",
"anthropicDefaultHaikuModel": "Haiku 默认模型",
"anthropicDefaultSonnetModel": "Sonnet 默认模型",
"anthropicDefaultOpusModel": "Opus 默认模型",
"modelPlaceholder": "",
"smallModelPlaceholder": "",
"haikuModelPlaceholder": "",
"modelHelper": "可选:指定默认使用的 Claude 模型,留空则使用系统默认。",
"categoryOfficial": "官方",
"categoryCnOfficial": "开源官方",
"categoryAggregation": "聚合服务",
"categoryThirdParty": "第三方"
},
"endpointTest": {
"title": "请求地址管理",
"endpoints": "个端点",
"autoSelect": "自动选择",
"testSpeed": "测速",
"testing": "测速中",
"addEndpointPlaceholder": "https://api.example.com",
"done": "完成",
"noEndpoints": "暂无端点",
"failed": "失败",
"enterValidUrl": "请输入有效的 URL",
"invalidUrlFormat": "URL 格式不正确",
"onlyHttps": "仅支持 HTTP/HTTPS",
"urlExists": "该地址已存在",
"saveFailed": "保存失败,请重试",
"loadEndpointsFailed": "加载自定义端点失败:",
"addEndpointFailed": "添加自定义端点失败:",
"removeEndpointFailed": "删除自定义端点失败:",
"removeFailed": "删除失败: {{error}}",
"updateLastUsedFailed": "更新端点使用时间失败",
"pleaseAddEndpoint": "请先添加端点",
"testUnavailable": "测速功能不可用",
"noResult": "未返回结果",
"testFailed": "测速失败: {{error}}",
"status": "状态码:{{code}}"
},
"codexConfig": {
"authJson": "auth.json (JSON) *",
"authJsonPlaceholder": "{\n \"OPENAI_API_KEY\": \"sk-your-api-key-here\"\n}",
"authJsonHint": "Codex auth.json 配置内容",
"configToml": "config.toml (TOML)",
"configTomlHint": "Codex config.toml 配置内容",
"writeCommonConfig": "写入通用配置",
"editCommonConfig": "编辑通用配置",
"editCommonConfigTitle": "编辑 Codex 通用配置片段",
"commonConfigHint": "该片段会在勾选'写入通用配置'时追加到 config.toml 末尾",
"apiUrlLabel": "API 请求地址",
"extractFromCurrent": "从编辑内容提取",
"extractNoCommonConfig": "当前编辑内容没有可提取的通用配置",
"extractFailed": "提取失败: {{error}}",
"saveFailed": "保存失败: {{error}}"
},
"geminiConfig": {
"envFile": "环境变量 (.env)",
"envFileHint": "使用 .env 格式配置 Gemini 环境变量",
"configJson": "配置文件 (config.json)",
"configJsonHint": "使用 JSON 格式配置 Gemini 扩展参数(可选)",
"writeCommonConfig": "写入通用配置",
"editCommonConfig": "编辑通用配置",
"editCommonConfigTitle": "编辑 Gemini 通用配置片段",
"commonConfigHint": "该片段会写入 Gemini 的 .env不允许包含 GOOGLE_GEMINI_BASE_URL、GEMINI_API_KEY",
"extractFromCurrent": "从编辑内容提取",
"extractNoCommonConfig": "当前编辑内容没有可提取的通用配置",
"extractFailed": "提取失败: {{error}}",
"saveFailed": "保存失败: {{error}}",
"extractedConfigInvalid": "提取的配置格式错误",
"invalidJsonFormat": "通用配置片段格式错误(必须是有效的 JSON",
"commonConfigInvalidKeys": "通用配置片段不能包含 GOOGLE_GEMINI_BASE_URL 或 GEMINI_API_KEY发现{{keys}}",
"commonConfigInvalidValues": "通用配置片段的值必须是字符串",
"noCommonConfigToApply": "通用配置片段为空或没有可写入的内容",
"configMergeFailed": "配置合并失败: {{error}}",
"configReplaceFailed": "配置替换失败: {{error}}"
},
"providerPreset": {
"label": "预设供应商",
"custom": "自定义配置",
"other": "其他",
"hint": "选择预设后可继续调整下方字段。"
},
"usage": {
"title": "使用统计",
"subtitle": "查看 AI 模型的使用情况和成本统计",
"today": "24小时",
"last7days": "7天",
"last30days": "30天",
"totalRequests": "总请求数",
"totalCost": "总成本",
"cost": "成本",
"perMillion": "(每百万)",
"trends": "使用趋势",
"rangeToday": "过去 24 小时 (按小时)",
"rangeLast7Days": "过去 7 天",
"rangeLast30Days": "过去 30 天",
"totalTokens": "总 Token 数",
"cacheTokens": "缓存 Token",
"requestLogs": "请求日志",
"providerStats": "Provider 统计",
"modelStats": "模型统计",
"time": "时间",
"provider": "供应商",
"billingModel": "计费模型",
"inputTokens": "输入",
"outputTokens": "输出",
"cacheReadTokens": "缓存命中",
"cacheCreationTokens": "缓存创建",
"timingInfo": "用时/首字",
"status": "状态",
"noData": "暂无数据",
"unknownProvider": "未知供应商",
"stream": "流",
"nonStream": "非流",
"totalRecords": "共 {{total}} 条记录",
"modelPricing": "模型定价",
"loadPricingError": "加载定价数据失败",
"modelPricingDesc": "配置各模型的 Token 成本",
"noPricingData": "暂无定价数据。点击\"新增\"添加模型定价配置。",
"model": "模型",
"displayName": "显示名称",
"inputCost": "输入成本",
"outputCost": "输出成本",
"cacheReadCost": "缓存命中",
"cacheWriteCost": "缓存创建",
"deleteConfirmTitle": "确认删除",
"deleteConfirmDesc": "确定要删除此模型定价配置吗?此操作无法撤销。",
"queryFailed": "查询失败",
"refreshUsage": "刷新用量",
"planUsage": "套餐用量",
"invalid": "已失效",
"total": "总:",
"used": "已使用:",
"remaining": "剩余:",
"justNow": "刚刚",
"minutesAgo": "{{count}} 分钟前",
"hoursAgo": "{{count}} 小时前",
"daysAgo": "{{count}} 天前",
"multiplePlans": "{{count}} 个套餐",
"expand": "展开",
"collapse": "收起",
"modelIdPlaceholder": "例如: claude-3-5-sonnet-20241022",
"displayNamePlaceholder": "例如: Claude 3.5 Sonnet",
"appType": "应用类型",
"allApps": "全部应用",
"statusCode": "状态码",
"searchProviderPlaceholder": "搜索供应商...",
"searchModelPlaceholder": "搜索模型...",
"timeRange": "时间范围",
"input": "Input",
"output": "Output",
"cacheWrite": "创建",
"cacheRead": "命中"
},
"usageScript": {
"title": "配置用量查询",
"enableUsageQuery": "启用用量查询",
"presetTemplate": "预设模板",
"requestUrl": "请求地址",
"requestUrlPlaceholder": "例如https://api.example.com",
"method": "HTTP 方法",
"templateCustom": "自定义",
"templateGeneral": "通用模板",
"templateNewAPI": "NewAPI",
"credentialsConfig": "凭证配置",
"credentialsHint": "留空则自动使用供应商配置",
"optional": "可选",
"apiKeyPlaceholder": "留空则使用供应商的 API Key",
"baseUrlPlaceholder": "留空则使用供应商的请求地址",
"baseUrl": "请求地址",
"accessToken": "访问令牌(在个人安全设置里获取)",
"accessTokenPlaceholder": "在'安全设置'里生成",
"userId": "用户 ID",
"userIdPlaceholder": "例如114514",
"defaultPlan": "默认套餐",
"queryFailedMessage": "查询失败",
"queryScript": "查询脚本JavaScript",
"timeoutSeconds": "超时时间(秒)",
"headers": "请求头",
"body": "请求 Body",
"timeoutHint": "范围: 2-30 秒",
"timeoutMustBeInteger": "超时时间必须为整数,小数部分已忽略",
"timeoutCannotBeNegative": "超时时间不能为负数",
"autoIntervalMinutes": "自动查询间隔分钟0 表示不自动查询)",
"autoQueryInterval": "自动查询间隔(分钟)",
"autoQueryIntervalHint": "0 表示不自动查询,建议 5-60 分钟",
"intervalMustBeInteger": "自动查询间隔必须为整数,小数部分已忽略",
"intervalCannotBeNegative": "自动查询间隔不能为负数",
"intervalAdjusted": "自动查询间隔已调整为 {{value}} 分钟",
"scriptHelp": "脚本编写说明:",
"configFormat": "配置格式:",
"commentOptional": "可选",
"commentResponseIsJson": "response 是 API 返回的 JSON 数据",
"extractorFormat": "extractor 返回格式(所有字段均为可选):",
"tips": "💡 提示:",
"testing": "测试中...",
"testScript": "测试脚本",
"format": "格式化",
"saveConfig": "保存配置",
"scriptEmpty": "脚本配置不能为空",
"mustHaveReturn": "脚本必须包含 return 语句",
"testSuccess": "测试成功!",
"testFailed": "测试失败",
"formatSuccess": "格式化成功",
"formatFailed": "格式化失败",
"variablesHint": "支持变量: {{apiKey}}, {{baseUrl}} | extractor 函数接收 API 响应的 JSON 对象",
"scriptConfig": "请求配置",
"extractorCode": "提取器代码",
"extractorHint": "返回对象需包含剩余额度等字段",
"fieldIsValid": "• isValid: 布尔值,套餐是否有效",
"fieldInvalidMessage": "• invalidMessage: 字符串,失效原因说明(当 isValid 为 false 时显示)",
"fieldRemaining": "• remaining: 数字,剩余额度",
"fieldUnit": "• unit: 字符串,单位(如 \"USD\"",
"fieldPlanName": "• planName: 字符串,套餐名称",
"fieldTotal": "• total: 数字,总额度",
"fieldUsed": "• used: 数字,已用额度",
"fieldExtra": "• extra: 字符串,扩展字段,可自由补充需要展示的文本",
"tip1": "• 变量 {{apiKey}} 和 {{baseUrl}} 会自动替换",
"tip2": "• extractor 函数在沙箱环境中执行,支持 ES2020+ 语法",
"tip3": "• 整个配置必须用 () 包裹,形成对象字面量表达式"
},
"errors": {
"usage_query_failed": "用量查询失败",
"configLoadFailedTitle": "配置加载失败",
"configLoadFailedMessage": "无法读取配置文件:\n{{path}}\n\n错误详情\n{{detail}}\n\n请手动检查 JSON 是否有效,或从同目录的备份文件(如 config.json.bak恢复。\n\n应用将退出以便您进行修复。"
},
"presetSelector": {
"title": "选择配置类型",
"custom": "自定义",
"customDescription": "手动配置供应商,需要填写完整的配置信息",
"officialDescription": "官方登录,不需要填写 API Key",
"presetDescription": "使用预设配置,只需填写 API Key"
},
"mcp": {
"title": "MCP 管理",
"import": "导入",
"importExisting": "导入已有",
"addMcp": "添加MCP",
"claudeTitle": "Claude Code MCP 管理",
"codexTitle": "Codex MCP 管理",
"geminiTitle": "Gemini MCP 管理",
"unifiedPanel": {
"title": "MCP 服务器管理",
"addServer": "添加服务器",
"editServer": "编辑服务器",
"deleteServer": "删除服务器",
"deleteConfirm": "确定要删除服务器 \"{{id}}\" 吗?此操作无法撤销。",
"noServers": "暂无服务器",
"enabledApps": "启用的应用",
"noImportFound": "未发现需要导入的 MCP 服务器。所有服务器已在 CC Switch 统一管理中。",
"importSuccess": "成功导入 {{count}} 个 MCP 服务器",
"apps": {
"claude": "Claude",
"codex": "Codex",
"gemini": "Gemini"
}
},
"userLevelPath": "用户级 MCP 配置路径",
"serverList": "服务器列表",
"loading": "加载中...",
"empty": "暂无 MCP 服务器",
"emptyDescription": "点击右上角按钮添加第一个 MCP 服务器",
"add": "添加 MCP",
"addServer": "新增 MCP",
"editServer": "编辑 MCP",
"addClaudeServer": "新增 Claude Code MCP",
"editClaudeServer": "编辑 Claude Code MCP",
"addCodexServer": "新增 Codex MCP",
"editCodexServer": "编辑 Codex MCP",
"configPath": "配置路径",
"serverCount": "已配置 {{count}} 个 MCP 服务器",
"enabledCount": "已启用 {{count}} 个",
"template": {
"fetch": "快速模板mcp-fetch"
},
"form": {
"title": "MCP 标题(唯一)",
"titlePlaceholder": "my-mcp-server",
"name": "显示名称",
"namePlaceholder": "例如 @modelcontextprotocol/server-time",
"enabledApps": "启用到应用",
"noAppsWarning": "至少选择一个应用",
"description": "描述",
"descriptionPlaceholder": "可选的描述信息",
"tags": "标签(逗号分隔)",
"tagsPlaceholder": "stdio, time, utility",
"homepage": "主页链接",
"homepagePlaceholder": "https://example.com",
"docs": "文档链接",
"docsPlaceholder": "https://example.com/docs",
"additionalInfo": "附加信息",
"jsonConfig": "完整的 JSON 配置",
"jsonConfigOrPrefix": "完整的 JSON 配置或者使用",
"tomlConfigOrPrefix": "完整的 TOML 配置或者使用",
"jsonPlaceholder": "{\n \"type\": \"stdio\",\n \"command\": \"uvx\",\n \"args\": [\"mcp-server-fetch\"]\n}",
"tomlConfig": "完整的 TOML 配置",
"tomlPlaceholder": "type = \"stdio\"\ncommand = \"uvx\"\nargs = [\"mcp-server-fetch\"]",
"useWizard": "配置向导",
"syncOtherSide": "同步到 {{target}}",
"syncOtherSideHint": "勾选后会把当前配置同时写入 {{target}},若存在同名配置将被覆盖",
"willOverwriteWarning": "将覆盖 {{target}} 中的同名配置"
},
"wizard": {
"title": "MCP 配置向导",
"hint": "快速配置 MCP 服务器,自动生成 JSON 配置",
"type": "类型",
"typeStdio": "stdio",
"typeHttp": "http",
"typeSse": "sse",
"command": "命令",
"commandPlaceholder": "npx 或 uvx",
"args": "参数",
"argsPlaceholder": "arg1\narg2",
"env": "环境变量",
"envPlaceholder": "KEY1=value1\nKEY2=value2",
"url": "URL",
"urlPlaceholder": "https://api.example.com/mcp",
"urlRequired": "请输入 URL",
"headers": "请求头(可选)",
"headersPlaceholder": "Authorization: Bearer your_token_here\nContent-Type: application/json",
"preview": "配置预览",
"apply": "应用配置"
},
"id": "标识 (唯一)",
"type": "类型",
"command": "命令",
"validateCommand": "校验命令",
"args": "参数",
"argsPlaceholder": "例如mcp-server-fetch --help",
"env": "环境变量 (一行一个KEY=VALUE)",
"envPlaceholder": "FOO=bar\nHELLO=world",
"reset": "重置",
"msg": {
"saved": "已保存",
"deleted": "已删除",
"enabled": "已启用",
"disabled": "已禁用",
"templateAdded": "已添加模板"
},
"error": {
"idRequired": "请填写标识",
"idExists": "该标识已存在,请更换",
"jsonInvalid": "JSON 格式错误,请检查",
"tomlInvalid": "TOML 格式错误,请检查",
"commandRequired": "请填写命令",
"singleServerObjectRequired": "此处只需单个服务器对象,请不要粘贴包含 mcpServers 的整份配置",
"saveFailed": "保存失败",
"deleteFailed": "删除失败"
},
"validation": {
"ok": "命令可用",
"fail": "命令不可用"
},
"confirm": {
"deleteTitle": "删除 MCP 服务器",
"deleteMessage": "确定要删除 MCP 服务器 \"{{id}}\" 吗?此操作无法撤销。"
},
"presets": {
"title": "选择 MCP 类型",
"enable": "启用",
"enabled": "已启用",
"installed": "已安装",
"docs": "文档",
"requiresEnv": "需要环境变量",
"fetch": {
"name": "mcp-server-fetch",
"description": "通用 HTTP 请求工具,支持 GET/POST 等 HTTP 方法,适合快速请求接口/抓取网页数据"
},
"time": {
"name": "@modelcontextprotocol/server-time",
"description": "时间查询工具,提供当前时间、时区转换、日期计算等功能"
},
"memory": {
"name": "@modelcontextprotocol/server-memory",
"description": "知识图谱记忆系统,支持存储实体、关系和观察,让 AI 记住对话中的重要信息"
},
"sequential-thinking": {
"name": "@modelcontextprotocol/server-sequential-thinking",
"description": "顺序思考工具,帮助 AI 将复杂问题分解为多个步骤,逐步深入思考"
},
"context7": {
"name": "@upstash/context7-mcp",
"description": "Context7 文档搜索工具,提供最新的库文档和代码示例,配置 key 会有更高限额"
}
}
},
"prompts": {
"manage": "提示词",
"title": "{{appName}} 提示词管理",
"claudeTitle": "Claude 提示词管理",
"codexTitle": "Codex 提示词管理",
"add": "添加提示词",
"edit": "编辑提示词",
"addTitle": "添加 {{appName}} 提示词",
"editTitle": "编辑 {{appName}} 提示词",
"import": "导入现有",
"count": "共 {{count}} 个提示词",
"enabled": "已启用",
"enable": "启用",
"enabledName": "已启用: {{name}}",
"noneEnabled": "未启用任何提示词",
"currentFile": "当前 {{filename}} 内容",
"empty": "暂无提示词",
"emptyDescription": "点击右上角按钮添加或导入提示词",
"loading": "加载中...",
"name": "名称",
"namePlaceholder": "例如:项目默认提示词",
"description": "描述",
"descriptionPlaceholder": "可选的描述信息",
"content": "内容",
"contentPlaceholder": "# {{filename}}\n\n在此输入提示词内容...",
"loadFailed": "加载提示词失败",
"saveSuccess": "保存成功",
"saveFailed": "保存失败",
"deleteSuccess": "删除成功",
"deleteFailed": "删除失败",
"enableSuccess": "启用成功",
"enableFailed": "启用失败",
"disableSuccess": "禁用成功",
"disableFailed": "禁用失败",
"importSuccess": "导入成功",
"importFailed": "导入失败",
"confirm": {
"deleteTitle": "确认删除",
"deleteMessage": "确定要删除提示词 \"{{name}}\" 吗?"
}
},
"env": {
"warning": {
"title": "检测到系统环境变量冲突",
"description": "发现 {{count}} 个环境变量可能会覆盖您的配置"
},
"actions": {
"expand": "查看详情",
"collapse": "收起",
"selectAll": "全选",
"clearSelection": "取消选择",
"deleteSelected": "删除选中 ({{count}})",
"deleting": "删除中..."
},
"field": {
"value": "值",
"source": "来源"
},
"source": {
"userRegistry": "用户环境变量 (注册表)",
"systemRegistry": "系统环境变量 (注册表)",
"systemEnv": "系统环境变量"
},
"delete": {
"success": "环境变量已成功删除",
"error": "删除环境变量失败"
},
"backup": {
"location": "备份位置: {{path}}"
},
"confirm": {
"title": "确认删除环境变量",
"message": "确定要删除 {{count}} 个环境变量吗?",
"backupNotice": "删除前将自动备份,您可以稍后恢复。删除后需要重启应用或终端才能生效。",
"confirm": "确认删除"
},
"error": {
"noSelection": "请选择要删除的环境变量"
}
},
"skills": {
"manage": "Skills",
"title": "Skills 管理",
"description": "从流行的仓库发现并安装技能,扩展 Claude Code/Codex/Gemini 的能力",
"refresh": "刷新",
"refreshing": "刷新中...",
"repoManager": "仓库管理",
"count": "共 {{count}} 个技能",
"empty": "暂无可用技能",
"emptyDescription": "添加技能仓库以发现可用的技能",
"addRepo": "添加技能仓库",
"loading": "加载中...",
"installed": "已安装",
"install": "安装",
"installing": "安装中...",
"uninstall": "卸载",
"uninstalling": "卸载中...",
"view": "查看",
"noDescription": "暂无描述",
"loadFailed": "加载失败",
"installSuccess": "技能 {{name}} 已安装",
"installFailed": "安装失败",
"uninstallSuccess": "技能 {{name}} 已卸载",
"uninstallFailed": "卸载失败",
"error": {
"skillNotFound": "技能不存在:{{directory}}",
"missingRepoInfo": "缺少仓库信息owner 或 name",
"downloadTimeout": "下载仓库 {{owner}}/{{name}} 超时({{timeout}}秒)",
"downloadTimeoutHint": "请检查网络连接或稍后重试",
"skillPathNotFound": "仓库 {{owner}}/{{name}} 中未找到技能路径 '{{path}}'",
"skillDirNotFound": "技能目录不存在:{{path}}",
"emptyArchive": "下载的压缩包为空",
"downloadFailed": "下载失败HTTP {{status}}",
"allBranchesFailed": "所有分支下载失败,尝试了:{{branches}}",
"httpError": "HTTP 错误 {{status}}",
"http403": "GitHub 访问受限,可能是请求频率过高",
"http404": "仓库或分支不存在,请检查地址",
"http429": "请求过于频繁,请等待后重试",
"parseMetadataFailed": "解析技能元数据失败",
"getHomeDirFailed": "无法获取用户主目录",
"networkError": "网络错误",
"fsError": "文件系统错误",
"unknownError": "未知错误",
"suggestion": {
"checkNetwork": "请检查网络连接",
"checkProxy": "建议配置 HTTP 代理",
"retryLater": "请稍后重试",
"checkRepoUrl": "请检查仓库地址和分支名称",
"checkDiskSpace": "请检查磁盘空间",
"checkPermission": "请检查目录权限"
}
},
"repo": {
"title": "管理技能仓库",
"description": "添加或删除 GitHub 技能仓库源",
"url": "仓库 URL",
"urlPlaceholder": "owner/name 或 https://github.com/owner/name",
"branch": "分支",
"branchPlaceholder": "main",
"path": "技能路径",
"pathPlaceholder": "skills (可选,留空扫描根目录)",
"add": "添加仓库",
"list": "已添加的仓库",
"empty": "暂无仓库",
"invalidUrl": "无效的仓库 URL 格式",
"addSuccess": "仓库 {{owner}}/{{name}} 已添加,识别到 {{count}} 个技能",
"addFailed": "添加失败",
"removeSuccess": "仓库 {{owner}}/{{name}} 已删除",
"removeFailed": "删除失败",
"skillCount": "识别到 {{count}} 个技能"
},
"search": "搜索技能",
"searchPlaceholder": "搜索技能名称或描述...",
"filter": {
"placeholder": "状态筛选",
"all": "全部",
"installed": "已安装",
"uninstalled": "未安装"
},
"noResults": "未找到匹配的技能",
"noInstalled": "暂无已安装的技能",
"noInstalledDescription": "从仓库发现并安装技能,或导入已有的技能",
"discover": "发现技能",
"import": "导入已有",
"importDescription": "选择要导入到 CC Switch 统一管理的技能",
"importSuccess": "成功导入 {{count}} 个技能",
"importSelected": "导入已选 ({{count}})",
"noUnmanagedFound": "未发现需要导入的技能。所有技能已在 CC Switch 统一管理中。",
"foundIn": "发现于",
"local": "本地",
"uninstallConfirm": "确定要卸载技能 \"{{name}}\" 吗?这将从所有应用中移除该技能。",
"uninstallInMainPanel": "请在主面板中卸载技能",
"notFound": "未找到技能",
"apps": {
"claude": "Claude",
"codex": "Codex",
"gemini": "Gemini"
}
},
"deeplink": {
"confirmImport": "确认导入供应商配置",
"confirmImportDescription": "以下配置将导入到 CC Switch",
"importPrompt": "导入提示词",
"importPromptDescription": "请确认是否导入此系统提示词",
"importMcp": "导入 MCP Servers",
"importMcpDescription": "请确认是否导入这些 MCP Servers",
"importSkill": "添加 Skill 仓库",
"importSkillDescription": "请确认是否添加此 Skill 仓库",
"promptImportSuccess": "提示词导入成功",
"promptImportSuccessDescription": "已导入提示词: {{name}}",
"mcpImportSuccess": "MCP Servers 导入成功",
"mcpImportSuccessDescription": "成功导入 {{count}} 个服务器",
"mcpPartialSuccess": "部分导入成功",
"mcpPartialSuccessDescription": "成功: {{success}}, 失败: {{failed}}",
"skillImportSuccess": "Skill 仓库添加成功",
"skillImportSuccessDescription": "已添加仓库: {{repo}}",
"app": "应用类型",
"providerName": "供应商名称",
"homepage": "官网地址",
"endpoint": "API 端点",
"apiKey": "API 密钥",
"icon": "图标",
"model": "模型",
"haikuModel": "Haiku 模型",
"sonnetModel": "Sonnet 模型",
"opusModel": "Opus 模型",
"multiModel": "多模态模型",
"notes": "备注",
"import": "导入",
"importing": "导入中...",
"warning": "请确认以上信息准确无误后再导入。导入后可在供应商列表中编辑或删除。",
"parseError": "深链接解析失败",
"importSuccess": "导入成功",
"importSuccessDescription": "供应商 \"{{name}}\" 已成功导入",
"importError": "导入失败",
"configSource": "配置来源",
"configEmbedded": "内嵌配置",
"configRemote": "远程配置",
"configDetails": "配置详情",
"configUrl": "配置文件 URL",
"configMergeError": "合并配置文件失败",
"primaryEndpoint": "主",
"mcp": {
"title": "批量导入 MCP Servers",
"targetApps": "目标应用",
"serverCount": "MCP Servers ({{count}} 个)",
"enabledWarning": "导入后将立即写入所有指定应用的配置文件"
},
"prompt": {
"title": "导入系统提示词",
"app": "应用",
"name": "名称",
"description": "描述",
"contentPreview": "内容预览",
"enabledWarning": "导入后将立即启用此提示词,其他提示词将被禁用"
},
"skill": {
"title": "添加 Claude Skill 仓库",
"repo": "GitHub 仓库",
"directory": "目标目录",
"branch": "分支",
"skillsPath": "Skills 路径",
"hint": "此操作将添加 Skill 仓库到列表。",
"hintDetail": "添加后,您可以在 Skills 管理界面中选择安装具体的 Skill。"
}
},
"iconPicker": {
"search": "搜索图标",
"searchPlaceholder": "输入图标名称...",
"noResults": "未找到匹配的图标",
"category": {
"aiProvider": "AI 服务商",
"cloud": "云平台",
"tool": "开发工具",
"other": "其他"
}
},
"providerIcon": {
"label": "图标",
"colorLabel": "图标颜色",
"selectIcon": "选择图标",
"preview": "预览",
"clickToChange": "点击更换图标",
"clickToSelect": "点击选择图标"
},
"migration": {
"success": "配置迁移成功",
"skillsSuccess": "已自动导入 {{count}} 个技能到统一管理",
"skillsFailed": "自动导入技能失败",
"skillsFailedDescription": "请打开 Skills 页面点击“导入已有”手动导入(或重启后再试)。"
},
"agents": {
"title": "智能体"
},
"health": {
"operational": "正常",
"degraded": "降级",
"failed": "失败",
"circuitOpen": "熔断",
"consecutiveFailures": "连续失败 {{count}} 次"
},
"proxy": {
"panel": {
"serviceAddress": "服务地址",
"addressCopied": "地址已复制",
"currentProvider": "当前 Provider",
"waitingFirstRequest": "当前 Provider等待首次请求…",
"stoppedTitle": "代理服务已停止",
"stoppedDescription": "使用右上角开关即可启动服务",
"openSettings": "配置代理服务",
"stats": {
"activeConnections": "活跃连接",
"totalRequests": "总请求数",
"successRate": "成功率",
"uptime": "运行时间"
}
},
"settings": {
"title": "代理服务设置",
"description": "配置本地代理服务器的监听地址、端口和运行参数,保存后立即生效。",
"alert": {
"autoApply": "保存后将自动同步到正在运行的代理服务,无需手动重启。"
},
"basic": {
"title": "基础设置",
"description": "配置代理服务监听的地址与端口。"
},
"advanced": {
"title": "高级参数",
"description": "控制请求的稳定性和日志记录。"
},
"timeout": {
"title": "超时设置",
"description": "配置流式和非流式请求的超时时间。"
},
"fields": {
"listenAddress": {
"label": "监听地址",
"placeholder": "127.0.0.1",
"description": "代理服务器监听的 IP 地址(推荐 127.0.0.1"
},
"listenPort": {
"label": "监听端口",
"placeholder": "15721",
"description": "代理服务器监听的端口号1024 ~ 65535"
},
"maxRetries": {
"label": "最大重试次数",
"placeholder": "3",
"description": "请求失败时的重试次数0 ~ 10"
},
"requestTimeout": {
"label": "请求超时(秒)",
"placeholder": "0不限或 300",
"description": "单个请求的最大等待时间0 表示不限制,或设置 10 ~ 600 秒)"
},
"enableLogging": {
"label": "启用日志记录",
"description": "记录所有代理请求,便于排查问题"
},
"streamingFirstByteTimeout": {
"label": "流式首字超时(秒)",
"description": "等待首个数据块的最大时间"
},
"streamingIdleTimeout": {
"label": "流式静默超时(秒)",
"description": "数据块之间的最大间隔"
},
"nonStreamingTimeout": {
"label": "非流式超时(秒)",
"description": "非流式请求的总超时时间"
}
},
"validation": {
"addressInvalid": "请输入有效的IP地址",
"portMin": "端口必须大于1024",
"portMax": "端口必须小于65535",
"retryMin": "重试次数不能为负",
"retryMax": "重试次数不能超过10",
"timeoutNonNegative": "超时时间不能为负数",
"timeoutMax": "超时时间最多600秒",
"timeoutRange": "请输入 0 或 10-600 之间的数值",
"streamingTimeoutMin": "超时时间至少5秒",
"streamingTimeoutMax": "超时时间最多300秒"
},
"actions": {
"save": "保存配置"
},
"toast": {
"saved": "代理配置已保存",
"saveFailed": "保存失败: {{error}}"
},
"invalidPort": "端口无效,请输入 1024-65535 之间的数字",
"invalidAddress": "地址无效,请输入有效的 IP 地址(如 127.0.0.1)或 localhost",
"configSaved": "代理配置已保存",
"configSaveFailed": "保存配置失败",
"restartRequired": "修改地址或端口后需要重启代理服务才能生效"
},
"switchFailed": "切换失败: {{error}}",
"failover": {
"proxyRequired": "需要先启动代理服务才能配置故障转移"
},
"failoverQueue": {
"title": "故障转移队列",
"description": "管理各应用的供应商故障转移顺序",
"info": "当前激活的供应商始终优先。当请求失败时,系统会按队列顺序依次尝试其他供应商。",
"selectProvider": "选择供应商添加到队列",
"noAvailableProviders": "没有可添加的供应商",
"empty": "故障转移队列为空。添加供应商以启用自动故障转移。",
"dragHint": "拖拽供应商可调整故障转移顺序,序号越小优先级越高。",
"toggleEnabled": "启用/禁用",
"addSuccess": "已添加到故障转移队列",
"addFailed": "添加失败",
"removeSuccess": "已从故障转移队列移除",
"removeFailed": "移除失败",
"reorderSuccess": "队列顺序已更新",
"reorderFailed": "更新顺序失败",
"toggleFailed": "状态更新失败"
},
"autoFailover": {
"info": "当故障转移队列中配置了多个供应商时,系统会在请求失败时按优先级顺序依次尝试。当某个供应商连续失败达到阈值时,熔断器会打开并在一段时间内跳过该供应商。",
"configSaved": "自动故障转移配置已保存",
"configSaveFailed": "保存失败",
"validationFailed": "以下字段超出有效范围: {{fields}}",
"retrySettings": "重试与超时设置",
"failureThreshold": "失败阈值",
"failureThresholdHint": "连续失败多少次后打开熔断器(建议: 3-10",
"timeout": "恢复等待时间(秒)",
"timeoutHint": "熔断器打开后,等待多久后尝试恢复(建议: 30-120",
"circuitBreakerSettings": "熔断器设置",
"successThreshold": "恢复成功阈值",
"successThresholdHint": "半开状态下成功多少次后关闭熔断器",
"errorRate": "错误率阈值 (%)",
"errorRateHint": "错误率超过此值时打开熔断器",
"minRequests": "最小请求数",
"minRequestsHint": "计算错误率前的最小请求数",
"explanationTitle": "工作原理",
"failureThresholdLabel": "失败阈值",
"failureThresholdExplain": "连续失败达到此次数时,熔断器打开,该供应商暂时不可用",
"timeoutLabel": "恢复等待时间",
"timeoutExplain": "熔断器打开后,等待此时间后尝试半开状态",
"successThresholdLabel": "恢复成功阈值",
"successThresholdExplain": "半开状态下,成功达到此次数时关闭熔断器,供应商恢复可用",
"errorRateLabel": "错误率阈值",
"errorRateExplain": "错误率超过此值时,即使未达到失败阈值也会打开熔断器"
}
},
"streamCheck": {
"configSaved": "健康检查配置已保存",
"configSaveFailed": "保存失败",
"testModels": "测试模型",
"claudeModel": "Claude 模型",
"codexModel": "Codex 模型",
"geminiModel": "Gemini 模型",
"checkParams": "检查参数",
"timeout": "超时时间(秒)",
"maxRetries": "最大重试次数",
"degradedThreshold": "降级阈值(毫秒)"
},
"proxyConfig": {
"proxyEnabled": "代理总开关",
"appTakeover": "代理启用",
"perAppConfig": "应用配置",
"circuitBreaker": "熔断器配置",
"circuitBreakerSettings": "熔断器设置",
"failureThreshold": "失败阈值",
"successThreshold": "恢复阈值",
"recoveryTimeout": "恢复等待时间",
"errorRateThreshold": "错误率阈值",
"minRequests": "最小请求数",
"timeoutConfig": "超时配置",
"streamingFirstByte": "流式首字节超时",
"streamingIdle": "流式静默超时",
"nonStreaming": "非流式超时"
},
"circuitBreaker": {
"failureThreshold": "失败阈值",
"successThreshold": "成功阈值",
"timeoutSeconds": "超时时间",
"errorRateThreshold": "错误率阈值",
"minRequests": "最小请求数",
"validationFailed": "以下字段超出有效范围: {{fields}}",
"configSaved": "熔断器配置已保存",
"saveFailed": "保存失败"
},
"universalProvider": {
"title": "统一供应商",
"description": "统一供应商可以同时管理 Claude、Codex 和 Gemini 的配置。修改后会自动同步到所有启用的应用。",
"add": "添加统一供应商",
"edit": "编辑统一供应商",
"empty": "还没有统一供应商",
"emptyHint": "点击下方「添加统一供应商」按钮创建一个",
"selectPreset": "选择预设类型",
"name": "名称",
"namePlaceholder": "例如:我的 NewAPI",
"baseUrl": "API 地址",
"apiKey": "API Key",
"websiteUrl": "官网地址",
"websiteUrlPlaceholder": "https://example.com可选用于在列表中显示",
"notes": "备注",
"notesPlaceholder": "可选:添加备注信息",
"enabledApps": "启用的应用",
"modelConfig": "模型配置",
"model": "模型",
"sync": "同步到应用",
"synced": "已同步到所有应用",
"syncError": "同步失败",
"noAppsEnabled": "未启用任何应用",
"added": "统一供应商已添加",
"addedAndSynced": "统一供应商已添加并同步",
"updated": "统一供应商已更新",
"deleted": "统一供应商已删除",
"addSuccess": "统一供应商添加成功",
"addFailed": "统一供应商添加失败",
"manage": "管理",
"loadError": "加载统一供应商失败",
"saveError": "保存统一供应商失败",
"deleteError": "删除统一供应商失败",
"deleteConfirmTitle": "删除统一供应商",
"deleteConfirmDescription": "确定要删除 \"{{name}}\" 吗?这将同时删除它在各应用中生成的供应商配置。",
"syncConfirmTitle": "同步统一供应商",
"syncConfirmDescription": "同步 \"{{name}}\" 将会覆盖 Claude、Codex 和 Gemini 中关联的供应商配置。确定要继续吗?",
"syncConfirm": "同步",
"saveAndSync": "保存并同步",
"savedAndSynced": "已保存并同步到所有应用",
"saveAndSyncError": "保存并同步失败",
"configJsonPreview": "配置 JSON 预览",
"configJsonPreviewHint": "以下是将要同步到各应用的配置内容(仅覆盖显示的字段,保留其他自定义配置)"
}
}