{
  "app": {
    "brand": "nanobot",
    "loading": {
      "connecting": "正在連線到 nanobot…",
      "boot": "正在載入 nanobot…"
    },
    "error": {
      "title": "無法連線到 nanobot",
      "gatewayHint": "請確認 gateway 已啟動（`nanobot gateway`），並且目前頁面與 gateway 在同一台機器上開啟。"
    },
    "auth": {
      "title": "需要驗證",
      "hint": "輸入 gateway 設定中 tokenIssueSecret 配置的密鑰。",
      "placeholder": "密碼",
      "submit": "連線",
      "invalid": "密碼無效，請再試一次。"
    },
    "account": {
      "section": "帳戶",
      "logoutHint": "中斷此瀏覽器與 gateway 的連線。",
      "logout": "登出"
    },
    "system": {
      "section": "系統",
      "restartHint": "重新啟動 nanobot 以套用執行階段變更。",
      "restart": "重新啟動 nanobot",
      "restarting": "正在重新啟動...",
      "restartEngine": "重新啟動引擎",
      "restartingEngine": "正在重新啟動引擎..."
    },
    "restart": {
      "completed": "重新啟動已完成，耗時 {{seconds}} 秒。"
    },
    "documentTitle": {
      "base": "nanobot",
      "chat": "{{title}} · nanobot"
    },
    "meta": {
      "description": "nanobot Web UI —— 與你的 nanobot 工作區對話。"
    }
  },
  "sidebar": {
    "navigation": "側邊欄導覽",
    "collapse": "收合側邊欄",
    "newChat": "新增對話",
    "searchAria": "搜尋",
    "searchPlaceholder": "搜尋",
    "searchResults": "搜尋結果",
    "noSearchResults": "沒有符合的對話。",
    "recent": "最近對話",
    "settings": "設定",
    "language": {
      "label": "語言",
      "ariaLabel": "切換語言"
    },
    "apps": "應用",
    "automations": "自動任務",
    "skills": {
      "title": "技能"
    }
  },
  "settings": {
    "backToChat": "返回聊天",
    "sidebar": {
      "title": "設定",
      "ariaLabel": "設定分區"
    },
    "nav": {
      "general": "一般",
      "byok": "BYOK",
      "overview": "概覽",
      "appearance": "外觀",
      "models": "模型",
      "providers": "提供商",
      "image": "圖片",
      "voice": "語音",
      "browser": "網頁",
      "runtime": "系統",
      "advanced": "安全",
      "cliApps": "CLI 應用",
      "mcp": "MCP",
      "apps": "應用",
      "automations": "自動任務",
      "skills": "技能"
    },
    "sections": {
      "interface": "介面",
      "ai": "AI",
      "system": "系統",
      "about": "關於",
      "status": "狀態",
      "localPreferences": "本機偏好",
      "presets": "預設",
      "imageGeneration": "圖片生成",
      "imageDefaults": "預設值",
      "webSearch": "網頁搜尋",
      "webBehavior": "行為",
      "identity": "身分",
      "webuiSafety": "WebUI 安全",
      "capabilities": "能力",
      "cliApps": "CLI 應用",
      "mcp": "MCP 服務",
      "apps": "應用",
      "nativeHost": "原生宿主",
      "hostSafety": "App 安全",
      "voiceInput": "語音辨識"
    },
    "rows": {
      "theme": "主題",
      "language": "語言",
      "provider": "供應商",
      "model": "模型",
      "restart": "重新啟動 nanobot",
      "configPath": "配置路徑",
      "activePreset": "目前預設",
      "gateway": "閘道",
      "restartState": "重啟狀態",
      "pendingChanges": "待套用更改",
      "selectedPreset": "已選預設",
      "presetModel": "預設模型",
      "density": "密度",
      "activityMode": "活動細節",
      "fileEditDisplay": "檔案編輯顯示",
      "codeWrap": "程式碼換行",
      "maxResults": "最大結果數",
      "timeout": "逾時",
      "jinaReader": "Jina 閱讀器",
      "imageGeneration": "圖片生成",
      "imageProvider": "圖片供應商",
      "imageProviderStatus": "供應商狀態",
      "imageProviderBase": "供應商位址",
      "imageModel": "圖片模型",
      "defaultAspectRatio": "預設比例",
      "defaultImageSize": "預設尺寸",
      "maxImagesPerTurn": "每輪最大圖片數",
      "imageSaveDir": "儲存目錄",
      "botName": "Bot 名稱",
      "botIcon": "Bot 圖示",
      "timezone": "時區",
      "workspacePath": "預設工作區",
      "localServiceAccess": "本機服務",
      "webuiDefaultAccess": "預設權限",
      "currentModel": "目前設定",
      "brandLogos": "品牌 Logo",
      "cliAppsCatalog": "目錄",
      "cliAppsFilter": "篩選",
      "engine": "引擎",
      "logs": "日誌",
      "diagnostics": "診斷",
      "contextWindow": "上下文視窗",
      "transcription": "語音轉寫",
      "transcriptionProvider": "提供商",
      "transcriptionProviderStatus": "提供商狀態",
      "transcriptionModel": "模型",
      "transcriptionLanguage": "語言",
      "voiceLimits": "限制"
    },
    "help": {
      "theme": "在淺色與深色外觀之間切換。",
      "language": "選擇 WebUI 使用的語言。",
      "provider": "選擇處理新模型請求的供應商。",
      "model": "設定 nanobot 預設使用的模型名稱。",
      "configPath": "目前閘道使用中的配置檔。",
      "selectedPreset": "命名預設在此為唯讀；請在 config.json 中編輯。",
      "presetModel": "切回 Default 後可在 WebUI 中編輯模型與供應商。",
      "density": "只儲存在此瀏覽器中。",
      "activityMode": "選擇預設顯示多少 agent 活動細節。",
      "fileEditDisplay": "選擇檔案編輯活動預設顯示行數或差異。",
      "codeWrap": "讓長程式碼行在小螢幕上也易讀。",
      "maxResults": "每次 web_search 呼叫返回的結果數。",
      "timeout": "搜尋供應商請求逾時前的秒數。",
      "jinaReader": "可用時為 web_fetch 使用 Jina Reader。",
      "imageGeneration": "配置圖片供應商後，在聊天中開放 generate_image。",
      "imageProvider": "選擇 generate_image 使用的註冊供應商。",
      "imageProviderStatus": "圖片生成會重用「供應商」中的憑證。",
      "imageModel": "傳送給所選圖片供應商的模型名稱。",
      "defaultAspectRatio": "提示詞未指定比例時使用。",
      "defaultImageSize": "傳送給支援此選項的供應商的尺寸提示。",
      "maxImagesPerTurn": "單次 generate_image 請求可生成的圖片上限。",
      "botName": "顯示在 nanobot 使用顯示名稱的位置。",
      "botIcon": "顯示在 Bot 名稱旁的短 emoji 或文字。",
      "timezone": "用於排程和需要時間感知的回覆。",
      "localServiceAccess": "允許完全訪問權限下的 shell 命令訪問 localhost 服務。",
      "webuiDefaultAccess": "用於沒有單獨專案權限的 Web 聊天。",
      "securityManagedControls": "網頁抓取始終保護本機、內網和 metadata 服務。核心渠道安全仍由 config.json 管理。",
      "currentModel": "用於新的回覆。",
      "selectedModelProvider": "由選取的模型決定。",
      "selectedModelValue": "由選取的模型決定。",
      "brandLogos": "在設定中顯示第三方提供商和 CLI 圖示。",
      "cliAppsCatalog": "只安裝 nanobot 可在本機執行的應用 CLI 轉接器；不會改動原生應用。",
      "cliAppsFilter": "按應用、類別或能力搜尋。",
      "logs": "開啟原生引擎日誌資料夾。",
      "diagnostics": "匯出一份用於支援排查的小型執行報告。",
      "localServiceAccessNative": "允許完全訪問權限下的 shell 命令訪問這台 Mac 上的服務。",
      "webuiDefaultAccessNative": "用於沒有單獨專案權限的原生聊天。",
      "contextWindow": "選擇此模型配置的預設上下文預算。",
      "transcription": "送出前先把麥克風輸入轉寫到輸入框。聊天渠道的語音訊息也使用同一組設定。",
      "transcriptionProvider": "使用「提供商」中對應提供商的憑證。",
      "transcriptionProviderStatus": "API Key 仍保存在 providers 裡，不寫進 transcription 設定。",
      "transcriptionModel": "除非提供商需要自訂模型 ID，否則保持解析後的預設值即可。",
      "transcriptionLanguage": "可選 ISO-639 語言提示，例如 en、zh、ja 或 ko。"
    },
    "values": {
      "light": "淺色",
      "dark": "深色",
      "notAvailable": "不可用",
      "enabled": "已啟用",
      "disabled": "已停用",
      "restartPending": "等待重啟",
      "ready": "就緒",
      "privateEngine": "私有引擎",
      "unixSocket": "Unix socket",
      "defaultWorkspace": "預設工作區",
      "comfortable": "舒適",
      "compact": "緊湊",
      "auto": "自動",
      "expanded": "展開",
      "summary": "摘要",
      "diff": "差異",
      "collapsedDiff": "摺疊差異",
      "on": "開啟",
      "off": "關閉",
      "defaultPermission": "預設權限",
      "fullAccess": "完全訪問權限",
      "configured": "已配置",
      "notConfigured": "未配置",
      "pending": "等待中",
      "restartingEngine": "正在重啟"
    },
    "status": {
      "loading": "正在載入設定...",
      "loadError": "無法載入設定",
      "unsaved": "有未儲存的更改。",
      "upToDate": "已是最新。",
      "savedRestart": "已儲存。重新啟動 nanobot 後生效。",
      "restartAfterSaving": "儲存更改後，在合適時重啟。",
      "savedRestartApply": "已儲存。準備好後重啟。",
      "imageProviderRestart": "圖片供應商更改已儲存。準備好後重啟。",
      "hostRestartAfterSaving": "儲存後 nanobot 會重啟引擎。",
      "hostRestartPending": "已儲存。準備好後會重啟引擎。",
      "hostApiUnavailable": "宿主操作僅在原生應用中可用。",
      "logsOpened": "已開啟日誌資料夾。",
      "logsOpenFailed": "無法開啟日誌資料夾。",
      "diagnosticsExported": "診斷已匯出到 {{path}}。",
      "diagnosticsExportFailed": "無法匯出診斷。"
    },
    "actions": {
      "save": "儲存",
      "saving": "正在儲存",
      "edit": "編輯",
      "cancel": "取消",
      "open": "開啟",
      "export": "匯出",
      "opening": "正在開啟...",
      "exporting": "正在匯出..."
    },
    "byok": {
      "description": "自帶 provider key。Nanobot 會從目前 config 讀取這些值，只有已設定的 provider 才能在一般設定中選擇。",
      "configured": "已設定",
      "notConfigured": "未設定",
      "configuredSection": "已設定",
      "notConfiguredSection": "未設定",
      "showMore": "再顯示 {{count}} 個",
      "showLess": "收合",
      "apiKey": "API key",
      "apiBase": "API base",
      "apiKeyPlaceholder": "輸入 API key",
      "apiKeyConfiguredPlaceholder": "留空則保留目前 key",
      "configuredKeyHint": "已設定的 key",
      "apiBasePlaceholder": "使用 provider 預設地址",
      "apiKeyRequired": "需要 API key 才能設定此 provider。",
      "showApiKey": "顯示 API key",
      "hideApiKey": "隱藏 API key",
      "noConfiguredProviders": "沒有已設定的 provider",
      "configureFirst": "請先在 BYOK 設定 provider。",
      "openByok": "開啟 BYOK",
      "tabs": {
        "ariaLabel": "BYOK 憑證類型",
        "llm": "LLM",
        "webSearch": "網頁搜尋"
      },
      "webSearch": {
        "provider": "搜尋 provider",
        "providerHelp": "選擇 web search 工具使用的後端。",
        "selectProvider": "選擇 provider",
        "credentials": "憑證",
        "noCredentialRequired": "不需要 key",
        "noCredentialHelp": "DuckDuckGo 不需要儲存 API key。",
        "apiKeyHelp": "儲存到 config 後只顯示遮罩提示。",
        "baseUrl": "Base URL",
        "baseUrlHelp": "SearXNG 需要你自己的實例網址。",
        "baseUrlPlaceholder": "https://search.example.com",
        "apiKeyRequired": "此搜尋 provider 需要 API key。",
        "baseUrlRequired": "SearXNG 需要 Base URL。",
        "missingCredential": "填寫必要憑證後才能儲存。",
        "saveHint": "變更會套用到新的 web search 請求。"
      }
    },
    "overview": {
      "model": "目前模型",
      "providers": "供應商",
      "configuredCount": "已配置 {{count}} 個",
      "totalProviders": "共 {{count}} 個可用",
      "webSearch": "網頁搜尋",
      "imageGeneration": "圖片生成",
      "voiceInput": "語音辨識",
      "workspace": "工作區"
    },
    "usage": {
      "title": "Token 活動",
      "shortTitle": "Token Usage",
      "subtitle": "最近 12 個月由供應商回報的 token 用量。",
      "empty": "新的模型回覆產生後，這裡會顯示 token 活動。",
      "totalTokens": "累計 Token 數",
      "peakTokens": "峰值 Token 數",
      "thirtyDayTokens": "30 天 Token 數",
      "currentStreak": "目前連續天數",
      "longestStreak": "最長連續天數",
      "daysValue": "{{count}} 天",
      "last30": "30 天",
      "activeDays": "活躍天數",
      "requests": "請求數",
      "estimated": "估算",
      "includesEstimates": "包含估算",
      "cellTitle": "{{date}}：{{tokens}} tokens，{{requests}} 次請求",
      "sources": {
        "user": "對話",
        "api": "API",
        "cron": "自動任務",
        "dream": "記憶整理",
        "system": "系統"
      }
    },
    "providers": {
      "searchPlaceholder": "搜尋供應商",
      "noMatches": "沒有符合的供應商。",
      "saveProvider": "儲存供應商"
    },
    "image": {
      "selectProvider": "選擇供應商",
      "selectAspect": "選擇比例",
      "selectSize": "選擇尺寸",
      "configureProvider": "配置供應商",
      "missingCredential": "啟用圖片生成前請先配置此供應商。"
    },
    "models": {
      "selectModel": "選擇模型",
      "addConfiguration": "新增配置",
      "newConfiguration": "新增模型配置",
      "newConfigurationHelp": "將供應商與模型儲存為一鍵選項。",
      "configurationName": "配置名稱",
      "configurationNameHelp": "重新命名這個已儲存的模型配置。",
      "configurationNamePlaceholder": "快速寫作",
      "searchModels": "搜尋或輸入模型 ID",
      "useCustomModel": "使用",
      "loadingModels": "正在載入模型...",
      "searchCatalog": "搜尋供應商目錄來選擇模型。",
      "modelsAvailable": "可用",
      "noModelResults": "沒有符合的模型。",
      "loadFailed": "模型列表不可用。",
      "unsupportedModelList": "手動輸入模型 ID。",
      "providerNotConfigured": "載入模型前請先配置此供應商。",
      "autoProviderCustomOnly": "自動供應商模式使用自訂模型 ID。"
    },
    "timezone": {
      "select": "選擇時區",
      "search": "搜尋時區",
      "empty": "沒有符合的時區。"
    },
    "cliApps": {
      "allCategories": "全部分類",
      "availableCount": "{{count}} 個應用",
      "installedCount": "已安裝 {{count}} 個",
      "summary": "已安裝 {{installed}} / {{total}} 個 CLI",
      "filterAll": "全部",
      "filterInstalled": "已安裝的 CLI",
      "filterNotInstalled": "未安裝",
      "searchPlaceholder": "搜尋 CLI",
      "statusInstalled": "已安裝",
      "statusAvailable": "可用",
      "statusMissing": "缺少相依項",
      "statusUnsupported": "不支援",
      "statusNotInstalled": "未安裝",
      "unsupported": "不支援",
      "loading": "正在載入 CLI 應用...",
      "empty": "沒有符合此篩選條件的 CLI 應用。",
      "readyTitle": "@{{name}} 已就緒",
      "readyStatus": "就緒",
      "readyPrompt": "使用 @{{name}} 查看這個 CLI 能做什麼。",
      "readyTry": "試用 @{{name}}",
      "readyCopied": "已複製",
      "openChat": "開啟聊天",
      "requires": "需要",
      "test": "測試 CLI",
      "update": "更新 CLI",
      "uninstall": "解除安裝 CLI",
      "install": "安裝 CLI",
      "unavailable": "不可用",
      "noDescription": "暫無描述。"
    },
    "about": {
      "version": "版本",
      "checking": "正在檢查...",
      "checkForUpdates": "檢查更新",
      "upToDate": "已是最新版本",
      "updateAvailable": "有可用更新 v{{version}}"
    },
    "mcp": {
      "allCategories": "全部分類",
      "summary": "已啟用 {{installed}} / {{total}} 個預設",
      "filterAll": "全部",
      "filterInstalled": "已啟用",
      "filterNotInstalled": "未啟用",
      "searchPlaceholder": "搜尋 MCP 預設",
      "moreOptions": "更多 MCP 選項",
      "moreOptionsSubtitle": "新增自訂服務，或匯入 mcp.json。",
      "customTitle": "自訂 MCP",
      "customSubtitle": "新增任意 stdio、HTTP 或 SSE MCP 服務。",
      "customAction": "自訂",
      "importAction": "匯入",
      "serverName": "服務名稱",
      "serverUrl": "URL",
      "transport": "傳輸方式",
      "command": "指令",
      "args": "Args JSON",
      "headers": "Headers JSON",
      "env": "Env JSON",
      "timeout": "工具逾時",
      "advancedOptions": "進階選項",
      "hideAdvanced": "隱藏進階",
      "saveCustom": "儲存 MCP",
      "configImport": "匯入 mcp.json",
      "importConfig": "匯入",
      "restartRequired": "重新啟動 nanobot 以連接更新後的 MCP 工具。",
      "toolsFound": "{{count}} 個工具",
      "loading": "正在載入 MCP 預設...",
      "empty": "沒有符合此篩選條件的 MCP 預設。",
      "openDocs": "開啟文件",
      "test": "測試",
      "remove": "移除",
      "enable": "啟用",
      "enabled": "已啟用",
      "setup": "連接",
      "configure": "連接",
      "connectTitle": "連接 {{name}}",
      "connectHint": "從你的帳號設定中加入金鑰。",
      "saveAndEnable": "儲存並啟用",
      "updateSetup": "更新設定",
      "configured": "已設定",
      "keepExisting": "留空以保留目前值",
      "statusConfigured": "已設定",
      "statusMissingCredentials": "需要金鑰",
      "statusMissingDependency": "需要相依項",
      "statusComingSoon": "即將推出",
      "statusNotInstalled": "未啟用",
      "toolScope": "工具",
      "allTools": "全部",
      "noTools": "無",
      "testForTools": "執行測試以檢查並選擇個別工具。"
    },
    "legal": {
      "thirdPartyBrands": "產品名稱、標誌與品牌均屬於其各自擁有者。使用僅為識別用途，並不代表背書。"
    },
    "apps": {
      "description": "啟用插件、本機應用適配器和已連接的工具服務。",
      "cliLabel": "CLI",
      "mcpLabel": "MCP",
      "channelLabel": "通道",
      "featureLabel": "能力",
      "filterAll": "全部",
      "filterPlugins": "插件",
      "filterCli": "CLI 應用",
      "filterMcp": "MCP 服務",
      "enabledSummary": "已啟用 {{count}} 個",
      "caption": "{{plugins}} 個插件 · {{cli}} 個 CLI · {{mcp}} 個 MCP",
      "searchPlaceholder": "搜尋應用",
      "featured": "應用目錄",
      "loading": "正在載入應用...",
      "empty": "沒有符合的應用。",
      "restartRequired": "重新啟動 nanobot 以套用更新後的應用和能力。"
    },
    "nanobotFeatures": {
      "enabled": "已啟用",
      "enable": "啟用",
      "disable": "停用",
      "ready": "就緒",
      "missingDependency": "缺少支援套件",
      "installSupport": "安裝支援套件",
      "installConfirmTitle": "安裝 {{name}} 支援？",
      "installConfirmDescription": "將安裝並啟用 {{name}} 支援。是否繼續？",
      "installConfirmAction": "安裝並啟用",
      "websocketRequired": "WebUI 必需",
      "channelDisabled": "通道已停用",
      "notEnabled": "未啟用"
    },
    "automations": {
      "filters": {
        "all": "全部",
        "active": "執行中",
        "paused": "已暫停",
        "failed": "異常",
        "system": "系統"
      },
      "sort": {
        "next": "下次執行",
        "last": "上次執行",
        "updated": "更新時間",
        "name": "名稱"
      },
      "search": "搜尋任務、訊息、關聯對話或排程",
      "queue": "任務佇列",
      "loading": "正在載入自動任務...",
      "noMatches": "目前檢視沒有符合的自動任務。",
      "empty": "尚無自動任務。",
      "emptyHint": "請從它應該執行的來源處建立，這樣 nanobot 才能保留正確上下文。",
      "oneShot": "一次性",
      "systemTask": "系統管理的自動任務",
      "localTrigger": "本機觸發器",
      "labels": {
        "schedule": "排程",
        "next": "下次",
        "origin": "關聯會話",
        "created": "建立於",
        "updated": "更新於"
      },
      "runNow": "立即執行",
      "pause": "暫停",
      "resume": "恢復",
      "edit": "編輯",
      "delete": "刪除",
      "protected": "受保護",
      "editTitle": "編輯自動任務",
      "save": "儲存",
      "deleteTitle": "刪除自動任務",
      "deleteDescription": "這會從 cron 儲存中刪除 {{name}}，歷史聊天訊息會保留在會話中。",
      "cancel": "取消",
      "status": {
        "system": "系統",
        "running": "正在執行",
        "paused": "已暫停",
        "failed": "失敗",
        "completed": "已完成",
        "noSchedule": "無排程",
        "active": "執行中"
      },
      "origin": {
        "system": "系統",
        "unknown": "未關聯會話"
      },
      "channels": {
        "api": "API",
        "cli": "CLI",
        "dingtalk": "釘釘",
        "discord": "Discord",
        "email": "電子郵件",
        "feishu": "飛書",
        "matrix": "Matrix",
        "msteams": "Microsoft Teams",
        "qq": "QQ",
        "slack": "Slack",
        "telegram": "Telegram",
        "wechat": "微信",
        "wecom": "企業微信",
        "weixin": "微信",
        "whatsapp": "WhatsApp"
      },
      "schedule": {
        "at": "於 {{time}}",
        "every": "每 {{duration}}",
        "cron": "Cron {{expr}}",
        "cronWithTz": "Cron {{expr}} · {{tz}}",
        "withTz": "{{summary}} · {{tz}}",
        "dailyAt": "每天 {{time}}",
        "weekdaysAt": "工作日 {{time}}",
        "hourlyAt": "每小時第 {{minute}} 分鐘",
        "hourlyWindow": "{{start}}-{{end}} 點每小時第 {{minute}} 分鐘",
        "local": "本機觸發器",
        "custom": "自訂排程"
      },
      "next": {
        "paused": "已暫停",
        "pending": "正在執行",
        "local": "等待觸發",
        "none": "沒有下次執行"
      },
      "message": {
        "showMore": "查看完整訊息",
        "showLess": "收起訊息"
      },
      "fields": {
        "name": "名稱",
        "message": "訊息",
        "scheduleType": "排程類型",
        "every": "每隔",
        "unit": "單位",
        "cronExpression": "Cron 表達式",
        "timezone": "時區",
        "runAt": "執行時間"
      },
      "scheduleTypes": {
        "every": "間隔",
        "cron": "Cron",
        "at": "一次性"
      },
      "everyUnits": {
        "second": "秒",
        "minute": "分鐘",
        "hour": "小時",
        "day": "天"
      },
      "validation": {
        "nameRequired": "名稱不能為空。",
        "messageRequired": "訊息不能為空。",
        "intervalRequired": "間隔必須是正整數。",
        "cronRequired": "Cron 表達式不能為空。",
        "timeRequired": "執行時間不能為空。",
        "futureRequired": "執行時間必須晚於目前時間。"
      }
    },
    "oauth": {
      "authentication": "OAuth 認證",
      "signIn": "登入",
      "signingIn": "登入中...",
      "signInAgain": "重新登入",
      "signOut": "登出",
      "signedInAs": "已登入為 {{account}}",
      "signInHelp": "從這台裝置登入；不會在配置中儲存 API key。",
      "signInRequired": "需要登入",
      "signInBeforeSaving": "將此 OAuth 供應商設為目前模型供應商前，請先登入。",
      "signedIn": "已登入",
      "notSignedIn": "未登入"
    },
    "skills": {
      "description": "查看此 agent 在對話中可以載入的指令技能。",
      "caption": "{{available}} 個可用 · 共 {{total}} 個",
      "featured": "Agent 技能",
      "empty": "暫無可用技能。",
      "sourceWorkspace": "自訂",
      "sourceBuiltin": "內建",
      "statusAvailable": "可用",
      "statusUnavailable": "不可用",
      "unavailableReason": "缺少：{{reason}}",
      "openDetails": "查看 {{name}} 詳情",
      "loadingDetail": "正在載入技能詳情...",
      "loadFailed": "無法載入技能詳情。",
      "descriptionTitle": "完整描述",
      "source": "來源",
      "status": "狀態",
      "requirements": "需求",
      "noRequirements": "沒有明確需求。",
      "commands": "命令",
      "environment": "環境變數",
      "missingCommands": "缺 CLI",
      "missingEnvironment": "缺 ENV",
      "unavailableReasonLabel": "不可用原因",
      "rawInstructions": "原始 SKILL.md",
      "rawInstructionsEmpty": "沒有原始說明。",
      "detailDescription": "{{name}} 的詳細資訊。"
    },
    "voice": {
      "selectProvider": "選擇提供商",
      "configureProvider": "設定提供商",
      "languageAuto": "自動"
    }
  },
  "chat": {
    "fallbackTitle": "對話 {{id}}",
    "forkTitle": "分叉：{{title}}",
    "loading": "載入中…",
    "noSessions": "目前還沒有會話。",
    "showMore": "再顯示 {{count}} 個",
    "collapsed": "已折疊 {{count}} 個對話",
    "showLess": "收起",
    "actions": "「{{title}}」的會話操作",
    "newInProject": "在 {{project}} 中開始新對話",
    "activity": {
      "running": "Agent 正在執行",
      "complete": "Agent 已完成",
      "updated": "有新內容"
    },
    "pin": "置頂",
    "unpin": "取消置頂",
    "rename": "重新命名",
    "renameTitle": "重新命名對話",
    "renameDescription": "為這個對話設定僅用於 WebUI 側邊欄的名稱。",
    "renamePlaceholder": "對話名稱",
    "renameProjectTitle": "重新命名專案",
    "renameProjectDescription": "為這個專案設定僅用於 WebUI 側邊欄的名稱。",
    "renameProjectPlaceholder": "專案名稱",
    "renameSave": "儲存",
    "archive": "封存",
    "unarchive": "取消封存",
    "showArchived": "顯示封存",
    "hideArchived": "隱藏封存",
    "delete": "刪除",
    "newChat": "新增對話",
    "groups": {
      "pinned": "置頂",
      "all": "對話",
      "projects": "專案",
      "today": "今天",
      "yesterday": "昨天",
      "earlier": "更早",
      "archived": "已封存"
    }
  },
  "deleteConfirm": {
    "title": "刪除這個對話？",
    "description": "此操作無法復原。",
    "cancel": "取消",
    "confirm": "刪除",
    "automationsDescription": "這個對話有關聯的自動任務。刪除對話也會刪除這些自動任務。",
    "moreAutomations": "另有 {{count}} 個",
    "confirmWithAutomations": "刪除",
    "schedule": {
      "at": "{{time}}",
      "every": "每 {{duration}}",
      "cron": "Cron {{expr}}",
      "cronWithTz": "Cron {{expr}} · {{tz}}",
      "local": "本機觸發器",
      "unknown": "自訂計畫"
    },
    "next": {
      "label": "下次：{{time}}",
      "disabled": "已暫停",
      "local": "等待觸發",
      "none": "沒有下次執行"
    }
  },
  "connection": {
    "idle": "閒置",
    "connecting": "連線中…",
    "open": "已連線",
    "reconnecting": "重新連線中…",
    "closed": "已中斷",
    "error": "連線錯誤"
  },
  "thread": {
    "loadingConversation": "正在載入對話…",
    "empty": {
      "greetings": {
        "workOn": "我們要一起做點什麼？",
        "start": "今天從哪裡開始？",
        "build": "今天一起構建什麼？",
        "tackle": "我們要一起解決什麼？"
      },
      "quickActions": {
        "plan": {
          "title": "建立專案計畫",
          "prompt": "幫我為接下來要做的事情寫一份簡潔的專案計畫。"
        },
        "analyze": {
          "title": "分析這些資料",
          "prompt": "幫我分析這些資料，並指出最重要的模式。"
        },
        "brainstorm": {
          "title": "腦力激盪想法",
          "prompt": "圍繞這個問題腦力激盪幾個實用方案，並說明取捨。"
        },
        "code": {
          "title": "撰寫程式碼",
          "prompt": "幫我為這個任務撰寫程式碼，先從最小可用改動開始。"
        },
        "summarize": {
          "title": "總結這份文件",
          "prompt": "幫我總結這份文件，並列出關鍵重點。"
        },
        "more": {
          "title": "更多",
          "prompt": "展示幾個你在這個工作區裡可以幫我的實用方式。"
        }
      },
      "imageQuickActions": {
        "icon": {
          "title": "設計應用程式圖示",
          "prompt": "生成一個乾淨的 1:1 nanobot 應用程式圖示：友善的機器人、簡潔向量風格、柔和藍白配色，不要文字。"
        },
        "sticker": {
          "title": "製作貼圖",
          "prompt": "生成一張可愛貼圖風格的小型機器人助理圖片，背景像透明貼紙，表情活潑有趣。"
        },
        "poster": {
          "title": "建立海報",
          "prompt": "生成一張個人 AI 助理的精緻海報概念圖，現代構圖、清楚的視覺層級，適合登陸頁展示。"
        },
        "product": {
          "title": "產品樣機",
          "prompt": "生成一張對話式 AI Web 應用的乾淨產品樣機圖，極簡介面、高級光影、真實裝置邊框。"
        },
        "portrait": {
          "title": "風格化頭像",
          "prompt": "生成一個友善 AI 夥伴的風格化頭像，柔和光線、細節豐富但親切，現代插畫風格。"
        },
        "edit": {
          "title": "編輯圖片",
          "prompt": "幫我編輯一張圖片。先請我上傳或指定要編輯的圖片，然後生成編輯後的結果。"
        }
      }
    },
    "header": {
      "toggleSidebar": "切換側邊欄",
      "newChat": "開始新對話",
      "toggleTheme": "從頂部切換主題",
      "settings": "開啟設定",
      "sessionInfo": "會話詳情"
    },
    "sessionInfo": {
      "title": "會話",
      "untitled": "未命名對話",
      "automations": "自動任務",
      "count": "{{count}}",
      "loading": "正在載入自動任務...",
      "loadFailed": "無法載入自動任務。",
      "empty": "這個會話暫時沒有自動任務。",
      "disabled": "已關閉",
      "schedule": {
        "at": "{{time}}",
        "every": "每 {{duration}}",
        "cron": "Cron {{expr}}",
        "cronWithTz": "Cron {{expr}} · {{tz}}",
        "local": "本機觸發器",
        "unknown": "自訂計畫"
      },
      "next": {
        "label": "下次 {{time}}",
        "pending": "即將執行",
        "disabled": "已暫停",
        "local": "等待觸發",
        "none": "沒有下次執行"
      }
    },
    "composer": {
      "placeholderThread": "輸入訊息…",
      "placeholderHero": "你在想什麼？",
      "placeholderOpening": "正在開啟新對話…",
      "placeholderStreaming": "模型正在回覆…",
      "inputAria": "訊息輸入框",
      "sendHint": "Enter 送出 · Shift+Enter 換行",
      "runRuntimeTitle": "執行中 · {{elapsed}}",
      "goalStateStrip": "目標 · {{label}}",
      "goalStateFallback": "目標",
      "goalStateExpandAria": "查看完整目標",
      "goalStateSheetTitle": "目標",
      "goalStateCloseAria": "關閉目標",
      "send": "送出訊息",
      "stop": "停止回覆",
      "modelNotConfigured": "模型未配置",
      "configureModel": "配置模型",
      "queued": {
        "label": "待引導提示",
        "guide": "引導",
        "delete": "刪除引導",
        "edit": "編輯引導",
        "drag": "拖曳排序"
      },
      "attachImage": "附加圖片",
      "imageMode": {
        "label": "圖片生成",
        "toggle": "切換圖片生成模式",
        "placeholder": "描述或編輯圖片…",
        "aspectAria": "圖片畫幅",
        "aspectLabel": "圖片畫幅",
        "aspect": {
          "auto": "自動",
          "1_1": "方形 1:1",
          "3_4": "直式 3:4",
          "9_16": "故事版 9:16",
          "4_3": "橫式 4:3",
          "16_9": "寬螢幕 16:9"
        }
      },
      "tools": {
        "search": "搜尋",
        "reason": "推理",
        "deepResearch": "深度研究",
        "voice": "語音輸入"
      },
      "voice": {
        "hint": "點擊進行聽寫或長按",
        "stop": "停止錄音",
        "transcribing": "正在轉寫...",
        "recordingStatus": "正在錄音 {{time}}"
      },
      "voiceErrors": {
        "unsupported": "目前瀏覽器不支援語音輸入。",
        "permission": "需要麥克風權限。",
        "notConfigured": "請先設定轉寫提供商。",
        "tooLong": "錄音時間太長。",
        "tooShort": "請稍微多錄一會兒。",
        "noInput": "沒有偵測到麥克風輸入。",
        "failed": "語音轉寫失敗。"
      },
      "slash": {
        "ariaLabel": "斜線命令",
        "label": "命令",
        "navigateHint": "↑↓ 選擇",
        "selectHint": "Enter/Tab 填入",
        "closeHint": "Esc 關閉",
        "commands": {
          "new": {
            "title": "新增對話",
            "description": "重置目前對話，並開始新的對話。"
          },
          "stop": {
            "title": "停止目前任務",
            "description": "取消這個對話中正在執行的 agent 回合。"
          },
          "restart": {
            "title": "重新啟動 nanobot",
            "description": "原地重新啟動 bot 進程。"
          },
          "status": {
            "title": "查看狀態",
            "description": "顯示執行環境、provider 和 channel 狀態。"
          },
          "model": {
            "title": "模型",
            "description": "查看或切換目前模型預設。"
          },
          "history": {
            "title": "查看對話歷史",
            "description": "列印最近 N 則已持久化的對話訊息。"
          },
          "dream": {
            "title": "執行 Dream",
            "description": "手動觸發記憶整理。"
          },
          "dream_log": {
            "title": "查看 Dream 日誌",
            "description": "查看上一次 Dream 整理變更了什麼。"
          },
          "dream_restore": {
            "title": "恢復記憶",
            "description": "將記憶恢復到之前的 Dream 快照。"
          },
          "dream_prompt": {
            "title": "Dream 記憶",
            "description": "設定 Dream 如何整理目前工作區的記憶。"
          },
          "goal": {
            "title": "長期目標",
            "description": "請助理把這則請求當成需要多步驟持續推進的目標。"
          },
          "trigger": {
            "title": "建立本機觸發器",
            "description": "建立綁定到目前聊天工作階段的 CLI 觸發器。"
          },
          "help": {
            "title": "查看說明",
            "description": "列出可用的斜線命令。"
          },
          "pairing": {
            "title": "配對",
            "description": "管理配對請求。"
          }
        },
        "badges": {
          "current": "目前",
          "recent": "最近"
        },
        "details": {
          "goalActive": "目標正在執行",
          "goalReady": "開始一個持續目標",
          "history": "查看最近訊息",
          "stopRunning": "正在執行"
        }
      },
      "encoding": "處理中…",
      "remove": "移除附件",
      "normalizedSizeHint": "{{orig}} → {{current}}（已自動壓縮）",
      "imageRejected": {
        "unsupported_type": "不支援的檔案類型",
        "too_many_images": "每則訊息最多 {{max}} 張圖片",
        "magic_mismatch": "檔案看起來不像真正的圖片",
        "decode_failed": "無法解碼這張圖片",
        "too_large": "圖片太大，請換一張小一點的",
        "io": "無法讀取這個檔案"
      },
      "mentions": {
        "ariaLabel": "應用",
        "label": "應用",
        "cliGroup": "CLI 應用",
        "mcpGroup": "MCP 服務",
        "cliBadge": "CLI",
        "mcpBadge": "MCP",
        "cliDescription": "使用 @{{name}} 呼叫本機 CLI",
        "mcpDescription": "使用 @{{name}} 呼叫 MCP 服務"
      },
      "workspace": {
        "accessAria": "工作區存取權限",
        "projectAria": "選擇專案",
        "projectPlaceholder": "選擇專案",
        "default": "預設權限",
        "full": "完全存取權限"
      }
    },
    "scrollToBottom": "捲動到底部",
    "loadEarlier": "載入更早訊息",
    "forkedFromHistory": "從歷史訊息分叉",
    "promptNavigator": {
      "open": "開啟輸入導覽",
      "title": "輸入列表",
      "search": "搜尋輸入",
      "noResults": "沒有符合的輸入。",
      "jumpTo": "跳到輸入：{{label}}"
    }
  },
  "message": {
    "streaming": "串流輸出中",
    "assistantTyping": "助理正在輸入",
    "toolSingle": "正在使用工具",
    "toolMany": "已使用 {{count}} 個工具",
    "toolSummary": "{{count}} 個工具",
    "toolSummaryMany": "{{count}} 個工具",
    "reasoningTools": "推理 · {{count}} 個工具",
    "reasoningToolsSingular": "推理 · 1 個工具",
    "reasoning": "思考過程",
    "reasoningStreaming": "正在思考…",
    "reasoningSummary": "推理",
    "agentActivitySummary": "{{reasoning}} 步 · {{tools}} 次工具呼叫",
    "agentActivityToolsOnly": "{{tools}} 次工具呼叫",
    "agentActivityLiveSummary": "進行中… · {{reasoning}} 步 · {{tools}} 次工具呼叫",
    "agentActivityLiveToolsOnly": "進行中… · {{tools}} 次工具呼叫",
    "imageAttachment": "圖片附件",
    "forkFromHere": "分叉",
    "copyReply": "複製",
    "copiedReply": "已複製",
    "turnLatencyTitle": "本輪耗時（端到端）",
    "fileEditViewDiff": "查看差異",
    "fileEditViewLargeDiff": "查看大型差異",
    "fileEditDiffLineCount": "{{count}} 行",
    "fileEditUnchangedLinesHidden": "已隱藏 {{count}} 行未修改內容",
    "fileEditShowMoreLines": "顯示其餘 {{count}} 行",
    "fileEditShowFewerLines": "收起部分行",
    "fileEditOpenFile": "開啟檔案",
    "fileEditDiffTruncated": "差異內容已截斷。開啟檔案可查看完整更改。",
    "activityThinkingFor": "思考中，已 {{duration}}",
    "activityThought": "已思考",
    "activityThoughtFor": "已思考 {{duration}}",
    "activityWorkingFor": "處理中，已 {{duration}}",
    "activityWorked": "已處理",
    "activityWorkedFor": "已處理 {{duration}}",
    "cliActivityRunningOne": "正在使用 @{{name}}",
    "cliActivityRanOne": "已使用 @{{name}}",
    "cliActivityFailedOne": "@{{name}} 失敗",
    "cliActivityRunningMany": "正在使用 {{count}} 個 CLI 應用",
    "cliActivityRanMany": "已使用 {{count}} 個 CLI 應用",
    "cliActivityFailedMany": "{{count}} 個 CLI 應用失敗",
    "cliRunRunning": "使用中",
    "cliRunRan": "已使用",
    "cliRunFailed": "失敗",
    "automationSourceFallback": "自動化",
    "automationTriggered": "自動觸發"
  },
  "lightbox": {
    "title": "圖片預覽",
    "open": "檢視圖片",
    "prev": "上一張",
    "next": "下一張",
    "close": "關閉預覽"
  },
  "filePreview": {
    "aria": "檔案預覽",
    "close": "關閉檔案預覽",
    "loading": "正在載入預覽...",
    "failed": "無法預覽這個檔案。",
    "routeMissing": "檔案預覽需要最新的 gateway。請重啟 nanobot gateway 後再試。",
    "resize": "調整檔案預覽寬度",
    "truncated": "檔案較大，目前只顯示前半部分預覽。"
  },
  "code": {
    "fallbackLanguage": "程式碼",
    "copyAria": "複製程式碼",
    "copy": "複製",
    "copied": "已複製"
  },
  "common": {
    "dismiss": "關閉"
  },
  "errors": {
    "messageTooBig": {
      "title": "訊息過大",
      "body": "伺服器因超過大小限制拒收了上一則訊息。可移除部分圖片或改用較小的圖片後再試。"
    },
    "workspaceScopeRejected": {
      "title": "工作區未變更",
      "body": "閘道拒絕了要求的專案或存取權限，Nanobot 已繼續使用先前的工作區。"
    }
  },
  "workspace": {
    "dialog": {
      "defaultProject": "預設工作區",
      "manual": "貼上路徑",
      "manualPlaceholder": "/Users/name/project",
      "usePath": "使用路徑",
      "absolutePathRequired": "請輸入這台機器上的絕對資料夾路徑。"
    }
  }
}
