| 1 | package i18n |
| 2 | |
| 3 | // ChineseTraditional is the zh-Hant catalogue. Keep the %s placeholders in the same order |
| 4 | // as English unless a phrase genuinely demands re-ordering — call sites pass |
| 5 | // arguments positionally and won't reshuffle. |
| 6 | var ChineseTraditional = Messages{ |
| 7 | WelcomeTitleFmt: "歡迎使用 %s", |
| 8 | NoConfigYet: "還沒有設定 — 現在來設定一下吧。", |
| 9 | |
| 10 | InitHint: "專案記憶(AGENTS.md)在會話內由模型生成:執行 `reasonix`,然後 `/init` —— 模型會分析程式碼庫並寫入。設定請用 `reasonix setup`。", |
| 11 | |
| 12 | ChatTip: "對話上下文將跨輪保留。輸入 'exit' 或按 Ctrl-D 退出。", |
| 13 | TurnCancelled: "已取消 — 回到提示符", |
| 14 | InterruptedRecovery: "本輪已中斷。部分輸出會永久保留供查看;只有完整工具呼叫及結果和有界恢復摘要會進入模型下一輪。繼續或回復前請先檢查目前工作區。", |
| 15 | FinalReadinessRecovery: "剩餘任務或收尾檢查已暫停。執行 /continue-checks 可保留已完成證據並繼續剩餘工作。", |
| 16 | ReadinessContinuing: "Reasonix 正在自動完成剩餘任務或檢查。", |
| 17 | RecoveryPaused: "已暫停自動重試。Reasonix 已停止重複嘗試,並保留已完成的工作。傳送「繼續」即可開始新一輪,也可以補充要求來調整方向。", |
| 18 | CompletionUncertain: "完成狀態未確認。目前結果與已完成工作均已保留。傳送「繼續」可接著完成,也可以補充說明需要調整的內容。", |
| 19 | ReasoningReplayRepair: "模型服務拒絕了本會話歷史中的 thinking 區塊。Reasonix 已從傳送給模型的歷史中移除這些內容,並重試了一次。", |
| 20 | EmptyFinal: "沒有產生可見回覆,已要求助手重新作答。", |
| 21 | ExecutorHandoff: "助手尚未執行必要操作,已要求它使用相應工具。", |
| 22 | ToolBudget: "工具呼叫輪數已達上限,已要求助手總結目前進度。", |
| 23 | TaskBudget: "本任務已達花費預算上限,已要求給出最終回答。", |
| 24 | LoopGuard: "助手沒有取得有效進展,已要求它重新評估目前步驟。", |
| 25 | ProgressGuard: "助手在沒有新證據的情況下反覆做重複工作,已要求它更換方法。", |
| 26 | OperationNeedsUser: "同一處變更連續兩次以相同原因失敗,已暫停並交給你處理,不再自動重試。", |
| 27 | SoftBudgetConverge: "正在收斂這場耗時較長的唯讀調查。", |
| 28 | EvidenceNudge: "有多處改動尚未驗證,已要求執行成本最低的判別性檢查。", |
| 29 | ReasoningGovernor: "目前處於高思考開銷的探索階段,在開始實證工作前將保持較低的推理深度。", |
| 30 | UnappliedSteerFmt: "本條引導未能套用,因為目前回合在處理它之前已結束。如仍需要,請重新傳送:\n%s", |
| 31 | DeprecatedContextRetention: "agent.keep 和 agent.recent_keep 已棄用。", |
| 32 | FinishReasonLength: "回覆被截斷:達到最大輸出 token 數上限", |
| 33 | FinishReasonContentFilter: "回覆被內容過濾器攔截", |
| 34 | FinishReasonRepetition: "回覆被截斷:偵測到模型重複輸出", |
| 35 | StreamInterruptedIdleTimeout: "模型串流回應停滯:閒置逾時前未收到任何資料;請檢查供應商閘道或網路代理", |
| 36 | StreamInterruptedPrematureEOF: "模型串流回應在完成前結束;供應商閘道或網路代理斷開了連線", |
| 37 | StreamInterruptedConnectionReset: "模型連線被重設;請檢查供應商閘道或網路代理", |
| 38 | ToolOutputTruncatedFmt: "工具輸出已截斷:省略 %d 位元組(共 %d 位元組)", |
| 39 | IncompleteReadFinishBlocked: "一個檔案讀取仍有未讀內容,Reasonix 已拒絕結束本輪。", |
| 40 | ReadContinuationRequired: "Reasonix 正在繼續或收窄一次未完成的檔案讀取,完成後才允許改動或收尾。", |
| 41 | IncompleteReadDetected: "Reasonix 偵測到一次不完整的檔案讀取,已準備自動續讀。", |
| 42 | ReadStrategyRequired: "完整檔案放不進動態上下文預算,Reasonix 已進入受限搜尋/讀取模式。", |
| 43 | ReadStrategyProgress: "Reasonix 已記錄受限讀取策略中的有效進展。", |
| 44 | ReadStrategyResolved: "Reasonix 已驗證收窄後的讀取策略回執。", |
| 45 | ReadLocalSafetyPaged: "Reasonix 已將一條較大的本地 read_file 結果安全分頁。", |
| 46 | ReadCompleted: "Reasonix 已恢復該檔案的完整讀取。", |
| 47 | ReadRestrictedStrategyFmt: "read_file 已切換為受限策略:estimated_tokens=%d budget_tokens=%d", |
| 48 | ContextRecoveryAdjustBudget: "已調整輸出預算以適配共享上下文視窗。", |
| 49 | ContextRecoveryCompacted: "共享視窗溢位,已壓縮上下文並重試。", |
| 50 | PlannerFallback: "規劃器失敗,本輪僅由主模型繼續。", |
| 51 | PlannerSafetyFallback: "規劃器在安全邊界處停止且未給出最終計劃,本輪由主模型繼續。", |
| 52 | PlannerPlanAwaitingApproval: "計劃已就緒,未經批准不會開始執行。", |
| 53 | PlannerPlanNotApproved: "計劃未獲批准,未執行任何操作。回覆即可繼續。", |
| 54 | PlannerPlanOnly: "計劃已就緒;本次請求明確不包含執行。", |
| 55 | CapabilityProxyFmt: "能力代理:%s → %s", |
| 56 | ReceiptVerified: "沒有未經驗證的部分", |
| 57 | ReceiptGapsHeader: "未驗證:", |
| 58 | ReceiptRisksHeader: "已申報的風險:", |
| 59 | ReceiptMore: "另有 %d 項", |
| 60 | ReceiptGapKinds: map[string]string{ |
| 61 | "unbacked_claim": "聲稱過但帳本不支持", |
| 62 | "unproven_criterion": "驗收項沒有證據", |
| 63 | "missing_check": "預期的檢查從未通過", |
| 64 | "failed_verification": "驗證失敗", |
| 65 | "stale_verification": "驗證早於最後一次改動", |
| 66 | "unverified_change": "改動了但沒有任何驗證", |
| 67 | "unreviewed_change": "改動後再沒看過", |
| 68 | "declared_unverified": "自己申報未驗證", |
| 69 | }, |
| 70 | NoSessionToResume: "沒有可恢復的會話 — 用 `reasonix` 開一個新的", |
| 71 | ResumeRequiresTTY: "--resume 需要互動式終端;用 --continue 直接恢復最近一次", |
| 72 | PickSessionLabel: "恢復哪個會話?", |
| 73 | |
| 74 | ResumeBusy: "請先完成或取消當前這一輪再恢復會話", |
| 75 | ResumeBadIndexFmt: "請選擇 1–%d 的會話(用 /resume 檢視列表)", |
| 76 | ResumeAlreadyActive: "已在該會話中", |
| 77 | ResumedTitle: "已恢復會話", |
| 78 | ResumePickTitle: "選擇要恢復的會話", |
| 79 | ResumePickHint: "↑/↓ 移動 · Enter 恢復 · Esc 取消", |
| 80 | ResumeRecoveryBadgeFmt: "[衝突副本 · 父會話 %s]", |
| 81 | |
| 82 | ChatThinking: "思考中…", |
| 83 | ChatThoughtForFmt: "思考了 %d 秒", |
| 84 | ChatStatusThinkingFmt: "%s 思考中… (%d 秒 · Esc 取消)", |
| 85 | TurnPhaseWorking: "工作中", |
| 86 | ReadStatusReadingFmt: "正在讀取 %s", |
| 87 | ReadStatusCoveredFmt: "正在讀取 %s · 已涵蓋 %s 行", |
| 88 | ReadStatusDoneFmt: "已讀取 %s · %s 行", |
| 89 | ReadStatusPausedFmt: "讀取已暫停:%s", |
| 90 | ReadStatusRecovery: "未能在讀取預算內驗證剩餘內容;可縮小讀取範圍或繼續獨立工作,全文審查尚未完成", |
| 91 | TurnPhaseChecking: "檢查中", |
| 92 | TurnPhaseVerifying: "驗證中", |
| 93 | TurnPhaseReviewing: "複審中", |
| 94 | CompletionSummaryBlocked: "本輪任務受阻,請查看變更詳情。", |
| 95 | CompletionSummaryNeedsAttention: "本輪仍有驗證或複審缺口。", |
| 96 | ChatToolWorkingFmt: "%s 執行中 · %d 秒", |
| 97 | ChatSubagentPhaseQueued: "排隊中", |
| 98 | ChatSubagentPhaseRunning: "執行中", |
| 99 | ChatSubagentPhaseReasoning: "思考中", |
| 100 | ChatSubagentPhaseResponding: "生成中", |
| 101 | ChatSubagentPhaseTool: "使用工具", |
| 102 | ChatSubagentPhaseRetrying: "重試中", |
| 103 | ChatSubagentPhaseCompleted: "已完成", |
| 104 | ChatSubagentPhaseFailed: "失敗", |
| 105 | ChatSubagentPhaseCancelled: "已取消", |
| 106 | ChatSubagentProgressFmt: "%s · %d 秒 · %d 秒前", |
| 107 | ChatSubagentProgressDoneFmt: "%s · %d 秒", |
| 108 | ChatSubagentPreviewLabel: "▎", |
| 109 | ChatStatusRetryingFmt: "%s 正在重試 (%d/%d)… (Esc 取消)", |
| 110 | ChatStatusCancellingFmt: "%s 正在停止… (%d 秒 · Ctrl+C 退出)", |
| 111 | ChatStatusIdle: "就緒", |
| 112 | ChatStatusCycleHint: "Shift+Tab 循環僅可查看/工作區內修改/YOLO/計畫 · Ctrl+Y YOLO", |
| 113 | ChatStatusCycleHintCompact: "Shift+Tab 僅可查看/工作區內修改/YOLO/計畫 · Ctrl+Y YOLO", |
| 114 | ChatTurnReceiptLabel: "本輪", |
| 115 | RateBandPeak: "高峰", |
| 116 | RateBandOffPeak: "低峰", |
| 117 | RateBandMixed: "混合費率", |
| 118 | ChatStatusModelLabel: "模型", |
| 119 | ChatStatusEffortLabel: "強度", |
| 120 | ChatStatusPresetLabel: "預設", |
| 121 | ChatStatusCacheLabel: "快取", |
| 122 | ChatStatusContextLabel: "上下文", |
| 123 | ChatStatusCompactLabel: "壓縮", |
| 124 | ChatStatusJobsLabel: "任務", |
| 125 | ChatStatusBalanceLabel: "餘額", |
| 126 | ChatStatusCostLabel: "費用", |
| 127 | ChatStatusCacheNowFmt: "本次命中 %s", |
| 128 | ChatStatusCacheAvgFmt: "平均 %s", |
| 129 | ChatStatusPlanApproval: "1 開始執行 · 2 修改計畫 · 3 暫不執行並退出 · n/Esc 繼續規劃 · PgUp/PgDn/Ctrl+Home/End 捲動", |
| 130 | PlanApprovalPrompt: "計畫已生成(見上方)— 請選擇下一步操作", |
| 131 | PlanApprovalChoices: "1. 開始執行\n2. 修改計畫(繼續規劃)\n3. 暫不執行,退出計畫模式\n選擇 [1/2/3](y 開始執行;n/Esc 繼續規劃)", |
| 132 | ChatStatusToolApproval: "1 本次允許 · 2 本會話允許此範圍 · 提供時 3/4 為前綴或儲存 · n/Esc 拒絕 · Ctrl-C 取消本輪", |
| 133 | AskTypeSomething: "自己輸入", |
| 134 | AskTypingHint: "輸入後按 Enter 確認", |
| 135 | AskChatInstead: "先不選擇,直接回覆", |
| 136 | ChatStatusQuestion: "↑/↓ 選 · 數字快選 · 空格多選 · Enter 確認 · ←/→ 切換問題 · Esc 取消", |
| 137 | StatusResumePicker: "↑/↓ 移動 · Enter 恢復 · Esc 取消", |
| 138 | AskSubmitTitle: "提交答案", |
| 139 | AskUnanswered: "(未答)", |
| 140 | AskSubmitHint: "Enter 提交 · ← 返回修改", |
| 141 | ElicitURLHint: "o 開啟連結 · Enter 接受 · d 拒絕 · Esc 取消", |
| 142 | ElicitConfirmOnly: "Enter 確認;d 拒絕;Esc 取消。", |
| 143 | ElicitUnanswered: "(未填寫)", |
| 144 | ElicitSubmit: "提交", |
| 145 | ElicitSubmitHint: "Enter 編輯欄位 · tab 下一項 · 提交列:Enter 接受、d 拒絕、Esc 取消", |
| 146 | ToolApprovalPromptFmt: "需要你的許可\n\n將呼叫工具 %s%s。\n%s\n%s", |
| 147 | ToolApprovalChoices: "1. 本次允許\n2. 本會話允許 %s\n3. 拒絕\n選擇 [1/2/3](相容 y/a/n)", |
| 148 | BashPrefixChoices: "1. 本次允許\n2. 本會話允許 %s\n3. 拒絕\n選擇 [1/2/3](相容 y/a/n)", |
| 149 | PlanModeReadOnlyCommandChoices: "1. 本次信任\n2. 本會話信任此前綴\n3. 總是在計劃模式信任此前綴(儲存到設定)\n4. 拒絕\n選擇 [1/2/3/4](相容 y/a/p/n)", |
| 150 | FreshHumanApprovalChoices: "1. 本次允許\n2. 拒絕\n選擇 [1/2](相容 y/n)", |
| 151 | RecoveryApprovalChoices: "1. 繼續一次\n2. 換個方案", |
| 152 | RecoveryPlanChangeChoices: "1. 採用新計畫並繼續\n2. 不採用,讓 Auto 調整", |
| 153 | RecoveryPlanDecisionPrompt: "執行計畫需要你的決定", |
| 154 | RecoveryPlanBeforeFmt: "原計畫:%s", |
| 155 | RecoveryPlanAfterFmt: "新計畫:%s", |
| 156 | RecoveryTaskGrantChoices: "1. 繼續一次\n2. 繼續,並在本任務內允許同類操作\n3. 換個方案", |
| 157 | SandboxEscapeApprovalChoices: "1. 允許一次\n2. 本會話使用真實環境\n3. 拒絕\n選擇 [1/2/3](相容 y/a/n)", |
| 158 | ApprovalNeededFmt: "需要核准:%s", |
| 159 | ApprovalNeededWithSubjectFmt: "需要核准:%s %s", |
| 160 | ToolApprovalSourceFmt: "來源: %s", |
| 161 | ToolApprovalBuiltIn: "內建工具", |
| 162 | ToolApprovalImageUse: "將讀取提供的圖片用於圖像理解。", |
| 163 | ApprovalToolLabelBash: "bash", |
| 164 | ApprovalToolLabelEditFile: "編輯檔案", |
| 165 | ApprovalToolLabelWriteFile: "寫入檔案", |
| 166 | ApprovalToolLabelMultiEdit: "批次編輯", |
| 167 | ApprovalToolLabelMoveFile: "移動檔案", |
| 168 | ApprovalToolLabelWebFetch: "讀取網頁", |
| 169 | ApprovalToolLabelRunSkill: "執行技能", |
| 170 | ApprovalToolLabelRemember: "儲存記憶", |
| 171 | ApprovalToolLabelForget: "刪除記憶", |
| 172 | ApprovalToolLabelSandboxEscape: "bash 沙箱降級核准", |
| 173 | ApprovalToolLabelPlanModeReadOnly: "計劃模式唯讀命令", |
| 174 | MemoryApprovalSaveUpdate: "儲存/更新記憶", |
| 175 | MemoryApprovalBodyLabel: "正文", |
| 176 | MemoryApprovalArchiveFmt: "封存記憶 %q", |
| 177 | PlanModeBashTrustSubjectFmt: "在計劃模式中信任 %q 為唯讀命令前綴\n命令:%s", |
| 178 | PlanModeBashTrustReason: "這條 bash 命令不在 Reasonix 內建唯讀集合中。只有在確認這個精確前綴用於計劃和研究時是唯讀的,才應核准。權限預設不能代替這次信任確認。", |
| 179 | PlanModeBashTrustDeclined: "使用者拒絕將這條 bash 命令信任為計劃模式唯讀命令;不要重試它,請繼續使用其他已信任的唯讀工具,或詢問使用者希望如何繼續。", |
| 180 | SandboxEscapeSubjectFallback: "僅本次不進沙箱執行 shell 命令", |
| 181 | SandboxEscapeSubjectPrefix: "僅本次不進沙箱執行:", |
| 182 | SandboxEscapeWrapReason: "Windows 不提供這條命令所需的 OS 級 Bash 沙箱。是否僅本次不受限執行?這只會對此命令繞過 OS 隔離。", |
| 183 | SandboxEscapeRuntimeReason: "OS 沙箱無法啟動這條命令。是否僅本次不受限執行?這只會對此命令繞過 OS 隔離。", |
| 184 | SandboxEscapeDeclined: "使用者拒絕在沒有 OS 沙箱的情況下執行這條命令;不要不進沙箱重試,請詢問使用者希望如何繼續。", |
| 185 | ApprovalToolLabelConfigWrite: "Reasonix 設定寫入核准", |
| 186 | ConfigWriteSubjectPrefix: "寫入 Reasonix 設定:", |
| 187 | ConfigWriteReason: "這次寫入的目標是工作區之外的 Reasonix 託管設定檔。它可以改變後續工作階段的模型供應商、沙箱規則、權限和 MCP 伺服器,因此需要你的明確核准。", |
| 188 | ConfigWriteDeclined: "使用者拒絕了這次 Reasonix 設定寫入;不要重試,請詢問使用者希望如何繼續。", |
| 189 | ConfigWriteApprovalChoices: "1. 允許一次\n2. 本工作階段允許\n3. 拒絕\n選擇 [1/2/3](相容 y/a/n)", |
| 190 | WriteAccessApprovalChoices: "1. 僅本次允許\n2. 本工作階段允許此範圍\n3. 拒絕\n選擇 [1/2/3](相容 y/a/n)", |
| 191 | WriteAccessHomeWarning: "這將授權寫入整個使用者家目錄。Reasonix 工作階段與執行時狀態檔案仍受保護。", |
| 192 | WriteAccessMergedPermissionHint: "此選擇也會授權目前匹配的工具操作。", |
| 193 | WriteAccessProjectHint: "加入專案會把 [sandbox].allow_write(以及需要時的權限規則)寫入目前工作區的 reasonix.toml。", |
| 194 | PermissionSavedFmt: "授權已儲存到 %s:%s", |
| 195 | PermissionAlreadyAllowedFmt: "授權已由 %s 中的規則覆蓋:%s", |
| 196 | PermissionSaveFailedFmt: "儲存授權 %s 失敗:%v", |
| 197 | PlanModeReadOnlyCommandTrustSavedFmt: "計劃模式唯讀命令信任已儲存到 %s:%s", |
| 198 | PlanModeReadOnlyCommandTrustAlreadyFmt: "計劃模式唯讀命令信任已儲存在 %s:%s", |
| 199 | PlanModeReadOnlyCommandTrustFailedFmt: "儲存計劃模式唯讀命令信任 %s 失敗:%v", |
| 200 | DiffFoldedFmt: "… 還有 %d 行", |
| 201 | |
| 202 | OutputStyleNone: "沒有可用的輸出風格", |
| 203 | ThemeHeader: "主題:", |
| 204 | ThemeHint: "使用 /theme <auto|light|dark|style> 切換", |
| 205 | ThemeChangedFmt: "已切換主題為 %s / %s", |
| 206 | ThemeUnknownFmt: "未知主題 %q", |
| 207 | LanguageHeader: "語言:", |
| 208 | LanguageHint: "使用 /language <auto|en|zh|zh-TW> 切換", |
| 209 | LanguageChangedFmt: "語言已設為 %s(目前解析為:%s)", |
| 210 | CurrencyHeader: "費用展示幣種:", |
| 211 | CurrencyHint: "使用 /currency <auto|CNY|USD> 切換", |
| 212 | CurrencyChangedFmt: "費用展示幣種已設為 %s(目前解析為:%s)", |
| 213 | RuntimeRefreshBusy: "請先完成或取消目前工作,並停止背景任務後再修改此設定", |
| 214 | RuntimeRefreshUnavailable: "本會話不支援重新整理執行階段", |
| 215 | |
| 216 | CompactionWorking: "正在壓縮對話…", |
| 217 | CompactionTitle: "上下文已壓縮", |
| 218 | CompactionUnit: "條訊息", |
| 219 | CompactionAuto: "自動", |
| 220 | CompactionManual: "手動", |
| 221 | |
| 222 | ExtFormFieldsHint: "欄位將透過逐項提問收集", |
| 223 | ExtRunActionFmt: "執行 %s", |
| 224 | SlashCompactFailed: "壓縮失敗", |
| 225 | SlashNewDone: "已開啟新會話 — 之前的對話已存檔", |
| 226 | SlashNewFailed: "新建會話失敗", |
| 227 | SlashUnknown: "未知命令", |
| 228 | SlashUnknownSentAsMessage: "已作為普通訊息發送", |
| 229 | SlashTodoCleared: "已清除任務清單", |
| 230 | |
| 231 | SkillPickerAvailableFmt: "%d 個可用", |
| 232 | SkillPickerMatchingFmt: "%d 個匹配 · 共 %d 個", |
| 233 | SkillPickerHint: "↑↓ 移動 · Space 開關 · Enter 儲存 · / 搜尋 · s 來源 · r 重新掃描 · Esc 取消", |
| 234 | SkillPickerDetailHint: "↑↓ 移動 · Enter 選擇 · Space 開關 · Esc 返回", |
| 235 | SkillPickerSearchEmpty: "沒有匹配的 skill", |
| 236 | SkillPickerSearchPlaceholder: "搜尋 skills...", |
| 237 | SkillPickerSourceTitle: "來源", |
| 238 | SkillPickerSourceActiveFmt: "%d 個有效", |
| 239 | SkillPickerSourceHint: "↑↓ 移動 · Enter 檢視技能 · d 診斷 · s skills · r 重新掃描 · Esc 關閉", |
| 240 | SkillPickerDiagHidden: "d 展開診斷", |
| 241 | SkillPickerDiagShown: "d 收起診斷", |
| 242 | SkillPickerBuiltinSource: "內建", |
| 243 | SkillPickerRescanned: "已重新掃描 skills", |
| 244 | SkillPickerNoDescription: "(無描述)", |
| 245 | SkillPickerScopeProject: "專案", |
| 246 | SkillPickerScopeCustom: "自訂", |
| 247 | SkillPickerScopeGlobal: "全域", |
| 248 | SkillPickerScopeBuiltin: "內建", |
| 249 | SkillPickerSubagent: "子代理", |
| 250 | SkillPickerAvailableLabel: "可用", |
| 251 | SkillPickerDisabledLabel: "關閉", |
| 252 | SkillPickerNoChanges: "Skills 對話框已關閉:沒有變更", |
| 253 | SkillPickerSourceSkillsHint: "↑↓ 移動 · Space 開關 · Enter 詳情 · Esc 返回來源", |
| 254 | SkillPickerSourceSkillsEmpty: "這個來源下沒有 skill", |
| 255 | SkillPickerActionToggle: "切換啟用狀態", |
| 256 | SkillPickerActionDelete: "刪除 skill", |
| 257 | SkillPickerDeleteTitleFmt: "刪除 skill /%s?", |
| 258 | SkillPickerDeleteConfirm: "刪除", |
| 259 | SkillPickerDeleteCancel: "取消", |
| 260 | SkillPickerDeleteHint: "Enter 確認 · y 刪除 · n/Esc 取消", |
| 261 | SkillPickerDeletedFmt: "已刪除 skill %s", |
| 262 | SkillPickerMoreAboveFmt: "↑ 上方還有 %d 個", |
| 263 | SkillPickerMoreBelowFmt: "↓ 下方還有 %d 個", |
| 264 | SkillPickerTokenFmt: "~%d tok", |
| 265 | SkillPickerDetailMetaFmt: "範圍: %s 執行方式: %s", |
| 266 | SkillPickerSkillsUnit: "個 skill", |
| 267 | SkillPickerLinesUnit: "行", |
| 268 | SkillPickerStatusLabel: "技能選擇器", |
| 269 | SkillPickerStatusOK: "有效", |
| 270 | SkillPickerStatusMissing: "缺失", |
| 271 | SkillPickerStatusNotDir: "非目錄", |
| 272 | SkillPickerStatusUnreadable: "無權限", |
| 273 | SlashPromptEmpty: "該 MCP prompt 沒有返回可傳送的內容", |
| 274 | SlashMCPNone: "沒有設定 MCP 伺服器 — 在 reasonix.toml 加一個 [[plugins]] 條目", |
| 275 | CtrlCQuitHint: "再按一次 Ctrl+C 退出", |
| 276 | CompHintSlash: "↑/↓ 移動 · Tab/Enter 選中 · Esc 關閉", |
| 277 | CompHintFile: "↑/↓ 移動 · Tab/Enter 進入資料夾或選中檔案 · Esc 關閉", |
| 278 | MouseCopiedHint: "已複製到剪貼簿", |
| 279 | ClipboardCopyOSC52Hint: "已透過 OSC 52 請求複製 — 可能需要終端授權", |
| 280 | ClipboardCopyFallbackHint: "系統剪貼簿無法使用 — 已改用 OSC 52", |
| 281 | ClipboardTextPasteRemoteHint: "SSH 下滑鼠貼上無法讀取本機剪貼簿或 PRIMARY 選取區 — 請使用終端貼上快捷鍵或 /mouse", |
| 282 | ClipboardTextPasteFailedFmt: "貼上文字失敗:%v", |
| 283 | ClipboardImagePastingHint: "正在貼上圖片…", |
| 284 | ClipboardImagePasteFailedFmt: "貼上圖片失敗:%v", |
| 285 | ClipboardPasteEmptyNotice: "剪貼簿中沒有可粘貼的文字或受支援的圖片(PNG/JPEG/GIF/WebP)", |
| 286 | MouseCaptureOnHint: "滑鼠接管已開啟 — 應用內拖拽選取/捲軸/滾輪生效", |
| 287 | MouseCaptureOffHint: "滑鼠接管已關閉 — 由終端原生處理選取與右鍵選單", |
| 288 | MouseCaptureTag: "終端原生滑鼠", |
| 289 | |
| 290 | ShellExecEmpty: "用法:!<命令> (例如 !ls -la)", |
| 291 | ShellExecFailedFmt: "Shell 命令執行失敗:%v", |
| 292 | ShellExecTimeoutFmt: "Shell 命令逾時(>%s)", |
| 293 | ShellModeHint: "Enter 執行 Shell · Esc 取消 · 點擊輸出展開", |
| 294 | |
| 295 | CmdNew: "清空上下文並儲存歷史", |
| 296 | CmdCls: "清除畫面(保留 LLM 上下文)", |
| 297 | CmdCompact: "壓縮上下文", |
| 298 | CmdContinueChecks: "繼續已暫停的任務收尾檢查", |
| 299 | CmdContext: "檢視上下文視窗、閾值與上次維護結果", |
| 300 | CmdRewind: "回滾到更早的一輪", |
| 301 | CmdTree: "檢視對話分支樹", |
| 302 | CmdBranch: "建立對話分支", |
| 303 | CmdSwitchBranch: "切換對話分支", |
| 304 | CmdResume: "恢復已儲存的會話", |
| 305 | CmdModel: "切換模型", |
| 306 | CmdStatus: "顯示工作階段狀態", |
| 307 | CmdWorkMode: "會話質量底線:standard / delivery", |
| 308 | CmdDocs: "搜尋與目前版本匹配的內建文件", |
| 309 | CmdMemory: "檢視指令、記憶與復原狀態", |
| 310 | CmdMigrate: "重試舊資料遷移", |
| 311 | CmdRemember: "儲存一條記憶", |
| 312 | CmdForget: "刪除一條已存記憶", |
| 313 | CmdMcp: "MCP 伺服器", |
| 314 | CmdRemote: "遠端 SSH 主機", |
| 315 | CmdHooks: "管理 hooks", |
| 316 | CmdPlugins: "管理插件包", |
| 317 | CmdPasteImage: "貼上剪貼簿圖片", |
| 318 | CmdOutputStyle: "列出輸出風格", |
| 319 | CmdTheme: "切換 CLI 主題", |
| 320 | CmdLanguage: "切換 CLI 語言", |
| 321 | CmdCurrency: "切換費用展示幣種", |
| 322 | CmdSkill: "管理 skills", |
| 323 | CmdVerbose: "切換 thinking 原文顯示", |
| 324 | CmdReloadCmd: "重載自定義命令", |
| 325 | CmdReload: "重載 agent 執行階段(工具、技能、命令、鉤子、模型供應商),保留目前會話", |
| 326 | CmdSandbox: "檢視沙箱狀態", |
| 327 | CmdEffort: "設定推理強度", |
| 328 | CmdMouse: "切換滑鼠接管(關閉後由終端原生處理選取/右鍵)", |
| 329 | CmdReasonLang: "設定可見思考語言", |
| 330 | CmdHelp: "檢視命令列表", |
| 331 | CmdWeb: "在 Web UI 中繼續目前工作階段", |
| 332 | CmdTodo: "清除任務清單", |
| 333 | CmdQuit: "退出會話", |
| 334 | CmdCopy: "選擇回覆複製到剪貼簿", |
| 335 | CmdExport: "將會話匯出為 Markdown", |
| 336 | SlashCopyDone: "已複製到剪貼簿", |
| 337 | SlashCopyEmpty: "沒有可複製的助手回覆", |
| 338 | SlashCopyListHeader: "選擇要複製的回覆:", |
| 339 | SlashExportDoneFmt: "會話已匯出到 %s", |
| 340 | SlashExportEmpty: "沒有可匯出的訊息", |
| 341 | ArgSkillShow: "檢視 skill 內容", |
| 342 | ArgSkillNew: "新建一個 skill", |
| 343 | ArgSkillPaths: "顯示發現路徑", |
| 344 | ArgMcpAdd: "連線一個伺服器", |
| 345 | ArgMcpRemove: "斷開一個伺服器", |
| 346 | ArgMcpConnected: "已連線", |
| 347 | ArgHooksList: "列出生效的 hooks", |
| 348 | ArgModelCurrent: "當前", |
| 349 | ArgEffortAuto: "使用模型預設值", |
| 350 | ArgEffortLow: "較輕推理", |
| 351 | ArgEffortMedium: "均衡推理", |
| 352 | ArgEffortHigh: "較深推理", |
| 353 | ArgEffortXHigh: "超高推理", |
| 354 | ArgEffortMax: "最高推理", |
| 355 | ArgPresetStandard: "自適應默認檔", |
| 356 | ArgPresetDelivery: "交付級完成門檻", |
| 357 | ArgThemeCurrent: "當前", |
| 358 | ArgLanguageAuto: "從 REASONIX_LANG / 系統 locale 自動偵測", |
| 359 | ArgLanguageEn: "English", |
| 360 | ArgLanguageZh: "中文", |
| 361 | |
| 362 | ListModelsHeaderFmt: "模型(當前:%s)", |
| 363 | ListModelsHint: "用底部的模型切換器,或輸入 /model <provider/model>", |
| 364 | ListMemoryNone: "暫無記憶 — 用 “/remember <內容>” 新增,或執行 /init 生成 AGENTS.md", |
| 365 | ListSkillsHeaderFmt: "skills(%d 個)", |
| 366 | ListSkillsNone: "暫無 skill — 呼叫內建的(如 /init),或用 install_skill 建立一個", |
| 367 | ListHooksHeaderFmt: "hooks(生效 %d 個)", |
| 368 | ListHooksNone: "無生效 hooks — 在 .reasonix/settings.json(專案)或 <Reasonix home>/settings.json(全域)設定", |
| 369 | ListMcpHeader: "MCP 伺服器", |
| 370 | ListMcpNone: "未連線 MCP 伺服器 — 在 reasonix.toml([[plugins]])或專案 .mcp.json 中新增", |
| 371 | |
| 372 | MemoryEditHint: "可直接編輯記憶文件,或輸入 “/remember 內容” 快速記錄;文件變動會在下次會話生效", |
| 373 | ForgetUsage: "用法:/forget <name> — name 是 /memory 中顯示的條目標識", |
| 374 | ForgetDoneFmt: "已刪除記憶:%s", |
| 375 | QuickRememberEmpty: "沒有要記錄的內容", |
| 376 | QuickRememberDoneFmt: "已記住 → %s", |
| 377 | ModelSwitchUnavailable: "本會話不支援切換模型", |
| 378 | ModelSwitchBusy: "請先完成或取消目前工作,並停止背景任務後再切換模型", |
| 379 | ModelAlreadyOnFmt: "已經在使用 %s", |
| 380 | ModelSwitchingFmt: "正在切換到 %s…", |
| 381 | ModelSwitchedFmt: "已切換到 %s(會保留當前對話,但提示詞快取會重新計算)", |
| 382 | ModelListHeader: "模型(/model <provider/model> 切換)", |
| 383 | RuntimeSwitchPending: "請等待目前執行階段切換完成", |
| 384 | RuntimeReloadQueued: "已加入重載佇列——目前工作完成後執行", |
| 385 | RuntimeReloaded: "執行階段已重載", |
| 386 | RuntimeReloadedGenerationFmt: "執行階段已重載(構建代號 %d)", |
| 387 | WorkModeUsage: "用法:/preset <舊模式值>(已退役;已知值統一使用標準執行)", |
| 388 | WorkModeDeprecatedNotice: "執行模式已退役。已知舊值僅為相容而接受,並統一使用標準執行。", |
| 389 | QualityFloorApplied: "執行模式已退役;目前繼續使用標準執行。", |
| 390 | RewindNone: "暫無可回滾的內容", |
| 391 | RewindCodeConversation: "程式碼 + 對話", |
| 392 | RewindConversationOnly: "僅對話", |
| 393 | RewindCodeOnly: "僅程式碼", |
| 394 | RewindFork: "分叉", |
| 395 | RewindSummarizeFrom: "壓縮此處之後(保留歷史)", |
| 396 | RewindSummarizeUpto: "壓縮此處之前(保留歷史)", |
| 397 | RewindPickTitle: "⟲ 回滾 — 選擇一輪", |
| 398 | RewindPickHint: "↑/↓ 移動 · Enter 選擇 · Esc 關閉", |
| 399 | RewindRestoreTitleFmt: "⟲ 恢復到第 %d 輪 ", |
| 400 | RewindApplyHint: "↑/↓ · Enter 套用 · Esc 返回", |
| 401 | RewindCoverageTitle: "⚠ 檔案覆蓋不完整", |
| 402 | RewindCoverageWarningFmt: "偵測到 %d 個覆蓋缺口,部分檔案修改可能無法恢復。", |
| 403 | RewindConfirmHint: "Enter/y 確認 · Esc 返回", |
| 404 | RewindUnavailableFmt: "無法回滾:%s", |
| 405 | RewindEmpty: "(空)", |
| 406 | |
| 407 | EnterAPIKeysHeader: "輸入 API key(Enter 跳過、稍後再設):", |
| 408 | WroteFileFmt: "已寫入 %s", |
| 409 | SetupComplete: "設定完成。", |
| 410 | SetupCancelled: "設定已取消。", |
| 411 | TryHintFmt: "試試: %s", |
| 412 | NextHint: "下一步:設定 API key(執行 `reasonix setup` 或 export DEEPSEEK_API_KEY=...),然後執行 `reasonix run \"你的任務\"`。", |
| 413 | ConfirmReconfigureFmt: "%s 已存在。重新設定並覆蓋?", |
| 414 | NotOverwritingFmt: "%s 已存在,不覆蓋", |
| 415 | SetupManagerTitle: "供應商設定", |
| 416 | SetupAddOpenAI: "新增 OpenAI 相容供應商", |
| 417 | SetupAddAnthropic: "新增 Anthropic 相容供應商", |
| 418 | SetupProviderExistsFmt: "供應商 %q 已存在。請進入現有供應商管理來編輯模型或設定。", |
| 419 | SetupSaveExit: "儲存並離開", |
| 420 | SetupSaveExitDesc: "寫入目前暫存的修改", |
| 421 | SetupCancel: "取消", |
| 422 | SetupCancelDesc: "放棄全部暫存修改", |
| 423 | SetupModelsUnit: "個模型", |
| 424 | SetupKeySet: "已設定 Key", |
| 425 | SetupKeyMissing: "缺少 Key", |
| 426 | SetupDefaultBadge: "預設", |
| 427 | SetupProviderActionsFmt: "管理 %s", |
| 428 | SetupEditProvider: "編輯供應商", |
| 429 | SetupUpdateKey: "更新 API Key", |
| 430 | SetupTestRefresh: "測試連線 / 重新整理模型列表", |
| 431 | SetupSetDefault: "設定預設模型", |
| 432 | SetupRemoveProvider: "刪除供應商", |
| 433 | SetupBack: "返回", |
| 434 | SetupPromptModels: "模型列表(用逗號分隔)", |
| 435 | SetupSharedKeyWarningFmt: "%s 已被 %s(%s)使用。確認共用這項憑據?", |
| 436 | SetupPromptAPIKeyFmt: "輸入 %s 的新值", |
| 437 | SetupSelectDefaultModel: "選擇預設模型", |
| 438 | SetupConfirmRemoveFmt: "確認刪除供應商 %s?", |
| 439 | SetupSummaryTitle: "待儲存修改:", |
| 440 | SetupSummaryAddedFmt: "新增:%s", |
| 441 | SetupSummaryEditedFmt: "編輯:%s", |
| 442 | SetupSummaryRemovedFmt: "刪除:%s", |
| 443 | SetupSummaryDefaultFmt: "預設模型:%s", |
| 444 | SetupSummaryKeysFmt: "更新 API Key:%d 項", |
| 445 | SetupSummaryNoChanges: "沒有修改", |
| 446 | SetupConfirmSave: "儲存這些修改?", |
| 447 | SetupConcurrentChangeFmt: "setup 開啟期間設定已被修改(%s)。本次暫存修改未寫入,請重新執行 setup 檢查最新設定。", |
| 448 | |
| 449 | // model fetching |
| 450 | FetchingModelsFmt: "正在取得 %s 的模型列表...", |
| 451 | FetchModelsSuccessFmt: "發現 %d 個 %s 模型", |
| 452 | FetchModelsFailedFmt: "取得 %s 模型失敗: %v", |
| 453 | FetchModelsUsingPresetsFmt: "無法線上取得 %s 的模型,使用預設列表", |
| 454 | SelectModelsLabel: "選擇要啟用的 %s 模型", |
| 455 | CustomFetchEmpty: "/models 返回為空,回退到手動輸入", |
| 456 | AnthropicFetchEmpty: "/models 返回為空 — Anthropic 相容服務通常不提供此端點,回退到手動輸入", |
| 457 | APIKeyAlreadySetFmt: "復用已設定的 %s", |
| 458 | APIKeyResetPromptFmt: "重新輸入 %s?", |
| 459 | InvalidAPIKeyEnvFmt: "%q 不是有效的 API Key 變數名稱。只能使用字母、數字和底線(例如 MY_PROVIDER_API_KEY);請勿在此填寫模型名稱。", |
| 460 | RepairedAPIKeyEnvFmt: "provider %s:已將無效的 API Key 變數名稱 %q 修復為 %q", |
| 461 | |
| 462 | // custom provider |
| 463 | CustomProviderDesc: "新增第三方 OpenAI 相容模型", |
| 464 | CustomAddMethodLabel: "新增第三方 OpenAI 相容模型 - 選擇新增方式", |
| 465 | CustomMethodManual: "手動輸入模型名稱", |
| 466 | CustomMethodURL: "從 URL 取得模型列表", |
| 467 | CustomPromptModel: "請輸入模型名稱", |
| 468 | CustomPromptBaseURL: "請輸入 Base URL", |
| 469 | CustomPromptKeyEnv: "API Key 變數名稱(直接按 Enter 使用預設值,不是模型名稱)", |
| 470 | CustomPromptAPIKey: "請輸入 API Key", |
| 471 | CustomPromptWindow: "上下文視窗(tokens,填得比模型真實視窗小會導致過早壓縮)", |
| 472 | CustomAddedFmt: "已新增自訂模型: %s", |
| 473 | |
| 474 | // Anthropic 相容 provider |
| 475 | AnthropicProviderDesc: "新增第三方 Anthropic 相容模型", |
| 476 | AnthropicAddMethodLabel: "新增第三方 Anthropic 相容模型 - 選擇新增方式", |
| 477 | AnthropicMethodManual: "手動輸入模型名稱", |
| 478 | AnthropicMethodURL: "從 URL 取得模型列表", |
| 479 | AnthropicPromptModel: "請輸入模型名稱", |
| 480 | AnthropicPromptBaseURL: "請輸入 Base URL", |
| 481 | AnthropicPromptKeyEnv: "API Key 變數名稱(直接按 Enter 使用預設值,不是模型名稱)", |
| 482 | AnthropicPromptAPIKey: "請輸入 API Key", |
| 483 | AnthropicAddedFmt: "已新增 Anthropic 相容模型: %s", |
| 484 | AnthropicFetchingModelsFmt: "正在取得 %s 的模型列表...", |
| 485 | AnthropicFetchModelsSuccessFmt: "發現 %d 個 %s 模型", |
| 486 | AnthropicFetchModelsFailedFmt: "取得 %s 模型失敗: %v", |
| 487 | AnthropicSelectModelsLabel: "選擇要啟用的 %s 模型", |
| 488 | |
| 489 | RemoteConnectingFmt: "正在連線 %s…", |
| 490 | RemoteConnectedFmt: "已連線到 %s", |
| 491 | RemoteReconnectingFmt: "正在重新連線 %s(第 %d 次)…", |
| 492 | RemoteDegradedFmt: "已連線到 %s,但部分連接埠轉送未建立", |
| 493 | RemoteDisconnected: "已中斷(遠端 serve 仍在執行)", |
| 494 | RemoteServeReadyFmt: "遠端 serve 就緒:%s", |
| 495 | RemoteHostKeyPromptFmt: "未知的主機金鑰 %s\n 類型:%s\n 指紋:%s", |
| 496 | RemotePassphrasePromptFmt: "%s 的金鑰通關密語:", |
| 497 | RemotePasswordPromptFmt: "%s 的登入密碼:", |
| 498 | RemoteBootstrapStepFmt: "遠端 serve:%s %s", |
| 499 | RemoteNoHostsHint: "尚未設定遠端主機;用 `reasonix remote add <名稱> [user@]host` 新增", |
| 500 | |
| 501 | UnknownCommandFmt: "未知命令 %q", |
| 502 | UsageRunHint: "用法:reasonix -p [--model NAME] <task>", |
| 503 | ErrorPrefix: "錯誤:", |
| 504 | ReconfigureOnUnknownModel: "設定的模型已不可用 —— 重新執行引導設定。", |
| 505 | WriteConfigErr: "寫入設定失敗:", |
| 506 | WriteEnvErr: "寫入 .env 失敗:", |
| 507 | |
| 508 | ProviderErrBadRequest: "請求格式錯誤 (HTTP 400):請求體被拒絕,通常是程式缺陷。若持續出現請回報。", |
| 509 | ProviderErrContextOverflowFmt: "請求超出共用上下文視窗:prompt %d + 輸出 %d = %d tokens,視窗只有 %d。請壓縮、用更小的輸出上限重試、分叉或回溯後再發送。", |
| 510 | ProviderErrAuth: "認證失敗 (HTTP 401):未讀到 API key(缺失或未設定)。請在 .env 中設定金鑰,或執行 `reasonix setup`。", |
| 511 | ProviderErrModelFormatMismatch: "模型/API 格式不相容:服務端不支援目前模型使用所選 provider 線路。這不是 API key 失效;請選擇支援該模型的 provider 線路。", |
| 512 | ProviderErrOpenCodeGoGrokRoute: "OpenCode Go 的 `grok-4.5` 請使用 OpenCode Go Responses 預設。", |
| 513 | ProviderErrQuotaExhaustedFmt: "%s:供應商餘額或方案額度不足(HTTP %d)。請檢查帳戶額度後繼續。", |
| 514 | ProviderErrReasonMissing: "上游拒絕了請求,但未提供具體原因。", |
| 515 | SearchSourcesNotProvided: "搜尋已完成,供應商未提供可用的結構化來源。", |
| 516 | SearchModelUnavailable: "指定的網頁搜尋模型不可用;不會改用其他帳號。", |
| 517 | ProtocolRecoveryLabel: "從有效歷史恢復", |
| 518 | ProviderErrInsufficientBalance: "餘額不足 (HTTP 402):帳戶餘額不足,請前往儲值後重試。", |
| 519 | ProviderErrNotFound: "請求位址不存在(HTTP 404)。請檢查 API 格式和請求位址。", |
| 520 | ProviderErrUnprocessable: "參數錯誤 (HTTP 422):某個請求參數被拒絕,通常是程式缺陷。若持續出現請回報。", |
| 521 | ProviderErrInputSensitive: "輸入被 MiniMax 內容審查拒絕(錯誤碼 1026)。審查對象可能包含對話歷史和工具結果;請調整相關內容,或建立新對話只保留必要上下文。原樣重試通常無效。", |
| 522 | ProviderErrOutputSensitive: "MiniMax 產生的內容被內容審查拒絕(錯誤碼 1027)。請調整請求內容後重試;若持續出現,可改用其他服務商。", |
| 523 | ProviderErrRateLimited: "請求速率達到上限 (HTTP 429):請求過於頻繁 (TPM/RPM)。已退避重試,請放慢速率或稍後再試。", |
| 524 | ProviderErrServer: "伺服器故障 (HTTP 500):服務端內部錯誤。已退避重試;若持續失敗請稍後再試。", |
| 525 | ProviderErrServerBusy: "伺服器繁忙 (HTTP 503):服務端負載過高。已退避重試,請稍後再試。", |
| 526 | ProviderErrWaitExhaustedFmt: "已等待 %s,供應商始終無法連線,Reasonix 已停止等待。請檢查網路、代理或供應商狀態頁,然後重新傳送。", |
| 527 | |
| 528 | SelectOneHint: "(↑/↓ · Enter · q 取消)", |
| 529 | SelectManyHint: "(↑/↓ · Space · Enter · q)", |
| 530 | |
| 531 | ReportNoPending: "沒有待處理的 CLI 當機報告。", |
| 532 | ReportHeaderFmt: "CLI 當機報告 %s", |
| 533 | ReportCapturedFmt: "擷取時間:%s", |
| 534 | ReportPreviewOnlyFmt: "目前僅預覽。執行 `reasonix report send %s` 可傳送這份報告。", |
| 535 | ReportSendPrompt: "將這份已脫敏報告傳送到 crash.reasonix.io?", |
| 536 | ReportKept: "報告已保留在本機。", |
| 537 | ReportDeletedFmt: "已刪除 CLI 當機報告 %s。", |
| 538 | ReportSentFmt: "已傳送 CLI 當機報告 %s。", |
| 539 | ReportConfigFailedFmt: "無法載入網路設定:%v", |
| 540 | ReportUploadFailedFmt: "報告上傳失敗;本機報告已保留:%v", |
| 541 | ReportSentDeleteFailedFmt: "報告已傳送,但無法刪除本機副本:%v", |
| 542 | ReportUsageBody: `用法: |
| 543 | reasonix report 預覽最新本機報告並確認是否傳送 |
| 544 | reasonix report list 列出本機 CLI 當機報告 |
| 545 | reasonix report show [ID] 預覽報告(省略 ID 時使用最新一份) |
| 546 | reasonix report send [ID] 傳送已審閱報告,成功後刪除本機副本 |
| 547 | reasonix report delete [ID] 不傳送,直接刪除本機報告`, |
| 548 | |
| 549 | CLITelemetryConsentNotice: "Reasonix 可以向 crash.reasonix.io 傳送匿名、完全不含內容的 CLI 使用統計:隨機安裝 ID、版本、作業系統和固定品質分桶。絕不會傳送 prompt、回答、程式碼、路徑、模型或工具內容、環境變數。之後可執行 `reasonix config telemetry off` 關閉。", |
| 550 | CLITelemetryConsentPrompt: "允許傳送匿名 CLI 使用統計嗎?", |
| 551 | CLITelemetryConsentInvalid: "請輸入 y 或 n。", |
| 552 | CLITelemetryConsentSaveFailedFmt: "由於無法儲存偏好設定,CLI 使用統計仍維持關閉:%v", |
| 553 | CLITelemetryConsentCleanupFailedFmt: "CLI 使用統計已關閉,但無法刪除待傳送統計:%v", |
| 554 | |
| 555 | UsageBody: `reasonix — 由設定和插件驅動的 coding agent(多模型) |
| 556 | |
| 557 | 用法: |
| 558 | reasonix [--model NAME] [-c|--continue] [-r|--resume [QUERY]] [--permission-mode MODE] [--effort LEVEL] [--add-dir PATH] 互動式會話 |
| 559 | reasonix -p|--print [--model NAME] [--output-format text|json|stream-json] [--allowed-tools RULES] [--add-dir PATH] <task> |
| 560 | reasonix run [--model NAME] [--max-steps N] [-c|--continue] [--resume PATH] [--copy] [--output-format FORMAT] <task> |
| 561 | reasonix run --events-jsonl [--model NAME] <task> 輸出脫敏結構化事件 JSONL |
| 562 | reasonix review [--base BRANCH] [--commit SHA] [--model NAME] AI 程式碼審查(基於本機 diff) |
| 563 | reasonix web [--model NAME] [--addr HOST:PORT] [--no-open] 啟動本機 Web UI 並用預設瀏覽器開啟 |
| 564 | reasonix serve [--model NAME] [--addr HOST:PORT] [--auth none|token|password] [--token STR] [--password STR] [--hash-password] 透過 HTTP+SSE 提供服務(支援可選認證) |
| 565 | reasonix acp [--model NAME] 透過 stdio 提供 Agent Client Protocol(也可用:reasonix --acp) |
| 566 | reasonix setup [path] 互動式設定精靈;生成 reasonix.toml(及 .env) |
| 567 | reasonix config reasoning-language [auto|zh|en] 設定可見思考語言 |
| 568 | reasonix config compact-ratio [--local] [30..85] 設定自動壓縮閾值 |
| 569 | reasonix config telemetry [auto|on|off] 設定不含內容的 CLI 使用統計 |
| 570 | reasonix report [list|show|send|delete] [ID] 審閱並明確傳送本機 CLI 當機報告 |
| 571 | reasonix mcp <add|remove|list|import> 管理 reasonix.toml 裡的 MCP 伺服器 |
| 572 | reasonix subagent <list|create|edit|delete|try|run> 管理和執行隔離子智慧體 profile |
| 573 | reasonix init 查看如何產生專案記憶(AGENTS.md) |
| 574 | reasonix doctor [--json] 輸出脫敏的本機診斷資訊 |
| 575 | reasonix doctor session <branch-id> [--zip] [--out PATH] 匯出會話衝突診斷 zip |
| 576 | reasonix session list --json [--dir PATH] 為機器客戶列出脫敏會話 |
| 577 | reasonix session show|status <machine-session-id> --json [--dir PATH] 查詢單一脫敏會話 |
| 578 | reasonix session recovery [<machine-session-id>] --json [--dir PATH] 查詢脫敏復原狀態 |
| 579 | reasonix hook list|status --json [--dir PATH] 檢視脫敏 Hook 狀態 |
| 580 | reasonix task list|show|status|events|stop|cancel|monitor|tmux --json [--dir PATH] |
| 581 | 檢視或控制脫敏 Task |
| 582 | reasonix bot start|doctor|weixin-login 多管道 IM bot 閘道 |
| 583 | reasonix upgrade [--check] [--force] 更新到最新正式版(別名:reasonix update) |
| 584 | reasonix completion bash|zsh|fish 列印 shell 補全腳本到 stdout |
| 585 | reasonix version [--verbose|--json] 列印版本(單行)或建置元資訊 |
| 586 | reasonix --version | -v 單行版本(腳本安全) |
| 587 | reasonix help |
| 588 | |
| 589 | 範例: |
| 590 | reasonix |
| 591 | reasonix --continue |
| 592 | reasonix --resume provider-config |
| 593 | reasonix web |
| 594 | reasonix run "把 main.go 裡的 TODO 實現掉" |
| 595 | reasonix run --model mimo-pro "給這個函式補單元測試" |
| 596 | reasonix -p "總結這個倉庫" --output-format json |
| 597 | reasonix subagent run review "審查目前變更" |
| 598 | echo "解釋這段程式碼" | reasonix run |
| 599 | |
| 600 | 設定: |
| 601 | 優先順序:flag > ./reasonix.toml > <Reasonix home>/config.toml > 內建預設值 |
| 602 | 金鑰透過 api_key_env 從環境變數注入(如 DEEPSEEK_API_KEY)。 |
| 603 | 執行 'reasonix setup' 生成設定;詳見 docs/SPEC.md。 |
| 604 | `, |
| 605 | RenameUsage: "用法:/rename <新名稱> 或 /rename <序號> <新名稱>", |
| 606 | RenameNoSession: "當前沒有活躍會話可重新命名", |
| 607 | RenameDoneFmt: "會話已重新命名為 %q", |
| 608 | DiffFoldEnabledFmt: "diff 已摺疊至 %d 行(/diff-fold 展開)", |
| 609 | DiffFoldDisabled: "diff 已展開 — 顯示全部行(/diff-fold 摺疊)", |
| 610 | SlashClearPrompt: "清空當前上下文且不儲存?", |
| 611 | SlashClearDone: "已清空當前上下文", |
| 612 | SlashClearFailed: "清空當前上下文失敗", |
| 613 | SlashClsDone: "已清除畫面(LLM 上下文保留)", |
| 614 | CmdClear: "丟棄當前上下文", |
| 615 | CmdRename: "重新命名會話", |
| 616 | CmdGoal: "設定或清除當前目標", |
| 617 | CmdDiffFold: "切換 diff 摺疊/展開", |
| 618 | ListMemorySaved: "儲存的記憶", |
| 619 | ListMemoryArchived: "歸檔的記憶", |
| 620 | GoalEmpty: "目標:無 — 用 /goal <目標> 設定", |
| 621 | GoalCurrentFmt: "目標:%s", |
| 622 | GoalSetFmt: "目標已設定 → %s", |
| 623 | GoalCleared: "目標已清除", |
| 624 | GoalNotRunning: "沒有執行中的目標可暫停", |
| 625 | GoalNotPaused: "沒有已暫停或被阻擋的目標可恢復", |
| 626 | GoalPaused: "目標已暫停 — /goal resume 可繼續", |
| 627 | GoalPausedReason: "使用者手動暫停", |
| 628 | GoalPausedFmt: "目標已暫停(%s)— 使用 /goal resume 繼續", |
| 629 | GoalRuntimeFmt: "執行狀態:輪次 %d · 請求 %d · token %d · 工作時間 %s", |
| 630 | GoalRuntimeLastReason: "最近原因", |
| 631 | ProviderErrAuthRejected: "認證失敗 (HTTP 401):服務端拒絕了你的 API key。可能是 key 錯誤或已過期,也可能是服務端出現瞬時鑑權/額度問題——已退避重試仍失敗。請稍後再試,或檢查 .env 中的金鑰 / 執行 `reasonix setup`。", |
| 632 | SelectMoreAboveFmt: " ↑ 上方還有 %d 個", |
| 633 | SelectMoreBelowFmt: " ↓ 下方還有 %d 個", |
| 634 | SelectSearchHint: "/ 搜尋 · 輸入關鍵詞過濾 · Esc 取消搜尋", |
| 635 | CmdProvider: "切換供應商", |
| 636 | ProviderListHeader: "供應商(/provider <名稱> 切換)", |
| 637 | ProviderAlreadyOnFmt: "已經在使用供應商 %s", |
| 638 | ProviderUnknownFmt: "未知供應商 %q", |
| 639 | ProviderPickLabel: "選擇 %s 的一個模型", |
| 640 | ProviderNoModelsFmt: "供應商 %s 沒有已配置的模型", |
| 641 | UpgradeChecking: "正在檢查更新…", |
| 642 | UpgradeChannelDeprecated: "發布渠道已停用;將使用最新正式版。", |
| 643 | UpgradeDevBuild: "開發版本無法自更新", |
| 644 | UpgradeFetchFailed: "檢查更新失敗:%v", |
| 645 | UpgradeInvalidVersion: "遠端版本不是有效的 semver", |
| 646 | UpgradeAlreadyLatest: "已是最新版本。", |
| 647 | UpgradeForcing: "強制重新安裝當前版本…", |
| 648 | UpgradeAvailableFmt: "當前:%s → 最新:%s", |
| 649 | UpgradeNoAssetFmt: "未找到 %s 的安裝包", |
| 650 | UpgradeDownloadingFmt: "正在下載 %s(%s)…", |
| 651 | UpgradeDownloadFailed: "下載失敗:%v", |
| 652 | UpgradeVerifying: "正在校驗 SHA256…", |
| 653 | UpgradeChecksumFailed: "無法獲取校驗檔案:%v", |
| 654 | UpgradeChecksumMismatchFmt: "SHA256 不匹配:得到 %s,期望 %s", |
| 655 | UpgradeChecksumNotFoundFmt: "SHA256SUMS 中未找到 %s", |
| 656 | UpgradeExtractFailed: "解壓二進位制檔案失敗:%v", |
| 657 | UpgradeApplying: "正在替換二進位制檔案…", |
| 658 | UpgradeApplyFailed: "應用更新失敗:%v", |
| 659 | UpgradeSuccessFmt: "已更新 %s → %s", |
| 660 | } |
| 661 |