@adhdev/daemon-standalone 1.0.76-rc.4 → 1.0.76-rc.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +4 -4
- package/package.json +2 -2
- package/public/assets/{DashboardMeshGraphDialog-BoHsr8ue.js → DashboardMeshGraphDialog-DX6lkI__.js} +1 -1
- package/public/assets/common-CtbYNW-n.js +1 -0
- package/public/assets/common-Diyetrxr.js +1 -0
- package/public/assets/common-PfaWB_e3.js +1 -0
- package/public/assets/common-wAqqVnE7.js +1 -0
- package/public/assets/index-BuGRmTOW.js +122 -0
- package/public/index.html +1 -1
- package/vendor/mcp-server/index.js +1 -1
- package/public/assets/common-B-bcABBd.js +0 -1
- package/public/assets/common-BRmyrjB5.js +0 -1
- package/public/assets/common-D___Aqd4.js +0 -1
- package/public/assets/common-V_b-iyjQ.js +0 -1
- package/public/assets/index-CI4uEMUa.js +0 -122
|
@@ -1 +0,0 @@
|
|
|
1
|
-
const e={runFailed:"无法运行 {{label}}",updateFailed:"无法更新 {{label}}",loadOptionsFailed:"无法加载 {{label}} 选项"},t={unknown:"未知",starting:"启动中",stopped:"已停止",failed:"失败",idle:"空闲",generating:"工作中",awaitingApproval:"待批准"},o={label:"语言",select:"选择语言"},i={copy:"复制",no:"否",yes:"是",diagnostics:"诊断",done:"完成",edit:"编辑",copied:"已复制",copyId:"复制 ID",technicalDetails:"技术详情",saved:"已保存",refresh:"刷新",moreInfo:"更多信息",closeDialog:"关闭对话框",noRecords:"没有记录。",close:"关闭",back:"返回",cancel:"取消",confirm:"确认",confirmTitle:"确定继续吗?"},n={loadingShort:"加载中…",loadingDashboard:"正在加载仪表板...",machinesConnectedCount:"已连接 {{connected}}/{{total}} 台机器",disconnected:"已断开连接",connected:"已连接",connectedToDashboard:"已连接到仪表板",networkOffline:"网络已离线",reconnecting:"正在重新连接",sessionExpired:"会话已过期。",logInAgain:"重新登录",connectionFailed:"连接失败 — 请刷新页面或稍后重试。",reconnectNow:"立即重新连接"},a={details:"详情",label:{success:"完成",warning:"注意",info:"更新"},dismiss:"关闭"},s={actionNeeded:"需要操作",taskComplete:"任务完成",markRead:"标记为已读",markUnread:"标记为未读",delete:"删除"},r={browser:{error:"因错误而停止",finished:"已完成",approvalWithMessage:"需要批准:{{message}}",approval:"需要批准",questionWithMessage:"问题:{{message}}",question:"等待你的回答"},taskCompleted:"{{label}} 代理任务已完成",taskCompletedWithDuration:"{{label}} 代理任务已完成({{duration}})",approvalNeeded:"{{label}} 需要审批",questionNeeded:"{{label}} 有问题待回答",noProgress:"{{label}} 代理没有进展",noProgressWithDuration:"{{label}} 代理没有进展({{minutes}} 分钟)",noProgressTitle:"{{label}} — 无进展",noProgressBody:"代理已超过 {{duration}} 没有进展",viewRequest:"{{requester}} 想要查看你的会话",viewRequestTitle:"查看请求",viewRequestApproved:"查看请求已批准",viewRequestDeclined:"{{target}} 拒绝了你的查看请求",someoneRequester:"一位团队成员",someoneTarget:"团队成员"},l={header:{moreActions:"更多操作",title:"仪表板",guide:"仪表板指南",guideOpen:"打开仪表板指南",guideShort:"指南",openGitStatus:"打开 git 状态",meshGraph:"Mesh 图",stopCliProcess:"停止 CLI 进程",chatHistory:"聊天记录",remoteControl:"远程控制",generating:"生成中",activityInbox:"通知"},hidden:{title:"隐藏的标签页",dragHint:"将标签页拖到此处以将其隐藏。",resetPanels:"重置面板",restoreAll:"全部恢复",hideCurrentTab:"隐藏当前标签页",empty:"没有隐藏的标签页。",resetPanelsConfirm:"将所有浮动或弹出面板移回主仪表盘网格?"},inbox:{unread:"未读",read:"已读",empty:"没有待处理的活动。"},metaChips:{queuePending:"等待 {{count}}",queueTooltip:"队列:等待 {{pending}},已分配 {{assigned}},已完成 {{completed}},失败 {{failed}}"},meshRole:{coordinator:"协调器",worker:"工作者",coordinatorFor:"{{mesh}} 的协调器",workerFor:"{{mesh}} 的工作者",coordinatorUnknownMesh:"Mesh 协调器",workerUnknownMesh:"Mesh 工作者",openMeshGraph:"打开 Mesh 图"},assistant:{label:"助手",start:"启动助手",starting:"正在启动…",startHint:"启动你的个人助手——一个管理项目和协调器的对话",startFailed:"无法启动助手:{{error}}"},assistantLaunch:{chooseCli:"选择助手的 CLI",startWith:"使用 {{cli}} 启动",noToolLock:"无工具锁定",noToolLockHint:"此 CLI 的工具仅由助手指令限制——它仍保留自身的 shell 和文件工具",unavailable:"不可用:{{reason}}",unsupported:"此 CLI 无法运行助手",model:"模型",thinking:"思考级别",defaultOption:"默认",start:"启动助手"},versionBanner:{restarting:"重启中",upgrading:"更新中…",unknownVersion:"未知",updateAvailable:"有可用更新",required:"必需",retry:"重试"},remoteDialog:{liveRemoteView:"实时远程视图",remoteUnavailable:"远程视图不可用",remoteOnly:"仅远程",splitView:"分屏视图",remoteFallback:"远程",history:"历史记录"},guide:{title:"仪表板指南",subtitle:"关于仪表板流程、浮动和弹出标签页,以及可调整的分组快捷键的快速指南。",close:"关闭仪表板指南",tabs:{overview:"概览",quickstart:"快速开始",shortcuts:"快捷键"},overview:{whatLivesWhere:{title:"各部分位置",tabsLabel:"标签页:",tabsText:"跨 IDE 和 CLI 代理的活动会话。",hiddenLabel:"隐藏标签页:",hiddenText:"存放你不想放在主栏但仍想保留的会话。",inboxLabel:"活动收件箱:",inboxText:"等待审批的会话或你尚未查看的已完成任务。",cliToggleLabel:"CLI 视图切换:",cliToggleText:"无需重新启动即可在终端和聊天渲染之间切换 PTY 会话。"},usefulFlows:{title:"实用流程",reviewLabel:"查看通知:",reviewText:"打开收件箱,跳转到会话,然后直接从活动窗格使用对话或审批控件。",clutterLabel:"减少杂乱:",clutterText:"隐藏不太重要的会话而不是关闭它们,需要时再从隐藏标签页恢复。",splitLabel:"拆分工作:",splitText:"保持一个窗格用于输入,让辅助窗格在你聚焦之前保持只读。",detachedLabel:"分离视图:",detachedText:"浮动标签页以便快速并排工作,或在需要单独显示器时将其弹出到新窗口。",dockingLabel:"停靠:",dockingText:"使用停靠将浮动标签页放回网格,或将弹出的标签页移回主仪表板。",perTabLabel:"按标签页快捷键:",perTabText:"右键单击 Dockview 标签页,为该特定会话分配直接快捷键。",approvalLabel:"审批按钮:",approvalText:"对活动会话中前三个可见的审批操作使用 {{keys}}。"}},quickstart:{desktop:{title:"桌面快速开始",step1:"先从机器或工作区流程开始。在启动 CLI 会话之前选择或保存工作区。",step2:"让主栏专注于活动工作,将多余的内容推入隐藏标签页。",step3:"对需要审批或已完成的会话使用收件箱,而不是逐个扫描每个标签页。",step4:"仅在需要并行阅读时才拆分;想要分离标签页而不打乱主布局时可将其浮动或弹出。"},mobile:{title:"移动端快速开始",step1:"查看和回复时保持在聊天模式;工作区模式主要用于启动或重新打开会话。",step2:"从机器屏幕开始,选择一个工作区,然后从那里启动 IDE 或 CLI。",step3:"将移动端视为更简单的控制界面:没有拆分工作流,标签页操作更少,会话切换更快。"}},shortcuts:{sections:{all:"全部",workspace:"工作区",panes:"窗格",approvals:"审批"},disableAll:"全部禁用",resetToDefaults:"重置为默认值",default:"默认:",listening:"正在监听...",set:"设置",disable:"禁用",off:"关闭",footer:"使用像 {{keys}} 这样的修饰键快捷键,或设置你自己的组合。在文本输入框中输入时,仪表板操作快捷键会被忽略。",resetConfirm:"将所有仪表板快捷键重置为默认值吗?",setListening:"监听中"}},shortcutDefs:{openShortcutHelp:{label:"打开快捷键",description:"显示键盘快捷键面板。"},openNewSession:{label:"新建会话",description:"打开新建会话启动器。"},hideCurrentTab:{label:"隐藏当前标签页",description:"将当前活动标签页隐藏到隐藏标签页中。"},toggleHiddenTabs:{label:"切换隐藏标签页",description:"打开或关闭隐藏标签页弹出框。"},openHistoryForActiveTab:{label:"打开历史记录",description:"打开活动会话的历史记录。"},openRemoteForActiveTab:{label:"打开远程",description:"在可用时打开活动会话的远程控制。"},floatActiveTab:{label:"浮动活动标签页",description:"将活动标签页移动到浮动面板中。"},popoutActiveTab:{label:"在新窗口中打开活动标签页",description:"将活动标签页移动到分离的弹出窗口中。"},dockActiveTab:{label:"停靠活动标签页",description:"将浮动标签页停靠回网格,或将弹出标签页移回主窗口。"},splitActiveTabRight:{label:"将活动标签页移至新的右窗格",description:"在右侧创建一个窗格并将活动标签页移入其中。"},splitActiveTabDown:{label:"将活动标签页移至新的下窗格",description:"在下方创建一个窗格并将活动标签页移入其中。"},focusLeftPane:{label:"聚焦左窗格",description:"将焦点移动到左侧窗格。"},focusRightPane:{label:"聚焦右窗格",description:"将焦点移动到右侧窗格。"},focusUpPane:{label:"聚焦上窗格",description:"将焦点移动到上方窗格。"},focusDownPane:{label:"聚焦下窗格",description:"将焦点移动到下方窗格。"},moveActiveTabToLeftPane:{label:"将活动标签页左移",description:"将活动标签页移动到左侧窗格。"},moveActiveTabToRightPane:{label:"将活动标签页右移",description:"将活动标签页移动到右侧窗格。"},moveActiveTabToUpPane:{label:"将活动标签页上移",description:"将活动标签页移动到上方窗格。"},moveActiveTabToDownPane:{label:"将活动标签页下移",description:"将活动标签页移动到下方窗格。"},triggerPrimaryApprovalAction:{label:"审批操作 1",description:"按下活动会话的第一个审批/操作按钮。"},triggerSecondaryApprovalAction:{label:"审批操作 2",description:"按下活动会话的第二个审批/操作按钮。"},triggerTertiaryApprovalAction:{label:"审批操作 3",description:"按下活动会话的第三个审批/操作按钮。"},setActiveTabShortcut:{label:"设置活动标签页快捷键",description:"开始记录活动标签页的直接快捷键。"},selectPreviousGroupTab:{label:"组内上一个标签页",description:"在活动 Dockview 组内移动到上一个标签页。"},selectNextGroupTab:{label:"组内下一个标签页",description:"在活动 Dockview 组内移动到下一个标签页。"},toggleCliView:{label:"切换 CLI 视图",description:"在聊天和终端视图之间切换活动 CLI 会话。"}}},d={stopProcess:"停止 CLI 进程",title:"停止 {{agent}}?",gracefulDescription:"在支持的情况下,“停止”会请求提供方正常退出。“强制停止”会立即结束运行时。",forceOnlyDescription:"此提供方不支持正常停止。“强制停止”会立即结束运行时。",stop:"停止",forceStop:"强制停止"},c={processing:"处理中...",actionRequired:"需要操作",alwaysAllowWarning:"永久授予此权限 — 后续运行将不再询问",questionPending:"等待回答问题",answerQuestion:"回答问题"},u={loading:"加载中…",launchModelChanged:"{{from}} → {{to}}(已更改)",launchModelSource:{user:"已选择",remembered:"已记住",mesh_slot:"网格槽位",task_override:"任务指定",provider_default:"默认"}},p={noMeshesShort:"此机器上没有 Mesh",noProvidersShort:"没有可用的代理",advancedOptions:"高级选项",agent:"代理",defaultResolvesTo:"默认将解析为 {{model}}",title:"开始会话",close:"关闭新建会话对话框",detectedLocally:"本地已检测到",availableToOpen:"可打开",machine:"机器",selectMachine:"选择机器 {{name}}",workspace:"工作区",browse:"浏览…",launchTargetType:"启动目标类型",modeWorkspace:"工作区",modeWorkspaceDesc:"普通会话",modeMesh:"Mesh",modeMeshDesc:"协调器会话",homeDirectory:"主目录",customFolder:"自定义文件夹…",launchWithoutWorkspace:"在没有工作区的情况下启动。",selectWorkspaceFolder:"请选择工作区文件夹。",selectFolder:"选择文件夹",saving:"保存中…",saveWorkspace:"保存工作区",loadingMeshes:"正在加载网格…",noMeshes:"此机器上未配置任何 Repo Mesh。请先创建或同步网格,然后重新打开此选择器。",mesh:"Mesh",repoMesh:"Repo Mesh",nodeCount_one:"{{count}} 个节点",nodeCount_other:"{{count}} 个节点",coordinatorWorkspace:"协调器工作区:{{path}}",noProviders:"所选机器上没有可用的代理。如果代理安装在默认位置之外,请在“机器 → 提供方”中设置可执行文件路径。",startupArguments:"启动参数",optionalFlags:"可选标志...",autoApproveMode:"自动审批模式",autoApproveModeDescription:"选择此会话处理审批提示的方式。",autoApproveLegacy:"自动审批",autoApproveLegacyDescription:"自动接受此会话中支持的审批提示。",autoApproveRisk:{safe:"安全",caution:"谨慎",dangerous:"危险"},dangerousModeTitle:"确认危险的自动审批模式",dangerousModeFallbackWarning:"此模式可能绕过审批或沙箱保护。请仅在可信工作区中使用。",dangerousModeRisk:"风险",dangerousModeLaunchArgs:"注入的启动参数",dangerousModeConfirm:"使用危险模式",modelAndThinking:"模型与思考(可选)",model:"模型",providerDefault:"(提供方默认)",custom:"自定义…",typeModelName:"输入模型名称",backToModelList:"← 返回模型列表",thinkingLevel:"思考级别",selectWorkspaceTitle:"选择工作区",start:"开始",starting:"启动中…",startMeshCoordinator:"启动 Mesh 协调器",startingCoordinator:"正在启动协调器…",startIde:"启动 IDE",startingIde:"正在启动 IDE…",startFresh:"全新开始",startingFresh:"正在全新开始…",resumeSavedHistory:"恢复已保存的历史",resumingSavedHistory:"正在恢复已保存的历史…",errorLoadMeshes:"无法加载 mesh",errorLoadFolder:"无法加载文件夹",errorLoadSavedSessions:"无法加载已保存的会话",errorSaveWorkspace:"无法保存工作区",workspaceSaved:"工作区已保存。机器状态刷新后即会出现在列表中。",errorManualMcpSetup:"该提供方需先完成手动 MCP 设置,才能作为 mesh 协调器运行。",errorStartMeshCoordinator:"无法启动 mesh 协调器",errorStartSession:"无法启动会话",errorResumeSession:"无法恢复会话",errorWorkspaceContextRequired:"启动前请选择一个工作区 — 目录、已保存/默认工作区,或你的主目录。",defaultWorkspace:"默认工作区"},h={undo:"撤销",hiddenToast:"已隐藏 {{title}}",moreActionsFor:"{{title}} 的更多操作",loading:"正在加载...",loadingSubtitle:"正在获取你的机器和会话。",machines:"机器",chats:"聊天",networkOffline:"网络已离线",sessionExpired:"会话已过期",reconnecting:"正在重新连接",waitingForNetwork:"正在等待网络…",pleaseLogInAgain:"请重新登录。",restoringConnection:"正在恢复服务器连接…",waitingForDaemon:"正在等待你的守护进程",connectYourMachines:"连接你的机器",waitingForDaemonSubtitle:"启动 ADHDev 守护进程以连接。",connectYourMachinesSubtitle:"在机器上安装 ADHDev 并登录。",newCount:"{{count}} 条新消息",chatCount_one:"{{count}} 个聊天",chatCount_other:"{{count}} 个聊天",idle:"空闲",unreadSuffix:" · {{count}} 条未读",noActiveChats:"没有活跃的聊天",needsAttention:"需要关注",taskComplete:"任务完成",workingNow:"正在处理",earlier:"更早",connecting:"正在连接…",connectingSubtitle:"正在等待服务器连接,然后加载会话。",noMachinesConnected:"没有已连接的机器",noMachinesSubtitle:"在“机器”标签页连接机器。",noConversations:"还没有会话",allCaughtUp:"全部已处理完毕。",hiddenTabs:"隐藏的标签页",collapsedCount_one:"{{count}} 个已折叠的会话",collapsedCount_other:"{{count}} 个已折叠的会话",generatingCount:"{{count}} 个生成中",collapsedGeneratingSuffix:" · {{count}} 个生成中",restoreAll:"全部恢复",hide:"隐藏",reconnectingItem:"正在重新连接…",connectingItem:"正在连接…",actionNeeded:"需要操作",done:"完成",openMeshGraphFor:"打开 {{title}} 的 mesh 图",openLiveMeshGraph:"打开实时 repo mesh 图",stopSessionTitle:"停止会话(终止该智能体)"},m={hint:{daemon:{followUp:"需要跟进",merged:"已合并",notMergeable:"暂不能合并——存在更改或冲突",cleanup:"已合并——可以清理工作树",needsMerge:"已推送——可以合并",blockedReview:"合并前需要审查"},anchorEmpty:"默认分支上没有工作区",anchorWorkspaces:"{{branch}} 上有 {{count}} 个工作区",anchorNeedsFollowUp:"{{branch}} 上有 {{count}} 个需要跟进",submoduleSynced:"{{path}} 已同步",submoduleChanged:"{{path}} 有本地更改",submoduleOutOfSync:"{{path}} 与父检出不同步",gitAgeUnknown:"git 状态时间未知",staleGit:"git 状态已超过 5 分钟",missingSubmodule:"未报告的子模块:{{paths}}",noGitYet:"尚未收到 git 状态",noGitYetOnline:"在线——尚未收到 git 状态",waitingForGit:"正在等待 git 状态…",nodeError:"节点报告了错误",upstreamUnverified:"上游尚未验证",noUpstream:"推送 {{branch}} 以设置上游",mergeConflicts:"请解决合并冲突",detachedHead:"HEAD 处于分离状态——请检出一个分支",notGitRepo:"不是 git 仓库",noGitStatus:"暂无 git 状态"},sessionCleanup:{stopAndDeleteHint:"停止匹配的会话,然后删除其聊天记录。",stopAndDelete:"停止并删除会话",deleteStoppedHint:"清理已完成或已停止的聊天,不停止运行中的会话。",deleteStopped:"仅删除已停止的会话",stopHint:"停止运行中的会话进程,但保留聊天记录。",stop:"仅停止运行中的会话",preserveHint:"保留已完成的聊天记录,运行中的会话保持不变。",preserve:"保留历史和运行中的会话"},nodeHealth:{failed:"失败",completed:"已完成",assigned:"已分配",pending:"待处理",enabled:"已启用",unknown:"连接中…",wrongBranch:"其他分支",degradedHint:"与此机器的连接已断开或超时——通常是暂时的。请稍候或重新连接该机器。",degraded:"无法连接",offline:"离线",dirty:"有未提交的更改",online:"在线"},activity:{noKeyEvents:"最近没有关键事件",showKey:"仅显示关键事件",showAll:"显示全部活动",nodeChanged:"机器加入或离开",worktreeCreated:"已创建工作树",nodeJoined:"节点已加入",nodeRemoved:"节点已移除",sessionStarted:"代理已启动",needsInput:"需要你的输入",taskFailed:"任务失败",taskFinished:"任务完成",taskStarted:"任务开始"},drift:{clean:"干净",conflicts:"冲突",submoduleOutOfSync_other:"{{count}} 个子模块未同步",submoduleOutOfSync_one:"{{count}} 个子模块未同步",submoduleChanged_other:"{{count}} 个子模块有更改",submoduleChanged_one:"{{count}} 个子模块有更改",changed_other:"{{count}} 处更改",changed_one:"{{count}} 处更改",upstreamUnverified:"上游未验证",noGit:"无 git 信息",probePending:"正在检查 git…"},graph:{slowLinkChip:"慢速连接",observationUnreachableChip:"无法连接",observationStaleChip:"已过时",remoteBadge:"远程",activeSessionAria:"活动会话",observationAsOf:"{{age}}前的状态",observationRefreshing:"{{age}}前的状态 · 刷新中",observationFetching:"正在获取状态…",observationUnreachable:"无法连接 · 最后状态 {{age}}前",observationUnreachableNoState:"无法连接 · 暂无状态"},statusTab:{v2ScopeHint:"按范围划分的待处理事件",providerSkewHint:"各节点上版本不同的提供方",providerSkew:"{{count}} 个提供方版本不一致",v2RatioHint:"待处理协调器事件中使用当前消息格式的比例",daemonBuildHint:"此节点上运行的守护进程确切构建(版本@提交)",quotaFailedHint:"此机器无法读取该提供方的用量",quotaOkNoWindowHint:"读取成功——此提供方没有可显示的百分比限额",nodeCountHint:"此机器上的 Mesh 节点(工作区/工作树)——共享同一套餐配额",nodeCount_other:"{{count}} 个节点",nodeCount_one:"{{count}} 个节点",daemonVersionHint:"此机器上运行的守护进程版本",blockedReasonHint:"此节点目前无法接收新的修改代码任务的原因",providerCapHint:"此节点上各提供方的进行中任务数 / 声明的上限",priorityHint:"调度偏好(越高越优先)",priority:"优先级 {{value}}",loadHint:"分配给此节点的进行中任务",load:"负载 {{count}}",readonlyCapHint:"正在进行的只读调查任务数 / 上限(写入上限的 2 倍)",readonlyCap:"只读 {{active}}/{{max}}",writeCapHint:"正在进行的修改代码任务数 / Mesh 全局并行上限",writeCap:"写入 {{active}}/{{max}}"},manualSetup:{restartHint:"编辑配置后,请启动新的 CLI 会话。",configPath:"配置路径:",format:"格式:",server:"服务器:",titleFor:"{{provider}} 需要手动设置 MCP",title:"需要手动设置 MCP"},help:{toggleAria:"Mesh 帮助",toggleTitle:"Mesh 概念帮助",regionAria:"Mesh 概念帮助",kicker:"帮助",title:"一览 mesh 概念",close:"关闭帮助",sections:{node:{term:"节点",summary:"参与 mesh 的工作区 — 一个仓库检出或一个隔离的 git worktree。",details:["基础节点与 worktree 克隆节点 — 克隆可在无冲突的情况下隔离并行工作。","同时显示健康状况(在线/离线)与 git 状态(分支 · ahead/behind · dirty)。","多个节点可以共享同一个守护进程。"]},p2p:{term:"P2P 连接",summary:"所选协调器通过 WebRTC 到达各远程节点的方式。",details:["direct — 直接的主机/STUN 路径;延迟最低。","relay — 通过 TURN 中继;可穿透受限网络,但速度较慢。","disconnected / failed — 目前协调器没有实时的 P2P 链路。","P2P 连通性以 transport 和 RTT 标签的形式显示在每张节点卡片(以及节点详情面板)上,而不是作为图的边显示。"]},session:{term:"会话",summary:"在节点上运行的智能体 CLI 会话。",details:["status = idle / generating / waiting_approval。","区分协调器会话(负责分派和收集工作)与受委派的工作者会话(负责执行工作)。"]},task:{term:"任务",summary:"由基于队列的拉取模型处理的单个工作单元。",details:["状态:pending → assigned → completed / failed / cancelled。","空闲节点会自动从队列领取任务;直接分派则针对特定会话。"]},mission:{term:"任务群",summary:"面向单一目标的多任务批次,也是该项工作的持久记录。",details:["状态:active / paused / completed / abandoned。","进度由其成员任务的状态推导得出。"]},refinery:{term:"Refinery(refine)",summary:"将 worktree 分支安全地收敛并合并到基础分支的过程。",details:["配置驱动(.adhdev/refine.*)— 由补丁等价性预检和 no-op 保护机制守护。","原则上仅 ff-only;不进行 force-push。","若某个 submodule 提交无法从 origin 到达,则必须发布 → 归类为 blocked_review。"]},completion:{term:"完成模型",summary:"受委派工作的完成会持久化到队列(pending-events)。",details:["协调器通过定期轮询或事件获知完成情况。","由于持久化到队列,完成信号绝不会丢失。"]},convergence:{term:"分支收敛状态",summary:"worktree 工作完成后,每个分支会被归类为恰好一个最终状态。",details:["merged_to_main — 已合并到基础分支。","pushed_feature_branch_needs_merge — 已推送,等待合并。","blocked_review — 因审查/可达性问题而搁置。","cleanup_candidate — 可以清理。","not_mergeable — 无法合并。"]},blueprint:{term:"蓝图",summary:"计划视图:实时队列及其任务依赖同处一块画布。",details:["只有一个轴 —— 从左到右的依赖深度。根任务按最新优先排序。","卡片自带时间,因此位置无需再表达时间。","已完成的依赖链会折叠,让实时工作保持可见。"]},routingPreview:{term:"路由预测",summary:"只读预测:假想任务会落到哪里。",details:["按难度分别显示;固定到某节点的任务有自己的固定预测(📌)。","这是预测而非实际归属 —— 已执行的卡片会在下方显示真实节点。"]},worktree:{term:"工作树节点",summary:"基于 git worktree 而非主检出的节点。",details:["以分支(⎇)标注。可让多个任务在同一台机器上运行而不共享分支。","孤立工作树仅报告为清理候选,不会被自动删除。"]}}},approvals:{title:"待审批",empty:"没有会话在等待审批决定。",sessionFallback:"会话 {{id}}",approve:"批准",reject:"拒绝",waitingFor:"已等待 {{duration}}"},difficulty:{easy:"简单",medium:"中等",difficult:"困难",freeform:"自由形式"},panel:{outOfSyncBadge:"未同步",conflictBadge:"冲突",attachedChats:"关联的聊天",providerUnknown:"提供方未知",statusCoordinator:"协调器",statusWorker:"工作者",upstreamUnverified:"未验证",needsFollowUp:"需要跟进",refined:"已精炼",tooltipLocalChanges:"本地更改",tooltipHasConflicts:"存在冲突",tooltipOutOfSync:"未同步",tooltipNeedsFollowUp:"需要跟进",tooltipUpstreamUnverified:"上游未验证",tooltipRefineCompleted:"精炼完成",tooltipRefinedBranch:"已精炼 {{branch}}",tooltipP2PRelayed:"P2P 链路通过 TURN 中继(较慢的路径)",tooltipPrefixStatus:"状态:",tooltipPrefixBranch:"分支:",tooltipPrefixNote:"备注:",defaultBranch:"默认分支",submoduleSynced:"已同步",moreChats_one:"还有 {{count}} 个会话",moreChats_other:"还有 {{count}} 个会话",remote:"远程",chats_one:"{{count}} 个会话",chats_other:"{{count}} 个会话",generatingCount:"{{count}} 个生成中",coordinatorAttached:"协调器已连接",coordinators:"{{count}} 个协调器",workers_one:"{{count}} 个工作者",workers_other:"{{count}} 个工作者",sampledStatus:"采样状态"},legendEdge:{parentBranch:"默认分支",cloneLink:"工作树克隆",worktreeLink:"同一分支",submoduleLink:"子模块",sessionLink:"会话",orphanLink:"需要跟进"},attention:{submoduleDrift:"子模块漂移",submoduleDirty:"子模块有改动",conflictsPresent:"存在冲突",dirtyWorkspace:"工作区有改动",upstreamUnverified:"上游未验证",pushBranch:"需推送分支",blockedReview:"审查阻塞",refineFailed:"refine 失败",working:"进行中",refining:"refine 中…",needsMerge:"需要合并",refineWorktree:"refine 工作树",needsFollowUp:"需要跟进",offline:"离线",ahead:"领先 {{count}}",behind:"落后 {{count}}",aheadBehind:"领先 {{ahead}} / 落后 {{behind}}"},summary:{anchor:"默认分支锚点",parent:"父级 {{label}}",localChanges:"本地改动",sessions_one:"{{count}} 个会话",sessions_other:"{{count}} 个会话",conflicts:"冲突",clean:"与上游保持同步"},taskDag:{plan:{depsFailed_one:"{{count}} 个上游失败",depsFailed_other:"{{count}} 个上游失败"},time:{now:"刚刚",minutes_one:"{{count}}分钟前",minutes_other:"{{count}}分钟前",hours_one:"{{count}}小时前",hours_other:"{{count}}小时前",days_one:"{{count}}天前",days_other:"{{count}}天前"},empty:"暂无任务",waitsOn_one:"等待 {{count}} 项",waitsOn_other:"等待 {{count}} 项",missingDeps_one:"{{count}} 个未知依赖",missingDeps_other:"{{count}} 个未知依赖",legend:{satisfied:"完成",waiting:"等待",failed:"失败"},predictedSlotPinned:"已固定到目标节点 — 该节点上的预测槽位"},obs:{fieldEdgeId:"连接 ID",fieldHealthRaw:"状态",fieldNodeId:"节点 ID",machineSection:"机器",behindCount:"落后 {{count}}",aheadCount:"领先 {{count}}",healUnavailableHint:"只有干净且仅落后于已验证上游的检出才能在此更新。",healHint:"将此检出快进到上游。它没有本地更改,因此不会丢失任何内容。",healFailed:"无法更新 {{label}}:{{reason}}",healDone:"{{label}} 已更新",directionTBShort:"↓",directionLRShort:"→",tabMap:"地图",closeDetailAria:"关闭详情面板",layoutDirectionAria:"图布局方向",viewAria:"Mesh 视图",tabOverview:"概览",tabTasks:"任务",panHint:"拖拽或滚动进行平移",headlineFollowUp_one:"{{count}} 项需要关注",headlineFollowUp_other:"{{count}} 项需要关注",headlineIncomplete:"部分机器不可见",headlineConverged:"全部已同步",badgeBlocked:"{{count}} 个被阻塞",badgeBlockedTitle:"{{count}} 个审查阻塞",badgeNotMergeable:"{{count}} 个不可合并",badgeNeedMerge_one:"{{count}} 个需要合并",badgeNeedMerge_other:"{{count}} 个需要合并",badgeCleanupTitle:"{{count}} 个 refine/清理",badgeOffline:"{{count}} 个离线",badgeIncompleteTitle:"{{count}} 个对等快照不完整",badgeNoGitTitle:"{{count}} 个无 git 快照",badgeNoSubmodTitle:"{{count}} 个缺少子模块可见性",badgeStaleTitle:"{{count}} 个对等快照过期",badgeActiveQueue:"活动队列 {{count}}",badgeNodes_one:"{{count}} 个节点",badgeNodes_other:"{{count}} 个节点",badgeAttachedChats_one:"{{count}} 个已连接会话",badgeAttachedChats_other:"{{count}} 个已连接会话",legendDirty:"{{count}} 个有改动",legendOrphan:"{{count}} 个孤立",legendRecentFailures_one:"{{count}} 个近期失败",legendRecentFailures_other:"{{count}} 个近期失败",legendAnchor:"锚点 = 默认分支",legendPeerLink:"对等链接 = 同分支工作树",legendSubmoduleLink:"子模块链接 = 子检出",healthRefineFailed:"{{count}} 个 refine 失败",convergenceMergedToMain:"已合并到 main",convergenceNeedsMerge:"需要合并",convergenceBlockedReview:"已阻塞 — 需要审查",convergenceCleanup:"可清理",convergenceNotMergeable:"无法合并",followUpLabel:"后续 — {{status}}",selectedEdge:"已选边",activeSessions:"活动会话",queueTasks:"队列任务",keyWarning:"密钥警告",noResultCode:"未返回结果代码。",legend:"图例",checking:"更新中…",heal:"更新",loadingGraph:"正在加载图谱…",emptyGraph:"此协调器暂无可用的实时网格图谱。",fieldLocality:"位置",fieldWorkspace:"工作区",fieldHead:"HEAD",fieldUpstream:"上游",fieldSource:"来源",fieldTransport:"传输",fieldMachineId:"机器 ID",fieldDaemonId:"守护进程 ID",fieldFrom:"来源",fieldTo:"目标",fieldLabel:"标签",connecting:"连接中...",providerUnknown:"提供方未知",directionLRTitle:"从左到右",directionTBTitle:"从上到下"},notes:{sectionHint:"协调器在会话之间保留的经验——提供方的怪癖、应避免的模式、恢复步骤。",expired:"已过期",neverExpires:"永不过期",durable:"长期保留",expiresIn:"{{when}} 过期",tab:"运营笔记",addTitle:"添加运营笔记",listTitle:"运营笔记",textPlaceholder:"记录提供方的怪异行为、需要避免的模式或恢复经验...",categoryLabel:"类别",categoryUncategorized:"未分类",categoryProviderQuirk:"提供方怪异行为",categoryPatternToAvoid:"需要避免的模式",categoryRecoveryLesson:"恢复经验",add:"添加",edit:"编辑",delete:"删除",save:"保存",cancel:"取消",refresh:"刷新",loading:"正在加载笔记...",empty:"尚未记录任何运营笔记。",unavailable:"运营笔记不可用 — 无法通过 P2P 连接到协调器。",loadFailed:"加载运营笔记失败。",saveFailed:"保存运营笔记失败。",deleteFailed:"删除运营笔记失败。",editFailed:"更新运营笔记失败。",showMore:"展开",showLess:"收起",pinned:"置顶"},dialog:{liveUpdatesOn:"实时更新已开启",liveUpdatesPaused:"实时更新已暂停——显示上次加载的状态",refreshedAt:"已于 {{time}} 刷新",refreshFailedQuiet:"刷新失败 · 显示上次加载的状态",refreshTitle:"刷新实时网格图谱",loadingStatus:"正在加载实时网格状态…",noGraph:"此协调器暂无可用的实时网格图谱。点击上方的 ? 了解 Repo Mesh 的作用。",errorNoMeshId:"此协调器未公开实时网格 ID。"},health:{statFailed:"失败",statPending:"等待"},blueprint:{schedPrediction:"预测",readonlyBadge:"只读",schedObservedAt:"截至 {{time}}",schedNoNodes:"没有可路由的节点。",schedQuotaButton:"配额",schedQuotaButtonTitle:"按机器一览套餐配额",schedNoWinner:"无合适槽位",schedNext:"下一个分配",schedWaiting:"待命",schedFull:"容量已满",schedFloorExcluded:"低于难度",schedQuotaGated:"配额受限",schedCapFree:"空闲",schedColSlot:"槽位",schedColScore:"分数",schedColQuota:"配额",schedColParallel:"并行",schedColStatus:"状态",schedColMachine:"机器",schedNextTitle:"现在派发该难度的任务将由此槽位接收",schedTargetWorktreeTitle:"任务将在此工作树中运行",schedUnpinnedTitle:"未固定节点时的假设性预测 — 固定到节点的任务会在卡片上显示各自的预测",schedPointInTime:"这是当前时点的预测,而非已确定的分配 — 槽位被占用或释放后,容量信息可能立即过时",schedulingShort:"调度",list:{barActive:"运行 {{count}}",barBlocked:"阻塞 {{count}}",barRecent:"最近 {{count}}",barMissions_one:"{{count}} 个任务组",barMissions_other:"{{count}} 个任务组",sectionRunning:"运行中",sectionBlocked:"已阻塞",sectionRecent:"最近",sectionHistory:"历史",generating:"生成中",approvalNeeded:"需要批准",choiceNeeded:"需要选择",planShow:"计划",planHide:"收起",planTitle:"查看此任务的依赖计划",noMission:"无任务组",loadMore_one:"再显示 {{count}} 条",loadMore_other:"再显示 {{count}} 条",emptyActive:"没有正在运行的工作",waitingOn:"等待:",waitingOnMore:"另外 {{count}} 个",blockedByDeadDependency:"被失败/已取消的依赖阻塞:",chainGroup:"依赖链:{{title}}"},graph:{viewSwitchLabel:"蓝图视图",viewList:"列表",viewGraph:"图",activeOnly:"仅进行中",activeOnlyTitle:"隐藏全部已结束的泳道",hiddenLanes_one:"已隐藏 {{count}} 条已结束泳道",hiddenLanes_other:"已隐藏 {{count}} 条已结束泳道",emptyActive:"没有正在运行的工作",showFinished:"显示已结束泳道",layoutFailed:"图布局失败:{{error}}",laneAdhoc:"独立任务",laneCollapse:"收起",laneExpand:"展开",foldCompleted:"折叠已完成",unfoldCompleted:"显示已完成",foldNode_one:"已完成 {{count}} 个",foldNode_other:"已完成 {{count}} 个",countRunning_one:"运行中 {{count}}",countRunning_other:"运行中 {{count}}",countDead_one:"卡住 {{count}}",countDead_other:"卡住 {{count}}",countWaiting_one:"等待 {{count}}",countWaiting_other:"等待 {{count}}",countFailed_one:"失败 {{count}}",countFailed_other:"失败 {{count}}",countDone_one:"完成 {{count}}",countDone_other:"完成 {{count}}",timeRunning:"已运行 {{age}}",timeFinished:"结束于 {{time}}",timeQueued:"已排队 {{age}}",tooltipTask:"任务:{{id}}",tooltipMission:"任务组:{{id}}",tooltipStatus:"状态:{{status}}",deadDirect:"某个依赖失败或已取消 — 此任务不会自行开始。",deadTransitive:"上游有任务失败或已取消 — 此任务不会自行开始。",legendDepends:"依赖",legendRunning:"运行中",legendDead:"永远无法开始",heldUntil:"至 {{time}}",tone:{pending:"等待",running:"运行中",completed:"已完成",failed:"失败",cancelled:"已取消",dead:"卡住",plan:"已计划",held:"暂缓"}}},page:{title:"Repo Mesh",subtitle:"多工作区编排",waitingForDaemon:"正在等待守护进程连接..."},list:{nodeCount_other:"{{count}} 个节点",nodeCount_one:"{{count}} 个节点",machinesOnline:"{{online}}/{{total}} 台机器在线",settings:"设置",open:"打开",title:"Repo Mesh 列表",count_one:"{{count}} 个网格",count_other:"{{count}} 个网格",createMesh:"+ 创建网格",createTitle:"创建 Repo Mesh",createOnMachine:"在机器上创建",noConnectedDaemon:"没有已连接的守护进程",workspace:"工作区",workspaceHint:"从所选守护进程注册的工作区中选择。",name:"名称",remoteUrl:"仓库远程 URL(推荐)",remoteUrlHint:"粘贴仓库 URL 后,标识(github.com/user/repo)会自动填充。",repoIdentity:"仓库标识",repoIdentityHint:"当仓库没有远程,或每台机器的 URL 不同时手动填写。例如:github.com/user/repo",advancedIdentityToggle:"高级:手动设置标识",create:"创建",creating:"创建中…",cancel:"取消",loading:"正在加载网格...",emptyTitle:"没有 Repo Mesh",emptyWithDaemons:"在多台机器上让多个编码代理处理同一个仓库。",emptyNoDaemons:"请先连接一台机器。",createFirst:"创建第一个网格",noRepoIdentity:"无仓库标识"},detail:{useFromCli:"在 CLI 中使用",distributionInOrderSummary:"按添加顺序选择第一个可用节点",distributionSmartSummary:"为每个任务选最合适的节点,并按负载分散",tabGeneral:"常规",back:"← 返回",delete:"删除",observabilityOpenTitle:"打开实时视图(概览、任务、地图)",observabilityDisabledTitle:"必须先连接主机",observabilityOpen:"打开",tabsAriaLabel:"Mesh 设置分区",tabAdvanced:"高级",quotaBusyFallback:"并发占满时的配额回退",quotaBusyFallbackHint:"当配额最优的提供方没有空闲槽位时,不再等待,而是在同一节点上尝试下一个有配额的提供方。绝不会回退到配额不足的提供方,也不会把任务转移到其他节点。",distribution:"分配",distributionSmart:"智能",distributionSmartDescription:"将每个任务分配给能力槽最匹配的节点(难度 + 能力标签),再按优先级和负载分散。即使没有槽位也会均匀分配工作。任一节点设置了槽位时推荐使用。",distributionInOrder:"按顺序",distributionInOrderDescription:"按节点添加的顺序分配 — 第一个符合条件的节点承接工作。不进行负载分散。",recommended:"推荐",saving:"正在保存…",visibilityTitle:"仪表盘可见性",visibilityLabel:"协调器生成的工作会话",visibilityHint:"隐藏 = 保持收件箱安静并静音其通知;你通过协调器会话进行交互。显示 = 将每个生成的工作会话显示为独立的对话。",visibilityHidden:"隐藏",visibilityVisible:"显示",coordinatorPromptTitle:"协调器提示词",thisMeshHint:"仅适用于 {{name}} 的协调器会话。留空以保留 daemon 默认值。",overrideLabel:"覆盖(替换默认值)",overrideHint:"设置后将替换 daemon 的默认基础提示词。留空以保留默认值。",overridePlaceholder:"(空 — 应用 daemon 默认值)",appendLabel:"追加(添加到基础提示词之后)",appendHint:"始终添加到胜出的基础提示词之后。",appendPlaceholder:"(空 — 不追加任何内容)",availablePlaceholders:"可用占位符",placeholdersIntro:"渲染覆盖/追加提示词时,以下令牌会被替换:",saveCoordinatorPrompt:"保存协调器提示词",clear:"清除",clearTitle:"清除两个字段。点击保存以提交。",safetyTitle:"安全性与 Git",safetyDescription:"协调器驱动任务的审批门控和 git 安全行为。未提交的更改遵循固定规则:有更改的基础节点不接收写入任务;有更改的工作树只接收其自身分支的后续任务;Refinery 不会合并有未提交更改的分支工作树。",policyDefaultBadge:"默认",policyResetToDefault:"恢复默认",pushApproval:"推送审批",requireApprovalBeforePush:"推送前需要审批",doNotRequireApproval:"无需审批",destructiveGitApproval:"破坏性 git 操作审批",requireApproval:"需要审批",autoPublishSubmodule:"自动发布子模块提交(高级)",requireExplicitApproval:"需要明确审批",allowRefineryPublish:"允许 Refinery 非强制发布",autoFastForward:"自动 fast-forward 空闲节点",ffEnabled:"已启用(追赶在线、干净、落后的节点)",ffDisabled:"已禁用",includeRemoteNodes:"包含远程节点",includeRemoteNodesHint:"关闭 = 仅自动 fast-forward 协调器的本地工作区。",remoteNo:"否(仅本地工作区)",remoteYes:"是(委托给远程所属 daemon)",detectionMode:"检测模式",detectionModeHint:"空闲 = 在节点的空闲边缘触发。持续 = 同时定期扫描(仅限基础节点)。",idleEdgeOnly:"仅空闲边缘",continuousScan:"持续(定期扫描)",sessionCleanupLabel:"移除节点时,其会话……",sessionCleanupHint:"将转录清理与运行时/进程清理分开。",mcpDescription:"· mesh MCP 服务器可直接从你的 CLI 智能体使用。",repoMeshJsonTitle:"来自仓库文件(只读)",repoMeshJsonHint:"此仓库提交的协调器提示词文本,会与上方字段叠加生效。请在仓库文件中修改,而不是在这里:",repoMeshJsonOverrideLabel:"仓库 override",repoMeshJsonAppendLabel:"仓库 append",repoMeshJsonInvalid:"无法解析此仓库的 .adhdev/mesh.json,因此其提示词层被忽略。"},nodeList:{advanced:"高级",launchBlockedChip:"未检测到提供方",usesTools:"使用 {{tools}}",addingIsExplicit:"是否添加仍由你决定。",compatibleWorkspace:"检测到兼容的 Git 工作区。",inspectingRepo:"正在检查 Git 仓库(只读)…",title:"节点与提供方({{count}})",descriptionCloud:"此 mesh 中的工作区及其首选 AI 工具。",descriptionStandalone:"参与此 mesh 的工作区及其首选 AI 工具。",daemonCandidates:"机器 daemon 候选",available:"{{count}} 个可用",noDaemonsAvailable:"当前没有可用的已连接机器 daemon。",allDaemonsAttached:"所有已连接的机器 daemon 均已附加。",selectedHost:"所选主机",attachMachine:"附加机器",addNode:"添加节点",attachMachineTitle:"附加机器 daemon",addNodeTitle:"添加节点",machine:"机器",selectMachine:"选择机器……",workspacePath:"工作区路径",enterCustomPath:"或输入自定义路径 →",preferredTools:"首选 AI 工具(按顺序)",preferredToolsHint:"在未指定提供方启动时使用的顺序。",add:"添加",cancel:"取消",emptyTitle:"无节点",emptyDescription:"向此 mesh 添加一个工作区。",slotsLabel:"首选 AI 工具(能力槽位)",slotsHint:"每个槽位 = 提供方 + 模型 + thinking + 它处理的任务难度/能力 + 每槽位并行上限。任务将匹配到最合适的槽位(顺序 = 优先级)。若无槽位,此节点使用其旧版提供方顺序。",nodeInstruction:"节点指令(可选)",nodeInstructionHint:"在协调器系统提示词中以 📌 节点指令显示。",nodeInstructionPlaceholder:"例如“仅在此处运行冒烟测试”“在此节点使用 opus”",saveInstruction:"保存指令",saving:"保存中……",removeNode:"移除节点",nodeId:"节点 ID:",repoRoot:"仓库根目录:",activeSessionsLabel:"活动会话:",added:"添加时间:",activeQueueAssignments:"活动队列分配",noActiveAssignment:"此节点没有活动的已分配队列任务。",activeSessions:"活动会话",launchBlocked:"此节点未检测到提供方 — 在选择或安装提供方之前,任务启动将被阻止。(仅有空的能力槽位不会阻止启动;这意味着未找到提供方。)",titleNoCount:"节点与提供方",workspacesDetected:"检测到 {{count}} 个工作区",pickFromSaved:"← 从已保存的工作区中选择",ownerMachine:"所有者:{{owner}} · 机器:{{machine}}",machineTabsLabel:"此 mesh 中的机器",machineTabCounts:"{{nodes}} 个节点 · {{slots}} 个插槽"},host:{setHostConfirmTitle:"将 {{name}} 设为主机?",setupNode:"设置节点",willHostOn:"将托管于",title:"主机",descriptionSet:"运行此 mesh 协调器的机器。设置一次后不在此处更改。",descriptionUnset:"选择将运行此 mesh 协调器的机器。",hostLabel:"主机:",hostNode:"主机节点:",unknown:"未知",hostOffline:"主机离线",hostOfflineText:"在主机重新连接之前无法加载实时状态。在此期间,你可以通过另一台已连接的机器发送命令——这不会更改主机。",reconnectToCommand:"重新连接以下达命令",reconnectToCommandHint:"在主机恢复之前,通过此已连接的 daemon 路由命令。不会更改 mesh 主机。",waitForHost:"等待主机重新连接",noDaemonsToRoute:"没有可用于路由命令的已连接 daemon。请让主机(或另一个 daemon)上线。",setHostBanner:"选择一台主机",hostDaemon:"主机守护进程",hostDaemonHint:"选择将托管此 mesh 的 daemon,然后通过“设为主机”确认。",resolvingHost:"正在解析主机……(或选择一个守护进程作为主机)",noDaemonsToHost:"没有已连接的守护进程。请让一个守护进程上线以托管此网格。",online:"在线",offline:"离线",noCommandTarget:"没有可用的命令目标——请让主机或某个守护进程上线。",setHostAction:"设为主机",settingHost:"正在设置主机…",setHostActionHint:"将此 daemon 固定为 mesh 主机。实际上是永久的 — 之后不会在此重新分配。",confirmSetsHost:"在下方确认即可将其设为 mesh 主机。",attachNodeThenSetHost:"请先将其某个工作区添加为节点,然后再将其设为主机。"},slotEditor:{emptyHint:"即使没有槽位,此节点也会按提供方顺序运行任务。添加槽位可将特定难度或能力的任务发送到特定工具。",empty:"无槽位(可选)",moveUp:"上移",moveDown:"下移",removeSlot:"移除槽",provider:"提供方",select:"(选择)",model:"模型",providerDefault:"(提供方默认)",custom:"自定义……",modelPlaceholder:"模型",backToModelList:"← 返回模型列表",thinking:"思考",thinkingDefault:"(默认)",difficulty:"难度(留空 = 全部)",capabilityTags:"能力标签(以逗号分隔)",maxParallel:"最大并行数(每个槽)",maxParallelPlaceholder:"无限制",addSlot:"添加槽",saving:"保存中……",saveSlots:"保存槽"},tagEditor:{emptyHint:"任务无需匹配任何标签即可在此运行。添加标签后,可通过任务的必需标签定位到此节点。",noSpaces:"标签不能包含空格。",reservedPrefix:"该前缀为自动派生——请选择其他标签。",alreadyAdded:"已添加。",routingTags:"路由标签",autoDerivedTitle:"自动派生——无法编辑",customTagTitle:"自定义标签",remove:"移除 {{tag}}",addPlaceholder:"添加自定义标签(例如 test-runner)",add:"添加",saving:"保存中……",saveTags:"保存标签",empty:"无标签(可选)"},queue:{title:"队列",description:"与历史上已完成、失败和已取消的任务记录分开,查看当前的队列工作。"},promptPreview:{connectPrompt:"连接一个守护进程以预览默认内容。",errorRender:"渲染默认提示词失败",hide:"隐藏默认提示词",view:"查看默认提示词",rendering:"渲染中……",retry:"重试",info:"这是 Override 为空时协调器会话所获得的内容。",launchScopeNote:"任务、近期活动和运行注记会在启动时追加,此处不显示。"},providerAutoApprove:{partialInventoryChip_other:"{{count}} 个节点待报告",partialInventoryChip_one:"{{count}} 个节点待报告",title:"提供方自动批准默认值",loading:"正在加载提供方默认值…",loadError:"无法加载提供方自动批准默认值。",noProviders:"在此 Mesh 的机器上未检测到支持自动批准模式的 CLI 提供方。",awaitingNodes:"正在等待 {{count}} 个节点报告已安装的提供方…",partialInventory:"提供方列表可能不完整——还有 {{count}} 个节点尚未报告。",noHostDaemon:"连接 Mesh 主机守护进程后即可配置提供方自动批准默认值。",repoSection:{chip:"与团队共享",title:"仓库默认值",hint:"提交到 .adhdev/mesh.json 并与整个团队共享。它只决定委派工作者请求哪种模式,并不授予运行权限。",usesProviderDefault:"使用提供方默认值",clear:"使用提供方默认值"},machineSection:{chip:"仅此机器",title:"此机器的授权",hint:"仅本地(meshes.json)——不会提交。控制此机器上的工作者是否自动批准,以及是否允许危险模式。",autoApproveToggleLabel:"委派工作器自动批准",autoApproveToggleHint:"关闭后,委派到本机的工作器会在每个批准提示处停下。",dangerousToggleLabel:"允许本机使用 dangerous 模式",dangerousToggleHint:"选择加入:本机的工作器可以以无需任何批准即可执行工具的 dangerous 模式运行。",dangerousDisabledHint:"在上方自动批准关闭期间不生效。",confirmTitle:"选择加入 dangerous 模式",confirmDescription:"这将允许本机上的委派工作器以 dangerous 提供商模式运行。在 dangerous 模式下,代理会在没有任何批准提示的情况下执行工具和命令。",confirmScopeLabel:"适用范围",confirmScopeValue:"仅本机(本地 meshes.json — 不会提交)",confirmEffectLabel:"效果",confirmEffectValue:"仓库请求的危险模式(如 Force、完全自主)在此机器上将不再降级为更安全的交互模式。",confirmConfirm:"选择加入"},effectiveSection:{statusDowngradedHint:"请求的是 {{requested}},但此机器未允许危险模式,因此以 {{mode}} 运行。",statusRequested:"运行:{{mode}}",statusInvalidFallback:"未找到请求的模式 → 运行提供方默认值:{{mode}}",statusDowngraded:"{{mode}}(已降级)",statusDisabled:"此机器已禁用自动批准——工作者会请求批准。",statusNone:"没有可用的自动批准模式——工作者会请求批准。"},dangerous:{sharedWarningDetail:"保存在 .adhdev/mesh.json 中。每台机器只有在选择加入(delegatedWorkerDangerousModeAllow)后才会运行。",sharedWarningTitle:"此设置会提交到仓库",sharedWarning:"会提交到仓库并与团队共享。未允许危险模式的机器会改用更安全的模式运行。"},saving:"保存中…",saved:"已保存到 .adhdev/mesh.json",saveError:"无法保存提供方默认值。"},status:{healthErrorChip:"错误",offlineMachinesTitle:"未报告:{{machines}}",badgeBootstrap:"准备中",badgeUpdatePending:"待更新",quotaClaudeRefreshChip:"需要刷新",quotaClaudeSetupChip:"需要设置",machineNotReportingHint:"尚未收到此机器的消息,因此其套餐配额未知。",quotaNotCollectedHint:"机器会在首次刷新(约 15 分钟)后、且仅在有代理活动时报告套餐配额。",schedulingNotReportedHint:"此机器运行的旧版本不会报告调度信息。",schedulingNotReported:"更新守护进程以查看调度",schedulingTitle:"调度",distributionTitle:"分配方式决定无指定目标的工作如何分配到各节点。各节点的负载和上限列在下方。",protocolTitle:"协议与提供程序版本",noNodesReporting:"尚无节点上报运行时。",quotaNotCollected:"暂无配额",quotaFreshnessHint:"上次更新",machineNotReporting:"离线 · 配额未知",quotaClaudeSetupHint:"运行 `adhdev quota claude:install` 设置 Claude 用量。",quotaClaudeRefreshHint:"打开一次 Claude Code 会话即可刷新用量。",quotaAccountHint:"该用量所属的登录账号(由提供程序 CLI 上报)",quotaOkNoWindows:"无限制",healthNotGitRepo:"不是 git 仓库",healthProbePending:"检查中…",healthPeerConnection:"连接 {{state}}",healthNoLiveReport:"尚无报告",badgeWorktree:"工作树",badgeWorktreeTitle:"本地 worktree 节点",badgeWorktreeBranchTitle:"worktree 分支 {{branch}}",badgeBootstrapTitle:"worktree 引导进行中",badgeConnectionTitle:"网格节点连接状态",badgeSessions_one:"{{count}} 个会话",badgeSessions_other:"{{count}} 个会话",badgeFastForwardReady:"可 fast-forward",badgeFastForwardReadyTitle:"干净且落后于上游 — fast-forward 安全",badgeStaleBuildTitle:"运行中的守护进程构建早于工作区 HEAD",badgeDeployLagTitle:"守护进程构建与 origin/main 不同 — 等待部署+重启",machinesNotReporting_one:"{{count}} 台离线",machinesNotReporting_other:"{{count}} 台离线",machinesSection:"机器 — 计划 · 节点",versionSkewTitle:"与机器共识不同的版本",machineVersionsTitle:"该机器安装的提供方 CLI 版本 — 由其所有节点共享"},overview:{tasksCount_other:"{{count}} 个任务",tasksCount_one:"{{count}} 个任务",sessionCount_other:"{{count}} 个会话",sessionCount_one:"{{count}} 个会话",providerUnknown:"提供方未知",truncated:"(已截断)",missionCard:"任务",ledgerCard:"活动",queueCard:"队列",nodesCard:"节点",sessionsCard:"活动会话",refineCard:"Refine 作业",recentActivity:"最近活动",recentTasks:"最近任务",missionTasksHeading:"任务清单",showFewer:"收起",showMore:"另有 {{count}} 项",noActiveMissions:"没有活动任务",missionDataUnavailable:"更新守护进程以查看任务",completedHistory:"已完成 / 已放弃历史",noQueueActivity:"没有队列活动。",noNodes:"此 mesh 中尚无节点。",noActiveSessions:"没有活动会话。",noRefineJobs:"没有 Refine 作业。",closeDetail:"关闭详情",loadingGoal:"加载中…",showFullGoal:"显示完整目标",statCompleted:"已完成",statAssigned:"已分配",statPending:"待处理",statFailed:"失败",statBlocked:"已阻塞",statCancelled:"已取消",statWallClock:"实际耗时",statTotalRuntime:"总运行时长",statRetries:"重试",statDispatched:"已派发",statStalled:"已停滞",statSessions:"会话",statCheckpoints:"检查点",statActive:"活动",statPaused:"已暂停",statAbandoned:"已放弃",recentFailures:"最近失败 {{count}} 次",activeCount:"活动 {{count}} 个",failedCount:"失败 {{count}} 个",detailKickerMission:"任务",detailKickerLedger:"台账条目",detailKickerQueue:"队列任务",detailKickerSession:"会话",detailLabelMissionId:"任务 ID",detailLabelCreated:"创建时间",detailLabelUpdated:"更新时间",detailLabelElapsed:"耗时",detailLabelFullInstruction:"显示完整指令",detailLabelLastActivity:"最近任务活动",detailLabelIncompleteEvidence:"未完成证据",detailLabelEntryId:"条目 ID",detailLabelWhen:"时间",detailLabelNode:"节点",detailLabelDependsOn:"依赖任务",detailLabelSession:"会话",detailLabelProvider:"提供程序",detailLabelPayload:"显示原始负载",detailLabelTaskId:"任务 ID",detailLabelFinalSummary:"最终摘要",detailLabelFullFinalSummary:"查看完整报告",detailFinalSummaryLoading:"正在加载最终摘要…",detailFinalSummaryUnavailable:"最终摘要不可用",detailLabelAutoLaunch:"自动启动",detailLabelCancelReason:"取消原因",detailLabelRequeueReason:"重新入队原因",detailLabelRequeued:"重新入队 {{count}}",detailLabelSessionId:"会话 ID",detailLabelBranch:"分支",detailLabelRole:"角色",detailLabelStarted:"已启动",detailLabelWorkspace:"工作区",routingHeading:"路由",routingDevice:"设备",routingDaemon:"守护进程",routingExecution:"执行配置",routingVia:"经由",routingDifficulty:"难度",routingFitness:"匹配度",routingReason:"原因",routingRequiredTags:"必需标签",routingTagsUnsatisfied:"未满足",routingSkipped:"跳过的候选",routingSkippedMore:"另有 {{count}} 个",pausedMissions:"已暂停的任务组",ledgerAllTime:"历史累计",sessionTasksHeading:"本会话的任务",showOnCanvas:"在画布中查看"}},g={showMoreChars:"显示更多({{count}} 个字符)",collapse:"收起",you:"你",toolMessageAria:"工具消息",activityMessageAria:"活动消息",activityFallback:"活动",copyMessage:"复制消息",copyCode:"复制代码",showMore:"展开",showLess:"收起",thought:"思考",toolExpand:"查看完整输出",toolCollapse:"收起",toolExpandLoading:"加载中…",toolExpandUnavailable:"无法获取该步骤的完整输出。",toolExpandStale:"完整输出的位置已改变 —— 读取后记录已发生变化。重新加载对话即可获取。",waitingToSend:"等待发送 —— 代理仍在处理中。",waitingToSendAria:"等待发送",notDelivered:"未送达 —— 代理从未收到这条消息。",notDeliveredAria:"未送达",sendNow:"立即发送",sending:"发送中…",sendNowAria:"不中断当前回合,立即发送到代理队列",sendNowTitle:"立即将此消息发送给代理。它会进入代理自己的队列并在下一回合处理,进行中的回合会继续运行。",cancelQueued:"取消",cancelQueuedAria:"取消此排队中的消息",cancelQueuedTitle:"将此消息从队列中移除。它不会被发送给代理。",agent:"代理",tool:"工具",ranCommand:"已运行命令",activityTerminal:"终端",activityRuntime:"运行时",system:"系统",injected:"注入的输入",relayLabel:"转发 · {{project}} · {{outcome}}",relayOutcome:{completed:"已完成",failed:"失败",cancelled:"已取消"},relayIdle:"没有进行中的工作",reviewLabel:"记忆整理",daemonNoticeLabel:"通知"},b={debugBundleFailed:"无法收集调试信息",connectingToMachine:"正在连接到你的机器",establishingP2P:"正在建立 P2P 连接",agentNotMonitored:"代理未受监控",clickToSwitchMonitoring:"点击将监控切换到此代理",agentPanelHidden:"代理面板尚未可见",openPanelHint:"在 IDE 中打开聊天",noMessagesYet:"尚无消息",loadingChat:"正在加载聊天...",openPanel:"打开 {{label}} 面板",switchingPanel:"正在切换...",openingPanel:"正在打开...",busyNoProgress:"代理没有进展。",busyGenerating:"代理正在生成回复。",busyWaitingApproval:"等待批准",activityToggleLabel:"工具步骤",activityToggleTitle:"显示工具、终端和思考步骤",reconnectMachine:"重新连接",reconnectingMachine:"正在重新连接…",reconnectMachineTitle:"该机器的自动重连已停止 — 立即重新连接"},v={addMessageOptional:"添加消息(可选)…",showControls:"显示控件",hideControls:"隐藏控件",sendTo:"向 {{panel}} 发送消息",attachImage:"附加图片",placeholder:"向 {{panel}} 发送消息...",sendMessage:"发送消息",dropImage:"将图片拖放到此处"},f={cdpDisconnectedShort:"IDE 未连接",hideFromDashboard:"从仪表板隐藏",removeShortcut:"移除快捷键",changeShortcut:"更改快捷键({{shortcut}})",dropSplitRight:"向右拆分",dropMoveHere:"移到这里",dropSplitLeft:"向左拆分",relaunchWithCdp:"重新启动并连接",cdpDisconnected:"未连接到 IDE——聊天记录和截图不可用。",resizeHandleHint:"拖动以调整大小 · 双击以合并",shortcutListening:"等待输入…",shortcutPressCombo:"按下组合键(例如 {{example1}}、{{example2}})",shortcutSetTitle:"设置快捷键",loadingSessions:"正在加载会话...",noConversations:"尚无对话",waitingForDaemon:"正在等待你的守护进程",connectYourMachines:"连接你的机器",daemonDescription:"启动 ADHDev 守护进程以连接。",installDescription:"在机器上安装 ADHDev 并登录。",newSession:"新建会话",newSessionDescription:"使用任一已安装的代理开始会话。",noTabsInGroup:"此分组中没有标签页",pressEscToCancel:"按 Esc 取消",noActiveAgent:"没有活动的智能体",moveTabHere:"将标签页移到此处查看"},C={growViewport:"放大终端视图",shrinkViewport:"缩小终端视图",sendInterrupt:"发送中断(Ctrl-C)",arrowRight:"右箭头",arrowDown:"下箭头",arrowLeft:"左箭头",arrowUp:"上箭头",keysPanelTitle:"终端按键",keysButton:"按键",copyHint:"复制所选的终端文本;未选择时复制当前可见屏幕",specDebugHint:"Spec 调试——查看当前状态、分区和转换历史",replayScrollbackHint:"加载更早的终端输出,以便向上滚动更多",loadOlderOutput:"加载更早的终端输出",loadingOlder:"正在加载更早的内容...",debug:"调试",copy:"复制",openControlKeys:"打开终端控制键",closeControlKeys:"关闭终端控制键"},w={muteThis:"静音此聊天",unmuteThis:"取消静音此聊天"},D={switchToTerminal:"切换到终端视图",switchToChat:"切换到聊天视图"},y={updatedAt:"更新于 {{time}}",messageCountShort_other:"{{count}} 条消息",messageCountShort_one:"{{count}} 条消息",workspaceUnknown:"工作区未知",clearSelection:"清除",selectedSavedHistory:"已选的保存记录",loadingShort:"加载中…",savedHistoryNoneYet:"没有保存的记录",savedHistoryLoadedCount_other:"已加载 {{count}} 条已保存的记录。打开已保存的记录进行选择。",savedHistoryLoadedCount_one:"已加载 {{count}} 条已保存的记录。打开已保存的记录进行选择。",savedHistoryBadge:"已保存的记录",resumeSavedHistory:"恢复已保存的历史记录",startFresh:"全新开始",resumingSavedHistory:"正在恢复已保存的历史记录…",startingFresh:"正在全新开始…",startIde:"启动 IDE",startingIde:"正在启动 IDE…",recoverHostedRuntime:"恢复托管运行时",hostedRuntimeRecoveryDescription:"用于中断后托管运行时的后备恢复。如需正常延续,请改为打开已保存的历史记录。",openSavedHistory:"打开已保存的历史记录",savedHistoryTitle:"已保存的历史记录",savedHistoryHelper:"当你想在同一个提供商的对话中保持延续时,请使用已保存的历史记录。",savedHistoryEmpty:"尚未找到已保存的历史记录。",refreshSavedHistory:"刷新已保存的历史记录",refreshingSavedHistory:"正在刷新已保存的历史记录…",startFreshWith:"使用 {{label}} 全新开始?",restart:"重启 {{label}}?",startFreshReview:"全新开始前,请检查提供商和目标文件夹。",restartIdeReview:"重启此 IDE 前,请检查或更改目标工作区。",restartStoppedReview:"重启此已停止的会话前,请检查或更改目标工作区。",confirmStartFresh:"全新开始",confirmRestart:"重启",confirmStartingFresh:"正在全新开始…",confirmRestarting:"正在重启…",resumeWith:"使用 {{label}} 恢复已保存的历史记录?",resumeReview:"恢复已保存的历史记录前,请检查或更改目标工作区。"},T={layout:{expandSidebar:"展开侧边栏",collapseSidebar:"折叠侧边栏",collapse:"折叠"},auth:{loading:"正在加载独立仪表板…",loadError:"加载独立认证状态失败:{{error}}",signInTitle:"独立登录",passwordProtected:"此自托管仪表板受本地密码保护。",tokenProtected:"此独立服务器受令牌保护。请使用带令牌的 URL 打开,或从已认证的会话中设置密码。",passwordPlaceholder:"输入独立密码",unlock:"解锁仪表板",signingIn:"正在登录…",noPasswordEnabled:"此服务器未启用密码登录。"},machine:{loading:"正在加载机器...",awaitingInput:"正在等待你的输入 ↑"},settings:{restartToApply:"重启后生效",providersLink:"提供方",providersIntro:"此机器上的 IDE 和代理:",title:"设置",subtitle:"本地守护进程配置、外观和设备端偏好设置",publicHostWarning:"此独立服务器当前在未认证的情况下绑定到 0.0.0.0。在你设置密码或令牌之前,LAN 上的任何人都可以打开仪表板。",daemonSection:"守护进程",versionLabel:"版本",statusLabel:"状态",statusRunning:"● 运行中",statusNotConnected:"○ 未连接",authLabel:"认证",authPassword:"已启用密码",authToken:"已启用令牌",authNone:"未配置认证",networkSection:"网络访问",networkHint:"如果此仪表板应保留在当前机器上,请使用仅 localhost。如果你通常从手机、平板电脑或 LAN 上的其他设备访问它,请使用所有接口。如果你更广泛地公开该机器,请设置密码或令牌。",localhostLabel:"仅 localhost",localhostHint:"绑定到 127.0.0.1。最适合仅此机器打开仪表板的情况。",allInterfacesLabel:"所有接口",allInterfacesHint:"绑定到 0.0.0.0。适用于 LAN 访问、反向代理或其他外部入口点。",saveNetworkMode:"保存默认网络模式",saving:"正在保存…",networkRestartHint:"在下次独立重启时生效。当前运行仍绑定到 {{host}}。",networkSavedAll:"默认独立网络模式已设置为所有接口 (0.0.0.0)。重启独立模式以应用。",networkSavedLocal:"默认独立网络模式已设置为仅 localhost。重启独立模式以应用。",securitySection:"仪表板安全",passwordSet:"当前浏览器访问需要本地密码。更改时会轮换现有会话。",passwordNotSet:"尚未设置独立密码。如果你通常使用 --host 运行,强烈建议设置一个。",currentPasswordPlaceholder:"当前密码",currentPasswordFirstTimePlaceholder:"当前密码(首次设置无需填写)",newPasswordPlaceholder:"新密码",newPasswordFirstTimePlaceholder:"新的独立密码",confirmPasswordPlaceholder:"确认新密码",updatePassword:"更新密码",enablePassword:"启用密码",disablePassword:"禁用密码",passwordUpdated:"独立密码已更新。",passwordEnabled:"独立密码已启用。",passwordDisabled:"独立密码已禁用。",passwordTooShort:"密码至少需要 4 个字符。",passwordMismatch:"新密码与确认密码不匹配。",appearanceSection:"外观",fontsLabel:"字体",fontsDescription:"针对聊天文本、markdown 代码和终端输出的独立专用排版覆盖。",fontsSaved:"已为此自托管仪表板保存独立聊天字体。",profileSection:"个人资料",displayNameLabel:"显示名称",displayNameHint:"在聊天会话和团队仪表板上显示的你的名字。",displayNamePlaceholder:"匿名"},onboarding:{title:"欢迎使用 ADHDev",skip:"跳过",installing:"正在安装…",done:"完成",installCount:"安装 {{count}} 个",selectedCount_one:"已选 {{count}} 个",selectedCount_other:"已选 {{count}} 个",intro:"选择你想使用的提供方。默认选中三个官方支持的 CLI 提供方;你可以从下方的选项卡安装 IDE 或扩展提供方,也可以稍后通过 Machines → Providers 安装。",loadingRegistry:"正在加载注册表…",loadError:"加载注册表失败:{{error}}",noProviders:"此类别下没有提供方。",installed:"✓ 已安装",installFailed:"✗ {{error}}"},about:{title:"关于",subtitle:"自托管 ADHDev 概览、内置功能,以及切换到 Cloud 后的变化",selfHostedEdition:"自托管版",headline:"保持相同的仪表盘体验,同时让运行时完全运行在本地设备上。",description:"Standalone 将浏览器、守护进程、截图和控制路径都保留在你自己的机器上。除多机连接和移动端通知外,它与 Cloud 是相同的核心产品体验。",docs:"Docs ↗",github:"GitHub ↗",tryCloud:"试用 Cloud ↗",includedSection:"Standalone 包含的功能",includedDescription:"无需云控制平面即可使用的本地优先功能集。",inventorySection:"内置清单",inventoryDescription:"在 Standalone 仪表盘中公开的捆绑编辑器和智能体功能。这些列表仅描述清单,不代表已验证的支持。",cloudExtrasSection:"仅 Cloud 提供的功能",cloudExtrasDescription:"需要托管控制平面或团队基础设施的功能。",comparisonSection:"自托管 vs Cloud",comparisonDescription:"一览产品差异。",featureHeader:"功能",selfhostHeader:"自托管",cloudHeader:"Cloud",cloudOptional:"Cloud 是可选的,并非必需",cloudOptionalDescription:"你可以在 Standalone 中保持完全本地运行,并在以后迁移到 Cloud,而无需改变使用仪表盘的方式。",compareCloud:"对比 Cloud ↗",discord:"Discord ↗",features:{localFirst:{title:"本地优先运行时",desc:"一切都保留在你的机器上,浏览器仅通过 localhost 连接。"},chatRelay:{title:"代理聊天中继",desc:"实时读取并回复已连接 IDE 中的 AI 对话。"},screenshots:{title:"实时截图",desc:"通过本地截图流在浏览器中直接查看 IDE。"},remoteControl:{title:"远程控制",desc:"无需切换窗口即可点击、输入并操控 IDE 会话。"},multiIde:{title:"多 IDE 支持",desc:"在一处监控 VS Code、Cursor、Windsurf 及扩展型代理。"},cli:{title:"CLI 覆盖",desc:"与 IDE 会话一起跟踪独立 CLI 代理。"}},extras:{anywhere:{title:"随处访问",desc:"无需开放本地端口,即可从其他电脑或手机访问你的机器。"},p2pStream:{title:"低延迟 P2P 流",desc:"Cloud 增加 WebRTC 通道,让截图与远程控制更快。"},mobileNotifications:{title:"移动通知",desc:"离开工位也能收到审批请求和活动更新。"},restApi:{title:"REST API 访问",desc:"通过 API 密钥与服务路由集成 Slack、CI 或内部工具。"},teamWorkspace:{title:"团队工作区",desc:"在团队工作区共享机器、活动视图与策略。"},enterpriseControls:{title:"企业级控制",desc:"SSO、RBAC、审计日志等面向生产团队的管理功能。"}},comparison:{chatRelay:"代理聊天中继",screenshots:"实时 IDE 截图",remoteControl:"远程 IDE 控制",multiIde:"多 IDE 监控",extensionCli:"扩展与 CLI 代理",anyNetwork:"任意网络访问",webrtc:"WebRTC P2P 流",mobilePush:"移动推送通知",restApi:"REST API 与 Webhook",teamCollaboration:"团队协作",multiMachineDashboards:"多机器仪表板",ssoRbacAuditLogs:"SSO、RBAC、审计日志"}},fonts:{fontOverridesNotice:"仅 Standalone 的字体覆盖设置。这些设置不会影响云端仪表盘。聊天气泡、Markdown 正文、代码块、工具行和终端输出都使用以下偏好设置。",chat:"聊天文本",chatDescription:"助手/用户正文、Markdown 文本、思考卡片和系统备注。",code:"代码块",codeDescription:"Markdown 代码围栏、行内代码和预格式化的命令输出。",terminal:"终端",terminalDescription:"终端记录卡片,以及聊天模式下的工具/命令行。",livePreview:"实时预览",resolvedStack:"解析后的字体栈:",saveFontSettings:"保存字体设置",revertToSaved:"还原为已保存",resetToDefaults:"重置为默认值",saving:"正在保存…",customFamilyPlaceholder:'例如 "Pretendard"、"Noto Sans KR"、sans-serif',previewSummary:"聊天:{{chat}} · 代码:{{code}} · 终端:{{terminal}}",defaultsSummary:"默认值:{{chat}} / {{code}}",previewNow:"刚刚",previewProse:"易读的正文、<strong>粗体文本</strong>和<code>行内代码</code>都会遵循你的 standalone 字体设置。",presets:{default:"默认",defaultMono:"默认等宽",custom:"自定义…",serif:"衬线"}}},k={login:{eyebrow:"Cloud 登录",title:"登录 ADHDev",subtitle:"连接你的机器,接收审批和完成通知,让你离开办公桌时编码智能体也能持续运行。",continueWith:"使用 {{provider}} 继续",connecting:"正在连接...",devDivider:"dev",devLogin:"Dev 登录 (test_jwt_token)",providerNote:"GitHub 和 Google 仅用于身份验证。",errorUnverifiedEmail:"此登录提供方未返回已验证的电子邮件,因此我们无法安全地为你登录。",termsPrefix:"继续即表示你同意我们的",termsLink:"服务条款",termsAnd:"和",privacyLink:"隐私政策",termsSuffix:"。"},account:{openMachines:"打开“机器”",machinesSummaryShort:"{{count}}/{{limit}}",title:"账户",subtitle:"个人资料、套餐和活动",tabAccount:"账户",tabBilling:"账单",tabActivity:"活动",profile:"个人资料",noName:"无名称",displayName:"显示名称",displayNameDesc:"显示在仪表盘和团队工作区中的名称。",nicknamePlaceholder:"昵称",save:"保存",saving:"...",cancel:"取消",saved:"已保存",edit:"编辑",failedToSave:"保存失败",userId:"用户 ID",loadingProfile:"正在加载个人资料...",planLimits:"套餐限制",limitMachines:"机器",limitP2P:"已连接的机器",limitPushNotifications:"每日推送通知",limitTurnRelay:"中继回退",enabled:"已启用",disabled:"已禁用",frozen:"已冻结",session:"会话",logout:"退出登录",logoutDesc:"在此设备上退出你的 ADHDev 账户。",dangerZone:"危险区域",dangerZoneDesc:"永久删除你的账户及所有关联数据。此操作无法撤销。",deleteAccount:"删除账户",deleteWillRemove:"这将永久删除:",deleteItemProfile:"你的个人资料和登录凭据",deleteItemKeys:"所有 API 密钥和连接令牌",deleteItemWebhooks:"Webhook 和投递历史",deleteItemPush:"推送通知订阅",deleteItemSessions:"共享会话和审计日志",deleteTypeConfirm:"输入 {{keyword}} 以确认:",deleting:"正在删除...",permanentlyDelete:"永久删除",failedToDeleteAccount:"删除账户失败",registeredMachines:"已注册的机器",machinesSummary:"{{count}} 台已注册 · {{online}} 台在线",machinesLimit:"(上限:{{limit}})",loadingMachines:"正在加载机器...",noMachinesRegistered:"尚未注册任何机器",runSetupPrefix:"运行 ",runSetupMiddle:",然后在机器上启动 ",runSetupSuffix:" 以在此注册。",removeMachineConfirm:"移除这台机器吗?需要再次运行 `adhdev setup` 才能重新连接。",failedToDeleteMachine:"删除机器失败",failedToUpdate:"更新失败",rename:"重命名",online:"在线",connecting:"正在连接",removeMachine:"移除机器",never:"从不",frozenFeatureTitle:"已冻结 — 此功能已暂停,暂不可用。"},billing:{currentPlan:"当前套餐:",statusTrial:"试用",statusActive:"有效",statusPastDue:"已逾期",statusCanceled:"已取消",nextBilling:"下次扣费:{{date}}",trialEnds:"试用结束:{{date}}",accessUntil:"可用至:{{date}}",updatePayment:"请更新你的付款方式",managePayment:"管理付款与发票",couldNotOpenPortal:"无法打开账单门户",checkoutSuccess:"订阅已生效,感谢你的升级!",statMachines:"机器",statSharedSessions:"共享会话",statTurnRelay:"TURN 中继",statTurnOn:"已启用",resetsDailyUtc:"每天 UTC 00:00 重置",resetsInHours_one:"约 {{count}} 小时后",resetsInHours_other:"约 {{count}} 小时后",resetsInMinutes_one:"约 {{count}} 分钟后",resetsInMinutes_other:"约 {{count}} 分钟后",resetsDailyUtcWithLeft:"每天 UTC 00:00 重置 · {{left}}",monthly:"按月",yearly:"按年",savePercent:"年付最多节省 {{pct}}%",pricesInUsd:"所有价格均以美元(USD)计",paddleLoading:"Paddle 正在加载,请重试。",cancelConfirm:"确定要取消订阅吗?在当前计费周期结束前,你仍可继续使用。",cancelSubscription:"取消订阅",cancelRetainAccess:"在当前计费周期结束前,你仍可使用 {{plan}} 的功能。",cancelTeamDowngrade:" 所有团队成员将被降级到各自的个人套餐。",cancelFailed:"取消订阅失败"},about:{title:"关于",subtitle:"云端概览、支持的界面以及各套餐级别的功能",cloudEdition:"云端版",heroTitle:"随时随地控制本地 CLI 代理 — 网页或移动端。",heroDesc:"ADHDev Cloud 在你的浏览器中呈现运行于各台机器上的代理:发送提示、批准操作、跨机器编排工作,并在手机上接收通知 — 代码通过 P2P 直接流向你的守护进程,绝不经过服务器。",openDashboard:"打开仪表盘",viewMachines:"查看机器",docs:"文档 ↗",whyTitle:"为何选择 ADHDev Cloud",whyDesc:"当你的机器通过云端控制平面连接后可用的核心功能。",howTitle:"工作原理",howDesc:"从安装到远程控制的云端上手流程。",repoMeshTitle:"Repo Mesh",repoMeshDesc:"跨机器编排代理 — 仅限云端。",meshCard1Title:"一个协调器,多个代理",meshCard1Desc:"针对某个任务将工作项加入队列,让空闲节点从本地优先的拉取式队列中领取工作。跨机器和提供商分发 — 一台运行 Claude Code,另一台运行 Codex — 然后从单个协调器会话中汇总结果。",meshCard2Title:"同一仓库,多台机器同时运行",meshCard2Desc:"每个节点都是一个检出或隔离的 git worktree,因此并行代理绝不会冲突。Refinery 会收敛每个分支 — 验证、合并、推送、清理 — 并安全处理子模块。它通过守护进程之间的直连 P2P 通道运行;服务器仅负责为同一账户的对等端进行信令和授权。",worksWith:"兼容",worksWithDesc:"支持的 CLI 代理、IDE 和 AI 扩展。",groupCli:"CLI 代理",groupIdes:"IDE",groupExtensions:"AI 代理",pricingTitle:"定价",pricingDesc:"当前的云端套餐以及各级别的机器容量。",planPopular:"热门",readyTitle:"准备连接一台机器",readyDesc:"进入你的仪表盘,查看已连接的机器,或在仍处于配置阶段时继续查看文档。",dashboard:"仪表盘",machines:"机器",discord:"Discord ↗",github:"GitHub ↗",features:{webControlTitle:"在网页中控制本地 CLI 代理",webControlDesc:"从浏览器操控任意本地 CLI 代理 — Claude Code、Codex、Cursor CLI:发送提示、批准操作并引导会话,无需触碰终端。",chatRelayTitle:"代理聊天转发",chatRelayDesc:"随时随地阅读并回复代理对话,包括在移动端界面。",liveViewTitle:"实时会话视图",liveViewDesc:"实时观察代理活动;对于 IDE 会话,可通过 P2P 查看并控制屏幕,无需切换窗口。",mobileTitle:"移动端就绪",mobileDesc:"在离开开发机器时也能接收批准并查看进度。",secureTitle:"默认安全",secureDesc:"聊天、命令和截图通过 WebRTC 在你的浏览器与守护进程之间直接传输 — 云端仅处理认证和信令元数据。你的代码绝不经过服务器。"},steps:{step1Title:"一行安装",step1Desc:"在任何你想操控的机器上运行单条命令。它会安装 ADHDev 守护进程以及 adhdev CLI。",step2Title:"登录",step2Desc:"使用 GitHub 或 Google 登录,守护进程即会自动与你的账户配对 — 无需复制任何令牌。",step3Title:"随时随地操控你的代理",step3Desc:"机器会立即出现在你的仪表盘中。从网页启动并控制 Claude Code、Codex、Cursor CLI 及其他 CLI 代理 — IDE 会话同样如此。"},plans:{freeName:"Free",proName:"Pro",ultraName:"Ultra",freePer:"/月",proPer:"/月",ultraPer:"/月",freeFeature1:"1 台机器",freeFeature2:"实时聊天转发",freeFeature3:"本地代理的网页控制",proFeature1:"2 台机器",proFeature2:"无限 AI 代理",proFeature3:"P2P 远程查看",ultraFeature1:"5 台机器 — 统一定价,非按席位",ultraFeature2:"包含 Pro 的全部功能",ultraFeature3:"更高的并发和用量上限",ultraFeature4:"每日截图时长无限制"}},layout:{adminSection:"Admin",adminOverview:"Overview",adminUsers:"Users",adminAuditLogs:"Audit Logs",adminSystem:"System",adminTokens:"管理员令牌",adminEntry:"Admin",footerPlanTitle:"当前套餐:{{plan}} — 管理或升级",expandSidebar:"展开侧边栏",collapseSidebar:"收起侧边栏",collapse:"收起",logout:"退出登录",machineLimitBadge:"机器已满",machineLimitBadgeTitle:"已达到套餐 {{count}} 台机器{{plural}}的上限 — 打开账单页面升级",pushBudget:"每日通知 {{used}}/{{limit}}"},settings:{title:"设置",subtitle:"外观与偏好",appearanceTitle:"外观"},planCard:{unlimited:"无限制",machineSingular:"{{count}} 台机器",machinePlural:"{{count}} 台机器",sharedSessionSingular:"{{count}} 个共享会话",sharedSessionPlural:"{{count}} 个共享会话",teamMemberSingular:"{{count}} 名团队成员",teamMemberPlural:"{{count}} 名团队成员",turnIncluded:"包含 TURN 中继",recommended:"推荐",currentPlan:"当前套餐",contactUs:"联系我们",freeForever:"永久免费",startTrial:"开始 7 天免费试用",upgradeTo:"升级到 {{name}}",noChargeCancel:"7 天内免费。可随时取消。",periodSeatMo:"席位/月",periodMo:"月",yearlyNote:"${{yearly}}/年 — 节省 ${{saved}}",pricingCustom:"定制"},activity:{origin:{ide:"IDE",extension:"扩展",admin:"管理员",webhook:"Webhook",web:"仪表板",user:"用户",terminal:"终端",system:"系统",registry:"注册表",mesh:"Mesh",machine:"机器",daemon:"守护进程",connection:"连接",cli:"CLI",auth:"登录",api_key:"API 密钥",api:"API",agent:"代理"},filterPlaceholder:"按操作、资源或来源筛选...",refresh:"刷新",loading:"加载中...",noLogs:"无日志",noMatchingLogs:"未找到匹配的日志。",logsWillAppear:"操作发生时将显示在此处。",colAction:"操作",colResource:"资源",colSource:"来源",colTime:"时间",logCount:"{{count}} 条日志",logCountFiltered:"(从 {{total}} 条中筛选)",action:{login:"登录",logout:"登出",api_key_create:"创建 API 密钥",api_key_revoke:"吊销 API 密钥",agent_command:"发送代理命令",terminal_exec:"执行终端命令",ide_command:"发送 IDE 命令",daemon_command:"发送守护进程命令",daemon_disconnect:"断开守护进程连接",daemon_revoke:"吊销守护进程",webhook_create:"创建 Webhook",webhook_delete:"删除 Webhook",webhook_toggle:"切换 Webhook",registry_publish:"发布提供方",registry_promote:"推广提供方",registry_yank:"撤回提供方",registry_publish_token_issued:"签发注册表发布令牌",machine_registered:"注册机器",machine_secret_rotated:"轮换机器密钥",shortcut_launch:"启动会话",shortcut_stop:"停止会话",shortcut_chat:"发送聊天消息",shortcut_chat_debug_bundle:"导出聊天调试包",shortcut_approve:"批准代理操作",shortcut_reject:"拒绝代理操作",shortcut_git_push:"推送 git 更改",shortcut_git_checkpoint:"创建 git 检查点",shortcut_mesh_clone_node:"克隆网格节点",shortcut_mesh_remove_node:"移除网格节点",shortcut_mesh_refine_node:"优化网格节点",admin_plan_change:"更改用户套餐",admin_role_change:"更改用户角色",admin_user_suspend:"暂停用户",admin_user_unsuspend:"取消暂停用户",admin_machine_delete:"删除机器",admin_token_create:"创建管理员令牌",admin_apikey_rate_limit:"更改 API 密钥速率限制",admin_apikey_scopes:"更改 API 密钥权限范围",admin_apikey_revoke:"吊销 API 密钥",admin_plan_limits_update:"更新套餐限制",admin_plan_limits_reset:"重置套餐限制",admin_config_update:"更新系统配置",admin_announcement:"发布系统公告",admin_disconnect:"断开连接"}},webhooks:{title:"Webhooks",subtitle:"实时事件通知",addWebhook:"+ 添加 Webhook",eventDaemonConnect:"守护进程已连接",eventDaemonDisconnect:"守护进程已断开",eventAgentStatus:"代理状态变化",eventApprovalRequired:"需要审批",failed:"失败",deleteConfirm:"删除此 Webhook?",testFailed:"测试失败",secretTitle:"Webhook 密钥",secretShownOncePrefix:"仅显示",secretShownOnce:"一次",secretShownOnceSuffix:"。用于验证 ",copy:"复制",done:"完成",newWebhook:"新建 Webhook",labelUrl:"URL",urlPlaceholder:"https://your-service.com/webhook",labelEvents:"事件",allEvents:"所有事件 (*)",creating:"创建中...",create:"创建",cancel:"取消",loading:"加载中...",noWebhooks:"无 Webhook",noWebhooksDesc:"接收有关事件的实时通知。",setupFirst:"设置第一个 Webhook",off:"关闭",autoDisabled:"已自动禁用",autoDisabledTitle:"连续失败 10 次后自动禁用",failuresWarning:"{{count}} 次失败",failuresTitle:"连续失败 {{count}} 次 — 达到 10 次将自动禁用",all:"全部",history:"历史",test:"测试",delete:"删除",deleting:"...",recentDeliveries:"最近投递",refresh:"刷新",noDeliveries:"还没有投递记录。发送一次测试以验证。",request:"请求",response:"响应",securityTitle:"安全",securityVerifyPrefix:"验证 ",securityVerifySuffix:" 使用您的密钥",securityHttps:"仅使用 HTTPS 端点",securityAsync:"立即返回 2xx,异步处理",securityAutoDisable:"连续失败 10 次后自动禁用"},apiKeys:{title:"API 密钥",keyCount:"{{count}} 个密钥",playground:"调试台",create:"+ 创建",scopeDaemonRead:"守护进程读取",scopeDaemonReadDesc:"列出守护进程及状态",scopeDaemonControl:"守护进程控制",scopeDaemonControlDesc:"命令、启动/停止、断开连接",scopeAgentRead:"代理读取",scopeAgentReadDesc:"状态与聊天历史",scopeAgentControl:"代理控制",scopeAgentControlDesc:"发送、批准/拒绝",scopeTerminal:"终端",scopeTerminalDesc:"执行命令",scopeWebhooks:"Webhook",scopeWebhooksDesc:"管理钩子与投递",frozen:"已冻结",revokeConfirm:"吊销此 API 密钥?此操作无法撤销。",failedToLoad:"加载失败",failed:"失败",upgradePlan:"升级你的套餐 →",keyCreated:"密钥已创建!",copyNow:"立即复制 — 仅显示一次。",copied:"已复制",copy:"复制",testKey:"测试",dismiss:"关闭",playgroundTitle:"API 演练场",enterKeyToTest:"请输入要测试的 API 密钥。",open:"打开",createKeyTitle:"创建 API 密钥",labelName:"名称",namePlaceholder:"例如 Production Bot",permissions:"权限 ({{count}})",createBtn:"创建",cancel:"取消",loading:"加载中...",noKeys:"暂无 API 密钥",noKeysDesc:"创建密钥以集成外部服务。",createFirstKey:"创建首个密钥",usedDate:"使用于 {{date}}",neverUsed:"从未使用",revoke:"吊销",usageLabel:"用量:",apiReference:"API 参考 →",frozenFeatureTitle:"已冻结 — 此功能已暂停。"},shareModal:{title:"分享会话",chatView:{label:"仅查看",desc:"实时阅读 AI 对话"},chatControl:{label:"控制",desc:"阅读 + 发送消息 + 批准/拒绝操作"},remoteView:{label:"仅查看",desc:"实时观看截图和聊天"},remoteControl:{label:"控制",desc:"截图 + 发送消息 + 批准/拒绝"},remoteFull:{label:"完全访问",desc:"包括桌面输入的完全远程控制"}},onboarding:{title:"连接你的第一台机器",subtitle:"在一台机器上安装 ADHDev 并登录 — 它会自动配对并显示在这里。然后即可从此仪表盘操控其上的每个智能体。",platformMac:"macOS / Linux",platformWindows:"Windows",copyTitle:"点击复制",copiedLabel:"✓ 已复制",copyLabel:"复制",listeningLabel:"正在等待你的守护进程 — 请保持此页面打开,它会自动出现。",connectingLabel:"正在连接 ADHDev…",step1Title:"安装守护进程",step1Desc:"在你想操控的任意机器上运行上面的命令。它会安装守护进程以及 adhdev CLI。",step2Title:"登录 — 机器自动配对",step2Desc:"守护进程会自动关联到此账户。无需复制令牌;连接的瞬间它便会显示在这里。",step3Title:"启动你的第一个会话",step3Desc:"机器上线后,即可从仪表盘直接启动 Claude Code、Codex、Cursor 及其他智能体。",readDocs:"阅读文档 →",reconnectingLabel:"连接已断开 — 正在重新连接… 如果持续出现,请检查你的网络。",offlineLabel:"你已离线。重新连接到互联网后,此页面将自动恢复。",authFailedLabel:"会话已过期 — 请重新登录以继续。",machineLimitLabel:"已达到机器上限 — 你的套餐最多允许 {{limit}} 台。移除一台机器或升级套餐以连接这台机器。",machineLimitManage:"管理机器 →",machineLimitUpgrade:"升级套餐 →",setupWizardLink:"需要引导式设置?打开设置向导 →"},legal:{navHome:"首页",navDashboard:"仪表盘",footerHome:"首页",footerTerms:"条款",footerPrivacy:"隐私",footerRefund:"退款政策",footerCopyright:"© 2026 RacoLab. All rights reserved."},authCallback:{authFailed:"身份验证失败",backToLogin:"返回登录",completing:"正在完成身份验证...",noTokenError:"未收到访问令牌"},cliAuth:{title:"ADHDev CLI 身份验证",verifying:"正在验证...",authorizeAs:"以 {{name}} 身份授权 CLI?",noCodeError:"未提供身份验证代码。",approve:"✓ 批准",signInFirst:"请先登录以授权 CLI。",signIn:"登录 →",failed:"失败",successMessage:"CLI 身份验证已完成!",returnToTerminal:"您可以返回终端。",registryPublishTitle:"授权注册表发布",authorizeRegistryPublishAs:"以 {{name}} 身份授予提供程序注册表发布权限?",registryPublishWarning:"这将授予一个短期令牌(15 分钟),可在注册表中发布、推广和撤回提供程序包。这不是守护进程注册。仅在您自己发起注册表发布时才批准。需要管理员账户。",signInFirstRegistryPublish:"请使用管理员账户登录以授权注册表发布。",approving:"正在批准…",errorFriendly:"无法完成 CLI 授权。",tryAgain:"重试"},privacy:{title:"隐私政策",lastUpdated:"最后更新:2026年9月27日",intro:"本隐私政策说明 RacoLab(“我们”)在您于以下地址使用 ADHDev 服务(“本服务”)时如何收集、使用和保护您的信息",s1Title:"1. 我们收集的信息",s1h1:"1.1 账户信息",s1p1:"当您创建账户时,我们会收集由您的身份验证提供商(GitHub 或 Google)提供的信息,包括您的姓名、电子邮件地址和头像。",s1h2:"1.2 IDE 与代理数据",s1p2:"当您将开发环境连接到本服务时,本地 daemon 可能会传输:",s1l1:"IDE 类型和版本(例如“Cursor 0.49.1”)",s1l2:"活动 AI 代理信息(名称、状态、当前模型)",s1l3:"您与 AI 代理之间的聊天消息",s1l4:"IDE 屏幕截图(通过 P2P 传输,不存储在我们的服务器上)",s1l5:"工作区路径和打开的文件名",s1l6:"机器信息(主机名、操作系统、内存使用情况)",s1h3:"1.3 使用数据",s1p3:"出于服务改进和调试目的,我们会自动收集使用信息,包括 API 调用、功能使用模式和连接日志。",s1p3Attribution:"我们还会仅以汇总形式统计各来源的访问量(utm_source 等营销活动标签、来源网站的域名以及着陆页面保存在您浏览器的本地存储中——不使用 IP 地址、设备标识符或 Cookie)。在您创建账户时,我们会记录您首次访问的来源,以了解新用户来自哪些渠道。",s1h4:"1.4 支付信息",s1p4:"支付处理完全由我们的 Merchant of Record,即 Paddle(Paddle.com Market Limited)处理。我们不会直接收集或存储信用卡号、银行账户详情或其他财务信息。有关其数据处理方式,请参阅",s1p4PaddleLink:"Paddle 的隐私政策",s1p4Suffix:"以了解其数据处理方式。",s2Title:"2. 我们如何使用您的信息",s2p1:"我们使用所收集的信息来:",s2l1:"提供和维护本服务",s2l2:"验证您的身份并管理您的账户",s2l3:"在您的仪表板与已连接的机器之间路由命令和数据",s2l4:"发送有关代理状态变更的通知(浏览器和推送)",s2l5:"处理计费和订阅管理(通过 Paddle)",s2l6:"检测和防止滥用或未经授权的访问",s2l7:"改进本服务并开发新功能",s2l8:"响应支持请求",s3Title:"3. 数据存储与安全",s3h1:"3.1 基础设施",s3p1:"我们的服务使用 Cloudflare Workers、Durable Objects 和 D1 Database 在 Cloudflare 的全球网络上运行。数据存储在 Cloudflare 的基础设施中,并受以下约束",s3p1CloudflareLink:"Cloudflare 的隐私政策",s3h2:"3.2 P2P 数据",s3p2:"IDE 屏幕截图和实时终端数据通过 WebRTC 点对点连接在您的浏览器和您的机器之间直接传输。这些数据不会经过我们的服务器,也不会存储在其中。",s3h3:"3.3 安全措施",s3p3:"我们采取以下安全措施:",s3l1:"基于 JWT 的身份验证,采用短期访问令牌和刷新令牌轮换",s3l2:"加密的 WebSocket 连接(WSS/TLS)",s3l3:"用于 daemon 身份验证的按连接令牌",s3l4:"所有 API 端点上的速率限制",s3l5:"针对安全敏感操作的审计日志",s4Title:"4. 数据共享",s4p1:"我们不会将您的个人数据出售给第三方。我们可能会与以下各方共享数据:",s4l1:"作为 Merchant of Record 的支付处理",s4l2:"基础设施提供商(托管、CDN、数据库)",s4l3Label:"身份验证提供商",s4l3:"用于 OAuth 登录的 GitHub/Google",s4p2:"如法律、法律程序要求,或为保护我们的权利以及用户的安全,我们可能会披露数据。",s5Title:"5. 数据保留",s5p1:"在您账户处于活动状态期间,我们会保留您的账户数据。为实现服务功能,聊天消息和代理活动数据最多保留 90 天。",s5p2:"账户删除后,我们将在 30 天内删除您的个人数据。部分匿名化的使用数据可能会出于分析目的而保留。",s6Title:"6. 您的权利",s6p1:"您有权:",s6l1Label:"访问",s6l1:"请求获取您个人数据的副本",s6l2Label:"更正",s6l2:"更新或更正您的个人信息",s6l3Label:"删除",s6l3:"请求删除您的账户及相关数据",s6l4Label:"导出",s6l4:"以可移植的格式下载您的数据",s6l5Label:"反对",s6l5:"反对某些数据处理活动",s6p2:"如需行使这些权利,请通过以下方式联系我们",s7Title:"7. Cookie",s7p1:"我们仅将必要的 Cookie 用于身份验证(会话令牌)和用户偏好(主题、通知设置)。我们不使用广告或跟踪 Cookie。",s8Title:"8. 儿童隐私",s8p1:"本服务不面向 16 岁以下的用户。我们不会在知情的情况下收集 16 岁以下儿童的个人信息。",s9Title:"9. 国际数据传输",s9p1:"您的数据可能会通过 Cloudflare 的全球网络在多个位置进行处理。使用本服务即表示您同意在这些位置传输和处理您的数据。",s10Title:"10. 本政策的变更",s10p1:"我们可能会不时更新本隐私政策。如有任何重大变更,我们将通过电子邮件或本服务通知您。变更后您继续使用即表示接受更新后的政策。",s11Title:"11. 联系方式",s11p1:"有关本隐私政策或数据处理方式的问题:",s11l1Prefix:"电子邮件:",s11l2Prefix:"网站:"},terms:{title:"服务条款",lastUpdated:"最后更新:2026年4月11日",intro:"欢迎使用由 RacoLab(“我们”)运营的 ADHDev(“本服务”)。通过在以下地址访问或使用我们的本服务,",introSuffix:"即表示您同意受本服务条款(“条款”)约束。如您不同意,请勿使用本服务。",s1Title:"1. 服务说明",s1p1:"ADHDev 是一款云端开发者工具,可通过网页和移动仪表板界面对 AI 编码代理(例如 Cursor、VS Code、Antigravity、Claude Code 等)进行远程监控和控制。本服务包括本地 daemon、远程仪表板、REST API 访问以及浏览器和推送通知。",s2Title:"2. 账户注册",s2p1:"您必须创建账户才能使用本服务。您有责任对账户凭证保密。您同意在注册时提供准确、完整的信息,并保持账户信息为最新状态。",s2p2:"您必须年满 16 岁才能使用本服务。创建账户即表示您声明满足此年龄要求。",s3Title:"3. 订阅套餐与计费",s3p1:"本服务提供以下套餐:",s3l1:"功能受限,1 台已连接机器",s3l2:"2 台已连接机器、无限代理、P2P 远程查看、7 天免费试用",s3l3:"5 台已连接机器,包含 Pro 的全部功能,并具备更高的并发数和使用上限(统一定价,非按席位计费)",s3p2:"付费订阅按月或按年提前计费。所有付款均由我们的支付合作伙伴 Paddle(Paddle.com Market Limited)处理,其在所有交易中担任 Merchant of Record。",s4Title:"4. 退款政策",s4p1:"我们为所有付费套餐提供 14 天退款保证。如您对本服务不满意,可在首次购买后 14 天内通过以下方式联系我们,申请全额退款",s4p2:"续订退款将根据具体情况逐案处理。由于 Paddle 担任 Merchant of Record,其退款政策也同样适用。",s5Title:"5. 可接受的使用",s5p1:"您同意不会:",s5l1:"将本服务用于任何非法目的或违反任何适用法律",s5l2:"试图未经授权访问其他用户的账户或数据",s5l3:"对本服务的服务器组件进行逆向工程、反编译或试图提取其源代码",s5l4:"使用本服务传输恶意软件、垃圾信息或其他有害内容",s5l5:"未经我们书面同意转售或再分发本服务",s5l6:"干扰或破坏本服务的完整性或性能",s6Title:"6. 知识产权",s6p1:"本服务及其原创内容、特性和功能均归 RacoLab 所有,并受适用的知识产权法保护。本地守护进程组件依据项目仓库中规定的开源许可证提供。",s6p2:"您通过本服务传输的所有数据和内容的所有权仍归您所有。",s7Title:"7. 数据与隐私",s7p1:"您对本服务的使用还受以下条款约束",s7PrivacyLink:"隐私政策",s7p1Suffix:"本服务为远程监控和控制目的处理 IDE 交互、聊天消息和屏幕截图。我们不会将您的数据出售给第三方。",s8Title:"8. 服务可用性",s8p1:"我们努力保持高可用性,但不保证不间断的访问。由于维护、更新或我们无法控制的情况,本服务可能会暂时不可用。对于因服务中断造成的任何损失,我们概不负责。",s9Title:"9. 责任限制",s9p1:"在法律允许的最大范围内,无论是直接还是间接产生,RacoLab 对因您使用本服务而引起的任何间接、附带、特殊、后果性或惩罚性损害,或任何利润或收入损失,均不承担责任。",s9p2:"对于因本服务引起的任何索赔,我们的赔偿责任总额不得超过您在索赔前 12 个月内向我们支付的金额。",s10Title:"10. 终止",s10p1:"对于违反本条款的行为或出于我们自行决定的任何其他原因,我们可随时暂停或终止您对本服务的访问。您可以随时通过设置页面取消您的账户。取消后,您的数据将在 30 天内被删除。",s11Title:"11. 条款变更",s11p1:"我们保留随时修改本条款的权利。我们将通过电子邮件或本服务通知您重大变更。变更后您继续使用即表示接受修改后的条款。",s12Title:"12. 适用法律",s12p1:"本条款受大韩民国法律管辖并据其解释,不考虑法律冲突条款。",s13Title:"13. 联系方式",s13p1:"如果您对本条款有任何疑问,请联系我们:",s13l1Prefix:"邮箱:",s13l2Prefix:"网站:"},refund:{title:"退款政策",lastUpdated:"最后更新:2026年3月24日",intro:"ADHDev 由 RacoLab 运营。所有付款均由我们的销售商(Merchant of Record)处理",introSuffix:"代表我们管理计费、开具发票和退款。",s1Title:"1. 14 天退款保证",s1p1:"我们为所有付费套餐(Pro)提供 14 天退款保证。如果您因任何原因对本服务不满意,可在首次订阅购买后 14 天内申请全额退款。",s1p2:"如需申请退款,请联系我们",s1p2Suffix:"并提供您的账户邮箱和订单详情。我们将在 3 个工作日内处理您的申请。",s2Title:"2. 续订退款",s2p1:"订阅续订(按月或按年)的退款将根据具体情况处理。如果您被收取了非本意的续订费用,请在扣款后 7 天内联系我们",s3Title:"3. 不予退款的情形",s3p1:"以下情形不予退款:",s3l1:"首次购买超过 14 天保证期后提出的申请",s3l2Prefix:"因违反我们的以下条款而被暂停或终止的账户",s3l2Link:"服务条款",s3l3:"超过退款期限后已使用的部分月份服务",s4Title:"4. 退款处理方式",s4p1:"已批准的退款通过 Paddle 处理并退回至原付款方式。视您的银行或发卡机构而定,退款可能需要 5–10 个工作日才能到账。Paddle 自身的",s4p1RefundLink:"退款条款",s4p1Suffix:"同样适用。",s5Title:"5. 取消",s5p1Prefix:"您可以随时从以下位置取消订阅",s5p1BillingLink:"计费",s5p1Suffix:"仪表板中的页面。取消将停止未来的扣款。在当前计费周期结束前,您仍可使用套餐的功能。仅取消订阅不会触发退款。",s6Title:"6. 联系方式",s6p1:"如需申请退款或有计费疑问:",s6l1Prefix:"邮箱:",s6l2Prefix:"网站:"},sessionShare:{loading:"正在加载会话...",sessionNotFound:"未找到会话",noLongerAvailable:"此会话已不可用",homeBtn:"← ADHDev 主页",sharedSession:"共享会话",host:"主机",mode:"模式",permission:"权限",auth:"认证",authRequired:"需要账户",viewers:"观看者",joinChat:"加入聊天",joinSession:"加入会话",expires:"过期时间:{{date}}",chatLabel:"聊天",remoteLabel:"远程",waitingMessages:"正在等待消息...",connecting:"正在连接... ({{state}})",sendMessageAs:"以 {{name}} 身份发送消息...",sendAs:"以 {{name}} 身份发送...",ownerChat:"{{name}} 的聊天",ownerSession:"{{name}} 的会话",agentName:"{{name}} 的代理",fullControlBadge:"完全控制已启用",failedToJoin:"加入会话失败",sessionRevoked:"会话已被主机撤销",sessionExpired:"会话已过期",authRequired2:"控制共享需要认证",unknownError:"未知错误"},apiPlayground:{title:"API Playground",history:"历史记录 ({{count}})",apiRelayWarning:"守护进程 API 中继为可选启用。除非该守护进程通过 `adhdev daemon:api enable` 明确启用,否则 REST 命令/聊天代理路由将保持禁用。",authBearer:"Authorization: Bearer {{key}}",copyAsCurl:"cURL",copied:"已复制",targetDaemon:"目标守护进程",quickActions:"快捷操作",requestBody:"请求正文 (JSON)",recentRequests:"最近的请求",clearHistory:"清除",noDaemonsWarning:"没有已连接的守护进程。请先启动一个守护进程,或手动替换 {daemonId}。",send:"▶ 发送",sending:"⏳"},announcementBanner:{visibleUntil:"显示至 {{time}}",dismiss:"关闭"},push:{budgetResetsShort:"{{time}} 重置",budgetRemainingShort:"今日套餐剩余 {{count}} 条",budgetShort:"今日 {{used}}/{{limit}}",title:"推送通知",descUnsupported:"此浏览器不支持",descDenied:"已阻止 — 请在浏览器设置中启用",descEnabled:"已开启",descDefault:"即使关闭标签页也能收到提醒",docsLink:"推送通知文档",sent:"已发送",test:"测试",iosHint:"在 iPhone 和 iPad 上,推送仅在已安装的 Safari PWA 中有效。普通 Safari 标签页无法接收 ADHDev 推送通知。",unsupportedWarning:"此浏览器不支持 Web Push。请在 iPhone/iPad 上使用 Safari PWA,或在桌面/Android 上使用 Chromium 浏览器。",deniedWarning:"通知已在浏览器或站点设置中被阻止。请在那里重新启用,然后再次开启推送通知。",registeredDevices:"已注册设备:{{count}}",noDevices:"未找到活跃的推送设备。",deviceLabel:"设备 {{number}}",thisDevice:"此设备",lastActive:"最近活动",removing:"正在移除...",removeHere:"在此移除",remove:"移除"},mesh:{manualMcpSetup:"此提供商需要先手动完成 MCP 设置,才能充当 Repo Mesh 协调器。",couldNotLoadMeshes:"无法加载网格",untitledMesh:"未命名网格",chooseMachineFirst:"请先选择一台机器。",launchFailed:"启动失败",coordinatorLaunchFailed:"协调器启动失败",coordinatorLaunched:"协调器已启动 ({{sessionId}})",coordinatorLaunchSent:"协调器启动命令已发送"},plans:{free:"Free",pro:"Pro",ultra:"Ultra",team:"Team",enterprise:"Enterprise"},adminAudit:{title:"全局审计",subtitle:"系统级事件跟踪",allActions:"所有操作",allSources:"所有来源",filter:"筛选",noLogs:"未找到日志",loading:"正在加载...",loadMore:"加载更多 ↓"},adminDashboard:{failedToLoad:"加载管理数据失败",title:"管理仪表板",subtitle:"服务概览与管理",accessDenied:"管理员访问被拒绝",backToDashboard:"返回仪表板",loading:"正在加载管理仪表板",loadingDesc:"正在收集服务统计和最近的审计活动。",totalUsers:"用户总数",todayCommands:"今日命令",activeApiKeys:"活跃 API 密钥",todayLogins:"今日登录",planDistribution:"套餐分布",quickActions:"快捷操作",manageUsers:"管理用户",apiKeys:"API 密钥",auditLogs:"审计日志",systemConfig:"系统配置",recentActivity:"最近活动",viewAll:"查看全部",noRecentActivity:"暂无最近活动"},adminTokens:{title:"管理员令牌",subtitle:"签发用于部署自动化的管理员权限 API 令牌",superAdminOnly:"仅限超级管理员",superAdminOnlyDesc:"只有超级管理员才能签发管理员令牌。如有需要,请联系超级管理员。",issueTitle:"签发新令牌",nameLabel:"名称",namePlaceholder:"例如 deploy-ci",scopesLabel:"权限范围",scopesHint:"admin 涵盖大多数管理 API。super_admin 还可签发令牌和修改角色,请仅在必要时授予。",expiryLabel:"有效期",expiryDays:"{{count}} 天",expiryHint:"管理员令牌始终会过期。服务器将有效期上限设为 90 天。",issue:"签发令牌",issuing:"签发中...",issuedTitle:"请立即复制令牌",issuedWarning:"令牌仅显示这一次。请妥善保存——之后无法再次获取。",issuedMeta:"权限范围:{{scopes}} · 过期时间:{{expiresAt}}",copy:"复制",copied:"已复制",copyFailed:"复制失败——请选中令牌手动复制",dismiss:"关闭",expiryClamped:"有效期已缩短至上限 90 天",existingTitle:"有效的管理员令牌",emptyTitle:"暂无管理员令牌",emptyDesc:"在上方签发一个,即可无需浏览器登录来认证部署。",expiresAt:"过期时间:{{time}}",lastUsed:"最近使用 {{time}}",neverUsed:"从未使用",noExpiry:"永不过期",expired:"已过期",revoke:"吊销",revokeConfirm:"确定吊销令牌“{{name}}”吗?正在使用它的程序会立即停止工作。",revoked:"令牌已吊销",loading:"加载中...",error:"错误:{{message}}"},adminSystem:{error:"错误:{{message}}",announcementSent:"公告已发送",announcementCleared:"公告已清除",title:"系统设置",subtitle:"公告与系统配置",loading:"正在加载系统设置",loadingDesc:"正在获取当前公告状态。",announcement:"公告",current:"当前:",untilTime:"(直到 {{time}})",untilCleared:"(直到清除)",announcementPlaceholder:"输入公告消息...",severityInfo:"信息",severityWarning:"警告",severityCritical:"严重",duration1h:"1 小时",duration6h:"6 小时",duration24h:"24 小时",duration7d:"7 天",durationUntilCleared:"直到清除",send:"发送"},adminUsers:{error:"错误:{{message}}",roleUpdated:"角色已更新",planUpdated:"套餐已更新",suspensionReasonPrompt:"请输入停用原因:",userSuspended:"用户已停用",userUnsuspended:"用户已恢复",title:"用户管理",subtitle:"管理用户、角色和停用",usersTotal:"位用户",searchPlaceholder:"搜索邮箱或名称...",allRoles:"所有角色",roleUser:"用户",roleAdmin:"管理员",roleSuperAdmin:"超级管理员",allPlans:"所有套餐",search:"搜索",colUser:"用户",colRole:"角色",colPlan:"套餐",colStatus:"状态",colCreated:"创建时间",colActions:"操作",noName:"无名称",statusSuspended:"已停用",statusActive:"活跃",unsuspend:"恢复",suspend:"停用",loading:"加载中...",prev:"← 上一页",next:"下一页 →"}},S={onboardingTour:{next:"下一步",getStarted:"开始使用",learnMore:"在文档中了解更多",closeAria:"关闭引导",allSetStandalone:{desc:"此仪表板已连接到本地守护进程。在“仪表板”标签页中启动会话,或在“机器 → 提供方”中添加更多提供方。",title:"一切就绪"},getStartedCloud:{desc:"在要操控的机器上运行此命令,然后登录——守护进程会自动与你的仪表板配对。",title:"开始使用"},orchestrate:{desc:"Repo Mesh(Cloud Pro)让一个协调器把工作分派给多台机器上的代理——并行 git 工作树、自动分支收敛,并从多个角度交叉检查同一仓库。",title:"编排你的代理"},watchAndSteer:{desc:"实时跟进每个代理的会话并在其工作时进行引导——切换会话、截图,以及(IDE 会话)通过直连查看和控制屏幕。",title:"实时观看与引导"},realtimeChat:{desc:"实时查看 AI 代理在做什么。发送消息、批准或拒绝操作——都能在浏览器或手机上完成。",title:"实时聊天"},welcome:{desc:"直接在浏览器或手机上操控任何本地 CLI 编程代理——Claude Code、Codex、Antigravity CLI。代理在你的机器上持续运行,你在网页上控制它们。",title:"欢迎使用 ADHDev"}},installCommand:{orViaNpm:"或通过 npm:",clickToCopy:"点击复制"},errorBoundary:{reload:"重新加载页面",description:"发生意外错误。请重新加载页面以继续。",title:"出了点问题"},shellFreshness:{dismissAria:"关闭更新提示",later:"稍后",reload:"重新加载",message:"ADHDev 有新版本可用。"},dashboardWire:{reloadTitle:"需要重新加载",reloadBody:"此页面比其连接的守护进程旧,无法读取守护进程的状态。请重新加载以获取最新的仪表板。",reload:"重新加载",daemonUpdateTitle:"需要更新守护进程",daemonUpdateBody:"{{count}} 台机器运行着此仪表板无法读取的旧版守护进程。请使用 `adhdev update`(或机器页面的更新操作)进行更新。"},openMenu:"打开菜单",closeMenu:"关闭菜单"},P={loadingOlderMessages:"正在加载较早的消息...",waitingForMessages:"正在等待消息...",agentGenerating:"智能体正在生成...",jumpToTop:"跳到顶部",jumpToOldestMessages:"跳到最早的消息",top:"↑ 顶部",latest:"↓ 最新",jumpToLatestMessages:"跳到最新消息",jumpToBottom:"跳到底部",showEarlierMessages:"↑ 显示较早的 {{count}} 条消息...",showEarlierMessagesHidden:"↑ 显示较早的 {{count}} 条消息...(隐藏了 {{total}} 条)",loadOlderMessages:"↑ 加载较早的消息",loadErrorRetry:"↻ {{error}}"},L={zoomOut:"缩小",zoomIn:"放大",resetZoom:"重置缩放",toggleFullscreen:"切换全屏"},A={screenshotAlt:"远程屏幕",mouse:"鼠标",touch:"触摸",connected:"已连接",ws:"正在重新连接",direct:"直连",relay:"中继",turnBlocked:"已达今日画面查看上限",turnUsage:"画面 {{used}}/{{budget}}分钟",typeAndEnter:"输入并按 Enter...",settings:"设置",zoom:"缩放:",fill:"填充",fit:"适应",directP2PTitle:"P2P 直连",turnRelayTitle:"正在使用 TURN 中继",dailyTurnTitle:"今日远程画面查看已用时间(套餐上限)",waitingState:{turnRelayActive:"TURN 中继已启用"},waiting:{connectedLabel:"已连接。正在等待第一帧...",connectingLabel:"正在连接主机...",reconnectingLabel:"正在重新连接主机...",connectedHint:"远程流正在预热",reconnectingHint:"正在等待远程流追上进度"},error:{title:"远程连接已断开",reasonFailed:"连接此主机失败。请检查守护进程是否正在运行,然后重试。",reasonDisconnected:"与主机的连接已断开,15 秒后仍未能重新连接。",retry:"重试"},screenshotViewer:{altText:"IDE 截图",waitingForStream:"正在等待截图流...",p2pStatus:"P2P:{{state}}"}},I={openChat:"打开聊天",openCoordinatorChat:"打开协调器聊天",coordinatorGone:"协调器会话已结束",chatNotFound:"此仪表板上没有该会话的聊天标签 — 它可能运行在另一台机器上。",openChatHint:"点击打开此会话的聊天"},M={meshNodeUnavailable:"无法获取 Mesh 节点信息",roleCoordinator:"Mesh 协调器",rowProviderType:"提供方类型",rowStarted:"开始于",copyDiagnostics:"复制诊断信息",gitClean:"无更改",gitDirty:"有未提交的更改",gitDetached:"(游离)",blockRawMetadata:"原始运行时元数据",blockFinalPrompt:"最终系统提示",blockExtraPrompt:"本次启动的额外提示",quotaOkNoWindows:"无限制",sectionMeshWorker:"由协调器派生的会话",rowMeshId:"Mesh ID",rowTaskId:"任务",rowCoordinator:"协调器",title:"会话信息",loading:"加载中…",close:"关闭",failedToLoad:"加载会话信息失败",stampedToNode:"此会话绑定到了协调器不再报告的网格节点。",sectionSession:"会话",sectionLaunch:"启动",sectionMeshNode:"网格节点",sectionMeshCoordinator:"网格协调器",sectionRuntime:"运行时",rowSessionId:"会话 ID",rowProvider:"提供方",rowTransport:"传输",rowWorkspace:"工作区",rowSpawnedAt:"生成时间",rowProviderSessionId:"提供方会话 ID",rowMachine:"机器",rowConnection:"连接",rowCommand:"命令",rowWorkingDirectory:"工作目录",rowArgs:"参数",rowExtraArgs:"额外参数",rowExtraEnv:"额外环境变量",rowNodeId:"节点 ID",rowRepoRoot:"仓库根目录",rowDaemonId:"守护进程 ID",rowRole:"角色",rowMachineStatus:"机器状态",rowHealth:"健康状况",rowWorktree:"工作树",rowLaunchReady:"启动就绪",rowGit:"Git",rowProviders:"提供程序",rowProviderPriority:"提供程序优先级",rowCoordinatorCli:"协调器 CLI",rowStartedAt:"启动时间",rowPromptInjection:"提示注入",rowMcpConfig:"MCP 配置",rowRuntimeId:"运行时 ID",rowLifecycle:"生命周期",rowSurface:"界面",rowRecoveryState:"恢复状态",rowRestoredFromStorage:"从存储恢复",rowAttachedClients:"已连接客户端"},H={mobile:{noHistoryMatches:"没有符合这些筛选条件的已保存记录。",workspaceMissing:"(工作区缺失)",resumableOnly:"仅显示可恢复的",sortMessages:"消息最多",sortOldest:"最早",sortRecent:"最新",filterModel:"按模型筛选",filterWorkspace:"按工作区筛选",searchHistory:"搜索标题或预览",useThisFolder:"使用此文件夹",browseDescription:"像普通文件浏览器一样浏览文件夹,然后将当前文件夹用于此机器。",browseTitle:"选择工作区",machineDetails:"机器详情",inspect:"查看",showMore:"再显示 {{count}} 个",showFewer:"收起",recentLaunches:"最近启动",currentChats:"当前聊天",machineFallback:"机器"},daemonUpdate:{previewUnknownDescription:"应用已连接到预览环境,但服务器尚未报告预览目标版本。",previewUpToDateDescription:"此机器已在运行当前预览版守护进程。",previewUnknownTitle:"预览版更新状态未知",previewUpToDateTitle:"预览版守护进程已是最新",mismatchDescription:"此机器运行的守护进程版本与当前应用不同。请先更新再启动更多会话。",previewUpgradeDescription:"无需打开远程 shell,即可将此机器更新到当前预览版守护进程。",requiredDescription:"此机器的守护进程版本不兼容。请先更新再启动更多会话。",mismatchTitle:"检测到版本不一致",requiredTitle:"需要更新守护进程",upgrade:"更新",updateNow:"立即更新"},launchPick:{empty:"还没有已保存的工作区。请在“工作区”标签页中添加,或在上方输入路径。",description:"不做任何默认假设。请选择已保存的工作区、默认工作区或主目录——或取消后输入路径。",title:"要在哪里运行?"},trustBadge:{externalUntrustedHint:"来自你添加的外部来源,且包含 ADHDev 将运行的代码。启用前请审查来源。",externalSafeHint:"来自你添加的外部来源。仅包含配置,ADHDev 不会运行其代码。",trustedWithScriptsHint:"由 ADHDev 官方提供。包含由 ADHDev 运行的脚本。",trustedHint:"由 ADHDev 官方提供。仅包含配置,不运行提供方代码。",userCustomHint:"你在自己的提供方文件夹中编写了此提供方,它运行你自己的代码。",externalUntrusted:"外部 · 运行代码",externalSafe:"外部",trustedWithScripts:"官方 · 脚本",trusted:"官方",userCustom:"自定义"},providerSettings:{option:{high:"高",medium:"中",low:"低"},notifications:{description:"{{provider}} 状态变化时显示通知。",label:"通知"},showCoordinatorSystemPrompt:{description:"将注入的系统提示显示为聊天消息。默认关闭——随时可在聊天标题栏的会话信息(ⓘ)中查看。",label:"显示系统提示消息"},showTerminal:{description:"在聊天中显示终端命令及其输出。",label:"显示终端"},showToolCalls:{description:"在聊天中显示工具调用摘要(搜索、编辑等)。",label:"显示工具调用"},showThinking:{description:"在聊天中显示代理的推理过程。",label:"显示思考过程"},longGeneratingThresholdSec:{description:"回复运行多久后触发长时间提醒。",label:"长时间阈值(秒)"},longGeneratingAlert:{description:"回复耗时异常长时通知你。",label:"长时间运行提醒"},approvalAlert:{description:"{{provider}} 等待你批准时通知你。",label:"批准通知"},appPathOverride:{description:"IDE 应用的完整路径(可选)。留空则在常见安装位置中查找。",label:"应用路径"},cliPathOverride:{description:"IDE 命令行启动器的完整路径(可选)。留空则使用检测到的路径。",label:"CLI 启动器路径"},executableArgs:{description:"启动 {{provider}} 时替换默认参数的可选参数。留空则使用默认值。",label:"启动参数"},executablePath:{description:"{{provider}} 程序的完整路径(可选)。留空则从 PATH 中查找。",label:"可执行文件路径"},autoApprove:{description:"自动批准 {{provider}} 的工具调用和确认请求,不再询问。",label:"自动批准"},enabled:{description:"在 ADHDev 检测、启动或检查此机器上的 {{provider}} 之前,请先开启。",label:"在此机器上启用"},thisProvider:"此提供方"},launchConfirm:{workspace:"工作区",languageModel:"语言模型(可选)",autoDetect:"自动检测或默认",cliArgs:"CLI 参数(可选)",cliArgsPlaceholder:"例如 --experimental",cancel:"取消",closeAria:"关闭启动确认",launch:"启动",launching:"启动中…"},confirmExternal:{aboutToActivateFrom:"你即将启用来自 {{source}} 的 {{provider}}。",aboutToActivate:"你即将启用 {{provider}}。",dialogAria:"确认不受信任的外部提供程序",title:"激活不受信任的外部提供程序?",description:"此清单附带了守护进程将执行的 JavaScript。请将其视为不受信任的代码 — 启用前请审查源代码。",proceedWarning:"仅当您信任所添加的源 URL 并已审查清单时才继续。",cancel:"取消",activate:"激活"},providers:{advancedHint:"来源、加载路径和提供方详情",filter:"筛选",sourceConfigTitle:"提供程序来源配置",sourceConfigDesc:"守护进程查找提供程序清单的位置。会影响解析和重新加载。",sourceMode:"来源模式",explicitProviderDir:"显式 providerDir",providerDirPlaceholder:"留空则使用 ~/.adhdev/providers",applying:"应用中…",applyReload:"应用 + 重新加载",userRoot:"用户根目录:",upstreamRoot:"上游根目录:",providerRoots:"提供程序根目录:",loadingSettings:"正在加载提供程序设置…",noProviders:"尚未安装任何提供方——请使用上方的安装,或在高级中添加来源。",noFilteredProviders:"未安装 {{filter}} 提供程序。",refresh:"刷新",updateAll:"全部更新",advanced:"高级",newChannelTypesTitle:"可安装",newChannelTypesDesc:"已发布到验证渠道但尚未安装到本机。安装后将激活经摘要校验的包。",installNewType:"安装",modelListTitle:"模型列表",modelListStaleDesc:"无法从这些 CLI 读取模型列表(已登出、离线或输出不受支持)。当前使用清单中的列表,可能已过期。",modelListStaleBadge:"未验证",installFailedTitle:"安装失败",installFailedDigestMismatch:"安装失败——请稍后重试",loadFailed:"加载提供方设置失败:{{error}}",quotaToggleFailed:"更新 {{provider}} 的配额探测设置失败:{{error}}"},sourcesPanel:{title:"外部来源",description:"你添加的第三方 git URL。这里的提供方可能包含守护进程将执行的 JavaScript——激活需要确认。",addSource:"+ 添加来源",empty:"尚未注册外部来源。使用“+ 添加来源”注册第三方提供方 git URL。",remove:"移除",removing:"…",removeConfirmTitle:"移除提供方来源 {{name}}?",removeConfirmDescription:"这将删除已克隆的清单,并清除任何指向此来源的活动来源条目。",removeConfirmLabel:"移除",conflictsTitle:"冲突",conflictsDescription:"多个来源提供了相同的提供方类型。请选择应激活哪个来源的副本。",active:"已激活",switchActiveTo:"切换激活为 {{name}}",addTitle:"添加外部来源",gitUrl:"Git URL",ref:"Ref(分支/标签)",name:"名称(可选,自动从 URL 派生)",cancel:"取消",cloning:"克隆中…",cloneAndRegister:"克隆 + 注册",loadFailed:"加载来源失败",addFailed:"添加来源失败",removeFailed:"移除来源失败",setActiveFailed:"设置活动来源失败"},providerRow:{detectDisabledHint:"检查前请先启用该提供方",detectHint:"检查已配置的程序能否找到并运行",lifecycleDeprecated:"已停止支持",lifecycleExperimental:"实验性",lifecycleBeta:"测试版",lifecycleStable:"稳定版",checkFailed:"失败",checkOk:"正常",statusDetected:"已检测",statusNotDetected:"未检测",statusEnabledUnchecked:"已启用(未检查)",statusDisabled:"已禁用",labelType:"类型:",labelVersion:"版本:",labelBinary:"二进制文件:",labelStatus:"状态:",labelDetails:"详情:",labelSource:"来源:",labelTrust:"信任:",labelLinks:"链接:",labelDetection:"检测:",labelVerification:"验证:",saving:"保存中…",disable:"禁用",enable:"启用",detect:"检测",resetCommand:"重置命令",quotaAccountLabel:"在用量中显示账号",quotaAccountLabelHint:"为该提供程序的套餐用量标注登录账号。关闭时不是隐藏,而是根本不获取账号。",quotaAccountLabelOn:"开",quotaAccountLabelOff:"关",quotaTracking:"配额追踪",quotaTrackingHint:"定期读取该提供程序的套餐配额并展示在仪表盘上。关闭后将完全停止读取。",quotaTrackingOn:"开",quotaTrackingOff:"关",quotaClaudeConfirmTitle:"启用 Claude 配额追踪?",quotaClaudeConfirmBody:"Claude Code 没有配额 API,因此 ADHDev 通过唯一可用的 statusLine 路径读取用量。启用后,~/.claude/settings.json 中的 statusLine 命令将被替换为 ADHDev 包装器。你现有的命令会继续在包装器内运行,其输出原样透传,因此提示符外观不变。文件中的其他设置不会被修改。当前值会先备份,可随时通过 `adhdev quota claude:uninstall` 恢复。",quotaClaudeConfirmOk:"安装并启用",quotaClaudeConfirmCancel:"取消",labelSpecPin:"规格固定:",labelActivatedAt:"启用时间:",labelPreviousPin:"上一个固定:",labelDigest:"摘要:",specPinStale:"有 {{latest}}",specPinStaleHint:"此机器正在加载旧规格。频道提供 {{latest}}。",updateInline:"更新",updateInlineHint:"渠道提供 {{latest}}。在此机器上下载、验证并启用。",specPinUpdating:"更新中…",specPinRollback:"回滚",specPinRollbackHint:"恢复到规格 {{version}}(本地,无需下载)。",specPinRollingBack:"回滚中…"},installOptions:{title:"设置 {{provider}}",quotaLabel:"跟踪套餐用量",quotaHint:"定期读取该提供方的套餐用量,以便仪表板和 `adhdev quota` 显示剩余额度。关闭后将完全停止读取,不收集任何内容。",quotaClaudeNote:"Claude Code 没有 quota API,因此会在 ~/.claude/settings.json 中安装 ADHDev statusLine 包装器。你原有的命令仍会在其中运行,原值会被备份。",autoApproveLabel:"自动批准工具调用",autoApproveHint:"当该智能体请求运行命令、编辑文件或使用工具的权限时,ADHDev 会替你回答“是”。你不会看到批准提示,操作会直接执行。",autoApproveWarning:"智能体可以在本机上运行命令而无需先询问你。若想逐一批准,请关闭此项。",cancel:"取消",confirm:"启用提供方"},card:{status:{offline:"离线",failed:"连接失败",connecting:"正在连接…",online:"在线"},slowLink:"慢速连接",coresCount_other:"{{count}} 核",coresCount_one:"{{count}} 核",onMachine:"在 {{machine}} 上",sectionIDEs:"IDE",sectionCLIs:"CLI",cpu:"CPU",mem:"MEM",loading:"正在加载你的机器…",emptyHeadline:"欢迎使用 ADHDev",emptyBody:"将你的第一台机器连接到仪表板。在该机器上安装 ADHDev 并登录,它会自动配对并显示在这里:",emptyDocsLink:"阅读文档 →",hidden:"已隐藏",pageTitle:"机器",burrowCount_one:"{{count}} 台机器",burrowCount_other:"{{count}} 台机器",onlineCount_one:"{{count}} 台在线",onlineCount_other:"{{count}} 台在线",agentsActive_one:"{{count}} 个代理活跃",agentsActive_other:"{{count}} 个代理活跃",activeNow:"当前活跃",generating:"生成中",connectionFailed:"连接失败",reconnect:"重新连接",transportRelay:"通过中继服务器连接——比直连慢。通常是防火墙或 NAT 阻止了直连。",transportDirect:"直接连接",noAgentsRunning:"尚无运行中的代理",launchCta:"启动 →"},detail:{relaunchFailed:"无法重新启动",launchProvider:"提供方",launchType:"类型",tabsAriaLabel:"机器分区",tabSessions:"会话",notFound:"未找到机器",save:"保存",cancel:"取消",loading:"正在加载机器...",offlineHint:"该机器可能处于离线状态或尚未连接。",back:"← 返回",tabHostedRuntimes:"托管运行时",tabProviders:"提供方",tabSystem:"系统",tabLogs:"日志",clickToSetNickname:"点击设置昵称",nicknamePlaceholder:"机器昵称...",reconnect:"重新连接",p2pConnected:"已连接",providerUpdatesAvailable:"有可用的提供方更新",providerSyncSuccess:"提供方通道已同步 — 已更新 {{count}} 项",providerSyncAlreadyCurrent:"提供方通道已是最新",providerSyncFailed:"提供方更新失败"},commandCenter:{updateStatusUnknown:"更新状态未知",upToDate:"已是最新",updateDaemon:"更新守护进程",updateToVersion:"更新到 v{{version}}",updateChannel:{preview:"预览版",stable:"稳定版"},updateTargetWithChannel:"目标:v{{version}}({{channel}})",updateTarget:"目标:v{{version}}",currentChats:"当前聊天",recentLaunches:"最近启动",daemonUpdate:"守护进程更新"},workspaceBrowse:{currentFolder:"当前文件夹",parent:"上级",go:"前往",pathPlaceholder:"输入文件夹路径",loading:"正在加载文件夹…",noSubfolders:"没有子文件夹。",useThisFolder:"使用此文件夹"},managedWorkspaces:{setDefaultHint:"设为默认工作区",unsetDefaultHint:"默认工作区——点击取消",title:"工作区",addWorkspace:"添加工作区",empty:'还没有保存的工作区。点击 "{{button}}" 选择文件夹。',addDialogDescription:"像普通文件管理器一样浏览机器,然后将当前文件夹添加为工作区。",remove:"移除",newSession:"在此工作区启动新会话",newSessionShort:"会话",newMeshSession:"在此工作区启动网格协调器会话",newMeshSessionShort:"网格",removeConfirmTitle:"移除工作区",removeConfirmDescription:'从列表中移除 "{{label}}" 吗?文件夹本身不会被删除。',rename:"重命名",renamePlaceholder:"工作区名称",saveName:"保存",cancelRename:"取消",renameFailed:"无法更新工作区名称"},overview:{diagnostics:"诊断",p2p:"P2P",daemonVersion:"守护进程版本",cores:"CPU 核心",platform:"平台",hostname:"主机名",aboutMachine:"此机器",approx:"(约)",memory:"内存",cpuDetail:"平均 {{load}} / {{cores}} 核",cpuLoad:"CPU 负载",resourceUsage:"资源使用情况",waiting:"等待中…",uptime:"运行时间",waitingForStats:"正在等待实时统计…",waitingForStatsWithTotal:"正在等待实时统计… · 共 {{total}}"},fleetQuota:{title:"各机器的订阅额度",subtitle:"显示每台机器上各订阅 5 小时和每周额度的剩余量。任务队列会跳过快用完的套餐,并优先用掉重置时会过期的余量。",machine:"机器",unreadable:"无法读取"},quota:{text:{failureKind:{unknown:"未知错误","no-data":"暂无读数","setup-required":"需要设置",unsupported:"不支持","cli-unavailable":"未找到程序",parse:"无法解析响应",server:"提供方服务器错误",network:"网络错误","rate-limited":"请求受限","quota-exhausted":"已达套餐上限",unauthorized:"访问被拒绝","expired-token":"登录已过期","missing-credentials":"未登录"},agoDays:"{{days}} 天 {{hours}} 小时前",agoHours:"{{hours}} 小时 {{minutes}} 分钟前",agoMinutes:"{{minutes}} 分钟前",justNow:"刚刚",unreadable:"无法读取配额",unavailable:"此机器上不可用",pool:"池",usageSessions:"{{count}} 个会话",usageTokens:"{{count}} 令牌",windowReset:"已重置 · 等待刷新",cue:{stale:"已过时",refreshing:"刷新中"},resetsInDays:"{{days}} 天 {{hours}} 小时后重置",resetsInHours:"{{hours}} 小时 {{minutes}} 分钟后重置",resetsInMinutes:"{{minutes}} 分钟后重置",resetsNow:"即将重置",used:"已用 {{percent}}%"},title:"套餐用量",sessionHint:"该机器上报的 5 小时滚动套餐窗口",weeklyHint:"该机器上报的 7 天滚动套餐窗口",monthlyHint:"此机器报告的 30 天计费周期窗口",bucketHint:"此机器报告的按池配额桶 — 同一套餐内的池各自独立重置",failureHint:"该机器报告无法读取此提供程序的用量",okNoWindows:"无限制",okNoWindowsHint:"配额读取成功;此提供方不报告百分比窗口(例如包含用量套餐)。",accountHint:"该用量所属的登录账号(由提供程序 CLI 上报)",usageHint:"最近时间窗内的绝对用量 — 该 Provider 路由到你自己的上游账户,因此没有可按百分比显示的套餐上限。"},actions:{nicknameSyncFailed:"机器昵称已更新,但账户同步失败",nicknameFailed:"无法保存昵称",nicknameTimeout:"机器没有响应 — 请检查连接后重试",nicknameSaved:"已保存昵称",pathMissing:"该路径可能不存在于磁盘上",workspaceActionFailed:"工作区更新失败",workspaceAdded:"已添加工作区",detectFailed:"IDE 检测失败",usingDefaultWorkspace:"使用默认工作区",runningInHome:"在主目录中运行",launchPending:"{{name}} 正在启动——稍后会出现",launchFailed:"无法启动 {{name}}",launching:"正在启动 {{name}}…",stopCliConfirmDescription:"这将终止该进程。",stopIdeConfirmDescription:"这将断开 CDP 连接,并视情况结束进程。",stopped:"{{name}} 已停止",launched:"{{name}} 已启动",stopFailed:"无法停止",restartInitiated:"已开始重启 {{name}}",restartFailed:"无法重启",selectProviderFirst:"请先选择 CLI 提供方",selectProvider:"请选择提供方",workspaceRemoved:"已移除工作区",workspaceLabelUpdated:"已更新工作区名称",defaultWorkspaceUpdated:"已更新默认工作区",defaultWorkspaceCleared:"已清除默认工作区",idesFound_one:"找到 {{count}} 个 IDE",idesFound_other:"找到 {{count}} 个 IDE"},logsTabSections:{view:"视图",filterInfo:"信息+ ({{count}})",filterIssues:"问题 ({{count}})",filterAll:"全部 ({{count}})",searchPlaceholder:"搜索诊断信息…",copyDiagnostics:"复制诊断信息",copyVisible:"复制可见内容",pause:"暂停",resume:"继续",refresh:"↻ 刷新",clear:"清除",advancedSourceScope:"高级来源范围",daemonLevelPlus:"守护进程 {{level}}+",diagnosticsTimeline:"诊断时间线",visibleEventsIssues:"可见事件 {{events}} 个 · 问题信号 {{issues}} 个",filteredBy:"已按 “{{query}}” 过滤",mergedByTime:"按时间合并守护进程、trace 与浏览器信号",latestIssue:"最新问题",noVisibleIssue:"没有可见的 warn/error 信号",sourceStatus:"来源状态",needsAttention:"需要关注",livePolling:"每 3 秒实时轮询",paused:"已暂停",lastUpdate:"最后更新:{{time}}",notYetLoaded:"尚未加载",rawFile:"原始文件",sourceDaemon:"守护进程",sourceTrace:"跟踪",sourceBrowser:"浏览器",repeatedIssuePatterns:"重复出现的问题模式",unifiedTimeline:"统一时间线",visibleDiagnosticEvents:"可见诊断事件 {{count}} 个",hide:"隐藏",show:"显示",loadingDiagnostics:"正在加载诊断信息…",daemonLogsError:"守护进程日志:{{error}}",daemonTraceError:"守护进程 trace:{{error}}",noDiagnosticsMatch:"没有与当前视图匹配的诊断信息。",rawSourceDaemonLogs:"原始来源 · 守护进程日志",visibleRawLinesFallback:"来自文件回退的可见原始行 {{count}} 条",visibleStructuredLines:"可见结构化行 {{count}} 条",loadingDaemonLogs:"正在加载守护进程日志…",noDaemonLogsYet:"此机器上尚未捕获任何守护进程日志。",noRawLinesMatchSearch:"没有与当前搜索匹配的原始守护进程日志行。",rawFallbackOnlyInAll:"原始文件回退日志仅在“全部”视图中可用。",noStructuredLogsMatch:"没有与当前视图匹配的结构化守护进程日志。",rawSourceDaemonTrace:"原始来源 · 守护进程 trace",sessionHostOnly:"仅 session_host",visibleTraceEvents:"可见 trace 事件 {{count}} 个",loadingDaemonTrace:"正在加载守护进程 trace…",noTraceEntriesMatchSearch:"没有与当前搜索匹配的 trace 条目。",noSessionHostTraceYet:"尚无 session host trace 条目。",noTraceEntriesYet:"尚无 trace 条目。",noPayload:"无 payload",rawSourceBrowserEvents:"原始来源 · 浏览器调试事件",visibleBrowserEvents:"可见浏览器事件 {{count}} 个",noBrowserEventsMatchSearch:"没有与当前搜索匹配的浏览器调试事件。",noBrowserEventsYet:"尚未捕获任何浏览器调试事件。"}},R={transition:{recover:"已恢复运行",detach:"已分离",attach:"已连接",start:"已启动",stop:"已停止",restart:"已重启",resume:"已恢复"},lastErrorLabel:"最近错误",endpointLabel:"端点",activeAgo:"{{time}} 活动",title:"托管运行时恢复",stopConfirmTitle:"停止 {{name}}?",stopConfirmDescription:"这将终止该托管运行时。",pruneConfirmTitle:"清理重复的托管运行时?",pruneConfirmDescription:"将保留每个提供方会话的最新运行时,较旧的重复项会被停止并移除。",prune:"清理",pruning:"清理中…",pruneDuplicatesCount:"清理重复项({{count}})",toastResumed:"会话主机已恢复:{{name}}",toastRestarted:"会话主机已重启:{{name}}",toastStopped:"会话主机已停止:{{name}}",toastPruned:"已在 {{groups}} 个组中清理 {{pruned}} 个重复运行时",actionFailed:"会话主机操作失败",pruneFailed:"清理重复项失败",diagnosticsFailed:"无法加载托管运行时诊断信息",diagnosticsAttention:"托管运行时诊断需要关注",stop:"停止",stopping:"停止中…",restart:"重启",restarting:"重启中…",resume:"继续",resuming:"继续中…",recover:"恢复",recovering:"恢复中…",refresh:"刷新",refreshing:"刷新中…",noWorkspace:"无工作区",clientsCount_one:"{{count}} 个客户端",clientsCount_other:"{{count}} 个客户端",statLive:"实时运行时",statRecovery:"恢复",statRequests:"请求",statStarted:"启动时间",latestWarning:"最近的主机警告",liveTitle:"实时托管运行时",recoveryTitle:"恢复快照",inactiveTitle:"非活动记录",recentActivity:"最近的主机活动",liveEmpty:"此机器目前没有正在运行的托管运行时。",recoveryEmpty:"当前没有需要关注的恢复快照。",transitionsEmpty:"暂无最近的运行时状态变化。",nextAction:"下一步:{{action}}"},_={managed:"已托管",checking:"检查中…",diagnosticsIssue:"诊断存在问题",unavailable:"不可用",restoredAfterRestart:"重启后已恢复",restoreFailed:"恢复失败",hostRestartInterrupted:"主机重启被中断",snapshotRecovered:"已从快照恢复",attach:"连接",recover:"恢复",restart:"重启",hintLive:"这些运行时当前处于活跃状态,是唯一可连接的目标。",hintRecovery:"这些记录是从 session-host 状态恢复的,在你明确恢复或重启之前,它们不是可连接的活跃目标。",hintInactive:"这些非活跃记录仅供参考,通常需要重启后才能再次使用。",lifecycleStarting:"启动中",lifecycleRunning:"运行中",lifecycleStopping:"停止中",lifecycleStopped:"已停止",lifecycleFailed:"失败",lifecycleInterrupted:"已中断"},F={advancedTitle:"高级",mobileMode:{workspaceMode:"工作区",chatMode:"聊天模式",descriptionWorkspace:"在手机和平板上使用完整的工作区布局。",descriptionChat:"使用以聊天为主的移动收件箱布局,更接近即时通讯应用。",label:"移动收件箱(聊天模式)"},theme:{preset:{honey:"温暖的黄色点缀",aurora:"粉色点缀主题",ember:"默认琥珀色主题,灵感来自首页",midnight:"经典紫色主题"},presetCustomDescription:"完整自定义应用与聊天",helloHelp:"你好!有什么可以帮你的?",fixBug:"请修复这个 bug",onIt:"马上处理!✨",customEditorTitle:"自定义主题编辑器",darkMode:"深色模式",lightMode:"浅色模式",sectionAppBackground:"应用背景",sectionAppText:"应用文字",sectionBordersAccent:"边框与强调色",sectionChatBubbles:"聊天气泡",sectionChatLayout:"聊天布局",colorBackground:"背景",colorSurface:"表面",colorCard:"卡片",colorPrimary:"主色",colorSecondary:"辅色",colorMuted:"柔和色",colorBorderSubtle:"细微边框",colorBorderDefault:"默认边框",colorAccent:"强调色",colorUserBubble:"用户气泡",colorUserText:"用户文字",colorAgentBubble:"代理气泡",colorAgentText:"代理文字",colorChatBg:"聊天背景",colorSendButton:"发送按钮",colorInputBorder:"输入框边框",labelBubbleRadius:"气泡圆角",resetToDefaults:"恢复默认值",customLabel:"自定义"},providerPriority:{undetectedHint_other:"{{count}} 个提供方在此未检测到——保留顺序,可用前将跳过。",undetectedHint_one:"{{count}} 个提供方在此未检测到——保留顺序,可用前将跳过。",orderHint:"启动时按从上到下的顺序使用。",noMoreProviders:"未检测到其他 CLI 提供方",selectProvider:"选择提供方…",moveDown:"下移",moveUp:"上移",keptUntilDetected:"保留在顺序中;在此机器上检测到之前,启动时会跳过。",emptyWarning:"未设置提供方顺序。未指定 CLI 提供方的启动将被拒绝。",available:"可用",notOnMachine:"未检测到",remove:"移除",addCliLabel:"添加可用的 CLI 提供方",addProvider:"添加提供方"},coordinatorPrompts:{saveFailed:"无法保存",loadFailed:"无法加载协调器提示",save:"保存",saved:"已保存",saving:"保存中…",appendPlaceholder:"(空——此层不追加内容)",overridePlaceholder:"(空——使用默认基础提示)",placeholdersHint:"可用的占位符:",resetHint:"将字段留空并保存即可移除(恢复默认)。",intro:"自定义此守护进程的 Mesh 协调器会话所接收的提示。",loading:"加载中…",connectDaemon:"连接守护进程后即可编辑协调器提示。",overrideDesc:"<strong>Override</strong> 会替换该 CLI 的守护进程内置基础提示词。",appendDesc:"<strong>Append</strong> 会在胜出的基础提示词之后追加。",overrideLabel:"覆盖",appendLabel:"追加",expandLabel:"编辑提示词",collapseLabel:"收起",customizedBadge:"自定义",collapsedNone:"无自定义提示词 — 正在使用守护进程默认值。",tabsAriaLabel:"协调器提示词提供方",sectionTitle:"协调器提示词",sectionDescription:"本机网格协调器会话按 CLI 划分的基础提示词。网格级提示词位于 Repo Mesh 页面。"},appearance:{modeSystem:"跟随系统",modeLight:"浅色",modeDark:"深色",modeLabel:"模式",themeLabel:"主题",mobileLabel:"移动端",chatLabel:"聊天"},chatActivity:{rowLabel:"在聊天中显示智能体活动",descriptionOn:"工具调用、终端输出和思考过程将显示在聊天消息之间。",descriptionOff:"仅显示对话。工具调用、终端输出和思考过程将保持隐藏。"}},x={chatHistory:"聊天历史",startNewChat:"+ 开始新的聊天会话",creating:"创建中...",searchPlaceholder:"搜索标题或预览",filterWorkspace:"按工作区筛选",filterModel:"按模型筛选",sortRecent:"最新优先",sortOldest:"最早优先",sortMessages:"消息最多",resumeReadyOnly:"仅可恢复的",untitledSession:"未命名会话",noSavedPreview:"尚无保存的预览",workspaceUnknown:"工作区未知",selectedWorkspaceSuffix:" · 已选工作区",msgCount:"{{count}} 条消息",statusActive:"活跃",statusMissingWorkspace:"缺少工作区",statusResumeSelectedWorkspace:"在所选工作区中恢复",statusResuming:"正在恢复…",statusResume:"恢复",noMatchingHistory:"没有符合这些筛选条件的已保存历史记录。",noRecentChats:"未找到最近的聊天会话。",refreshHistory:"刷新历史记录",refreshing:"正在刷新…",confirmSwitchTitle:"切换会话?",confirmSwitchDescription:"切换到“{{target}}”?这将离开当前视图。",confirmSwitchAction:"切换"},N={gallery:{next:"下一个视图",previous:"上一个视图",slides:{overview:"任务与动态 —— 在手机上查看",tasks:"跨工作节点的任务队列",map:"节点与分支的实时地图",desktop:"同一网格的桌面视图"}},theme:{system:"跟随系统主题",light:"浅色主题",dark:"深色主题"},nav:{home:"ADHDev 首页",mesh:"Mesh",what:"功能",agents:"智能体",pricing:"定价",install:"安装",github:"GitHub",docs:"文档",getStarted:"开始使用",toggleMenu:"切换菜单",mainNavigation:"主导航"},hero:{badge:"Claude Code、Codex、Cursor 等 —— 覆盖你的所有机器",title:"为你的编码智能体打造的控制平面。",subtitleInstall:"在<os></os>上安装 ADHDev。",subtitlePlace:"用你的<device></device>",subtitleAsk:"让<coordinator></coordinator>把<worker></worker>派去<verb></verb>你的仓库。",subtitleFrom:"<place></place>,",anywhere:"随时随地",subtitleLand:"在一个界面看到每台机器上的每个智能体,共用一个任务队列,只有通过测试的工作才会进入 main。",axes:{os:["Mac","Windows","Linux"],place:["在地铁上","在咖啡馆","在父母家","在床上","在沙发上","在花园里","在副驾驶座上","在渡轮上","在健身房","在集装箱里","在月球上","在服务器机架旁"],device:["台式机","笔记本电脑","平板电脑","手机"],verb:["调试","构建","测试","审查"]},copyInstall:"复制安装命令:{{cmd}}",copied:"已复制",copy:"复制",getStarted:"开始使用",orInstall:"或安装 CLI",openSource:"在 GitHub 上开源",joinDiscord:"加入 Discord",selfHost:"支持自托管",demoDesktop:"ADHDev 指挥中心跨多台机器驱动实时智能体会话",demoPush:"ADHDev 移动推送通知与一键批准"},mesh:{sectionTitle:"互不干扰的并行智能体。",sectionSubtitle:"启动并行智能体是简单的部分 —— 如今每个工具都能做到。难的是之后:十个分支仍需验证和合并。Refinery 无人值守地替你完成这些,让完成的工作抵达 main,而不是堆在你的审阅队列中。",refineryHighlight:"Refinery",refineryTitle:"完成的工作落地到 main —— 无人值守",refineryDesc:"启动十个并行智能体谁都会。Refinery 会根据你仓库自己的门禁(typecheck、测试、lint)验证每个工作树,核对补丁等价性,发布子模块提交,仅在 main 未移动时变基后合并,并自动清理。绝不 force-push。任何含糊之处都会被退回审阅,而不是被合并。",asyncHighlight:"异步编排",asyncTitle:"你只需与一处对话。其余交给它运行。",asyncDesc:"把工作交给一个协调器,它便会在事件循环上驱动跨多台机器的多个工作节点 —— 仅在完成、批准或状态事件到达时才响应。无需轮询,也没有一个个智能体窗口需要盯着。不同于需要盯着每个智能体会话的桌面应用,这里协调器等待事件,因此你无需一直守着。",crossPlatformHighlight:"跨平台开箱即用",crossPlatformTitle:"Mac、Windows、Linux —— 同时并行",crossPlatformDesc:"用一个标签(os=darwin、os=win32、os=linux)即可将任务路由到指定 OS 节点。一条提示词即可在你已有的异构机器上并行派发跨平台构建、测试或验证任务。无需配置 SSH 或虚拟机 —— 只需已连接的守护进程即可。",monoHighlight:"Monorepo 感知",monoTitle:"即便有 git submodule 也安全",monoDesc:"真实的生产仓库会嵌套子模块 —— 而这恰恰是幼稚的自动合并崩溃之处。Refinery 具备子模块感知能力:它以子模块提交的可达性为门禁,判断补丁等价性,并原子地更新指针。本项目本身就是一个根 + 两个子模块的 monorepo,每天都以这种方式收敛。",crossHighlight:"交叉核查",crossTitle:"共识胜过单一意见",crossSubtitle:"一个问题,多个独立智能体",crossDesc:"由协调者将同一个只读问题同时发给多台机器和多个模型,并比较它们一致与分歧之处。比单个智能体的看法更可靠。",tryMesh:"试用 Repo Mesh →",seePlans:"查看方案",availableOn:"连接机器后,在 <strong>Repo Mesh</strong> 页面即可开始使用。",readGuide:"阅读指南"},compare:{sectionTitle:"如今并行智能体无处不在,让它们互不冲突才是难点。",sectionSubtitle:"本地 CLI 会启动子智能体;桌面编排器以原生 UI 跨工作树分发工作。两者都止步于分支 —— 审查与合并留给你自己。下面是对比,包括各自更适合的场景。",colLocalCli:"本地 CLI + 子智能体",colDesktop:"桌面编排器",colAdhdev:"ADHDev Repo Mesh",rowLandsMain:"让完成的工作落地到 main",rowLandsMainLocalCli:"你需要手动运行门禁并合并",rowLandsMainDesktop:"并行化工作,然后把分支交给你审阅",rowLandsMainAdhdev:"Refinery 运行你仓库的门禁,核对补丁等价性,并仅在 main 未移动时变基后合并 —— 无人值守,绝不 force-push",rowSubmodules:"对 git submodule 安全",rowSubmodulesLocalCli:"没有能感知它们的合并自动化",rowSubmodulesDesktop:"有工作树并行,但合并要靠你自己做对",rowSubmodulesAdhdev:"子模块感知的收敛:可达性门禁、补丁等价性检查、原子指针更新 —— 每天在本 monorepo 上自用验证",rowAsync:"与一处对话,异步",rowAsyncLocalCli:"一次一个会话,同步进行",rowAsyncDesktop:"你需要亲自监督每个智能体窗口",rowAsyncAdhdev:"一个协调器在事件循环上驱动每个工作者 —— 它等待完成/批准事件,你无需轮询或照看",rowMultiMachine:"多台物理机器",rowMultiMachineLocalCli:"仅限单台主机的进程",rowMultiMachineDesktop:"被绑定在它所运行的那台机器上",rowMultiMachineAdhdev:"通过P2P连接的远程守护进程 — Mac、Windows和Linux节点组成一个网格,无需SSH配置",rowParallelBranch:"隔离分支的并行工作",rowParallelBranchLocalCli:"子智能体共享一个工作树 —— 并发写入会冲突",rowParallelBranchDesktop:"每个任务一个 git worktree —— 核心优势",rowParallelBranchAdhdev:"每个节点一个 git worktree —— 跨机器并行,而不只是跨核心",rowBrowser:"从浏览器或手机驱动",rowBrowserLocalCli:"你必须守在终端前",rowBrowserDesktop:"原生桌面应用 —— 你得坐在那张桌子前",rowBrowserAdhdev:"Web 优先:从任何浏览器或手机控制会话并批准",rowNativeApp:"原生桌面应用",rowNativeAppLocalCli:"仅限终端",rowNativeAppDesktop:"精致的原生窗口 —— 用起来确实更舒适",rowNativeAppAdhdev:"我们是 Web 优先 —— 一个浏览器标签页,而非原生应用",rowRestarts:"能挺过重启与上下文丢失",rowRestartsLocalCli:"状态存于会话中 —— 关闭即丢失",rowRestartsDesktop:"状态绑定于应用进程",rowRestartsAdhdev:"任务持久化到磁盘,并在协调器或守护进程重启后恢复 —— 仅追加的审计轨迹",rowCrossCheck:"交叉核查答案",rowCrossCheckLocalCli:"单个智能体的看法,没有第二意见",rowCrossCheckDesktop:"并行工作,单一裁定",rowCrossCheckAdhdev:"协调者将同一个只读问题发给不同机器 × 提供方的智能体,并比较它们的分歧之处",footnote:"对于单台机器、单个分支、一次性任务 —— 带子智能体的本地 CLI 更轻量且效果很好,原生桌面编排器坐起来也更舒适。当工作跨机器和分支扇出、需要挺过重启并应自动落地到 main 时,Repo Mesh 才真正显出价值 —— 无论你身在何处都能掌控。"},what:{sectionTitle:"任意智能体,自由混用",sectionSubtitle:"设计上厂商中立。在 Mac 上运行 Claude Code,在 Windows GPU 机器上运行 Codex,用 Cursor CLI 做审阅 —— 都在同一个网格中,从同一个仪表盘驱动。切换厂商无需切换平台。",cliHighlight:"CLI 智能体",cliTitle:"从 Web 驱动任何终端智能体",cliDesc:"Claude Code、Codex CLI、Cursor CLI、Antigravity CLI、Grok、Kimi 和 OpenCode —— 通过 PTY 适配器在你的机器上启动,具备完善的恢复与重连,由你的浏览器驱动。即时发送提示并提供视觉上下文(粘贴、拖放,或一次上传多张图片)。",uiHighlight:"一个 UI",uiTitle:"同一个仪表盘,任意设备",uiDesc:"在 adhf.dev 云端托管 —— 无论你在办公桌前还是外出,都可从笔记本或手机驱动每个智能体。",ideHighlight:"IDE 智能体",ideTitle:"此外:接入运行中的编辑器",ideDesc:"Cursor、VS Code、VSCodium、Windsurf、Antigravity、Kiro、PearAI、Trae。读取实时聊天、发送提示、切换会话、捕获截图。",p2pHighlight:"属于你,端到端",p2pTitle:"P2P 优先:你的数据归你所有",p2pDesc:"聊天、命令和截图通过 WebRTC 在你的浏览器与守护进程之间直接传输,你的代码绝不经过服务器。云端只负责登录、连接建立和会话状态。唯一的例外:审批推送通知会包含最多 80 个字符的待审批内容。"},oss:{sectionTitle:"开源且可自托管",sectionSubtitle:"守护进程和仪表盘采用 AGPL-3.0,可在 GitHub 上获取。在任意机器或服务器上自行运行 —— 无需账户。",github:"GitHub",selfHostDocs:"自托管文档"},agents:{sectionTitle:"支持的智能体",sectionSubtitle:"{{ides}} 个内置 IDE 集成、{{clis}} 个内置 CLI 智能体,以及 {{extensions}} 个 IDE 常驻扩展智能体。提供方脚本位于 <code>adhdev-providers/</code> —— 在 <code>~/.adhdev/providers/</code> 下添加你自己的脚本。",tierTested:"已测试",tierTestedDesc:"针对真实应用 + 版本验证过",tierCommunity:"社区",tierCommunityDesc:"内置且由社区支持",groupIdes:"IDE",hintIdes:"通过 Chrome DevTools Protocol 接入。可读取聊天、发送提示词、切换会话、截图。",groupCli:"CLI 代理",hintCli:"通过 PTY 适配器驱动,支持恢复与重连。",groupExtensions:"IDE 内扩展代理",hintExtensions:"为运行在其他 IDE 内的代理提供 CDP webview 接入。"},pricing:{sectionTitle:"随代理规模增长的简单定价",sectionSubtitle:"在一台机器上免费开始。两台选 Pro,五台选 Ultra。无需按席位计算,无需联系企业销售 — 只有下面这些方案。",mostPopular:"最受欢迎",upgradeToPro:"升级到 Pro",footnote:"价格以美元计,不含适用税费。想自托管?守护进程和仪表盘均为开源。",plans:{free:{period:"永久",tagline:"从任何地方操控一台机器所需的一切。",cta:"免费开始",features:{machine:"一台机器,单条命令即可配对",p2p:"P2P 聊天、命令、截图、远程输入",providers:"全部提供方 — CLI 和 IDE 代理",push:"审批和完成的推送通知",share:"一个共享会话链接"}},pro:{period:"/月",tagline:"两台机器,让 Repo Mesh 跨两台机器运行智能体 —— 并发会话也更多。",cta:"开始 7 天 Pro 试用",features:{machines:"2 台机器 — 两台都能运行代理",p2p:"更多并发 P2P 会话",push:"无限推送通知",share:"更多共享会话"}},ultra:{period:"/月",tagline:"Pro 的全部功能,规模更大 — 更多机器和更高上限,适合繁重的并行工作。",cta:"选择 Ultra",features:{machines:"5 台机器 — 统一价格,而非按席位",everything:"Pro 的全部功能",p2p:"最高的并发 P2P 会话数",screenshots:"每日截图时长无限制",webhooks:"更高的 API 调用限额",share:"更多共享会话"}}}},install:{sectionTitle:"三步搭建可用的仪表盘",sectionSubtitle:"无需配置文件。无需接入 API 密钥。ADHDev 不管理代理认证 — 每个工具各自保管其登录。",selectOs:"选择操作系统",osUnix:"macOS / Linux",osWindows:"Windows",copyInstall:"复制安装命令:{{cmd}}",copied:"已复制",copy:"复制",platformNote:"macOS 和 Linux 使用 Unix 脚本,Windows 使用 PowerShell 脚本。三者都在日常使用中。",arrow:"→",steps:{step1:{title:"安装守护进程",desc:"一条命令即可安装守护进程和 adhdev CLI — 这是你用来配对机器并启动守护进程的启动器(不要与它所驱动的 CLI 代理混淆,如 Claude Code 或 Codex)。同一个二进制文件同时支持云端和独立模式。"},step2:{title:"关联一台机器",desc:"用 GitHub 或 Google 登录一次,守护进程便会自动配对 — 无需复制任何令牌。"},step3:{title:"操控你的代理",desc:"从仪表盘启动 Claude Code、Codex CLI、Cursor CLI、Antigravity CLI、Kimi 等代理。读取聊天、发送提示词、提供视觉上下文(粘贴、拖放或一次上传多张图片)、审批操作并切换会话。"}}},cta:{headline:"让每个智能体、每台机器都排在同一个队列后面。",subtitle:"一条命令、一个守护进程、你已经在用的每一个智能体。把工作放进队列,只有通过测试的才会进入 main。",getStarted:"开始使用 →",github:"GitHub",discord:"Discord"},footer:{docs:"文档",github:"GitHub",discord:"Discord",dashboard:"仪表盘",terms:"条款",privacy:"隐私",contact:"联系我们",copyright:"© {{year}} RacoLab. 保留所有权利。"},imagePaste:{sectionTitle:"粘贴一张截图,另一台机器上的终端智能体立刻就能看到。",sectionSubtitle:"在笔记本或手机上截图,粘贴到聊天里,运行在另一台机器终端里的 CLI 智能体就会把它当作视觉上下文接收 —— 无需倒腾文件,也无需 SSH。可粘贴、拖放,或一次上传最多 5 张图片(每张 10MB)。",point1:"从剪贴板粘贴、拖放,或上传",point2:"最多 5 张图片,每张 10MB",point3:"送达你任意机器上的 PTY 终端智能体",step1Label:"粘贴图片,输入问题",step2Label:"发送 —— 智能体立即处理",step3Label:"看到图片并给出回答"},mobile:{sectionTitle:"离开工位,智能体照样继续。",sectionSubtitle:"当智能体需要批准或完成时,手机会收到推送通知。点开、批准或拒绝,再在聊天里追加指示 —— 无论你在哪,都在移动端仪表盘上完成。",point1:"批准或完成时推送通知",point2:"一键批准或拒绝",point3:"在聊天里追加指示,然后收起手机",notificationLabel:"用于智能体批准的移动推送通知",resumeLabel:"在移动端仪表盘上批准并追加指示",deviceShotLabel:"真机 iOS 锁屏,显示一条 ADHDev 审批推送,内含 Claude Code 准备执行的 Bash 命令",deviceShotCaption:"真机 — 手机上收到的真实推送通知",point4:"无需端口转发、VPN 或 DMZ —— P2P 加 TURN 中继,咖啡馆、手机热点、台式机或笔记本,只要能上网就能连接"},brain:{sectionTitle:"每个任务用对的模型,跑在还有余量的订阅上。",sectionSubtitle:"把任务标记为简单、中等或困难,网格就会套用对应的预设 —— provider、model 和思考预算。每台机器还会读取各订阅 5 小时和每周额度的剩余量:快用完的套餐会被跳过,下次重置时会白白过期的余量优先用掉。",point1:"基于难度的预设:简单 / 中等 / 困难",point2:"每个预设选定 provider、model 和思考等级",point3:"自动避开额度快用完的套餐"},scenario:{sectionTitle:"一句话。Mac构建,Windows测试,main落地。",sectionSubtitle:"真实会话的三个步骤:你把要做的事说一遍,智能体在多台机器上并行工作,完成的代码抵达main——你无需守在终端前。",step1Label:"描述要做的事",step1Desc:"用一句话告诉它要构建什么。无需配置,无需逐台机器设置。",step2Label:"智能体并行运行",step2Desc:"工作同时分派到你的Mac和Windows机器——各自在自己的分支上,运行你项目的测试和检查。",step3Label:"完成的代码落地main",step3Desc:"检查通过后,工作会自动、安全地合并进main。拿不准的会留给你审查——绝不force-push。",caveat:"Mac、Windows 和 Linux 机器都在日常使用中。"}},W={submit:"提交",submitting:"提交中…",cancelAria:"取消问题",actionRequired:"需要操作",selectAllThatApply:"选择所有适用项",multipleChoice:"多选",singleChoice:"单选",other:"其他",answersRequired_one:"还有{{count}}个问题需要回答",answersRequired_other:"还有{{count}}个问题需要回答",errorReviewPageNotFocused:"终端正在显示其他画面,回答未能提交——请检查终端画面,或关闭此窗口后重试。",errorReviewUnconfirmed:"回答按键已送达终端,但问题仍显示在屏幕上——回答可能尚未提交。请检查终端:如果未提交,请直接在终端中回答;从这里重新发送可能会提交两次。"},E={diffPreview:{truncatedAfter:"以查看完整输出。",truncatedBefore:"更改已截断——请在本地运行",empty:"没有可显示的更改。",binary:"二进制文件——无法显示更改。",loading:"正在加载更改…"},changeList:{stagedHint:"已暂存",noChanges:"没有已更改的文件。",binaryBadge:"bin",truncatedNote:"文件列表已截断 — 在本地运行 <code>git status</code> 查看完整输出。"},statusDialog:{working:"处理中…",includeUntracked:"包含未跟踪的文件",messageRequired:"消息(必填)",fileFallback:"文件",confirmRevert:"撤销 {{path}} 的更改?",confirmPop:"恢复最近的储藏?",confirmStash:"储藏更改",confirmCheckpoint:"创建检查点提交",copySummary:"复制摘要",copied:"已复制到剪贴板",checkoutSelected:"撤销所选",selectFileToRevert:"选择要撤销的文件",revertFile:"撤销 {{path}} 的更改",popStash:"恢复储藏",noStashes:"没有可恢复的储藏",popHint:"恢复最近的储藏",resolveBeforePop:"恢复储藏前请先解决冲突",stash:"储藏",stashHint:"暂时搁置当前更改(git stash)",resolveBeforeStash:"储藏前请先解决冲突",checkpoint:"检查点",checkpointHint:"创建一个 git 提交作为检查点",resolveBeforeCheckpoint:"创建检查点前请先解决冲突",selectFile:"选择文件以查看其更改",noDiffData:"没有差异数据。",loading:"加载中…",fileCount_other:"{{count}} 个文件",fileCount_one:"{{count}} 个文件",stashed:"已储藏 {{count}}",deleted:"已删除 {{count}}",untracked:"未跟踪 {{count}}",modified:"已修改 {{count}}",staged:"已暂存 {{count}}",behind:"落后 {{count}}",ahead:"领先 {{count}}",refresh:"刷新",openOnGithub:"在 GitHub 上打开",title:"Git 状态",conflicts:"冲突",clean:"干净"}},U={machineProviders:"机器 → 提供方",perProviderIntro:"按提供方设置提醒和自动批准:",mixed:"(部分关闭)",agentAlert:{noProgressDesc:"当代理一段时间没有进展时提醒。",noProgress:"无进展",approvalDesc:"当代理等待你的批准时提醒。",approval:"需要批准"},agentAlertsDesc:"应用于所有在线机器上的全部提供方。单个提供方可在“机器 → 提供方”中调整。",permissionUnsupportedChip:"不支持",permissionBlockedChip:"已阻止",permissionNeededChip:"需要权限",permissionAllowedChip:"已允许",title:"通知",subtitle:"浏览器、推送和代理提醒",sectionBrowserAlerts:"浏览器提醒",masterToggleLabel:"通知",masterToggleDesc:"所有提醒的总开关",browserNotificationsLabel:"浏览器通知",browserNotificationsDesc:"标签页处于非活动状态时的桌面提醒",browserBackgroundInfo:"只有当此仪表盘标签页在后台保持打开时,浏览器提醒才会触发。",browserBackgroundInfoWithPush:"只有当此仪表盘标签页在后台保持打开时,浏览器提醒才会触发。如果关闭标签页,请改用推送通知。",permissionDefault:"此浏览器尚未授予通知权限。请允许以接收浏览器提醒。",allowNotifications:"允许通知",permissionDenied:"浏览器通知已在站点或浏览器设置中被屏蔽。请在那里重新启用以接收桌面提醒。",permissionUnsupported:"此浏览器无法在此处显示桌面通知。请使用受支持的桌面浏览器,或在可用时依靠推送通知。",completionAlertsLabel:"完成提醒",completionAlertsDesc:"代理完成任务时通知",approvalAlertsLabel:"审批提醒",approvalAlertsDesc:"代理需要审批时通知",connectionAlertsLabel:"连接提醒",connectionAlertsDesc:"机器断开连接时提醒",allDisabled:"所有通知均已关闭。",sectionProviderAlerts:"代理提醒",loading:"加载中...",refresh:"刷新",noOnlineMachines:"没有在线机器。",loadingProviderSettings:"正在加载提供方设置...",soundEffectsLabel:"音效",soundEffectsDesc:"代理完成或需要审批时播放声音"},B={pageTitle:"审批",pageSubtitle:"等待你决定的会话。",pending:"待处理",loading:"正在加载审批…",emptyHint:"任何已连接机器的审批请求都会自动显示在这里。"},O={title:"引导式 Mesh 设置",close:"关闭",machines:{title:"选择机器",description:"选择要设置的 Mesh,并连接应运行其任务的机器。新建 Mesh 也会将所选工作区作为第一个节点连接进来。",noMachinesDescription:"尚未注册任何机器。请先在机器上安装守护进程——登录后会自动配对。",noMachinesFallback:"启动本地守护进程后回到这里。",nodeCount:"{{count}} 个节点",createNew:"创建新 Mesh",loadingMeshes:"正在加载 Mesh…",meshName:"Mesh 名称",machine:"机器",machineSelectPlaceholder:"选择机器",workspace:"工作区(仓库路径)",workspacePlaceholder:"/path/to/repo",workspaceSelectPlaceholder:"选择工作区",workspaceCustom:"手动输入路径…",pickFromKnown:"从已知工作区中选择",planChecking:"正在检查工作区…",planOk:"工作区看起来正常:{{identity}}",planExists:"此工作区已属于现有 mesh —— 请将其作为节点添加到该 mesh,而不是创建新 mesh。",creating:"创建中…",create:"创建 Mesh",createFailed:"创建失败",attachTitle:"连接另一台机器",allMachinesAttached:"所有已注册的机器都已连接到此 Mesh。",attaching:"连接中…",addMachine:"添加机器"},quotaPolicy:{blankMeansDefaultShort:"留空 = 默认值",title:"基于配额的路由",description:"当节点上报其 AI 提供方的剩余配额时,协调器可以跳过接近耗尽的节点,并优先选择余量更多的节点。下列阈值决定何时生效。缺失或过期的读数始终会被忽略,因此不会因为陈旧数据而排除节点。",sessionMin:"会话下限",sessionMinHint:"跳过短滚动窗口剩余量低于此值的提供方。",weeklyMin:"每周下限",weeklyMinHint:"跳过每周窗口剩余量低于此值的提供方。",resetImminent:"重置宽限",resetImminentHint:"若会话窗口将在此时间内重置,则忽略其余量不足。",staleAfter:"读数有效期",staleAfterHint:"仅作回退:读数在其窗口重置前始终有效;此时限仅适用于没有重置时间的读数。",spreadBonus:"余量偏好",spreadBonusHint:"对剩余配额更多者的偏好强度。不会覆盖任务难度匹配。",sessionAxisWeeklyHeadroom:"会话紧迫度的每周余量",sessionAxisWeeklyHeadroomHint:"仅当每周剩余配额达到或超过此值时,才优先处理即将重置的 5 小时会话窗口。未使用的 5 小时配额会永久失效,但在每周窗口已经吃紧时消耗它得不偿失。",minutes:"分钟",blankMeansDefault:"留空则使用默认值(显示为灰色的数值)。",useDefaults:"使用默认值",saving:"保存中…",errors:{notANumber:"请输入数字。",percentRange:"必须介于 0 和 100 之间。",negative:"不能为负数。"}},continueToMesh:"前往 Mesh"},q={dashboard:"仪表板",machines:"机器",notifications:"通知",mesh:"网格",marketplace:"市场",api:"API",webhooks:"Webhook",account:"账户",settings:"设置",docs:"文档",about:"关于",chats:"聊天"},G={controls:e,sessionStatus:t,language:o,common:i,connection:n,toast:a,notification:s,event:r,dashboard:l,cliStop:d,approval:c,chatControls:u,newSession:p,mobileInbox:h,mesh:m,chat:g,chatPane:b,chatInput:v,paneGroup:f,terminal:C,conversation:w,cliView:D,launch:y,standalone:T,cloud:k,app:S,chatList:P,screenshot:L,remote:A,sessionNav:I,sessionInfo:M,machine:H,sessionHost:R,sessionHostSurface:_,settings:F,historyModal:x,landing:N,interactivePrompt:W,git:E,notifications:U,approvals:B,setupWizard:O,nav:q};export{S as app,c as approval,B as approvals,g as chat,u as chatControls,v as chatInput,P as chatList,b as chatPane,d as cliStop,D as cliView,k as cloud,i as common,n as connection,e as controls,w as conversation,l as dashboard,G as default,r as event,E as git,x as historyModal,W as interactivePrompt,N as landing,o as language,y as launch,H as machine,m as mesh,h as mobileInbox,q as nav,p as newSession,s as notification,U as notifications,f as paneGroup,A as remote,L as screenshot,R as sessionHost,_ as sessionHostSurface,M as sessionInfo,I as sessionNav,t as sessionStatus,F as settings,O as setupWizard,T as standalone,C as terminal,a as toast};
|