{
  "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": "刷新中...",
    "import": "导入",
    "all": "全部",
    "search": "查询",
    "reset": "重置",
    "actions": "操作",
    "deleting": "删除中...",
    "auto": "自动",
    "enabled": "已开启",
    "notSet": "未设置"
  },
  "firstRunNotice": {
    "title": "欢迎使用 CC Switch",
    "bodyDefault": "CC Switch 可以帮你在 Claude Code / Codex / Gemini CLI 的多个供应商之间一键切换。如果你之前已经配置过这些工具，CC Switch 会自动把现有设置保存为名为 “default” 的供应商，保证你的配置不会丢失。",
    "bodyOfficial": "列表里还预置了 “官方（Official）” 供应商，随时点一下即可切回官方默认配置。切换前 CC Switch 会自动把当前配置备份回 default，可以放心来回切。CC Switch 就是这样工作的 😊",
    "confirm": "我知道了"
  },
  "apiKeyInput": {
    "placeholder": "请输入API Key",
    "show": "显示API Key",
    "hide": "隐藏API Key"
  },
  "jsonEditor": {
    "mustBeObject": "配置必须是JSON对象，不能是数组或其他类型",
    "invalidJson": "JSON格式错误"
  },
  "commonConfig": {
    "guideTitle": "什么是通用配置片段？",
    "guidePurpose": "用来在不同供应商之间共享插件、环境变量等非敏感配置。切换供应商时不会丢失这些设置。",
    "guideUsage": "用法：① 点击「从编辑内容提取」保存通用部分  ② 新建供应商时勾选「写入通用配置」",
    "guideReExtract": "如果您新安装了插件或 Hook，请重新提取一次通用配置，以便同步到其他供应商。",
    "guideReassurance": "放心：您的原始配置已保存在默认供应商中，不会丢失。",
    "emptyTitle": "还没有通用配置片段",
    "emptyHint": "点击下方「从编辑内容提取」按钮，从当前配置中提取可复用的部分"
  },
  "claudeConfig": {
    "configLabel": "Claude Code 配置 (JSON) *",
    "writeCommonConfig": "写入通用配置",
    "editCommonConfig": "编辑通用配置",
    "editCommonConfigTitle": "编辑通用配置片段",
    "commonConfigHint": "该片段会在勾选\"写入通用配置\"时合并到 settings.json 中",
    "fullSettingsHint": "完整的 Claude Code settings.json 配置内容",
    "extractFromCurrent": "从编辑内容提取",
    "extractNoCommonConfig": "当前编辑内容没有可提取的通用配置",
    "extractFailed": "提取失败: {{error}}",
    "saveFailed": "保存失败: {{error}}",
    "hideAttribution": "隐藏 AI 署名",
    "enableTeammates": "Teammates 模式",
    "enableToolSearch": "启用 Tool Search",
    "effortMax": "最大强度思考",
    "disableAutoUpgrade": "禁用自动升级"
  },
  "header": {
    "viewOnGithub": "在 GitHub 上查看",
    "toggleDarkMode": "切换到暗色模式",
    "toggleLightMode": "切换到亮色模式",
    "addProvider": "添加供应商",
    "switchToChinese": "切换到中文",
    "switchToEnglish": "切换到英文",
    "enterEditMode": "进入编辑模式",
    "exitEditMode": "退出编辑模式",
    "windowMinimize": "最小化窗口",
    "windowMaximize": "最大化窗口",
    "windowRestore": "还原窗口",
    "windowClose": "关闭窗口"
  },
  "provider": {
    "tabProvider": "供应商",
    "tabUniversal": "统一供应商",
    "noProviders": "还没有添加任何供应商",
    "noProvidersDescription": "如果你已有配置，请点击\"导入当前配置\"，所有数据将安全保存在 default 供应商中",
    "noProvidersDescriptionSnippet": "除 Key 和请求地址外的数据（如插件配置）会被保存到通用配置片段，用于在不同供应商之间共享",
    "importCurrent": "导入当前配置",
    "importFromClaude": "从 Claude 导入兼容供应商",
    "importCurrentDescription": "将当前正在使用的配置导入为默认供应商",
    "currentlyUsing": "当前使用",
    "enable": "启用",
    "inUse": "使用中",
    "blockedByProxy": "已拦截",
    "editProvider": "编辑供应商",
    "editProviderHint": "更新配置后将立即应用到当前供应商。",
    "deleteProvider": "删除供应商",
    "addNewProvider": "添加新供应商",
    "addClaudeProvider": "添加 Claude Code 供应商",
    "addCodexProvider": "添加 Codex 供应商",
    "addGeminiProvider": "添加 Gemini 供应商",
    "addOpenCodeProvider": "添加 OpenCode 供应商",
    "addToConfig": "添加",
    "removeFromConfig": "移除",
    "setAsDefault": "设为默认",
    "isDefault": "当前默认",
    "inConfig": "已添加",
    "addProviderHint": "填写信息后即可在列表中快速切换供应商。",
    "editClaudeProvider": "编辑 Claude Code 供应商",
    "editCodexProvider": "编辑 Codex 供应商",
    "configError": "配置错误",
    "notConfigured": "未配置官网地址",
    "applyToClaudePlugin": "应用到 Claude 插件",
    "removeFromClaudePlugin": "从 Claude 插件移除",
    "dragToReorder": "拖拽以重新排序",
    "dragHandle": "拖拽排序",
    "searchPlaceholder": "按名称/备注/网址搜索供应商...",
    "searchAriaLabel": "搜索供应商",
    "searchScopeHint": "根据名称、备注和官网链接匹配结果。",
    "searchCloseHint": "按 Esc 关闭",
    "searchCloseAriaLabel": "关闭供应商搜索",
    "noSearchResults": "没有符合搜索条件的供应商。",
    "duplicate": "复制",
    "sortUpdateFailed": "排序更新失败",
    "configureUsage": "配置用量查询",
    "officialPartner": "官方合作伙伴",
    "managedByHermes": "Hermes 托管",
    "managedByHermesHint": "该条目定义在 Hermes 的 providers: dict，请在 Hermes Web UI 中编辑或删除。",
    "openTerminal": "打开终端",
    "terminalOpened": "终端已打开",
    "terminalOpenFailed": "打开终端失败",
    "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"
      }
    }
  },
  "claudeDesktop": {
    "mode": "模型处理方式",
    "modeDirect": "直连",
    "modeProxy": "需要路由",
    "modelMappingToggle": "需要模型映射",
    "modelMappingOffHint": "适合供应商已经暴露并接受 claude-* / anthropic/claude-* 模型名的 Anthropic Messages API；请求会由 Claude Desktop 直连供应商。",
    "modelMappingOnHint": "Claude Desktop 目前对模型 ID 进行了限制，如果您的供应商提供的模型不是 Claude 系列模型，则需要打开本开关，并在使用过程中保持本地路由开启。",
    "routeMapTitle": "模型映射",
    "routeMapHint": "填写供应商实际提供的模型名，显示名为在 Claude Desktop 模型列表中展示的名称。",
    "upstreamModelLabel": "实际请求模型",
    "displayNameLabel": "显示名",
    "supports1mLabel": "1M",
    "directModelListTitle": "手动指定 Claude Desktop 模型列表（高级，可选）",
    "directModelListCollapsedHint": "原生 Claude 模型供应商通常不用填写，Claude Desktop 会自动读取 /v1/models。",
    "directModelListHint": "仅当供应商的 /v1/models 不可用或没有返回 Claude Desktop 可识别的 claude-* 模型名时填写；勾选 1M 会在模型名后写入 [1M] 标记。",
    "directModelInvalid": "直连模型必须使用 claude-* / anthropic/claude-* 模型名",
    "addModel": "添加模型",
    "addRoute": "添加模型",
    "routeInvalid": "请填写上游模型名",
    "routesRequired": "至少填写一个上游模型",
    "statusTitle": "Claude Desktop 配置需要检查",
    "statusUnsupported": "当前平台暂不支持 Claude Desktop 3P 配置写入。",
    "statusStaleRawModels": "Claude Desktop profile 中存在非 claude-* 模型名，新版 Claude Desktop 可能拒绝加载；重新切换当前供应商可修复。",
    "statusMissingRouteMappings": "当前供应商启用了模型映射，但没有有效路由；请编辑供应商并补全至少一个模型映射。",
    "statusGatewayTokenMissing": "当前本地路由 token 尚未生成；重新切换该供应商会写入新的本地 token。",
    "statusBaseUrlMismatch": "Claude Desktop profile 指向的地址与当前供应商不一致；当前为 {{actual}}，应为 {{expected}}。重新切换当前供应商可修复。",
    "route": {
      "tooltip": {
        "active": "Claude Desktop 本地路由已开启 - {{address}}:{{port}}",
        "inactive": "开启 Claude Desktop 本地路由，用于需要模型映射或格式转换的供应商。当前配置地址：{{address}}:{{port}}"
      }
    }
  },
  "notifications": {
    "providerAdded": "供应商已添加",
    "providerSaved": "供应商配置已保存",
    "providerDeleted": "供应商删除成功",
    "switchSuccess": "切换成功！",
    "claudeDesktopRestartRequired": "切换成功，重启 Claude Desktop 后生效",
    "claudeDesktopProxyRestartRequired": "切换成功，请保持 CC Switch 运行，并重启 Claude Desktop 后生效",
    "addToConfigSuccess": "已添加到配置",
    "removeFromConfigSuccess": "已从配置移除",
    "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}}",
    "proxyRequiredForSwitch": "此供应商{{reason}}，需要路由服务才能正常使用，请先启动路由",
    "proxyReasonCopilot": "使用 GitHub Copilot 作为 Claude 供应商",
    "proxyReasonOpenAIChat": "使用 OpenAI Chat 接口格式",
    "proxyReasonOpenAIResponses": "使用 OpenAI Responses 接口格式",
    "proxyReasonFullUrl": "开启了完整 URL 连接模式",
    "openAIFormatHint": "此供应商使用 OpenAI 兼容格式，需要开启路由服务才能正常使用",
    "copilotProxyHint": "GitHub Copilot 作为 Claude 供应商时始终需要本地路由；路由会根据当前模型自动选择 Chat Completions 或 Responses。",
    "openLinkFailed": "链接打开失败",
    "openclawModelsRegistered": "模型已注册到 /model 列表",
    "openclawDefaultModelSet": "已设为默认模型",
    "openclawDefaultModelSetFailed": "设置默认模型失败",
    "openclawNoModels": "该供应商没有配置模型",
    "backfillWarning": "切换成功，但旧供应商配置回填失败，您手动修改的配置可能未保存",
    "windowControlFailed": "窗口控制失败：{{error}}",
    "officialBlockedByProxy": "本地路由模式下不能切换到官方供应商，使用路由访问官方 API 可能导致账号被封禁",
    "proxyOfficialWarning": "当前供应商 {{name}} 是官方供应商，建议切换到第三方供应商后再使用本地路由"
  },
  "confirm": {
    "deleteProvider": "删除供应商",
    "deleteProviderMessage": "确定要删除供应商 \"{{name}}\" 吗？此操作无法撤销。",
    "removeProvider": "移除供应商",
    "removeProviderMessage": "确定要从配置中移除供应商 \"{{name}}\" 吗？\n\n移除后该供应商将不再生效，但配置数据会保留在 CC Switch 中，您可以随时重新添加。",
    "proxy": {
      "title": "启用本地路由服务",
      "message": "本地路由是一项高级功能，启用前请确保您已了解其工作原理。\n\n建议先查阅相关文档或咨询您的供应商，以获取正确的配置方式。",
      "confirm": "我已了解，继续启用"
    },
    "failover": {
      "title": "启用故障转移功能",
      "message": "故障转移是一项高级功能，启用前请确保您已了解其工作原理。\n\n建议先在故障转移队列中配置好供应商优先级。",
      "confirm": "我已了解，继续启用"
    },
    "usage": {
      "title": "配置用量查询",
      "message": "用量查询需要配置专用的查询脚本或 API 参数，请确保您已从供应商处获取相关信息。\n\n如不确定如何配置，请先查阅供应商文档。",
      "confirm": "我已了解，继续配置"
    },
    "streamCheck": {
      "title": "模型健康检测",
      "message": "健康检测通过直接发送 API 请求来测试供应商连通性，以下情况可能导致检测失败：\n\n• 官方供应商（使用 OAuth 登录，无独立 API Key）\n• 部分中转服务（会校验请求是否来自 Claude Code CLI）\n• AWS Bedrock（使用 IAM 签名认证）\n\n检测失败不代表供应商不可用，仅表示无法通过独立请求验证。请以应用内的实际情况为准。",
      "confirm": "我已了解，继续检测"
    },
    "autoSync": {
      "title": "开启自动同步",
      "message": "开启自动同步后，每次数据库变更都会自动上传到 WebDAV 服务器。\n\n这可能会产生较高的网络流量消耗，请确保您的网络环境和 WebDAV 服务支持频繁的数据传输。",
      "confirm": "我已了解，继续开启"
    },
    "commonConfig": {
      "title": "关于通用配置",
      "message": "「通用配置片段」可以在不同供应商之间共享插件、环境变量等配置，避免切换供应商时丢失这些设置。\n\n使用方法：\n① 编辑供应商时点击「编辑通用配置」→「从编辑内容提取」\n② 新建供应商时勾选「写入通用配置」（默认已勾选）\n\n如果您新安装了插件或 Hook，请重新提取一次通用配置。",
      "confirm": "我知道了"
    }
  },
  "settings": {
    "title": "设置",
    "general": "通用",
    "tabGeneral": "通用",
    "tabAuth": "认证",
    "tabAdvanced": "高级",
    "tabProxy": "路由",
    "authCenter": {
      "title": "OAuth 认证中心",
      "description": "在 Claude Code 中使用您的其他订阅，请注意合规风险。",
      "beta": "Beta",
      "copilotDescription": "管理 GitHub Copilot 账号",
      "codexOauthDescription": "管理 ChatGPT 账号"
    },
    "advanced": {
      "configDir": {
        "title": "配置文件目录",
        "description": "管理 Claude、Codex 和 Gemini 的配置存储路径"
      },
      "proxy": {
        "title": "本地路由",
        "description": "控制路由服务开关、查看状态与端口信息",
        "enableFeature": "在主页面显示本地路由开关",
        "enableFeatureDescription": "开启后，主页面顶部将显示路由和故障转移开关",
        "enableFailoverToggle": "在主页面显示故障转移开关",
        "enableFailoverToggleDescription": "开启后，主页面顶部将独立显示故障转移开关",
        "running": "运行中",
        "stopped": "已停止"
      },
      "modelTest": {
        "title": "模型测试配置",
        "description": "配置模型测试使用的默认模型和提示词"
      },
      "failover": {
        "title": "自动故障转移",
        "description": "配置故障转移队列和熔断策略"
      },
      "pricing": {
        "title": "成本定价",
        "description": "管理各模型 Token 计费规则"
      },
      "globalProxy": {
        "title": "全局出站代理",
        "description": "配置 CC Switch 访问外部 API 时使用的代理"
      },
      "data": {
        "title": "数据管理",
        "description": "导入和导出本地配置数据"
      },
      "backup": {
        "title": "备份与恢复",
        "description": "管理自动备份，查看和恢复数据库快照"
      },
      "cloudSync": {
        "title": "云同步",
        "description": "通过 WebDAV 在多设备间同步数据"
      },
      "rectifier": {
        "title": "整流器",
        "description": "自动修复 API 请求中的兼容性问题",
        "enabled": "启用整流器",
        "enabledDescription": "总开关，关闭后所有整流功能将被禁用",
        "requestGroup": "请求整流",
        "responseGroup": "响应整流",
        "thinkingSignature": "Thinking 签名整流",
        "thinkingSignatureDescription": "当 Anthropic 类型供应商返回 thinking 签名不兼容或非法请求等错误时，自动移除不兼容的 thinking 相关块并对同一供应商重试一次",
        "thinkingBudget": "Thinking Budget 整流",
        "thinkingBudgetDescription": "当 Anthropic 类型供应商返回 budget_tokens 约束错误（如至少 1024）时，自动将 thinking 规范为 enabled 并将 budget 设为 32000，同时在需要时将 max_tokens 设为 64000，然后重试一次"
      },
      "optimizer": {
        "title": "Bedrock 请求优化器",
        "description": "在请求发送前自动优化 Thinking 和 Cache 配置（仅 Bedrock 供应商生效）",
        "enabled": "启用优化器",
        "thinkingOptimizer": "Thinking 优化",
        "thinkingOptimizerDescription": "自动为 Opus/Sonnet 启用 Adaptive Thinking，为旧模型注入 Extended Thinking",
        "cacheInjection": "Cache 注入",
        "cacheInjectionDescription": "自动在请求关键位置注入 Cache 断点，减少重复 token 计费",
        "cacheTtl": "Cache TTL",
        "cacheTtl5m": "5 分钟",
        "cacheTtl1h": "1 小时"
      },
      "logConfig": {
        "title": "日志管理",
        "description": "控制日志输出级别",
        "enabled": "启用日志",
        "enabledDescription": "总开关，关闭后所有日志将被禁用",
        "level": "日志级别",
        "levelDescription": "设置输出的最低日志级别",
        "levels": {
          "error": "错误",
          "warn": "警告",
          "info": "信息",
          "debug": "调试",
          "trace": "跟踪"
        },
        "levelHint": "日志级别说明：",
        "levelDesc": {
          "error": "仅严重错误",
          "warn": "错误 + 警告信息",
          "info": "一般操作信息（默认）",
          "debug": "详细信息，包含 SSE 流和请求/响应详情",
          "trace": "全部日志，最详细"
        }
      }
    },
    "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",
    "backupManager": {
      "title": "数据库备份",
      "description": "自动备份的数据库快照，可用于恢复到之前的状态",
      "empty": "暂无备份",
      "restore": "恢复",
      "restoring": "恢复中...",
      "confirmTitle": "确认恢复备份",
      "confirmMessage": "恢复到此备份将覆盖当前数据库。恢复前会自动创建安全备份。",
      "restoreSuccess": "恢复成功！安全备份已创建",
      "restoreFailed": "恢复失败",
      "safetyBackupId": "安全备份ID",
      "intervalLabel": "自动备份间隔",
      "retainLabel": "备份保留数量",
      "intervalDisabled": "禁用",
      "intervalHours": "{{hours}} 小时",
      "intervalDays": "{{days}} 天",
      "rename": "重命名",
      "renameSuccess": "备份重命名成功",
      "renameFailed": "重命名失败",
      "namePlaceholder": "输入新名称",
      "createBackup": "立即备份",
      "creating": "备份中...",
      "createSuccess": "备份创建成功",
      "createFailed": "备份创建失败",
      "delete": "删除",
      "deleting": "删除中...",
      "deleteSuccess": "备份已删除",
      "deleteFailed": "删除失败",
      "deleteConfirmTitle": "确认删除备份",
      "deleteConfirmMessage": "此备份将被永久删除，此操作无法撤消。"
    },
    "webdavSync": {
      "title": "WebDAV 云同步",
      "description": "通过 WebDAV 在多设备间同步数据库和技能配置。",
      "baseUrl": "WebDAV 服务器地址",
      "baseUrlPlaceholder": "https://dav.jianguoyun.com/dav/",
      "username": "WebDAV 账户",
      "usernamePlaceholder": "邮箱账号",
      "password": "WebDAV 密码",
      "passwordPlaceholder": "应用密码（坚果云请使用「第三方应用密码」）",
      "remoteRoot": "远程根目录",
      "profile": "同步配置名",
      "autoSync": "自动同步",
      "autoSyncHint": "开启后每次数据库变更都会自动上传到 WebDAV。",
      "test": "测试连接",
      "testing": "测试中...",
      "testSuccess": "连接成功",
      "testFailed": "连接失败：{{error}}",
      "save": "保存配置",
      "saving": "保存中...",
      "saveFailed": "保存配置失败：{{error}}",
      "upload": "上传到云端",
      "uploading": "上传中...",
      "uploadSuccess": "已上传到 WebDAV",
      "uploadFailed": "上传失败：{{error}}",
      "autoSyncFailedToast": "自动同步失败：{{error}}",
      "download": "从云端下载",
      "downloading": "下载中...",
      "downloadSuccess": "已从 WebDAV 下载并恢复",
      "downloadFailed": "下载失败：{{error}}",
      "lastSync": "上次同步：{{time}}",
      "autoSyncLastErrorTitle": "上次自动同步失败",
      "autoSyncLastErrorHint": "请检查网络或 WebDAV 配置，系统会在后续变更时继续自动重试。",
      "missingUrl": "请填写 WebDAV 服务器地址",
      "presets": {
        "label": "服务商",
        "jianguoyun": "坚果云",
        "jianguoyunHint": "请在坚果云「安全选项」中生成「第三方应用密码」，不要使用登录密码。",
        "nextcloud": "Nextcloud",
        "nextcloudHint": "请将 your-server 替换为你的 Nextcloud 服务器地址，USERNAME 替换为你的用户名。",
        "synology": "群晖 NAS",
        "synologyHint": "请先在群晖「套件中心」安装并启用 WebDAV Server 套件。",
        "custom": "自定义"
      },
      "remoteRootDefault": "默认: cc-switch-sync",
      "profileDefault": "默认: default",
      "saveAndTestSuccess": "配置已保存，连接正常",
      "saveAndTestFailed": "配置已保存，但连接测试失败：{{error}}",
      "noRemoteData": "云端没有找到同步数据",
      "incompatibleVersion": "远端数据版本不兼容（协议 v{{protocolVersion}}，数据库 {{dbCompatVersion}}），当前支持协议 v2 / db-v6",
      "unsaved": "未保存",
      "saved": "已保存",
      "unsavedChanges": "请先保存配置",
      "saveBeforeSync": "请先保存配置，再使用上传/下载。",
      "fetchingRemote": "获取远端信息...",
      "fetchRemoteFailed": "获取远端信息失败，请检查配置和网络后重试。",
      "confirmDownload": {
        "title": "从云端恢复",
        "deviceName": "上传设备",
        "createdAt": "上传时间",
        "path": "远端路径",
        "dbCompat": "数据库兼容层",
        "artifacts": "包含内容",
        "legacyNotice": "检测到旧版云端路径。恢复完成后，下次上传将写入新路径 v2/db-v6。",
        "warning": "恢复将覆盖本地所有数据和技能配置",
        "confirm": "确认恢复"
      },
      "confirmUpload": {
        "title": "上传到云端",
        "content": "将同步以下内容到 WebDAV 服务器：",
        "dbItem": "数据库（所有 Provider 配置和数据）",
        "skillsItem": "技能包（所有自定义技能）",
        "targetPath": "目标路径",
        "existingData": "云端已有数据",
        "deviceName": "上传设备",
        "createdAt": "上传时间",
        "path": "远端路径",
        "dbCompat": "数据库兼容层",
        "warning": "将覆盖云端已有的同步数据",
        "legacyNotice": "检测到旧版云端路径数据。本次上传将写入新路径 v2/db-v6，不会覆盖旧路径。",
        "confirm": "确认上传"
      }
    },
    "autoReload": "数据已刷新",
    "languageOptionChinese": "中文",
    "languageOptionEnglish": "English",
    "languageOptionJapanese": "日本語",
    "windowBehavior": "窗口行为",
    "windowBehaviorHint": "配置窗口最小化与 Claude 插件联动策略。",
    "launchOnStartup": "开机自启",
    "launchOnStartupDescription": "随系统启动自动运行 CC Switch",
    "silentStartup": "静默启动",
    "silentStartupDescription": "程序启动时不显示主窗口，仅在系统托盘运行",
    "autoLaunchFailed": "设置开机自启失败",
    "minimizeToTray": "关闭时最小化到托盘",
    "minimizeToTrayDescription": "勾选后点击关闭按钮会隐藏到系统托盘，取消则直接退出应用。",
    "useAppWindowControls": "启用应用级窗口按钮",
    "useAppWindowControlsDescription": "开启后使用应用自建的最小化、最大化/还原、关闭按钮；关闭后沿用系统窗口模式。",
    "enableClaudePluginIntegration": "应用到 Claude Code 插件",
    "enableClaudePluginIntegrationDescription": "开启后 Vscode Claude Code 插件的供应商将随本软件切换",
    "skipClaudeOnboarding": "跳过 Claude Code 初次安装确认",
    "skipClaudeOnboardingDescription": "开启后跳过 Claude Code 初次安装确认",
    "appVisibility": {
      "title": "主页面显示",
      "description": "选择在主页面显示的应用",
      "claudeDesc": "Anthropic Claude Code CLI",
      "codexDesc": "OpenAI Codex CLI",
      "geminiDesc": "Google Gemini CLI",
      "opencodeDesc": "OpenCode CLI"
    },
    "skillStorage": {
      "title": "Skills 存储位置",
      "description": "选择 CC Switch 存放 Skills 主副本的目录",
      "ccSwitch": "CC Switch",
      "unified": "~/.agents/skills",
      "ccSwitchHint": "技能存储在 ~/.cc-switch/skills/，由 CC Switch 统一管理并同步到各应用。",
      "unifiedHint": "技能存储在 ~/.agents/skills/，遵循 Agent Skills 开放标准。兼容的工具（Claude Code、Codex、Gemini CLI 等）可直接发现此目录中的技能。",
      "confirmTitle": "迁移技能存储",
      "confirmMessage": "将移动 {{count}} 个技能到新位置，是否继续？",
      "migrationSuccess": "已成功迁移 {{count}} 个技能",
      "migrationPartial": "迁移了 {{migrated}} 个技能，{{errors}} 个失败，请查看日志"
    },
    "skillSync": {
      "title": "Skills 同步方式",
      "description": "选择 Skills 的文件同步策略",
      "symlink": "软连接",
      "copy": "文件复制",
      "symlinkHint": "软连接节省磁盘空间并支持实时同步。注意：Windows 可能需要管理员权限或开启开发者模式"
    },
    "terminal": {
      "title": "首选终端",
      "description": "选择点击终端按钮时使用的终端应用",
      "fallbackHint": "如果选择的终端不可用，将自动使用系统默认终端",
      "options": {
        "macos": {
          "terminal": "Terminal.app",
          "iterm2": "iTerm2",
          "alacritty": "Alacritty",
          "kitty": "Kitty",
          "ghostty": "Ghostty",
          "wezterm": "WezTerm",
          "kaku": "Kaku",
          "warp": "Warp"
        },
        "windows": {
          "cmd": "命令提示符",
          "powershell": "PowerShell",
          "wt": "Windows Terminal"
        },
        "linux": {
          "gnomeTerminal": "GNOME Terminal",
          "konsole": "Konsole",
          "xfce4Terminal": "Xfce4 Terminal",
          "alacritty": "Alacritty",
          "kitty": "Kitty",
          "ghostty": "Ghostty"
        }
      }
    },
    "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)。",
    "opencodeConfigDir": "OpenCode 配置目录",
    "opencodeConfigDirDescription": "覆盖 OpenCode 配置目录 (opencode.json)。",
    "openclawConfigDir": "OpenClaw 配置目录",
    "openclawConfigDirDescription": "覆盖 OpenClaw 配置目录 (openclaw.json)。",
    "hermesConfigDir": "Hermes 配置目录",
    "hermesConfigDirDescription": "覆盖 Hermes 配置目录 (config.yaml)。",
    "browsePlaceholderClaude": "例如：/home/<你的用户名>/.claude",
    "browsePlaceholderCodex": "例如：/home/<你的用户名>/.codex",
    "browsePlaceholderGemini": "例如：/home/<你的用户名>/.gemini",
    "browsePlaceholderOpencode": "例如：/home/<你的用户名>/.config/opencode",
    "browsePlaceholderOpenclaw": "例如：/home/<你的用户名>/.openclaw",
    "browsePlaceholderHermes": "例如：/home/<你的用户名>/.hermes",
    "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 / OpenCode",
    "localEnvCheck": "本地环境检查",
    "envBadge": {
      "wsl": "WSL",
      "windows": "Win",
      "macos": "macOS",
      "linux": "Linux"
    },
    "wslShell": "Shell",
    "wslShellFlag": "标志",
    "installCommandsCopied": "安装命令已复制",
    "installCommandsCopyFailed": "复制失败，请手动复制。",
    "importFailedError": "导入配置失败：{{message}}",
    "exportFailedError": "导出配置失败:",
    "restartRequired": "需要重启应用",
    "restartRequiredMessage": "修改 CC Switch 配置目录后需要重启应用才能生效，是否立即重启？",
    "restartNow": "立即重启",
    "restartLater": "稍后重启",
    "restartFailed": "应用重启失败，请手动关闭后重新打开。",
    "devModeRestartHint": "开发模式下不支持自动重启，请手动重新启动应用。",
    "saving": "正在保存...",
    "globalProxy": {
      "label": "全局代理",
      "hint": "代理所有请求（API、Skills 下载等）。开启本地路由时，应用的请求也会经过此代理。留空表示直连。",
      "username": "用户名（可选）",
      "password": "密码（可选）",
      "test": "测试连接",
      "scan": "扫描本地代理",
      "clear": "清除",
      "scanFailed": "扫描失败：{{error}}",
      "saved": "代理设置已保存",
      "saveFailed": "保存失败：{{error}}",
      "testSuccess": "连接成功！延迟 {{latency}}ms",
      "testFailed": "连接失败：{{error}}",
      "pricingDefaultsTitle": "计费默认配置",
      "pricingDefaultsDescription": "设置各应用的默认倍率与计费模式来源。",
      "pricingAppLabel": "应用",
      "defaultCostMultiplierLabel": "默认倍率",
      "defaultCostMultiplierHint": "用于成本计算的倍率，支持小数。",
      "pricingModelSourceLabel": "计费模式",
      "pricingModelSourceRequest": "请求模型",
      "pricingModelSourceResponse": "返回模型",
      "pricingSave": "保存计费配置",
      "pricingSaved": "计费配置已保存",
      "pricingSaveFailed": "保存计费配置失败：{{error}}",
      "pricingLoadFailed": "加载计费配置失败：{{error}}",
      "defaultCostMultiplierRequired": "默认倍率不能为空",
      "defaultCostMultiplierInvalid": "默认倍率格式不正确"
    },
    "saveFailedGeneric": "保存失败，请重试"
  },
  "apps": {
    "claude": "Claude",
    "claudeDesktop": "Claude Desktop",
    "claude-desktop": "Claude Desktop",
    "codex": "Codex",
    "gemini": "Gemini",
    "opencode": "OpenCode",
    "openclaw": "OpenClaw",
    "hermes": "Hermes"
  },
  "sessionManager": {
    "title": "会话管理",
    "subtitle": "管理 Claude Code、Codex、OpenCode、OpenClaw、Hermes 与 Gemini CLI 会话记录",
    "searchPlaceholder": "搜索会话内容、目录或 ID",
    "searchSessions": "搜索会话",
    "providerFilterAll": "全部",
    "sessionList": "会话列表",
    "manageBatchTooltip": "进入批量管理",
    "exitBatchModeTooltip": "退出批量管理",
    "batchModeHint": "勾选要删除的会话",
    "selectForBatch": "选择会话",
    "selectedCount": "已选 {{count}} 项",
    "selectAllFiltered": "全选当前",
    "clearFilteredSelection": "取消全选",
    "clearSelection": "清空已选",
    "deleteSelected": "批量删除",
    "batchDeleting": "删除中...",
    "loadingSessions": "加载会话中...",
    "noSessions": "未发现会话",
    "selectSession": "请选择会话查看详情",
    "noSummary": "暂无摘要",
    "lastActive": "最近活跃",
    "projectDir": "项目目录",
    "sourcePath": "原始文件",
    "copyResumeCommand": "复制恢复命令",
    "resumeCommandCopied": "恢复命令已复制",
    "openInTerminal": "在终端恢复",
    "terminalTargetTerminal": "Terminal",
    "terminalTargetKitty": "kitty",
    "terminalTargetCopy": "仅复制",
    "terminalLaunched": "终端已启动",
    "openFailed": "终端启动失败",
    "resumeFallbackCopied": "已复制恢复命令，可手动粘贴到终端",
    "copyProjectDir": "复制目录",
    "projectDirCopied": "目录已复制",
    "copySourcePath": "复制原始文件",
    "sourcePathCopied": "原始文件已复制",
    "delete": "删除会话",
    "deleting": "删除中...",
    "deleteTooltip": "永久删除此本地会话记录",
    "deleteConfirmTitle": "删除会话",
    "deleteConfirmMessage": "将永久删除本地会话“{{title}}”\nSession ID: {{sessionId}}\n\n此操作不可恢复。",
    "deleteConfirmAction": "删除会话",
    "sessionDeleted": "会话已删除",
    "deleteFailed": "删除会话失败: {{error}}",
    "batchDeleteConfirmTitle": "批量删除会话",
    "batchDeleteConfirmMessage": "将永久删除已选中的 {{count}} 个本地会话记录。\n\n此操作不可恢复。",
    "batchDeleteConfirmAction": "删除所选会话",
    "batchDeleteSuccess": "已删除 {{count}} 个会话",
    "batchDeleteFailed": "{{failed}} 个会话删除失败",
    "batchDeleteRequestFailed": "批量删除失败，请稍后重试",
    "loadingMessages": "加载会话内容中...",
    "emptySession": "该会话暂无可展示内容",
    "clickToCopyPath": "点击复制路径",
    "tocTitle": "对话目录",
    "justNow": "刚刚",
    "minutesAgo": "{{count}} 分钟前",
    "hoursAgo": "{{count}} 小时前",
    "daysAgo": "{{count}} 天前",
    "roleUser": "用户",
    "roleSystem": "系统",
    "roleTool": "工具",
    "resume": "恢复会话",
    "resumeTooltip": "在终端中恢复此会话",
    "noResumeCommand": "此会话无法恢复",
    "copyCommand": "复制命令",
    "copyMessage": "复制消息",
    "messageCopied": "已复制消息内容",
    "conversationHistory": "对话记录",
    "expandContent": "展开完整内容",
    "collapseContent": "收起"
  },
  "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": "💡 自定义配置需手动填写所有必要字段",
    "omoHint": "💡 OMO 配置管理 Agent 模型分配，兼容 oh-my-openagent.jsonc / oh-my-opencode.jsonc",
    "officialHint": "💡 官方供应商使用浏览器登录，无需配置 API Key",
    "getApiKey": "获取 API Key",
    "partnerPromotion": {
      "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%额度奖励！",
      "rightcode": "RightCode 是 CC Switch 的官方合作伙伴，使用此链接注册每次充值均可赠送5%额外额度！",
      "aicodemirror": "AICodeMirror 是 CC Switch 的官方合作伙伴，使用此链接注册可享受8折优惠！",
      "aicoding": "AI Coding 为 CC Switch 的用户提供了特殊优惠，首次充值可以享受 9 折优惠！",
      "crazyrouter": "CrazyRouter 为 CC Switch 的用户提供了特殊优惠，首次充值赠予 30% 额外额度！",
      "sssaicode": "SSAI Code 为 CC Switch 的用户提供了特殊优惠，每次充值赠予额外 $10 额度！",
      "siliconflow": "硅基流动是 CC Switch 的官方合作伙伴",
      "ucloud": "优云智算为CC Switch 的用户提供了特殊优惠，通过此链接注册，可以获得五元平台体验金！",
      "micu": "Micu 是 CC Switch 的官方合作伙伴",
      "ctok": "官网加入CTok社群，订阅套餐。",
      "ddshub": "呆呆兽为CC Switch 的用户提供了特别福利，通过此链接注册后，首单充值可额外赠送 10% 额度（联系群主领取）！",
      "lionccapi": "LionCCAPI 为 CC Switch 的用户提供了特别福利，注册后添加客服微信HSQBJ088888888，发暗号cc-switch备注即可送10美金额度！",
      "shengsuanyun": "胜算云为 CC Switch 的用户提供了特别福利，使用此链接注册的新用户可获 10 元模力及首充 10% 赠送！",
      "lemondata": "Lemon Code 为 CC Switch 的用户提供了特别优惠。使用此链接注册可以获得1美元免费额度。"
    },
    "presets": {
      "ucloud": "优云智算",
      "ucloudCoding": "优云智算Coding Plan",
      "shengsuanyun": "胜算云",
      "openrouter": "OpenRouter",
      "deepseek": "DeepSeek",
      "together": "Together AI"
    },
    "parameterConfig": "参数配置 - {{name}} *",
    "mainModel": "主模型 (可选)",
    "mainModelPlaceholder": "例如: GLM-4.6",
    "fastModel": "快速模型 (可选)",
    "fastModelPlaceholder": "例如: GLM-4.5-Air",
    "modelHint": "💡 留空将使用供应商的默认模型",
    "apiHint": "💡 填写兼容 Claude API 的服务端点地址，不要以斜杠结尾",
    "apiHintOAI": "💡 填写兼容 OpenAI Chat Completions 的服务端点地址，不要以斜杠结尾",
    "apiHintGeminiNative": "💡 建议填写 Gemini Native 的 base URL，例如 https://generativelanguage.googleapis.com 或 https://generativelanguage.googleapis.com/v1beta；代理会自动补全 models/*:generateContent",
    "codexApiHint": "💡 填写兼容 OpenAI Response 格式的服务端点地址",
    "fillSupplierName": "请填写供应商名称",
    "fillConfigContent": "请填写配置内容",
    "fillParameter": "请填写 {{label}}",
    "fillTemplateValue": "请填写 {{label}}",
    "endpointRequired": "非官方供应商请填写 API 端点",
    "apiKeyRequired": "非官方供应商请填写 API Key",
    "softValidation": {
      "title": "配置存在以下问题",
      "hint": "仍要保存吗？保存后切换此供应商时可能失败，可以之后再补全。",
      "saveAnyway": "仍要保存"
    },
    "configJsonError": "配置JSON格式错误，请检查语法",
    "authJsonRequired": "auth.json 必须是 JSON 对象",
    "authJsonError": "auth.json 格式错误，请检查JSON语法",
    "fillAuthJson": "请填写 auth.json 配置",
    "fillApiKey": "请填写 OPENAI_API_KEY",
    "visitWebsite": "访问 {{url}}",
    "anthropicModel": "主模型",
    "anthropicSmallFastModel": "快速模型",
    "apiFormat": "API 格式",
    "apiFormatHint": "选择供应商 API 的输入格式",
    "fullUrlLabel": "完整 URL",
    "fullUrlEnabled": "完整 URL 模式",
    "fullUrlDisabled": "标记为完整 URL",
    "fullUrlHint": "💡 请填写完整请求 URL，并且必须开启路由后使用；路由将直接使用此 URL，不拼接路径",
    "fullUrlHintGeminiNative": "💡 Gemini Native 下，完整 URL 模式同时兼容两类地址：1. 官方/标准 Gemini URL，代理会按模型和流式参数自动归一化；2. 自定义 relay 的完整 URL，代理会尽量原样使用，只补查询参数，不再强行追加 models 路径",
    "apiFormatAnthropic": "Anthropic Messages (原生)",
    "apiFormatOpenAIChat": "OpenAI Chat Completions (需开启路由)",
    "apiFormatOpenAIResponses": "OpenAI Responses API (需开启路由)",
    "apiFormatGeminiNative": "Gemini Native generateContent (需开启路由)",
    "authField": "认证字段",
    "authFieldAuthToken": "ANTHROPIC_AUTH_TOKEN（默认）",
    "authFieldApiKey": "ANTHROPIC_API_KEY",
    "authFieldHint": "选择写入配置的认证环境变量名",
    "apiHintResponses": "💡 填写兼容 OpenAI Responses API 的服务端点地址，不要以斜杠结尾",
    "anthropicDefaultHaikuModel": "Haiku 默认模型",
    "anthropicDefaultSonnetModel": "Sonnet 默认模型",
    "anthropicDefaultOpusModel": "Opus 默认模型",
    "modelPlaceholder": "",
    "smallModelPlaceholder": "",
    "haikuModelPlaceholder": "",
    "modelHelper": "可选：指定默认使用的 Claude 模型，留空则使用系统默认。",
    "modelMappingLabel": "模型映射",
    "modelMappingHint": "如果供应商原生提供 Claude 系列模型，通常无需配置。仅在需要将请求映射到不同模型名称时填写。",
    "quickSetModels": "一键设置",
    "quickSetSuccess": "已将模型名称应用到所有字段",
    "advancedOptionsToggle": "高级选项",
    "advancedOptionsHint": "包含 API 格式、认证字段、模型映射等配置。大多数场景下保持默认即可。",
    "categoryOfficial": "官方",
    "categoryCnOfficial": "开源官方",
    "categoryAggregation": "聚合服务",
    "categoryThirdParty": "第三方",
    "fetchModels": "获取模型列表",
    "fetchingModels": "正在获取...",
    "fetchModelsSuccess": "获取到 {{count}} 个模型",
    "fetchModelsFailed": "获取模型列表失败",
    "fetchModelsEmpty": "未找到可用模型",
    "fetchModelsNeedApiKey": "请先填写 API Key",
    "fetchModelsNeedEndpoint": "请先填写 API 端点",
    "fetchModelsNeedConfig": "请先填写 API 端点和 API Key",
    "fetchModelsAuthFailed": "API Key 无效或无权限",
    "fetchModelsNotSupported": "该供应商不支持获取模型列表",
    "fetchModelsEndpointNotFound": "未找到可用的模型列表端点，请检查 Base URL 或确认供应商是否开放该接口",
    "fetchModelsTimeout": "请求超时，请检查网络连接"
  },
  "copilot": {
    "authSection": "GitHub Copilot 认证",
    "authStatus": "认证状态",
    "authenticated": "已认证: {{username}}",
    "notAuthenticated": "未认证",
    "loginWithGitHub": "使用 GitHub 登录",
    "loginRequired": "请先登录 GitHub Copilot",
    "waitingForAuth": "等待授权中...",
    "enterCode": "请在浏览器中输入验证码：",
    "logout": "注销",
    "authSuccess": "GitHub Copilot 认证成功",
    "authFailed": "认证失败: {{error}}",
    "authTimeout": "认证超时，请重试",
    "tokenExpired": "令牌已过期，请重新认证",
    "accountCount": "{{count}} 个账号",
    "selectAccount": "选择账号",
    "selectAccountPlaceholder": "选择一个 GitHub 账号",
    "useDefaultAccount": "使用默认账号",
    "loggedInAccounts": "已登录账号",
    "defaultAccount": "默认",
    "selected": "已选中",
    "removeAccount": "移除账号",
    "setAsDefault": "设为默认",
    "addAnotherAccount": "添加其他账号",
    "logoutAll": "注销所有账号",
    "retry": "重试",
    "copyCode": "复制代码",
    "migrationFailed": "旧认证数据迁移失败：{{error}}",
    "loadModelsFailed": "加载 Copilot 模型列表失败",
    "deploymentType": "GitHub 部署类型",
    "deploymentGitHubCom": "GitHub.com",
    "deploymentEnterprise": "GitHub Enterprise Server",
    "enterpriseDomainPlaceholder": "例如：company.ghe.com"
  },
  "codexOauth": {
    "authStatus": "认证状态",
    "notAuthenticated": "未认证",
    "loginWithChatGPT": "使用 ChatGPT 登录",
    "loginRequired": "请先登录 ChatGPT 账号",
    "waitingForAuth": "等待授权中...",
    "enterCode": "请在浏览器中输入以下验证码：",
    "accountCount": "{{count}} 个账号",
    "selectAccount": "选择账号",
    "selectAccountPlaceholder": "选择一个 ChatGPT 账号",
    "useDefaultAccount": "使用默认账号",
    "loggedInAccounts": "已登录账号",
    "defaultAccount": "默认",
    "selected": "已选中",
    "removeAccount": "移除账号",
    "setAsDefault": "设为默认",
    "addAnotherAccount": "添加其他账号",
    "logoutAll": "注销所有账号",
    "retry": "重试",
    "copyCode": "复制代码",
    "fastMode": "FAST 模式",
    "fastModeDescription": "发送 service_tier=\"priority\" 换取更低延迟。默认关闭——开启后会按更高速率消耗 ChatGPT 配额。"
  },
  "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}}",
    "empty": "暂无端点"
  },
  "providerAdvanced": {
    "testConfig": "模型测试配置",
    "useCustomConfig": "使用单独配置",
    "testConfigDesc": "为此供应商配置单独的模型测试参数，不启用时使用全局配置。",
    "testModel": "测试模型",
    "testModelPlaceholder": "留空使用全局配置",
    "timeoutSecs": "超时时间（秒）",
    "testPrompt": "测试提示词",
    "degradedThreshold": "降级阈值（毫秒）",
    "maxRetries": "最大重试次数",
    "pricingConfig": "计费配置",
    "useCustomPricing": "使用单独配置",
    "pricingConfigDesc": "为此供应商配置单独的计费参数，不启用时使用全局默认配置。",
    "costMultiplier": "成本倍率",
    "costMultiplierPlaceholder": "留空使用全局默认（1）",
    "costMultiplierHint": "实际成本 = 基础成本 × 倍率，支持小数如 1.5",
    "pricingModelSourceLabel": "计费模式",
    "pricingModelSourceInherit": "继承全局默认",
    "pricingModelSourceRequest": "请求模型",
    "pricingModelSourceResponse": "返回模型",
    "pricingModelSourceHint": "选择按请求模型还是返回模型进行定价匹配"
  },
  "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}}",
    "modelNameHint": "指定使用的模型，将自动更新到 config.toml 中",
    "modelName": "模型名称",
    "modelNamePlaceholder": "例如: gpt-5-codex",
    "contextWindow1M": "1M 上下文窗口",
    "autoCompactLimit": "压缩阈值",
    "autoCompactLimitHint": "上下文 token 数达到此阈值时自动压缩历史"
  },
  "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}}"
  },
  "opencode": {
    "npmPackage": "接口格式",
    "selectPackage": "选择接口格式",
    "npmPackageHint": "选择 AI 服务的 API 接口格式",
    "baseUrl": "Base URL",
    "baseUrlHint": "自定义 API 端点地址",
    "models": "模型配置",
    "modelsHint": "配置可用的模型及其显示名称",
    "addModel": "添加模型",
    "modelId": "模型 ID",
    "modelName": "显示名称",
    "noModels": "暂无模型配置",
    "modelsRequired": "请至少添加一个模型配置",
    "providerKey": "供应商标识",
    "providerKeyPlaceholder": "my-provider",
    "providerKeyHint": "配置文件中的唯一标识符，只能使用小写字母、数字和连字符",
    "providerKeyLockedHint": "该供应商已添加到应用配置中，供应商标识不可修改",
    "providerKeyRequired": "请填写供应商标识",
    "providerKeyDuplicate": "此标识已被使用，请更换",
    "providerKeyInvalid": "标识格式无效，只能使用小写字母、数字和连字符",
    "extraOptions": "额外选项",
    "extraOptionsHint": "配置额外的 SDK 选项，如 timeout、setCacheKey 等。值会自动解析类型（数字、布尔值等）。",
    "addExtraOption": "添加",
    "extraOptionKey": "键名",
    "extraOptionValue": "值",
    "extraOptionKeyPlaceholder": "timeout",
    "extraOptionValuePlaceholder": "600000",
    "noExtraOptions": "暂无额外选项",
    "noModelOptions": "模型选项，点击 + 添加",
    "modelExtraFields": "模型属性",
    "noModelExtraFields": "模型属性 (variants, cost 等)，点击 + 添加",
    "modelExtraFieldKeyPlaceholder": "variants",
    "sdkOptions": "SDK 选项",
    "modelOptionKeyPlaceholder": "provider",
    "modelOptionValuePlaceholder": "{\"order\": [\"baseten\"]}"
  },
  "providerPreset": {
    "label": "预设供应商",
    "custom": "自定义配置",
    "other": "其他",
    "hint": "选择预设后可继续调整下方字段。"
  },
  "usage": {
    "title": "使用统计",
    "subtitle": "查看 AI 模型的使用情况和成本统计",
    "today": "24小时",
    "last7days": "7天",
    "last30days": "30天",
    "presetToday": "当天",
    "preset1d": "1d",
    "preset7d": "7d",
    "preset14d": "14d",
    "preset30d": "30d",
    "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": "状态",
    "multiplier": "倍率",
    "requestModel": "请求模型",
    "responseModel": "返回模型",
    "noData": "暂无数据",
    "unknownProvider": "未知供应商",
    "stream": "流",
    "nonStream": "非流",
    "source": "来源",
    "requestsLabel": "次请求",
    "costLabel": "总成本",
    "appFilter": {
      "all": "全部",
      "claude": "Claude Code",
      "codex": "Codex",
      "gemini": "Gemini"
    },
    "dataSources": "数据来源",
    "dataSource": {
      "proxy": "路由",
      "session_log": "会话日志",
      "codex_db": "Codex 数据库",
      "codex_session": "Codex 会话日志",
      "gemini_session": "Gemini 会话日志"
    },
    "sessionSync": {
      "trigger": "同步会话日志",
      "import": "导入会话",
      "resync": "同步",
      "imported": "从会话日志导入了 {{count}} 条记录",
      "upToDate": "会话日志已是最新",
      "failed": "会话同步失败"
    },
    "totalRecords": "共 {{total}} 条记录",
    "goToPage": "跳转",
    "pageInputPlaceholder": "页码",
    "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": "时间范围",
    "customRange": "日历筛选",
    "customRangeHint": "支持日期与时间",
    "startTime": "开始时间",
    "endTime": "结束时间",
    "input": "Input",
    "output": "Output",
    "cacheWrite": "创建",
    "cacheRead": "命中",
    "baseCost": "基础",
    "costMultiplier": "成本倍率",
    "withMultiplier": "含倍率",
    "requestDetail": "请求详情",
    "requestNotFound": "请求未找到",
    "basicInfo": "基本信息",
    "tokenUsage": "Token 使用量",
    "cacheCreationCost": "缓存写入成本",
    "costBreakdown": "成本明细",
    "performance": "性能信息",
    "latency": "延迟",
    "errorMessage": "错误信息",
    "requests": "请求数",
    "tokens": "Tokens",
    "avgCost": "平均成本",
    "avgLatency": "平均延迟",
    "successRate": "成功率",
    "requestId": "请求 ID",
    "never": "从不",
    "modelId": "模型 ID",
    "modelIdRequired": "模型 ID 不能为空",
    "inputCostPerMillion": "输入成本 (每百万 tokens, USD)",
    "outputCostPerMillion": "输出成本 (每百万 tokens, USD)",
    "invalidPrice": "价格必须为非负数",
    "invalidTimeRange": "请选择完整的开始/结束时间",
    "invalidTimeRangeOrder": "开始时间不能晚于结束时间",
    "timeRangeTooLarge": "时间范围过大，请缩小范围",
    "addPricing": "新增定价",
    "editPricing": "编辑定价",
    "pricingAdded": "定价已添加",
    "pricingUpdated": "定价已更新",
    "cacheReadCostPerMillion": "缓存读取成本 (每百万 tokens, USD)",
    "cacheCreationCostPerMillion": "缓存写入成本 (每百万 tokens, USD)"
  },
  "usageScript": {
    "title": "配置用量查询",
    "enableUsageQuery": "启用用量查询",
    "presetTemplate": "预设模板",
    "requestUrl": "请求地址",
    "requestUrlPlaceholder": "例如：https://api.example.com",
    "method": "HTTP 方法",
    "templateCustom": "自定义",
    "templateGeneral": "通用模板",
    "templateNewAPI": "NewAPI",
    "templateCopilot": "GitHub Copilot",
    "templateTokenPlan": "Token Plan",
    "templateBalance": "官方",
    "copilotAutoAuth": "自动使用 OAuth 认证，无需手动配置凭证",
    "tokenPlanHint": "自动使用供应商的 API Key 和 Base URL 查询 Token Plan 额度",
    "balanceHint": "自动使用供应商的 API Key 查询账户余额",
    "resetDate": "重置日期",
    "premiumRequests": "Premium 请求",
    "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": "格式化失败",
    "supportedVariables": "支持的变量",
    "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",
        "opencode": "OpenCode",
        "openclaw": "OpenClaw",
        "hermes": "Hermes"
      }
    },
    "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}}\" 吗？"
    }
  },
  "workspace": {
    "title": "Workspace 文件管理",
    "manage": "Workspace",
    "files": {
      "agents": "Agent 操作指令和规则",
      "soul": "Agent 人格和沟通风格",
      "user": "用户档案和偏好",
      "identity": "Agent 名称和头像",
      "tools": "本地工具文档",
      "memory": "长期记忆和决策记录",
      "heartbeat": "心跳运行清单",
      "bootstrap": "首次运行仪式",
      "boot": "网关重启清单"
    },
    "editing": "编辑 {{filename}}",
    "saveSuccess": "保存成功",
    "saveFailed": "保存失败",
    "loadFailed": "读取失败",
    "openDirectory": "在文件管理器中打开",
    "dailyMemory": {
      "title": "每日记忆",
      "sectionTitle": "每日记忆",
      "cardTitle": "每日记忆文件",
      "cardDescription": "浏览管理每日记忆",
      "createToday": "添加记忆",
      "empty": "暂无每日记忆文件",
      "loadFailed": "加载每日记忆文件失败",
      "createFailed": "创建每日记忆文件失败",
      "deleteSuccess": "每日记忆文件已删除",
      "deleteFailed": "删除每日记忆文件失败",
      "confirmDeleteTitle": "删除每日记忆",
      "confirmDeleteMessage": "确定删除 {{date}} 的每日记忆吗？此操作不可撤销。",
      "searchPlaceholder": "搜索全文内容...",
      "searchScopeHint": "全文搜索所有每日记忆 ⌘F",
      "searchCloseHint": "Esc 关闭",
      "noSearchResults": "没有找到匹配的每日记忆。",
      "searching": "搜索中...",
      "searchFailed": "搜索失败",
      "matchCount": "{{count}} 处匹配"
    }
  },
  "openclaw": {
    "backupCreated": "已创建备份：{{path}}",
    "providerKey": "供应商标识",
    "providerKeyPlaceholder": "my-provider",
    "providerKeyHint": "配置文件中的唯一标识符，只能使用小写字母、数字和连字符",
    "providerKeyLockedHint": "该供应商已添加到应用配置中，供应商标识不可修改",
    "providerKeyRequired": "请填写供应商标识",
    "providerKeyDuplicate": "此标识已被使用，请更换",
    "providerKeyInvalid": "标识格式无效，只能使用小写字母、数字和连字符",
    "apiProtocol": "API 协议",
    "selectProtocol": "选择 API 协议",
    "apiProtocolHint": "选择与供应商 API 兼容的协议类型。大多数供应商使用 OpenAI Completions 格式。",
    "baseUrl": "API 端点",
    "baseUrlHint": "供应商的 API 端点地址。",
    "models": "模型列表",
    "addModel": "添加模型",
    "noModels": "暂无模型配置。点击添加模型来配置可用模型。",
    "modelId": "模型 ID",
    "modelIdPlaceholder": "claude-3-sonnet",
    "modelName": "显示名称",
    "modelNamePlaceholder": "Claude 3 Sonnet",
    "contextWindow": "上下文窗口",
    "maxTokens": "最大输出 Tokens",
    "reasoning": "推理模式",
    "reasoningOn": "启用",
    "reasoningOff": "关闭",
    "inputTypes": "输入类型",
    "inputCost": "输入价格 ($/M tokens)",
    "outputCost": "输出价格 ($/M tokens)",
    "advancedOptions": "高级选项",
    "cacheReadCost": "缓存读取价格 ($/M tokens)",
    "cacheWriteCost": "缓存写入价格 ($/M tokens)",
    "cacheCostHint": "缓存价格用于计算 Prompt Caching 的成本。如不使用缓存可留空。",
    "modelsHint": "配置该供应商支持的模型。模型 ID 用于 API 调用，显示名称用于界面展示。",
    "userAgent": "发送 User-Agent",
    "userAgentHint": "部分供应商需要浏览器 User-Agent 才能正常访问。",
    "env": {
      "title": "环境变量",
      "description": "管理 openclaw.json 中的环境变量配置（API Key、自定义变量等）",
      "editorHint": "以 JSON 形式编辑整个 env 节点。支持 env.vars、env.shellEnv 等嵌套对象。",
      "objectRequired": "OpenClaw 的 env 必须是 JSON 对象。",
      "invalidJson": "OpenClaw 的 env 必须是合法 JSON。",
      "empty": "OpenClaw 的 env 不能为空。空对象请使用 {}。",
      "keyPlaceholder": "变量名",
      "valuePlaceholder": "值",
      "add": "添加变量",
      "saveSuccess": "环境变量已保存",
      "saveFailed": "保存环境变量失败",
      "loadFailed": "读取环境变量失败",
      "duplicateKey": "检测到重复的变量名: {{key}}"
    },
    "tools": {
      "title": "工具权限",
      "description": "管理 openclaw.json 中的工具权限配置（允许/拒绝列表）",
      "profile": "权限模式",
      "profileMinimal": "最小权限",
      "profileCoding": "编码",
      "profileMessaging": "对话",
      "profileFull": "完全访问",
      "profileUnset": "未设置",
      "unsupportedProfileTitle": "检测到不受支持的工具配置",
      "unsupportedProfileDescription": "当前 tools.profile 的值“{{value}}”不在 OpenClaw 支持列表内。在你手动选择新值之前，它会被保留。",
      "unsupportedProfileLabel": "不受支持",
      "allowList": "允许列表",
      "denyList": "拒绝列表",
      "patternPlaceholder": "工具名称或模式",
      "addAllow": "添加允许",
      "addDeny": "添加拒绝",
      "saveSuccess": "工具权限已保存",
      "saveFailed": "保存工具权限失败",
      "loadFailed": "读取工具权限失败"
    },
    "agents": {
      "title": "Agents 配置",
      "description": "管理 openclaw.json 中的 agents.defaults 配置（默认模型、运行参数等）",
      "modelSection": "模型配置",
      "primaryModel": "默认模型",
      "primaryModelHint": "从已配置供应商的模型中选择默认模型",
      "notSet": "未设置",
      "fallbackModels": "回退模型",
      "fallbackModelsHint": "当主模型不可用时，按优先级依次尝试以下回退模型",
      "addFallback": "添加回退模型",
      "noModels": "暂无已配置的供应商模型。请先添加 OpenClaw 供应商。",
      "notInList": "{{value}} (供应商未配置)",
      "runtimeSection": "运行参数",
      "workspace": "工作区路径",
      "timeout": "超时时间（秒）",
      "contextTokens": "上下文 Token 数",
      "maxConcurrent": "最大并发数",
      "legacyTimeoutTitle": "检测到旧版超时字段",
      "legacyTimeoutDescription": "当前配置仍在使用 agents.defaults.timeout。保存本页面时会迁移为 timeoutSeconds。",
      "saveSuccess": "Agents 配置已保存",
      "saveFailed": "保存 Agents 配置失败",
      "loadFailed": "读取 Agents 配置失败"
    },
    "health": {
      "title": "检测到 OpenClaw 配置警告",
      "invalidToolsProfile": "tools.profile 使用了不受支持的值。OpenClaw 当前只支持 minimal、coding、messaging、full。",
      "legacyTimeout": "agents.defaults.timeout 已废弃。打开并保存 Agents 面板即可迁移到 timeoutSeconds。",
      "stringifiedEnvVars": "env.vars 应为对象，但当前值看起来像被字符串化或已损坏。",
      "stringifiedShellEnv": "env.shellEnv 应为对象，但当前值看起来像被字符串化或已损坏。",
      "parseFailed": "openclaw.json 不是合法 JSON5。请先修复文件，再通过这里编辑。"
    },
    "primaryModel": "默认模型",
    "fallbackModel": "回退模型"
  },
  "hermes": {
    "form": {
      "baseUrl": "API 端点",
      "baseUrlHint": "供应商的 API 端点地址。",
      "providerKey": "供应商标识",
      "providerKeyPlaceholder": "my-provider",
      "providerKeyHint": "只能使用小写字母、数字和连字符。用作 config.yaml 中的供应商名称。",
      "providerKeyLockedHint": "该供应商已添加到 Hermes 配置中，标识不可修改。",
      "providerKeyRequired": "供应商标识不能为空",
      "providerKeyInvalid": "供应商标识只能包含小写字母、数字和连字符",
      "providerKeyDuplicate": "该供应商标识已存在",
      "apiMode": "API 模式",
      "apiModeHint": "供应商 API 协议。请根据端点选择正确的协议。",
      "apiModeChatCompletions": "OpenAI Chat Completions",
      "apiModeAnthropicMessages": "Anthropic Messages",
      "apiModeCodexResponses": "OpenAI Responses",
      "apiModeBedrockConverse": "AWS Bedrock Converse",
      "baseUrlRequired": "API 端点不能为空",
      "baseUrlScheme": "请使用 http:// 或 https:// 开头的地址",
      "baseUrlInvalid": "API 端点不是有效的 URL",
      "models": "模型列表",
      "addModel": "添加模型",
      "noModels": "暂无模型配置。切换到此供应商时将不会更新默认模型。",
      "modelId": "模型 ID",
      "modelIdPlaceholder": "anthropic/claude-opus-4-7",
      "modelName": "显示名称",
      "modelNamePlaceholder": "Claude Opus 4.7",
      "contextLength": "上下文长度",
      "advancedOptions": "高级选项",
      "modelsHint": "切换到此供应商时，第一个模型会写入顶层 model.default。",
      "primaryModel": "默认模型",
      "fallbackModel": "备选模型",
      "providerAdvanced": "供应商高级选项",
      "rateLimitDelay": "请求间隔（秒）",
      "rateLimitDelayHint": "连续请求间的最小间隔秒数（可选）。留空表示无限制。"
    },
    "webui": {
      "open": "打开 Hermes Web UI",
      "offline": "Hermes Web UI 未启动，请先运行 `hermes dashboard` 启动服务。",
      "openFailed": "打开 Hermes Web UI 失败",
      "launchConfirmTitle": "Hermes Dashboard 未启动",
      "launchConfirmMessage": "是否打开终端并运行 `hermes dashboard` 启动服务？\n\n启动完成后会自动打开浏览器。\n\n若终端提示找不到 hermes 或缺少 web 依赖，请先运行：\npip install hermes-agent[web]",
      "launchConfirmAction": "打开终端并启动",
      "launching": "已在终端启动 hermes dashboard",
      "launchFailed": "打开终端失败"
    },
    "memory": {
      "title": "记忆管理",
      "agentTab": "Agent 记忆 (MEMORY.md)",
      "userTab": "用户画像 (USER.md)",
      "usage": "已用 {{current}} / {{limit}} 字符",
      "overLimit": "已超过上限，Hermes 下次加载时会截断",
      "enableOn": "已启用",
      "enableOff": "已禁用",
      "disabledHint": "在重新启用前 Hermes 会跳过此记忆",
      "toggleFailed": "切换记忆状态失败",
      "saveSuccess": "记忆已保存",
      "saveFailed": "保存记忆失败",
      "loadFailed": "读取记忆文件失败",
      "openConfig": "在 Hermes Web UI 调整上限",
      "runtimeNote": "更改将在 Hermes 下次启动或新建会话时生效。"
    }
  },
  "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": "卸载失败",
    "update": "更新",
    "updating": "更新中...",
    "updateAvailable": "可更新",
    "updateSuccess": "技能 {{name}} 已更新到最新版本",
    "updateFailed": "更新失败",
    "checkUpdates": "检查更新",
    "checkingUpdates": "检查中...",
    "noUpdates": "所有技能已是最新版本",
    "updatesFound": "发现 {{count}} 个技能有可用更新",
    "updateAll": "全部更新 ({{count}})",
    "updatingAll": "更新中...",
    "updateAllSuccess": "已成功更新 {{count}} 个技能",
    "error": {
      "skillNotFound": "技能不存在：{{directory}}",
      "missingRepoInfo": "缺少仓库信息（owner 或 name）",
      "downloadTimeout": "下载仓库 {{owner}}/{{name}} 超时（{{timeout}}秒）",
      "downloadTimeoutHint": "请检查网络连接或稍后重试",
      "skillPathNotFound": "仓库 {{owner}}/{{name}} 中未找到技能路径 '{{path}}'",
      "skillDirNotFound": "技能目录不存在：{{path}}",
      "directoryConflict": "技能目录 '{{directory}}' 已被 {{existing_repo}} 占用，无法从 {{new_repo}} 安装",
      "emptyArchive": "下载的压缩包为空",
      "downloadFailed": "下载失败：HTTP {{status}}",
      "allBranchesFailed": "所有分支下载失败，尝试了：{{branches}}",
      "httpError": "HTTP 错误 {{status}}",
      "http403": "GitHub 访问受限，可能是请求频率过高",
      "http404": "仓库或分支不存在，请检查地址",
      "http429": "请求过于频繁，请等待后重试",
      "parseMetadataFailed": "解析技能元数据失败",
      "getHomeDirFailed": "无法获取用户主目录",
      "noSkillsInZip": "ZIP 文件中未找到技能（需包含 SKILL.md 文件）",
      "networkError": "网络错误",
      "fsError": "文件系统错误",
      "unknownError": "未知错误",
      "suggestion": {
        "checkNetwork": "请检查网络连接",
        "checkProxy": "建议配置 HTTP 代理",
        "retryLater": "请稍后重试",
        "checkRepoUrl": "请检查仓库地址和分支名称",
        "checkDiskSpace": "请检查磁盘空间",
        "checkPermission": "请检查目录权限",
        "uninstallFirst": "请先卸载已安装的同名技能",
        "checkZipContent": "请确认 ZIP 文件包含有效的技能目录（含 SKILL.md 文件）"
      }
    },
    "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": "搜索技能名称或仓库名称...",
    "searchSource": {
      "repos": "仓库",
      "skillssh": "skills.sh"
    },
    "skillssh": {
      "searchPlaceholder": "搜索 skills.sh（至少 2 个字符）...",
      "installs": "{{count}} 次安装",
      "loadMore": "加载更多",
      "loading": "正在搜索 skills.sh...",
      "noResults": "未找到 \"{{query}}\" 相关技能",
      "error": "搜索 skills.sh 失败",
      "poweredBy": "由 skills.sh 提供"
    },
    "filter": {
      "placeholder": "状态筛选",
      "all": "全部",
      "installed": "已安装",
      "uninstalled": "未安装",
      "repo": "仓库筛选",
      "allRepos": "全部仓库"
    },
    "noResults": "未找到匹配的技能",
    "noInstalled": "暂无已安装的技能",
    "noInstalledDescription": "从仓库发现并安装技能，或导入已有的技能",
    "discover": "发现技能",
    "import": "导入已有",
    "importDescription": "选择要导入到 CC Switch 统一管理的技能",
    "importSuccess": "成功导入 {{count}} 个技能",
    "importSelected": "导入已选 ({{count}})",
    "noUnmanagedFound": "未发现需要导入的技能。所有技能已在 CC Switch 统一管理中。",
    "foundIn": "发现于",
    "local": "本地",
    "uninstallConfirm": "确定要卸载技能 \"{{name}}\" 吗？这将从所有应用中移除该技能，并在删除前自动创建本地备份。",
    "uninstallInMainPanel": "请在主面板中卸载技能",
    "notFound": "未找到技能",
    "backup": {
      "location": "备份位置: {{path}}"
    },
    "restoreFromBackup": {
      "button": "从备份中恢复",
      "title": "从备份中恢复",
      "description": "选择一个 Skills 备份，将文件恢复到本地并重新加入当前列表。",
      "empty": "暂无可恢复的 Skills 备份",
      "createdAt": "备份时间",
      "path": "备份路径",
      "restore": "恢复",
      "restoring": "恢复中...",
      "delete": "删除",
      "deleting": "删除中...",
      "deleteSuccess": "技能备份 {{name}} 已删除",
      "deleteFailed": "删除技能备份失败",
      "deleteConfirmTitle": "确认删除备份",
      "deleteConfirmMessage": "确定要删除技能备份 \"{{name}}\" 吗？此操作无法撤销。",
      "success": "技能 {{name}} 已从备份恢复",
      "failed": "从备份恢复失败"
    },
    "apps": {
      "claude": "Claude",
      "codex": "Codex",
      "gemini": "Gemini",
      "opencode": "OpenCode",
      "openclaw": "OpenClaw"
    },
    "installFromZip": {
      "button": "从 ZIP 安装",
      "installing": "安装中...",
      "successSingle": "技能 {{name}} 已安装",
      "successMultiple": "成功安装 {{count}} 个技能",
      "noSkillsFound": "ZIP 文件中未找到技能（需包含 SKILL.md 文件）"
    }
  },
  "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。"
    },
    "usageScript": "用量查询",
    "usageScriptEnabled": "已启用",
    "usageScriptDisabled": "未启用",
    "usageApiKey": "用量 API Key",
    "usageBaseUrl": "用量查询地址",
    "usageAutoInterval": "自动查询",
    "usageAutoIntervalValue": "每 {{minutes}} 分钟"
  },
  "iconPicker": {
    "search": "搜索图标",
    "searchPlaceholder": "输入图标名称...",
    "noResults": "未找到匹配的图标",
    "category": {
      "aiProvider": "AI 服务商",
      "cloud": "云平台",
      "tool": "开发工具",
      "other": "其他"
    }
  },
  "providerIcon": {
    "label": "图标",
    "colorLabel": "图标颜色",
    "selectIcon": "选择图标",
    "preview": "预览",
    "clickToChange": "点击更换图标",
    "clickToSelect": "点击选择图标",
    "color": "图标颜色"
  },
  "migration": {
    "success": "配置迁移成功",
    "skillsSuccess": "已自动导入 {{count}} 个技能到统一管理",
    "skillsFailed": "自动导入技能失败",
    "skillsFailedDescription": "请打开 Skills 页面点击“导入已有”手动导入（或重启后再试）。"
  },
  "agents": {
    "title": "智能体"
  },
  "modelTest": {
    "testProvider": "测试模型"
  },
  "health": {
    "operational": "正常",
    "degraded": "降级",
    "failed": "失败",
    "circuitOpen": "熔断",
    "consecutiveFailures": "连续失败 {{count}} 次"
  },
  "failover": {
    "enabled": "{{app}} 故障转移已启用",
    "disabled": "{{app}} 故障转移已关闭",
    "toggleFailed": "操作失败: {{detail}}",
    "inQueue": "已加入",
    "addQueue": "加入",
    "priority": {
      "tooltip": "故障转移优先级 {{priority}}"
    },
    "tooltip": {
      "enabled": "{{app}} 故障转移已启用\n按队列优先级（P1→P2→...）选择供应商",
      "disabled": "启用 {{app}} 故障转移\n将立即切换到队列 P1，并在失败时自动切换到下一个"
    }
  },
  "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}}",
    "takeover": {
      "hint": "选择要路由的应用，启用后该应用的请求将通过本地路由转发",
      "enabled": "{{app}} 路由已启用",
      "disabled": "{{app}} 路由已关闭",
      "failed": "切换路由状态失败: {{detail}}",
      "tooltip": {
        "active": "{{appLabel}} 路由中 - {{address}}:{{port}}\n切换该应用供应商为热切换",
        "broken": "{{appLabel}} 路由中，但路由服务未运行",
        "inactive": "路由 {{appLabel}} 的请求，让该应用请求走本地路由"
      }
    },
    "failover": {
      "proxyRequired": "需要先启动路由服务才能配置故障转移",
      "autoSwitch": "自动故障转移",
      "autoSwitchDescription": "开启后将立即切换到队列 P1，并在请求失败时自动切换到队列中的下一个供应商"
    },
    "failoverQueue": {
      "title": "故障转移队列",
      "description": "管理各应用的供应商故障转移顺序",
      "info": "启用自动故障转移后，将按队列优先级选择供应商（P1 优先）。当请求失败时，系统会按队列顺序依次尝试下一个供应商。",
      "selectProvider": "选择供应商添加到队列",
      "noAvailableProviders": "没有可添加的供应商",
      "empty": "故障转移队列为空。添加供应商以启用自动故障转移。",
      "orderHint": "队列顺序与首页供应商列表顺序一致，可在首页拖拽调整顺序。",
      "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": "错误率超过此值时，即使未达到失败阈值也会打开熔断器",
      "maxRetries": "最大重试次数",
      "timeoutSettings": "超时配置",
      "streamingFirstByte": "流式首字节超时",
      "streamingIdle": "流式静默超时",
      "nonStreaming": "非流式超时",
      "maxRetriesHint": "请求失败时的重试次数（0-10）",
      "streamingFirstByteHint": "等待首个数据块的最大时间，范围 1-120 秒，默认 60 秒",
      "streamingIdleHint": "数据块之间的最大间隔，范围 60-600 秒，填 0 禁用（防止中途卡住）",
      "nonStreamingHint": "非流式请求的总超时时间，范围 60-1200 秒，默认 600 秒（10 分钟）"
    },
    "logging": {
      "enabled": "日志记录已启用",
      "disabled": "日志记录已关闭",
      "failed": "切换日志状态失败"
    },
    "server": {
      "started": "路由服务已启动 - {{address}}:{{port}}",
      "startFailed": "启动路由服务失败: {{detail}}"
    },
    "stoppedWithRestore": "路由服务已关闭，已恢复所有路由配置",
    "stopWithRestoreFailed": "停止失败: {{detail}}"
  },
  "streamCheck": {
    "configSaved": "健康检查配置已保存",
    "configSaveFailed": "保存失败",
    "testModels": "测试模型",
    "claudeModel": "Claude 模型",
    "codexModel": "Codex 模型",
    "geminiModel": "Gemini 模型",
    "checkParams": "检查参数",
    "timeout": "超时时间（秒）",
    "maxRetries": "最大重试次数",
    "degradedThreshold": "降级阈值（毫秒）",
    "testPrompt": "检查提示词",
    "operational": "{{providerName}} 运行正常 ({{responseTimeMs}}ms)",
    "degraded": "{{providerName}} 响应较慢 ({{responseTimeMs}}ms)",
    "failed": "{{providerName}} 检查失败: {{message}}",
    "rejected": "{{providerName}} 检查被拒: {{message}}",
    "error": "{{providerName}} 检查出错: {{error}}",
    "modelNotFound": "{{providerName}} 测试模型 {{model}} 不存在或已下架",
    "modelNotFoundHint": "该模型可能已被供应商弃用。请在\"模型测试配置\"中更新默认测试模型。",
    "quotaExceeded": "{{providerName}} Coding Plan 额度已用尽",
    "quotaExceededHint": "百度千帆返回了 Coding Plan 超额错误。请等待 5 小时/每周/每月额度刷新，或在千帆控制台切换套餐。",
    "httpHint": {
      "400": "供应商拒绝了请求格式。健康检查的探测格式可能与实际使用不同。",
      "401": "API Key 可能无效，或供应商使用 OAuth 等认证方式。检查失败不代表实际不可用。",
      "402": "账户配额或计费问题。",
      "403": "供应商拒绝了此请求。部分供应商会校验客户端身份，检查失败但实际使用可能正常。",
      "404": "接口地址不存在，请检查 Base URL 和 API 路径。",
      "429": "请求频率过高，请稍后重试。",
      "5xx": "供应商内部错误，通常是临时问题。"
    }
  },
  "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": "保存失败",
    "loading": "加载中...",
    "title": "熔断器配置",
    "description": "调整熔断器参数以控制故障检测和恢复行为",
    "failureThresholdHint": "连续失败多少次后打开熔断器",
    "timeoutSecondsHint": "熔断器打开后多久尝试恢复（半开状态）",
    "successThresholdHint": "半开状态下成功多少次后关闭熔断器",
    "errorRateThresholdHint": "错误率超过此值时打开熔断器",
    "minRequestsHint": "计算错误率前的最小请求数",
    "saveConfig": "保存配置",
    "instructionsTitle": "配置说明",
    "instructions": {
      "failureThreshold": "连续失败达到此次数时，熔断器打开",
      "timeout": "熔断器打开后，等待此时间后尝试半开",
      "successThreshold": "半开状态下，成功达到此次数时关闭熔断器",
      "errorRate": "错误率超过此值时，熔断器打开",
      "minRequests": "只有请求数达到此值后才计算错误率"
    }
  },
  "universalProvider": {
    "duplicate": "复制",
    "duplicatedAndSynced": "统一供应商已复制并同步",
    "duplicateError": "复制统一供应商失败",
    "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": "统一供应商添加失败",
    "hint": "跨应用统一配置，自动同步到 Claude/Codex/Gemini",
    "manage": "管理",
    "loadError": "加载统一供应商失败",
    "saveError": "保存统一供应商失败",
    "deleteError": "删除统一供应商失败",
    "deleteConfirmTitle": "删除统一供应商",
    "deleteConfirmDescription": "确定要删除 \"{{name}}\" 吗？这将同时删除它在各应用中生成的供应商配置。",
    "syncConfirmTitle": "同步统一供应商",
    "syncConfirmDescription": "同步 \"{{name}}\" 将会覆盖 Claude、Codex 和 Gemini 中关联的供应商配置。确定要继续吗？",
    "syncConfirm": "同步",
    "saveAndSync": "保存并同步",
    "savedAndSynced": "已保存并同步到所有应用",
    "saveAndSyncError": "保存并同步失败",
    "configJsonPreview": "配置 JSON 预览",
    "configJsonPreviewHint": "以下是将要同步到各应用的配置内容（仅覆盖显示的字段，保留其他自定义配置）"
  },
  "omo": {
    "editProfile": "编辑 OMO 配置",
    "newProfile": "新建 OMO 配置",
    "profileName": "名称",
    "mainAgents": "主 Agent",
    "subAgents": "子 Agent",
    "categories": "分类",
    "customAgents": "自定义 Agent",
    "noCustomAgents": "暂无自定义 Agent",
    "otherFields": "其他配置",
    "globalConfig": "OMO 全局配置",
    "globalConfigShort": "OMO 配置",
    "globalConfigSaved": "全局配置已保存",
    "addProfile": "添加 OMO 配置",
    "disabledItems": "禁用项设置",
    "advanced": "高级设置",
    "profileCreated": "OMO 配置已创建",
    "profileUpdated": "OMO 配置已更新",
    "invalidJson": "其他字段包含无效 JSON",
    "confirmDelete": "删除配置",
    "confirmDeleteMsg": "确定删除 \"{{name}}\" 吗？",
    "profileDeleted": "配置已删除",
    "imported": "已导入为 \"{{name}}\"",
    "import": "导入",
    "global": "全局",
    "empty": "暂无配置。点击 + 添加或从本地导入。",
    "applied": "已应用",
    "apply": "应用",
    "enable": "启用",
    "enabled": "启用中",
    "disabled": "OMO 已停用",
    "disableFailed": "停用 OMO 失败: {{error}}",
    "selectPlaceholder": "请选择...",
    "clear": "清空",
    "clearWrapped": "（清空）",
    "defaultWrapped": "（默认）",
    "variantPlaceholder": "思考等级",
    "selectEnabledModel": "选择已配置模型",
    "selectModel": "选择已配置模型",
    "recommendedHint": "推荐: {{model}}",
    "searchModel": "搜索模型...",
    "selectModelFirst": "先选择模型",
    "noEnabledModels": "暂无已配置模型",
    "noVariantsForModel": "该模型无思考等级",
    "currentValueNotEnabled": "{{value}}（当前值，未配置）",
    "currentValueUnavailable": "{{value}}（当前值，不可用）",
    "advancedLabel": "高级参数",
    "advancedJsonInvalid": "高级参数 JSON 无效",
    "advancedJsonHint": "temperature, top_p, budgetTokens, prompt_append, permission 等，留空使用默认值",
    "noEnabledModelsWarning": "当前没有可用的已配置模型，请先配置 OpenCode 模型",
    "modelSourcePartialWarning": "部分供应商模型配置无效，已自动跳过。",
    "modelSourceFallbackWarning": "读取 live 供应商状态失败，已回退到已配置供应商列表。",
    "importLocalReplaceSuccess": "已从本地文件导入并覆盖 Agent/Category/Other Fields",
    "importLocalFailed": "读取本地文件失败: {{error}}",
    "agentKeyPlaceholder": "agent 键名",
    "categoryKeyPlaceholder": "分类键名",
    "modelNamePlaceholder": "模型名",
    "custom": "自定义",
    "customCategories": "自定义分类",
    "modelConfiguration": "模型配置",
    "fillRecommended": "填充推荐",
    "fillRecommendedSuccess": "已填充 {{count}} 个推荐模型",
    "fillRecommendedPartial": "已填充 {{filled}} 个推荐模型，{{unmatched}} 个未匹配",
    "fillRecommendedAllSet": "所有槽位已有模型配置",
    "fillRecommendedNoMatch": "推荐模型在已配置的供应商中未找到匹配",
    "configSummary": "已配置 {{agents}} 个 Agent，{{categories}} 个 Category · 点击 ⚙ 展开高级参数",
    "enabledModelsCount": "可选已配置模型 {{count}} 个",
    "source": "来源:",
    "otherFieldsJson": "其他字段 (JSON)",
    "slimOtherFieldsHint": "OMO Slim 的 council、fallback、multiplexer、disabled_mcps、todoContinuation 等顶层配置请写在这里。",
    "searchOrType": "搜索或输入自定义值...",
    "noMatches": "无匹配项",
    "jsonMustBeObject": "{{field}} 必须是 JSON 对象",
    "jsonInvalid": "{{field}} 包含无效 JSON",
    "importGlobalSuccess": "已从本地文件导入全局配置（未保存）",
    "importGlobalFailed": "读取本地文件失败: {{error}}",
    "importLocal": "从本地导入",
    "saveGlobalConfig": "保存全局配置",
    "schemaUrl": "$schema",
    "resetDefault": "重置默认",
    "sisyphusAgentConfig": "Sisyphus Agent 设置",
    "disabledAgents": "Agents",
    "disabledAgentsPlaceholder": "禁用的 Agents",
    "disabledMcps": "MCPs",
    "disabledMcpsPlaceholder": "禁用的 MCPs",
    "disabledHooks": "Hooks",
    "disabledHooksPlaceholder": "禁用的 Hooks",
    "disabledSkills": "Skills",
    "disabledSkillsPlaceholder": "禁用的 Skills",
    "advancedLsp": "LSP 配置",
    "advancedExperimental": "实验性功能",
    "advancedBackgroundTask": "后台任务",
    "advancedBrowserAutomation": "浏览器自动化",
    "advancedClaudeCode": "Claude Code",
    "agentDesc": {
      "sisyphus": "主编排者",
      "hephaestus": "自主深度工作者",
      "prometheus": "战略规划者",
      "atlas": "任务管理者",
      "oracle": "战略顾问",
      "librarian": "多仓库研究员",
      "explore": "快速代码搜索",
      "multimodalLooker": "媒体分析器",
      "metis": "规划前分析顾问",
      "momus": "计划审查者",
      "sisyphusJunior": "委托任务执行器"
    },
    "agentTooltip": {
      "sisyphus": "主编排器，负责任务规划、委派与并行执行，使用扩展思考（32k 预算），通过 TODO 驱动工作流确保任务完成。",
      "atlas": "主编排器（持有 TODO 列表），负责执行阶段的任务分发与协调，不直接完成所有工作而是委派给专业代理。",
      "prometheus": "战略规划师，通过访谈模式收集需求并制定详细工作计划，仅能在 .sisyphus/ 目录读写 Markdown 文件，从不直接写代码。",
      "hephaestus": "自主深度工作者（「合法工匠」），受 AmpCode 深度模式启发，目标导向执行，行动前会并行启动 2-5 个探索/图书管理员代理进行研究。",
      "oracle": "架构决策与调试顾问，只读咨询代理，提供出色的逻辑推理和深度分析，不能写文件或委派任务。",
      "librarian": "多仓库分析与文档检索专家，深度理解代码库并提供基于证据的答案，擅长查找官方文档和开源实现示例。",
      "explore": "快速代码库探索与上下文 grep 专家，使用轻量级模型进行高速搜索，是理解代码结构的先锋。",
      "multimodalLooker": "视觉内容专家，分析 PDF、图片、图表等非文本媒体，提取其中的信息与洞察。",
      "metis": "计划顾问，在规划前进行预分析，识别隐藏意图、模糊点和 AI 失败点，防止过度工程化。",
      "momus": "计划评审员，高精度验证计划的清晰度、可验证性和完整性，拒绝并要求修订直到计划完美。",
      "sisyphusJunior": "类别生成的执行器，由 category 参数自动生成，专注于执行分配的任务且不能再委派，防止无限委派循环。"
    },
    "categoryDesc": {
      "visualEngineering": "视觉/前端工程",
      "ultrabrain": "超级思考",
      "deep": "深度工作",
      "artistry": "创意/文艺",
      "quick": "快速响应",
      "unspecifiedLow": "通用低配",
      "unspecifiedHigh": "通用高配",
      "writing": "写作"
    },
    "categoryTooltip": {
      "visualEngineering": "前端与视觉工程类别，专注于 UI/UX 设计、样式、动画和界面实现，默认使用 Gemini 3 Pro 模型。",
      "ultrabrain": "深度逻辑推理类别，用于需要广泛分析的复杂架构决策，默认使用 GPT-5.3 Codex 的超高推理变体。",
      "deep": "深度自主问题解决类别，目标导向执行，行动前进行彻底研究，适用于需要深度理解的棘手问题。",
      "artistry": "高度创意与艺术性任务类别，激发新颖想法和创造性解决方案，默认使用 Gemini 3 Pro 的最大变体。",
      "quick": "轻量任务类别，用于单文件修改、错别字修复、简单调整等琐碎工作，默认使用 Claude Haiku 4.5 快速模型。",
      "unspecifiedLow": "未归类低工作量任务类别，适用于不适合其他类别且工作量较小的任务，默认使用 Claude Sonnet 4.5。",
      "unspecifiedHigh": "未归类高工作量任务类别，适用于不适合其他类别且工作量较大的任务，默认使用 Claude Opus 4.7 的最大变体。",
      "writing": "写作类别，专注于文档、散文和技术写作，默认使用 Gemini 3 Flash 快速生成模型。"
    },
    "slimAgentDesc": {
      "orchestrator": "编排者",
      "oracle": "神谕者",
      "librarian": "图书管理员",
      "explorer": "探索者",
      "designer": "设计师",
      "fixer": "修复者",
      "council": "议会"
    },
    "slimAgentTooltip": {
      "orchestrator": "编写执行代码，编排多代理工作流，召唤专家",
      "oracle": "根本原因分析、架构审查、调试指导（只读）",
      "librarian": "文档查询、GitHub 代码搜索（只读）",
      "explorer": "正则搜索、AST 模式匹配、文件发现（只读）",
      "designer": "现代响应式设计、CSS/Tailwind 精通",
      "fixer": "代码实现、重构、测试、验证",
      "council": "多模型共识代理，并行运行多个只读 councillor，再由 master 汇总最终答案。"
    }
  },
  "openclawConfig": {
    "defaultModel": {
      "title": "默认模型",
      "description": "配置 OpenClaw 的默认主模型和回退模型",
      "primary": "主模型",
      "primaryPlaceholder": "例如: deepseek/deepseek-chat",
      "fallbacks": "回退模型",
      "fallbacksPlaceholder": "例如: openrouter/anthropic/claude-sonnet-4.5",
      "addFallback": "添加回退模型",
      "saved": "默认模型配置已保存",
      "saveFailed": "保存默认模型失败"
    },
    "modelCatalog": {
      "title": "模型目录",
      "description": "配置可用模型的别名和允许列表",
      "modelId": "模型 ID",
      "modelIdPlaceholder": "例如: deepseek/deepseek-chat",
      "alias": "别名",
      "aliasPlaceholder": "例如: DeepSeek",
      "addEntry": "添加模型",
      "removeEntry": "移除",
      "saved": "模型目录已保存",
      "saveFailed": "保存模型目录失败",
      "empty": "暂无模型目录配置",
      "emptyHint": "添加模型到目录以配置别名"
    },
    "suggestedDefaults": "应用建议默认配置",
    "suggestedDefaultsHint": "使用此预设推荐的默认模型配置"
  },
  "subscription": {
    "title": "订阅额度",
    "fiveHour": "5小时",
    "sevenDay": "7天",
    "sevenDayOpus": "7天(Opus)",
    "sevenDaySonnet": "7天(Sonnet)",
    "geminiPro": "Pro",
    "geminiFlash": "Flash",
    "geminiFlashLite": "Flash Lite",
    "weeklyLimit": "每周",
    "copilotPremium": "高级请求",
    "utilization": "{{value}}%",
    "resetsIn": "{{time}}后重置",
    "extraUsage": "超额用量",
    "expired": "会话已过期",
    "expiredHint": "请运行 {{tool}} 命令刷新登录",
    "queryFailed": "查询失败",
    "refresh": "刷新"
  }
}
