mirror of
https://github.com/tinyhumansai/openhuman.git
synced 2026-07-27 21:08:00 +00:00
4219 lines
248 KiB
TypeScript
4219 lines
248 KiB
TypeScript
import type { TranslationMap } from './types';
|
||
|
||
// Simplified Chinese (简体中文) translations. Keys mirror en.ts; missing/
|
||
// English-identical values fall back to English via I18nContext.resolveEn().
|
||
const messages: TranslationMap = {
|
||
'nav.home': '首页',
|
||
'nav.human': '助手',
|
||
'nav.chat': '对话',
|
||
'nav.connections': '连接',
|
||
'nav.memory': '记忆',
|
||
'nav.alerts': '通知',
|
||
'nav.rewards': '奖励',
|
||
'nav.settings': '设置',
|
||
'common.cancel': '取消',
|
||
'common.save': '保存',
|
||
'common.confirm': '确认',
|
||
'common.delete': '删除',
|
||
'common.edit': '编辑',
|
||
'common.create': '创建',
|
||
'common.search': '搜索',
|
||
'common.loading': '加载中…',
|
||
'common.error': '错误',
|
||
'common.success': '成功',
|
||
'common.back': '返回',
|
||
'common.next': '下一步',
|
||
'common.finish': '完成',
|
||
'common.close': '关闭',
|
||
'common.enabled': '已启用',
|
||
'common.disabled': '已禁用',
|
||
'common.on': '开',
|
||
'common.off': '关',
|
||
'common.yes': '是',
|
||
'common.no': '否',
|
||
'common.ok': '确定',
|
||
'common.name': '名称',
|
||
'common.retry': '重试',
|
||
'common.copy': '复制',
|
||
'common.copied': '已复制',
|
||
'common.learnMore': '了解更多',
|
||
'common.seeAll': '查看全部',
|
||
'common.dismiss': '忽略',
|
||
'common.clear': '清除',
|
||
'common.reset': '重置',
|
||
'common.refresh': '刷新',
|
||
'common.export': '导出',
|
||
'common.import': '导入',
|
||
'common.upload': '上传',
|
||
'common.download': '下载',
|
||
'common.add': '添加',
|
||
'common.remove': '移除',
|
||
'common.showMore': '展开更多',
|
||
'common.showLess': '收起',
|
||
'common.submit': '提交',
|
||
'common.continue': '继续',
|
||
'common.comingSoon': '即将推出',
|
||
'common.breadcrumb': '面包屑',
|
||
'settings.general': '通用',
|
||
'settings.featuresAndAI': '功能与 AI',
|
||
'settings.billingAndRewards': '账单与奖励',
|
||
'settings.support': '支持',
|
||
'settings.advanced': '高级',
|
||
'settings.dangerZone': '危险区域',
|
||
'settings.account': '账户',
|
||
'settings.accountDesc': '恢复短语、团队、连接与隐私',
|
||
'settings.notifications': '通知',
|
||
'settings.notificationsDesc': '免打扰模式与各账户通知控制',
|
||
'settings.notifications.tabs.preferences': '偏好设置',
|
||
'settings.notifications.tabs.routing': '路由',
|
||
'settings.features': '功能',
|
||
'settings.featuresDesc': '屏幕感知、消息与工具',
|
||
'settings.aiModels': 'AI 与模型',
|
||
'settings.aiModelsDesc': '本地 AI 模型设置、下载与 LLM 提供商',
|
||
'settings.ai': 'AI',
|
||
'settings.aiDesc': '云端提供商、本地 Ollama 模型以及按工作负载路由',
|
||
'settings.billingUsage': '账单与用量',
|
||
'settings.billingUsageDesc': '订阅方案、配额与支付方式',
|
||
'settings.rewards': '奖励',
|
||
'settings.rewardsDesc': '邀请、优惠券与获得的配额',
|
||
'settings.restartTour': '重新开始导览',
|
||
'settings.restartTourDesc': '从头开始回放产品导览',
|
||
'settings.about': '关于',
|
||
'settings.aboutDesc': '应用版本与软件更新',
|
||
'settings.developerOptions': '开发者选项',
|
||
'settings.developerOptionsDesc': '诊断、调试面板、Webhook 与记忆检查',
|
||
'settings.clearAppData': '清除应用数据',
|
||
'settings.clearAppDataDesc': '退出登录并永久清除所有本地应用数据',
|
||
'settings.logOut': '退出登录',
|
||
'settings.logOutDesc': '退出当前账户',
|
||
'settings.exitLocalSession': '退出本地会话',
|
||
'settings.exitLocalSessionDesc': '返回登录页面',
|
||
'settings.language': '语言',
|
||
'settings.betaBuild': '测试版本 - v{version}',
|
||
'settings.languageDesc': '应用界面显示语言',
|
||
'settings.alerts': '通知',
|
||
'settings.alertsDesc': '查看收件箱中的最新通知和活动',
|
||
'settings.account.recoveryPhrase': '恢复短语',
|
||
'settings.account.recoveryPhraseDesc': '查看并备份你的账户恢复短语',
|
||
'settings.account.team': '团队',
|
||
'settings.account.teamDesc': '管理团队成员与权限',
|
||
'settings.account.connections': '连接',
|
||
'settings.account.connectionsDesc': '管理已关联的账户与服务',
|
||
'settings.account.privacy': '隐私',
|
||
'settings.account.privacyDesc': '控制哪些数据离开你的电脑',
|
||
'migration.title': '从其他助手导入',
|
||
'migration.description':
|
||
'将记忆和笔记从另一个本地助手迁移到此工作区。先点击「预览」查看将要变更的内容,然后点击「应用」复制数据。当前的记忆会先备份。',
|
||
'migration.vendorLabel': '来源助手',
|
||
'migration.vendor.openclaw': 'OpenClaw',
|
||
'migration.vendor.hermes': 'Hermes Agent',
|
||
'migration.sourceLabel': '来源工作区路径(可选)',
|
||
'migration.sourcePlaceholder': '留空可自动检测(例如 ~/.openclaw/workspace)',
|
||
'migration.sourcePlaceholderHermes': '留空以自动检测(例如 ~/.hermes)',
|
||
'migration.sourceHint':
|
||
'留空时使用该助手的默认位置。如果你已将工作区移到其他位置,请填写明确路径。',
|
||
'migration.previewAction': '预览',
|
||
'migration.previewRunning': '正在预览…',
|
||
'migration.applyAction': '应用导入',
|
||
'migration.applyRunning': '正在导入…',
|
||
'migration.applyDisclaimer': '只有对同一来源完成预览后才能应用。导入前会自动备份现有记忆。',
|
||
'migration.reportTitlePreview': '预览 — 尚未导入任何数据',
|
||
'migration.reportTitleApplied': '导入完成',
|
||
'migration.report.source': '来源工作区',
|
||
'migration.report.target': '目标工作区',
|
||
'migration.report.fromSqlite': '来自 SQLite (brain.db)',
|
||
'migration.report.fromMarkdown': '来自 Markdown',
|
||
'migration.report.imported': '已导入',
|
||
'migration.report.skippedUnchanged': '已跳过(未变更)',
|
||
'migration.report.renamedConflicts': '冲突时已重命名',
|
||
'migration.report.warnings': '警告',
|
||
'migration.report.previewHint': '尚未导入任何数据。点击「应用导入」开始复制。',
|
||
'migration.report.appliedHint': '导入的条目已加入你的记忆。如需再次比较,请重新运行预览。',
|
||
'migration.confirmImport.singular':
|
||
'将 {count} 条数据导入当前工作区?\n\n来源:{source}\n目标:{target}\n\n导入前会先备份现有记忆。',
|
||
'migration.confirmImport.plural':
|
||
'将 {count} 条数据导入当前工作区?\n\n来源:{source}\n目标:{target}\n\n导入前会先备份现有记忆。',
|
||
'settings.notifications.doNotDisturb': '免打扰',
|
||
'settings.notifications.doNotDisturbDesc': '在一定时间内暂停所有通知',
|
||
'settings.notifications.channelControls': '各渠道控制',
|
||
'settings.notifications.channelControlsDesc': '为每个渠道配置通知偏好',
|
||
'settings.features.screenAwareness': '屏幕感知',
|
||
'settings.features.screenAwarenessDesc': '让助手看到你的活动窗口',
|
||
'settings.features.messaging': '消息',
|
||
'settings.features.messagingDesc': '渠道与消息集成设置',
|
||
'settings.features.tools': '工具',
|
||
'settings.features.toolsDesc': '管理已连接的工具与集成',
|
||
'settings.ai.localSetup': '本地 AI 设置',
|
||
'settings.ai.localSetupDesc': '下载并配置本地 AI 模型',
|
||
'settings.ai.llmProvider': 'LLM 提供商',
|
||
'settings.ai.llmProviderDesc': '选择并配置你的 AI 提供商',
|
||
'clearData.title': '清除应用数据',
|
||
'clearData.warning': '这将退出你的账户并永久删除本地应用数据,包括:',
|
||
'clearData.bulletSettings': '应用设置与对话',
|
||
'clearData.bulletCache': '所有本地集成缓存数据',
|
||
'clearData.bulletWorkspace': '工作空间数据',
|
||
'clearData.bulletOther': '所有其他本地数据',
|
||
'clearData.irreversible': '此操作不可撤销。',
|
||
'clearData.clearing': '正在清除应用数据...',
|
||
'clearData.failed': '清除数据失败,请重试。',
|
||
'clearData.failedLogout': '退出登录失败,请重试。',
|
||
'clearData.failedPersist': '清除持久化应用状态失败,请重试。',
|
||
'welcome.title': '欢迎使用 OpenHuman',
|
||
'welcome.subtitle': '你的私人 AI 超级智能。私密、简单、强大。',
|
||
'welcome.connectPrompt': '输入 Core RPC 地址以开始使用',
|
||
'welcome.selectRuntime': '选择运行时',
|
||
'welcome.clearingAppData': '清除应用程序数据...',
|
||
'welcome.clearAppDataAndRestart': '清除应用数据并重启',
|
||
'welcome.clearAppDataWarning':
|
||
'此操作将清除此设备上本地存储的密钥和账户。您的云端账户不受影响——清除后可立即重新登录。',
|
||
'welcome.resetErrorFallback': '无法清除应用数据。请退出并重新打开 OpenHuman,然后重试。',
|
||
'welcome.signingIn': '正在为您签名...',
|
||
'welcome.termsIntro': '继续即表示您同意',
|
||
'welcome.termsOfUse': '条款',
|
||
'welcome.termsJoiner': '和',
|
||
'welcome.privacyPolicy': '隐私政策',
|
||
'welcome.termsOutro': '.',
|
||
'welcome.urlPlaceholder': 'http://localhost:8089',
|
||
'welcome.invalidUrl': '请输入有效的 HTTP 或 HTTPS URL',
|
||
'welcome.connecting': '连接中...',
|
||
'welcome.connect': '连接',
|
||
'home.greeting': '早上好',
|
||
'home.greetingAfternoon': '下午好',
|
||
'home.greetingEvening': '晚上好',
|
||
'home.askAssistant': '向你的助手提问...',
|
||
'home.statusOk': '你的设备已连接。保持应用运行以维持连接,通过下方按钮向你的智能体发送消息。',
|
||
'home.statusBackendOnly': '正在重新连接后端…你的智能体很快将再次可用。',
|
||
'home.statusCoreUnreachable': '本地核心 sidecar 无响应。OpenHuman 后台进程可能已崩溃或未能启动。',
|
||
'home.statusInternetOffline': '你的设备当前处于离线状态。请检查网络或重启应用以重新连接。',
|
||
'home.restartCore': '重启核心',
|
||
'home.restartingCore': '正在重启核心…',
|
||
'home.themeToggle.toLight': '切换到浅色模式',
|
||
'home.themeToggle.toDark': '切换到深色模式',
|
||
'home.usageExhaustedTitle': '您的使用额度已耗尽',
|
||
'home.usageExhaustedBody': '您当前已用完包含的使用额度。开始订阅以解锁更多持续容量。',
|
||
'home.usageExhaustedCta': '开始订阅',
|
||
'home.routinesCard': '我的例程',
|
||
'home.routinesActive': '{count} 个运行中',
|
||
'routines.title': '你的例程',
|
||
'routines.subtitle': '助手自动执行的事项',
|
||
'routines.loading': '正在加载例程…',
|
||
'routines.empty': '暂无例程',
|
||
'routines.emptyHint': '你的助手可以按计划运行任务,例如晨间简报或每日摘要。',
|
||
'routines.refresh': '刷新',
|
||
'routines.nextRun': '下次运行',
|
||
'routines.lastRunSuccess': '上次运行成功',
|
||
'routines.lastRunFailed': '上次运行失败',
|
||
'routines.notRunYet': '尚未运行',
|
||
'routines.runNow': '立即运行',
|
||
'routines.running': '运行中…',
|
||
'routines.viewHistory': '查看历史',
|
||
'routines.loadingHistory': '加载中…',
|
||
'routines.noHistory': '暂无运行历史。',
|
||
'routines.statusSuccess': '成功',
|
||
'routines.statusError': '错误',
|
||
'routines.showOutput': '显示输出',
|
||
'routines.hideOutput': '隐藏输出',
|
||
'routines.toggleEnabled': '启用或禁用此例程',
|
||
'routines.typeAgent': '智能体',
|
||
'routines.typeCommand': '命令',
|
||
'nav.routines': 'Routines',
|
||
'chat.newThread': '新对话',
|
||
'chat.typeMessage': '输入消息...',
|
||
'chat.send': '发送',
|
||
'chat.thinking': '思考中...',
|
||
'chat.noMessages': '暂无消息',
|
||
'chat.startConversation': '开始对话',
|
||
'chat.regenerate': '重新生成',
|
||
'chat.copyResponse': '复制回复',
|
||
'chat.citations': '引用',
|
||
'chat.toolUsed': '已使用的工具',
|
||
'scope.legacy': '旧版',
|
||
'scope.user': '用户',
|
||
'scope.project': '项目',
|
||
'skills.title': '连接',
|
||
'skills.search': '搜索连接...',
|
||
'skills.noResults': '未找到连接',
|
||
'skills.connect': '连接',
|
||
'skills.disconnect': '断开',
|
||
'skills.configure': '配置',
|
||
'skills.connected': '已连接',
|
||
'skills.available': '可用',
|
||
'skills.addAccount': '添加账户',
|
||
'skills.channels': '渠道',
|
||
'skills.integrations': '集成',
|
||
'skills.integrationsSubtitle':
|
||
'基于云端的 OAuth 连接——使用您的账户登录,Composio 代管令牌,让智能体能以您的名义读取数据并执行操作,无需管理 API 密钥。',
|
||
'skills.composio.noApiKeyTitle': '尚未配置 Composio API 密钥',
|
||
'skills.composio.noApiKeyDescription':
|
||
'本地模式使用你自己的 Composio API 密钥。在此连接集成之前,请打开 设置 → 高级 → Composio 添加一个密钥。',
|
||
'skills.composio.noApiKeyCta': '在设置中打开',
|
||
'skills.tabs.composio': 'Composio',
|
||
'skills.tabs.channels': '渠道',
|
||
'skills.tabs.mcp': 'MCP 服务器',
|
||
'skills.tabs.runners': 'Runners',
|
||
'memory.title': '记忆',
|
||
'memory.search': '搜索记忆...',
|
||
'memory.noResults': '未找到记忆',
|
||
'memory.empty': '暂无记忆。记忆将在你交互时自动创建。',
|
||
'memory.tab.memory': '记忆',
|
||
'memory.tab.memoryTree': '记忆树',
|
||
'memory.tab.tasks': '智能体任务',
|
||
'memory.tab.tasksDescription':
|
||
'创建并跟踪任务——包括您自己的待办事项以及智能体在对话中创建的看板。',
|
||
'memory.tab.subconscious': '潜意识',
|
||
'memory.tab.workflows': 'Workflows',
|
||
'memory.tab.workflowsDescription':
|
||
'Lifecycle-bound rule sets that guide how the agent behaves during tasks.',
|
||
'memory.tab.dreams': '梦境',
|
||
'memory.tab.calls': '调用记录',
|
||
'memory.tab.diagram': 'Diagram',
|
||
'memory.tab.centrality': 'Centrality',
|
||
'memory.tab.namespaces': '命名空间',
|
||
'memory.tab.timeline': 'Timeline',
|
||
'memory.tab.settings': '设置',
|
||
'memory.analyzeNow': '立即分析',
|
||
'memoryTimeline.title': 'Memory Timeline',
|
||
'memoryTimeline.intro':
|
||
'When the assistant learned about you — facts grouped by the month they were last reinforced. Surfaces growth, bursts of activity, and quiet stretches.',
|
||
'memoryTimeline.loading': 'Building the timeline…',
|
||
'memoryTimeline.errorPrefix': 'Could not load the graph:',
|
||
'memoryTimeline.retry': 'Retry',
|
||
'memoryTimeline.namespaceLabel': 'Namespace',
|
||
'memoryTimeline.namespaceAll': 'All namespaces',
|
||
'memoryTimeline.empty': 'No knowledge graph yet.',
|
||
'memoryTimeline.emptyHint':
|
||
'As the assistant records facts about you, their timeline will appear here.',
|
||
'memoryTimeline.metricTotal': 'Facts',
|
||
'memoryTimeline.metricMonths': 'Active months',
|
||
'memoryTimeline.metricRecent': 'Last 30 days',
|
||
'memoryTimeline.heading': 'Facts learned per month',
|
||
'memoryTimeline.busiestCaption': 'Busiest: {period} ({count})',
|
||
'memoryTimeline.undatedNote': '{count} fact(s) have no recorded date.',
|
||
'memoryTimeline.truncated': 'Showing the {shown} most recent of {total} months.',
|
||
'namespaceOverview.title': '命名空间概览',
|
||
'namespaceOverview.intro':
|
||
'您的知识如何在各个上下文中分布——每个命名空间中记录的事实和不同实体的数量。',
|
||
'namespaceOverview.loading': '正在汇总命名空间…',
|
||
'namespaceOverview.errorPrefix': '无法加载图谱:',
|
||
'namespaceOverview.retry': '重试',
|
||
'namespaceOverview.empty': '暂无知识图谱。',
|
||
'namespaceOverview.emptyHint': '随着助手在各个上下文中记录事实,每个命名空间都会显示在这里。',
|
||
'namespaceOverview.metricNamespaces': '命名空间',
|
||
'namespaceOverview.metricFacts': '事实',
|
||
'namespaceOverview.metricEntities': '实体',
|
||
'namespaceOverview.heading': '按命名空间',
|
||
'namespaceOverview.unnamespaced': '(无命名空间)',
|
||
'namespaceOverview.factsLabel': '{count} 条事实',
|
||
'namespaceOverview.entitiesLabel': '{count} 个实体',
|
||
'namespaceOverview.entitiesShort': '{count} 实体',
|
||
'namespaceOverview.truncated': '显示 {total} 个命名空间中的前 {shown} 个。',
|
||
'graphCentrality.title': '知识图谱中心性',
|
||
'graphCentrality.intro':
|
||
'对你的记忆图谱运行 PageRank,可找出关键枢纽以及连接原本分离聚类的连接实体,这是单纯频次统计无法揭示的。',
|
||
'graphCentrality.loading': '正在计算中心性…',
|
||
'graphCentrality.errorPrefix': '无法加载图谱:',
|
||
'graphCentrality.retry': '重试',
|
||
'graphCentrality.empty': '暂无知识图谱。',
|
||
'graphCentrality.emptyHint': '随着助手记录与你相关的事实,连接最多的实体会显示在这里。',
|
||
'graphCentrality.namespaceLabel': '命名空间',
|
||
'graphCentrality.namespaceAll': '所有命名空间',
|
||
'graphCentrality.metricEntities': '实体',
|
||
'graphCentrality.metricConnections': '连接',
|
||
'graphCentrality.metricClusters': '聚类',
|
||
'graphCentrality.clustersCaption': '{components} 个聚类 · 最大聚类包含 {largest}',
|
||
'graphCentrality.approximateBadge': '近似',
|
||
'graphCentrality.approximateTitle': '在完全收敛前达到迭代上限并停止',
|
||
'graphCentrality.rankedHeading': '按影响力排名的热门实体',
|
||
'graphCentrality.colRank': '#',
|
||
'graphCentrality.colEntity': '实体',
|
||
'graphCentrality.colInfluence': '影响力',
|
||
'graphCentrality.colLinks': '链接',
|
||
'graphCentrality.bridgeBadge': '连接点',
|
||
'graphCentrality.bridgeTitle': '连接点,影响力高于其链接数量所暗示的程度',
|
||
'graphCentrality.degreeTitle': '{in} 入 · {out} 出',
|
||
'memory.tab.associations': 'Associations',
|
||
'entityAssociations.title': 'Entity Associations',
|
||
'entityAssociations.intro':
|
||
'Entities that share many of the same connections are associated — even when no single fact links them directly. Jaccard similarity surfaces these hidden pairings.',
|
||
'entityAssociations.loading': 'Scoring associations…',
|
||
'entityAssociations.errorPrefix': 'Could not load the graph:',
|
||
'entityAssociations.retry': 'Retry',
|
||
'entityAssociations.empty': 'No associations yet.',
|
||
'entityAssociations.emptyHint':
|
||
'When entities start sharing connections, the strongest pairings will surface here.',
|
||
'entityAssociations.namespaceLabel': 'Namespace',
|
||
'entityAssociations.namespaceAll': 'All namespaces',
|
||
'entityAssociations.metricEntities': 'Entities',
|
||
'entityAssociations.metricPairs': 'Associations',
|
||
'entityAssociations.rankedHeading': 'Strongest associations',
|
||
'entityAssociations.linkedBadge': 'linked',
|
||
'entityAssociations.inferredBadge': 'inferred',
|
||
'entityAssociations.linkedTitle': 'These entities are directly connected.',
|
||
'entityAssociations.inferredTitle':
|
||
'No direct link — associated only through shared connections.',
|
||
'entityAssociations.sharedLabel': '{shared} shared',
|
||
'entityAssociations.pairTitle': '{jaccard}% similar · {shared} of {union} connections shared',
|
||
'entityAssociations.truncated': 'Showing {shown} of {total} — strongest first.',
|
||
'memory.tab.freshness': 'Freshness',
|
||
'memoryFreshness.title': 'Knowledge Freshness',
|
||
'memoryFreshness.intro':
|
||
'Facts the assistant has not reconfirmed lately decay along a forgetting curve. This surfaces what is going stale and worth re-checking, so old facts are not treated as still-certain.',
|
||
'memoryFreshness.loading': 'Scoring freshness…',
|
||
'memoryFreshness.errorPrefix': 'Could not load the graph:',
|
||
'memoryFreshness.retry': 'Retry',
|
||
'memoryFreshness.empty': 'No knowledge graph yet.',
|
||
'memoryFreshness.emptyHint':
|
||
'As the assistant records facts about you, their freshness will be tracked here.',
|
||
'memoryFreshness.namespaceLabel': 'Namespace',
|
||
'memoryFreshness.namespaceAll': 'All namespaces',
|
||
'memoryFreshness.metricFresh': 'Fresh',
|
||
'memoryFreshness.metricFading': 'Fading',
|
||
'memoryFreshness.metricStale': 'Stale',
|
||
'memoryFreshness.recallCaption': 'Average recall {recall}% across {total} facts',
|
||
'memoryFreshness.queueHeading': 'Re-confirm queue',
|
||
'memoryFreshness.queueTruncated': 'Showing {shown} of {total} — address these first.',
|
||
'memoryFreshness.allFresh': 'Every fact is still fresh — nothing to re-confirm.',
|
||
'memoryFreshness.statusFading': 'fading',
|
||
'memoryFreshness.statusStale': 'stale',
|
||
'memoryFreshness.ageLabel': '{days}d old',
|
||
'memoryFreshness.recallTitle': '{recall}% recall · half-life {halfLife}d',
|
||
'memory.tab.path': '路径',
|
||
'connectionPath.title': '连接路径',
|
||
'connectionPath.intro':
|
||
'追溯连接任意两个实体的最短关系链——看看图谱如何将它们关联起来,即使要跨越多个跳数。',
|
||
'connectionPath.loading': '正在加载图谱…',
|
||
'connectionPath.errorPrefix': '无法加载图谱:',
|
||
'connectionPath.retry': '重试',
|
||
'connectionPath.namespaceLabel': '命名空间',
|
||
'connectionPath.namespaceAll': '所有命名空间',
|
||
'connectionPath.sourceLabel': '起点',
|
||
'connectionPath.targetLabel': '终点',
|
||
'connectionPath.sourcePlaceholder': '起始实体',
|
||
'connectionPath.targetPlaceholder': '结束实体',
|
||
'connectionPath.prompt': '选择两个实体以追溯它们之间的连接方式。',
|
||
'connectionPath.empty': '暂无知识图谱。',
|
||
'connectionPath.emptyHint': '助手记录相关事实后,你就可以在这里追溯连接关系。',
|
||
'connectionPath.resultHeading': '最短路径',
|
||
'connectionPath.pathSummary': '相距 {length} 跳',
|
||
'connectionPath.sameMessage': '请选择两个不同的实体。',
|
||
'connectionPath.missingSource': '“{entity}”不在图谱中。',
|
||
'connectionPath.missingTarget': '“{entity}”不在图谱中。',
|
||
'connectionPath.noPath': '未找到“{source}”与“{target}”之间的连接。',
|
||
'memoryTree.status.title': '记忆树',
|
||
'memoryTree.status.autoSyncLabel': '自动同步',
|
||
'memoryTree.status.autoSyncDescription': '暂停后将停止新的摄取。现有 wiki 仍可查询。',
|
||
'memoryTree.status.statusTile': '状态',
|
||
'memoryTree.status.lastSyncTile': '上次同步',
|
||
'memoryTree.status.totalChunksTile': '分块总数',
|
||
'memoryTree.status.wikiSizeTile': 'Wiki 大小',
|
||
'memoryTree.status.statusRunning': '运行中',
|
||
'memoryTree.status.statusPaused': '已暂停',
|
||
'memoryTree.status.statusSyncing': '同步中',
|
||
'memoryTree.status.statusError': '错误',
|
||
'memoryTree.status.statusIdle': '空闲',
|
||
'memoryTree.status.never': '从未',
|
||
'memoryTree.status.fetchError': '无法获取记忆树状态',
|
||
'memoryTree.status.retry': '重试',
|
||
'memoryTree.status.toggleFailed': '无法切换自动同步',
|
||
'memoryTree.status.justNow': '刚刚',
|
||
'memoryTree.status.secondsAgo': '{count} 秒前',
|
||
'memoryTree.status.minuteAgo': '1 分钟前',
|
||
'memoryTree.status.minutesAgo': '{count} 分钟前',
|
||
'memoryTree.status.hourAgo': '1 小时前',
|
||
'memoryTree.status.hoursAgo': '{count} 小时前',
|
||
'memoryTree.status.dayAgo': '1 天前',
|
||
'memoryTree.status.daysAgo': '{count} 天前',
|
||
'alerts.title': '通知',
|
||
'alerts.empty': '暂无通知',
|
||
'alerts.markAllRead': '全部标记为已读',
|
||
'alerts.unread': '未读',
|
||
'rewards.title': '奖励',
|
||
'rewards.referrals': '邀请',
|
||
'rewards.coupons': '优惠券',
|
||
'rewards.localUnavailable':
|
||
'本地登录不会获得奖励、优惠券或推荐积分。若要累计奖励,请先登出,然后使用 OpenHuman 账号登录。',
|
||
'rewards.localUnavailableCta': '打开账户设置',
|
||
'rewards.credits': '配额',
|
||
'rewards.referralCode': '你的邀请码',
|
||
'rewards.copyCode': '复制邀请码',
|
||
'rewards.share': '分享',
|
||
'onboarding.welcome': '欢迎使用 OpenHuman',
|
||
'onboarding.welcomeDesc': '只需几步即可完成设置。',
|
||
'onboarding.context': '上下文收集',
|
||
'onboarding.contextDesc': '连接你日常使用的工具与服务。',
|
||
'onboarding.localAI': '本地 AI',
|
||
'onboarding.localAIDesc': '设置一个运行在你本机的 AI 模型。',
|
||
'onboarding.chatProvider': '对话方式',
|
||
'onboarding.chatProviderDesc': '选择你希望如何与助手交互。',
|
||
'onboarding.referral': '邀请码',
|
||
'onboarding.referralDesc': '如果你有邀请码,可以在此使用。',
|
||
'onboarding.finish': '完成设置',
|
||
'onboarding.finishDesc': '一切就绪!开始使用 OpenHuman。',
|
||
'onboarding.skip': '跳过',
|
||
'onboarding.getStarted': '开始使用',
|
||
'onboarding.runtimeChoice.title': '你希望如何运行 OpenHuman?',
|
||
'onboarding.runtimeChoice.subtitle': '选择最适合你的设置。之后可在设置中更改。',
|
||
'onboarding.runtimeChoice.cloud.title': '简单模式',
|
||
'onboarding.runtimeChoice.cloud.tagline': '让 OpenHuman 为你管理一切。',
|
||
'onboarding.runtimeChoice.cloud.f1': '内置安全保护',
|
||
'onboarding.runtimeChoice.cloud.f2': '令牌压缩,让用量更耐用',
|
||
'onboarding.runtimeChoice.cloud.f3': '一个订阅,包含所有模型',
|
||
'onboarding.runtimeChoice.cloud.f4': '无需管理 API 密钥',
|
||
'onboarding.runtimeChoice.cloud.f5': '设置简单',
|
||
'onboarding.runtimeChoice.custom.title': '自定义运行',
|
||
'onboarding.runtimeChoice.custom.tagline': '使用你自己的密钥。完全掌控使用的服务。',
|
||
'onboarding.runtimeChoice.custom.f1': '几乎所有功能都需要 API 密钥',
|
||
'onboarding.runtimeChoice.custom.f2': '可复用你已经付费的服务',
|
||
'onboarding.runtimeChoice.custom.f3': '如果全部本地运行,也可以免费',
|
||
'onboarding.runtimeChoice.custom.f4': '更多设置,更多可调选项',
|
||
'onboarding.runtimeChoice.custom.f5': '最适合高级用户和开发者',
|
||
'onboarding.runtimeChoice.cloud.creditHighlight': '赠送 $1 额度用于试用',
|
||
'onboarding.runtimeChoice.continueCloud': '继续使用简单模式',
|
||
'onboarding.runtimeChoice.continueCustom': '继续使用自定义模式',
|
||
'onboarding.runtimeChoice.recommended': '推荐',
|
||
'onboarding.apiKeys.title': '添加你的 API 密钥',
|
||
'onboarding.apiKeys.subtitle':
|
||
'你可以现在粘贴,也可以跳过并稍后在设置 › AI 中添加。密钥会加密存储在此设备上。',
|
||
'onboarding.apiKeys.openaiLabel': 'OpenAI API 密钥',
|
||
'onboarding.apiKeys.openaiPlaceholder': 'sk-...',
|
||
'onboarding.apiKeys.openaiOauthHint':
|
||
'使用 ChatGPT Plus/Pro(订阅)或 OpenAI API 密钥 — 并非两者都需要。',
|
||
'onboarding.apiKeys.openaiOauthOpening': '正在打开登录...',
|
||
'onboarding.apiKeys.openaiOauthConnect': '使用 ChatGPT 登录',
|
||
'onboarding.apiKeys.openaiOauthConnected': '已通过 ChatGPT 连接',
|
||
'onboarding.apiKeys.openaiOauthCallbackHint':
|
||
'登录后,粘贴浏览器中的完整重定向 URL(以 {url} 开头)。',
|
||
'onboarding.apiKeys.oauthDesktopOnly': 'ChatGPT 登录仅在桌面应用中可用。',
|
||
'onboarding.apiKeys.oauthStartFailed': '无法启动 ChatGPT 登录。请重试或使用 API 密钥。',
|
||
'onboarding.apiKeys.oauthPasteRedirect': '登录后,粘贴浏览器中的重定向 URL。',
|
||
'onboarding.apiKeys.oauthCompleteFailed': 'ChatGPT 登录未完成。请检查重定向 URL 并重试。',
|
||
'onboarding.apiKeys.finishSignIn': '完成 ChatGPT 登录',
|
||
'onboarding.apiKeys.orApiKey': '或 API 键',
|
||
'onboarding.apiKeys.anthropicLabel': 'Anthropic API 密钥',
|
||
'onboarding.apiKeys.anthropicPlaceholder': 'sk-ant-...',
|
||
'onboarding.apiKeys.saveError': '无法保存该密钥。请仔细检查后重试。',
|
||
'onboarding.apiKeys.skipForNow': '暂时跳过',
|
||
'onboarding.apiKeys.continue': '保存并继续',
|
||
'onboarding.apiKeys.saving': '保存中…',
|
||
'onboarding.custom.stepperInference': '推理',
|
||
'onboarding.custom.stepperVoice': '语音',
|
||
'onboarding.custom.stepperOAuth': 'OAuth',
|
||
'onboarding.custom.stepperSearch': '搜索',
|
||
'onboarding.custom.stepperEmbeddings': 'Embeddings',
|
||
'onboarding.custom.stepperMemory': '记忆',
|
||
'onboarding.custom.stepCounter': '第 {n} 步,共 {total} 步',
|
||
'onboarding.custom.defaultTitle': '默认',
|
||
'onboarding.custom.defaultSubtitle': '让 OpenHuman 为你管理。',
|
||
'onboarding.custom.configureTitle': '配置',
|
||
'onboarding.custom.configureSubtitle': '我来选择使用什么。',
|
||
'onboarding.custom.progressAriaLabel': '入门进度',
|
||
'onboarding.custom.continue': '继续',
|
||
'onboarding.custom.back': '返回',
|
||
'onboarding.custom.finish': '完成设置',
|
||
'onboarding.custom.configureLater':
|
||
'你可以在入门流程结束后继续配置。完成后,我们会带你前往对应的设置页面。',
|
||
'onboarding.custom.openSettings': '在设置中打开',
|
||
'onboarding.custom.inference.title': '推理(文本)',
|
||
'onboarding.custom.inference.subtitle': '哪个语言模型应该回答你的问题并运行你的智能体?',
|
||
'onboarding.custom.inference.defaultDesc':
|
||
'OpenHuman 会为每种工作负载路由到合适的默认模型。无需密钥,无需设置。',
|
||
'onboarding.custom.inference.configureDesc':
|
||
'使用你自己的 OpenAI 或 Anthropic 密钥。我们会将它用于所有文本类工作负载。',
|
||
'onboarding.custom.voice.title': '语音',
|
||
'onboarding.custom.voice.subtitle': '用于语音模式的语音转文本和文本转语音。',
|
||
'onboarding.custom.voice.defaultDesc': 'OpenHuman 内置托管的 STT/TTS,开箱即用。无需额外配置。',
|
||
'onboarding.custom.voice.configureDesc':
|
||
'使用你自己的 ElevenLabs、OpenAI Whisper 等服务。在设置 › 语音中配置。',
|
||
'onboarding.custom.oauth.title': '连接(OAuth)',
|
||
'onboarding.custom.oauth.subtitle': 'Gmail、Slack、Notion 以及其他需要 OAuth 的连接服务。',
|
||
'onboarding.custom.oauth.defaultDesc':
|
||
'OpenHuman 使用托管的 Composio 工作区。之后每个服务都可一键连接。',
|
||
'onboarding.custom.oauth.configureDesc':
|
||
'使用你自己的 Composio 账户或 API 密钥。在设置 › 连接中配置。',
|
||
'onboarding.custom.search.title': '网页搜索',
|
||
'onboarding.custom.search.subtitle': 'OpenHuman 如何代表你搜索网页。',
|
||
'onboarding.custom.search.defaultDesc': 'OpenHuman 使用托管搜索后端。无需密钥。',
|
||
'onboarding.custom.search.configureDesc':
|
||
'使用你自己的搜索提供商密钥(Tavily、Brave 等)。在设置 › 工具中配置。',
|
||
'onboarding.custom.embeddings.title': 'Embeddings',
|
||
'onboarding.custom.embeddings.subtitle': 'OpenHuman 生成向量嵌入以实现语义记忆搜索的方式。',
|
||
'onboarding.custom.embeddings.defaultDesc': 'OpenHuman 使用托管嵌入服务,无需 API 密钥。',
|
||
'onboarding.custom.embeddings.configureDesc':
|
||
'使用您自己的嵌入服务提供商(OpenAI、Voyage、Ollama 等)。',
|
||
'onboarding.custom.memory.title': '记忆',
|
||
'onboarding.custom.memory.subtitle': 'OpenHuman 如何记住你的上下文、偏好和历史对话。',
|
||
'onboarding.custom.memory.defaultDesc': 'OpenHuman 会自动管理记忆存储和检索。无需设置。',
|
||
'onboarding.custom.memory.configureDesc': '你可以自行查看、导出或清除记忆。在设置 › 记忆中配置。',
|
||
'accounts.addAccount': '添加账户',
|
||
'accounts.manageAccounts': '管理账户',
|
||
'accounts.noAccounts': '未连接任何账户',
|
||
'accounts.connectAccount': '连接一个账户以开始使用',
|
||
'accounts.agent': '助手',
|
||
'accounts.respondQueue': '回复队列',
|
||
'accounts.disconnect': '断开连接',
|
||
'accounts.disconnectConfirm': '确定要断开此账户的连接吗?',
|
||
'accounts.disconnectClearMemory': '同时删除来自此来源的记忆',
|
||
'accounts.disconnectClearMemoryHint': '永久删除与此连接关联的本地记忆片段。',
|
||
'accounts.searchAccounts': '搜索账户...',
|
||
'channels.title': '渠道',
|
||
'channels.configure': '配置渠道',
|
||
'channels.setup': '设置渠道',
|
||
'channels.noChannels': '未配置任何渠道',
|
||
'channels.localManagedUnavailable': '本地用户无法使用托管频道。',
|
||
'channels.addChannel': '添加渠道',
|
||
'channels.status.connected': '已连接',
|
||
'channels.status.disconnected': '已断开',
|
||
'channels.status.error': '错误',
|
||
'channels.status.configuring': '配置中',
|
||
'channels.defaultMessaging': '默认消息渠道',
|
||
'webhooks.title': 'Webhook',
|
||
'webhooks.create': '创建 Webhook',
|
||
'webhooks.noWebhooks': '未配置任何 Webhook',
|
||
'webhooks.url': 'URL',
|
||
'webhooks.secret': '密钥',
|
||
'webhooks.events': '事件',
|
||
'webhooks.archiveDirectory': '归档目录',
|
||
'webhooks.todayFile': '今日文件',
|
||
'invites.title': '邀请',
|
||
'invites.create': '创建邀请',
|
||
'invites.noInvites': '暂无待处理的邀请',
|
||
'invites.code': '邀请码',
|
||
'invites.copyLink': '复制链接',
|
||
'invites.generate': '生成邀请',
|
||
'invites.generating': '生成...',
|
||
'invites.refreshing': '正在刷新邀请...',
|
||
'invites.loading': '正在加载邀请...',
|
||
'invites.copyCodeAria': '复制邀请码',
|
||
'invites.revokeAria': '撤销邀请',
|
||
'invites.usedUp': '用完',
|
||
'invites.uses': '用途: {current}{max}',
|
||
'invites.expiresOn': '过期 {date}',
|
||
'invites.empty': '还没有邀请',
|
||
'invites.emptyHint': '生成邀请码与他人分享',
|
||
'invites.revokeTitle': '撤销邀请码',
|
||
'invites.revokePromptPrefix': '您确定要撤销邀请码吗',
|
||
'invites.revokeWarning': '此邀请码将失效,无法再用于加入团队。',
|
||
'invites.revoking': '撤销...',
|
||
'invites.revokeAction': '撤销邀请',
|
||
'invites.failedGenerate': '生成邀请失败',
|
||
'invites.failedRevoke': '撤销邀请失败',
|
||
'team.refreshingMembers': '正在刷新会员...',
|
||
'team.loadingMembers': '正在加载会员...',
|
||
'team.memberCount': '{count} 成员',
|
||
'team.memberCountPlural': '{count} 成员',
|
||
'team.you': '(你)',
|
||
'team.removeAria': '删除 {name}',
|
||
'team.noMembers': '没有找到会员',
|
||
'team.removeTitle': '删除团队成员',
|
||
'team.removePromptPrefix': '您确定要删除吗',
|
||
'team.removePromptSuffix': '来自团队?',
|
||
'team.removeWarning': '他们将失去对团队及所有团队资源的访问权限。',
|
||
'team.removing': '正在删除...',
|
||
'team.removeAction': '删除会员',
|
||
'team.changeRoleTitle': '更改成员角色',
|
||
'team.changeRolePrompt': '将 {name} 的角色从 {oldRole} 更改为 {newRole}?',
|
||
'team.changeRoleAdminGrant': '此操作将授予其完整管理员权限,包括管理团队成员的能力。',
|
||
'team.changeRoleAdminRemove': '此操作将撤销其管理员权限,其将无法再管理团队。',
|
||
'team.changing': '改变...',
|
||
'team.changeRoleAction': '改变角色',
|
||
'team.failedChangeRole': '角色变更失败',
|
||
'team.failedRemoveMember': '删除会员失败',
|
||
'devOptions.title': '开发者选项',
|
||
'devOptions.diagnostics': '诊断',
|
||
'devOptions.diagnosticsDesc': '系统健康、日志与性能指标',
|
||
'devOptions.toolPolicyDiagnosticsDesc': '工具清单、策略态势、MCP 允许列表和近期拦截',
|
||
'devOptions.toolPolicyDiagnostics.loading': '加载中…',
|
||
'devOptions.toolPolicyDiagnostics.unavailable': '诊断不可用',
|
||
'devOptions.toolPolicyDiagnostics.posture.title': '策略态势',
|
||
'devOptions.toolPolicyDiagnostics.posture.autonomy': '自主性:',
|
||
'devOptions.toolPolicyDiagnostics.posture.workspaceOnly': '仅工作区:',
|
||
'devOptions.toolPolicyDiagnostics.posture.maxActionsPerHour': '最大操作数/小时:',
|
||
'devOptions.toolPolicyDiagnostics.posture.approvalMediumRisk': '审批(中等风险):',
|
||
'devOptions.toolPolicyDiagnostics.posture.blockHighRisk': '阻止高风险:',
|
||
'devOptions.toolPolicyDiagnostics.inventory.title': '清单',
|
||
'devOptions.toolPolicyDiagnostics.inventory.totalTools': '工具总数',
|
||
'devOptions.toolPolicyDiagnostics.inventory.enabledTools': '已启用工具',
|
||
'devOptions.toolPolicyDiagnostics.inventory.mcpStdioTools': 'MCP stdio 工具',
|
||
'devOptions.toolPolicyDiagnostics.inventory.jsonRpcTools': 'JSON-RPC 工具',
|
||
'devOptions.toolPolicyDiagnostics.mcpAllowlists.title': 'MCP 允许列表',
|
||
'devOptions.toolPolicyDiagnostics.mcpAllowlists.summary':
|
||
'已启用:{enabled} · 服务器:{enabledCount}/{totalCount}',
|
||
'devOptions.toolPolicyDiagnostics.mcpAllowlists.unnamed': '<未命名>',
|
||
'devOptions.toolPolicyDiagnostics.mcpAllowlists.allowDeny': '允许={allowCount} 拒绝={denyCount}',
|
||
'devOptions.toolPolicyDiagnostics.mcpWriteAudit.title': 'MCP 写入审计',
|
||
'devOptions.toolPolicyDiagnostics.mcpWriteAudit.summary':
|
||
'已启用:{enabled} · 最近(24 小时):{recentRows}',
|
||
'devOptions.toolPolicyDiagnostics.recentBlocked.title': '最近被拦截的调用',
|
||
'devOptions.toolPolicyDiagnostics.recentBlocked.empty': '没有记录到被拦截的调用。',
|
||
'devOptions.toolPolicyDiagnostics.redactedSurfaces.title': '已脱敏表面',
|
||
'devOptions.toolPolicyDiagnostics.redactedSurfaces.summary':
|
||
'可写:{writeCount} · 策略表面:{policyCount}',
|
||
'devOptions.debugPanels': '调试面板',
|
||
'devOptions.debugPanelsDesc': '功能开关、状态检查与调试工具',
|
||
'devOptions.webhooks': 'Webhook',
|
||
'devOptions.webhooksDesc': '配置并测试 Webhook 集成',
|
||
'devOptions.memoryInspection': '记忆检查',
|
||
'devOptions.memoryInspectionDesc': '浏览、查询与管理记忆条目',
|
||
'voice.pushToTalk': '按住说话',
|
||
'voice.recording': '录音中...',
|
||
'voice.processing': '处理中...',
|
||
'voice.languageHint': '语言',
|
||
'misc.rehydrating': '正在加载你的数据...',
|
||
'misc.checkingServices': '正在检查服务...',
|
||
'misc.serviceUnavailable': '服务不可用',
|
||
'misc.somethingWentWrong': '出现了一些问题',
|
||
'misc.tryAgainLater': '请稍后重试。',
|
||
'misc.restartApp': '重启应用',
|
||
'misc.updateAvailable': '发现新版本',
|
||
'misc.updateNow': '立即更新',
|
||
'misc.updateLater': '稍后再说',
|
||
'misc.downloading': '下载中...',
|
||
'misc.installing': '安装中...',
|
||
'misc.beta': '测试版',
|
||
'misc.betaFeedback': '发送反馈',
|
||
'mnemonic.title': '恢复短语',
|
||
'mnemonic.warning': '按顺序记下这些单词,并将其保存在安全的地方。',
|
||
'mnemonic.copyWarning': '永远不要分享你的恢复短语。任何拥有这些单词的人都可以访问你的账户。',
|
||
'mnemonic.copied': '恢复短语已复制到剪贴板',
|
||
'mnemonic.reveal': '显示短语',
|
||
'mnemonic.revealPhrase': '显示恢复助记词',
|
||
'mnemonic.hidden': '恢复短语已隐藏',
|
||
'privacy.title': '隐私与安全',
|
||
'privacy.description': '发送到外部服务的数据透明度报告。',
|
||
'privacy.empty': '未检测到外部数据传输。',
|
||
'privacy.whatLeavesComputer': '离开你电脑的数据',
|
||
'privacy.loading': '正在加载隐私详情...',
|
||
'privacy.loadError': '无法加载实时隐私列表。下方的分析控件仍然可用。',
|
||
'privacy.noCapabilities': '当前没有功能披露数据移动。',
|
||
'privacy.sentTo': '发送至',
|
||
'privacy.leavesDevice': '离开设备',
|
||
'privacy.staysLocal': '留在本地',
|
||
'privacy.anonymizedAnalytics': '匿名分析',
|
||
'privacy.shareAnonymizedData': '分享匿名使用数据',
|
||
'privacy.shareAnonymizedDataDesc':
|
||
'通过分享匿名崩溃报告和使用分析来帮助改进 OpenHuman。所有数据完全匿名——不会收集任何个人数据、消息、钱包密钥或会话信息。',
|
||
'privacy.meetingFollowUps': '会议跟进',
|
||
'privacy.autoHandoffMeet': '自动将 Google Meet 转录交给编排器',
|
||
'privacy.autoHandoffMeetDesc':
|
||
'当 Google Meet 通话结束时,OpenHuman 的编排器可以阅读转录内容,并可能执行起草消息、安排跟进、或将摘要发布到已连接的 Slack 工作区等操作。默认关闭。',
|
||
'privacy.analyticsDisclaimer':
|
||
'所有分析和错误报告完全匿名。启用后,我们仅收集崩溃信息、设备类型和错误的文件位置。我们永远不会访问你的消息、会话数据、钱包密钥、API 密钥或任何个人可识别信息。你可以随时更改此设置。',
|
||
'settings.about.version': '版本',
|
||
'settings.about.updateAvailable': '可用',
|
||
'settings.about.softwareUpdates': '软件更新',
|
||
'settings.about.lastChecked': '上次检查',
|
||
'settings.about.checking': '检查中...',
|
||
'settings.about.checkForUpdates': '检查更新',
|
||
'settings.about.releases': '发布版本',
|
||
'settings.about.releasesDesc': '在 GitHub 上浏览发布说明和早期版本。',
|
||
'settings.about.openReleases': '打开 GitHub 发布',
|
||
'settings.about.connection': '连接方式',
|
||
'settings.about.connectionMode': '模式',
|
||
'settings.about.connectionModeLocal': '本地',
|
||
'settings.about.connectionModeCloud': '云',
|
||
'settings.about.connectionModeUnset': '未选择',
|
||
'settings.about.serverUrl': '服务器 URL',
|
||
'settings.about.serverUrlUnavailable': '不可用',
|
||
'settings.about.connectionHelperLocal':
|
||
'应用启动时由 Tauri shell 在进程内启动。端口会在启动时选择,因此此 URL 每次启动都可能变化。',
|
||
'settings.about.connectionHelperCloud': '已连接到远程核心。可在 BootCheck 或云模式选择器中更改。',
|
||
'settings.heartbeat.title': '心跳和循环',
|
||
'settings.heartbeat.desc': '控制后台调度节奏并检查循环图。',
|
||
'settings.ledgerUsage.title': '使用账本',
|
||
'settings.ledgerUsage.desc': '最近的信贷支出、预算数学和背景 API 阅读预算。',
|
||
'settings.costDashboard.title': '成本看板',
|
||
'settings.costDashboard.desc': '查看集群过去 7 天的支出和 token 消耗,包括预算节奏和按模型拆分。',
|
||
'settings.costDashboard.sevenDayCost': '7 天每日成本',
|
||
'settings.costDashboard.sevenDayTokens': '7 天 token 用量',
|
||
'settings.costDashboard.totalSpend': '7 天总计',
|
||
'settings.costDashboard.monthlyPace': '月度节奏',
|
||
'settings.costDashboard.budgetLimit': '预算上限',
|
||
'settings.costDashboard.utilization': '利用率',
|
||
'settings.costDashboard.modelBreakdown': '按模型拆分',
|
||
'settings.costDashboard.model': '模型',
|
||
'settings.costDashboard.provider': '提供商',
|
||
'settings.costDashboard.cost': '成本',
|
||
'settings.costDashboard.tokens': 'Token',
|
||
'settings.costDashboard.requests': '请求',
|
||
'settings.costDashboard.percentOfTotal': '占总量百分比',
|
||
'settings.costDashboard.inputTokens': '输入',
|
||
'settings.costDashboard.outputTokens': '输出',
|
||
'settings.costDashboard.budgetNormal': '进度正常',
|
||
'settings.costDashboard.budgetWarning': '警告',
|
||
'settings.costDashboard.budgetExceeded': '超出预算',
|
||
'settings.costDashboard.noBudget': '未设置上限',
|
||
'settings.costDashboard.noData': '过去 7 天尚无成本记录。',
|
||
'settings.costDashboard.noModels': '过去 7 天没有模型活动。',
|
||
'settings.costDashboard.loading': '正在加载成本看板…',
|
||
'settings.costDashboard.disabledHint':
|
||
'成本看板已在配置中禁用。请在 config.toml 中设置 [cost.dashboard] enabled = true 以重新启用。',
|
||
'settings.costDashboard.subtitle':
|
||
'集群实时支出和 token 消耗。条形图每隔几秒自动刷新,无需重新加载页面。',
|
||
'settings.costDashboard.summaryAriaLabel': '成本汇总指标',
|
||
'settings.costDashboard.lastSevenDays': '过去 7 天',
|
||
'settings.costDashboard.utilizationOf': '/',
|
||
'settings.costDashboard.thisMonth': '本月',
|
||
'settings.costDashboard.monthlyPaceHint': '按当前每日运行速率预计的月支出(平均值 × 30)。',
|
||
'settings.costDashboard.budgetLimitHint':
|
||
'从 config.toml 的 cost.monthly_limit_usd 读取月度预算。',
|
||
'settings.costDashboard.dailyTarget': '每日目标',
|
||
'settings.costDashboard.today': '今天',
|
||
'settings.costDashboard.todayBadge': '今天',
|
||
'settings.costDashboard.unknownProvider': '—',
|
||
'settings.costDashboard.justNow': '刚刚',
|
||
'settings.costDashboard.secondsAgo': '{value} 秒前',
|
||
'settings.costDashboard.minutesAgo': '{value} 分钟前',
|
||
'settings.costDashboard.hoursAgo': '{value} 小时前',
|
||
'settings.costDashboard.daysAgo': '{value} 天前',
|
||
'settings.costDashboard.updated': '已更新',
|
||
'settings.costDashboard.refresh': '刷新',
|
||
'settings.costDashboard.utcNote': '按 UTC 日期分组',
|
||
'settings.costDashboard.stackedNote': '输入 + 输出堆叠',
|
||
'settings.costDashboard.modelBreakdownHint': '汇总过去 7 天。',
|
||
'settings.costDashboard.noDataHint':
|
||
'发送一条智能体消息后,下一次提供商调用的 token 用量会在约 10 秒内填充图表。',
|
||
'settings.search.title': '搜索引擎',
|
||
'settings.search.menuDesc': '默认使用 OpenHuman 托管搜索,或用 API 密钥接入你自己的提供商。',
|
||
'settings.search.description':
|
||
'选择智能体使用的搜索引擎。托管模式使用 OpenHuman 后端(无需设置)。Parallel、Brave 和 Querit 会用你的 API 密钥从本机直接调用。',
|
||
'settings.search.engineAria': '搜索引擎',
|
||
'settings.search.engineDisabledLabel': 'Disabled',
|
||
'settings.search.engineDisabledDesc': '从智能体上下文和可用工具列表中移除搜索工具。',
|
||
'settings.search.engineManagedLabel': 'OpenHuman 托管',
|
||
'settings.search.engineManagedDesc': '默认选项。通过 OpenHuman 后端路由,无需 API 密钥。',
|
||
'settings.search.localManagedUnavailable':
|
||
'本地用户无法使用 OpenHuman 托管搜索。请添加你自己的 Parallel、Brave 或 Querit API 密钥以启用网页搜索。',
|
||
'settings.search.engineParallelLabel': 'Parallel',
|
||
'settings.search.engineParallelDesc':
|
||
'直接调用 Parallel API:搜索、提取、聊天、研究、增强和数据集工具。',
|
||
'settings.search.engineBraveLabel': 'Brave 搜索',
|
||
'settings.search.engineBraveDesc': '直接Brave 搜索API:网络、新闻、图像和视频工具。',
|
||
'settings.search.engineQueritLabel': 'Querit',
|
||
'settings.search.engineQueritDesc':
|
||
'直接调用 Querit API:支持站点、时间范围、国家/地区和语言筛选的网页搜索。',
|
||
'settings.search.statusConfigured': '已配置',
|
||
'settings.search.statusNeedsKey': '需要 API 密钥',
|
||
'settings.search.fallbackToManaged': '未配置密钥,保存密钥前搜索会回退到托管模式。',
|
||
'settings.search.getApiKey': '获取 API 密钥',
|
||
'settings.search.save': '保存',
|
||
'settings.search.clear': '清除',
|
||
'settings.search.show': '显示',
|
||
'settings.search.hide': '隐藏',
|
||
'settings.search.statusSaving': '正在保存...',
|
||
'settings.search.statusSaved': '已保存。',
|
||
'settings.search.statusError': '失败',
|
||
'settings.search.parallelKeyLabel': 'Parallel API 键',
|
||
'settings.search.braveKeyLabel': 'Brave 搜索 API 键',
|
||
'settings.search.queritKeyLabel': 'Querit API 键',
|
||
'settings.search.placeholderStored': '••••••••(已存储)',
|
||
'settings.search.placeholderParallel': 'PK_...',
|
||
'settings.search.placeholderBrave': 'BSA...',
|
||
'settings.search.placeholderQuerit': 'Querit API 密钥',
|
||
'settings.search.allowedSitesLabel': '允许的网站',
|
||
'settings.search.allowedSitesHint':
|
||
'助手在研究时可以打开并阅读的网站(每行一个主机,例如 reuters.com)。主机也包含其子域名。留空将阻止所有网页访问。',
|
||
'settings.search.allowedSitesAllOn': '助手可以打开任何公开网站。本地和私有地址仍会被阻止。',
|
||
'settings.search.allowedSitesPlaceholder': 'reuters.com\napnews.com\ngithub.com',
|
||
'settings.search.allowedSitesSave': '保存网站',
|
||
'settings.search.accessModeAria': '网页访问模式',
|
||
'settings.search.accessAllowAll': '全部允许',
|
||
'settings.search.accessCustom': '自定义',
|
||
'settings.search.accessBlockAll': '全部阻止',
|
||
'settings.search.accessBlockAllHint': '所有网页访问都已阻止,助手无法打开或阅读任何网站。',
|
||
'settings.embeddings.title': '向量嵌入',
|
||
'settings.embeddings.description':
|
||
'选择将记忆转换为语义搜索向量的嵌入提供商。更改提供商、模型或维度会使已存储的向量无效,需要完全重置记忆。',
|
||
'settings.embeddings.providerAria': '嵌入提供商',
|
||
'settings.embeddings.statusConfigured': '已配置',
|
||
'settings.embeddings.statusNeedsKey': '需要 API 密钥',
|
||
'settings.embeddings.apiKeyLabel': '{provider} API 密钥',
|
||
'settings.embeddings.placeholderStored': '••••••••(已存储)',
|
||
'settings.embeddings.placeholderKey': '粘贴您的 API 密钥…',
|
||
'settings.embeddings.keyStoredEncrypted': '您的 API 密钥已加密存储在此设备上。',
|
||
'settings.embeddings.show': '显示',
|
||
'settings.embeddings.hide': '隐藏',
|
||
'settings.embeddings.save': '保存',
|
||
'settings.embeddings.clear': '清除',
|
||
'settings.embeddings.model': '模型',
|
||
'settings.embeddings.dimensions': '维度',
|
||
'settings.embeddings.customEndpoint': '自定义端点',
|
||
'settings.embeddings.customModelPlaceholder': '模型名称',
|
||
'settings.embeddings.customDimsPlaceholder': '维度',
|
||
'settings.embeddings.applyCustom': '应用',
|
||
'settings.embeddings.testConnection': '测试连接',
|
||
'settings.embeddings.testing': '测试中…',
|
||
'settings.embeddings.testSuccess': '已连接 — {dims} 维度',
|
||
'settings.embeddings.testFailed': '失败:{error}',
|
||
'settings.embeddings.saving': '保存中…',
|
||
'settings.embeddings.saved': '已保存。',
|
||
'settings.embeddings.errorPrefix': '失败',
|
||
'settings.embeddings.wipeTitle': '重置记忆向量?',
|
||
'settings.embeddings.wipeBody':
|
||
'更改嵌入提供商、模型或维度将删除所有已存储的记忆向量。记忆必须重新构建后检索才能再次工作。此操作无法撤消。',
|
||
'settings.embeddings.cancel': '取消',
|
||
'settings.embeddings.confirmWipe': '清除并应用',
|
||
'settings.embeddings.setupTitle': '设置 {provider}',
|
||
'settings.embeddings.saveAndSwitch': '保存并切换',
|
||
'settings.embeddings.optional': '可选',
|
||
'settings.embeddings.vectorSearchDisabled':
|
||
'向量搜索已禁用。记忆召回将只使用关键词匹配和时间新近度,不进行语义排序。',
|
||
'settings.embeddings.clearKey': '清除 API 密钥',
|
||
'pages.settings.ai.embeddings': '向量嵌入',
|
||
'pages.settings.ai.embeddingsDesc': '用于记忆检索的向量编码模型',
|
||
'mcp.alphaBadge': '阿尔法',
|
||
'mcp.alphaBannerText':
|
||
'MCP 服务器支持仍处于早期 alpha 阶段。Smithery 注册表、安装流程和工具接线在不同版本间可能异常或发生变化。',
|
||
'mcp.toolList.noTools': '没有可用的工具。',
|
||
'mcp.setup.secretDialog.title': 'MCP 设置 — 输入密码',
|
||
'mcp.setup.secretDialog.bodyPrefix': 'MCP 设置代理需要',
|
||
'mcp.setup.secretDialog.bodySuffix': '。你的值会直接发送到核心进程,绝不会进入 AI 对话。',
|
||
'mcp.setup.secretDialog.inputLabel': '值',
|
||
'mcp.setup.secretDialog.inputPlaceholder': '粘贴在这里',
|
||
'mcp.setup.secretDialog.show': '显示',
|
||
'mcp.setup.secretDialog.hide': '隐藏',
|
||
'mcp.setup.secretDialog.submit': '提交',
|
||
'mcp.setup.secretDialog.cancel': '取消',
|
||
'mcp.setup.secretDialog.submitting': '正在提交...',
|
||
'mcp.setup.secretDialog.errorPrefix': '提交失败:',
|
||
'mcp.setup.secretDialog.privacyNote':
|
||
'会加密存储在本地 MCP 密钥表中。绝不记录到日志,也不会发送给模型。',
|
||
'devices.betaBadge': '贝塔',
|
||
'devices.betaText': '此功能目前处于测试阶段。将 iOS 手机与此 OpenHuman 配对,以用作远程客户端。',
|
||
'devices.comingSoonDescription': '设备配对即将推出。此页面将用于配对 iPhone 并管理已连接设备。',
|
||
'devices.title': '设备',
|
||
'devices.pairIphone': '配对 iPhone',
|
||
'devices.noPaired': '没有配对的设备',
|
||
'devices.emptyState': '扫描 iPhone 上的 QR code 将其连接到此 OpenHuman 会话。',
|
||
'devices.devicePairedTitle': '设备已配对',
|
||
'devices.devicePairedMessage': 'iPhone 连接成功。',
|
||
'devices.deviceRevokedTitle': '设备已撤销',
|
||
'devices.deviceRevokedMessage': '{label} 已删除。',
|
||
'devices.revokeFailedTitle': '撤销失败',
|
||
'devices.online': '在线',
|
||
'devices.offline': '离线',
|
||
'devices.lastSeenNever': '从来没有',
|
||
'devices.lastSeenNow': '刚才',
|
||
'devices.lastSeenMinutes': '{count}分钟前',
|
||
'devices.lastSeenHours': '{count} 小时前',
|
||
'devices.lastSeenDays': '{count} 天前',
|
||
'devices.revoke': '撤销',
|
||
'devices.revokeAria': '撤销 {label}',
|
||
'devices.confirmRevokeTitle': '撤销设备?',
|
||
'devices.confirmRevokeBody': '{label} 将无法再连接。此操作无法撤消。',
|
||
'devices.loadFailed': '无法加载设备:{message}',
|
||
'devices.pairModal.title': '配对 iPhone',
|
||
'devices.pairModal.loading': '正在生成配对代码...',
|
||
'devices.pairModal.instructions': '打开 iPhone 上的 OpenHuman 应用程序并扫描此代码。',
|
||
'devices.pairModal.expiresIn': '代码将在 ~{count} 分钟后过期',
|
||
'devices.pairModal.expiresInPlural': '代码将在 ~{count} 分钟后过期',
|
||
'devices.pairModal.showDetails': '显示详情',
|
||
'devices.pairModal.hideDetails': '隐藏详细信息',
|
||
'devices.pairModal.channelId': '通道号',
|
||
'devices.pairModal.pairingUrl': '配对URL',
|
||
'devices.pairModal.expiredTitle': 'QR code 已过期',
|
||
'devices.pairModal.expiredBody': '生成新代码以继续配对。',
|
||
'devices.pairModal.generateNewCode': '生成新代码',
|
||
'devices.pairModal.successTitle': '与 iPhone 配对',
|
||
'devices.pairModal.autoClose': '自动关闭...',
|
||
'devices.pairModal.errorPrefix': '无法创建配对:{message}',
|
||
'devices.pairModal.errorTitle': '出了点问题',
|
||
'devices.pairModal.copyUrl': '复制',
|
||
'mcp.catalog.searchAria': '搜索锻造目录',
|
||
'mcp.catalog.searchPlaceholder': '搜索锻造目录...',
|
||
'mcp.catalog.loadFailed': '加载目录失败',
|
||
'mcp.catalog.noResults': '未找到服务器。',
|
||
'mcp.catalog.noResultsFor': '找不到“{query}”的服务器。',
|
||
'mcp.catalog.loadMore': '加载更多',
|
||
'mcp.configAssistant.title': '配置助手',
|
||
'mcp.configAssistant.empty': '询问配置、所需的环境变量或设置步骤。',
|
||
'mcp.configAssistant.suggestedValues': '建议值:',
|
||
'mcp.configAssistant.valueHidden': '(隐藏值)',
|
||
'mcp.configAssistant.applySuggested': '应用建议值',
|
||
'mcp.configAssistant.reinstallHint': '使用这些值重新安装以应用它们。',
|
||
'mcp.configAssistant.thinking': '想着……',
|
||
'mcp.configAssistant.inputPlaceholder': '提出问题(Enter 发送,Shift+Enter 换行)',
|
||
'mcp.configAssistant.send': '发送',
|
||
'mcp.configAssistant.failedResponse': '未能得到回复',
|
||
'mcp.toolList.availableSingular': '{count} 工具可用',
|
||
'mcp.toolList.availablePlural': '{count} 可用工具',
|
||
'mcp.toolList.tryTool': '试用',
|
||
'mcp.toolList.tryToolAria': '打开 {name} 的执行试验场',
|
||
'mcp.playground.title': '运行 {name}',
|
||
'mcp.playground.close': '关闭试验场',
|
||
'mcp.playground.inputSchema': '输入 schema',
|
||
'mcp.playground.argsLabel': '参数(JSON)',
|
||
'mcp.playground.argsHelp': '输入符合输入 schema 的 JSON。空输入会按 {} 处理。',
|
||
'mcp.playground.runShortcut': '⌘/Ctrl + Enter 运行',
|
||
'mcp.playground.format': '格式化',
|
||
'mcp.playground.invalidJson': '无效 JSON',
|
||
'mcp.playground.run': '运行工具',
|
||
'mcp.playground.running': '运行中…',
|
||
'mcp.playground.result': '结果',
|
||
'mcp.playground.resultError': '工具返回错误',
|
||
'mcp.playground.copyResult': '复制结果',
|
||
'mcp.playground.copied': '已复制',
|
||
'mcp.playground.history': '历史',
|
||
'mcp.playground.historyEmpty': '此会话中尚无调用。',
|
||
'mcp.playground.historyLoad': '加载',
|
||
'mcp.playground.unexpectedError': '调用工具时出现意外错误。',
|
||
'mcp.catalog.deployed': '已部署',
|
||
'mcp.catalog.installCount': '{count} 安装',
|
||
'app.update.dismissNotification': '关闭更新通知',
|
||
'bootCheck.rpcAuthSuffix': '在每个 RPC 上。',
|
||
'app.localAiDownload.expandAria': '展开下载进度',
|
||
'app.localAiDownload.collapseAria': '折叠下载进度',
|
||
'app.localAiDownload.dismissAria': '关闭下载通知',
|
||
'mobile.nav.ariaLabel': '手机导航',
|
||
'progress.stepsAria': '进度步骤',
|
||
'progress.stepAria': '{total} 的步骤 {current}',
|
||
'workspace.vaultsTitle': '知识库',
|
||
'workspace.vaultsDesc': '指向本地文件夹;文件被分块并镜像到内存中。',
|
||
'calls.title': '通话',
|
||
'calls.comingSoonBody': '人工智能辅助通话即将推出。敬请关注。',
|
||
'art.rotatingTetrahedronAria': '旋转倒四面体航天器',
|
||
'mcp.installed.title': '已安装',
|
||
'mcp.installed.browseCatalog': '浏览目录',
|
||
'mcp.installed.empty': '尚未安装 MCP 服务器。',
|
||
'mcp.installed.toolSingular': '{count} 工具',
|
||
'mcp.installed.toolPlural': '{count} 工具',
|
||
'mcp.health.title': '健康状态',
|
||
'mcp.health.summaryAria': 'MCP 连接健康状态摘要',
|
||
'mcp.health.connectedCount': '{count} 个已连接',
|
||
'mcp.health.connectingCount': '{count} 个连接中',
|
||
'mcp.health.errorCount': '{count} 个错误',
|
||
'mcp.health.disconnectedCount': '{count} 个空闲',
|
||
'mcp.health.retryAll': '全部重试({count})',
|
||
'mcp.health.retryAllAria': '重试全部 {count} 个出错的 MCP 服务器',
|
||
'mcp.health.disconnectAll': '全部断开({count})',
|
||
'mcp.health.disconnectAllAria': '断开全部 {count} 个已连接的 MCP 服务器',
|
||
'mcp.health.disconnectConfirm.title': '断开所有 MCP 服务器?',
|
||
'mcp.health.disconnectConfirm.body':
|
||
'这会断开当前已连接的 {count} 个 MCP 服务器。已安装配置和密钥会保留,你之后可以重新连接任意服务器。',
|
||
'mcp.health.disconnectConfirm.cancel': '取消',
|
||
'mcp.health.disconnectConfirm.confirm': '全部断开',
|
||
'mcp.health.opErrorGeneric': '批量操作失败。请查看日志。',
|
||
'mcp.health.bulkPartialFailure': '{total} 个服务器中有 {failed} 个发生故障。请查看日志。',
|
||
'mcp.installed.search.landmarkAria': '搜索已安装的 MCP 服务器',
|
||
'mcp.installed.search.inputAria': '按名称筛选已安装的 MCP 服务器',
|
||
'mcp.installed.search.placeholder': '筛选服务器…',
|
||
'mcp.installed.search.clearAria': '清除筛选',
|
||
'mcp.installed.search.countMatches': '{shown} / {total} 个服务器',
|
||
'mcp.installed.search.noMatches': '没有服务器匹配“{query}”。',
|
||
'mcp.inventory.openButton': '清单',
|
||
'mcp.inventory.openAria': '打开可分享的 MCP 清单面板',
|
||
'mcp.inventory.title': '可分享的 MCP 清单',
|
||
'mcp.inventory.subtitle':
|
||
'将已安装的 MCP 服务器导出为可移植且不含密钥的 manifest,或从队友处导入。密钥环境值绝不会被包含或导入。',
|
||
'mcp.inventory.close': '关闭清单面板',
|
||
'mcp.inventory.tablistAria': '清单分区',
|
||
'mcp.inventory.tab.export': '导出',
|
||
'mcp.inventory.tab.import': '导入',
|
||
'mcp.inventory.export.empty': '尚未安装 MCP 服务器,没有可导出的内容。请先从目录安装一个。',
|
||
'mcp.inventory.export.privacyTitle': '此 manifest 包含的内容',
|
||
'mcp.inventory.export.privacyBody':
|
||
'仅包含服务器名称、限定名称、环境变量 KEY 名称和非密钥配置。密钥值、机器标识符和每次安装的时间戳会被有意移除。',
|
||
'mcp.inventory.export.serverCount': '此 manifest 中有 {count} 个服务器',
|
||
'mcp.inventory.export.copy': '复制',
|
||
'mcp.inventory.export.copied': '已复制',
|
||
'mcp.inventory.export.copyAria': '将 manifest JSON 复制到剪贴板',
|
||
'mcp.inventory.export.download': '下载',
|
||
'mcp.inventory.export.downloadAria': '将 manifest 下载为 JSON 文件',
|
||
'mcp.inventory.import.trustTitle': '将导入的 manifest 视为不可信代码',
|
||
'mcp.inventory.import.trustBody':
|
||
'MCP 服务器是你授权给智能体的工具。只导入来自可信来源的 manifest。每次安装都需要你明确点击,不会自动安装任何内容。',
|
||
'mcp.inventory.import.pasteLabel': '粘贴 manifest JSON',
|
||
'mcp.inventory.import.pastePlaceholder': '在此粘贴 manifest,或在下方上传 .json 文件。',
|
||
'mcp.inventory.import.preview': '预览',
|
||
'mcp.inventory.import.clear': '清除',
|
||
'mcp.inventory.import.uploadFile': '或上传 .json 文件',
|
||
'mcp.inventory.import.uploadFileAria': '上传 manifest .json 文件',
|
||
'mcp.inventory.import.fileTooLarge': '文件过大(超过 1 MB)。已拒绝加载。',
|
||
'mcp.inventory.import.fileReadFailed': '无法读取文件。',
|
||
'mcp.inventory.import.parseErrorPrefix': '无法解析 manifest:',
|
||
'mcp.inventory.import.previewHeading': '预览',
|
||
'mcp.inventory.import.previewCounts': '{total} 个服务器,{newly} 个新增,{already} 个已安装',
|
||
'mcp.inventory.import.previewEmpty': 'Manifest 中不包含服务器。',
|
||
'mcp.inventory.import.exportedFrom': '导出自 {exporter}',
|
||
'mcp.inventory.import.exportedAt': '时间:{when}',
|
||
'mcp.inventory.import.statusNew': '新增',
|
||
'mcp.inventory.import.statusAlreadyInstalled': '已安装',
|
||
'mcp.inventory.import.envKeysLabel': '环境键',
|
||
'mcp.inventory.import.install': '安装',
|
||
'mcp.inventory.import.installAria': '从此 manifest 安装 {name}',
|
||
'mcp.inventory.import.skipped': '已跳过',
|
||
'mcp.inventory.parseError.empty': 'Manifest 为空。',
|
||
'mcp.inventory.parseError.invalidJson': '无效 JSON。',
|
||
'mcp.inventory.parseError.rootNotObject': 'Manifest 根级必须是 JSON 对象。',
|
||
'mcp.inventory.parseError.unsupportedSchema':
|
||
'不支持的 manifest schema,此文件不是由兼容的导出器生成的。',
|
||
'mcp.inventory.parseError.missingExportedAt': '缺少或无效的 `exported_at` 字段。',
|
||
'mcp.inventory.parseError.missingExportedBy': '缺少或无效的 `exported_by` 字段。',
|
||
'mcp.inventory.parseError.invalidServers': '缺少或无效的 `servers` 数组。',
|
||
'mcp.inventory.parseError.serverNotObject': '某个服务器条目不是对象。',
|
||
'mcp.inventory.parseError.serverMissingQualifiedName': '某个服务器条目缺少 qualified_name。',
|
||
'mcp.inventory.parseError.serverMissingDisplayName': '某个服务器条目缺少 display_name。',
|
||
'mcp.inventory.parseError.serverEnvKeysNotArray':
|
||
'某个服务器条目的 env_keys 字段不是字符串数组。',
|
||
'mcp.inventory.parseError.serverContainsEnv':
|
||
'某个服务器条目包含 `env` 值映射。已拒绝导入,manifest 只能携带 env_keys(名称),绝不能包含密钥值。',
|
||
'mcp.inventory.parseError.duplicateQualifiedName':
|
||
'Manifest 中发现重复的 qualified_name。每个服务器最多只能出现一次。',
|
||
'mcp.tab.loading': '正在加载 MCP 服务器...',
|
||
'mcp.tab.emptyDetail': '选择服务器或浏览目录。',
|
||
'mcp.install.loadingDetail': '正在加载服务器详细信息...',
|
||
'mcp.install.back': '返回',
|
||
'mcp.install.title': '安装 {name}',
|
||
'mcp.install.requiredEnv': '所需的环境变量',
|
||
'mcp.install.enterValue': '输入 {key}',
|
||
'mcp.install.show': '显示',
|
||
'mcp.install.hide': '隐藏',
|
||
'mcp.install.configLabel': '配置(可选 JSON)',
|
||
'mcp.install.configPlaceholder': '{"key": "value"}',
|
||
'mcp.install.missingRequired': '“{key}”为必填项',
|
||
'mcp.install.invalidJson': '配置 JSON 不是有效的 JSON',
|
||
'mcp.install.failedDetail': '无法加载服务器详细信息',
|
||
'mcp.install.failedInstall': '安装失败',
|
||
'mcp.install.button': '安装',
|
||
'mcp.install.installing': '正在安装...',
|
||
'mcp.detail.suggestedEnvReady': '建议的环境值已准备好',
|
||
'mcp.detail.suggestedEnvBody': '使用建议值重新安装此服务器以应用它们:{keys}',
|
||
'mcp.detail.connect': '连接',
|
||
'mcp.detail.connecting': '正在连接...',
|
||
'mcp.detail.disconnect': '断开连接',
|
||
'mcp.detail.hideAssistant': '隐藏助手',
|
||
'mcp.detail.helpConfigure': '帮我配置一下',
|
||
'mcp.detail.confirmUninstall': '确认卸载?',
|
||
'mcp.detail.confirmUninstallAction': '是的,卸载',
|
||
'mcp.detail.uninstall': '卸载',
|
||
'mcp.detail.envVars': '环境变量',
|
||
'mcp.detail.reconfigure': '重新配置',
|
||
'mcp.detail.reconfigureHint': '为每个变量输入新值,然后重新连接。这将替换已存储的值。',
|
||
'mcp.detail.saveReconnect': '保存并重新连接',
|
||
'mcp.detail.reconfigureSaving': '正在保存…',
|
||
'mcp.detail.reconfigureSuccess': '环境已更新并重新连接。',
|
||
'mcp.detail.reconfigureReconnectFailed': '已保存,但使用新值重新连接失败。',
|
||
'mcp.detail.tools': '工具',
|
||
'onboarding.skipForNow': '暂时跳过',
|
||
'onboarding.localAI.continueWithCloud': '继续使用云',
|
||
'onboarding.localAI.useLocalAnyway': '无论如何使用本地人工智能(不推荐用于您的设备)',
|
||
'onboarding.localAI.useLocalInstead': '使用本地 AI 代替(现在连接 Ollama)',
|
||
'onboarding.localAI.setupIssue': '本地 AI 设置遇到问题',
|
||
'autonomy.title': '代理自主权',
|
||
'autonomy.maxActionsLabel': '每小时最大动作数',
|
||
'autonomy.maxActionsHelp':
|
||
'智能体每滚动小时内可执行的最大工具操作次数。新值将在下次对话时生效。定时任务和频道监听器将保持当前限制,直到重启 OpenHuman。',
|
||
'autonomy.statusSaving': '正在保存...',
|
||
'autonomy.statusSaved': '已保存。',
|
||
'autonomy.statusFailed': '失败',
|
||
'autonomy.unlimitedNote': '无限制 — 禁用速率限制。',
|
||
'autonomy.invalidIntegerMsg': '必须为正整数(如需无限制,请使用「无限制」预设)。',
|
||
'autonomy.presetUnlimited': '无限制(默认)',
|
||
'triggers.toggleFailed': '{trigger} 的 {action} 失败:{message}',
|
||
'settings.ai.overview': 'AI 系统概览',
|
||
'settings.ai.configStatus': '配置状态',
|
||
'settings.ai.fallbackMode': '回退模式',
|
||
'settings.ai.loadedFromRuntime': '从运行时加载',
|
||
'settings.ai.loadingDuration': '加载时长',
|
||
'settings.ai.localRuntime': '本地模型运行时',
|
||
'settings.ai.openManager': '打开管理器',
|
||
'settings.ai.retryDownload': '重试下载',
|
||
'settings.ai.state': '状态',
|
||
'settings.ai.targetModel': '目标模型',
|
||
'settings.ai.download': '下载',
|
||
'settings.ai.localModelUnavailable': '本地模型状态不可用。',
|
||
'settings.ai.soulConfig': 'SOUL 角色配置',
|
||
'settings.ai.refreshing': '刷新中...',
|
||
'settings.ai.refreshSoul': '刷新 SOUL',
|
||
'settings.ai.loadingSoul': '正在加载 SOUL 配置...',
|
||
'settings.ai.identity': '身份',
|
||
'settings.ai.personality': '个性',
|
||
'settings.ai.safetyRules': '安全规则',
|
||
'settings.ai.source': '来源',
|
||
'settings.ai.loaded': '已加载',
|
||
'settings.ai.toolsConfig': 'TOOLS 配置',
|
||
'settings.ai.refreshTools': '刷新 TOOLS',
|
||
'settings.ai.toolsAvailable': '可用工具',
|
||
'settings.ai.tools': '个工具',
|
||
'settings.ai.activeSkills': '活跃技能',
|
||
'settings.ai.skills': '个技能',
|
||
'settings.ai.skillsOverview': '技能概览',
|
||
'settings.ai.refreshingAll': '刷新全部中...',
|
||
'settings.ai.refreshAll': '刷新所有 AI 配置',
|
||
'settings.notifications.suppressAll': '抑制所有通知',
|
||
'settings.notifications.suppressAllDesc':
|
||
'阻止来自嵌入式应用的所有操作系统通知弹窗,不受焦点状态影响。',
|
||
'settings.notifications.toggleDnd': '切换免打扰',
|
||
'settings.notifications.categories': '类别',
|
||
'settings.notifications.categoryFooter':
|
||
'禁用一个类别后,该类新的通知将不再出现在通知中心。已有的通知在被清除前保持可见。',
|
||
'settings.billing.movedToWeb': '账单已移至网页',
|
||
'settings.billing.openDashboard': '打开账单面板',
|
||
'settings.billing.movedToWebDesc': '订阅变更、支付方式、配额和发票现在在 TinyHumans 网页上管理。',
|
||
'settings.billing.backToSettings': '返回设置',
|
||
'settings.billing.openingBrowser': '正在打开浏览器...',
|
||
'settings.billing.browserNotOpen': '如果浏览器未打开,请使用上方按钮。',
|
||
'settings.billing.browserOpenFailed': '无法自动打开浏览器。请使用上方按钮。',
|
||
'settings.tools.chooseCapabilities': '选择 OpenHuman 可代表你使用的能力。',
|
||
'settings.tools.saveChanges': '保存更改',
|
||
'settings.tools.preferencesSaved': '偏好设置已保存',
|
||
'settings.tools.saveFailed': '保存偏好失败,请重试。',
|
||
'settings.screenAwareness.mode': '模式',
|
||
'settings.screenAwareness.allExceptBlacklist': '除黑名单外全部',
|
||
'settings.screenAwareness.whitelistOnly': '仅白名单',
|
||
'settings.screenAwareness.screenMonitoring': '屏幕监控',
|
||
'settings.screenAwareness.saveSettings': '保存设置',
|
||
'settings.screenAwareness.session': '会话',
|
||
'settings.screenAwareness.status': '状态',
|
||
'settings.screenAwareness.active': '活跃',
|
||
'settings.screenAwareness.stopped': '已停止',
|
||
'settings.screenAwareness.remaining': '剩余',
|
||
'settings.screenAwareness.startSession': '开始会话',
|
||
'settings.screenAwareness.stopSession': '停止会话',
|
||
'settings.screenAwareness.analyzeNow': '立即分析',
|
||
'settings.screenAwareness.macosOnly': '屏幕感知桌面捕获和权限控制目前仅在 macOS 上受支持。',
|
||
'connections.comingSoon': '即将推出',
|
||
'connections.setUp': '设置',
|
||
'connections.configured': '已配置',
|
||
'connections.unavailable': '不可用',
|
||
'connections.checking': '检查中...',
|
||
'connections.walletConfigured': '本地 EVM、BTC、Solana 和 Tron 身份已从你的恢复短语中配置。',
|
||
'connections.walletReady': '通过一个恢复短语设置本地 EVM、BTC、Solana 和 Tron 身份。',
|
||
'connections.walletError': '无法检查钱包状态。点击从恢复短语面板重试。',
|
||
'connections.walletChecking': '正在检查钱包状态...',
|
||
'connections.walletIdentities': '钱包身份',
|
||
'connections.walletDerived': '从你的恢复短语本地派生,仅作为安全元数据存储。',
|
||
'connections.privacySecurity': '隐私与安全',
|
||
'connections.privacySecurityDesc':
|
||
'所有数据和凭据均存储在本地,采用零数据保留政策。你的信息经过加密,绝不会与第三方共享。',
|
||
'channels.status.connecting': '连接中',
|
||
'channels.status.notConfigured': '未配置',
|
||
'channels.noActiveRoute': '无活跃路由',
|
||
'channels.activeRoute': '活跃路由',
|
||
'channels.loadingDefinitions': '正在加载渠道定义...',
|
||
'channels.channelConnections': '渠道连接',
|
||
'channels.configureAuthModes': '为每个消息渠道配置认证模式。',
|
||
'channels.configNotAvailable': '配置',
|
||
'channels.channel': '渠道',
|
||
'devOptions.coreModeNotSet': '核心模式:未设置',
|
||
'devOptions.coreModeNotSetDesc': '启动检查选择器尚未确认。使用选择器上的切换模式选择本地或云端。',
|
||
'devOptions.local': '本地',
|
||
'devOptions.embeddedCoreSidecar': '嵌入式核心侧车',
|
||
'devOptions.sidecarSpawned': '由 Tauri shell 在应用启动时进程内启动。',
|
||
'devOptions.cloud': '云端',
|
||
'devOptions.remoteCoreRpc': '远程核心 RPC',
|
||
'devOptions.token': '令牌',
|
||
'devOptions.tokenNotSet': '未设置 — RPC 将返回 401',
|
||
'devOptions.triggerSentryTest': '触发 Sentry 测试 (staging)',
|
||
'devOptions.triggerSentryTestDesc':
|
||
'发送一个带有标签的错误以验证 Sentry 管道。Issue #1072 — 验证后移除。',
|
||
'devOptions.sendTestEvent': '发送测试事件',
|
||
'devOptions.sending': '发送中…',
|
||
'devOptions.eventSent': '事件已发送',
|
||
'devOptions.sentryDisabled': '(无 id — 哨兵在此版本中被禁用)',
|
||
'devOptions.failed': '失败',
|
||
'devOptions.appLogs': '应用日志',
|
||
'devOptions.appLogsDesc': '打开包含滚动日志文件的文件夹。报告问题时请附上最近的文件。',
|
||
'devOptions.openLogsFolder': '打开日志文件夹',
|
||
'mnemonic.phraseSaved': '恢复短语已保存',
|
||
'mnemonic.walletReady': '多链钱包身份已就绪。正在返回设置...',
|
||
'mnemonic.writeDownWords': '按顺序记下这',
|
||
'mnemonic.wordsInOrder':
|
||
'个单词,并将其保存在安全的地方。这个短语保护你的本地加密密钥以及你的 EVM、BTC、Solana 和 Tron 钱包身份。',
|
||
'mnemonic.cannotRecover': '这个短语一旦丢失将无法恢复,应该完全保留在你的本地设备上。',
|
||
'mnemonic.copyToClipboard': '复制到剪贴板',
|
||
'mnemonic.alreadyHavePhrase': '我已经有恢复短语',
|
||
'mnemonic.consentSaved': '我已保存此短语并同意将其用于本地钱包设置',
|
||
'mnemonic.enterPhraseToRestore':
|
||
'在下面输入你的恢复短语以恢复本地钱包身份,或将完整的短语粘贴到任意字段中(新备份为 12 个单词;旧版本的 24 个单词短语仍然有效)。',
|
||
'mnemonic.words': '单词数',
|
||
'mnemonic.validPhrase': '有效的恢复短语',
|
||
'mnemonic.generateNewPhrase': '改为生成新的恢复短语',
|
||
'mnemonic.securingData': '正在保护你的数据...',
|
||
'mnemonic.saveRecoveryPhrase': '保存恢复短语',
|
||
'mnemonic.userNotLoaded': '用户未加载。请重新登录或刷新页面。',
|
||
'mnemonic.invalidPhrase': '恢复短语无效。请检查你的单词后重试。',
|
||
'mnemonic.somethingWentWrong': '出了点问题。请重试。',
|
||
'team.failedToCreate': '创建团队失败',
|
||
'team.invalidInviteCode': '无效或已过期的邀请码',
|
||
'team.failedToSwitch': '切换团队失败',
|
||
'team.failedToLeave': '离开团队失败',
|
||
'team.role.owner': '拥有者',
|
||
'team.role.admin': '管理员',
|
||
'team.role.billingManager': '账单管理员',
|
||
'team.role.member': '成员',
|
||
'team.active': '活跃',
|
||
'team.personalTeam': '个人团队',
|
||
'team.manageTeam': '管理团队',
|
||
'team.switching': '切换中...',
|
||
'team.switch': '切换',
|
||
'team.leaving': '离开中...',
|
||
'team.leave': '离开',
|
||
'team.yourTeams': '你的团队',
|
||
'team.createNewTeam': '创建新团队',
|
||
'team.teamName': '团队名称',
|
||
'team.creating': '创建中...',
|
||
'team.joinExistingTeam': '加入已有团队',
|
||
'team.inviteCode': '邀请码',
|
||
'team.joining': '加入中...',
|
||
'team.join': '加入',
|
||
'team.leaveTeam': '离开团队',
|
||
'team.confirmLeave': '确定要离开',
|
||
'team.leaveWarning': '你将失去对该团队及所有团队资源的访问权限。需要重新获得邀请才能重新加入。',
|
||
'team.management': '团队管理',
|
||
'team.notFound': '未找到团队',
|
||
'team.accessDenied': '访问被拒绝',
|
||
'team.members': '成员',
|
||
'team.membersDesc': '管理团队成员和角色',
|
||
'team.invites': '邀请',
|
||
'team.invitesDesc': '生成和管理邀请码',
|
||
'team.settings': '团队设置',
|
||
'team.settingsDesc': '编辑团队名称和设置',
|
||
'team.editSettings': '编辑团队设置',
|
||
'team.enterName': '输入团队名称',
|
||
'team.saving': '正在保存...',
|
||
'team.saveChanges': '保存更改',
|
||
'team.delete': '删除团队',
|
||
'team.deleteDesc': '永久删除该团队',
|
||
'team.deleting': '正在删除...',
|
||
'team.failedToUpdate': '更新团队失败',
|
||
'team.failedToDelete': '删除团队失败',
|
||
'team.manageTitle': '管理 {name}',
|
||
'team.planCreated': '{plan} 计划 • 创建 {date}',
|
||
'team.confirmDelete': '您确定要删除 {name} 吗?',
|
||
'team.deleteWarning': '此操作无法撤消。所有团队数据将被永久删除。',
|
||
'voice.title': '语音听写',
|
||
'voice.settings': '语音设置',
|
||
'voice.settingsDesc': '按住快捷键进行语音听写,将文本插入到当前活动字段中。',
|
||
'voice.hotkey': '快捷键',
|
||
'voice.activationMode': '激活模式',
|
||
'voice.tapToToggle': '点击切换',
|
||
'voice.writingStyle': '书写风格',
|
||
'voice.verbatimTranscription': '逐字转录',
|
||
'voice.naturalCleanup': '自然清理',
|
||
'voice.autoStart': '与核心一起自动启动语音服务',
|
||
'voice.customDictionary': '自定义词典',
|
||
'voice.customDictionaryDesc': '添加姓名、技术术语和领域词汇以提高识别准确率。',
|
||
'voice.addWord': '添加词语...',
|
||
'voice.sttDisabled': '语音听写功能在本地 STT 模型下载并准备好之前被禁用。',
|
||
'voice.openLocalAiModel': '打开本地 AI 模型',
|
||
'voice.serverRestarted': '语音服务已使用新设置重启。',
|
||
'voice.settingsSaved': '语音设置已保存。',
|
||
'voice.serverStarted': '语音服务已启动。',
|
||
'voice.serverStopped': '语音服务已停止。',
|
||
'voice.saveVoiceSettings': '保存语音设置',
|
||
'voice.startVoiceServer': '启动语音服务',
|
||
'voice.stopVoiceServer': '停止语音服务',
|
||
'voice.debugTitle': '语音调试',
|
||
'voice.failedToLoadSettings': '无法加载语音设置',
|
||
'voice.failedToSaveSettings': '无法保存语音设置',
|
||
'voice.failedToStartServer': '语音服务器启动失败',
|
||
'voice.failedToStopServer': '停止语音服务器失败',
|
||
'voice.sttDisabledPrefix': '语音听写已禁用,直到本地 STT 模型下载完成。请使用',
|
||
'voice.sttDisabledSuffix': '上面的部分安装 Whisper。',
|
||
'voice.debug.failedToLoadVoiceDebugData': '加载语音调试数据失败',
|
||
'voice.debug.settingsSaved': '已保存调试设置。',
|
||
'voice.debug.failedToSaveSettings': '无法保存语音设置',
|
||
'voice.debug.runtimeStatus': '运行时状态',
|
||
'voice.debug.runtimeStatusDesc': '语音服务器和语音转文字引擎的实时诊断信息。',
|
||
'voice.debug.server': '服务器',
|
||
'voice.debug.unavailable': '不可用',
|
||
'voice.debug.ready': '准备好',
|
||
'voice.debug.notReady': '还没准备好',
|
||
'voice.debug.hotkey': '热键',
|
||
'voice.debug.notAvailable': '不适用',
|
||
'voice.debug.mode': '模式',
|
||
'voice.debug.transcriptions': '转录',
|
||
'voice.debug.serverError': '服务器错误',
|
||
'voice.debug.advancedSettings': '高级设置',
|
||
'voice.debug.advancedSettingsDesc': '用于录音和静音检测的底层调节参数。',
|
||
'voice.debug.minimumRecordingSeconds': '最短录音秒数',
|
||
'voice.debug.silenceThreshold': '静音阈值 (RMS)',
|
||
'voice.debug.silenceThresholdDesc': '能量低于此值的录音将被视为静音并跳过。值越低,灵敏度越高。',
|
||
'voice.providers.saved': '语音提供商已保存。',
|
||
'voice.providers.failedToSave': '无法保存语音提供商',
|
||
'voice.providers.ellipsis': '…',
|
||
'voice.providers.installing': '安装中',
|
||
'voice.providers.installingBusy': '正在安装...',
|
||
'voice.providers.reinstallLocally': '本地重新安装',
|
||
'voice.providers.repair': '修复',
|
||
'voice.providers.retryLocally': '本地重试',
|
||
'voice.providers.installLocally': '本地安装',
|
||
'voice.providers.whisperReady': '耳语准备好了。',
|
||
'voice.providers.whisperInstallStarted': '耳语安装开始',
|
||
'voice.providers.queued': '排队',
|
||
'voice.providers.failedToInstallWhisper': '安装耳语失败',
|
||
'voice.providers.piperReady': '派珀准备好了。',
|
||
'voice.providers.piperInstallStarted': 'Piper 安装开始',
|
||
'voice.providers.failedToInstallPiper': '安装 Piper 失败',
|
||
'voice.providers.title': '语音提供商',
|
||
'voice.providers.desc':
|
||
'选择转录和合成的运行位置。使用「本地安装」按钮将二进制文件和模型下载到您的工作区。本地服务提供商可在安装完成前保存——无需手动配置 WHISPER_BIN 或 PIPER_BIN。',
|
||
'voice.providers.sttProvider': '语音转文本提供商',
|
||
'voice.providers.sttProviderAria': 'STT 提供商',
|
||
'voice.providers.cloudWhisperProxy': '云(耳语代理)',
|
||
'voice.providers.localWhisper': '本地耳语',
|
||
'voice.providers.installRequired': ' (需要安装)',
|
||
'voice.providers.whisperInstalledTitle': '耳语已安装。单击重新安装。',
|
||
'voice.providers.whisperDownloadTitle': '将 whisper.cpp 和 GGML 模型下载到您的工作区。',
|
||
'voice.providers.installed': '已安装',
|
||
'voice.providers.installFailed': '安装失败',
|
||
'voice.providers.notInstalled': '未安装',
|
||
'voice.providers.whisperModel': '耳语模型',
|
||
'voice.providers.whisperModelAria': '耳语模型',
|
||
'voice.providers.whisperModelTiny': '很小(39 MB,最快)',
|
||
'voice.providers.whisperModelBase': '基础 (74 MB)',
|
||
'voice.providers.whisperModelSmall': '小 (244 MB)',
|
||
'voice.providers.whisperModelMedium': '中型(769 MB,推荐)',
|
||
'voice.providers.whisperModelLargeTurbo': '大型 v3 Turbo(1.5 GB,最佳精度)',
|
||
'voice.providers.ttsProvider': '文本转语音提供商',
|
||
'voice.providers.ttsProviderAria': 'TTS 提供商',
|
||
'voice.providers.cloudElevenLabsProxy': '云(ElevenLabs 代理)',
|
||
'voice.providers.localPiper': '当地风笛手',
|
||
'voice.providers.piperInstalledTitle': 'Piper 已安装。单击重新安装。',
|
||
'voice.providers.piperDownloadTitle':
|
||
'将 Piper 及内置的 en_US-lessac-medium 声音下载到您的工作区。',
|
||
'voice.providers.piperVoice': '派珀之声',
|
||
'voice.providers.piperVoiceAria': '吹笛者的声音',
|
||
'voice.providers.customVoiceOption': '其他(在下面输入)...',
|
||
'voice.providers.customVoiceAria': 'Piper 语音 ID(自定义)',
|
||
'voice.providers.customVoicePlaceholder': 'en_US-lessac-medium',
|
||
'voice.providers.piperVoicesDesc':
|
||
'声音来自 huggingface.co/rhasspy/piper-voices。切换声音后,可能需要点击「安装/重新安装」以下载新的 .onnx 文件。',
|
||
'voice.providers.mascotVoice': '吉祥物声音',
|
||
'voice.providers.mascotVoiceDescPrefix':
|
||
'吉祥物语音回复所使用的 ElevenLabs 声音,在以下位置配置:',
|
||
'voice.providers.mascotSettings': '吉祥物设置',
|
||
'voice.providers.mascotVoiceDescSuffix': '.',
|
||
'voice.providers.hotkeyPlaceholder': 'Fn',
|
||
'voice.providers.piperPreset.lessacMedium': '美国·Lessac(中性,推荐)',
|
||
'voice.providers.piperPreset.lessacHigh': '美国·Lessac(更高品质,更大)',
|
||
'voice.providers.piperPreset.ryanMedium': '美国·瑞安(男)',
|
||
'voice.providers.piperPreset.amyMedium': '美国·艾米(女)',
|
||
'voice.providers.piperPreset.librittsHigh': '美国·LibriTTS(多扬声器)',
|
||
'voice.providers.piperPreset.alanMedium': 'GB·艾伦(男)',
|
||
'voice.providers.piperPreset.jennyDiocoMedium': 'GB·珍妮·迪奥科(女)',
|
||
'voice.providers.piperPreset.northernEnglishMaleMedium': 'GB·北方英语(男)',
|
||
'voice.providers.chip.cloud': 'OpenHuman(托管)',
|
||
'voice.providers.chip.cloudAria': 'OpenHuman 托管服务商始终启用',
|
||
'voice.providers.chip.whisper': 'Whisper(本地)',
|
||
'voice.providers.chip.enableWhisper': '启用本地 Whisper STT',
|
||
'voice.providers.chip.disableWhisper': '禁用本地 Whisper STT',
|
||
'voice.providers.chip.piper': 'Piper(本地)',
|
||
'voice.providers.chip.enablePiper': '启用本地 Piper TTS',
|
||
'voice.providers.chip.disablePiper': '禁用本地 Piper TTS',
|
||
'voice.providers.chip.enableProvider': 'Enable',
|
||
'voice.providers.chip.disableProvider': 'Disable',
|
||
'voice.providers.chip.apiKeyLabel': 'API 密钥',
|
||
'voice.providers.chip.apiKeyPlaceholder': 'sk-…',
|
||
'voice.providers.chip.comingSoon': '即将推出',
|
||
'voice.modal.title': 'Configure',
|
||
'voice.modal.desc': '输入您的 API 密钥以启用此服务提供商。保存前可先测试连接。',
|
||
'voice.modal.testKey': '测试密钥',
|
||
'voice.modal.testing': '测试中…',
|
||
'voice.modal.saveAndEnable': '保存并启用',
|
||
'voice.modal.enable': 'Enable',
|
||
'voice.modal.whisperDesc':
|
||
'选择模型大小并将 Whisper 二进制文件和 GGML 模型安装到您的工作区。模型越大,精度越高,但速度越慢。',
|
||
'voice.modal.piperDesc':
|
||
'选择一个语音并将 Piper 二进制文件和 ONNX 模型安装到您的工作区。Piper 可完全离线运行,延迟极低。',
|
||
'voice.routing.title': '语音路由',
|
||
'voice.routing.desc': '选择由哪些已启用的服务提供商处理语音转文字和文字转语音。',
|
||
'voice.routing.save': 'Save',
|
||
'voice.routing.testStt': '测试 STT',
|
||
'voice.routing.testTts': '测试 TTS',
|
||
'voice.routing.elevenlabsVoice': 'ElevenLabs 声音',
|
||
'voice.routing.elevenlabsVoiceAria': 'ElevenLabs 声音选择',
|
||
'voice.routing.elevenlabsVoiceIdAria': 'ElevenLabs 声音 ID(自定义)',
|
||
'voice.routing.elevenlabsVoiceDesc':
|
||
'选择精选声音,或粘贴来自 ElevenLabs 控制台的自定义声音 ID。',
|
||
'voice.externalProviders.title': '外部语音服务提供商',
|
||
'voice.externalProviders.desc': '直接接入第三方 STT/TTS API,如 Deepgram、ElevenLabs 或 OpenAI。',
|
||
'voice.externalProviders.keySet': '密钥已设置',
|
||
'voice.externalProviders.noKey': '无 API 密钥',
|
||
'voice.externalProviders.test': 'Test',
|
||
'voice.externalProviders.testing': '测试中…',
|
||
'voice.externalProviders.remove': 'Remove',
|
||
'voice.externalProviders.provider': 'Provider',
|
||
'voice.externalProviders.selectProvider': '选择服务提供商…',
|
||
'voice.externalProviders.apiKey': 'API 密钥',
|
||
'voice.externalProviders.apiKeyPlaceholder': 'sk-…',
|
||
'voice.externalProviders.add': 'Add',
|
||
'autocomplete.title': '自动补全',
|
||
'autocomplete.settings': '设置',
|
||
'autocomplete.acceptWithTab': 'Tab 键接受',
|
||
'autocomplete.stylePreset': '风格预设',
|
||
'autocomplete.style.balanced': '均衡',
|
||
'autocomplete.style.concise': '简洁',
|
||
'autocomplete.style.formal': '正式',
|
||
'autocomplete.style.casual': '随意',
|
||
'autocomplete.style.custom': '自定义',
|
||
'autocomplete.disabledApps': '禁用的应用(每行一个包名/应用令牌)',
|
||
'autocomplete.saveSettings': '保存设置',
|
||
'autocomplete.saving': '保存中…',
|
||
'autocomplete.runtime': '运行时',
|
||
'autocomplete.running': '运行中',
|
||
'autocomplete.start': '启动',
|
||
'autocomplete.stop': '停止',
|
||
'autocomplete.settingsSaved': '自动补全设置已保存。',
|
||
'autocomplete.started': '自动补全已启动。',
|
||
'autocomplete.didNotStart': '自动补全未能启动。请检查是否已启用。',
|
||
'autocomplete.stopped': '自动补全已停止。',
|
||
'autocomplete.advancedSettings': '高级设置',
|
||
'autocomplete.debugTitle': '自动补全调试',
|
||
'chat.agentChat': '智能体对话',
|
||
'chat.overrides': '覆盖设置',
|
||
'chat.model': '模型',
|
||
'chat.temperature': '温度',
|
||
'chat.conversation': '对话',
|
||
'chat.startAgentConversation': '开始与智能体对话。',
|
||
'chat.you': '你',
|
||
'chat.agent': '智能体',
|
||
'chat.askAgent': '向智能体提问...',
|
||
'chat.sendMessage': '发送消息',
|
||
'composio.triageTitle': '集成触发器',
|
||
'composio.triageDesc':
|
||
'启用时,每个传入的 Composio 触发器都会经过 AI 分类步骤,对事件进行分类并可能启动自动化操作——每个触发器使用一个本地 LLM 轮次。如果你更喜欢手动审查,可以全局或按集成禁用。如果环境变量',
|
||
'composio.disableAllTriage': '禁用所有触发器的 AI 分类',
|
||
'composio.triggersStillRecorded': '触发器仍记录到历史记录中——不运行 LLM 轮次。',
|
||
'composio.disableSpecificIntegrations': '禁用特定集成的 AI 分类',
|
||
'composio.settingsSaved': '设置已保存',
|
||
'composio.saveFailed': '保存失败。请重试。',
|
||
'cron.title': '定时任务',
|
||
'cron.scheduledJobs': '计划任务',
|
||
'cron.manageCronJobs': '管理核心调度器的定时任务。',
|
||
'cron.refreshCronJobs': '刷新定时任务',
|
||
'localModel.modelStatus': '模型状态',
|
||
'localModel.downloadModels': '下载模型',
|
||
'localModel.usage': '使用',
|
||
'localModel.usageDesc': '选择哪些子系统在本地模型上运行。未勾选的将使用云端。',
|
||
'localModel.enableRuntime': '启用本地 AI 运行时',
|
||
'localModel.enableRuntimeDesc':
|
||
'总开关。默认关闭——Ollama 保持空闲。启用后,树摘要器、屏幕智能和自动补全始终使用本地模型。',
|
||
'localModel.advancedSettings': '高级设置',
|
||
'localModel.debugTitle': '本地模型调试',
|
||
'screenAwareness.debugTitle': '屏幕感知调试',
|
||
'screenAwareness.debug.debugAndDiagnostics': '调试与诊断',
|
||
'screenAwareness.debug.collapse': '崩溃',
|
||
'screenAwareness.debug.expand': '展开',
|
||
'screenAwareness.debug.failedToSave': '保存屏幕情报失败',
|
||
'screenAwareness.debug.policyTitle': '屏幕情报政策',
|
||
'screenAwareness.debug.baselineFps': '基线 FPS',
|
||
'screenAwareness.debug.useVisionModel': '使用视觉模型',
|
||
'screenAwareness.debug.useVisionModelDesc':
|
||
'将截图发送给视觉 LLM 以获取更丰富的上下文。关闭时,仅使用 OCR 文本配合纯文本 LLM——速度更快且无需视觉模型。',
|
||
'screenAwareness.debug.keepScreenshots': '保留截图',
|
||
'screenAwareness.debug.keepScreenshotsDesc': '将捕获的截图保存到工作区,而非处理后删除',
|
||
'screenAwareness.debug.allowlist': '允许列表(每行一条规则)',
|
||
'screenAwareness.debug.denylist': '拒绝名单(每行一条规则)',
|
||
'screenAwareness.debug.saveSettings': '保存屏幕智能设置',
|
||
'screenAwareness.debug.sessionStats': '会话统计',
|
||
'screenAwareness.debug.framesEphemeral': '框架(临时)',
|
||
'screenAwareness.debug.panicStop': '紧急停止',
|
||
'screenAwareness.debug.defaultPanicHotkey': 'Cmd+Shift+。',
|
||
'screenAwareness.debug.vision': '愿景',
|
||
'screenAwareness.debug.idle': '空闲',
|
||
'screenAwareness.debug.visionQueue': '视觉队列',
|
||
'screenAwareness.debug.lastVision': '最后的愿景',
|
||
'screenAwareness.debug.notAvailable': '不适用',
|
||
'screenAwareness.debug.visionSummaries': '愿景摘要',
|
||
'screenAwareness.debug.refreshing': '清爽…',
|
||
'screenAwareness.debug.noSummaries': '还没有总结。',
|
||
'screenAwareness.debug.unknownApp': '未知应用程序',
|
||
'screenAwareness.debug.macosOnly': 'Screen Intelligence V1 目前仅在 macOS 上受支持。',
|
||
'memory.debugTitle': '记忆调试',
|
||
'memory.documents': '文件',
|
||
'memory.filterByNamespace': '按名称空间过滤...',
|
||
'memory.refresh': '刷新',
|
||
'memory.noDocumentsFound': '没有找到文件。',
|
||
'memory.delete': '删除',
|
||
'memory.rawResponse': '原始响应',
|
||
'memory.namespaces': '命名空间',
|
||
'memory.noNamespacesFound': '未找到名称空间。',
|
||
'memory.queryRecall': '查询与召回',
|
||
'memory.namespace': '命名空间',
|
||
'memory.queryText': '查询文字...',
|
||
'memory.defaultMaxChunks': '10',
|
||
'memory.maxChunks': '最大块数',
|
||
'memory.query': '查询',
|
||
'memory.recall': '召回',
|
||
'memory.queryLabel': '查询',
|
||
'memory.recallLabel': '召回',
|
||
'memory.queryResult': '查询结果',
|
||
'memory.recallResult': '调用结果',
|
||
'memory.clearNamespace': '清除命名空间',
|
||
'memory.clearNamespaceDescription': '永久删除命名空间内的所有文档。',
|
||
'memory.selectNamespace': '选择命名空间...',
|
||
'memory.exampleNamespace': '例如技能:gmail:user@example.com',
|
||
'memory.clear': '清除',
|
||
'memory.deleteConfirm': '删除命名空间“{namespace}”中的文档“{documentId}”吗?',
|
||
'memory.clearNamespaceConfirm': '此操作将永久删除命名空间「{namespace}」中的所有文档。是否继续?',
|
||
'memory.clearNamespaceSuccess': '命名空间“{namespace}”已清除。',
|
||
'memory.clearNamespaceEmpty': '“{namespace}”中没有需要清除的内容。',
|
||
'webhooks.debugTitle': 'Webhook 调试',
|
||
'webhooks.failedToLoadDebugData': '无法加载 webhook 调试数据',
|
||
'webhooks.clearLogsConfirm': '清除所有捕获的 Webhook 调试日志吗?',
|
||
'webhooks.failedToClearLogs': '无法清除 webhook 日志',
|
||
'webhooks.loading': '正在加载...',
|
||
'webhooks.refresh': '刷新',
|
||
'webhooks.clearing': '清算...',
|
||
'webhooks.clearLogs': '清除日志',
|
||
'webhooks.registered': '已注册',
|
||
'webhooks.captured': '被捕获',
|
||
'webhooks.live': '直播',
|
||
'webhooks.disconnected': '断开连接',
|
||
'webhooks.lastEvent': '最后活动',
|
||
'webhooks.at': '在',
|
||
'webhooks.registeredWebhooks': '注册网络钩子',
|
||
'webhooks.noActiveRegistrations': '没有活跃的注册。',
|
||
'webhooks.resolvingBackendUrl': '正在解析后端 URL...',
|
||
'webhooks.capturedRequests': '捕获的请求',
|
||
'webhooks.noRequestsCaptured': '尚未捕获任何 Webhook 请求。',
|
||
'webhooks.unrouted': '未布线的',
|
||
'webhooks.pending': '待定',
|
||
'webhooks.requestHeaders': '请求标头',
|
||
'webhooks.queryParams': '查询参数',
|
||
'webhooks.requestBody': '请求正文',
|
||
'webhooks.responseHeaders': '响应头',
|
||
'webhooks.responseBody': '响应体',
|
||
'webhooks.rawPayload': '原始有效负载',
|
||
'webhooks.empty': '[空]',
|
||
'providerSetup.error.defaultDetails': '提供商设置失败。',
|
||
'providerSetup.error.providerFallback': '提供者',
|
||
'providerSetup.error.credentialsRejected': '{provider} 拒绝了此凭据。请检查 API 密钥后重试。',
|
||
'providerSetup.error.endpointNotRecognized': '{provider} 无法识别该端点。请检查基础 URL 后重试。',
|
||
'providerSetup.error.providerUnavailable': '{provider} 当前不可用。请稍后重试或查看服务商状态。',
|
||
'providerSetup.error.unreachable': '无法连接到 {provider}。请检查端点 URL 和网络连接后重试。',
|
||
'providerSetup.error.couldNotReachWithMessage': '无法到达 {provider}:{message}',
|
||
'providerSetup.error.technicalDetails': '技术细节',
|
||
'notifications.routingTitle': '通知路由',
|
||
'notifications.routing.pipelineStats': '管道统计',
|
||
'notifications.routing.total': '合计',
|
||
'notifications.routing.unread': '未读',
|
||
'notifications.routing.unscored': '未计分',
|
||
'notifications.routing.intelligenceTitle': '通知情报',
|
||
'notifications.routing.intelligenceDesc':
|
||
'来自已连接账户的每条通知都由本地 AI 模型进行评分。重要通知将自动路由至您的编排器智能体,确保关键信息不会遗漏。',
|
||
'notifications.routing.howItWorks': '它是如何运作的',
|
||
'notifications.routing.level.drop': '掉落',
|
||
'notifications.routing.level.dropDesc': '噪音/垃圾邮件 - 已存储但未浮出水面',
|
||
'notifications.routing.level.acknowledge': '确认',
|
||
'notifications.routing.level.acknowledgeDesc': '低优先级 — 显示在通知中心',
|
||
'notifications.routing.level.react': '反应',
|
||
'notifications.routing.level.reactDesc': '中优先级 — 触发集中的座席响应',
|
||
'notifications.routing.level.escalate': '升级',
|
||
'notifications.routing.level.escalateDesc': '高优先级 — 转发给协调器代理',
|
||
'notifications.routing.perProvider': '每个提供商的路由',
|
||
'notifications.routing.threshold': '阈值',
|
||
'notifications.routing.routeToOrchestrator': '路由到协调器',
|
||
'notifications.routing.loadSettingsError': '无法加载设置。重新打开此面板以重试。',
|
||
'common.reload': '重新加载',
|
||
'common.skip': '跳过',
|
||
'common.disable': '禁用',
|
||
'common.enable': '启用',
|
||
'chat.safetyTimeout': '助手 2 分钟内未响应。请重试或检查你的连接。',
|
||
'chat.filter.all': '全部',
|
||
'chat.filter.work': '工作',
|
||
'chat.filter.briefing': '简报',
|
||
'chat.filter.notification': '通知',
|
||
'chat.filter.workers': '工作线程',
|
||
'chat.selectThread': '选择一个对话',
|
||
'chat.threads': '对话列表',
|
||
'chat.noThreads': '暂无对话',
|
||
'chat.noLabelThreads': '此标签下暂无对话',
|
||
'chat.noWorkerThreads': '暂无工作线程',
|
||
'chat.deleteThread': '删除对话',
|
||
'chat.deleteThreadConfirm': '确定要删除"{title}"吗?',
|
||
'chat.untitledThread': '未命名对话',
|
||
'chat.editThreadTitle': '编辑会话标题',
|
||
'chat.hideSidebar': '隐藏侧边栏',
|
||
'chat.showSidebar': '显示侧边栏',
|
||
'chat.newThreadShortcut': '新建对话',
|
||
'chat.new': '新建',
|
||
'chat.failedToLoadMessages': '加载消息失败',
|
||
'chat.thinkingIteration': '思考中...({n})',
|
||
'chat.thinkingDots': '思考中...',
|
||
'chat.approachingLimit': '接近使用限制',
|
||
'chat.approachingLimitMsg': '你已使用了可用配额的{pct}%。',
|
||
'chat.upgrade': '升级',
|
||
'chat.weeklyLimitHit': '已达到每周限制。',
|
||
'chat.resets': '重置时间',
|
||
'chat.topUpToContinue': '充值以继续使用。',
|
||
'chat.budgetComplete': '预算已用完。',
|
||
'chat.topUp': '充值',
|
||
'chat.cycle': '周期',
|
||
'chat.cycleSpent': '本周期已用',
|
||
'chat.cycleRemaining': '剩余',
|
||
'chat.left': '剩余',
|
||
'chat.setup': '设置',
|
||
'chat.switchToText': '切换到文本',
|
||
'chat.transcribing': '转录中...',
|
||
'chat.stopAndSend': '停止并发送',
|
||
'chat.startTalking': '开始说话',
|
||
'chat.playingVoiceReply': '正在播放语音回复',
|
||
'chat.voiceHint': '使用麦克风说话',
|
||
'chat.micUnavailable': '麦克风不可用',
|
||
'chat.turn': '轮',
|
||
'chat.turns': '轮',
|
||
'chat.openWorkerThread': '打开工作线程',
|
||
'chat.attachment.attach': '添加图片',
|
||
'chat.attachment.remove': '移除 {name}',
|
||
'chat.attachment.tooMany': '每条消息最多 {max} 张图片',
|
||
'chat.attachment.tooLarge': '图片超过 {max} 大小限制',
|
||
'chat.attachment.unsupportedType': '不支持的文件类型。请使用 PNG、JPEG、WebP、GIF 或 BMP。',
|
||
'chat.attachment.readFailed': '无法读取文件',
|
||
'memory.searchAria': '搜索记忆',
|
||
'memory.searchPlaceholder': '搜索记忆条目...',
|
||
'memory.sourceFilter.all': '所有来源',
|
||
'memory.sourceFilter.email': '邮件',
|
||
'memory.sourceFilter.calendar': '日历',
|
||
'memory.sourceFilter.telegram': 'Telegram',
|
||
'memory.sourceFilter.aiInsight': 'AI 洞察',
|
||
'memory.sourceFilter.system': '系统',
|
||
'memory.sourceFilter.trading': '交易',
|
||
'memory.sourceFilter.security': '安全',
|
||
'memory.ingestionActivity': '摄取活动',
|
||
'memory.events': '个事件',
|
||
'memory.event': '个事件',
|
||
'memory.overTheLast': '过去',
|
||
'memory.months': '个月',
|
||
'memory.peak': '峰值',
|
||
'memory.perDay': '/天',
|
||
'memory.less': '较少',
|
||
'memory.more': '较多',
|
||
'memory.on': '于',
|
||
'memory.loading': '正在加载记忆',
|
||
'memory.fetching': '正在获取你的记忆条目...',
|
||
'memory.analyzing': '正在分析记忆',
|
||
'memory.analyzingHint': '正在处理你的记忆以提取洞察...',
|
||
'memory.noMatches': '未找到匹配',
|
||
'memory.noMatchesHint': '尝试更改搜索词或筛选条件。',
|
||
'memory.allCaughtUp': '全部完成',
|
||
'memory.allCaughtUpHint': '没有新的记忆条目需要处理。',
|
||
'memory.noAnalysis': '暂无分析',
|
||
'memory.noAnalysisHint': '运行分析以发现记忆中的模式。',
|
||
'memory.emptyHint': '开始交互以创建你的第一条记忆。',
|
||
'mic.unavailable': '麦克风不可用',
|
||
'mic.permissionDenied': '麦克风权限被拒绝',
|
||
'mic.failedToStartRecorder': '启动录音失败',
|
||
'mic.deviceUnavailable': '所选麦克风不可用——请尝试其他设备。',
|
||
'mic.deviceInUse': '麦克风正被其他应用程序占用。',
|
||
'mic.error': '麦克风错误',
|
||
'mic.transcribing': '转录中...',
|
||
'mic.retryingTranscription': 'Retrying... ({attempt} of {max})',
|
||
'mic.tapToSend': '点击发送',
|
||
'mic.waitingForAgent': '等待助手...',
|
||
'mic.tapAndSpeak': '点击说话',
|
||
'mic.stopRecording': '停止录音',
|
||
'mic.startRecording': '开始录音',
|
||
'mic.deviceSelector': '麦克风装置',
|
||
'mic.tapToSendCountdown': '点击发送 ({seconds}秒)',
|
||
'token.usageLimitReached': '已达到使用限制',
|
||
'token.approachingLimit': '接近限制',
|
||
'token.planClickForDetails': '套餐 - 点击查看详情',
|
||
'token.sessionTokens': '输入: {in} | 输出: {out} | 轮次: {turns}',
|
||
'token.limit': '已达限制',
|
||
'catalog.noCapabilityBinding': '无能力绑定',
|
||
'catalog.downloadFailed': '下载失败',
|
||
'catalog.active': '活跃',
|
||
'catalog.installed': '已安装',
|
||
'catalog.notDownloaded': '未下载',
|
||
'catalog.inUse': '使用中',
|
||
'catalog.use': '使用',
|
||
'catalog.deleteModel': '删除模型',
|
||
'catalog.download': '下载',
|
||
'navigator.recent': '最近',
|
||
'navigator.today': '今天',
|
||
'navigator.thisWeek': '本周',
|
||
'navigator.sources': '来源',
|
||
'navigator.email': '邮件',
|
||
'navigator.slack': 'Slack',
|
||
'navigator.chat': '对话',
|
||
'navigator.documents': '文档',
|
||
'navigator.people': '联系人',
|
||
'navigator.topics': '主题',
|
||
'dreams.description': '梦境是 AI 生成的反思,综合了你记忆中的模式。',
|
||
'dreams.comingSoon': '即将推出',
|
||
'assignment.memoryLlm': '记忆 LLM',
|
||
'assignment.memoryLlmAria': '选择记忆 LLM',
|
||
'assignment.embedder': '嵌入模型',
|
||
'assignment.loaded': '已加载',
|
||
'assignment.notDownloaded': '未下载',
|
||
'assignment.usedForExtractSummarise': '用于提取和摘要',
|
||
'insights.knownFacts': '已知事实',
|
||
'insights.preferences': '偏好',
|
||
'insights.relationships': '关系',
|
||
'insights.skills': '技能',
|
||
'insights.opinions': '观点',
|
||
'insights.other': '其他',
|
||
'insights.title': '洞察',
|
||
'insights.empty': '暂无洞察。随着你的记忆增长,洞察会自动生成。',
|
||
'insights.description': '基于记忆图谱中的 {count} 个关系。',
|
||
'insights.items': '条',
|
||
'insights.more': '更多',
|
||
'calls.joiningCall': '正在加入通话',
|
||
'calls.meetWindowOpening': 'Meet 窗口正在打开...',
|
||
'calls.failedToStart': '启动通话失败',
|
||
'calls.couldNotStart': '无法启动通话',
|
||
'calls.failedToClose': '关闭通话失败',
|
||
'calls.couldNotClose': '无法关闭通话',
|
||
'calls.joinMeet': '加入 Meet',
|
||
'calls.joinMeetDescription': '输入 Google Meet 链接以加入。',
|
||
'calls.meetLink': 'Meet 链接',
|
||
'calls.displayName': '显示名称',
|
||
'calls.openingMeet': '正在打开 Meet...',
|
||
'calls.joinCall': '加入通话',
|
||
'calls.activeCalls': '活跃通话',
|
||
'calls.leave': '离开',
|
||
'workspace.wipeConfirm': '确定要清除所有记忆吗?此操作不可撤销。',
|
||
'workspace.resetTreeConfirm': '确定要重建记忆树吗?',
|
||
'workspace.wipeTitle': '清除记忆',
|
||
'workspace.resetting': '重置中...',
|
||
'workspace.resetMemory': '重置记忆',
|
||
'workspace.resetTreeTitle': '重建记忆树',
|
||
'workspace.rebuilding': '重建中...',
|
||
'workspace.resetMemoryTree': '重置记忆树',
|
||
'workspace.building': '构建中...',
|
||
'workspace.buildSummaryTrees': '构建摘要树',
|
||
'workspace.viewVault': '查看存储库',
|
||
'workspace.openingVaultTitle': '在 Obsidian 中打开存储库',
|
||
'workspace.openingVaultMessage':
|
||
'如果 Obsidian 没有打开,请从 obsidian.md 安装或使用"显示文件夹"。存储库路径:',
|
||
'workspace.openVaultFailedTitle': '无法在 Obsidian 中打开存储库',
|
||
'workspace.openVaultFailedMessage': '使用"显示文件夹"直接打开存储库目录。存储库路径:',
|
||
'workspace.revealVaultFailed': '无法显示存储库文件夹',
|
||
'workspace.revealFolder': '显示文件夹',
|
||
'workspace.checkingVault': '检查中…',
|
||
'workspace.vaultNotRegisteredHelp':
|
||
'Obsidian 只能打开您已添加为存储库的文件夹。在 Obsidian 中选择「以存储库方式打开文件夹」并选取下方文件夹——只需操作一次。然后再次点击「查看存储库」。',
|
||
'workspace.obsidianNotFoundHelp':
|
||
'未能在此设备上找到 Obsidian。请安装它,或者如果安装在非标准位置,请在「高级」中设置其配置文件夹。',
|
||
'workspace.openAnyway': '仍在 Obsidian 中打开',
|
||
'workspace.installObsidian': '安装 Obsidian',
|
||
'workspace.obsidianAdvanced': 'Obsidian 安装在其他位置?',
|
||
'workspace.obsidianConfigDirLabel': 'Obsidian 配置文件夹',
|
||
'workspace.obsidianConfigDirHint':
|
||
'包含 obsidian.json 的文件夹路径(例如 ~/.config/obsidian)。留空以自动检测。',
|
||
'workspace.obsidianConfigDirPlaceholder': '~/.config/obsidian',
|
||
'workspace.graphLoadFailed': '无法加载记忆图谱',
|
||
'workspace.loadingGraph': '正在加载记忆图谱...',
|
||
'workspace.graphViewMode': '记忆图谱视图模式',
|
||
'workspace.trees': '树状视图',
|
||
'workspace.contacts': '联系人',
|
||
'graph.noContactMentions': '无联系人提及',
|
||
'graph.noMemory': '无记忆',
|
||
'graph.source': '来源',
|
||
'graph.topic': '主题',
|
||
'graph.global': '全局',
|
||
'graph.document': '文档',
|
||
'graph.contact': '联系人',
|
||
'graph.nodes': '个节点',
|
||
'graph.parentChild': '父子',
|
||
'graph.documentContact': '文档-联系人',
|
||
'graph.link': '条链接',
|
||
'graph.links': '条链接',
|
||
'graph.children': '个子节点',
|
||
'graph.clickToOpenObsidian': '点击在 Obsidian 中打开',
|
||
'graph.person': '人物',
|
||
'graph.resetView': '重置视图',
|
||
'modal.dontShowAgain': '不再显示',
|
||
'reflections.loading': '正在加载反思...',
|
||
'reflections.empty': '暂无反思',
|
||
'reflections.title': '反思',
|
||
'reflections.proposedAction': '建议操作',
|
||
'reflections.act': '执行',
|
||
'reflections.dismiss': '忽略',
|
||
'whatsapp.chatsSynced': '个对话已同步',
|
||
'whatsapp.chatSynced': '个对话已同步',
|
||
'sync.active': '活跃',
|
||
'sync.recent': '最近',
|
||
'sync.idle': '空闲',
|
||
'sync.memorySources': '记忆来源',
|
||
'sync.noConnectedSources': '未连接任何来源',
|
||
'sync.chunks': '个片段',
|
||
'sync.lastChunk': '最后片段:',
|
||
'sync.pending': '待处理',
|
||
'sync.processed': '已处理',
|
||
'sync.syncing': '同步中...',
|
||
'sync.sync': '同步',
|
||
'sync.failedToLoad': '加载失败',
|
||
'sync.noContent': '无可用内容',
|
||
'memorySources.title': '记忆来源',
|
||
'memorySources.empty': '暂无记忆来源。添加一个来源即可开始注入记忆。',
|
||
'memorySources.customSources': '自定义来源',
|
||
'memorySources.addSource': '添加来源',
|
||
'memorySources.noCustomSources':
|
||
'暂无自定义来源。添加文件夹、GitHub 仓库、RSS 订阅或网页即可开始。',
|
||
'memorySources.loadingConnections': '正在加载连接…',
|
||
'memorySources.noConnections': '未找到活跃的 Composio 连接。请先连接一个集成。',
|
||
'memorySources.pickConnection': '选择连接',
|
||
'memorySources.selectConnection': '— 选择连接 —',
|
||
'memorySources.composioListFailed': '加载 Composio 连接失败。',
|
||
'memorySources.browse': '浏览…',
|
||
'memorySources.folderPathPlaceholder': '/Users/you/notes',
|
||
'memorySources.globPatternPlaceholder': '**/*.md',
|
||
'memorySources.repoUrlPlaceholder': 'https://github.com/org/repo',
|
||
'memorySources.branchPlaceholder': 'main',
|
||
'memorySources.feedUrlPlaceholder': 'https://example.com/feed.xml',
|
||
'memorySources.pageUrlPlaceholder': 'https://example.com/article',
|
||
'memorySources.cssSelectorPlaceholder': 'article',
|
||
'memorySources.searchQueryPlaceholder': 'from:user AI safety',
|
||
'memorySources.kind.composio': '集成',
|
||
'memorySources.kind.folder': '本地文件夹',
|
||
'memorySources.kind.github_repo': 'GitHub 仓库',
|
||
'memorySources.kind.twitter_query': 'Twitter 搜索',
|
||
'memorySources.kind.rss_feed': 'RSS 订阅',
|
||
'memorySources.kind.web_page': '网页',
|
||
'memorySources.sync.successTitle': '正在同步',
|
||
'memorySources.sync.successMessage': '进度很快会显示。',
|
||
'memorySources.sync.failedTitle': '同步失败:',
|
||
'time.justNow': '刚刚',
|
||
'time.secondsAgoSuffix': '秒前',
|
||
'time.minutesAgoSuffix': '分钟前',
|
||
'time.hoursAgoSuffix': '小时前',
|
||
'time.daysAgoSuffix': '天前',
|
||
'memorySources.pickKind': '要添加哪种来源?',
|
||
'memorySources.backToKinds': '返回来源类型',
|
||
'memorySources.label': '标签',
|
||
'memorySources.labelPlaceholder': '我的研究笔记',
|
||
'memorySources.add': '添加',
|
||
'memorySources.adding': '正在添加…',
|
||
'memorySources.added': '来源已添加',
|
||
'memorySources.removed': '来源已移除',
|
||
'memorySources.remove': '移除',
|
||
'memorySources.enable': '启用',
|
||
'memorySources.disable': '停用',
|
||
'memorySources.toggleFailed': '切换失败',
|
||
'memorySources.removeFailed': '移除失败',
|
||
'memorySources.folderPath': '文件夹路径',
|
||
'memorySources.globPattern': 'Glob 模式',
|
||
'memorySources.repoUrl': '仓库 URL',
|
||
'memorySources.branch': '分支',
|
||
'memorySources.feedUrl': '订阅 URL',
|
||
'memorySources.pageUrl': '页面 URL',
|
||
'memorySources.cssSelector': 'CSS 选择器(可选)',
|
||
'memorySources.searchQuery': '搜索查询',
|
||
'backend.aiBackend': 'AI 后端',
|
||
'backend.cloud': '云端',
|
||
'backend.recommended': '推荐',
|
||
'backend.cloudDescription': '快速、强大的模型托管在我们的服务器上。可立即使用。',
|
||
'backend.privacyNote': '个人数据、消息或密钥绝不会发送到我们的服务器。',
|
||
'backend.local': '本地',
|
||
'backend.advanced': '高级',
|
||
'backend.localDescription': '使用 Ollama 在本地运行模型。完全隐私,需要设置。',
|
||
'backend.ramRecommended': '建议 16GB+ 内存',
|
||
'subconscious.tasks': '个任务',
|
||
'subconscious.ticks': '次滴答',
|
||
'subconscious.last': '上次',
|
||
'subconscious.failed': '失败',
|
||
'subconscious.tickInterval': '滴答间隔',
|
||
'subconscious.runNow': '立即运行',
|
||
'subconscious.providerUnavailableTitle': '潜意识已暂停',
|
||
'subconscious.providerSettings': 'AI 设置',
|
||
'subconscious.approvalNeeded': '需要审批',
|
||
'subconscious.requiresApproval': '需要审批',
|
||
'subconscious.fixInConnections': '在连接中修复',
|
||
'subconscious.goAhead': '继续执行',
|
||
'subconscious.activeTasks': '活跃任务',
|
||
'subconscious.noActiveTasks': '暂无活跃任务',
|
||
'subconscious.default': '默认',
|
||
'subconscious.addTaskPlaceholder': '添加新任务...',
|
||
'subconscious.activityLog': '活动日志',
|
||
'subconscious.noActivity': '暂无活动',
|
||
'subconscious.decision.nothingNew': '无新内容',
|
||
'subconscious.decision.completed': '已完成',
|
||
'subconscious.decision.evaluating': '评估中',
|
||
'subconscious.decision.waitingApproval': '等待审批',
|
||
'subconscious.decision.failed': '失败',
|
||
'subconscious.decision.cancelled': '已取消',
|
||
'subconscious.decision.skipped': '已跳过',
|
||
'actionable.complete': '完成',
|
||
'actionable.dismiss': '忽略',
|
||
'actionable.snooze': '稍后提醒',
|
||
'actionable.new': '新',
|
||
'stats.storage': '存储',
|
||
'stats.files': '个文件',
|
||
'stats.documents': '文档',
|
||
'stats.today': '今天',
|
||
'stats.namespaces': '命名空间',
|
||
'stats.relations': '关系',
|
||
'stats.firstMemory': '首条记忆',
|
||
'stats.latest': '最新',
|
||
'stats.sessions': '会话数',
|
||
'stats.tokens': '个令牌',
|
||
'bootCheck.invalidUrl': '请输入核心 URL。',
|
||
'bootCheck.urlMustStartWith': 'URL 必须以 http:// 或 https:// 开头',
|
||
'bootCheck.validUrlRequired': '请输入有效的 URL(例如 https://core.example.com/rpc)',
|
||
'bootCheck.tokenRequired': '请输入核心认证令牌。',
|
||
'bootCheck.httpPublicWarning':
|
||
'这是公网主机上的纯 HTTP 地址——流量不会被加密。除非你信任该网络,否则请使用 HTTPS。',
|
||
'bootCheck.chooseCoreMode': '选择核心模式',
|
||
'bootCheck.connectToCore': '连接到你的核心',
|
||
'bootCheck.desktopDescription': 'OpenHuman 需要一个运行中的核心才能工作。请选择连接方式。',
|
||
'bootCheck.webDescription':
|
||
'网页版 OpenHuman 连接到由你控制的远程核心。请输入其 URL 和认证令牌,或安装桌面版在本地运行核心。',
|
||
'bootCheck.preferDesktop': '更希望在自己的设备上运行一切?',
|
||
'bootCheck.downloadDesktop': '下载桌面应用',
|
||
'bootCheck.localRecommended': '本地(推荐)',
|
||
'bootCheck.localDescription': '嵌入式核心在本设备上运行 — 最快,无需配置。',
|
||
'bootCheck.cloudMode': '云端',
|
||
'bootCheck.cloudDescription': '连接到自定义 URL 处的远程核心。',
|
||
'bootCheck.coreRpcUrl': '核心 RPC URL',
|
||
'bootCheck.rpcUrlPlaceholder': 'https://core.example.com/rpc',
|
||
'bootCheck.authToken': '认证令牌',
|
||
'bootCheck.bearerTokenPlaceholder': '远程核心上配置的 Bearer 令牌',
|
||
'bootCheck.storedLocally': '仅存储在本设备上。远程核心必需 — 桌面版每次 RPC 都会以 ',
|
||
'bootCheck.testing': '测试中…',
|
||
'bootCheck.testConnection': '测试连接',
|
||
'bootCheck.connectedOk': '已连接 ✓',
|
||
'bootCheck.authFailed': '认证失败 — 请检查令牌(收到 401/403)。',
|
||
'bootCheck.unreachablePrefix': '无法连接:',
|
||
'bootCheck.checkingCore': '正在检查核心…',
|
||
'bootCheck.cannotReach': '无法连接到核心',
|
||
'bootCheck.cannotReachDesc': '核心进程无法访问。请尝试切换到其他模式。',
|
||
'bootCheck.switchMode': '切换模式',
|
||
'bootCheck.quit': '退出',
|
||
'bootCheck.legacyDetected': '检测到旧版后台核心',
|
||
'bootCheck.legacyDescription':
|
||
'此设备上正在运行一个单独安装的 OpenHuman 守护进程。必须先将其移除,嵌入式核心才能接管。',
|
||
'bootCheck.removing': '正在移除…',
|
||
'bootCheck.removeContinue': '移除并继续',
|
||
'bootCheck.localNeedsRestart': '本地核心需要重启',
|
||
'bootCheck.localNeedsRestartDesc': '本地核心版本与此应用构建版本不匹配。重启后将加载正确的版本。',
|
||
'bootCheck.restarting': '正在重启…',
|
||
'bootCheck.restartCore': '重启核心',
|
||
'bootCheck.cloudNeedsUpdate': '云端核心需要更新',
|
||
'bootCheck.cloudNeedsUpdateDesc':
|
||
'云端核心版本与此应用构建版本不匹配。请运行核心更新程序来解决此差异。',
|
||
'bootCheck.updating': '正在更新…',
|
||
'bootCheck.updateCloudCore': '更新云端核心',
|
||
'bootCheck.versionCheckFailed': '核心版本检查失败',
|
||
'bootCheck.versionCheckFailedDesc':
|
||
'核心正在运行但未暴露版本接口。它可能已过时。请重启或更新核心以继续。',
|
||
'bootCheck.working': '正在执行…',
|
||
'bootCheck.restartUpdateCore': '重启 / 更新核心',
|
||
'bootCheck.unexpectedError': '意外的启动检查错误',
|
||
'bootCheck.actionFailed': '操作失败 — 请重试。',
|
||
'bootCheck.portConflictTitle': '无法启动应用引擎',
|
||
'bootCheck.portConflictBody':
|
||
'另一个进程正在占用 OpenHuman 所需的网络端口。我们将尝试自动修复此问题。',
|
||
'bootCheck.portConflictFixButton': '自动修复',
|
||
'bootCheck.portConflictFixing': '修复中…',
|
||
'bootCheck.portConflictFixFailed': '自动修复未成功。请重启您的计算机后重试。',
|
||
'notifications.justNow': '刚刚',
|
||
'notifications.minAgo': '{n} 分钟前',
|
||
'notifications.hrAgo': '{n} 小时前',
|
||
'notifications.dayAgo': '{n} 天前',
|
||
'notifications.category.messages': '消息',
|
||
'notifications.category.agents': '智能体',
|
||
'notifications.category.skills': '技能',
|
||
'notifications.category.system': '系统',
|
||
'notifications.category.meetings': '会议',
|
||
'notifications.category.reminders': '提醒',
|
||
'notifications.category.important': '重要',
|
||
'about.update.status.checking': '检查中...',
|
||
'about.update.status.available': 'v{version} 可用',
|
||
'about.update.status.availableNoVersion': '更新可用',
|
||
'about.update.status.downloading': '下载中...',
|
||
'about.update.status.readyToInstall': 'v{version} 已准备好安装',
|
||
'about.update.status.readyToInstallNoVersion': '已准备好安装',
|
||
'about.update.status.installing': '安装中...',
|
||
'about.update.status.restarting': '重启中...',
|
||
'about.update.status.upToDate': '已是最新版本',
|
||
'about.update.status.error': '更新检查失败',
|
||
'about.update.status.default': '检查更新',
|
||
'welcome.connectionFailed': '连接失败: {status} {statusText}',
|
||
'welcome.connectionFailedMsg': '连接失败: {message}',
|
||
'welcome.continueLocally': '本地继续',
|
||
'welcome.continueLocallyExperimental': '本地继续(实验性)',
|
||
'welcome.localSessionStarting': '正在启动本地会话...',
|
||
'welcome.localSessionDesc': '使用离线本地配置文件,跳过 TinyHumans OAuth。',
|
||
'chat.agentChatDesc': '与智能体进行直接对话。',
|
||
'chat.modelPlaceholder': 'gpt-4o',
|
||
'channels.activeRouteValue': '{channel} 通过 {authMode}',
|
||
'privacy.dataKind.messages': '消息',
|
||
'privacy.dataKind.agents': '智能体',
|
||
'privacy.dataKind.skills': '技能',
|
||
'privacy.dataKind.system': '系统',
|
||
'privacy.dataKind.meetings': '会议',
|
||
'privacy.dataKind.reminders': '提醒',
|
||
'privacy.dataKind.important': '重要',
|
||
'onboarding.enableLocalAI': '启用本地 AI',
|
||
'onboarding.skills.status.available': '可用',
|
||
'onboarding.skills.status.connected': '已连接',
|
||
'onboarding.skills.status.connecting': '连接中',
|
||
'onboarding.skills.status.error': '错误',
|
||
'onboarding.skills.status.unavailable': '不可用',
|
||
'composio.statusUnavailable': '状态不可用',
|
||
'composio.authExpired': '授权已过期',
|
||
'composio.reconnect': '重新连接',
|
||
'composio.expiredAuthorization': '{name} 授权已过期',
|
||
'composio.expiredDescription':
|
||
'重新连接以重新启用 {name} 工具。 OpenHuman 将保持此集成不可用,直到您刷新 OAuth 访问权限。',
|
||
'composio.envVarOverrides': '已设置,将覆盖此设置。',
|
||
'composio.previewBadge': '预览',
|
||
'composio.previewTooltip': '代理集成即将推出 - 您可以连接,但代理尚无法使用此工具包。',
|
||
'memory.day.sun': '日',
|
||
'memory.day.mon': '一',
|
||
'memory.day.tue': '二',
|
||
'memory.day.wed': '三',
|
||
'memory.day.thu': '四',
|
||
'memory.day.fri': '五',
|
||
'memory.day.sat': '六',
|
||
'memory.ingesting': '摄取中',
|
||
'memory.ingestionQueued': '排队中',
|
||
'memory.ingestingTitle': '正在摄取 {title}',
|
||
'mic.noAudioCaptured': '未捕获到音频',
|
||
'mic.noSpeechDetected': '未检测到语音',
|
||
'mic.lowConfidenceResult': '无法清楚地理解音频 — 请重试',
|
||
'mic.failedToStopRecording': '停止录音失败: {message}',
|
||
'mic.transcriptionFailed': '转录失败: {message}',
|
||
'reflections.kind.retrospective': '回顾',
|
||
'reflections.kind.derivedFact': '派生事实',
|
||
'reflections.kind.moodInsight': '情绪洞察',
|
||
'reflections.kind.relationshipInsight': '关系洞察',
|
||
'graph.tooltip.summary': '摘要',
|
||
'graph.tooltip.contact': '联系人',
|
||
'localModel.usage.never': '从不',
|
||
'localModel.usage.mediumLoad': '中等负载',
|
||
'localModel.usage.lowLoad': '低负载',
|
||
'localModel.usage.idleMode': '空闲模式',
|
||
'localModel.rebootstrapComplete': '模型重新引导完成。',
|
||
'localModel.modelsVerified': '本地模型已验证。',
|
||
'accounts.addModal.allConnected': '全部已连接',
|
||
'accounts.addModal.title': '添加账户',
|
||
'accounts.respondQueue.empty': '队列为空',
|
||
'accounts.respondQueue.hide': '隐藏回复队列',
|
||
'accounts.respondQueue.loadFailed': '加载回复队列失败',
|
||
'accounts.respondQueue.loading': '加载队列中…',
|
||
'accounts.respondQueue.pending': '待处理',
|
||
'accounts.respondQueue.show': '显示回复队列',
|
||
'accounts.respondQueue.title': '回复队列',
|
||
'accounts.webviewHost.almostReady': '即将就绪...',
|
||
'accounts.webviewHost.loadTimeout': '网页视图加载超时',
|
||
'accounts.webviewHost.loading': '正在加载 {providerName}...',
|
||
'accounts.webviewHost.loadingAccount': '正在加载账户',
|
||
'accounts.webviewHost.restoringSession': '正在恢复会话...',
|
||
'accounts.webviewHost.retryLoading': '重试加载',
|
||
'accounts.webviewHost.takingLonger': '{providerName} 加载时间比预期更长。',
|
||
'accounts.webviewHost.timeoutHint': '超时提示',
|
||
'app.connectionBadge.composio': 'Composio',
|
||
'app.connectionBadge.messaging': '消息',
|
||
'app.connectionIndicator.connected': '已连接到 OpenHuman AI',
|
||
'app.connectionIndicator.connecting': '连接中',
|
||
'app.connectionIndicator.coreOffline': '核心离线',
|
||
'app.connectionIndicator.disconnected': '已断开',
|
||
'app.connectionIndicator.offline': '离线',
|
||
'app.connectionIndicator.reconnecting': '重新连接中…',
|
||
'app.errorFallback.componentStack': '组件堆栈',
|
||
'app.errorFallback.downloadLatest': '下载最新版本',
|
||
'app.errorFallback.heading': '出现错误',
|
||
'app.errorFallback.hint': '提示',
|
||
'app.errorFallback.reloadApp': '重新加载应用',
|
||
'app.errorFallback.subheading': '详情',
|
||
'app.errorFallback.tryRecover': '尝试恢复',
|
||
'app.localAiDownload.installing': '安装中...',
|
||
'app.localAiDownload.preparing': '准备中...',
|
||
'app.openhumanLink.accounts.continueWith': '使用 {label} 登录继续',
|
||
'app.openhumanLink.accounts.done': '完成',
|
||
'app.openhumanLink.accounts.intro': '简介',
|
||
'app.openhumanLink.accounts.webviewNote': '网页视图说明',
|
||
'app.openhumanLink.billing.openDashboard': '打开控制台',
|
||
'app.openhumanLink.billing.stayOnTrial': '继续试用',
|
||
'app.openhumanLink.billing.trialCredit': '试用配额',
|
||
'app.openhumanLink.billing.trialDesc': '试用说明',
|
||
'app.openhumanLink.defaultBody': '弹窗中尚未就绪。完成后打开完整设置页面',
|
||
'app.openhumanLink.discord.intro': '简介',
|
||
'app.openhumanLink.discord.openInvite': '打开邀请',
|
||
'app.openhumanLink.discord.perk1': '福利 1',
|
||
'app.openhumanLink.discord.perk2': '福利 2',
|
||
'app.openhumanLink.discord.perk3': '福利 3',
|
||
'app.openhumanLink.discord.perk4': '福利 4',
|
||
'app.openhumanLink.done': '完成',
|
||
'app.openhumanLink.loadingChannelSetup': '正在加载渠道设置',
|
||
'app.openhumanLink.maybeLater': '稍后再说',
|
||
'app.openhumanLink.notifications.asking': '正在请求系统权限…',
|
||
'app.openhumanLink.notifications.blocked': '已被阻止',
|
||
'app.openhumanLink.notifications.blockedStep1': '打开系统设置',
|
||
'app.openhumanLink.notifications.blockedStep2': '找到 OpenHuman',
|
||
'app.openhumanLink.notifications.blockedStep3': '开启通知权限',
|
||
'app.openhumanLink.notifications.intro': '简介',
|
||
'app.openhumanLink.notifications.promptHint': '提示',
|
||
'app.openhumanLink.notifications.retry': '重试测试通知',
|
||
'app.openhumanLink.notifications.send': '发送测试通知',
|
||
'app.openhumanLink.notifications.sendFailed': '无法发送:{error}',
|
||
'app.openhumanLink.notifications.sent':
|
||
'测试通知已发送。如果未收到,请前往「系统设置 → 通知 → OpenHuman」,开启「允许通知」并将横幅样式设置为「持续」。',
|
||
'app.openhumanLink.skipForNow': '暂时跳过',
|
||
'app.openhumanLink.telegramUnavailable': 'Telegram 不可用',
|
||
'app.openhumanLink.title.accounts': '连接你的应用',
|
||
'app.openhumanLink.title.billing': '账单与配额',
|
||
'app.openhumanLink.title.discord': '加入社区',
|
||
'app.openhumanLink.title.messaging': '连接聊天渠道',
|
||
'app.openhumanLink.title.notifications': '允许通知',
|
||
'app.persistRehydration.body': '正在恢复应用状态',
|
||
'app.persistRehydration.heading': '加载中',
|
||
'app.persistRehydration.resetCta': '重置中…',
|
||
'app.persistRehydration.resetting': '重置中…',
|
||
'app.routeLoading.initializing': '正在初始化 OpenHuman...',
|
||
'app.update.currentlyOn': '{version}',
|
||
'app.update.errorFallback': '更新时出现问题。',
|
||
'app.update.header.default': '更新',
|
||
'app.update.header.error': '更新失败',
|
||
'app.update.header.installing': '正在安装更新',
|
||
'app.update.header.readyToInstall': '更新已准备好安装',
|
||
'app.update.header.restarting': '正在重启…',
|
||
'app.update.later': '稍后',
|
||
'app.update.newVersionReady': '新版本已准备好安装。',
|
||
'app.update.progress.downloaded': '已下载',
|
||
'app.update.progress.installing': '正在安装新版本…',
|
||
'app.update.progress.restarting': '正在重新启动应用…',
|
||
'app.update.progress.working': '{percent}%',
|
||
'app.update.restartNote': '重启说明',
|
||
'app.update.restartNow': '立即重启',
|
||
'app.update.versionReady': '版本 {newVersion} 已准备好安装。',
|
||
'channels.discord.accountLinked': '账户已关联',
|
||
'channels.discord.connect': '连接',
|
||
'channels.discord.linkTokenExpired': '关联令牌已过期,请重试。',
|
||
'channels.discord.linkTokenInstruction': '{token}',
|
||
'channels.discord.linkTokenLabel': '关联令牌',
|
||
'channels.discord.linkTokenOnce': '一次性关联令牌',
|
||
'channels.discord.picker.allPermissionsOk': '机器人在该频道拥有所有必要权限。',
|
||
'channels.discord.picker.botNotInServers': '机器人未加入任何服务器',
|
||
'channels.discord.picker.category': '分类',
|
||
'channels.discord.picker.channel': '频道',
|
||
'channels.discord.picker.checkingPermissions': '检查权限中',
|
||
'channels.discord.picker.loadingChannels': '正在加载频道...',
|
||
'channels.discord.picker.loadingServers': '正在加载服务器...',
|
||
'channels.discord.picker.missingPermissions': '缺少权限',
|
||
'channels.discord.picker.noChannels': '未找到文字频道',
|
||
'channels.discord.picker.noServers': '未找到服务器',
|
||
'channels.discord.picker.selectChannel': '选择频道',
|
||
'channels.discord.picker.selectServer': '选择服务器',
|
||
'channels.discord.picker.server': '服务器',
|
||
'channels.discord.picker.serverChannelSelection': '服务器与频道选择',
|
||
'channels.discord.savedRestartRequired': '频道已保存。重启应用以激活。',
|
||
'channels.telegram.connect': '连接',
|
||
'channels.telegram.managedDmConnecting': '正在连接私信',
|
||
'channels.telegram.managedDmTimeout': '私信连接超时',
|
||
'channels.telegram.reconnect': '重新连接',
|
||
'channels.telegram.savedRestartRequired': '频道已保存。重启应用以激活。',
|
||
'channels.web.alwaysAvailable': '始终可用',
|
||
'chat.approval.approve': '批准',
|
||
'chat.approval.alwaysAllow': '始终允许',
|
||
'chat.approval.alwaysAllowHint': '不再询问此工具 — 将其加入始终允许列表',
|
||
'chat.approval.deciding': '处理中…',
|
||
'chat.approval.deny': '拒绝',
|
||
'chat.approval.error': '无法记录你的决定 — 请重试。',
|
||
'chat.approval.fallback': '智能体想要运行一项需要你批准的操作。',
|
||
'chat.approval.title': '需要批准',
|
||
'chat.approval.tool': '工具:',
|
||
'channels.authMode.managed_dm': '使用 OpenHuman 登录',
|
||
'channels.authMode.oauth': 'OAuth 登录',
|
||
'channels.authMode.bot_token': '使用你自己的 Bot Token',
|
||
'channels.authMode.api_key': '使用你自己的 API Key',
|
||
'channels.fieldRequired': '{field} 是必填项',
|
||
'channels.mcp.title': 'MCP 服务器',
|
||
'channels.mcp.description': '浏览和管理扩展 AI 能力的 Model Context Protocol 服务器。',
|
||
'channels.discord.displayName': 'Discord',
|
||
'channels.discord.description': '通过 Discord 发送和接收消息。',
|
||
'channels.discord.authMode.bot_token.description': '提供你自己的 Discord bot token。',
|
||
'channels.discord.authMode.oauth.description':
|
||
'通过 OAuth 将 OpenHuman 机器人安装到你的 Discord 服务器。',
|
||
'channels.discord.authMode.managed_dm.description':
|
||
'将你的个人 Discord 账户关联到 OpenHuman 机器人。',
|
||
'channels.discord.fields.bot_token.label': '机器人代币',
|
||
'channels.discord.fields.bot_token.placeholder': '你的 Discord bot token',
|
||
'channels.discord.fields.guild_id.label': '服务器 (Guild) ID',
|
||
'channels.discord.fields.guild_id.placeholder': '可选:限制到特定服务器',
|
||
'channels.telegram.displayName': 'Telegram',
|
||
'channels.telegram.description': '通过 Telegram 发送和接收消息。',
|
||
'channels.telegram.authMode.managed_dm.description': '直接向 OpenHuman Telegram 机器人发送消息。',
|
||
'channels.telegram.authMode.bot_token.description':
|
||
'从 @BotFather 获取你自己的 Telegram Bot token。',
|
||
'channels.telegram.fields.bot_token.label': '机器人代币',
|
||
'channels.telegram.fields.bot_token.placeholder': '123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11',
|
||
'channels.telegram.fields.allowed_users.label': '允许的用户',
|
||
'channels.telegram.fields.allowed_users.placeholder': '逗号分隔的 Telegram 用户名',
|
||
'channels.telegram.remoteControlTitle': '远程控制 (Telegram)',
|
||
'channels.telegram.remoteControlBody':
|
||
'从允许的 Telegram 聊天中,发送 /status、/sessions、/new 或 /help。模型路由仍然使用 /model 和 /models。',
|
||
'channels.web.displayName': '网络',
|
||
'channels.web.description': '通过内置的 Web UI 聊天。',
|
||
'channels.web.authMode.managed_dm.description': '使用嵌入式 Web 聊天 — 无需设置。',
|
||
'channels.yuanbao.connect': 'Connect',
|
||
'channels.yuanbao.connecting': '连接中…',
|
||
'channels.yuanbao.fieldRequired': '{field} 不能为空',
|
||
'channels.yuanbao.reconnect': 'Reconnect',
|
||
'channels.yuanbao.savedRestartRequired': '频道已保存。重启应用以激活。',
|
||
'channels.yuanbao.unexpectedStatus': '意外的连接状态:{status}',
|
||
'chat.unsubscribeApproval.approve': '批准并退订',
|
||
'chat.unsubscribeApproval.approved': '✓ 已成功退订。',
|
||
'chat.unsubscribeApproval.denied': '✕ 请求已拒绝。',
|
||
'chat.unsubscribeApproval.deny': '拒绝',
|
||
'chat.unsubscribeApproval.processing': '处理中...',
|
||
'chat.unsubscribeApproval.title': '退订请求',
|
||
'commandPalette.ariaLabel': '命令面板',
|
||
'commandPalette.description': '描述',
|
||
'commandPalette.label': '命令',
|
||
'commandPalette.noResults': '无结果',
|
||
'commandPalette.placeholder': '输入命令或搜索…',
|
||
'commandPalette.searchAria': '搜索命令',
|
||
'commandPalette.shortcutHint': '按 ? 查看所有快捷键',
|
||
'commandPalette.title': '命令面板',
|
||
'kbd.ariaLabel': '键盘快捷键:{shortcut}',
|
||
'iosMascot.connectedTo': '连接到',
|
||
'iosMascot.defaultPairedLabel': '桌面',
|
||
'iosMascot.disconnect': '断开连接',
|
||
'iosMascot.error.generic': '出了点问题。请再试一次。',
|
||
'iosMascot.error.sendFailed': '发送失败。检查您的连接。',
|
||
'iosMascot.pushToTalk': '一键通话',
|
||
'iosMascot.sendMessage': '发送消息',
|
||
'iosMascot.thinking': '想着……',
|
||
'iosMascot.typeMessage': '输入消息...',
|
||
'iosPair.connectedLoading': '已连接!正在加载...',
|
||
'iosPair.connecting': '正在连接到桌面...',
|
||
'iosPair.desktopLabel': '桌面',
|
||
'iosPair.error.camera': '相机扫描失败。检查相机权限并重试。',
|
||
'iosPair.error.connectionFailed': '连接失败。请确保桌面应用正在运行,然后重试。',
|
||
'iosPair.error.invalidQr': '二维码无效。请确保您扫描的是 OpenHuman 配对码。',
|
||
'iosPair.error.unreachableDesktop': '无法连接到桌面端。请确保两台设备均已联网,然后重试。',
|
||
'iosPair.expired': 'QR code 已过期。要求桌面重新生成代码。',
|
||
'iosPair.instructions':
|
||
'在桌面端打开 OpenHuman,前往「设置 > 设备」,点击「配对手机」以显示二维码。',
|
||
'iosPair.retryScan': '重试扫描',
|
||
'iosPair.scanQrCode': '扫描QR code',
|
||
'iosPair.scannerOpening': '扫描仪打开...',
|
||
'iosPair.step.openDesktop': '在桌面上打开 OpenHuman',
|
||
'iosPair.step.openSettings': '转至设置 > 设备',
|
||
'iosPair.step.showQr': '点击“配对手机”以显示 QR',
|
||
'iosPair.title': '与您的桌面配对',
|
||
'composio.connect.additionalConfigRequired': '需要额外配置',
|
||
'composio.connect.atlassianSubdomainHint': '极致',
|
||
'composio.connect.atlassianSubdomainLabel': 'Atlassian 子域名',
|
||
'composio.connect.connect': '连接',
|
||
'composio.connect.dynamicsOrgNameHint':
|
||
'例如,myorg.crm.dynamics.com 的组织名称为 "myorg"。仅输入简短的组织名称,而不是完整 URL。',
|
||
'composio.connect.dynamicsOrgNameLabel': 'Dynamics 365 组织名称',
|
||
'composio.connect.connectionFailed': '连接失败。',
|
||
'composio.connect.disconnectFailed': '断开连接失败:{msg}',
|
||
'composio.connect.disconnecting': '断开中…',
|
||
'composio.connect.idleDescription': '连接你的',
|
||
'composio.connect.idleDescriptionSuffix':
|
||
'账户。我们会打开浏览器窗口,你在其中授权后,应用会自动检测到该连接。',
|
||
'composio.connect.isConnected': '已连接。',
|
||
'composio.connect.manage': '管理',
|
||
'composio.connect.needsFieldsPrefix': '若要连接',
|
||
'composio.connect.needsFieldsSuffix': '我们需要一些额外信息。请填写下面缺失的字段并重试。',
|
||
'composio.connect.needsSubdomain': '要连接',
|
||
'composio.connect.needsSubdomainSuffix':
|
||
'请输入你的 Atlassian 子域名(例如 acme.atlassian.net 中的 acme),然后重试。',
|
||
'composio.connect.oauthComplete': '等待完成 OAuth…',
|
||
'composio.connect.oauthTimeout': 'OAuth 超时',
|
||
'composio.connect.permissions': '权限',
|
||
'composio.connect.permissionsDefault': '默认启用读写权限',
|
||
'composio.connect.permissionsNote': '可暴露',
|
||
'composio.connect.permissionsNoteSuffix':
|
||
'OpenHuman 自身的智能体权限通过下方的读取、写入和管理员开关控制。',
|
||
'composio.connect.reopenBrowser': '重新打开浏览器',
|
||
'composio.connect.requestingUrl': '正在请求连接 URL…',
|
||
'composio.connect.requiredFieldEmpty': '此字段为必填项。',
|
||
'composio.connect.retryConnection': '重试连接',
|
||
'composio.connect.scopeLoadError': '无法加载权限范围偏好:{msg}',
|
||
'composio.connect.scopeSaveError': '无法保存 {key} 权限范围:{msg}',
|
||
'composio.connect.scope.read': '阅读',
|
||
'composio.connect.scope.readHint': '允许代理从此连接读取数据。',
|
||
'composio.connect.scope.write': '写',
|
||
'composio.connect.scope.writeHint': '允许代理通过此连接创建或修改数据。',
|
||
'composio.connect.scope.admin': '管理员',
|
||
'composio.connect.scope.adminHint': '允许代理管理设置、权限或破坏性操作。',
|
||
'composio.connect.subdomainInvalid':
|
||
'仅输入短子域名(例如 "acme"),而非完整 URL。只能包含字母、数字和连字符。',
|
||
'composio.connect.subdomainRequired': '请输入你的 Atlassian 子域名以继续。',
|
||
'composio.connect.wabaIdHint':
|
||
'通过 Meta 访问令牌调用 GET /me/businesses,然后 GET /{business_id}/owned_whatsapp_business_accounts 获取。',
|
||
'composio.connect.wabaIdLabel': 'WhatsApp 企业账户 ID',
|
||
'composio.connect.wabaIdRequired': '请输入你的 WhatsApp 企业账户 ID(WABA ID)以继续。',
|
||
'composio.connect.waitingFor': '等待中',
|
||
'composio.connect.waitingHint': '请在浏览器中完成授权',
|
||
'composio.triggers.heading': '触发器',
|
||
'composio.triggers.listenFrom': '监听来自以下的事件',
|
||
'composio.triggers.loadError': '无法加载触发器',
|
||
'composio.triggers.needsConfiguration': '需要配置',
|
||
'composio.triggers.noneAvailable': '当前没有可用的触发器:',
|
||
'conversations.taskKanban.moveLeft': '向左移动',
|
||
'conversations.taskKanban.moveRight': '向右移动',
|
||
'conversations.taskKanban.title': '任务',
|
||
'conversations.taskKanban.approval.default': '默认',
|
||
'conversations.taskKanban.approval.notRequired': '无需审批',
|
||
'conversations.taskKanban.approval.notRequiredBadge': '无需审批',
|
||
'conversations.taskKanban.approval.required': '需要审批',
|
||
'conversations.taskKanban.approval.requiredBadge': '需审批',
|
||
'conversations.taskKanban.approval.requiredBeforeExecution': '执行前需要审批',
|
||
'conversations.taskKanban.briefButton': '任务简报',
|
||
'conversations.taskKanban.briefTitle': '任务简报',
|
||
'conversations.taskKanban.closeBrief': '关闭任务简报',
|
||
'conversations.taskKanban.field.acceptanceCriteria': '验收标准',
|
||
'conversations.taskKanban.field.allowedTools': '允许的工具',
|
||
'conversations.taskKanban.field.approval': '审批',
|
||
'conversations.taskKanban.field.assignedAgent': '已分配智能体',
|
||
'conversations.taskKanban.field.blocker': '阻碍项',
|
||
'conversations.taskKanban.field.evidence': '证据',
|
||
'conversations.taskKanban.field.notes': '备注',
|
||
'conversations.taskKanban.field.objective': '目标',
|
||
'conversations.taskKanban.field.plan': '计划',
|
||
'conversations.taskKanban.field.status': '状态',
|
||
'conversations.taskKanban.field.title': '标题',
|
||
'conversations.taskKanban.saveChanges': '保存更改',
|
||
'conversations.taskKanban.deleteCard': '删除',
|
||
'conversations.taskKanban.updateFailed': '无法更新任务;更改未保存。',
|
||
'conversations.toolTimeline.turn': '轮次',
|
||
'conversations.toolTimeline.step': '步骤',
|
||
'conversations.toolTimeline.workerThread': '工作线程',
|
||
'conversations.subagent.viewProcessing': '查看完整处理过程',
|
||
'conversations.subagent.parent': '父级',
|
||
'conversations.subagent.thinking': '思考中',
|
||
'conversations.subagent.response': '回复',
|
||
'conversations.subagent.toolCalls': '工具调用',
|
||
'conversations.subagent.working': '处理中…',
|
||
'conversations.subagent.noOutputYet': '暂无输出',
|
||
'conversations.subagent.close': '关闭',
|
||
'conversations.subagent.statusRunning': '运行中',
|
||
'conversations.subagent.statusCompleted': '已完成',
|
||
'conversations.subagent.statusFailed': '失败',
|
||
'daemon.serviceBlockingGate.body': '核心服务不可用,请等待或下载最新版本。',
|
||
'daemon.serviceBlockingGate.downloadHint': '下载最新版本',
|
||
'daemon.serviceBlockingGate.downloadLatest': '下载最新版本',
|
||
'daemon.serviceBlockingGate.retryCore': '重试 Core',
|
||
'daemon.serviceBlockingGate.retryFailed': '重试失败。请下载最新应用版本后重试。',
|
||
'daemon.serviceBlockingGate.retrying': '重试中...',
|
||
'daemon.serviceBlockingGate.title': 'OpenHuman 核心不可用',
|
||
'home.banners.discordSubtitle': '加入我们,获取最新资讯',
|
||
'home.banners.discordTitle': '加入我们的 Discord',
|
||
'home.banners.earlyBirdDismiss': '忽略早鸟横幅',
|
||
'home.banners.earlyBirdFirstSub': '首次订阅。',
|
||
'home.banners.earlyBirdOn': '早鸟优惠进行中',
|
||
'home.banners.earlyBirdTitle': '前 1,000 名用户享 6 折优惠。',
|
||
'home.banners.earlyBirdUseCode': '使用早鸟码',
|
||
'home.banners.getSubscription': '获取订阅',
|
||
'home.banners.promoCreditsBody': '你的促销配额已到账',
|
||
'home.banners.promoCreditsTitle': '{amount}',
|
||
'home.banners.promoCreditsUsage': '查看用量详情',
|
||
'intelligence.memoryChunk.detail.chunk': '片段',
|
||
'intelligence.memoryChunk.detail.copyChunkId': '复制片段 ID',
|
||
'intelligence.memoryChunk.detail.embeddingInfo': 'bge-m3 1024 维',
|
||
'intelligence.memoryChunk.detail.noEmbedding': '无嵌入',
|
||
'intelligence.memoryChunk.letterhead.from': '来自',
|
||
'intelligence.memoryChunk.letterhead.to': '至',
|
||
'intelligence.memoryChunk.mentioned.chunkOne': '1 个片段',
|
||
'intelligence.memoryChunk.mentioned.chunkOther': '{count} 个片段',
|
||
'intelligence.memoryChunk.mentioned.heading': '提及',
|
||
'intelligence.memoryChunk.scoreBars.ariaScore': '{name} 得分 {pct}%',
|
||
'intelligence.memoryChunk.scoreBars.atThreshold': '阈值 {threshold}',
|
||
'intelligence.memoryChunk.scoreBars.dropped': '已丢弃',
|
||
'intelligence.memoryChunk.scoreBars.heading': '保留原因',
|
||
'intelligence.memoryChunk.scoreBars.kept': '已保留',
|
||
'intelligence.diagram.title': '架构图',
|
||
'intelligence.diagram.description': '来自已配置图表端点的最新本地架构输出。',
|
||
'intelligence.diagram.refresh': 'Refresh',
|
||
'intelligence.diagram.refreshAria': '刷新图表',
|
||
'intelligence.diagram.emptyTitle': '暂无可用图表',
|
||
'intelligence.diagram.emptyDescription': '从编排器生成架构图,此面板将从已配置的本地端点刷新。',
|
||
'intelligence.diagram.skillInstallCommand': 'npx skills add yizhiyanhua-ai/fireworks-tech-graph',
|
||
'intelligence.diagram.promptExample': '以深色终端风格生成当前集群的架构图',
|
||
'intelligence.diagram.imageAlt': '最新生成的 OpenHuman 架构图',
|
||
'intelligence.diagram.refreshesEvery': '每 {seconds} 秒刷新',
|
||
'intelligence.memoryText.entityTypePrefix': '实体类型',
|
||
'intelligence.screenDebug.active': '活跃',
|
||
'intelligence.screenDebug.app': '应用',
|
||
'intelligence.screenDebug.bounds': '边界',
|
||
'intelligence.screenDebug.captureAlt': '捕获测试结果',
|
||
'intelligence.screenDebug.captureFailed': '失败',
|
||
'intelligence.screenDebug.captureSuccess': '成功',
|
||
'intelligence.screenDebug.captureTest': '捕获测试',
|
||
'intelligence.screenDebug.capturing': '捕获中',
|
||
'intelligence.screenDebug.frames': '帧数',
|
||
'intelligence.screenDebug.idle': '空闲',
|
||
'intelligence.screenDebug.lastApp': '上一个应用',
|
||
'intelligence.screenDebug.mode': '模式',
|
||
'intelligence.screenDebug.permAccessibility': '辅助功能权限',
|
||
'intelligence.screenDebug.permInput': '输入监控权限',
|
||
'intelligence.screenDebug.permScreen': '辅助功能',
|
||
'intelligence.screenDebug.permissions': '权限',
|
||
'intelligence.screenDebug.platformNotSupported': '平台不支持',
|
||
'intelligence.screenDebug.recentVisionSummaries': '最近视觉摘要',
|
||
'intelligence.screenDebug.session': '会话',
|
||
'intelligence.screenDebug.size': '大小',
|
||
'intelligence.screenDebug.status': '状态',
|
||
'intelligence.screenDebug.testCapture': '测试捕获',
|
||
'intelligence.screenDebug.time': '时间',
|
||
'intelligence.screenDebug.title': '标题',
|
||
'intelligence.screenDebug.unknown': '未知',
|
||
'intelligence.screenDebug.visionQueue': '视觉队列',
|
||
'intelligence.screenDebug.visionState': '视觉状态',
|
||
'intelligence.tasks.activeBoardOne': '1 个跨对话的活跃看板',
|
||
'intelligence.tasks.activeBoardOther': '{count} 个跨对话的活跃看板',
|
||
'intelligence.tasks.empty': '暂无智能体任务看板',
|
||
'intelligence.tasks.emptyHint': '完成一项对话后,任务看板将出现在这里。',
|
||
'intelligence.tasks.failedToLoad': '加载失败',
|
||
'intelligence.tasks.live': '实时',
|
||
'intelligence.tasks.loadingBoards': '正在加载任务看板…',
|
||
'intelligence.tasks.threadPrefix': '对话',
|
||
'intelligence.tasks.subtitle': '整个工作区中的你的任务和智能体任务看板。',
|
||
'intelligence.tasks.newTask': '新建任务',
|
||
'intelligence.tasks.personalBoardTitle': '智能体任务',
|
||
'intelligence.tasks.personalEmpty': '暂无个人任务',
|
||
'intelligence.tasks.composer.title': '新建任务',
|
||
'intelligence.tasks.composer.titleLabel': '标题',
|
||
'intelligence.tasks.composer.titlePlaceholder': '需要完成什么?',
|
||
'intelligence.tasks.composer.statusLabel': '状态',
|
||
'intelligence.tasks.composer.attachLabel': '附加到对话',
|
||
'intelligence.tasks.composer.attachNone': '个人(无对话)',
|
||
'intelligence.tasks.composer.objectiveLabel': '目标',
|
||
'intelligence.tasks.composer.objectivePlaceholder': '可选 — 期望的结果',
|
||
'intelligence.tasks.composer.notesLabel': '备注',
|
||
'intelligence.tasks.composer.notesPlaceholder': '可选备注',
|
||
'intelligence.tasks.composer.create': '创建任务',
|
||
'intelligence.tasks.composer.creating': '正在创建…',
|
||
'intelligence.tasks.composer.createFailed': '无法创建任务',
|
||
'notifications.card.dismiss': '忽略通知',
|
||
'notifications.card.importanceTitle': '重要性',
|
||
'notifications.center.empty': '暂无通知',
|
||
'notifications.center.emptyHint': '新通知将出现在这里',
|
||
'notifications.center.filterAll': '全部',
|
||
'notifications.center.markAllRead': '全部标记已读',
|
||
'notifications.center.title': '通知',
|
||
'oauth.button.connecting': '连接中...',
|
||
'oauth.button.loopbackTimeout': '登录超时 — 浏览器未完成 OAuth 跳转。请重试。',
|
||
'oauth.login.continueWith': '继续使用',
|
||
'onboarding.contextGathering.buildingDesc': '正在分析你的历史记录...',
|
||
'onboarding.contextGathering.buildingProfile': '正在构建你的档案...',
|
||
'onboarding.contextGathering.continueToChat': '前往对话',
|
||
'onboarding.contextGathering.coreAlive': '核心可访问 — 首次启动可能需要一分钟。',
|
||
'onboarding.contextGathering.coreAliveProbing': '正在检查核心连接…',
|
||
'onboarding.contextGathering.coreUnreachable': '核心未响应。你可以继续,稍后再试。',
|
||
'onboarding.contextGathering.errorDesc':
|
||
'我们暂时无法构建你的完整资料,但没关系——你可以继续,资料会随时间逐步完善。',
|
||
'onboarding.contextGathering.stillWorkingDesc':
|
||
'我们正在预热本地模型与工具,首次启动可能需要 30–60 秒。你可以随时进入对话 — 档案构建会在后台继续进行。',
|
||
'onboarding.contextGathering.stillWorkingTitle': '仍在生成你的档案…',
|
||
'onboarding.contextGathering.title': '上下文收集',
|
||
'openhuman.team_list_teams': '团队列表',
|
||
'overlay.ariaAttention': '注意消息',
|
||
'overlay.ariaCompanion': '伴侣已激活',
|
||
'overlay.ariaOrb': 'OpenHuman 浮层',
|
||
'overlay.ariaVoiceActive': '语音输入已激活',
|
||
'overlay.companion.error': '错误',
|
||
'overlay.companion.listening': '正在聆听…',
|
||
'overlay.companion.pointing': '正在指向…',
|
||
'overlay.companion.speaking': '正在说话…',
|
||
'overlay.companion.thinking': '正在思考…',
|
||
'overlay.orbTitle': '拖动以移动 · 双击重置位置',
|
||
'pages.settings.account.connections': '连接',
|
||
'pages.settings.account.connectionsDesc': '管理已连接的账户和服务',
|
||
'pages.settings.account.migration': '从其他助手导入',
|
||
'pages.settings.account.migrationDesc':
|
||
'将 OpenClaw(即将支持 Hermes)的记忆和笔记迁移到此工作区。',
|
||
'pages.settings.account.privacy': '隐私',
|
||
'pages.settings.account.privacyDesc': '控制哪些数据离开你的设备',
|
||
'pages.settings.account.recoveryPhrase': '恢复短语',
|
||
'pages.settings.account.recoveryPhraseDesc': '查看并备份你的恢复短语',
|
||
'pages.settings.account.team': '团队',
|
||
'pages.settings.account.teamDesc': '管理团队成员和权限',
|
||
'pages.settings.accountSection.description': '恢复短语、团队、连接与隐私设置。',
|
||
'pages.settings.accountSection.title': '账户',
|
||
'pages.settings.ai.llm': '语言模型',
|
||
'pages.settings.ai.llmDesc': '选择并配置语言模型提供商',
|
||
'pages.settings.ai.voice': '语音',
|
||
'pages.settings.ai.voiceDesc': '配置语音输入和输出',
|
||
'pages.settings.aiSection.description': '语言模型提供商、本地 Ollama 以及语音(STT / TTS)。',
|
||
'pages.settings.aiSection.title': 'AI',
|
||
'pages.settings.composioSection.title': 'Composio',
|
||
'pages.settings.composioSection.description':
|
||
'由 Composio 提供支持的集成的路由、触发器和历史记录。',
|
||
'settings.developerMenu.composio.title': 'Composio',
|
||
'settings.developerMenu.composio.desc': '路由模式、集成触发器和触发器历史存档。',
|
||
'pages.settings.features.desktopCompanion': '桌面伴侣',
|
||
'pages.settings.features.desktopCompanionDesc':
|
||
'具有屏幕感知能力的语音助手 — 倾听、观看、说话、指向',
|
||
'pages.settings.features.messagingChannels': '消息渠道',
|
||
'pages.settings.features.messagingChannelsDesc': '配置消息渠道和集成',
|
||
'pages.settings.features.notifications': '通知',
|
||
'pages.settings.features.notificationsDesc': '管理通知偏好',
|
||
'pages.settings.features.screenAwareness': '屏幕感知',
|
||
'pages.settings.features.screenAwarenessDesc': '让助手感知你的屏幕内容',
|
||
'pages.settings.features.tools': '工具',
|
||
'pages.settings.features.toolsDesc': '管理已连接的工具和集成',
|
||
'pages.settings.featuresSection.description': '屏幕感知、消息和工具。',
|
||
'pages.settings.featuresSection.title': '功能',
|
||
'privacy.dataKind.credentials': '凭据',
|
||
'privacy.dataKind.derived': '派生数据',
|
||
'privacy.dataKind.diagnostics': '诊断信息',
|
||
'privacy.dataKind.metadata': '元数据',
|
||
'privacy.dataKind.raw': '原始数据',
|
||
'privacy.whatLeaves.link.label': '哪些数据会离开我的电脑?',
|
||
'rewards.community.achievementsUnlocked': '已解锁 {unlocked}/{total} 项成就',
|
||
'rewards.community.connectDiscord': '连接 Discord',
|
||
'rewards.community.cumulativeTokens': '累计令牌',
|
||
'rewards.community.currentStreak': '当前连续天数',
|
||
'rewards.community.discordLinkedNotInGuild': '已关联 Discord 但未加入服务器',
|
||
'rewards.community.discordMember': '已加入服务器',
|
||
'rewards.community.discordNotLinked': '未关联 Discord',
|
||
'rewards.community.discordServer': 'Discord 服务器',
|
||
'rewards.community.discordStatusUnavailable': 'Discord 状态不可用',
|
||
'rewards.community.discordWaiting': '等待 Discord 验证',
|
||
'rewards.community.heroSubtitle': '完成任务,赚取奖励',
|
||
'rewards.community.heroTitle': '社区奖励',
|
||
'rewards.community.joinDiscord': '加入 Discord',
|
||
'rewards.community.loadingRewards': '正在加载奖励…',
|
||
'rewards.community.locked': '已解锁',
|
||
'rewards.community.retrying': '重试中…',
|
||
'rewards.community.rolesAndRewards': '角色与奖励',
|
||
'rewards.community.streakDays': '{n} 天',
|
||
'rewards.community.syncPending': '奖励同步待处理',
|
||
'rewards.community.syncPendingDesc': '奖励同步正在进行中,请稍后查看。',
|
||
'rewards.community.syncUnavailable': '同步不可用',
|
||
'rewards.community.tryAgain': '重试中…',
|
||
'rewards.community.unknown': '未知',
|
||
'rewards.community.unlocked': '已解锁',
|
||
'rewards.community.yourProgress': '你的进度',
|
||
'rewards.coupon.colCode': '代码',
|
||
'rewards.coupon.colRedeemed': '兑换时间',
|
||
'rewards.coupon.colReward': '奖励',
|
||
'rewards.coupon.colStatus': '状态',
|
||
'rewards.coupon.loadingHistory': '正在加载奖励历史…',
|
||
'rewards.coupon.noCodes': '尚未兑换任何奖励码。',
|
||
'rewards.coupon.pending': '处理中',
|
||
'rewards.coupon.placeholder': '优惠码',
|
||
'rewards.coupon.promoCredits': '促销配额',
|
||
'rewards.coupon.recentRedemptions': '最近兑换',
|
||
'rewards.coupon.redeemAccepted': '{code} 已接受。完成所需操作后将解锁 {amount}。',
|
||
'rewards.coupon.redeemButton': '兑换码',
|
||
'rewards.coupon.redeemSuccess': '{code} 已兑换。{amount} 已添加至你的额度。',
|
||
'rewards.coupon.redeemedCodes': '已兑换代码',
|
||
'rewards.coupon.redeeming': '兑换中...',
|
||
'rewards.coupon.statusApplied': '已应用',
|
||
'rewards.coupon.statusPendingAction': '待操作',
|
||
'rewards.coupon.statusRedeemed': '已兑换',
|
||
'rewards.coupon.subtitle': '输入优惠码以兑换奖励',
|
||
'rewards.coupon.title': '兑换优惠码',
|
||
'rewards.referralSection.activity': '邀请活动',
|
||
'rewards.referralSection.apply': '应用中…',
|
||
'rewards.referralSection.applying': '应用中…',
|
||
'rewards.referralSection.colReferredUser': '被邀请用户',
|
||
'rewards.referralSection.colReward': '奖励',
|
||
'rewards.referralSection.colStatus': '状态',
|
||
'rewards.referralSection.colUpdated': '更新时间',
|
||
'rewards.referralSection.completed': '已完成',
|
||
'rewards.referralSection.copyCode': '复制邀请码',
|
||
'rewards.referralSection.copyFailed': '复制失败',
|
||
'rewards.referralSection.haveCode': '有邀请码?',
|
||
'rewards.referralSection.haveCodeDesc': '输入好友的邀请码,双方均可获得奖励。',
|
||
'rewards.referralSection.linked': '已关联',
|
||
'rewards.referralSection.linkedCode': '已关联邀请码',
|
||
'rewards.referralSection.loading': '正在加载邀请计划…',
|
||
'rewards.referralSection.retry': '重试',
|
||
'rewards.referralSection.noReferrals': '暂无邀请记录',
|
||
'rewards.referralSection.pendingReferrals': '待处理邀请',
|
||
'rewards.referralSection.placeholder': '邀请码',
|
||
'rewards.referralSection.share': '分享',
|
||
'rewards.referralSection.statusCompleted': '已完成',
|
||
'rewards.referralSection.statusExpired': '已过期',
|
||
'rewards.referralSection.statusJoined': '已加入',
|
||
'rewards.referralSection.subtitle': '邀请好友,双方均可获得配额奖励',
|
||
'rewards.referralSection.title': '邀请好友,赚取配额',
|
||
'rewards.referralSection.totalEarned': '总获得',
|
||
'rewards.referralSection.yourCode': '你的邀请码',
|
||
'settings.ai.addCloudProvider': '添加云端提供商',
|
||
'settings.ai.addProvider': '保存中…',
|
||
'settings.ai.apiKeyFieldLabel': 'API 密钥',
|
||
'settings.ai.apiKeyRequired': '请粘贴你的 API 密钥以继续。',
|
||
'settings.ai.apiKeyStoredEncrypted': 'API 密钥已加密存储',
|
||
'settings.ai.apiKeysEncrypted': 'auth-profiles.json',
|
||
'settings.ai.clearStoredKey': '清除已存储的密钥',
|
||
'settings.ai.connectProvider': '连接 {label}',
|
||
'settings.ai.customRouting': '自定义路由',
|
||
'settings.ai.defaultResolvesTo': '默认解析为',
|
||
'settings.ai.discard': '放弃',
|
||
'settings.ai.editProvider': '编辑提供商',
|
||
'settings.ai.llmProviders': 'LLM 提供商',
|
||
'settings.ai.llmProvidersDesc': '配置你的语言模型提供商',
|
||
'settings.ai.localOllama': '本地(Ollama)',
|
||
'settings.ai.modelLabel': '模型',
|
||
'settings.ai.noCustomProviders': '未配置自定义提供商',
|
||
'settings.ai.openAiCompat.authHeaderExample': '授权:持有者<您的密钥>',
|
||
'settings.ai.openAiCompat.authHeaderLabel': '验证标头',
|
||
'settings.ai.openAiCompat.baseUrlLabel': '基础 URL',
|
||
'settings.ai.openAiCompat.baseUrlUnavailable': '不可用',
|
||
'settings.ai.openAiCompat.clearKey': '清除键',
|
||
'settings.ai.openAiCompat.description':
|
||
'将本地测试工具指向此 /v1 服务器,即可通过下方配置的提供商进行路由。身份验证使用你在此处设置的稳定密钥,而不是应用内部的 core bearer。',
|
||
'settings.ai.openAiCompat.keyConfigured': '按键已配置',
|
||
'settings.ai.openAiCompat.keyRequired': '需要钥匙',
|
||
'settings.ai.openAiCompat.rotateKey': '旋转钥匙',
|
||
'settings.ai.openAiCompat.setKey': '设置键',
|
||
'settings.ai.openAiCompat.title': 'OpenAI 兼容端点',
|
||
'settings.ai.providerLabel': '提供商',
|
||
'skills.mcpComingSoon.title': 'MCP 服务器',
|
||
'skills.mcpComingSoon.description':
|
||
'MCP 服务器管理即将推出。此标签页将成为发现、连接和监控 MCP 服务器集成的中心。',
|
||
'settings.ai.routing': '路由',
|
||
'settings.ai.routingCustom': '自定义路由',
|
||
'settings.ai.routingDefault': '默认',
|
||
'settings.ai.routingDesc': '为不同工作负载选择路由策略',
|
||
'settings.ai.saveChanges': '保存中…',
|
||
'settings.ai.saving': '保存中…',
|
||
'settings.ai.unsavedChange': '未保存的更改',
|
||
'settings.ai.unsavedChanges': '未保存的更改',
|
||
'settings.ai.workloadGroupBackground': '后台工作负载',
|
||
'settings.ai.workloadGroupChat': '对话工作负载',
|
||
'settings.ai.disconnectProvider': '断开 {label}',
|
||
'settings.ai.connectProviderLabel': '连接 {label}',
|
||
'settings.ai.defaultLocalEndpoint': 'http://localhost:11434/v1',
|
||
'settings.ai.endpointUrlLabel': '端点 URL',
|
||
'settings.ai.localRuntimeHelper':
|
||
'{label} 可访问的位置。默认是 localhost;如需使用共享实例,可指向远程主机(例如 http://10.0.0.4:11434/v1)。',
|
||
'settings.ai.endpointUrlRequired': '端点 URL 是必需的。',
|
||
'settings.ai.endpointProtocolRequired': '端点必须以 http:// 或 https:// 开头。',
|
||
'settings.ai.connectProviderDialog': '连接 {label}',
|
||
'settings.ai.or': '或者',
|
||
'settings.ai.codexOauthMissingAuthUrl': 'Codex OAuth 未返回授权 URL。请重试登录。',
|
||
'settings.ai.codexOauthMissingCallbackUrl': '登录后请粘贴浏览器中的重定向 URL。',
|
||
'settings.ai.openRouterOauthDescription':
|
||
'使用 OpenRouter 登录,并通过 PKCE 导入由用户控制的 API 密钥。',
|
||
'settings.ai.connecting': '正在连接...',
|
||
'settings.ai.backgroundLoops': '背景循环',
|
||
'settings.ai.backgroundLoopsDesc':
|
||
'查看没有聊天消息时运行的内容,暂停心跳任务,并检查最近的额度账本行。',
|
||
'settings.ai.heartbeatControls': '心跳控制',
|
||
'settings.ai.heartbeatControlsDesc': '默认关闭。启用会启动循环;禁用会中止正在运行的任务。',
|
||
'settings.ai.heartbeatLoop': '心跳循环',
|
||
'settings.ai.heartbeatLoopDesc': '规划器和可选潜意识推理的主调度器。',
|
||
'settings.ai.subconsciousInference': '潜意识推理',
|
||
'settings.ai.subconsciousInferenceDesc': '在心跳 tick 上运行由模型支持的任务/反思评估。',
|
||
'settings.ai.calendarMeetingChecks': '日历会议检查',
|
||
'settings.ai.calendarMeetingChecksDesc': '为活跃的 Google Calendar 连接调用日历事件列表。',
|
||
'settings.ai.calendarCap': '日历帽',
|
||
'settings.ai.connectionsPerTick': '{count} 个连接/tick',
|
||
'settings.ai.meetingLookahead': '会议前瞻',
|
||
'settings.ai.minutesShort': '{count} 分钟',
|
||
'settings.ai.reminderLookahead': '提醒前瞻',
|
||
'settings.ai.cronReminderChecks': 'Cron 提醒检查',
|
||
'settings.ai.cronReminderChecksDesc': '扫描启用的 cron 作业以查找类似提醒的即将发生的项目。',
|
||
'settings.ai.relevantNotificationChecks': '相关通知检查',
|
||
'settings.ai.relevantNotificationChecksDesc': '将紧急本地通知提升为主动提醒。',
|
||
'settings.ai.externalDelivery': '外部交付',
|
||
'settings.ai.externalDeliveryDesc': '允许心跳提醒向外部渠道发送主动消息。',
|
||
'settings.ai.interval': '间隔',
|
||
'settings.ai.running': '运行...',
|
||
'settings.ai.plannerTickNow': '规划师立即勾选',
|
||
'settings.ai.loadingHeartbeatControls': '正在加载心跳控制...',
|
||
'settings.ai.heartbeatControlsUnavailable': '心跳控制不可用。',
|
||
'settings.ai.loopMap': '循环地图',
|
||
'settings.ai.plannerSummary':
|
||
'规划器:{sourceEvents} 源事件,{sent} 已发送,{deduped} 已删除重复数据。',
|
||
'settings.ai.routeLabel': '路线: {route}',
|
||
'settings.ai.on': '上',
|
||
'settings.ai.off': '关闭',
|
||
'settings.ai.recentUsageLedger': '最近使用分类账',
|
||
'settings.ai.recentUsageLedgerDesc': '后端行会公开今天的操作/时间;来源标签需要后端支持。',
|
||
'settings.ai.latestSpend': '最新支出:{amount},于 {time} ({action})',
|
||
'settings.ai.topActions': '热门行动',
|
||
'settings.ai.noSpendRows': '未加载支出行。',
|
||
'settings.ai.topHours': '高峰时段',
|
||
'settings.ai.noHourlySpend': '还没有每小时支出。',
|
||
'settings.ai.openhumanDefault': 'OpenHuman(默认)',
|
||
'settings.ai.localModelResolved': 'Ollama · {model}',
|
||
'settings.ai.customRoutingForWorkload': '{label} 的自定义路由',
|
||
'settings.ai.loadingModels': '正在加载模型...',
|
||
'settings.ai.enterModelIdManually': '或手动输入型号 ID:',
|
||
'settings.ai.modelIdPlaceholderForProvider': '{slug} 型号 ID',
|
||
'settings.ai.modelIdPlaceholder': 'model-id',
|
||
'settings.ai.selectModel': '选择型号...',
|
||
'settings.ai.temperatureOverride': '温度超控',
|
||
'settings.ai.temperatureOverrideSlider': '温度超控(滑块)',
|
||
'settings.ai.temperatureOverrideValue': '温度超控(值)',
|
||
'settings.ai.temperatureOverrideDesc': '值越低,结果越确定。保持未勾选则使用提供商默认值。',
|
||
'settings.ai.testFailed': '测试失败',
|
||
'settings.ai.testingModel': '测试模型...',
|
||
'settings.ai.modelResponse': '模型响应',
|
||
'settings.ai.providerWithValue': '提供者:{value}',
|
||
'settings.ai.noneDash': '—',
|
||
'settings.ai.promptHelloWorld': '提示:你好世界',
|
||
'settings.ai.startedAt': '开始: {value}',
|
||
'settings.ai.waitingForModelResponse': '正在等待所选型号的响应...',
|
||
'settings.ai.response': '回应',
|
||
'settings.ai.testing': '测试...',
|
||
'settings.ai.test': '测试',
|
||
'settings.ai.slugMissingError': '输入提供商名称以生成 slug。',
|
||
'settings.ai.slugInUseError': '该提供商名称已被使用。',
|
||
'settings.ai.slugReservedError': '选择不同的提供商名称。',
|
||
'settings.ai.providerNamePlaceholder': '我的提供商',
|
||
'settings.ai.slugLabel': '蛞蝓:',
|
||
'settings.ai.openAiUrlLabel': 'OpenAI URL',
|
||
'settings.ai.openAiUrlPlaceholder': 'https://api.openai.com/v1',
|
||
'settings.ai.keepExistingKeyPlaceholder': '留空以保留现有密钥',
|
||
'settings.ai.reindexingMemory': '重新索引内存',
|
||
'settings.ai.reindexingMemoryMessage':
|
||
'嵌入正在重新处理。{pending} 个记忆项正使用当前模型重新嵌入;完成前语义召回会降低。关键词搜索仍可使用,即使关闭此页面,重新嵌入也会在后台继续。',
|
||
'settings.ai.signInWithOpenRouter': '使用 OpenRouter 登录',
|
||
'settings.ai.weekBudget': '周预算',
|
||
'settings.ai.cycleRemaining': '剩余周期',
|
||
'settings.ai.cycleTotalSpend': '周期总支出',
|
||
'settings.ai.avgSpendRow': '平均支出行',
|
||
'settings.ai.backgroundApiReads': '后台 API 读取',
|
||
'settings.ai.backgroundWakeups': '背景唤醒',
|
||
'settings.ai.budgetMath': '预算数学',
|
||
'settings.ai.rowsLeft': '剩余行数',
|
||
'settings.ai.rowsPerFullWeekBudget': '每整周预算的行数',
|
||
'settings.ai.sampleBurnRate': '样品燃烧率',
|
||
'settings.ai.projectedEmpty': '预计空',
|
||
'settings.ai.apiReadsPerDollarRemaining': 'API 每 $ 剩余读取次数',
|
||
'settings.ai.loopCallBudget': '循环呼叫预算',
|
||
'settings.ai.heartbeatTicks': '心跳滴答声',
|
||
'settings.ai.calendarPlannerCalls': '日历规划师来电',
|
||
'settings.ai.calendarFanoutCap': '日历扇出帽',
|
||
'settings.ai.subconsciousModelCalls': '潜意识模型调用',
|
||
'settings.ai.composioSyncScans': 'Composio 同步扫描',
|
||
'settings.ai.totalBackgroundApiReadBudget': '后台 API 读取总预算',
|
||
'settings.ai.memoryWorkerPolls': '内存工作者民意调查',
|
||
'settings.ai.defaultProviderName': 'OpenHuman',
|
||
'settings.ai.routing.managed': '托管',
|
||
'settings.ai.routing.managedDesc':
|
||
'OpenHuman 会在云端运行所有推理,为任务选择最佳模型,优化成本,并保持最安全的路由默认值。',
|
||
'settings.ai.routing.managedMsg':
|
||
'OpenHuman 会处理每个工作负载的全部推理,并自动选择兼顾成本、质量和安全性的最佳路线。',
|
||
'settings.ai.routing.useYourOwn': '使用您自己的模型',
|
||
'settings.ai.routing.useYourOwnDesc':
|
||
'选择一个提供商 + 模型,并让每个工作负载都通过它路由。这样更简单,但轻量和重量级推理共用同一路由,可能效率较低。',
|
||
'settings.ai.routing.advanced': '高级',
|
||
'settings.ai.routing.advancedDesc':
|
||
'为不同任务选择不同模型。这是严格成本优化和最大控制力的最佳选项。',
|
||
'settings.ai.routing.customDesc':
|
||
'细粒度路由可提供最佳成本优化和最高控制力。使用下方各行决定哪些工作负载保持托管、哪些使用共享默认值、哪些固定到特定模型。',
|
||
'settings.ai.routing.chatAndConversations': '聊天和对话',
|
||
'settings.ai.routing.chatDesc': '用于直接用户交互、回复、推理、智能体循环和编码帮助的模型。',
|
||
'settings.ai.routing.backgroundTasks': '后台任务',
|
||
'settings.ai.routing.bgTasksDesc': '在主对话流程之外用于总结、心跳、学习和潜意识评估的模型。',
|
||
'settings.ai.routing.addCustomProvider': '添加自定义提供商',
|
||
'settings.ai.globalModel.title': '为所有事情选择一种型号',
|
||
'settings.ai.globalModel.desc':
|
||
'这会让所有推理都通过一个模型路由。它更简单,但轻量和重型任务都使用同一路由,可能不利于成本和质量。',
|
||
'settings.ai.globalModel.noProviders':
|
||
'请先添加或连接提供商。然后你可以在此将每个工作负载路由到一个模型。',
|
||
'settings.ai.globalModel.provider': '提供者',
|
||
'settings.ai.globalModel.model': '型号',
|
||
'settings.ai.globalModel.loadingModels': '正在加载模型...',
|
||
'settings.ai.globalModel.enterModelId': '输入型号 ID',
|
||
'settings.ai.globalModel.appliesToAll':
|
||
'将同一个提供商 + 模型应用于聊天、推理、编码、记忆、心跳、学习和潜意识。嵌入单独配置。点击保存后更改会保存。',
|
||
'settings.ai.globalModel.saving': '正在保存...',
|
||
'settings.ai.globalModel.saved': '已保存',
|
||
'settings.ai.workload.noModel': '未选择型号',
|
||
'settings.ai.workload.changeModel': '改变模型',
|
||
'settings.ai.workload.chooseModel': '选择型号',
|
||
'settings.ai.provider.ollama': 'Ollama',
|
||
'settings.autocomplete.appFilter.acceptSuggestion': '接受建议',
|
||
'settings.autocomplete.appFilter.app': '应用程序',
|
||
'settings.autocomplete.appFilter.currentSuggestion': '当前建议',
|
||
'settings.autocomplete.appFilter.contextOverride': '上下文覆盖(可选)',
|
||
'settings.autocomplete.appFilter.debounce': '去抖动',
|
||
'settings.autocomplete.appFilter.debugFocus': '调试焦点',
|
||
'settings.autocomplete.appFilter.enabled': '启用',
|
||
'settings.autocomplete.appFilter.getSuggestion': '获取建议',
|
||
'settings.autocomplete.appFilter.lastError': '最后一个错误',
|
||
'settings.autocomplete.appFilter.liveLogs': '实时日志',
|
||
'settings.autocomplete.appFilter.model': '型号',
|
||
'settings.autocomplete.appFilter.noLogs': '无日志',
|
||
'settings.autocomplete.appFilter.phase': '阶段',
|
||
'settings.autocomplete.appFilter.platformSupported': '支持平台',
|
||
'settings.autocomplete.appFilter.refreshStatus': '刷新中…',
|
||
'settings.autocomplete.appFilter.refreshing': '刷新中…',
|
||
'settings.autocomplete.appFilter.running': '跑步',
|
||
'settings.autocomplete.appFilter.runtime': '运行时',
|
||
'settings.autocomplete.appFilter.test': '测试',
|
||
'settings.autocomplete.completionStyle.acceptedCompletion':
|
||
'已存储接受的补全记录,用于个性化后续建议。',
|
||
'settings.autocomplete.completionStyle.acceptedCompletions':
|
||
'已存储接受的补全记录,用于个性化后续建议。',
|
||
'settings.autocomplete.completionStyle.clearHistory': '清除中…',
|
||
'settings.autocomplete.completionStyle.clearing': '清除中…',
|
||
'settings.autocomplete.completionStyle.debounce': '防抖(ms)',
|
||
'settings.autocomplete.completionStyle.enabled': '已启用',
|
||
'settings.autocomplete.completionStyle.maxChars': '最大字符数',
|
||
'settings.autocomplete.completionStyle.noHistory':
|
||
'暂无接受的补全记录。用 Tab 键接受建议以开始个性化。',
|
||
'settings.autocomplete.completionStyle.overlayTtl': '浮层显示时长(ms)',
|
||
'settings.autocomplete.completionStyle.personalizationHistory': '个性化历史',
|
||
'settings.autocomplete.completionStyle.styleExamples': '风格示例(每行一条)',
|
||
'settings.autocomplete.completionStyle.styleInstructions': '风格说明',
|
||
'settings.autocomplete.debug.acceptedPrefix': '已接受:{value}',
|
||
'settings.autocomplete.debug.acceptFailed': '未能接受建议',
|
||
'settings.autocomplete.debug.alreadyRunning': '自动完成功能已在运行。',
|
||
'settings.autocomplete.debug.clearHistoryFailed': '清除历史记录失败',
|
||
'settings.autocomplete.debug.didNotStart': '自动完成功能未启动。',
|
||
'settings.autocomplete.debug.disabledInSettings': '设置中禁用自动完成功能。首先启用它并保存。',
|
||
'settings.autocomplete.debug.fetchSuggestionFailed': '无法获取当前建议',
|
||
'settings.autocomplete.debug.inspectFocusedElementFailed': '无法检查聚焦元素',
|
||
'settings.autocomplete.debug.loadSettingsFailed': '无法加载自动完成设置',
|
||
'settings.autocomplete.debug.noSuggestionApplied': '没有应用任何建议。',
|
||
'settings.autocomplete.debug.noSuggestionReturned': '没有返回任何建议。',
|
||
'settings.autocomplete.debug.refreshStatusFailed': '无法刷新自动完成状态',
|
||
'settings.autocomplete.debug.saveAdvancedSettingsFailed': '无法保存高级设置',
|
||
'settings.autocomplete.debug.startFailed': '无法启动自动完成',
|
||
'settings.autocomplete.debug.stopFailed': '无法停止自动完成',
|
||
'settings.autocomplete.debug.suggestionPrefix': '建议:{value}',
|
||
'settings.autocomplete.shared.none': '无',
|
||
'settings.autocomplete.shared.notApplicable': '不适用',
|
||
'settings.autocomplete.shared.unknown': '未知',
|
||
'settings.billing.autoRecharge.addAmount': '充入此金额',
|
||
'settings.billing.autoRecharge.addCard': '添加银行卡',
|
||
'settings.billing.autoRecharge.amountHint': '最低充值金额',
|
||
'settings.billing.autoRecharge.defaultCard': '默认银行卡',
|
||
'settings.billing.autoRecharge.lastRechargeFailed': '上次充值失败',
|
||
'settings.billing.autoRecharge.lastRecharged': '上次充值时间',
|
||
'settings.billing.autoRecharge.expires': '过期 {date}',
|
||
'settings.billing.autoRecharge.noCards': '未添加银行卡',
|
||
'settings.billing.autoRecharge.paymentMethods': '支付方式',
|
||
'settings.billing.autoRecharge.rechargeInProgress': '充值进行中',
|
||
'settings.billing.autoRecharge.spentThisWeek': '本周使用的 ${limit} 中的 ${spent}',
|
||
'settings.billing.autoRecharge.rechargeWhen': '余额低于以下金额时自动充值',
|
||
'settings.billing.autoRecharge.saveSettings': '保存中…',
|
||
'settings.billing.autoRecharge.saving': '保存中…',
|
||
'settings.billing.autoRecharge.setDefault': '设为默认',
|
||
'settings.billing.autoRecharge.subtitle': '余额不足时自动充值,确保服务不中断',
|
||
'settings.billing.autoRecharge.title': '启用自动充值',
|
||
'settings.billing.autoRecharge.toggleAriaLabel': '切换自动充值',
|
||
'settings.billing.autoRecharge.weeklyLimit': '每周消费限额',
|
||
'settings.billing.history.desc': '查看你的账单历史',
|
||
'settings.billing.history.empty': '暂无账单记录',
|
||
'settings.billing.history.openPortal': '打开账单门户',
|
||
'settings.billing.history.posted': '已记账',
|
||
'settings.billing.history.title': '账单历史',
|
||
'settings.billing.inferenceBudget.cycleEnds': '周期结束',
|
||
'settings.billing.inferenceBudget.exhausted': '已用尽',
|
||
'settings.billing.inferenceBudget.loadError': '无法加载预算信息',
|
||
'settings.billing.inferenceBudget.noBudgetDesc': '暂无预算配置',
|
||
'settings.billing.inferenceBudget.noRecurringBudget': '无周期性预算',
|
||
'settings.billing.inferenceBudget.noRecurringPlanBudget': '无经常性计划预算',
|
||
'settings.billing.inferenceBudget.noRecurringWeeklyDesc':
|
||
'你当前的方案不包含每周循环推理预算。用量将改从可用额度中支付。',
|
||
'settings.billing.inferenceBudget.remaining': '剩余',
|
||
'settings.billing.inferenceBudget.remainingSummary': '剩余 {remaining} / {budget}',
|
||
'settings.billing.inferenceBudget.spentThisCycle': '本周期花费 {amount}',
|
||
'settings.billing.inferenceBudget.cycleEndsOn': '循环结束 {date}',
|
||
'settings.billing.inferenceBudget.exhaustedDesc':
|
||
'订阅包含的用量已耗尽。充值额度即可继续使用 AI,无需等待下个周期。',
|
||
'settings.billing.inferenceBudget.discountVsPayg': '每次通话比即用即付便宜 {pct}%。',
|
||
'settings.billing.inferenceBudget.cycleSpend': '周期支出',
|
||
'settings.billing.inferenceBudget.totalAmount': '{amount} 总计',
|
||
'settings.billing.inferenceBudget.inference': '推理',
|
||
'settings.billing.inferenceBudget.integrations': '集成',
|
||
'settings.billing.inferenceBudget.calls': '{count} 调用',
|
||
'settings.billing.inferenceBudget.dailySpend': '日常消费',
|
||
'settings.billing.inferenceBudget.dailySpendPoint': '{date}:{amount}',
|
||
'settings.billing.inferenceBudget.topModels': '顶级模特',
|
||
'settings.billing.inferenceBudget.noInferenceUsage': '本周期没有推理使用。',
|
||
'settings.billing.inferenceBudget.topIntegrations': '顶级集成',
|
||
'settings.billing.inferenceBudget.noIntegrationUsage': '本周期没有集成使用。',
|
||
'settings.billing.inferenceBudget.tenHourCap': '10 小时上限',
|
||
'settings.billing.inferenceBudget.title': '推理预算',
|
||
'settings.billing.inferenceBudget.unableToLoad': '无法加载使用数据',
|
||
'settings.billing.inferenceBudget.notAvailable': '不适用',
|
||
'settings.billing.payAsYouGo.available': '可用余额',
|
||
'settings.billing.payAsYouGo.chargeCustomAmount': '打开中…',
|
||
'settings.billing.payAsYouGo.chooseTopUpDesc': '选择充值金额',
|
||
'settings.billing.payAsYouGo.chooseTopUpTitle': '充值余额',
|
||
'settings.billing.payAsYouGo.creditBalanceDesc': '你当前的配额余额',
|
||
'settings.billing.payAsYouGo.creditBalanceTitle': '配额余额',
|
||
'settings.billing.payAsYouGo.customAmount': '自定义金额',
|
||
'settings.billing.payAsYouGo.enterAmount': '输入金额',
|
||
'settings.billing.payAsYouGo.opening': '打开中…',
|
||
'settings.billing.payAsYouGo.promotionalCredits': '促销配额',
|
||
'settings.billing.payAsYouGo.topUpBalance': '充值余额',
|
||
'settings.billing.payAsYouGo.topUpCredits': '充值配额',
|
||
'settings.billing.payAsYouGo.unableToLoad': '无法加载余额。',
|
||
'settings.billing.subscription.annual': '年付',
|
||
'settings.billing.subscription.billedAnnually': '按年计费',
|
||
'settings.billing.subscription.chooseSubtitle': '选择适合你的方案',
|
||
'settings.billing.subscription.chooseTitle': '选择方案',
|
||
'settings.billing.subscription.cryptoDesc': '支持加密货币支付',
|
||
'settings.billing.subscription.cryptoQuestion': '想用加密货币支付?',
|
||
'settings.billing.subscription.current': '当前',
|
||
'settings.billing.subscription.currentPlan': '当前方案',
|
||
'settings.billing.subscription.monthly': '月付',
|
||
'settings.billing.subscription.paymentConfirmed': '支付已确认',
|
||
'settings.billing.subscription.perMonth': '每月',
|
||
'settings.billing.subscription.popular': '热门',
|
||
'settings.billing.subscription.save': '{pct}',
|
||
'settings.billing.subscription.upgrade': '升级',
|
||
'settings.billing.subscription.waiting': '等待中',
|
||
'settings.billing.subscription.waitingPayment': '等待支付',
|
||
'settings.composio.apiKeyDesc': '当前此设备上已存储一个 Composio API 密钥。',
|
||
'settings.composio.apiKeyExamplePlaceholder': 'ck_live_xxxxxxxxxxxxxxxxxx',
|
||
'settings.composio.apiKeyLabel': 'Composio API 密钥',
|
||
'settings.composio.apiKeyStored': 'API 密钥已存储',
|
||
'settings.composio.apiKeyStoredPlaceholder': '••••••••••••••••',
|
||
'settings.composio.clearedToBackend': '已切换到后端模式',
|
||
'settings.composio.confirmItem1': '在 app.composio.dev 上拥有带 API 密钥的账户',
|
||
'settings.composio.confirmItem2': '通过你的个人 Composio 账户重新关联每个集成',
|
||
'settings.composio.confirmItem3':
|
||
'注意:Composio 触发器(实时 Webhook)在直连模式下尚不可用——仅支持同步工具调用',
|
||
'settings.composio.confirmNeedItems': '你需要:',
|
||
'settings.composio.confirmSwitch': '我已了解,切换到直连',
|
||
'settings.composio.confirmTitle': '⚠️ 切换到直连模式',
|
||
'settings.composio.confirmWarning':
|
||
'你现有的集成(通过 OpenHuman 关联的 Gmail、Slack、GitHub 等)将不可见——它们存放在 OpenHuman 托管的 Composio 租户中。',
|
||
'settings.composio.intro':
|
||
'Composio 集成了 250+ 外部应用作为智能体可调用的工具。请选择这些工具调用的路由方式。',
|
||
'settings.composio.title': 'Composio',
|
||
'settings.composio.modeDirect': '直连(自带 API 密钥)',
|
||
'settings.composio.modeDirectDesc':
|
||
'调用直接发送到 backend.composio.dev。自主可控 / 适合离线场景。工具同步执行;实时触发器 Webhook 目前在直连模式下尚未路由(后续问题)。',
|
||
'settings.composio.modeManaged': '托管(由 OpenHuman 管理)',
|
||
'settings.composio.modeManagedDesc':
|
||
'OpenHuman 通过我们的后端代理工具调用(推荐)。认证由我们处理,你无需粘贴 Composio API 密钥。Webhook 完全路由。',
|
||
'settings.composio.routingMode': '路由模式',
|
||
'settings.composio.saveErrorNoKey': '保存失败。直连模式需要非空的 API 密钥。',
|
||
'settings.composio.saving': '保存中…',
|
||
'settings.composio.switching': '切换中…',
|
||
'settings.companion.title': '桌面伴侣',
|
||
'settings.companion.session': '会议',
|
||
'settings.companion.activeLabel': '活跃',
|
||
'settings.companion.inactiveStatus': '不活跃',
|
||
'settings.companion.stopping': '停止…',
|
||
'settings.companion.stopSession': '停止会话',
|
||
'settings.companion.starting': '开始…',
|
||
'settings.companion.startSession': '开始会话',
|
||
'settings.companion.sessionId': '会话ID',
|
||
'settings.companion.turns': '转弯',
|
||
'settings.companion.remaining': '剩余',
|
||
'settings.companion.configuration': '配置',
|
||
'settings.companion.hotkey': '热键',
|
||
'settings.companion.activationMode': '激活模式',
|
||
'settings.companion.sessionTtl': '会话生存时间',
|
||
'settings.companion.screenCapture': '屏幕截图',
|
||
'settings.companion.appContext': '应用程序上下文',
|
||
'settings.cron.jobs.commandRequired': 'Shell 任务必须填写命令',
|
||
'settings.cron.jobs.createJob': '新建定时任务',
|
||
'settings.cron.jobs.created': '任务已创建',
|
||
'settings.cron.jobs.custom': '自定义',
|
||
'settings.cron.jobs.desc': '管理核心调度器中的定时任务',
|
||
'settings.cron.jobs.edit': '编辑',
|
||
'settings.cron.jobs.editJob': '编辑定时任务',
|
||
'settings.cron.jobs.empty': '未找到核心定时任务。',
|
||
'settings.cron.jobs.errorCreate': '创建 cron 任务失败:{message}',
|
||
'settings.cron.jobs.errorLoadList': '加载核心 cron 任务失败:{message}',
|
||
'settings.cron.jobs.errorLoadRuns': '加载运行历史失败:{message}',
|
||
'settings.cron.jobs.errorRemove': '删除核心 cron 任务失败:{message}',
|
||
'settings.cron.jobs.errorRun': '运行核心 cron 任务失败:{message}',
|
||
'settings.cron.jobs.errorToggle': '更新核心 cron 任务失败:{message}',
|
||
'settings.cron.jobs.errorUpdate': '更新 cron 任务失败:{message}',
|
||
'settings.cron.jobs.formAtLabel': '运行时间',
|
||
'settings.cron.jobs.formCancel': '取消',
|
||
'settings.cron.jobs.formCommand': 'Shell 命令',
|
||
'settings.cron.jobs.formCommandPlaceholder': '例如 curl https://example.com/health',
|
||
'settings.cron.jobs.formCreate': '创建',
|
||
'settings.cron.jobs.formCronCustom': '自定义表达式',
|
||
'settings.cron.jobs.formCronCustomPlaceholder': '例如 */30 * * * *',
|
||
'settings.cron.jobs.formCronPreset': '预设',
|
||
'settings.cron.jobs.formCronPreview': '运行时间:{preview}',
|
||
'settings.cron.jobs.formDeleteAfterRun': '首次运行后删除',
|
||
'settings.cron.jobs.formDelivery': '投递方式',
|
||
'settings.cron.jobs.formDeliveryNone': '无(仅输出)',
|
||
'settings.cron.jobs.formDeliveryProactive': '主动(推送通知)',
|
||
'settings.cron.jobs.formError': '保存任务失败',
|
||
'settings.cron.jobs.formEveryLabel': '间隔(毫秒)',
|
||
'settings.cron.jobs.formEveryPlaceholder': '例如 3600000',
|
||
'settings.cron.jobs.formJobType': '任务类型',
|
||
'settings.cron.jobs.formJobTypeAgent': 'Agent(AI 提示词)',
|
||
'settings.cron.jobs.formJobTypeShell': 'Shell 命令',
|
||
'settings.cron.jobs.formName': '任务名称',
|
||
'settings.cron.jobs.formNamePlaceholder': '例如 daily-report, cleanup-task',
|
||
'settings.cron.jobs.formPrompt': 'Agent 提示词',
|
||
'settings.cron.jobs.formPromptPlaceholder': '每次运行时 Agent 应执行什么?',
|
||
'settings.cron.jobs.formPromptRequired': 'Agent 任务必须填写提示词',
|
||
'settings.cron.jobs.formSave': '保存',
|
||
'settings.cron.jobs.formSaving': '保存中…',
|
||
'settings.cron.jobs.formScheduleAt': '一次性(在指定时间运行)',
|
||
'settings.cron.jobs.formScheduleCron': '周期性(cron)',
|
||
'settings.cron.jobs.formScheduleEvery': '间隔(每 N 毫秒)',
|
||
'settings.cron.jobs.formScheduleRequired': '必须设置计划',
|
||
'settings.cron.jobs.formScheduleType': '计划类型',
|
||
'settings.cron.jobs.formSessionIsolated': '隔离(推荐)',
|
||
'settings.cron.jobs.formSessionMain': '主会话',
|
||
'settings.cron.jobs.formSessionTarget': '会话目标',
|
||
'settings.cron.jobs.lastStatus': '上次状态',
|
||
'settings.cron.jobs.loading': '正在加载定时任务...',
|
||
'settings.cron.jobs.loadingRuns': '加载运行记录中',
|
||
'settings.cron.jobs.nextRun': '下次运行',
|
||
'settings.cron.jobs.pause': '暂停',
|
||
'settings.cron.jobs.paused': '已暂停',
|
||
'settings.cron.jobs.recentRuns': '最近运行',
|
||
'settings.cron.jobs.removing': '删除中',
|
||
'settings.cron.jobs.resume': '恢复',
|
||
'settings.cron.jobs.runningNow': '立即运行',
|
||
'settings.cron.jobs.saving': '保存中…',
|
||
'settings.cron.jobs.schedule': '计划',
|
||
'settings.cron.jobs.title': '核心定时任务',
|
||
'settings.cron.jobs.updated': '任务已更新',
|
||
'settings.cron.jobs.viewRuns': '查看运行记录',
|
||
'settings.cron.schedule.every2hours': '每 2 小时',
|
||
'settings.cron.schedule.every30min': '每 30 分钟',
|
||
'settings.cron.schedule.every6hours': '每 6 小时',
|
||
'settings.cron.schedule.everyHour': '每小时',
|
||
'settings.cron.schedule.onceDaily': '每天一次(上午 9 点)',
|
||
'settings.localModel.deviceCapability.active': '活跃',
|
||
'settings.localModel.deviceCapability.appliedTier': '已应用档位',
|
||
'settings.localModel.deviceCapability.applying': '应用中',
|
||
'settings.localModel.deviceCapability.cores': '{count} 核',
|
||
'settings.localModel.deviceCapability.couldNotLoadPresets': '无法加载预设',
|
||
'settings.localModel.deviceCapability.cpu': 'CPU',
|
||
'settings.localModel.deviceCapability.customModelIds': '自定义模型 ID',
|
||
'settings.localModel.deviceCapability.detected': '已检测到',
|
||
'settings.localModel.deviceCapability.disabled': '已禁用',
|
||
'settings.localModel.deviceCapability.disabledDesc': '本地 AI 已禁用',
|
||
'settings.localModel.deviceCapability.downloadingModels': '(正在下载模型)',
|
||
'settings.localModel.deviceCapability.downloadingSetupDesc':
|
||
'正在下载 OllamaSetup 安装程序(约 2 GB)并解压。首次安装可能需要一分钟。',
|
||
'settings.localModel.deviceCapability.failedToApplyPreset': '应用预设失败',
|
||
'settings.localModel.deviceCapability.gpu': 'GPU',
|
||
'settings.localModel.deviceCapability.installFailed': 'Ollama 安装失败',
|
||
'settings.localModel.deviceCapability.installFailedDesc':
|
||
'安装程序在 Ollama 可用之前退出。点击重试,或从 ollama.com 手动安装。',
|
||
'settings.localModel.deviceCapability.installFirst': '请先运行 Ollama。',
|
||
'settings.localModel.deviceCapability.installFirstDesc':
|
||
'本地层级依赖外部托管的 Ollama 端点。请自行启动它,拉取所需模型,并在运行时可达前继续使用「已禁用(云端回退)」。',
|
||
'settings.localModel.deviceCapability.installOllamaFirst': '请先运行 Ollama 以使用此层级',
|
||
'settings.localModel.deviceCapability.installingOllama': '正在安装 Ollama',
|
||
'settings.localModel.deviceCapability.loadingDeviceInfo': '正在加载设备信息',
|
||
'settings.localModel.deviceCapability.localAiDisabled': '本地 AI 已禁用 — 使用云端回退。',
|
||
'settings.localModel.deviceCapability.modelTier': '模型档位',
|
||
'settings.localModel.deviceCapability.needsOllama': '需要安装 Ollama',
|
||
'settings.localModel.deviceCapability.notDetected': '未检测到',
|
||
'settings.localModel.deviceCapability.disabledLowercase': '残疾人',
|
||
'settings.localModel.deviceCapability.presetDetails':
|
||
'聊天:{chatModel} · 愿景:{visionModel} · 目标 RAM:{targetRamGb} GB',
|
||
'settings.localModel.deviceCapability.ram': 'RAM',
|
||
'settings.localModel.deviceCapability.recommended': '推荐',
|
||
'settings.localModel.deviceCapability.retryInstall': '重试中…',
|
||
'settings.localModel.deviceCapability.retrying': '重试中…',
|
||
'settings.localModel.deviceCapability.starting': '启动中…',
|
||
'settings.localModel.download.audioPathPlaceholder': '音频文件的绝对路径',
|
||
'settings.localModel.download.capabilityChat': '聊天',
|
||
'settings.localModel.download.capabilityEmbedding': '嵌入',
|
||
'settings.localModel.download.capabilityAssets': '能力资源',
|
||
'settings.localModel.download.capabilityStt': 'STT',
|
||
'settings.localModel.download.capabilityTts': 'TTS',
|
||
'settings.localModel.download.capabilityVision': '愿景',
|
||
'settings.localModel.download.downloading': '下载中...',
|
||
'settings.localModel.download.embeddingDimensions': '尺寸:{dimensions}',
|
||
'settings.localModel.download.embeddingModel': '型号:{modelId}',
|
||
'settings.localModel.download.embeddingPlaceholder': '每行一个输入字符串...',
|
||
'settings.localModel.download.embeddingVectors': '矢量: {count}',
|
||
'settings.localModel.download.noThinkMode': '无思考模式',
|
||
'settings.localModel.download.notAvailable': '不适用',
|
||
'settings.localModel.download.promptPlaceholder': '输入任意提示词并在本地模型上运行...',
|
||
'settings.localModel.download.quantizationPref': '量化偏好',
|
||
'settings.localModel.download.runEmbeddingTest': '运行中...',
|
||
'settings.localModel.download.runPromptTest': '运行提示测试',
|
||
'settings.localModel.download.runSummaryTest': '运行摘要测试',
|
||
'settings.localModel.download.runTranscriptionTest': '运行中...',
|
||
'settings.localModel.download.runTtsTest': '运行中...',
|
||
'settings.localModel.download.runVisionTest': '运行中...',
|
||
'settings.localModel.download.running': '运行中...',
|
||
'settings.localModel.download.runningPrompt': '正在运行提示词',
|
||
'settings.localModel.download.summaryHelper':
|
||
'通过 Rust 核心调用 `open human.inference_summarize`',
|
||
'settings.localModel.download.summarizePlaceholder': '粘贴文本以用本地模型进行摘要...',
|
||
'settings.localModel.download.testCustomPrompt': '测试自定义提示词',
|
||
'settings.localModel.download.testEmbeddings': '测试嵌入',
|
||
'settings.localModel.download.testSummarization': '测试摘要',
|
||
'settings.localModel.download.testVisionPrompt': '测试视觉提示词',
|
||
'settings.localModel.download.testVoiceInput': '测试语音输入(STT)',
|
||
'settings.localModel.download.testVoiceOutput': '测试语音输出(TTS)',
|
||
'settings.localModel.download.transcript': '成绩单:',
|
||
'settings.localModel.download.ttsOutput': '输出:{outputPath}',
|
||
'settings.localModel.download.ttsOutputPlaceholder': '可选输出 WAV 路径',
|
||
'settings.localModel.download.ttsPlaceholder': '输入要合成的文字...',
|
||
'settings.localModel.download.ttsVoice': '声音:{voiceId}',
|
||
'settings.localModel.download.visionImagePlaceholder':
|
||
'每行一个图像引用(data URI、URL 或本地路径标记)',
|
||
'settings.localModel.download.visionPromptPlaceholder': '输入视觉模型的提示词...',
|
||
'settings.localModel.status.allChecksPassed': '所有检查已通过',
|
||
'settings.localModel.status.artifact': '构件',
|
||
'settings.localModel.status.backend': '后端',
|
||
'settings.localModel.status.binary': '二进制文件',
|
||
'settings.localModel.status.bootstrapResume': '引导 / 恢复',
|
||
'settings.localModel.status.checking': '检查中...',
|
||
'settings.localModel.status.checkingOllama': '检查 Ollama',
|
||
'settings.localModel.status.contextBelowMinimumBadge':
|
||
'{contextLength} ctx - 低于 {required} 分钟',
|
||
'settings.localModel.status.contextBelowMinimumTitle':
|
||
'已拒绝:上下文窗口 {contextLength} 令牌低于内存层所需的 {required} 令牌最小值。回忆会因无声截断而被破坏。',
|
||
'settings.localModel.status.contextOkBadge': '{contextLength} ctx ✓',
|
||
'settings.localModel.status.contextOkTitle':
|
||
'上下文窗口 {contextLength} 令牌满足内存层最小值 {required} 令牌。',
|
||
'settings.localModel.status.contextUnknownBadge': 'ctx 未知',
|
||
'settings.localModel.status.contextUnknownTitle':
|
||
'上下文窗口未知;无法确认它满足 {required}-token 内存层最小值。',
|
||
'settings.localModel.status.customLocation': '自定义位置',
|
||
'settings.localModel.status.customLocationDesc': '自定义 Ollama 安装路径',
|
||
'settings.localModel.status.diagnosticsHint':
|
||
'点击「运行诊断」以验证 Ollama 是否正在运行以及模型是否已安装。',
|
||
'settings.localModel.status.downloadingUnknown': '下载中(大小未知)',
|
||
'settings.localModel.status.eta': '预计完成时间',
|
||
'settings.localModel.status.expectedModels': '预期模型',
|
||
'settings.localModel.status.expectedChat': '聊天:{model}',
|
||
'settings.localModel.status.expectedEmbedding': '嵌入:{model}',
|
||
'settings.localModel.status.expectedVision': '愿景:{model}',
|
||
'settings.localModel.status.externalProcess': '外部流程',
|
||
'settings.localModel.status.forceRebootstrap': '强制重新引导',
|
||
'settings.localModel.status.generationTps': '生成 TPS',
|
||
'settings.localModel.status.hideErrorDetails': '隐藏错误详情',
|
||
'settings.localModel.status.installManually': '手动安装',
|
||
'settings.localModel.status.installManuallyFrom': '从以下地址手动安装',
|
||
'settings.localModel.status.installOllama': '启动中…',
|
||
'settings.localModel.status.installedModels': '已安装模型',
|
||
'settings.localModel.status.installing': '安装中...',
|
||
'settings.localModel.status.installingOllama': '正在安装 Ollama 运行时...',
|
||
'settings.localModel.status.issues': '问题',
|
||
'settings.localModel.status.issuesFound': '发现 {count} 个问题',
|
||
'settings.localModel.status.lastLatency': '最近延迟',
|
||
'settings.localModel.status.model': '模型',
|
||
'settings.localModel.status.notAvailable': '不适用',
|
||
'settings.localModel.status.notFound': '未找到',
|
||
'settings.localModel.status.notRunning': '未运行',
|
||
'settings.localModel.status.ollamaBinaryPath': 'Ollama 二进制路径',
|
||
'localModel.ollamaServer.helperText': '示例:http://192.168.1.5:11434',
|
||
'localModel.ollamaServer.label': 'Ollama 服务器 URL',
|
||
'localModel.ollamaServer.modelCount': '个模型',
|
||
'localModel.ollamaServer.placeholder': 'http://localhost:11434',
|
||
'localModel.ollamaServer.reachable': '可访问',
|
||
'localModel.ollamaServer.resetButton': '重置为默认值',
|
||
'localModel.ollamaServer.saveButton': '保存',
|
||
'localModel.ollamaServer.testButton': '测试连接',
|
||
'localModel.ollamaServer.unreachable': '无法访问',
|
||
'localModel.ollamaServer.validationError': '必须是有效的 http:// 或 https:// URL',
|
||
'settings.localModel.status.ollamaDiagnostics': 'Ollama 诊断',
|
||
'settings.localModel.status.ollamaNotInstalled': 'Ollama 运行时不可用',
|
||
'settings.localModel.status.ollamaNotInstalledDesc':
|
||
'OpenHuman 现在将 Ollama 视为外部推理运行时。请启动你自己的 Ollama 服务器,拉取所需模型,并将工作负载路由指向它。',
|
||
'settings.localModel.status.progress': '进度',
|
||
'settings.localModel.status.provider': '提供商',
|
||
'settings.localModel.status.retryBootstrap': '重试引导',
|
||
'settings.localModel.status.runDiagnostics': '检查中...',
|
||
'settings.localModel.status.running': '运行中',
|
||
'settings.localModel.status.runningExternalProcess': '通过外部进程运行',
|
||
'settings.localModel.status.runtimeStatus': '运行时状态',
|
||
'settings.localModel.status.server': '服务器',
|
||
'settings.localModel.status.setPath': '设置中...',
|
||
'settings.localModel.status.setting': '设置中...',
|
||
'settings.localModel.status.showErrorDetails': '隐藏错误详情',
|
||
'settings.localModel.status.showInstallErrorDetails': '隐藏错误详情',
|
||
'settings.localModel.status.suggestedFixes': '建议修复方案',
|
||
'settings.localModel.status.thenSetPath': '然后设置路径',
|
||
'settings.localModel.status.triggering': '触发中...',
|
||
'settings.localModel.status.unavailable': '不可用',
|
||
'settings.localModel.status.working': '处理中...',
|
||
'settings.developerMenu.ai.title': 'AI 配置',
|
||
'settings.developerMenu.ai.desc': '云端提供商、本地 Ollama 模型和按工作负载路由',
|
||
'settings.developerMenu.screenAwareness.title': '屏幕感知',
|
||
'settings.developerMenu.screenAwareness.desc': '屏幕捕获权限、监控策略和会话控制',
|
||
'settings.developerMenu.messagingChannels.title': '消息渠道',
|
||
'settings.developerMenu.messagingChannels.desc': '配置 Telegram/Discord 认证模式和默认渠道路由',
|
||
'settings.developerMenu.tools.title': '工具',
|
||
'settings.developerMenu.tools.desc': '启用或停用 OpenHuman 可代表你使用的能力',
|
||
'settings.developerMenu.agentChat.title': '智能体聊天',
|
||
'settings.developerMenu.agentChat.desc': '使用模型和温度覆盖测试智能体对话',
|
||
'settings.developerMenu.devWorkflow.title': '开发工作流',
|
||
'settings.developerMenu.devWorkflow.desc': '自主选择你的 GitHub issue 并按计划发起 PR 的智能体',
|
||
'settings.developerMenu.devWorkflow.panelDesc':
|
||
'配置一个自主开发智能体,按计划选择分配给你的 GitHub issue 并自动发起 pull request。',
|
||
'settings.developerMenu.skillsRunner.title': '技能运行器',
|
||
'settings.developerMenu.skillsRunner.desc': '临时运行任意内置技能 — 填写输入并启动后台自主运行',
|
||
'settings.developerMenu.skillsRunner.panelDesc':
|
||
'选择内置技能,填写它声明的输入,并启动一次无需等待的后台运行。如果需要按 cron 计划重复运行,请使用开发工作流。',
|
||
'settings.skillsRunner.skill': '技能',
|
||
'settings.skillsRunner.selectSkill': '选择技能…',
|
||
'settings.skillsRunner.loadingSkills': '正在加载技能…',
|
||
'settings.skillsRunner.loadingDescription': '正在加载技能输入…',
|
||
'settings.skillsRunner.noInputs': '此技能未声明输入。',
|
||
'settings.skillsRunner.placeholder.required': '必填',
|
||
'settings.skillsRunner.runNow': '立即运行',
|
||
'settings.skillsRunner.starting': '启动中…',
|
||
'settings.skillsRunner.started': '已启动 — 运行 ID:',
|
||
'settings.skillsRunner.logPath': '日志:',
|
||
'settings.skillsRunner.error.listSkills': '加载技能失败:',
|
||
'settings.skillsRunner.error.describe': '加载输入失败:',
|
||
'settings.skillsRunner.error.missingRequired': '缺少必填输入:',
|
||
'settings.skillsRunner.error.run': '启动运行失败:',
|
||
'settings.skillsRunner.error.preflightGate': '预检门禁失败',
|
||
'settings.skillsRunner.schedule.heading': '计划(重复)',
|
||
'settings.skillsRunner.schedule.help':
|
||
'将此技能和输入保存为重复 cron 任务。智能体会在每次触发时调用 run_skill。',
|
||
'settings.skillsRunner.schedule.frequency': '频率',
|
||
'settings.skillsRunner.schedule.every30min': '每 30 分钟',
|
||
'settings.skillsRunner.schedule.everyHour': '每小时',
|
||
'settings.skillsRunner.schedule.every2hours': '每 2 小时',
|
||
'settings.skillsRunner.schedule.every6hours': '每 6 小时',
|
||
'settings.skillsRunner.schedule.onceDaily': '每天一次(9:00)',
|
||
'settings.skillsRunner.schedule.save': '保存计划',
|
||
'settings.skillsRunner.schedule.saving': '保存中…',
|
||
'settings.skillsRunner.schedule.saved': '计划已保存。',
|
||
'settings.skillsRunner.schedule.error': '保存计划失败:',
|
||
'settings.skillsRunner.schedule.loadingJobs': '正在加载现有计划…',
|
||
'settings.skillsRunner.schedule.noJobs': '此技能尚未保存计划。',
|
||
'settings.skillsRunner.schedule.existing': '此技能的计划任务:',
|
||
'settings.skillsRunner.schedule.runNow': '运行',
|
||
'settings.skillsRunner.schedule.remove': '移除',
|
||
'settings.skillsRunner.scheduleEnabled': '已启用',
|
||
'settings.skillsRunner.scheduleDisabled': '已暂停',
|
||
'settings.skillsRunner.scheduleToggleAria': '切换计划启用状态',
|
||
'settings.skillsRunner.schedule.history': '历史记录',
|
||
'settings.skillsRunner.schedule.historyLoading': '正在加载历史记录…',
|
||
'settings.skillsRunner.schedule.historyEmpty': '此计划还没有运行记录。',
|
||
'settings.skillsRunner.schedule.historyNoOutput': '未捕获输出。',
|
||
'settings.skillsRunner.schedule.active': '活跃',
|
||
'settings.skillsRunner.schedule.lastRunLabel': '上次:',
|
||
'settings.skillsRunner.recentRuns.headingForSkill': '此技能的最近运行',
|
||
'settings.skillsRunner.recentRuns.headingAll': '最近技能运行(全部)',
|
||
'settings.skillsRunner.recentRuns.refresh': '刷新',
|
||
'settings.skillsRunner.recentRuns.loading': '正在加载最近运行…',
|
||
'settings.skillsRunner.recentRuns.empty': '暂无最近运行。',
|
||
'settings.skillsRunner.viewer.loading': '正在加载日志…',
|
||
'settings.skillsRunner.viewer.tailing': '实时追踪',
|
||
'settings.skillsRunner.viewer.fetching': '获取中',
|
||
'settings.skillsRunner.viewer.error': '读取日志失败:',
|
||
'settings.skillsRunner.repoPicker.loading': '正在加载仓库…',
|
||
'settings.skillsRunner.repoPicker.select': '选择仓库…',
|
||
'settings.skillsRunner.repoPicker.empty': '未返回仓库。通过 Composio 连接 GitHub 以填充此列表。',
|
||
'settings.skillsRunner.repoPicker.notConnected':
|
||
'GitHub 尚未通过 Composio 连接。请先在“技能 → Composio”下连接。',
|
||
'settings.skillsRunner.repoPicker.privateTag': '(私有)',
|
||
'settings.skillsRunner.branchPicker.needRepo': '请先选择仓库…',
|
||
'settings.skillsRunner.branchPicker.loading': '正在加载分支…',
|
||
'settings.skillsRunner.branchPicker.select': '选择分支…',
|
||
'settings.devWorkflow.githubRepository': 'GitHub 仓库',
|
||
'settings.devWorkflow.loadingRepositories': '正在加载仓库...',
|
||
'settings.devWorkflow.selectRepository': '选择仓库',
|
||
'settings.devWorkflow.privateTag': '(私有)',
|
||
'settings.devWorkflow.detectingForkInfo': '正在检测 fork 信息...',
|
||
'settings.devWorkflow.forkDetected': '检测到 fork',
|
||
'settings.devWorkflow.upstream': '上游:',
|
||
'settings.devWorkflow.forkPrNote': 'PR 将提交到上游仓库。',
|
||
'settings.devWorkflow.notForkNote': '这不是 fork。PR 将直接提交到此仓库。',
|
||
'settings.devWorkflow.targetBranch': '目标分支',
|
||
'settings.devWorkflow.targetBranchNote': 'PR 将提交到此分支',
|
||
'settings.devWorkflow.loadingBranches': '正在加载分支...',
|
||
'settings.devWorkflow.runFrequency': '运行频率',
|
||
'settings.devWorkflow.runFrequencyNote': '智能体检查 issue 并发起 PR 的频率。',
|
||
'settings.devWorkflow.updateConfiguration': '更新配置',
|
||
'settings.devWorkflow.saveConfiguration': '保存配置',
|
||
'settings.devWorkflow.remove': '移除',
|
||
'settings.devWorkflow.saved': '已保存',
|
||
'settings.devWorkflow.activeConfiguration': '当前配置',
|
||
'settings.devWorkflow.activeConfigRepository': '仓库:',
|
||
'settings.devWorkflow.activeConfigUpstream': '上游:',
|
||
'settings.devWorkflow.activeConfigTargetBranch': '目标分支:',
|
||
'settings.devWorkflow.activeConfigSchedule': '计划:',
|
||
'settings.devWorkflow.enabled': '已启用',
|
||
'settings.devWorkflow.paused': '已暂停',
|
||
'settings.devWorkflow.nextRun': '下次运行',
|
||
'settings.devWorkflow.lastRun': '上次运行',
|
||
'settings.devWorkflow.runNow': '立即运行',
|
||
'settings.devWorkflow.running': '运行中…',
|
||
'settings.devWorkflow.recentRuns': '最近运行',
|
||
'settings.devWorkflow.cronSaveError': '保存配置失败',
|
||
'settings.devWorkflow.lastOutput': '上次输出',
|
||
'settings.devWorkflow.noOutput': '未捕获输出',
|
||
'settings.devWorkflow.runningStatus': '智能体正在运行 — 正在选择 issue 并处理修复...',
|
||
'settings.devWorkflow.errorNotConnected':
|
||
'GitHub 未连接。请先通过“设置 > 高级 > Composio”连接 GitHub。',
|
||
'settings.devWorkflow.errorToolNotEnabled':
|
||
'此后端未启用 GITHUB_LIST_REPOSITORIES_FOR_THE_AUTHENTICATED_USER 工具。请让管理员在 Composio 集成中启用它(backend#842)。',
|
||
'settings.devWorkflow.errorNotAuthenticated': '未认证。请先登录。',
|
||
'settings.devWorkflow.errorNoRepositories': '未找到此 GitHub 账户的仓库。',
|
||
'settings.devWorkflow.schedule.every30min': '每 30 分钟',
|
||
'settings.devWorkflow.schedule.everyHour': '每小时',
|
||
'settings.devWorkflow.schedule.every2hours': '每 2 小时',
|
||
'settings.devWorkflow.schedule.every6hours': '每 6 小时',
|
||
'settings.devWorkflow.schedule.onceDaily': '每天一次(上午 9 点)',
|
||
'settings.developerMenu.cronJobs.title': '定时任务',
|
||
'settings.developerMenu.cronJobs.desc': '查看并配置运行时技能的计划任务',
|
||
'settings.developerMenu.localModelDebug.title': '本地模型调试',
|
||
'settings.developerMenu.localModelDebug.desc': 'Ollama 配置、资源下载、模型测试和诊断',
|
||
'settings.developerMenu.webhooks.title': 'Webhook',
|
||
'settings.developerMenu.webhooks.desc': '检查运行时 Webhook 注册和捕获的请求日志',
|
||
'settings.developerMenu.eventLog.title': '事件日志',
|
||
'settings.developerMenu.eventLog.desc': '实时显示所有智能体、工具和系统事件的彩色编码流',
|
||
'settings.developerMenu.eventLog.allTypes': '所有类型',
|
||
'settings.developerMenu.eventLog.filterAgent': '筛选...',
|
||
'settings.developerMenu.eventLog.download': '下载',
|
||
'settings.developerMenu.eventLog.events': '个事件',
|
||
'settings.developerMenu.eventLog.live': '实时',
|
||
'settings.developerMenu.eventLog.disconnected': '已断开连接',
|
||
'settings.developerMenu.eventLog.waiting': '正在等待事件...',
|
||
'settings.developerMenu.eventLog.notConnected': '未连接到核心',
|
||
'settings.developerMenu.eventLog.jumpToLatest': '跳到最新',
|
||
'settings.developerMenu.eventLog.badge.tool': '工具',
|
||
'settings.developerMenu.eventLog.badge.agent': '智能体',
|
||
'settings.developerMenu.eventLog.badge.info': '信息',
|
||
'settings.developerMenu.eventLog.badge.mem': 'MEM',
|
||
'settings.developerMenu.eventLog.badge.chan': 'CHAN',
|
||
'settings.developerMenu.eventLog.badge.cron': 'CRON',
|
||
'settings.developerMenu.eventLog.badge.hook': 'HOOK',
|
||
'settings.developerMenu.eventLog.badge.warn': '警告',
|
||
'settings.developerMenu.eventLog.badge.skill': '技能',
|
||
'settings.developerMenu.eventLog.badge.comp': 'COMP',
|
||
'settings.developerMenu.eventLog.badge.mcp': 'MCP',
|
||
'settings.developerMenu.intelligence.title': '智能',
|
||
'settings.developerMenu.intelligence.desc': '记忆工作区、潜意识引擎、梦境和设置',
|
||
'settings.developerMenu.notificationRouting.title': '通知路由',
|
||
'settings.developerMenu.notificationRouting.desc': '集成提醒的 AI 重要性评分和编排器升级',
|
||
'settings.developerMenu.composeioTriggers.title': 'ComposeIO 触发器',
|
||
'settings.developerMenu.composeioTriggers.desc': '查看 ComposeIO 触发器历史和归档',
|
||
'settings.developerMenu.composioRouting.title': 'Composio 路由(直连模式)',
|
||
'settings.developerMenu.composioRouting.desc':
|
||
'使用你自己的 Composio API 密钥并将调用直接路由到 backend.composio.dev',
|
||
'settings.developerMenu.integrationTriggers.title': '集成触发器',
|
||
'settings.developerMenu.integrationTriggers.desc': '配置 Composio 集成触发器的 AI 分流设置',
|
||
'settings.developerMenu.mcpServer.title': 'MCP 服务器',
|
||
'settings.developerMenu.mcpServer.desc': '配置外部 MCP 客户端以连接到 OpenHuman',
|
||
'settings.developerMenu.autonomy.title': '智能体自主权',
|
||
'settings.developerMenu.autonomy.desc': '工具操作速率限制和安全阈值',
|
||
'settings.mcpServer.title': 'MCP 服务器',
|
||
'settings.mcpServer.toolsSectionTitle': '可用工具',
|
||
'settings.mcpServer.toolsSectionDesc':
|
||
'运行 openhuman-core mcp 时通过 MCP stdio 服务器暴露的工具',
|
||
'settings.mcpServer.configSectionTitle': '客户端配置',
|
||
'settings.mcpServer.configSectionDesc': '选择你的 MCP 客户端以生成对应的配置代码片段',
|
||
'settings.mcpServer.copySnippet': '复制到剪贴板',
|
||
'settings.mcpServer.copied': '已复制!',
|
||
'settings.mcpServer.openConfigFile': '打开配置文件',
|
||
'settings.mcpServer.binaryPathNotFound':
|
||
'未找到 OpenHuman 二进制文件。如果使用源码运行,请执行:cargo build --bin openhuman-core',
|
||
'settings.mcpServer.openConfigError': '打开配置文件失败',
|
||
'settings.mcpServer.clientClaudeDesktop': '克劳德桌面',
|
||
'settings.mcpServer.clientCursor': '光标',
|
||
'settings.mcpServer.clientCodex': '法典',
|
||
'settings.mcpServer.clientZed': '泽德',
|
||
'settings.mcpServer.configFilePath': '配置文件',
|
||
'settings.mcpServer.clientSelectorAriaLabel': 'MCP 客户端选择器',
|
||
'settings.appearance.menuDesc': '选择浅色、深色或跟随系统主题',
|
||
'settings.agentAccess.title': '智能体系统访问',
|
||
'settings.agentAccess.menuDesc': '控制智能体可读写的位置,以及是否可以使用 shell。',
|
||
'settings.agentAccess.loadError': '无法加载访问设置',
|
||
'settings.agentAccess.saveError': '无法保存访问设置',
|
||
'settings.agentAccess.saved': '已保存 — 将在你的下一条消息后生效。',
|
||
'settings.agentAccess.desktopOnly': '访问设置仅在桌面应用中可用。',
|
||
'settings.agentAccess.loading': '加载中…',
|
||
'settings.agentAccess.accessMode': '访问模式',
|
||
'settings.agentAccess.tier.readonly.title': '只读',
|
||
'settings.agentAccess.tier.readonly.desc':
|
||
'可读取文件并运行只读命令来探索 — 但绝不会写入、编辑或运行任何会更改状态的操作。',
|
||
'settings.agentAccess.tier.supervised.title': '编辑前询问',
|
||
'settings.agentAccess.tier.supervised.desc':
|
||
'可自由创建新文件,但在编辑现有文件、运行命令、访问网络或安装任何内容前会请求你的批准。',
|
||
'settings.agentAccess.tier.full.title': '完全访问',
|
||
'settings.agentAccess.tier.full.desc':
|
||
'使用你的完整用户账户权限运行命令 — 可在允许的位置读写,但凭据和系统存储除外。破坏性命令、网络访问和安装仍会请求批准。',
|
||
'settings.agentAccess.defaultTag': '(默认)',
|
||
'settings.agentAccess.fullWarning':
|
||
'⚠ 完全访问会使用你的完整账户权限运行命令,且没有沙盒。仅在你信任智能体可使用这台机器时启用。凭据和系统目录仍会被阻止,破坏性、网络和安装操作仍会请求批准。',
|
||
'settings.agentAccess.confine.label': '限制在工作区',
|
||
'settings.agentAccess.confine.desc':
|
||
'无论选择哪种访问模式,都将智能体限制在工作区目录(以及已授权文件夹)内。关闭后,它可访问你的用户可访问的任何位置 — 始终阻止的凭据和系统目录除外。',
|
||
'settings.agentAccess.requireTaskPlanApproval.label': '要求批准任务计划',
|
||
'settings.agentAccess.requireTaskPlanApproval.desc':
|
||
'在指定智能体执行由智能体编写的任务简报前暂停。',
|
||
'settings.agentAccess.grantedFolders': '已授权文件夹',
|
||
'settings.agentAccess.alwaysAllow': '始终允许的工具',
|
||
'settings.agentAccess.alwaysAllowDesc':
|
||
'你在聊天中标记为“始终允许”的工具会直接运行且不再询问。移除后会重新提示。',
|
||
'settings.agentAccess.alwaysAllowNone': '还没有始终允许的工具。',
|
||
'settings.agentAccess.grantedDesc':
|
||
'除工作区外,智能体可读写的文件夹。凭据存储(~/.ssh、~/.gnupg、~/.aws、keychains)和系统目录(/etc、/System、C:\\Windows、…)始终被阻止,即使它们位于已授权文件夹内。',
|
||
'settings.agentAccess.noneGranted': '未授权任何文件夹。',
|
||
'settings.agentAccess.readWrite': '读写',
|
||
'settings.agentAccess.readOnly': '只读',
|
||
'settings.agentAccess.remove': '移除',
|
||
'settings.agentAccess.pathPlaceholder': '文件夹的绝对路径',
|
||
'settings.agentAccess.accessLevelLabel': '访问级别',
|
||
'settings.agentAccess.add': '添加',
|
||
'settings.agentAccess.saving': '保存中…',
|
||
'settings.agentAccess.changesApply': '更改将在你的下一条消息后生效。',
|
||
'settings.agentAccess.approvalHistory': 'Approval history',
|
||
'settings.agentAccess.approvalHistoryDesc':
|
||
'Review past Approve / Deny decisions the agent requested.',
|
||
'settings.agentAccess.viewApprovalHistory': 'View approval history',
|
||
'settings.approvalHistory.title': 'Approval history',
|
||
'settings.approvalHistory.subtitle': 'Recent tool-approval decisions, newest first.',
|
||
'settings.approvalHistory.refresh': 'Refresh',
|
||
'settings.approvalHistory.loading': 'Loading approval history…',
|
||
'settings.approvalHistory.retry': 'Retry',
|
||
'settings.approvalHistory.emptyState': 'No approval decisions recorded yet.',
|
||
'settings.approvalHistory.errorGeneric': 'Unable to load approval history. Try again.',
|
||
'settings.approvalHistory.decidedAt': 'Decided {date}',
|
||
'settings.approvalHistory.decision.approveOnce': 'Approved once',
|
||
'settings.approvalHistory.decision.approveAlways': 'Always allowed',
|
||
'settings.approvalHistory.decision.deny': 'Denied',
|
||
'settings.appearance.title': '外观',
|
||
'settings.appearance.themeHeading': '主题',
|
||
'settings.appearance.themeAria': '主题',
|
||
'settings.appearance.modeLight': '浅色',
|
||
'settings.appearance.modeLightDesc': '明亮界面,深色文字。',
|
||
'settings.appearance.modeDark': '深色',
|
||
'settings.appearance.modeDarkDesc': '暗色界面,夜间更护眼。',
|
||
'settings.appearance.modeSystem': '跟随系统',
|
||
'settings.appearance.modeSystemDesc': '跟随操作系统外观设置。',
|
||
'settings.appearance.helperText':
|
||
'深色模式会将整个应用——聊天、设置、面板——切换为暗色调。"跟随系统"会同步你的操作系统外观并实时更新。',
|
||
'settings.appearance.tabBarHeading': '底部标签栏',
|
||
'settings.appearance.tabBarAlwaysShowLabels': '始终显示标签',
|
||
'settings.appearance.tabBarAlwaysShowLabelsDesc': '关闭时,标签仅出现在悬停时或活动选项卡上。',
|
||
'settings.mascot.active': '活跃',
|
||
'settings.mascot.characterDesc': '选择你的 OpenHuman 角色',
|
||
'settings.mascot.characterHeading': '角色',
|
||
'settings.mascot.customGifError':
|
||
'输入 HTTPS .gif 链接、本地回环 HTTP .gif 链接、file:// .gif 链接或本地 .gif 路径。',
|
||
'settings.mascot.customGifHeading': '自定义 GIF 头像',
|
||
'settings.mascot.customGifLabel': '自定义 GIF 头像链接',
|
||
'settings.mascot.customGifPlaceholder': 'https://example.com/avatar.gif',
|
||
'settings.mascot.characterPreview': '预览',
|
||
'settings.mascot.characterStates': '状态',
|
||
'settings.mascot.characterVisemes': '视素',
|
||
'settings.mascot.colorAria': 'OpenHuman 颜色',
|
||
'settings.mascot.colorDesc': '选择颜色方案',
|
||
'settings.mascot.colorHeading': '颜色',
|
||
'settings.mascot.colorBlack': '黑色',
|
||
'settings.mascot.colorBurgundy': '酒红色',
|
||
'settings.mascot.colorCustom': '自定义',
|
||
'settings.mascot.colorNavy': '深蓝色',
|
||
'settings.mascot.primaryColor': '主色',
|
||
'settings.mascot.secondaryColor': '辅助色',
|
||
'settings.mascot.colorYellow': '黄色',
|
||
'settings.mascot.libraryUnavailable': 'OpenHuman 资源库不可用',
|
||
'settings.mascot.title': 'OpenHuman',
|
||
'settings.mascot.loadingLibrary': '正在加载 OpenHuman 库…',
|
||
'settings.mascot.loadDetailError': '无法加载吉祥物。',
|
||
'settings.mascot.loadLibraryError': '无法加载吉祥物库。',
|
||
'settings.mascot.localDefault': '本地 OpenHuman(默认)',
|
||
'settings.mascot.menuTitle': '吉祥物',
|
||
'settings.mascot.menuDesc': '选择应用内使用的吉祥物颜色',
|
||
'settings.mascot.noCharacters': '暂无可用的 OpenHuman 角色',
|
||
'settings.mascot.noColorVariants': '无颜色变体',
|
||
'settings.mascot.voice.current': '当前',
|
||
'settings.mascot.voice.customDesc':
|
||
'在 api.elevenlabs.io/v1/voices 或您的 ElevenLabs 仪表板中查找语音 ID。仅存储 ID — 您的 API 密钥保留在后端。',
|
||
'settings.mascot.voice.customHeading': '自定义语音 ID',
|
||
'settings.mascot.voice.customOption': '其他(粘贴语音 ID)…',
|
||
'settings.mascot.voice.customPlaceholder': '例如21m00Tcm4TlvDq8ikWAM',
|
||
'settings.mascot.voice.desc':
|
||
'选择吉祥物用于语音回复的 ElevenLabs 声音。按性别筛选,从精选列表中选择,粘贴自定义 ID,或让应用根据您的界面语言自动选择声音。',
|
||
'settings.mascot.voice.genderFemale': '女声',
|
||
'settings.mascot.voice.genderHeading': '声音性别',
|
||
'settings.mascot.voice.genderMale': '男声',
|
||
'settings.mascot.voice.heading': '声音',
|
||
'settings.mascot.voice.preset': '声音预设',
|
||
'settings.mascot.voice.presetHeading': '声音预设',
|
||
'settings.mascot.voice.preview': '试听声音',
|
||
'settings.mascot.voice.previewError': '声音试听失败',
|
||
'settings.mascot.voice.previewText': '你好,我是你的助手。这是一段声音试听。',
|
||
'settings.mascot.voice.previewing': '试听中…',
|
||
'settings.mascot.voice.reset': '重置为默认值',
|
||
'settings.mascot.voice.useLocaleDefault': '匹配应用语言',
|
||
'settings.mascot.voice.useLocaleDefaultDesc': '为当前界面语言自动选择一个声音。',
|
||
'settings.persona.title': '人格',
|
||
'settings.persona.menuTitle': '人格',
|
||
'settings.persona.menuDesc': '名称、性格、头像和声音 — 让你的助手成为统一身份',
|
||
'settings.persona.identityHeading': '身份',
|
||
'settings.persona.identityDesc':
|
||
'助手的显示名称和简短描述。会显示在应用中;不会改变助手的推理方式。',
|
||
'settings.persona.displayNameLabel': '显示名称',
|
||
'settings.persona.displayNamePlaceholder': '例如 Nova',
|
||
'settings.persona.descriptionLabel': '描述',
|
||
'settings.persona.descriptionPlaceholder': '例如 为我的团队服务的冷静、简洁助手。',
|
||
'settings.persona.soul.heading': '性格(SOUL.md)',
|
||
'settings.persona.soul.desc':
|
||
'助手在每次对话中遵循的性格提示词。编辑会保存到你的工作区,并在下次回复时生效。',
|
||
'settings.persona.soul.editorLabel': 'SOUL.md 内容',
|
||
'settings.persona.soul.reset': '重置为默认值',
|
||
'settings.persona.soul.usingDefault': '正在使用内置默认值',
|
||
'settings.persona.soul.loadError': '无法加载 SOUL.md',
|
||
'settings.persona.soul.saveError': '无法保存 SOUL.md',
|
||
'settings.persona.soul.resetError': '无法重置 SOUL.md',
|
||
'settings.persona.appearanceHeading': '头像和声音',
|
||
'settings.persona.appearanceDesc': '吉祥物颜色、自定义 GIF 头像和回复声音在吉祥物设置中配置。',
|
||
'settings.persona.openMascotSettings': '打开吉祥物设置',
|
||
'settings.memoryWindow.balanced.badge': '推荐',
|
||
'settings.memoryWindow.balanced.hint':
|
||
'合理的默认值——在不为每次运行消耗额外 token 的情况下保持良好的连贯性。',
|
||
'settings.memoryWindow.balanced.label': '均衡',
|
||
'settings.memoryWindow.description':
|
||
'OpenHuman 在每次新的智能体运行中注入多少记忆上下文。更大的窗口对过往对话更有感知,但每次运行会消耗更多 token,成本也更高。',
|
||
'settings.memoryWindow.extended.badge': '更多上下文',
|
||
'settings.memoryWindow.extended.hint': '向每次运行注入更多长期记忆。每轮 token 成本更高。',
|
||
'settings.memoryWindow.extended.label': '扩展',
|
||
'settings.memoryWindow.maximum.badge': '最高成本',
|
||
'settings.memoryWindow.maximum.hint': '最大安全窗口。连贯性最佳,每次运行的 token 账单显著更高。',
|
||
'settings.memoryWindow.maximum.label': '最大',
|
||
'settings.memoryWindow.minimal.badge': '最便宜',
|
||
'settings.memoryWindow.minimal.hint': '最小记忆窗口。最便宜、最快,但跨运行的连贯性最弱。',
|
||
'settings.memoryWindow.minimal.label': '最小',
|
||
'settings.memoryWindow.title': '长期记忆窗口',
|
||
'settings.modelHealth.title': '模型健康',
|
||
'settings.modelHealth.desc': '比较各活跃模型的单模型质量、幻觉率和成本',
|
||
'settings.modelHealth.allStatuses': '所有状态',
|
||
'settings.modelHealth.models': '个模型',
|
||
'settings.modelHealth.loading': '正在加载模型数据...',
|
||
'settings.modelHealth.empty': '未注册模型',
|
||
'settings.modelHealth.col.model': '模型',
|
||
'settings.modelHealth.col.quality': '质量',
|
||
'settings.modelHealth.col.halluc': '幻觉率',
|
||
'settings.modelHealth.col.cost': '每 100 万输出成本',
|
||
'settings.modelHealth.col.agents': '智能体',
|
||
'settings.modelHealth.col.status': '状态',
|
||
'settings.modelHealth.badge.keep': '保留',
|
||
'settings.modelHealth.badge.replace': '替换',
|
||
'settings.modelHealth.badge.staging': '预发布测试',
|
||
'settings.modelHealth.badge.vision': '仅视觉',
|
||
'settings.modelHealth.swap': '替换?',
|
||
'settings.modelHealth.modal.title': '替换模型?',
|
||
'settings.modelHealth.modal.hallucRate': '幻觉率',
|
||
'settings.modelHealth.modal.cancel': '取消',
|
||
'settings.modelHealth.modal.apply': '应用替换',
|
||
'settings.modelHealth.tag.cheaper': '更便宜',
|
||
'settings.modelHealth.tag.better': '更好',
|
||
'settings.screenIntel.permissions.accessibility': '辅助功能',
|
||
'settings.screenIntel.permissions.grantHint': '在系统设置中授权后,点击下方刷新',
|
||
'settings.screenIntel.permissions.inputMonitoring': '输入监控',
|
||
'settings.screenIntel.permissions.macosAppliesPrivacy': 'macOS 会在所有窗口中应用隐私保护',
|
||
'settings.screenIntel.permissions.openInputMonitoring': '请求中…',
|
||
'settings.screenIntel.permissions.refreshStatus': '刷新中…',
|
||
'settings.screenIntel.permissions.refreshing': '刷新中…',
|
||
'settings.screenIntel.permissions.requestAccessibility': '请求中…',
|
||
'settings.screenIntel.permissions.requestScreenRecording': '请求中…',
|
||
'settings.screenIntel.permissions.requesting': '请求中…',
|
||
'settings.screenIntel.permissions.restartRefresh': '正在重启核心…',
|
||
'settings.screenIntel.permissions.restartingCore': '正在重启核心…',
|
||
'settings.screenIntel.permissions.screenRecording': '屏幕录制',
|
||
'settings.screenIntel.permissions.title': '权限',
|
||
'skills.card.moreActions': '更多操作',
|
||
'skills.channelIcon.discord': 'Discord',
|
||
'skills.channelIcon.imessage': 'iMessage',
|
||
'skills.channelIcon.telegram': 'Telegram',
|
||
'skills.channelIcon.web': '网络',
|
||
'skills.channelIcon.yuanbao': '元宝',
|
||
'skills.composio.poweredBy': '由 Composio 提供支持',
|
||
'skills.composio.staleStatusTitle': '连接显示陈旧状态',
|
||
'skills.create.allowedTools': '允许的工具',
|
||
'skills.create.allowedToolsHelp': '渲染到 SKILL.md frontmatter 中为',
|
||
'skills.create.allowedToolsPlaceholder': '节点执行,获取',
|
||
'skills.create.author': '作者',
|
||
'skills.create.authorPlaceholder': '你的名字',
|
||
'skills.create.commaSeparated': '(逗号分隔)',
|
||
'skills.create.createBtn': '创建技能',
|
||
'skills.create.createError': '无法创建技能',
|
||
'skills.create.creating': '创建中…',
|
||
'skills.create.description': '描述',
|
||
'skills.create.descriptionPlaceholder': '这个技能做什么?',
|
||
'skills.create.optional': '(可选)',
|
||
'skills.create.inputs.heading': 'Inputs',
|
||
'skills.create.inputs.help': '声明技能所需的参数。Skills Runner 将在运行时为这些参数渲染表单。',
|
||
'skills.create.inputs.add': '添加输入',
|
||
'skills.create.inputs.row.name': '输入名称',
|
||
'skills.create.inputs.row.namePlaceholder': '例如 repo',
|
||
'skills.create.inputs.row.nameError': '只能包含字母、数字、下划线和连字符,且必须以字母开头。',
|
||
'skills.create.inputs.row.description': '输入描述',
|
||
'skills.create.inputs.row.descriptionPlaceholder': '此字段用于输入什么?',
|
||
'skills.create.inputs.row.type': 'Type',
|
||
'skills.create.inputs.row.required': 'Required',
|
||
'skills.create.inputs.row.remove': '删除输入',
|
||
'skills.create.inputs.type.string': 'Text',
|
||
'skills.create.inputs.type.integer': 'Number',
|
||
'skills.create.inputs.type.boolean': '是 / 否',
|
||
'skills.create.license': '许可证',
|
||
'skills.create.licensePlaceholder': 'MIT',
|
||
'skills.create.name': '名称',
|
||
'skills.create.namePlaceholder': '例如:交易日志',
|
||
'skills.create.scope': '范围',
|
||
'skills.create.scopeProjectHint': '/.open human/技能/',
|
||
'skills.create.scopeUserHint':
|
||
'写入 ~/.openhuman/skills/<slug>/SKILL.md — 在所有工作空间中可用。',
|
||
'skills.create.slugLabel': '标识符',
|
||
'skills.create.subtitle': '技能.md',
|
||
'skills.create.tags': '标签',
|
||
'skills.create.tagsPlaceholder': '贸易、研究',
|
||
'skills.create.title': '新建技能',
|
||
'skills.detail.allowedTools': '允许的工具',
|
||
'skills.detail.author': '作者',
|
||
'skills.detail.bundledResources': '捆绑资源',
|
||
'skills.detail.closeAriaLabel': '关闭技能详情',
|
||
'skills.detail.location': '位置',
|
||
'skills.detail.noBundledResources': '无捆绑资源。',
|
||
'skills.detail.tags': '标签',
|
||
'skills.detail.warnings': '警告',
|
||
'skills.install.errors.alreadyInstalledHint':
|
||
'工作区中已存在此 slug 的技能。首先将其删除或更改 frontmatter `metadata.id` / `name`。',
|
||
'skills.install.errors.alreadyInstalledTitle': '技能已安装',
|
||
'skills.install.errors.fetchFailedHint':
|
||
'请求未成功完成。检查 URL 指向可访问的公共文件,并且主机返回 2xx 响应。',
|
||
'skills.install.errors.fetchFailedTitle': '获取失败',
|
||
'skills.install.errors.fetchTimedOutHint': '远程主机没有及时响应。请重试或提高超时(1-600 秒)。',
|
||
'skills.install.errors.fetchTimedOutTitle': '获取超时',
|
||
'skills.install.errors.fetchTooLargeHint':
|
||
'SKILL.md 必须小于 1 MiB。将捆绑的资源拆分为“references/”或“scripts/”文件,而不是内联它们。',
|
||
'skills.install.errors.fetchTooLargeTitle': 'SKILL.md 太大',
|
||
'skills.install.errors.genericHint': '后端返回错误。原始消息如下所示。',
|
||
'skills.install.errors.genericTitle': '无法安装技能',
|
||
'skills.install.errors.invalidSkillHint':
|
||
'frontmatter 必须是有效的 YAML,具有非空的“name”和“description”字段,并以“---”结尾。',
|
||
'skills.install.errors.invalidSkillTitle': 'SKILL.md 未解析',
|
||
'skills.install.errors.invalidUrlHint': '仅允许公共 HTTPS URL。私有、环回和元数据主机被阻止。',
|
||
'skills.install.errors.invalidUrlTitle': 'URL 被拒绝',
|
||
'skills.install.errors.unsupportedUrlHint':
|
||
'只有直接的“.md”链接才有效。对于 GitHub,链接到文件 (github.com/owner/repo/blob/.../SKILL.md) - 未安装树和存储库根。',
|
||
'skills.install.errors.unsupportedUrlTitle': '不支持 URL 形式',
|
||
'skills.install.errors.writeFailedHint':
|
||
'工作区技能目录不可写。检查“<workspace>/.open human/skills/”的文件系统权限。',
|
||
'skills.install.errors.writeFailedTitle': '无法写入 SKILL.md',
|
||
'skills.install.fetchLog': '获取日志',
|
||
'skills.install.fetchingPrefix': '抓取',
|
||
'skills.install.fetchingSuffix': '这可能需要您配置的超时时间。',
|
||
'skills.install.installBtn': '安装中…',
|
||
'skills.install.installComplete': '安装完成',
|
||
'skills.install.installing': '安装中…',
|
||
'skills.install.parseWarnings': '解析警告',
|
||
'skills.install.rawError': '原始错误',
|
||
'skills.install.subtitleMiddle': 'over HTTPS 并将其安装在',
|
||
'skills.install.subtitlePrefix': '获取单个',
|
||
'skills.install.subtitleSuffix': '仅 HTTPS;私有和环回主机被阻止。',
|
||
'skills.install.successDiscovered': '发现{count}新技能。',
|
||
'skills.install.successNoNewIds':
|
||
'已安装技能,但没有出现新的技能 ID - 目录可能已包含具有相同 slug 的技能。',
|
||
'skills.install.timeoutHint': '(秒,可选)',
|
||
'skills.install.timeoutHelp': '默认为 60 秒。 1-600 之外的值在服务器端被限制。',
|
||
'skills.install.timeoutInvalid': '必须是 1 到 600 之间的整数。',
|
||
'skills.install.timeoutLabel': '超时',
|
||
'skills.install.timeoutPlaceholder': '60',
|
||
'skills.install.title': '从 URL 安装技能',
|
||
'skills.install.urlHelpMiddle': '文件。',
|
||
'skills.install.urlHelpPrefix': '直接链接到',
|
||
'skills.install.urlHelpSuffix': 'URLs 自动重写为',
|
||
'skills.install.urlInvalidPrefix': 'URL 必须是格式良好的',
|
||
'skills.install.urlInvalidSuffix': '链接。',
|
||
'skills.install.urlLabel': '技能 URL',
|
||
'skills.install.urlPlaceholder': 'https://raw.githubusercontent.com/owner/repo/main/SKILL.md',
|
||
'skills.meetingBots.bannerDesc': '让 OpenHuman 加入你的会议,自动记录摘要',
|
||
'skills.meetingBots.bannerTitle': '会议机器人',
|
||
'skills.meetingBots.busyTitle': 'OpenHuman 正忙',
|
||
'skills.meetingBots.comingSoon': '即将推出',
|
||
'skills.meetingBots.couldNotStartTitle': '无法启动 OpenHuman',
|
||
'skills.meetingBots.displayName': '显示名称',
|
||
'skills.meetingBots.failedToStart': '启动 OpenHuman 失败。',
|
||
'skills.meetingBots.joiningMessage': '它应该在几秒钟内作为参会者出现。',
|
||
'skills.meetingBots.joiningTitle': 'OpenHuman 正在加入会议',
|
||
'skills.meetingBots.meetingLink': '会议链接',
|
||
'skills.meetingBots.modalAriaLabel': '将 OpenHuman 发送到会议',
|
||
'skills.meetingBots.modalDesc': '输入会议链接,让 OpenHuman 作为参会者加入并记录内容。',
|
||
'skills.meetingBots.modalTitle': '将 OpenHuman 发送到会议',
|
||
'skills.meetingBots.newBadge': '新',
|
||
'skills.meetingBots.platformComingSoon': '{label} 支持即将推出。',
|
||
'skills.meetingBots.platformHints.gmeet': 'meet.google.com/abc-defg-hij',
|
||
'skills.meetingBots.platformHints.teams': 'team.microsoft.com/...',
|
||
'skills.meetingBots.platformHints.zoom': 'Zoom.us/j/...',
|
||
'skills.meetingBots.platforms.gmeet': 'Google 见面',
|
||
'skills.meetingBots.platforms.teams': '微软团队',
|
||
'skills.meetingBots.platforms.zoom': '变焦',
|
||
'skills.meetingBots.sendTo': '发送到会议',
|
||
'skills.meetingBots.soonSuffix': '很快',
|
||
'skills.meetingBots.starting': '启动中…',
|
||
'skills.resource.preview.closeAriaLabel': '关闭预览',
|
||
'skills.resource.preview.failed': '预览失败',
|
||
'skills.resource.preview.loading': '加载预览中…',
|
||
'skills.resource.tree.empty': '无捆绑资源。',
|
||
'skills.search.placeholder': '搜索技能...',
|
||
'skills.setup.autocomplete.acceptKey': '接受键',
|
||
'skills.setup.autocomplete.activeDesc': '自动补全已激活,正在为你提供智能建议',
|
||
'skills.setup.autocomplete.activeTitle': '自动补全已激活',
|
||
'skills.setup.autocomplete.customizeSettings': '自定义设置',
|
||
'skills.setup.autocomplete.debounce': '防抖',
|
||
'skills.setup.autocomplete.description': '在你输入时提供智能文本建议',
|
||
'skills.setup.autocomplete.enableBtn': '启用中...',
|
||
'skills.setup.autocomplete.enableError': '启用自动补全失败',
|
||
'skills.setup.autocomplete.enabling': '启用中...',
|
||
'skills.setup.autocomplete.notSupported': '不支持',
|
||
'skills.setup.autocomplete.stepEnable': '启用内联补全',
|
||
'skills.setup.autocomplete.stepSuccess': '准备就绪',
|
||
'skills.setup.autocomplete.stylePreset': '风格预设',
|
||
'skills.setup.autocomplete.stylePresetValue': '均衡(稍后可配置)',
|
||
'skills.setup.autocomplete.title': '文本自动补全',
|
||
'skills.setup.screenIntel.activeDesc': '屏幕智能已激活,正在感知你的屏幕',
|
||
'skills.setup.screenIntel.activeTitle': '屏幕智能已启用',
|
||
'skills.setup.screenIntel.advancedSettings': '高级设置',
|
||
'skills.setup.screenIntel.allGranted': '所有权限已授予',
|
||
'skills.setup.screenIntel.captureMode': '捕获模式',
|
||
'skills.setup.screenIntel.captureModeValue': '所有窗口(稍后可配置)',
|
||
'skills.setup.screenIntel.deniedHint': '在系统设置中授权后,点击下方重启以应用更改。',
|
||
'skills.setup.screenIntel.enableBtn': '启用中...',
|
||
'skills.setup.screenIntel.enableDesc': '检测屏幕上的内容并将有用的上下文提供给助手',
|
||
'skills.setup.screenIntel.enableError': '启用屏幕智能失败',
|
||
'skills.setup.screenIntel.enabling': '启用中...',
|
||
'skills.setup.screenIntel.grant': '打开中...',
|
||
'skills.setup.screenIntel.granted': '已授予',
|
||
'skills.setup.screenIntel.macosOnly': '仅支持 macOS',
|
||
'skills.setup.screenIntel.opening': '打开中...',
|
||
'skills.setup.screenIntel.panicHotkey': '紧急热键',
|
||
'skills.setup.screenIntel.permAccessibility': '辅助功能',
|
||
'skills.setup.screenIntel.permInputMonitoring': '输入监控',
|
||
'skills.setup.screenIntel.permScreenRecording': '屏幕录制',
|
||
'skills.setup.screenIntel.permissionsDesc': '屏幕智能需要以下权限才能正常工作',
|
||
'skills.setup.screenIntel.permissionPathLabel': 'macOS 将隐私应用于:',
|
||
'skills.setup.screenIntel.refreshStatus': '刷新状态',
|
||
'skills.setup.screenIntel.restartRefresh': '重启中...',
|
||
'skills.setup.screenIntel.restarting': '重启中...',
|
||
'skills.setup.screenIntel.stepEnable': '启用技能',
|
||
'skills.setup.screenIntel.stepPermissions': '授予权限',
|
||
'skills.setup.screenIntel.stepSuccess': '准备就绪',
|
||
'skills.setup.screenIntel.title': '屏幕智能',
|
||
'skills.setup.screenIntel.visionModel': '视觉模型',
|
||
'skills.setup.voice.activation': '激活方式',
|
||
'skills.setup.voice.activeDescPrefix': 'Fn',
|
||
'skills.setup.voice.activeDescSuffix': 'Fn',
|
||
'skills.setup.voice.activeTitle': '语音智能已激活',
|
||
'skills.setup.voice.customizeSettings': '自定义设置',
|
||
'skills.setup.voice.downloadSttBtn': '下载 STT 模型',
|
||
'skills.setup.voice.enableDesc': '启用语音输入和输出功能',
|
||
'skills.setup.voice.hotkey': '热键',
|
||
'skills.setup.voice.startBtn': '启动中...',
|
||
'skills.setup.voice.startError': '启动语音服务失败',
|
||
'skills.setup.voice.starting': '启动中...',
|
||
'skills.setup.voice.stepEnable': '启动语音服务',
|
||
'skills.setup.voice.stepSetup': '需要下载模型',
|
||
'skills.setup.voice.stepSuccess': '准备就绪',
|
||
'skills.setup.voice.sttNotReady': '语音转文本模型未就绪',
|
||
'skills.setup.voice.sttNotReadyDesc':
|
||
'语音智能需要本地 Whisper 模型进行转录。请从本地模型设置中下载。',
|
||
'skills.setup.voice.sttReady': '语音转文本模型已就绪',
|
||
'skills.setup.voice.sttReturnHint': '完成后将返回此页面',
|
||
'skills.setup.voice.title': '语音智能',
|
||
'skills.uninstall.couldNotUninstall': '无法卸载',
|
||
'skills.uninstall.description':
|
||
'这将永久删除技能目录及其所有捆绑资源。智能体将在下一轮停止看到它。',
|
||
'skills.uninstall.title': '卸载',
|
||
'skills.uninstall.uninstallBtn': '卸载',
|
||
'skills.uninstall.uninstalling': '卸载中…',
|
||
'upsell.global.limitMessage': '升级方案或充值配额以继续使用',
|
||
'upsell.global.limitTitle': '已达使用限制',
|
||
'upsell.global.nearLimitMessage': '你已使用了 {pct}% 的使用限制。升级以获得更高限额。',
|
||
'upsell.global.nearLimitTitle': '接近使用限制',
|
||
'upsell.usageLimit.bodyBudget': '你已达到每周限制。',
|
||
'upsell.usageLimit.bodyRate': '你已达到 10 小时推理速率限制。',
|
||
'upsell.usageLimit.heading': '已达使用限制',
|
||
'upsell.usageLimit.notNow': '暂不',
|
||
'upsell.usageLimit.perWindow': '{amount}',
|
||
'upsell.usageLimit.planIncludes': '{plan}',
|
||
'upsell.usageLimit.resetsIn': '重置时间',
|
||
'upsell.usageLimit.upgradePlan': '升级方案',
|
||
'upsell.usageLimit.weeklyInference': '{amount}',
|
||
'walkthrough.tooltip.letsGo': '出发吧!',
|
||
'walkthrough.tooltip.next': '下一步 →',
|
||
'walkthrough.tooltip.skip': '跳过引导',
|
||
'walkthrough.tooltip.stepCounter': '{n} / {total}',
|
||
'webhooks.activity.empty': '暂无活动',
|
||
'webhooks.activity.title': '最近活动',
|
||
'webhooks.composioHistory.empty': '暂无记录',
|
||
'webhooks.composioHistory.metadataId': '元数据 ID',
|
||
'webhooks.composioHistory.metadataUuid': '元数据 UUID',
|
||
'webhooks.composioHistory.payload': '载荷',
|
||
'webhooks.composioHistory.title': 'ComposeIO 触发器历史',
|
||
'webhooks.tunnels.active': '活跃',
|
||
'webhooks.tunnels.createFailed': '创建隧道失败',
|
||
'webhooks.tunnels.creating': '创建中...',
|
||
'webhooks.tunnels.deleteFailed': '删除隧道失败',
|
||
'webhooks.tunnels.descriptionPlaceholder': '描述(可选)',
|
||
'webhooks.tunnels.echo': '回显',
|
||
'webhooks.tunnels.empty': '暂无隧道',
|
||
'webhooks.tunnels.enableEcho': '启用回显',
|
||
'webhooks.tunnels.inactive': '未激活',
|
||
'webhooks.tunnels.namePlaceholder': '隧道名称(例如:telegram-bot)',
|
||
'webhooks.tunnels.newTunnel': '新建隧道',
|
||
'webhooks.tunnels.removeEcho': '移除回显',
|
||
'webhooks.tunnels.title': 'Webhook 隧道',
|
||
'webhooks.tunnels.toggleFailed': '切换回显失败',
|
||
'composio.directModeRequiresKey': '保存失败。直连模式需要非空的 API 密钥。',
|
||
'composio.integrationSlugsHelp': '以逗号分隔的集成段,例如',
|
||
'composio.integrationSlugsExample': 'Gmail、松弛',
|
||
'composio.integrationSlugsCaseInsensitive': '不区分大小写。',
|
||
'composio.integrationSlugsPlaceholder': 'Gmail、松弛、...',
|
||
'composio.notYetRouted': '尚未路由',
|
||
'composio.triggers.loading': '加载中…',
|
||
'conversations.taskKanban.todo': '待办',
|
||
'chat.addReaction': '添加反应',
|
||
'chat.agentProfile.create': '创建代理资料',
|
||
'chat.agentProfile.createFailed': '无法创建代理配置文件。',
|
||
'chat.agentProfile.customDescription': '定制代理资料',
|
||
'chat.agentProfile.defaultAgentLabel': '协调者',
|
||
'chat.agentProfile.exists': '代理配置文件“{name}”已存在。',
|
||
'chat.agentProfile.label': '代理简介',
|
||
'chat.agentProfile.namePlaceholder': '个人资料名称',
|
||
'chat.agentProfile.promptStylePlaceholder': '提示风格',
|
||
'chat.agentProfile.allowedToolsPlaceholder': '允许使用的工具',
|
||
'chat.backToThread': '返回{title}',
|
||
'chat.parentThread': '父线程',
|
||
'chat.removeReaction': '删除 {emoji}',
|
||
'settings.composio.loading': '加载中…',
|
||
'settings.mascot.noCharactersAvailable': '暂无可用的 OpenHuman 角色',
|
||
'skills.uninstall.confirmTitle': '卸载 {name}?',
|
||
'conversations.taskKanban.blocked': '已阻塞',
|
||
'conversations.taskKanban.done': '已完成',
|
||
'conversations.taskKanban.pending': '待处理',
|
||
'conversations.taskKanban.working': '处理中',
|
||
'conversations.taskKanban.awaitingApproval': '等待批准',
|
||
'conversations.taskKanban.ready': '就绪',
|
||
'conversations.taskKanban.rejected': '已拒绝',
|
||
'conversations.taskKanban.inProgress': '进行中',
|
||
'intelligence.memoryChunk.detail.copiedHint': '已复制',
|
||
'settings.composio.notYetRouted': '尚未路由',
|
||
'settings.localModel.download.manageExternal': '在外部运行时中管理此模型。',
|
||
'settings.localModel.status.manageOllamaExternal':
|
||
'请在 OpenHuman 之外管理 Ollama 进程和模型拉取,然后重新运行诊断。',
|
||
'settings.localModel.status.ollamaDocs': 'Ollama 文档',
|
||
'settings.localModel.status.thenRetry': '获取设置说明,待你的运行时可达后再重试。',
|
||
'devOptions.menuAi': 'AI 配置',
|
||
'devOptions.menuAiDesc': '云端提供商、本地 Ollama 模型与按工作负载路由',
|
||
'devOptions.menuScreenAware': '屏幕感知',
|
||
'devOptions.menuScreenAwareDesc': '屏幕捕获权限、监控策略与会话控制',
|
||
'devOptions.menuMessaging': '消息通道',
|
||
'devOptions.menuMessagingDesc': '配置 Telegram/Discord 认证模式与默认通道路由',
|
||
'devOptions.menuTools': '工具',
|
||
'devOptions.menuToolsDesc': '启用或禁用 OpenHuman 可代表你使用的能力',
|
||
'devOptions.menuAgentChat': '代理对话',
|
||
'devOptions.menuAgentChatDesc': '使用模型和温度覆盖测试代理对话',
|
||
'devOptions.menuCronJobs': '定时任务',
|
||
'devOptions.menuCronJobsDesc': '查看和配置运行时技能的定时任务',
|
||
'devOptions.menuLocalModelDebug': '本地模型调试',
|
||
'devOptions.menuLocalModelDebugDesc': 'Ollama 配置、资源下载、模型测试与诊断',
|
||
'devOptions.menuWebhooksDebug': '网络钩子',
|
||
'devOptions.menuWebhooksDebugDesc': '查看运行时 webhook 注册和已捕获的请求日志',
|
||
'devOptions.menuIntelligence': '智能',
|
||
'devOptions.menuIntelligenceDesc': '记忆工作区、潜意识引擎、梦境与设置',
|
||
'devOptions.menuNotificationRouting': '通知路由',
|
||
'devOptions.menuNotificationRoutingDesc': 'AI 重要性评分与集成警报的协调升级',
|
||
'devOptions.menuComposeIOTriggers': 'ComposeIO 触发器',
|
||
'devOptions.menuComposeIOTriggersDesc': '查看 ComposeIO 触发器历史与归档',
|
||
'devOptions.menuComposioRouting': 'Composio 路由 (直连模式)',
|
||
'devOptions.menuComposioRoutingDesc':
|
||
'使用你自己的 Composio API 密钥,将调用直接路由到 backend.composio.dev',
|
||
'devOptions.menuComposioTriggers': '集成触发器',
|
||
'devOptions.menuComposioTriggersDesc': '为 Composio 集成触发器配置 AI 分级设置',
|
||
'memory.sourceFilterAria': '按来源过滤',
|
||
'calls.comingSoonDescription': '人工智能辅助通话即将推出。敬请关注。',
|
||
'whatsapp.title': 'WhatsApp',
|
||
'subconscious.interval.fiveMinutes': '5分钟',
|
||
'subconscious.interval.tenMinutes': '10分钟',
|
||
'subconscious.interval.fifteenMinutes': '15分钟',
|
||
'subconscious.interval.thirtyMinutes': '30分钟',
|
||
'subconscious.interval.oneHour': '1小时',
|
||
'subconscious.interval.sixHours': '6小时',
|
||
'subconscious.interval.twelveHours': '12小时',
|
||
'subconscious.interval.oneDay': '1天',
|
||
'subconscious.priority.critical': '批评的',
|
||
'subconscious.priority.important': '重要的',
|
||
'subconscious.priority.normal': '正常',
|
||
'subconscious.durationSeconds': '{seconds}s',
|
||
'subconscious.durationMilliseconds': '{milliseconds}毫秒',
|
||
'settings.appearance': '外观',
|
||
'settings.appearanceDesc': '选择浅色、深色或跟随系统主题',
|
||
'settings.mascot': '吉祥物',
|
||
'settings.mascotDesc': '选择应用中使用的吉祥物颜色',
|
||
'pages.settings.account.walletBalances': '钱包余额',
|
||
'pages.settings.account.walletBalancesDesc': '查看本地钱包的多链余额',
|
||
'walletBalances.title': '钱包余额',
|
||
'walletBalances.refresh': 'Refresh',
|
||
'walletBalances.loading': '正在加载余额…',
|
||
'walletBalances.retry': 'Retry',
|
||
'walletBalances.emptyState': '暂无钱包账户——请在恢复助记词中设置钱包。',
|
||
'walletBalances.copyAddress': '复制地址',
|
||
'walletBalances.providerMissing': '服务商不可用',
|
||
'walletBalances.rawBalance': '原始值:{raw}',
|
||
'walletBalances.errorGeneric': '无法加载钱包余额。请在恢复助记词中设置钱包后重试。',
|
||
'walletBalances.setupHint': '你的恢复短语尚未设置。设置后即可启用钱包并查看实时余额。',
|
||
'walletBalances.setupCta': '设置恢复短语',
|
||
'walletBalances.notSetUp': '未设置',
|
||
'walletBalances.send': '发送',
|
||
'walletBalances.receive': '接收',
|
||
'walletReceive.scanHint': '扫描此码或复制下方地址以接收资金。',
|
||
'walletReceive.addressLabel': '{network} 地址',
|
||
'walletReceive.onlyChainWarning':
|
||
'仅向此地址发送 {network} 资产。从其他网络发送资产可能导致永久损失。',
|
||
'walletSend.available': '可用',
|
||
'walletSend.recipient': '收款地址',
|
||
'walletSend.recipientPlaceholder': '粘贴目标地址',
|
||
'walletSend.recipientRequired': '请输入收款地址',
|
||
'walletSend.amount': '金额',
|
||
'walletSend.invalidAmount': '请输入有效金额',
|
||
'walletSend.review': '审核',
|
||
'walletSend.preparing': '准备中…',
|
||
'walletSend.confirmHint': '请查看下方详情。签名在本地完成——在你确认之前不会广播任何内容。',
|
||
'walletSend.estimatedFee': '预计网络费用',
|
||
'walletSend.confirmSend': '确认并发送',
|
||
'walletSend.sending': '发送中…',
|
||
'walletSend.sent': '交易已发送',
|
||
'walletSend.txHash': '交易哈希',
|
||
'walletSend.viewExplorer': '在浏览器中查看',
|
||
'walletSend.done': '完成',
|
||
'walletSend.genericError': '无法完成转账。请重试。',
|
||
'settings.taskSources.title': '任务来源',
|
||
'settings.taskSources.subtitle': '从你的工具拉取任务到智能体待办板',
|
||
'settings.taskSources.description':
|
||
'从 GitHub、Notion、Linear 和 ClickUp 收集工作项,补充信息后路由到智能体待办板。',
|
||
'settings.taskSources.connectHint': '任务来源会使用你已连接的账户。请先在集成中连接它们。',
|
||
'settings.taskSources.disabledBanner': '任务来源已在设置中禁用。启用后可自动轮询。',
|
||
'settings.taskSources.loadError': '加载任务来源失败',
|
||
'settings.taskSources.addTitle': '添加任务来源',
|
||
'settings.taskSources.provider': '提供商',
|
||
'settings.taskSources.name': '名称(可选)',
|
||
'settings.taskSources.namePlaceholder': '例如 我的未解决 issue',
|
||
'settings.taskSources.github.repo': '仓库(所有者/名称,可选)',
|
||
'settings.taskSources.github.labels': '标签(逗号分隔)',
|
||
'settings.taskSources.notion.database': '数据库(看板)ID',
|
||
'settings.taskSources.linear.team': '团队 ID(可选)',
|
||
'settings.taskSources.clickup.team': '工作区(团队)ID(可选)',
|
||
'settings.taskSources.assignedToMe': '仅限分配给我的项目',
|
||
'settings.taskSources.add': '添加来源',
|
||
'settings.taskSources.adding': '添加中…',
|
||
'settings.taskSources.preview': '预览',
|
||
'settings.taskSources.previewResult': '{count} 个任务匹配此筛选器',
|
||
'settings.taskSources.fetchNow': '立即获取',
|
||
'settings.taskSources.fetching': '获取中…',
|
||
'settings.taskSources.fetchResult': '已路由 {routed}/{fetched} 个任务',
|
||
'settings.taskSources.configured': '已配置来源',
|
||
'settings.taskSources.empty': '尚未配置任务来源。',
|
||
'settings.taskSources.proactive': '主动',
|
||
'settings.taskSources.lastFetch': '上次获取',
|
||
'settings.taskSources.never': '从未',
|
||
'settings.taskSources.statusEnabled': '已启用',
|
||
'settings.taskSources.statusDisabled': '已禁用',
|
||
'settings.taskSources.enable': '启用',
|
||
'settings.taskSources.disable': '禁用',
|
||
'settings.taskSources.remove': '移除',
|
||
'settings.taskSources.removeConfirm':
|
||
'移除此任务来源?所有已摄取的任务历史都将被删除,且无法撤销。',
|
||
'settings.taskSources.refresh': '刷新',
|
||
'settings.taskSources.providers.github': 'GitHub',
|
||
'settings.taskSources.providers.notion': 'Notion',
|
||
'settings.taskSources.providers.linear': 'Linear',
|
||
'settings.taskSources.providers.clickup': 'ClickUp',
|
||
'skills.dashboard.title': 'Skills',
|
||
'skills.dashboard.scheduledHeading': '定时技能',
|
||
'skills.dashboard.emptyTitle': '暂无定时技能',
|
||
'skills.dashboard.emptyBody': '运行一次内置技能或保存定期计划后,将在此处显示。',
|
||
'skills.dashboard.create': '创建技能',
|
||
'skills.dashboard.run': '运行技能',
|
||
'skills.dashboard.enable': '启用定时技能',
|
||
'skills.dashboard.disable': '禁用定时技能',
|
||
'skills.dashboard.lastRun': '上次运行',
|
||
'skills.dashboard.nextRun': '下次运行',
|
||
'skills.dashboard.cardOpenRunner': '在运行器中打开',
|
||
'skills.dashboard.loadError': '加载定时技能失败',
|
||
'skills.new.title': '创建技能',
|
||
'skills.new.placeholderBody': '编写表单即将上线。目前请使用运行器页面上的「新建技能」按钮。',
|
||
'settings.agents.title': '智能体',
|
||
'settings.agents.subtitle': '管理可委派的智能体,包括内置默认智能体和你自定义的智能体。',
|
||
'settings.agents.menuDesc': '管理内置和自定义智能体',
|
||
'settings.agents.newAgent': '新建智能体',
|
||
'settings.agents.loadError': '无法加载智能体',
|
||
'settings.agents.empty': '暂无智能体',
|
||
'settings.agents.sourceDefault': '内置',
|
||
'settings.agents.sourceCustom': '自定义',
|
||
'settings.agents.enable': '启用智能体',
|
||
'settings.agents.disable': '禁用智能体',
|
||
'settings.agents.edit': '编辑',
|
||
'settings.agents.delete': '删除',
|
||
'settings.agents.reset': '恢复默认',
|
||
'settings.agents.modelLabel': '模型',
|
||
'settings.agents.toolsLabel': '工具',
|
||
'settings.agents.toolsAll': '所有工具',
|
||
'settings.agents.toolsCount': '{count} 个工具',
|
||
'settings.agents.actionFailed': '无法更新智能体',
|
||
'settings.agents.orchestratorLocked': '编排智能体始终启用。',
|
||
'settings.agents.editor.createTitle': '新建智能体',
|
||
'settings.agents.editor.editTitle': '编辑智能体',
|
||
'settings.agents.editor.id': 'ID',
|
||
'settings.agents.editor.idHint': '仅限小写字母、数字、_ 和 -。',
|
||
'settings.agents.editor.name': '名称',
|
||
'settings.agents.editor.description': '描述',
|
||
'settings.agents.editor.model': '模型(可选)',
|
||
'settings.agents.editor.modelPlaceholder': '例如 inherit、hint:fast 或模型 ID',
|
||
'settings.agents.editor.systemPrompt': '系统提示词(可选)',
|
||
'settings.agents.editor.tools': '允许的工具',
|
||
'settings.agents.editor.toolsHint': '每行一个工具名称。使用 * 表示所有工具。',
|
||
'settings.agents.editor.defaultsNote': '编辑内置智能体会保存一份覆盖配置,之后可重置。',
|
||
'settings.agents.editor.save': '保存',
|
||
'settings.agents.editor.create': '创建智能体',
|
||
'settings.agents.editor.saving': '保存中…',
|
||
'nav.workflows': 'Workflows',
|
||
'workflows.title': 'Agent Workflows',
|
||
'workflows.subtitle': 'Lifecycle-bound rule sets that guide how the agent behaves during tasks.',
|
||
'workflows.createNew': 'New Workflow',
|
||
'workflows.listHeading': 'Workflows',
|
||
'workflows.delete': 'Delete Workflow',
|
||
'workflows.deleteError': 'Failed to delete workflow',
|
||
'workflows.warnings': '{count} warning(s)',
|
||
'workflows.empty.title': 'No workflows yet',
|
||
'workflows.empty.body':
|
||
'Create a workflow to define rules and scripts for task lifecycle phases.',
|
||
'workflows.create.title': 'New Workflow',
|
||
'workflows.create.subtitle': 'Define a lifecycle-bound rule set for the agent.',
|
||
'workflows.create.name': 'Name',
|
||
'workflows.create.namePlaceholder': 'e.g. Python project workflow',
|
||
'workflows.create.description': 'Description',
|
||
'workflows.create.descriptionPlaceholder': 'What does this workflow do?',
|
||
'workflows.create.whenToUse': 'When to use',
|
||
'workflows.create.whenToUsePlaceholder': 'When should the agent pick up this workflow?',
|
||
'workflows.create.optional': '(optional)',
|
||
'workflows.create.createBtn': 'Create workflow',
|
||
'workflows.create.creating': 'Creating…',
|
||
'workflows.create.createError': 'Could not create workflow',
|
||
'workflows.create.successTitle': 'Workflow created',
|
||
'workflows.create.successMessage': 'was created successfully.',
|
||
'workflows.deleteConfirm.title': 'Delete workflow',
|
||
'workflows.deleteConfirm.body': 'Remove "{name}"? This cannot be undone.',
|
||
'workflows.detail.tags': 'Tags',
|
||
'workflows.detail.location': 'Location',
|
||
'workflows.detail.warnings': 'Warnings',
|
||
'workflows.detail.phases': 'Phases',
|
||
'workflows.detail.noPhases': 'No phases defined.',
|
||
'workflows.detail.loadError': 'Failed to load full workflow',
|
||
'workflows.phase.rules': 'Rules',
|
||
'workflows.phase.rules.empty': 'No rules.',
|
||
'workflows.phase.scripts': 'Scripts',
|
||
'workflows.phase.scripts.empty': 'No scripts.',
|
||
'workflows.phase.toolScope': 'Tool scope',
|
||
'workflows.phase.toolScope.allow': 'Allow',
|
||
'workflows.phase.toolScope.deny': 'Deny',
|
||
'workflows.phase.toolScope.inherited': 'Inherited from workflow default.',
|
||
'workflows.phase.toolScope.empty': 'No tool restrictions.',
|
||
'workflows.phase.context': 'Context',
|
||
'workflows.phase.context.empty': 'No context providers.',
|
||
'settings.agentsSection.title': 'Agents',
|
||
'settings.agentsSection.description': '管理您的智能体、其自主权及其在本机上的访问权限。',
|
||
'settings.agentsSection.menuDesc': '注册表、自主权与系统访问',
|
||
'settings.cryptoSection.title': '加密货币',
|
||
'settings.cryptoSection.description': '管理你的恢复短语并查看各钱包账户的余额。',
|
||
'settings.cryptoSection.menuDesc': '恢复短语和钱包余额',
|
||
'settings.notificationsHub.title': '通知',
|
||
'settings.notificationsHub.description': '查看你的提醒收件箱,并管理通知偏好与路由。',
|
||
'settings.notificationsHub.menuDesc': '提醒收件箱与通知偏好',
|
||
'settings.notificationsHub.settingsItem': '通知设置',
|
||
'settings.notificationsHub.settingsItemDesc': '偏好与路由',
|
||
'settings.agents.editor.notFound': '未找到智能体。',
|
||
'settings.agents.editor.modelInherit': '继承(平台默认)',
|
||
'settings.agents.editor.modelHints': '路由提示',
|
||
'settings.agents.editor.modelTiers': '模型层级',
|
||
'settings.agents.editor.modelCustom': '自定义模型 ID…',
|
||
'settings.agents.editor.modelCustomPlaceholder': '例如 anthropic/claude-sonnet-4',
|
||
'settings.agents.editor.selectTools': '添加工具',
|
||
'settings.agents.editor.toolsAllSelected': '所有工具',
|
||
'settings.agents.editor.toolsNoneSelected': '未选择工具',
|
||
'settings.agents.editor.removeToolAria': '移除 {tool}',
|
||
'settings.agents.editor.toolsModalTitle': '已允许的工具',
|
||
'settings.agents.editor.toolsSelectedCount': '已选 {count} 个',
|
||
'settings.agents.editor.toolsSearchPlaceholder': '搜索工具…',
|
||
'settings.agents.editor.toolsAllowAll': '允许所有工具 (*)',
|
||
'settings.agents.editor.toolsAllowAllHint': '该智能体可以使用所有可用工具。',
|
||
'settings.agents.editor.toolsLoading': '正在加载工具…',
|
||
'settings.agents.editor.toolsLoadError': '无法加载工具',
|
||
'settings.agents.editor.toolsEmpty': '没有匹配的工具。',
|
||
'settings.agents.editor.toolsDone': 'Done',
|
||
'settings.agents.editor.builtInReadonly':
|
||
'内置智能体不可编辑。您可以在智能体列表中启用、禁用或重置它们。',
|
||
'autocomplete.debounceMs': '防抖 (毫秒)',
|
||
'autocomplete.maxChars': '最大上下文字符数',
|
||
'autocomplete.overlayTtlMs': '覆盖层超时 (ms)',
|
||
'memory.tab.council': 'Council',
|
||
'modelCouncil.title': 'Model Council',
|
||
'modelCouncil.intro':
|
||
'Ask one question, get independent answers from several models in parallel, then a chair model synthesizes where they agree, where they disagree, and what each uniquely adds.',
|
||
'modelCouncil.questionLabel': 'Question',
|
||
'modelCouncil.questionPlaceholder': 'Ask the council a question…',
|
||
'modelCouncil.membersLabel': 'Member models',
|
||
'modelCouncil.maxMembersNote': 'up to {max}',
|
||
'modelCouncil.memberPlaceholder': 'e.g. gpt-5.2',
|
||
'modelCouncil.memberAria': 'Member model {n}',
|
||
'modelCouncil.removeMemberAria': 'Remove member model {n}',
|
||
'modelCouncil.addMember': '+ Add model',
|
||
'modelCouncil.chairLabel': 'Chair model',
|
||
'modelCouncil.chairPlaceholder': 'e.g. claude-opus-4-8',
|
||
'modelCouncil.chairHelp': 'The chair reads every member answer and writes the synthesis.',
|
||
'modelCouncil.run': 'Convene council',
|
||
'modelCouncil.running': 'Convening…',
|
||
'modelCouncil.runningHint': 'Querying members in parallel, then synthesizing…',
|
||
'modelCouncil.errorPrefix': 'Council failed:',
|
||
'modelCouncil.resultsHeading': 'Council results',
|
||
'modelCouncil.memberAnswered': 'Answered',
|
||
'modelCouncil.memberFailed': 'Failed',
|
||
'modelCouncil.synthesisHeading': 'Synthesis',
|
||
'modelCouncil.synthesisBy': 'by {model}',
|
||
'graphCohesion.brokerBadge': '经纪者',
|
||
'graphCohesion.brokerTitle': '结构洞:该实体的邻居彼此之间没有连接——它是它们之间唯一的链接。',
|
||
'graphCohesion.colCohesion': '凝聚度',
|
||
'graphCohesion.colEntity': '实体',
|
||
'graphCohesion.colLinks': '链接',
|
||
'graphCohesion.colRank': '#',
|
||
'graphCohesion.empty': '暂无知识图。',
|
||
'graphCohesion.emptyHint': '随着助手记录有关你的相互关联的事实,它们的聚类结构将在此呈现。',
|
||
'graphCohesion.errorPrefix': '无法加载图:',
|
||
'graphCohesion.intro':
|
||
'每个实体周围的邻域织得有多紧。经纪者——其邻居彼此之间没有连接的实体——是把本应分离的聚类绑在一起的单点,这是频率或 PageRank 排序无法揭示的。',
|
||
'graphCohesion.loading': '正在计算凝聚度…',
|
||
'graphCohesion.metricConnections': '连接',
|
||
'graphCohesion.metricEntities': '实体',
|
||
'graphCohesion.metricTriangles': '三角形',
|
||
'graphCohesion.namespaceAll': '所有命名空间',
|
||
'graphCohesion.namespaceLabel': '命名空间',
|
||
'graphCohesion.noBrokers': '还没有连接数达到两条或以上的实体。',
|
||
'graphCohesion.rankedHeading': '经纪者——最松散的邻域',
|
||
'graphCohesion.retry': '重试',
|
||
'graphCohesion.summaryCaption': '平均聚类系数 {avg} · 传递性 {transitivity}',
|
||
'graphCohesion.title': '图的凝聚度',
|
||
'memory.tab.cohesion': 'Cohesion',
|
||
|
||
'keyring.consent.title': '安全存储不可用',
|
||
'keyring.consent.description':
|
||
'您的操作系统密钥链不可访问。OpenHuman 需要您的许可,以便使用本地加密存储来保存密钥。',
|
||
'keyring.consent.reasonPrefix': '原因:',
|
||
'keyring.consent.showDetails': '这是什么意思?',
|
||
'keyring.consent.hideDetails': '隐藏详情',
|
||
'keyring.consent.tradeoffTitle': '安全权衡',
|
||
'keyring.consent.tradeoffBody':
|
||
'使用本地加密存储时,您的密钥使用与数据一起存储的主密钥进行磁盘加密。这不如使用硬件保护的操作系统密钥链安全。备份或文件同步可能包含加密数据。',
|
||
'keyring.consent.consentButton': '使用本地加密存储',
|
||
'keyring.consent.retryButton': '重试 OS Keychain',
|
||
'keyring.consent.declineButton': '拒绝',
|
||
'keyring.consent.retrying': '正在重试…',
|
||
'keyring.consent.error': '保存偏好失败,请重试。',
|
||
'keyring.consent.retryFailed': '密钥链仍然不可用。',
|
||
'keyring.settings.title': '安全',
|
||
'keyring.settings.storageMode': '密钥存储模式',
|
||
'keyring.settings.mode.osKeychain': '操作系统密钥链',
|
||
'keyring.settings.mode.encryptedFile': '本地加密',
|
||
'keyring.settings.mode.consentPending': '未配置',
|
||
'keyring.settings.mode.declined': '已拒绝',
|
||
'keyring.settings.availability': '密钥链可用性',
|
||
'keyring.settings.available': '操作系统密钥链可用',
|
||
'keyring.settings.unavailable': '操作系统密钥链不可用',
|
||
'keyring.settings.backend': '后端',
|
||
'keyring.settings.retryButton': '重试密钥链检测',
|
||
'keyring.settings.retryFailed': '重试失败。密钥链仍然不可用。',
|
||
'keyring.settings.consentTitle': '存储同意',
|
||
'keyring.settings.consentDescription': '选择操作系统密钥链不可用时如何存储密钥。',
|
||
'keyring.settings.grantConsent': '允许本地加密存储',
|
||
'keyring.settings.revokeConsent': '拒绝本地存储',
|
||
'pages.settings.account.security': '安全',
|
||
'pages.settings.account.securityDesc': '密钥存储模式和密钥链状态',
|
||
};
|
||
|
||
export default messages;
|