lazyBoy/apps/web/src/locales/zh-TW.ts

239 lines
24 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/** Traditional Chinese UI copy. Keep keys stable when adding another locale. */
export const zhTW = {
sharedDesktop: "共同操作",
sharedNeedsUser: "{name} 已暫停等你完成畫面上的步驟。完成後按「完成,繼續」。",
doneContinue: "完成,繼續",
search: "搜尋", sharedComputer: "共用電腦", privateComputer: "私人電腦",
stopped: "已關閉", booting: "啟動中", running: "執行中", suspended: "休眠中", error: "發生錯誤",
openComputer: "開啟電腦", stopTask: "停止任務", takeControl: "取得控制", takeOverNow: "接手操作", releaseControl: "釋放控制", done: "完成", skip: "略過",
localWorkspace: "本機工作區", pinned: "已釘選", agentGroup: "Agent",
operationFailed: "操作失敗", loadFailed: "載入失敗", settingsFailed: "設定失敗", loginFailed: "登入失敗",
rememberFailed: "無法記住這則訊息", clipboardWriteBlocked: "瀏覽器封鎖剪貼簿寫入。",
newConversation: "新對話", workTools: "工作工具", computer: "電腦", memory: "記憶", plugins: "外掛程式", pluginShort: "外掛", botSettings: "機器人設定",
add: "新增", addBot: "新增機器人", addGroup: "新增群組", groups: "群組",
unreadMessages: "{count} 則未讀訊息", members: "{count} 位成員", hideHiddenItems: "隱藏已隱藏項目", showHiddenItems: "顯示已隱藏項目",
mcpConnected: "{count} 個 MCP 已連線", connectMcpServer: "接入 MCP server",
openOnPhone: "在手機開啟", settings: "設定", about: "關於", helpCenter: "說明中心", sendFeedback: "傳送意見回饋", logout: "登出", workspaceMenu: "工作區選單",
chooseBot: "選擇一個機器人", startRoomDiscussion: "和 {name} 開始討論", startBotWork: "和 {name} 開始工作", roomWillReply: "{names} 會一起回覆。",
botWelcome: "傳送訊息,讓它在自己的電腦上完成任務。", remembered: "已記住", remember: "記住", working: "{name} 正在工作…",
copyCode: "複製程式碼", copiedCode: "已複製", copyMessage: "複製", copiedMessage: "已複製",
anotherConversationQueued: "另一則對話正在執行,這則會排隊。",
workingStep: "{name} 正在工作… {step}", queuedMessages: "還有 {count} 則訊息排隊中",
pausedUserControl: "你正在操控畫面,{name} 已暫停。完成後按「釋放控制」,它會從目前畫面接著做(排隊中的訊息也會一起處理)。",
pausedNeedsUser: "{name} 需要你接手畫面(例如登入或驗證)。按「接手操作」處理,完成後再「釋放控制」。",
releaseAndContinue: "釋放控制並繼續", attachFile: "附加檔案", attachFileHint: "圖片會直接給模型看;其他檔案放到電腦 inbox兩小時後刪除",
attachTooMany: "一次最多 4 個附件", attachTooLarge: "單檔不能超過 10 MB", attachType: "這個檔案類型不能附加",
attachRemove: "移除 {name}", attachedFile: "附件 {name}", attachDrop: "放到這裡附加",
teachTask: "教它一項任務", teachTaskHint: "你示範一次,它學成技能", teachNeedsBot: "先選擇一個機器人", taughtSkills: "已學會的技能",
goalCommandHint: "持續規劃並執行,直到驗證完成或需要你介入",
searchSkills: "搜尋技能", noMatchingSkills: "沒有符合的技能",
teachDialogLead: "接下來畫面交給你操作,{name} 會在旁邊看:記錄你點了哪些控制項、輸入了什麼、去了哪些頁面,之後整理成一個「知道目的與流程」的技能,而不是死記座標。",
teachGoalLabel: "你要示範什麼?(一句話說目標)", teachGoalPlaceholder: "例如:到 STAR 訓練系統,把指定課程的影片看完並完成測驗",
teachTip1: "用平常的方式操作即可,不用刻意放慢;多餘的點擊會被忽略。", teachTip2: "會變動的值(搜尋字、名稱、日期)之後可以當作參數,做的時候先用實際例子。", teachTip3: "密碼欄位不會被記錄;遇到登入請先登好再開始示範。",
startDemo: "開始示範", finishDemo: "完成示範", teachingBadge: "示範中", teachingComposerHint: "示範中:做完按「完成示範」再送訊息",
teachingLive: "正在學:{goal}", teachingHint: "畫面已交給你,直接在右側(或放大)操作;做完按「完成示範」。", teachingCaptured: "已記錄 {count} 個動作",
distilling: "正在把「{goal}」的示範整理成技能…",
skillDraftTitle: "新技能草稿", skillDraftFrom: "從 {count} 個動作整理而來", skillName: "技能名稱", skillNamePlaceholder: "例如:完成 STAR 訓練課程",
skillInputs: "可變輸入", skillSteps: "步驟(依意圖描述,可修改)", moreSteps: "…還有 {count} 步", editSteps: "編輯步驟", skillCheck: "怎麼確認完成",
skillDistillFailed: "模型整理失敗,這是依動作直接列出的版本,建議修改後再儲存。", discard: "捨棄", testRun: "試跑", saveSkill: "儲存技能", messageTo: "傳訊息給 {name}", chooseConversationFirst: "先選擇對話", stopConversation: "停止對話",
editSkill: "編輯技能", editSkillFull: "完整編輯", runSkillNamed: "執行「{name}」", skillEditLead: "寫給機器人看的說明,用意圖與畫面上的文字描述,不要寫座標。每行一項。",
skillIntent: "意圖(這個技能要達成什麼)", skillWhenToUse: "使用時機", skillInputsLabel: "可變輸入(每行:名稱:說明|例:範例值)", skillInputsPlaceholder: "courseName課程名稱【TW】Workplace Bullying Prevention (2026)",
skillPreconditions: "前提(開始前要成立的條件)", skillStepsLabel: "步驟(每行一步,可用 → 接上預期看到的畫面)", skillStepsPlaceholder: "點「Next」翻頁 → 頁碼加一;若 Next 鎖住就等它啟用", skillHowToCheck: "怎麼確認完成", skillWhatToReturn: "做完要回報什麼", skillCautions: "注意事項(每行一項)",
deleteSkill: "刪除技能", deleteSkillConfirm: "確定刪除技能「{name}」?機器人之後就不會再認得它。", skillSaved: "已儲存",
exportSkill: "匯出", exportSkillHint: "下載成 JSON之後可以匯入到其他機器人",
importSkill: "匯入技能", importSkillHint: "從先前匯出的 JSON 檔加入技能",
skillImportInvalid: "這不是有效的技能檔。請選擇先前匯出的 JSON。",
collapseSidebar: "收合側欄", botComputer: "{name} 的電腦", dedicatedScreen: "獨立螢幕", enlarge: "放大",
userControlling: "你正在控制", aiReadOnly: "AI 操作中(唯讀)", readOnly: "唯讀", pasteClipboard: "貼上剪貼簿", copyDesktopClipboard: "複製桌面剪貼簿", moreActions: "更多操作",
unpin: "取消釘選", pin: "釘選", markUnread: "標示為未讀", enterGroupName: "輸入分組名稱", changeGroup: "變更分組", createOrMoveGroup: "建立/移入分組", removeFromGroup: "移出分組", unhide: "取消隱藏", hide: "隱藏", delete: "刪除",
chooseConversation: "選擇對話", deleteConversation: "刪除對話", clearConversation: "清除此對話",
clearConversationTitle: "清除此對話?", clearConversationDescription: "訊息會刪除。這個 Agent 的長期記憶會保留。", cancel: "取消", clearMessages: "清除訊息",
deleteConversationTitle: "刪除這則對話?", deleteConversationDescription: "這則對話會從列表消失。這個 Agent 的長期記憶會保留。",
avatarAppearance: "頭像外觀", avatarAppearanceHint: "顏色、形狀、表情與背景都可選,眼睛會跟著游標", color: "顏色", chooseColor: "選擇 {value}", customColor: "自訂顏色", shape: "形狀",
expression: "表情", background: "背景", bgNone: "無", bgCircle: "圓", bgSquircle: "方圓", bgSquare: "方",
exprIdle: "閒置", exprHappy: "開心", exprSad: "難過", exprMad: "生氣", exprSurprised: "驚訝", exprWink: "眨眼",
exprSleepy: "想睡", exprSmug: "得意", exprUnsure: "猶豫", exprScared: "害怕", exprLove: "喜歡", exprShy: "害羞",
exprSick: "不適", exprThinking: "思考",
name: "名稱", tags: "標籤",
tagsPlaceholder: "研究、設計、客服(用逗號分隔)", tagsLimit: "最多儲存 6 個標籤", shortTitle: "簡短標題", shortTitlePlaceholder: "例如:產品研究助理", description: "說明", descriptionPlaceholder: "說明這個機器人的用途與工作範圍",
saving: "儲存中…", saveSettings: "儲存設定", deleteBot: "刪除機器人",
memoryRevision: "第 {revision} 版",
memoryFromMessage: "從訊息儲存",
memoryFromAgent: "Agent 記下",
memoryFromManual: "手動新增/未記錄來源",
memoryDetails: "記憶來源與時間",
memoryCreated: "建立時間",
memoryUpdated: "更新時間",
memorySourceSession: "來源對話",
memorySourceMessage: "來源訊息",
memorySourceRun: "來源執行",
memoryAgentDisabled: "這位 agent 已停用記憶;既有內容仍會保留。",
memorySemanticReady: "可依語意搜尋記憶。",
memorySemanticUnavailable: "語意搜尋暫不可用,目前以文字比對,稍後會自動重試。",
memorySemanticBusy: "語意搜尋準備或運算中,忙碌時先以文字比對。",
memoryIndexedCount: "{total} 筆記憶中,{indexed} 筆已有語意索引。",
memoryOwner: "記憶屬於",
memoryChooseAgent: "讓哪位 agent 記住?",
memoryChooseAgentHelp: "這是群組訊息。選擇要保存這筆記憶的 agent。",
memoryViewIncluded: "查看當時帶入的記憶",
memoryLoadingIncluded: "讀取記憶…",
memoryHistoricalUnavailable: "此記憶已刪除,或歷史版本已清理。",
messageRunDetails: "執行紀錄與記憶",
memoryHelp: "清除對話不會刪這些。只存明確偏好或事實,不要存密碼。", enableLongTermMemory: "啟用長期記憶", addMemory: "新增記憶", memoryPlaceholder: "只儲存明確偏好或事實;密碼與 token 會被拒絕。",
memorySearch: "搜尋", filterMemory: "過濾記憶", noMemory: "還沒有長期記憶。對話裡講過的偏好,可以叫 Agent 記住,或你在這裡新增。", noMatchingMemory: "沒有符合的記憶。",
save: "儲存", edit: "編輯", clearAllMemoryConfirm: "確定清除全部記憶?", clearMemoryConfirm: "確定清除", clearAll: "全部清除",
mcpHelp: "點「選擇 MCP」從市集接入。標了需要金鑰的先填 token 才能連。本機 stdio 會在 API 容器裡啟動。", mcpNamePlaceholder: "例如github", mcpConnectFailed: "接入失敗,請檢查金鑰或稍後重試。",
command: "Command", commandPlaceholder: "npx 或 uvx 或完整路徑", arguments: "參數", environmentVariables: "環境變數 KEY=value", headers: "Headers KEY=value", connecting: "連線中…", connectMcp: "接入 MCP",
chooseMcp: "選擇 MCP", mcpPickerTitle: "選擇 MCP", mcpPickerLead: "從精選或官方市集挑一個,點下去接入。所有 Agent 都能用它的工具。",
searchMcp: "搜尋 MCP", mcpRemote: "遠端", mcpLocal: "本機", mcpAdded: "已接入", mcpNeedsKey: "需要金鑰",
mcpNoResults: "找不到符合的 MCP。換個關鍵字或改用自訂接入。", mcpCustom: "自訂接入", mcpBackToList: "回到列表",
mcpConnectNamed: "接入 {name}", mcpKeyHint: "這個 MCP 需要憑證才能連。",
noMcp: "還沒有 MCP。點上面的「選擇 MCP」從市集接入。", toolsCount: "{count} 個工具", disabled: "已關閉", disconnected: "未連線", noTools: "沒有可用工具", reconnect: "重新連線", disable: "停用", enable: "啟用",
preparingDesktop: "正在準備 Agent 的獨立桌面…", computerPreviewHint: "開啟電腦後,畫面會顯示在這裡。", bootingProgress: "啟動中…", restartComputer: "重啟", shutDownComputer: "關閉電腦", computerPower: "電腦選單", sharedPowerHint: "此為共用電腦,操作會影響使用它的所有 Agent。", stopAndTakeOver: "停止並接管", takeoverBusy: "請先停止任務,再接手滑鼠。",
hudBooting: "電腦啟動中…", hudWaking: "喚醒中…", hudConnecting: "連線中…", hudHandoff: "換手中…",
pasteToRemoteComputer: "貼到遠端電腦", pasteRemoteHelp: "把外面的文字貼在這裡,再送進 VNC。這個方式在區網 HTTP 也能使用。", pasteTextPlaceholder: "在此貼上文字…", pasteIntoVnc: "貼入 VNC",
botNamePlaceholder: "例如:研究助理", sharedComputerHint: "與其他機器人共用環境", privateComputerHint: "全新的獨立 Docker", create: "建立",
groupDescription: "拉進群組會開一個對話,選中的 Agent 都會在裡面發言。", groupName: "群組名稱", groupNamePlaceholder: "例如:產品研究", chooseBots: "選擇機器人(至少兩位)", creating: "建立中…", createGroup: "建立群組",
deleteGroup: "刪除群組", deleteNamed: "刪除 {name}", deleteGroupDescription: "群組對話會刪除。裡面的機器人與他們自己的對話、記憶都會保留。", deleteDedicatedBotDescription: "對話、私人電腦與其中的檔案都會永久刪除。", deleteSharedBotDescription: "對話會刪除,但共用電腦與其中的檔案會保留。",
phoneAccessDescription: "同一區網的手機用瀏覽器打開這個網址,再用同一個存取 token 登入。", localAddressWarning: "這是本機位址,手機打不開。請改成這台電腦的區網 IP例如 http://192.168.x.x:3101。",
close: "關閉", copied: "已複製", copyUrl: "複製網址", workspaceName: "工作區名稱", showHiddenBots: "顯示已隱藏的機器人", collapseRightSidebar: "收合右側欄",
workspaceSettingsHint: "機器人外觀、記憶與 MCP 外掛在右側分頁。這裡只改這個工作區的顯示。",
modelSettings: "模型", modelSettingsHint: "這裡的供應商與模型會套用到還沒單獨指定模型的機器人。",
modelProvider: "模型供應商", providerXai: "xAI", providerOpencodeGo: "OpenCode Go", providerOpenaiCompatible: "OpenAI 相容",
providerXaiHint: "Grok。金鑰從 console.x.ai 取得。",
providerOpencodeGoHint: "OpenCode Go 訂閱。金鑰從 opencode.ai/auth 取得。",
providerOpenaiCompatibleHint: "自架 vLLM、Ollama、LiteLLM 或其他 OpenAI 相容端點。",
apiKey: "API 金鑰", apiKeyPlaceholder: "sk-…", apiKeyStored: "已儲存金鑰,留空表示沿用。",
usingEnvKey: "目前會用環境變數 {name}。",
clearApiKey: "清除已存金鑰",
modelId: "模型", modelIdPlaceholder: "例如qwen2.5 或 llama3.1",
reloadModels: "重新載入模型列表",
baseUrl: "Base URL", baseUrlPlaceholder: "http://127.0.0.1:11434/v1",
baseUrlHint: "API 跑在 Docker 時,本機服務請填 host.docker.internal 而不是 localhost。",
workspaceModelHint: "先選供應商再填金鑰與模型。OpenAI 相容需要自己填端點。",
aboutDescription: "本機多 Agent 工作區。每個機器人有自己的 Linux 電腦,也可以拉進群組一起討論,並接入 MCP 工具。",
apiStatus: "API 狀態:{status}", statusNormal: "正常", statusUnavailable: "無法連線", statusChecking: "檢查中…",
helpBotsTitle: "機器人", helpBots: "左上角 新增機器人。點左側列進入對話。右鍵可以釘選、隱藏或刪除。", helpGroupsTitle: "群組", helpGroups: " → 新增群組,選至少兩位。傳一句話,裡面的 Agent 都會回。",
helpComputerTitle: "電腦", helpComputer: "右側「電腦」是這個 Agent 的獨立桌面。可以啟動、接管滑鼠鍵盤,或讓它自己操作。", helpMemoryTitle: "記憶", helpMemory: "清除對話不會刪長期記憶。可以叫 Agent 記住,或在右側「記憶」手動新增。",
helpMcpTitle: "MCP 外掛", helpMcp: "左下「外掛程式」接入 MCP server。連上的工具會顯示在畫面上對話時 Agent 可以使用。",
helpSkillsTitle: "技能", helpSkills: " → 教它一項任務,示範一次就會整理成技能。示範結束後可以匯出 JSON或把別人的技能檔匯入換一個機器人也適用。",
helpAttachTitle: "附件", helpAttach: " → 附加檔案。圖片這則訊息就會給模型看,不會存進對話紀錄。若機器人電腦要打開原檔,會暫放 inbox/,兩小時後自動刪,避免把磁碟塞滿。",
helpShortcutsTitle: "快捷鍵", helpShortcuts: "Enter 送出Shift+Enter 換行。正在回覆時送出鈕會變成停止。通話中空白鍵插話Esc 掛斷。",
helpVoiceTitle: "語音通話", helpVoice: "1:1 對話標題列的電話可以打給機器人。用說話下指令,它會去操作自己的電腦;能不能做會立刻用聲音回你,中途可以插嘴改指令。",
call: "通話", hangUp: "掛斷", interrupt: "插話", listening: "正在聽你說…", speaking: "正在說話…",
callConnecting: "連線中…", workingOnComputer: "正在電腦上做…", callPrompt: "直接說要做什麼。沉默一下就會送出。",
callShortcuts: "空白鍵插話 · Esc 掛斷", callFailed: "通話中斷了。", micDenied: "需要麥克風權限才能通話。", micFailed: "麥克風打不開。",
callAudioFailed: "通話聲音出問題了,請掛斷後重打。",
takeOverToContinue: "需要你接手畫面。", setUpVoiceToCall: "先設定語音才能通話",
voiceEnabled: "啟用語音通話", voiceEnabledHint: "預設關閉。開啟並儲存後,才能使用通話按鈕。", voiceDisabledHint: "語音通話尚未啟用,請到「設定 → 語音」開啟。",
voiceSettings: "語音", voiceSettingsHint: "語音跟文字模型分開。xAI 若已有聊天金鑰,通常不用再填一次。按分鐘計費。",
voiceProvider: "語音供應商", voiceModel: "語音模型", voiceName: "聲音",
providerOpenai: "OpenAI", providerXaiVoiceHint: "Grok Voice。即時通話可插嘴並把電腦工作交給文字模型去做。",
providerOpenaiVoiceHint: "OpenAI Realtime。同一套通話介面之後可切換。",
voiceReusesTextKey: "目前會重用文字模型已存的 xAI 金鑰。",
feedbackDescription: "寫下問題、想法或想要的功能。這是本機工作區,內容會複製到剪貼簿,方便你貼到 issue 或訊息裡。", feedbackPlaceholder: "例如:群組對話希望可以指定誰先發言…", copyContent: "複製內容",
loginTitle: "登入 LazyBoy", loginDescription: "輸入伺服器設定的共享存取 token。", accessToken: "存取 token", verifying: "驗證中…", login: "登入",
agentComputer: "Agent 電腦", url: "URL", stdio: "stdio", http: "HTTP", sse: "SSE",
argumentsPlaceholder: "-y @modelcontextprotocol/server-github", environmentVariablesPlaceholder: "GITHUB_TOKEN=…",
urlPlaceholder: "https://mcp.example.com/mcp", headersPlaceholder: "Authorization=Bearer …",
back: "返回", accounts: "帳號", accountsHelp: "存在這台機器人自己的保險箱。密碼只在這裡填,不會進聊天、也不會給模型看。排程碰到登入牆時會自動填表。",
accountSite: "站名", accountSitePlaceholder: "例如Gmail", accountHost: "網址或網域", accountHostPlaceholder: "mail.google.com",
accountUsername: "帳號", accountPassword: "密碼", accountPasswordKeep: "留空表示不改密碼",
accountNotes: "備註", accountNotesPlaceholder: "選填,例如:公司信箱",
addAccount: "新增帳號", noAccounts: "還沒有已存帳號。排程若要自動登入,先在這裡加一筆。",
loginNeedsYou: "需要你在鍵盤上登入", loginOpenScreen: "打開它的畫面", loginWhy: "登入之後:{why}",
scheduleChip: "已排程", scheduleRunChip: "排程執行",
schedules: "排程", schedule: "排程", schedCreate: "新增排程", schedEmpty: "還沒有排程。對話裡說「以後每天 9 點…」或按+。",
schedPaused: "已暫停", schedRunNow: "立刻跑", schedRunning: "執行中…", schedActive: "啟用",
schedNamePlaceholder: "例如:早報摘要", schedInstruction: "每次要做什麼",
schedInstructionPlaceholder: "例如:打開信箱,把未讀摘要寫回對話。",
schedWhen: "何時執行", schedEveryHour: "每小時", schedEveryDay: "每天", schedWeekdays: "工作日",
schedEveryWeek: "每週一", schedEveryMonth: "每月", schedInterval: "間隔", schedAdvanced: "進階 cron",
schedMinutes: "分鐘", schedHours: "小時", schedDays: "天",
computerLoginHint: "在這台機器人自己的瀏覽器登入。Session 留在它的電腦,不要把密碼打在聊天裡。",
language: "介面語言", languageZh: "繁體中文", languageEn: "English",
languageHint: "介面語言。對話內容與 Agent 回覆不會自動翻譯。",
helpLanguageTitle: "語言", helpLanguage: "在左下角工作區選單的設定裡,可切換繁體中文與英文。",
clipboardSynced: "剪貼簿已同步", clipboardSyncBlocked: "瀏覽器未允許同步,請按複製按鈕",
clipboardPasted: "已貼上文字", clipboardPasteFailed: "貼上失敗,請確認已接管電腦後重試",
clipboardCopiedSelection: "已複製選取文字", clipboardCopyFailed: "複製未同步;請按複製按鈕,或在遠端使用 Ctrl+Shift+C",
slashMode: "執行模式", slashFileSkill: "檔案技能", slashList: "指令與技能",
schedIntervalHint: "固定經過時間;一天為 24 小時,不因月底或日光節約時間重置。",
schedInvalidInterval: "間隔必須為 1365 的整數",
schedHumanDaily: "每天 {time}", schedHumanWeekdays: "工作日 {time}",
schedHumanWeekly: "每週一 {time}", schedHumanMonthly: "每月 {time}",
schedHumanInterval: "每 {n} {unit}",
stepThinking: "思考中", stepWatchingScreen: "看畫面", stepUsingSkill: "讀取技能 {name}",
stepFillingLogin: "填入已存帳號", stepListingAccounts: "列出已存帳號",
stepScheduling: "排程 {name}", stepListingSchedules: "列出排程", stepCancelingSchedule: "取消排程",
stepRecheckingScreen: "重新確認畫面",
schedEveryMinute: "每分鐘",
schedHumanEveryMinutes: "每 {n} 分鐘", schedHumanEveryHours: "每 {n} 小時",
schedHumanMonthlyDay: "每月 1 日 {time}",
schedHumanElapsed: "每隔 {n} 分鐘(固定間隔)",
schedCalendar: "日曆排程:{expr}",
teachInProgress: "示範進行中:先按「完成示範」或「取消」,再送訊息。",
aiTimeout: "AI 回應逾時150 秒)",
resumeMidTask: "做到一半,需要你決定",
resumeBudget: "輪次用盡,尚未確認完成",
resumeLoop: "卡在同一個動作,需要你給方向",
resumeProgress: "{turns}/{limit} 輪",
resumeContinue: "繼續",
resumeStop: "就到這裡",
resumeSent: "繼續,把它做完。", monitorTitle: "即時記錄",
monitorQueued: "排隊中",
monitorTurnOf: "第 {turn}/{limit} 輪",
monitorTurn: "第 {turn} 輪",
monitorElapsed: "已運行 {time}",
monitorNow: "現在:{step}",
monitorEmpty: "還沒有記錄。開始動手後會一條條出現。",
monitorLoadFailed: "記錄載入失敗",
monitorCopy: "複製記錄",
monitorCopied: "已複製",
monitorPinHint: "滑鼠移開會自動收起來",
monitorPinned: "已釘住(按 Esc 關閉)",
monitorClose: "關閉",
monitorKindModel: "模型",
monitorKindTool: "動作",
monitorKindRetry: "重試",
monitorKindMemory: "記憶",
monitorMemoryUsed: "本次帶入 {count} 筆記憶 · {time}",
monitorMemoryDisabled: "系統長期記憶已停用",
monitorCompletedLabel: "工作已完成",
monitorCancelledLabel: "工作已取消",
monitorRecordedLabel: "以下是這次工作的紀錄",
monitorKindNotice: "提醒",
monitorKindRun: "狀態",
monitorRunStarted: "開始工作:{task}",
monitorRunCompleted: "完成了({turns} 輪)",
monitorRunFailed: "失敗了",
monitorRunWaiting: "停下來等你:{reason}",
monitorRunPaused: "暫停:{reason}",
monitorRunRetry: "重新排進佇列",
monitorModelTurn: "第 {turn} 輪,想了 {time}",
monitorRetryAttempt: "第 {attempt} 次嘗試失敗,正在重試",
monitorGaveUp: "放棄重試",
monitorStatusOk: "成功",
monitorStatusError: "失敗",
monitorStatusTimedOut: "逾時",
monitorStatusPaused: "要你接手",
errorTitleInterrupted: "被打斷",
errorTitleToolTimeout: "動作逾時",
errorTitleModelKey: "模型金鑰不被接受",
errorTitleModelQuota: "限流或額度不足",
errorTitleModelUnknown: "模型名稱找不到",
errorTitleModelTimeout: "模型太久沒回話",
errorTitleNetwork: "連不到模型",
errorTitleComputerGone: "電腦不見了",
errorTitleLeaseLost: "工作被另一邊接手",
errorTitleUnknown: "出錯了",
errorChip: "任務失敗",
errorRetry: "重試",
errorRetryHint: "從中斷的地方接著做",
errorOpenSettings: "開模型設定",
errorDetails: "看詳細記錄",
errorRetried: "已重新排進佇列",
errorRetryFailed: "現在重試排不進去,可能還有別的工作在跑。",
} as const;