mirror of
https://github.com/qingchencloud/clawpanel.git
synced 2026-06-01 13:50:09 +08:00
发布 0.15.0: - 新增内核版本兼容层、特性门控、低版本阻断和升级提示 - 新增 PATH 中 OpenClaw CLI 冲突检测、隔离与恢复 - 修复 Hermes Gateway loopback 自动拉起与 /v1/runs 诊断 - 修复 standalone 一键安装包在 About/仪表盘显示未知版本 - 同步 OpenClaw 2026.5.6 推荐版本和热更新 minAppVersion - 补齐本地 JS/Rust 测试与发布前检查说明 验证: - npm run build - node --test tests/*.test.js - node --check src/scripts JS 文件 - cargo fmt --all -- --check - cargo check - cargo clippy --all-targets -- -D warnings - cargo test
761 lines
72 KiB
JavaScript
761 lines
72 KiB
JavaScript
import { _ } from '../helper.js'
|
||
|
||
export default {
|
||
switchedTo: _('已切换到 {name} 模式', 'Switched to {name} mode', '已切換到 {name} 模式', '{name} モードに切り替えました', '{name} 모드로 전환됨'),
|
||
switchFailed: _('引擎切换失败,请稍后重试', 'Engine switch failed, please try again later', '引擎切換失敗,請稍後重試', 'エンジンの切り替えに失敗しました。後でもう一度お試しください', '엔진 전환에 실패했습니다. 잠시 후 다시 시도해 주세요'),
|
||
switcherSectionLabel: _('引擎', 'Engine', '引擎', 'エンジン', '엔진', 'Động cơ', 'Motor', 'Motor', 'Движок', 'Moteur', 'Engine'),
|
||
switcherTooltip: _('点击切换引擎', 'Click to switch engine', '點擊切換引擎', 'クリックしてエンジンを切り替え', '엔진 전환하려면 클릭', 'Nhấp để chuyển đổi engine', 'Haga clic para cambiar de motor', 'Clique para alternar o motor', 'Нажмите, чтобы переключить движок', 'Cliquez pour changer de moteur', 'Klicken, um die Engine zu wechseln'),
|
||
hermesSetupDesc: _('安装并配置 Hermes Agent', 'Install and configure Hermes Agent', '安裝並配置 Hermes Agent'),
|
||
hermesPhaseClickHint: _('点击可返回此步骤', 'Click to go back to this step', '點擊可返回此步驟', 'このステップに戻るにはクリック', '이 단계로 돌아가려면 클릭'),
|
||
hermesSetupIntro: _(
|
||
'Hermes Agent 是一个具有工具调用能力的 AI 助手框架。点击下方按钮一键安装,无需终端操作。',
|
||
'Hermes Agent is an AI assistant with tool-calling capabilities. Click the button below to install — no terminal needed.',
|
||
'Hermes Agent 是一個具有工具調用能力的 AI 助手框架。點擊下方按鈕一鍵安裝,無需終端操作。',
|
||
),
|
||
// 检测阶段
|
||
detecting: _('正在检测环境...', 'Detecting environment...', '正在偵測環境...'),
|
||
detectPython: _('检测 Python 环境', 'Detecting Python', '偵測 Python 環境'),
|
||
detectHermes: _('检测 Hermes Agent', 'Detecting Hermes Agent', '偵測 Hermes Agent'),
|
||
pythonFound: _('Python {version}', 'Python {version}', 'Python {version}'),
|
||
pythonNotFound: _('未检测到 Python(将自动安装)', 'Python not found (will be auto-installed)', '未偵測到 Python(將自動安裝)'),
|
||
pythonTooOld: _('Python {version} 版本过低,需要 3.11+(将自动安装)', 'Python {version} too old, need 3.11+ (will be auto-installed)', 'Python {version} 版本過低,需要 3.11+(將自動安裝)'),
|
||
uvFound: _('uv 包管理器已就绪', 'uv package manager ready', 'uv 套件管理器已就緒'),
|
||
uvNotFound: _('uv 未安装(将自动下载)', 'uv not installed (will be auto-downloaded)', 'uv 未安裝(將自動下載)'),
|
||
gitFound: _('Git 已就绪', 'Git ready', 'Git 已就緒'),
|
||
gitNotFound: _('Git 未安装(从 GitHub 安装需要 Git)', 'Git not found (required for GitHub install)', 'Git 未安裝(從 GitHub 安裝需要 Git)'),
|
||
hermesFound: _('Hermes Agent {version} 已安装', 'Hermes Agent {version} installed', 'Hermes Agent {version} 已安裝'),
|
||
hermesNotFound: _('Hermes Agent 未安装', 'Hermes Agent not installed', 'Hermes Agent 未安裝'),
|
||
hermesReady: _('Hermes Agent 已就绪,Gateway 运行中', 'Hermes Agent ready, Gateway running', 'Hermes Agent 已就緒,Gateway 運行中'),
|
||
// 安装阶段
|
||
installTitle: _('安装 Hermes Agent', 'Install Hermes Agent', '安裝 Hermes Agent'),
|
||
installDesc: _('通过 uv 自动安装(含 Python 环境),无需手动操作', 'Auto-install via uv (includes Python), no manual steps', '透過 uv 自動安裝(含 Python 環境),無需手動操作'),
|
||
installDescSimple: _('一键安装 Hermes Agent 核心包,安装完成后可在管理页面按需添加扩展组件。', 'One-click install of Hermes Agent core package. Extensions can be added later from the management page.', '一鍵安裝 Hermes Agent 核心包,安裝完成後可在管理頁面按需添加擴展組件。'),
|
||
installInfoUv: _('自动下载 uv 包管理器(如未安装)', 'Auto-download uv package manager (if not installed)', '自動下載 uv 包管理器(如未安裝)'),
|
||
installInfoCore: _('安装 hermes-agent 核心包', 'Install hermes-agent core package', '安裝 hermes-agent 核心包'),
|
||
installInfoExtrasLater: _('扩展组件(定时任务、MCP、消息渠道等)可在安装后按需添加', 'Extensions (cron, MCP, messaging, etc.) can be added later as needed', '擴展組件(定時任務、MCP、訊息頻道等)可在安裝後按需添加'),
|
||
installModeLocal: _('本地', 'Local', '本地'),
|
||
installModeCustom: _('自定义', 'Custom', '自訂'),
|
||
installCustomDesc: _('连接到已有的 Hermes Agent Gateway 实例,适用于已在其他机器或手动安装的场景。', 'Connect to an existing Hermes Agent Gateway instance, for setups on other machines or manual installations.', '連接到已有的 Hermes Agent Gateway 實例,適用於已在其他機器或手動安裝的場景。'),
|
||
installCustomHint: _('输入已运行的 Hermes Agent Gateway 地址,例如 http://192.168.1.100:8642', 'Enter the URL of a running Hermes Agent Gateway, e.g. http://192.168.1.100:8642', '輸入已運行的 Hermes Agent Gateway 地址,例如 http://192.168.1.100:8642'),
|
||
installCustomConnect: _('测试连接', 'Test Connection', '測試連接'),
|
||
installCustomTesting: _('连接中...', 'Connecting...', '連接中...'),
|
||
installCustomEmpty: _('请输入 Gateway URL', 'Please enter Gateway URL', '請輸入 Gateway URL'),
|
||
installCustomInvalidUrl: _('URL 格式不正确', 'Invalid URL format', 'URL 格式不正確'),
|
||
installCustomNoResponse: _('Gateway 无响应', 'Gateway not responding', 'Gateway 無回應'),
|
||
installCustomFailed: _('连接失败: {error}', 'Connection failed: {error}', '連接失敗: {error}'),
|
||
installBtn: _('一键安装', 'Install Now', '一鍵安裝'),
|
||
installingBtn: _('正在安装...', 'Installing...', '正在安裝...'),
|
||
installSuccess: _('安装成功!', 'Installation successful!', '安裝成功!'),
|
||
installFailed: _('安装失败', 'Installation failed', '安裝失敗'),
|
||
retryBtn: _('重试', 'Retry', '重試'),
|
||
// Extras 选择
|
||
extrasTitle: _('可选组件', 'Optional Components', '可選組件'),
|
||
extrasDesc: _('选择需要安装的额外功能(可稍后更改)', 'Select optional features to install (can change later)', '選擇需要安裝的額外功能(可稍後更改)'),
|
||
extraCron: _('定时任务', 'Cron Jobs', '定時任務'),
|
||
extraCli: _('CLI 增强', 'CLI Enhanced', 'CLI 增強'),
|
||
extraPty: _('终端后端', 'Terminal Backend', '終端後端'),
|
||
extraMcp: _('MCP 协议', 'MCP Protocol', 'MCP 協議'),
|
||
extraMessaging: _('消息渠道(Telegram/Discord 等)', 'Messaging (Telegram/Discord etc.)', '訊息頻道(Telegram/Discord 等)'),
|
||
extraFeishu: _('飞书', 'Feishu/Lark', '飛書'),
|
||
extraDingtalk: _('钉钉', 'DingTalk', '釘釘'),
|
||
extraSlack: _('Slack', 'Slack', 'Slack'),
|
||
extraVoice: _('语音(TTS/STT)', 'Voice (TTS/STT)', '語音(TTS/STT)'),
|
||
extraAll: _('全部安装', 'Install All', '全部安裝'),
|
||
// 配置阶段
|
||
configTitle: _('配置 Hermes Agent', 'Configure Hermes Agent', '配置 Hermes Agent'),
|
||
configDesc: _('设置 LLM Provider 以启用 AI 功能', 'Set up LLM Provider to enable AI features', '設置 LLM Provider 以啟用 AI 功能'),
|
||
configProvider: _('LLM 提供商', 'LLM Provider', 'LLM 提供商'),
|
||
configApiKey: _('API Key', 'API Key', 'API Key'),
|
||
configModel: _('模型', 'Model', '模型'),
|
||
configBaseUrl: _('自定义 API 地址(可选)', 'Custom API URL (optional)', '自定義 API 地址(可選)'),
|
||
configFetchModels: _('获取模型列表', 'Fetch Models', '取得模型列表'),
|
||
configFetching: _('获取中...', 'Fetching...', '取得中...'),
|
||
configFetchSuccess: _('获取到 {count} 个模型', 'Found {count} models', '取得 {count} 個模型'),
|
||
configFetchFailed: _('获取失败: {error}', 'Fetch failed: {error}', '取得失敗: {error}'),
|
||
configFetchNotSupported: _('此渠道不支持获取模型列表,请前往平台查看可用模型后手动输入', 'This provider does not support model listing. Please check available models on their platform and enter manually.', '此渠道不支持取得模型列表,請前往平台查看可用模型後手動輸入'),
|
||
configFetchNeedKey: _('请先填写 API Key', 'Please enter API Key first', '請先填寫 API Key'),
|
||
configFetchNeedUrl: _('请先选择服务商或填写 Base URL', 'Please select a provider or enter Base URL first', '請先選擇服務商或填寫 Base URL'),
|
||
configSaveBtn: _('保存配置', 'Save Config', '儲存配置'),
|
||
configSkipBtn: _('跳过,稍后配置', 'Skip, configure later', '跳過,稍後配置'),
|
||
configSaved: _('配置已保存', 'Configuration saved', '配置已儲存'),
|
||
// Gateway 阶段
|
||
gatewayTitle: _('启动 Gateway', 'Start Gateway', '啟動 Gateway'),
|
||
gatewayDesc: _('启动 HTTP API 服务以连接 ClawPanel', 'Start HTTP API server to connect with ClawPanel', '啟動 HTTP API 服務以連接 ClawPanel'),
|
||
gatewayStartBtn: _('启动 Gateway', 'Start Gateway', '啟動 Gateway'),
|
||
gatewayStarting: _('正在启动...', 'Starting...', '正在啟動...'),
|
||
gatewayStartFailed: _('Gateway 启动失败', 'Gateway failed to start', 'Gateway 啟動失敗'),
|
||
gatewayRunning: _('Gateway 运行中 (端口 {port})', 'Gateway running (port {port})', 'Gateway 運行中 (端口 {port})'),
|
||
gatewayStopped: _('Gateway 未运行', 'Gateway not running', 'Gateway 未運行'),
|
||
// 完成
|
||
setupComplete: _('设置完成!', 'Setup Complete!', '設定完成!'),
|
||
setupCompleteDesc: _('Hermes Agent 已准备就绪,可以开始使用了。', 'Hermes Agent is ready to use.', 'Hermes Agent 已準備就緒,可以開始使用了。'),
|
||
goToDashboard: _('进入仪表盘', 'Go to Dashboard', '進入儀表盤'),
|
||
// 日志
|
||
viewLogs: _('查看安装日志', 'View install logs', '查看安裝日誌'),
|
||
hideLogs: _('隐藏日志', 'Hide logs', '隱藏日誌'),
|
||
// 仪表盘
|
||
hermesSetupDocLink: _('查看完整文档', 'View full documentation', '查看完整文檔'),
|
||
hermesDashboardTitle: _('Hermes 仪表盘', 'Hermes Dashboard', 'Hermes 儀表盤'),
|
||
dashGatewayStatus: _('Gateway 状态', 'Gateway Status', 'Gateway 狀態'),
|
||
dashRunning: _('运行中', 'Running', '運行中'),
|
||
dashStopped: _('已停止', 'Stopped', '已停止'),
|
||
dashModel: _('当前模型', 'Current Model', '目前模型'),
|
||
dashVersion: _('版本', 'Version', '版本'),
|
||
dashPort: _('监听端口', 'Listen Port', '監聽端口'),
|
||
dashStartGw: _('启动 Gateway', 'Start Gateway', '啟動 Gateway'),
|
||
dashStopGw: _('停止 Gateway', 'Stop Gateway', '停止 Gateway'),
|
||
dashRestartGw: _('重启 Gateway', 'Restart Gateway', '重啟 Gateway'),
|
||
dashStopping: _('正在停止...', 'Stopping...', '正在停止...'),
|
||
dashRestarting: _('正在重启...', 'Restarting...', '正在重啟...'),
|
||
dashQuickActions: _('快捷操作', 'Quick Actions', '快捷操作'),
|
||
dashOpenChat: _('打开对话', 'Open Chat', '開啟對話'),
|
||
dashOpenPanel: _('打开面板', 'Open Panel', '開啟面板'),
|
||
dashOpenPanelDesc: _('Hermes 对话面板', 'Hermes Chat Panel', 'Hermes 對話面板'),
|
||
// Native Hermes dashboard launcher
|
||
dashNativePanel: _('原生 Dashboard', 'Native Dashboard', '原生 Dashboard', 'ネイティブ Dashboard', '네이티브 Dashboard'),
|
||
dashNativePanelDesc: _('也可使用原生 hermes dashboard(默认 9119,需自行启动)', 'You can also use the native hermes dashboard (default 9119; start it manually).', '也可使用原生 hermes dashboard(預設 9119,需自行啟動)'),
|
||
dashNativePanelOpen: _('打开 9119 →', 'Open 9119 →', '開啟 9119 →', '9119 を開く →', '9119 열기 →'),
|
||
dashNativePanelOffline: _('Gateway 未运行', 'Gateway offline', 'Gateway 未執行', 'Gateway 未実行', 'Gateway 미실행'),
|
||
dashNativePanelTooOld: _('需 v0.10.0+', 'Requires v0.10.0+', '需 v0.10.0+', 'v0.10.0+ が必要', 'v0.10.0+ 필요'),
|
||
dashNativePanelOpenFail: _('打开浏览器失败', 'Failed to open browser', '開啟瀏覽器失敗', 'ブラウザを開くのに失敗しました', '브라우저 열기 실패'),
|
||
dashNativePanelChecking: _('检测 Dashboard 端口…', 'Checking dashboard port…', '檢測 Dashboard 連接埠…', 'Dashboard ポートを確認中…', 'Dashboard 포트 확인 중…'),
|
||
dashNativePanelStarting: _('正在启动 Dashboard…', 'Starting Dashboard…', '正在啟動 Dashboard…', 'Dashboard を起動中…', 'Dashboard 시작 중…'),
|
||
dashNativePanelStartFirstHint: _('首次启动需构建前端,最长约 1-2 分钟…',
|
||
'First launch builds the frontend; this can take 1-2 minutes…',
|
||
'首次啟動需建構前端,最長約 1-2 分鐘…',
|
||
'初回起動はフロントエンドをビルドするため 1-2 分かかる場合があります…',
|
||
'첫 실행 시 프론트엔드 빌드로 1-2분 소요될 수 있습니다…'),
|
||
dashNativePanelStartTimeout: _('启动超时(端口 {port} 仍未响应)。请稍候再试,或在终端运行 hermes dashboard 查看实际错误。',
|
||
'Startup timed out (port {port} still unresponsive). Wait a bit and retry, or run hermes dashboard in a terminal to see the real error.',
|
||
'啟動逾時(連接埠 {port} 仍未回應)。請稍候再試,或在終端執行 hermes dashboard 查看實際錯誤。',
|
||
'起動タイムアウト(ポート {port} が応答しません)。少し待って再試行するか、ターミナルで hermes dashboard を実行して実際のエラーを確認してください。',
|
||
'시작 시간 초과 (포트 {port} 응답 없음). 잠시 후 다시 시도하거나 터미널에서 hermes dashboard를 실행하여 실제 오류를 확인하세요.'),
|
||
dashNativePanelStartPortBusy: _('端口 {port} 被占用,可能有别的 Hermes Dashboard 实例在运行。',
|
||
'Port {port} is in use; another Hermes Dashboard instance may be running.',
|
||
'連接埠 {port} 已被佔用,可能有另一個 Hermes Dashboard 實例在執行。',
|
||
'ポート {port} は使用中です。別の Hermes Dashboard インスタンスが実行されている可能性があります。',
|
||
'포트 {port}이(가) 사용 중입니다. 다른 Hermes Dashboard 인스턴스가 실행 중일 수 있습니다.'),
|
||
dashNativePanelStartGeneric: _('Dashboard 启动失败',
|
||
'Failed to start Dashboard',
|
||
'Dashboard 啟動失敗',
|
||
'Dashboard の起動に失敗しました',
|
||
'Dashboard 시작 실패'),
|
||
dashNativePanelWindowsTitle: _('原生 Windows 暂不支持 Hermes Dashboard',
|
||
'Hermes Dashboard not supported on native Windows',
|
||
'原生 Windows 暫不支援 Hermes Dashboard',
|
||
'ネイティブ Windows では Hermes Dashboard はサポートされていません',
|
||
'네이티브 Windows에서 Hermes Dashboard는 지원되지 않습니다'),
|
||
dashNativePanelWindowsDesc: _('Hermes Agent 在原生 Windows 上无条件导入 POSIX-only 标准库(fcntl / termios),导致 dashboard 启动崩溃。这是已知的上游 bug,官方暂未修复。',
|
||
'Hermes Agent unconditionally imports POSIX-only stdlib modules (fcntl / termios) on native Windows, which crashes the dashboard at startup. This is a known upstream bug not yet fixed.',
|
||
'Hermes Agent 在原生 Windows 上無條件匯入 POSIX-only 標準函式庫(fcntl / termios),導致 dashboard 啟動崩潰。這是已知的上游 bug,官方暫未修復。',
|
||
'Hermes Agent はネイティブ Windows で POSIX 専用の標準ライブラリ(fcntl / termios)を無条件にインポートするため、dashboard が起動時にクラッシュします。これは既知のアップストリームバグで未修正です。',
|
||
'Hermes Agent는 네이티브 Windows에서 POSIX 전용 표준 라이브러리(fcntl / termios)를 무조건 가져와 dashboard 시작 시 충돌합니다. 알려진 업스트림 버그이며 아직 수정되지 않았습니다.'),
|
||
dashNativePanelWindowsAlt1: _('继续使用 ClawPanel 内置的 Hermes 面板(推荐,体验更好)',
|
||
'Keep using ClawPanel\'s built-in Hermes panel (recommended, better experience)',
|
||
'繼續使用 ClawPanel 內建的 Hermes 面板(推薦,體驗更好)',
|
||
'ClawPanel 内蔵の Hermes パネルを使い続ける(推奨、より良い体験)',
|
||
'ClawPanel 내장 Hermes 패널을 계속 사용 (권장, 더 나은 경험)'),
|
||
dashNativePanelWindowsAlt2: _('在 WSL2 中安装并运行 Hermes(hermes dashboard 在 Linux 上工作正常)',
|
||
'Install and run Hermes inside WSL2 (hermes dashboard works fine on Linux)',
|
||
'在 WSL2 中安裝並執行 Hermes(hermes dashboard 在 Linux 上工作正常)',
|
||
'WSL2 内で Hermes をインストール・実行(Linux 上では hermes dashboard は正常に動作)',
|
||
'WSL2 내에서 Hermes 설치 및 실행 (Linux에서는 hermes dashboard 정상 작동)'),
|
||
dashNativePanelWindowsReportLink: _('查看上游 Issue #5246', 'View upstream issue #5246', '檢視上游 Issue #5246', 'アップストリーム Issue #5246 を見る', '업스트림 Issue #5246 보기'),
|
||
dashNativePanelDown: _('Dashboard 服务未运行(端口 {port} 无响应)。请在终端运行:hermes dashboard',
|
||
'Dashboard service is not running (port {port} unreachable). Run in terminal: hermes dashboard',
|
||
'Dashboard 服務未執行(連接埠 {port} 無回應)。請在終端執行:hermes dashboard',
|
||
'Dashboard サービスが実行されていません(ポート {port} に接続できません)。ターミナルで実行: hermes dashboard',
|
||
'Dashboard 서비스가 실행 중이 아닙니다 (포트 {port} 연결 불가). 터미널에서 실행: hermes dashboard'),
|
||
dashNativePanelDownTitle: _('Hermes Dashboard 未启动', 'Hermes Dashboard not running', 'Hermes Dashboard 未啟動', 'Hermes Dashboard が実行されていません', 'Hermes Dashboard가 실행 중이 아닙니다'),
|
||
dashNativePanelStartHint: _('在终端运行下面命令启动 Dashboard 后再试:', 'Run the command below in your terminal to start the Dashboard, then retry:', '在終端執行以下命令啟動 Dashboard 後再試:', 'ターミナルで以下を実行して Dashboard を起動してから再試行してください:', '아래 명령을 터미널에서 실행하여 Dashboard를 시작한 후 다시 시도하세요:'),
|
||
dashNativePanelDepHint: _('首次使用需要先安装 Web 依赖(fastapi + uvicorn)。点击下方按钮自动安装,或在终端运行:',
|
||
'First-time use requires installing the Web dependencies (fastapi + uvicorn). Click the button below to auto-install, or run in your terminal:',
|
||
'首次使用需要先安裝 Web 依賴(fastapi + uvicorn)。點擊下方按鈕自動安裝,或在終端執行:',
|
||
'初回使用には Web 依存関係(fastapi + uvicorn)のインストールが必要です。下のボタンで自動インストールするか、ターミナルで実行:',
|
||
'처음 사용 시 Web 종속성(fastapi + uvicorn) 설치가 필요합니다. 아래 버튼으로 자동 설치하거나 터미널에서 실행:'),
|
||
dashNativePanelInstallWeb: _('安装 Web 依赖', 'Install Web Deps', '安裝 Web 依賴', 'Web 依存関係をインストール', 'Web 종속성 설치'),
|
||
dashNativePanelInstallWebTitle: _('安装 Hermes Web 依赖', 'Installing Hermes Web Dependencies', '安裝 Hermes Web 依賴', 'Hermes Web 依存関係をインストール中', 'Hermes Web 종속성 설치 중'),
|
||
dashNativePanelInstallWebDone: _('Web 依赖安装完成!请在终端运行:hermes dashboard',
|
||
'Web dependencies installed. Now run in your terminal: hermes dashboard',
|
||
'Web 依賴安裝完成!請在終端執行:hermes dashboard',
|
||
'Web 依存関係のインストールが完了しました。ターミナルで実行:hermes dashboard',
|
||
'Web 종속성 설치 완료. 터미널에서 실행: hermes dashboard'),
|
||
dashNativePanelInstallWebFailed: _('安装失败', 'Install failed', '安裝失敗', 'インストールに失敗しました', '설치 실패'),
|
||
dashNativePanelInstallStoppingGw: _('⏸ 停止 Gateway 以释放 hermes.exe 文件锁…',
|
||
'⏸ Stopping Gateway to release hermes.exe file lock…',
|
||
'⏸ 停止 Gateway 以釋放 hermes.exe 檔案鎖…',
|
||
'⏸ hermes.exe ファイルロックを解放するため Gateway を停止中…',
|
||
'⏸ hermes.exe 파일 잠금 해제를 위해 Gateway 중지 중…'),
|
||
dashNativePanelInstallGwStopped: _('✓ Gateway 已停止', '✓ Gateway stopped', '✓ Gateway 已停止', '✓ Gateway を停止しました', '✓ Gateway 중지됨'),
|
||
dashNativePanelInstallRestartingGw: _('▶ 重启 Gateway…', '▶ Restarting Gateway…', '▶ 重新啟動 Gateway…', '▶ Gateway を再起動中…', '▶ Gateway 재시작 중…'),
|
||
dashNativePanelInstallGwRestarted: _('✓ Gateway 已重启', '✓ Gateway restarted', '✓ Gateway 已重新啟動', '✓ Gateway を再起動しました', '✓ Gateway 재시작됨'),
|
||
dashNativePanelInstallGwWarn: _('⚠ Gateway 操作异常',
|
||
'⚠ Gateway operation warning',
|
||
'⚠ Gateway 操作異常',
|
||
'⚠ Gateway 操作の警告',
|
||
'⚠ Gateway 작업 경고'),
|
||
dashOpenCron: _('定时任务', 'Cron Jobs', '定時任務'),
|
||
dashOpenSetup: _('重新配置', 'Reconfigure', '重新配置'),
|
||
dashNoModel: _('未配置', 'Not configured', '未配置'),
|
||
dashApiEndpoint: _('API 地址', 'API Endpoint', 'API 地址'),
|
||
dashModelConfig: _('模型配置', 'Model Config', '模型配置'),
|
||
dashEyebrowLoading: _('HERMES AGENT · GATEWAY', 'HERMES AGENT · GATEWAY', 'HERMES AGENT · GATEWAY'),
|
||
dashEyebrowOnline: _('HERMES AGENT · GATEWAY 在线', 'HERMES AGENT · GATEWAY ONLINE', 'HERMES AGENT · GATEWAY 在線'),
|
||
dashEyebrowOffline: _('HERMES AGENT · GATEWAY 离线', 'HERMES AGENT · GATEWAY OFFLINE', 'HERMES AGENT · GATEWAY 離線'),
|
||
dashRefresh: _('刷新', 'Refresh', '重新整理'),
|
||
dashProvider: _('服务商', 'Provider', '服務商'),
|
||
dashProviderPresets: _('服务商预设', 'Provider Presets', '服務商預設'),
|
||
dashApiBaseUrl: _('API Base URL', 'API Base URL', 'API Base URL'),
|
||
dashApiKey: _('API Key', 'API Key', 'API Key'),
|
||
dashEnvAdvancedEdit: _('.env 高级编辑 →', '.env Advanced Edit →', '.env 進階編輯 →'),
|
||
dashConnectTarget: _('连接目标', 'Connection Target', '連接目標'),
|
||
dashDetectEnv: _('探测环境', 'Detect Environments', '探測環境'),
|
||
dashDetecting: _('探测中...', 'Detecting...', '探測中...'),
|
||
dashConnLocal: _('本地', 'Local', '本地'),
|
||
dashConnWsl2: _('WSL2', 'WSL2', 'WSL2'),
|
||
dashConnDocker: _('Docker', 'Docker', 'Docker'),
|
||
dashConnCustom: _('自定义', 'Custom', '自訂'),
|
||
dashConnApply: _('应用', 'Apply', '套用'),
|
||
dashQuickSwitch: _('快速切换', 'Quick Switch', '快速切換'),
|
||
dashHermesMissing: _('Hermes 未安装', 'Hermes not installed', 'Hermes 未安裝'),
|
||
dashGatewayNotRunning: _('Gateway 未运行', 'Gateway not running', 'Gateway 未執行'),
|
||
dashNoHermesContainers: _('未发现 Hermes 容器', 'No Hermes containers found', '未發現 Hermes 容器'),
|
||
dashInteractiveSession: _('交互式会话 →', 'interactive session →', '互動式會話 →'),
|
||
dashInstallerWizard: _('安装向导 →', 'installer wizard →', '安裝精靈 →'),
|
||
dashLogsFoot: _('追踪 / 搜索 →', 'tail / search →', '追蹤 / 搜尋 →'),
|
||
dashAdvancedEdit: _('高级编辑', 'advanced edit', '進階編輯'),
|
||
dashCustomVars: _('自定义变量 →', 'custom vars →', '自訂變數 →'),
|
||
dashCliCommand: _('命令', 'Command', '命令'),
|
||
dashCliDescription: _('说明', 'Description', '說明'),
|
||
dashCliCopy: _('复制', 'Copy', '複製'),
|
||
dashGatewayStarted: _('Gateway 已启动', 'Gateway started', 'Gateway 已啟動'),
|
||
dashConfigPatched: _('config.yaml 已自动修复', 'config.yaml was auto-repaired', 'config.yaml 已自動修復'),
|
||
configModelRequired: _('请输入模型名', 'Enter a model name', '請輸入模型名稱'),
|
||
configSaved: _('配置已保存', 'Config saved', '配置已儲存'),
|
||
envDetectFailed: _('探测失败', 'Detection failed', '探測失敗'),
|
||
connWslGatewayMissing: _('WSL2 Gateway 未运行,请先在 WSL 中启动', 'WSL2 Gateway is not running. Start it in WSL first.', 'WSL2 Gateway 未執行,請先在 WSL 中啟動'),
|
||
connDockerCustomHint: _('请切换到“自定义”模式并输入容器的 Gateway URL', 'Switch to Custom mode and enter the container Gateway URL.', '請切換到「自訂」模式並輸入容器的 Gateway URL'),
|
||
connUrlRequired: _('请输入 Gateway URL', 'Enter Gateway URL', '請輸入 Gateway URL'),
|
||
// 终端命令
|
||
dashCliTitle: _('终端命令', 'Terminal Commands', '終端命令'),
|
||
dashCliDesc: _('在终端中使用以下命令管理 Hermes Agent,点击复制', 'Use these commands in your terminal to manage Hermes Agent. Click to copy.', '在終端中使用以下命令管理 Hermes Agent,點擊複製'),
|
||
cliChat: _('终端对话', 'Terminal Chat', '終端對話'),
|
||
cliChatDesc: _('在终端中直接与 Agent 对话', 'Chat with Agent directly in terminal', '在終端中直接與 Agent 對話'),
|
||
cliDoctor: _('诊断检查', 'Diagnostics', '診斷檢查'),
|
||
cliDoctorDesc: _('检测配置和环境问题', 'Check config and environment issues', '檢測配置和環境問題'),
|
||
cliVersion: _('查看版本', 'Check Version', '查看版本'),
|
||
cliVersionDesc: _('显示当前安装版本', 'Show installed version', '顯示目前安裝版本'),
|
||
cliGwStart: _('启动服务', 'Start Gateway', '啟動服務'),
|
||
cliGwStartDesc: _('在终端前台启动 Gateway', 'Start Gateway in foreground', '在終端前台啟動 Gateway'),
|
||
cliGwStop: _('停止服务', 'Stop Gateway', '停止服務'),
|
||
cliGwStopDesc: _('停止后台 Gateway 进程', 'Stop background Gateway process', '停止背景 Gateway 進程'),
|
||
cliUpgrade: _('升级', 'Upgrade', '升級'),
|
||
cliUpgradeDesc: _('从 GitHub 重新安装最新版', 'Reinstall latest from GitHub', '從 GitHub 重新安裝最新版'),
|
||
cliUninstall: _('卸载', 'Uninstall', '解除安裝'),
|
||
cliUninstallDesc: _('移除 Hermes Agent', 'Remove Hermes Agent', '移除 Hermes Agent'),
|
||
cliConfig: _('打开配置目录', 'Open Config Dir', '開啟配置目錄'),
|
||
cliConfigDesc: _('在文件管理器中查看配置文件', 'View config files in file manager', '在檔案管理器中查看配置檔案'),
|
||
// 对话页面
|
||
hermesChatTitle: _('Hermes 对话', 'Hermes Chat', 'Hermes 對話'),
|
||
chatPlaceholder: _('输入消息...', 'Type a message...', '輸入訊息...'),
|
||
chatSend: _('发送', 'Send', '發送'),
|
||
chatNewSession: _('新对话', 'New Chat', '新對話'),
|
||
chatNewChat: _('新建', 'New chat', '新建'),
|
||
chatThinking: _('正在思考...', 'Thinking...', '正在思考...'),
|
||
chatError: _('发送失败: {error}', 'Send failed: {error}', '發送失敗: {error}'),
|
||
chatErrorBadge: _('失败', 'Error', '失敗'),
|
||
chatGatewayOffline: _('Gateway 未运行,请先启动', 'Gateway is offline, please start it first', 'Gateway 未運行,請先啟動'),
|
||
chatGatewayOnline: _('Gateway 运行中', 'Gateway online', 'Gateway 運行中'),
|
||
// Short labels for the header pill — full sentence lives in the tooltip
|
||
chatGatewayOfflineShort: _('离线', 'Offline', '離線'),
|
||
chatGatewayOnlineShort: _('在线', 'Online', '線上'),
|
||
chatWelcome: _('你好!我是 Hermes Agent,有什么可以帮你的?', 'Hello! I\'m Hermes Agent, how can I help?', '你好!我是 Hermes Agent,有什麼可以幫你的?'),
|
||
chatEmptyHint: _('开始一段对话吧', 'Start a conversation', '開始一段對話吧'),
|
||
chatEmptyTitle: _('和 Hermes Agent 对话', 'Talk to Hermes Agent', '和 Hermes Agent 對話'),
|
||
chatEmptySub: _('输入消息开始,或用 /help 查看命令。', 'Type a message to begin, or /help for commands.', '輸入訊息開始,或用 /help 查看命令。'),
|
||
chatLoadingMessages: _('正在载入会话', 'Loading session', '正在載入會話', 'セッションを読み込み中', '세션 불러오는 중'),
|
||
chatLoadingMessagesSub: _('正在同步 Hermes 历史消息...', 'Syncing Hermes message history…', '正在同步 Hermes 歷史訊息...', 'Hermes の履歴メッセージを同期中...', 'Hermes 메시지 기록 동기화 중...'),
|
||
// 会话侧栏
|
||
chatSessions: _('会话', 'Sessions', '會話'),
|
||
chatPinned: _('置顶', 'Pinned', '釘選'),
|
||
chatLoading: _('加载中...', 'Loading...', '載入中...'),
|
||
chatNoSessions: _('暂无会话', 'No sessions yet', '暫無會話'),
|
||
chatLive: _('活跃', 'Live', '活躍'),
|
||
chatToggleSidebar: _('切换侧栏', 'Toggle sidebar', '切換側欄'),
|
||
chatShowSessions: _('显示会话', 'Show sessions', '顯示會話', 'セッションを表示', '세션 표시'),
|
||
chatHideSessions: _('隐藏会话', 'Hide sessions', '隱藏會話', 'セッションを隠す', '세션 숨기기'),
|
||
chatSessionManageHint: _('右键会话,或点 ··· / 删除 管理', 'Right-click a session, or use ··· / Delete', '右鍵會話,或點 ··· / 刪除 管理', '右クリック、または ··· / 削除で管理', '우클릭 또는 ··· / 삭제로 관리'),
|
||
chatSessionActions: _('会话操作', 'Session actions', '會話操作', 'セッション操作', '세션 작업'),
|
||
chatMoreActions: _('更多操作', 'More actions', '更多操作', 'その他の操作', '더 많은 작업'),
|
||
chatDeleteShort: _('删除', 'Delete', '刪除', '削除', '삭제'),
|
||
// 输入区
|
||
// 占位符直接吸收键位提示,避免输入框下方再来一条同义 hint 形成"套娃"
|
||
chatInputPlaceholder: _(
|
||
'输入消息... (Enter 发送,Shift+Enter 换行,/ 调出命令)',
|
||
'Type a message... (Enter to send, Shift+Enter for new line, / for commands)',
|
||
'輸入訊息... (Enter 發送,Shift+Enter 換行,/ 調出命令)',
|
||
'メッセージを入力... (Enter で送信、Shift+Enter で改行、/ でコマンド)',
|
||
'메시지 입력... (Enter 전송, Shift+Enter 줄 바꿈, / 명령)',
|
||
),
|
||
chatStreamingPlaceholder: _('Agent 回答中...', 'Agent is responding...', 'Agent 回答中...'),
|
||
// Token 用量条 — 来自 `hermes sessions export` 的累计字段
|
||
chatUsageIn: _('输入', 'In', '輸入', '入力', '입력'),
|
||
chatUsageOut: _('输出', 'Out', '輸出', '出力', '출력'),
|
||
chatUsageCache: _('缓存', 'Cache', '快取', 'キャッシュ', '캐시'),
|
||
chatUsageTooltip: _(
|
||
'本会话累计 token 用量与估算成本',
|
||
'Cumulative token usage and estimated cost for this session',
|
||
'本會話累計 token 用量與估算成本',
|
||
'このセッションの累積トークン使用量と推定コスト',
|
||
'이 세션의 누적 토큰 사용량 및 추정 비용',
|
||
),
|
||
// 工具调用
|
||
chatArguments: _('入参', 'Arguments', '入參'),
|
||
chatResult: _('输出', 'Result', '輸出'),
|
||
// 上下文菜单
|
||
chatPin: _('置顶会话', 'Pin session', '釘選會話'),
|
||
chatUnpin: _('取消置顶', 'Unpin session', '取消釘選'),
|
||
chatRename: _('重命名', 'Rename', '重新命名'),
|
||
chatRenameSession: _('重命名会话', 'Rename session', '重新命名會話'),
|
||
chatEnterNewTitle: _('输入新标题...', 'Enter new title…', '輸入新標題...'),
|
||
chatRenamed: _('已重命名', 'Renamed', '已重新命名'),
|
||
chatRenameFailed: _('重命名失败', 'Rename failed', '重新命名失敗'),
|
||
chatCopySessionId: _('复制会话 ID', 'Copy session ID', '複製會話 ID'),
|
||
chatCopyMessage: _('复制消息', 'Copy message', '複製訊息', 'メッセージをコピー', '메시지 복사'),
|
||
chatCopyMessageShort: _('复制', 'Copy', '複製', 'コピー', '복사'),
|
||
chatCopyCode: _('复制代码', 'Copy code', '複製程式碼', 'コードをコピー', '코드 복사'),
|
||
chatCopyFailed: _('复制失败', 'Copy failed', '複製失敗'),
|
||
chatDeleteSession: _('删除会话', 'Delete session', '刪除會話'),
|
||
chatConfirmDelete: _('确认删除此会话?此操作无法撤销。', 'Delete this session? This action cannot be undone.', '確認刪除此會話?此操作無法復原。'),
|
||
chatSessionDeleted: _('会话已删除', 'Session deleted', '會話已刪除'),
|
||
chatDeleteFailed: _('删除失败', 'Delete failed', '刪除失敗'),
|
||
chatDeleteRunningBlocked: _('此会话正在回复中,请先停止当前回复', 'This session is still responding. Stop the run first.', '此會話正在回覆中,請先停止目前回覆', 'このセッションは応答中です。先に停止してください', '이 세션은 응답 중입니다. 먼저 중지하세요'),
|
||
chatJumpBottom: _('回到底部', 'Jump to bottom', '回到底部', '一番下へ', '맨 아래로'),
|
||
// Profile / Agent 切换
|
||
chatProfileTooltip: _('切换 Hermes Profile (多 Agent)', 'Switch Hermes profile (multi-agent)', '切換 Hermes Profile (多 Agent)', 'Hermes プロファイルを切り替え', 'Hermes 프로필 전환'),
|
||
chatProfileSingle: _('当前 Profile (未检测到多 Profile)', 'Current profile (no extra profiles detected)', '目前 Profile (未偵測到多 Profile)', '現在のプロファイル', '현재 프로필'),
|
||
chatProfileMenuHead: _('Hermes Profile', 'Hermes Profile', 'Hermes Profile'),
|
||
chatProfileMenuFoot: _('每个 Profile 对应独立的 Agent / 配置 / 会话', 'Each profile is an isolated agent · config · session set', '每個 Profile 對應獨立的 Agent / 設定 / 會話', '各プロファイルは独立した Agent・設定・セッション群', '각 프로필은 독립된 Agent·설정·세션 집합'),
|
||
chatProfileRunning: _('运行中', 'Running', '運行中', '実行中', '실행 중'),
|
||
chatProfileSwitched: _('已切换到 {name}', 'Switched to {name}', '已切換到 {name}', '{name} に切り替え済み', '{name} 으로 전환됨'),
|
||
chatProfileSwitchBlocked: _('正在回复中,无法切换 Profile', 'A reply is in progress — cannot switch profile', '正在回覆中,無法切換 Profile', '応答中のためプロファイルを切り替えられません', '응답 중이라 프로필을 전환할 수 없습니다'),
|
||
// 批量选择
|
||
chatBulkSelect: _('多选会话', 'Select multiple sessions', '多選會話', 'セッションを複数選択', '여러 세션 선택'),
|
||
chatExitSelect: _('退出多选', 'Exit selection', '退出多選', '選択モード終了', '선택 모드 종료'),
|
||
chatSelect: _('选择', 'Select', '選擇'),
|
||
chatDeselect: _('取消选择', 'Deselect', '取消選擇'),
|
||
chatSelectAll: _('全选', 'Select all', '全選'),
|
||
chatSelectNone: _('清空选择', 'Clear selection', '清空選擇'),
|
||
chatSelectedCount: _('已选 {n} 项', '{n} selected', '已選 {n} 項', '{n} 件選択', '{n}개 선택됨'),
|
||
chatBulkDelete: _('批量删除', 'Delete selected', '批量刪除', '一括削除', '일괄 삭제'),
|
||
chatConfirmBulkDelete: _('确认删除 {n} 个会话?此操作无法撤销。', 'Delete {n} sessions? This action cannot be undone.', '確認刪除 {n} 個會話?此操作無法復原。', '{n} 件のセッションを削除しますか?元に戻せません。', '{n}개 세션을 삭제할까요? 되돌릴 수 없습니다.'),
|
||
chatBulkDeleted: _('已删除 {n} 个会话', '{n} sessions deleted', '已刪除 {n} 個會話', '{n} 件のセッションを削除', '{n}개 세션 삭제됨'),
|
||
chatBulkPartial: _('已删除 {n} 个,{f} 个失败/跳过', '{n} deleted, {f} failed/skipped', '已刪除 {n} 個,{f} 個失敗/跳過', '{n} 件削除、{f} 件失敗/スキップ', '{n}개 삭제, {f}개 실패/건너뜀'),
|
||
chatBulkFailed: _('批量删除失败', 'Bulk delete failed', '批量刪除失敗', '一括削除に失敗', '일괄 삭제 실패'),
|
||
// 会话浏览页
|
||
sessionsPageTitle: _('会话浏览器', 'Session Browser', '會話瀏覽器', 'セッションブラウザ', '세션 브라우저'),
|
||
sessionsPageDesc: _('跨 Profile 搜索、审阅和批量管理 Hermes 会话。', 'Search, review and batch-manage Hermes sessions across profiles.', '跨 Profile 搜尋、檢閱和批量管理 Hermes 會話。'),
|
||
sessionsSearchPlaceholder: _('搜索标题、模型、来源或消息内容...', 'Search title, model, source or message content...', '搜尋標題、模型、來源或訊息內容...'),
|
||
sessionsAllSources: _('全部来源', 'All sources', '全部來源'),
|
||
sessionsAllProfiles: _('全部 Profiles', 'All profiles', '全部 Profiles'),
|
||
sessionsProfileLoadPartial: _('{n} 个 Profile 加载失败', '{n} profiles failed to load', '{n} 個 Profile 載入失敗'),
|
||
sessionsDetailLoadFailed: _('会话详情加载失败', 'Failed to load session details', '會話詳情載入失敗'),
|
||
sessionsTotal: _('全部会话', 'Total sessions', '全部會話'),
|
||
sessionsShown: _('当前显示', 'Shown', '目前顯示'),
|
||
sessionsProfiles: _('Profiles', 'Profiles', 'Profiles'),
|
||
sessionsSelected: _('已选择', 'Selected', '已選擇'),
|
||
sessionsJustNow: _('刚刚', 'just now', '剛剛'),
|
||
sessionsMinutesAgo: _('{n} 分钟前', '{n}m ago', '{n} 分鐘前'),
|
||
sessionsHoursAgo: _('{n} 小时前', '{n}h ago', '{n} 小時前'),
|
||
sessionsUntitled: _('未命名会话', 'Untitled session', '未命名會話'),
|
||
sessionsNoPreview: _('暂无预览', 'No preview', '暫無預覽'),
|
||
sessionsEmpty: _('没有匹配的会话', 'No matching sessions', '沒有符合的會話'),
|
||
sessionsNoSelection: _('选择一个会话', 'Select a session', '選擇一個會話'),
|
||
sessionsNoSelectionDesc: _('从左侧列表选择会话,查看元数据和最近消息。', 'Pick a session from the left to inspect metadata and recent messages.', '從左側列表選擇會話,查看中繼資料和最近訊息。'),
|
||
sessionsOpenChat: _('打开聊天', 'Open chat', '開啟聊天'),
|
||
sessionsPin: _('置顶', 'Pin', '置頂'),
|
||
sessionsUnpin: _('取消置顶', 'Unpin', '取消置頂'),
|
||
sessionsMessages: _('消息数', 'Messages', '訊息數'),
|
||
sessionsTokens: _('Tokens', 'Tokens', 'Tokens'),
|
||
sessionsModel: _('模型', 'Model', '模型'),
|
||
sessionsUpdated: _('更新时间', 'Updated', '更新時間'),
|
||
sessionsMessagesNotLoaded: _('消息尚未载入,点击左侧会话后会自动同步详情。', 'Messages are not loaded yet; selecting a session syncs details automatically.', '訊息尚未載入,點擊左側會話後會自動同步詳情。'),
|
||
// Slash 命令
|
||
chatSlashTitle: _('可用命令', 'Available commands', '可用命令'),
|
||
chatSlashHelpDesc: _('显示可用命令', 'Show available commands', '顯示可用命令'),
|
||
chatSlashStatusDesc: _('查看 Gateway 与模型状态', 'Inspect gateway & model status', '查看 Gateway 與模型狀態'),
|
||
chatSlashMemoryDesc: _('打开 Agent 记忆编辑', 'Open Agent memory editor', '開啟 Agent 記憶編輯'),
|
||
chatSlashSkillsDesc: _('打开技能库', 'Open skills library', '開啟技能庫'),
|
||
chatSlashClearDesc: _('清空当前会话', 'Clear current session', '清空目前會話'),
|
||
chatSlashNewDesc: _('新建会话', 'Start a new session', '新建會話'),
|
||
chatSlashStatusTitle: _('当前状态', 'Current status', '目前狀態'),
|
||
chatSlashGateway: _('Gateway', 'Gateway', 'Gateway'),
|
||
chatSlashPort: _('端口', 'Port', '埠'),
|
||
chatSlashModel: _('模型', 'Model', '模型'),
|
||
chatSlashRedirect: _('正在跳转到 {page}...', 'Redirecting to {page}...', '正在跳轉到 {page}...'),
|
||
// 停止流式
|
||
chatStop: _('停止', 'Stop', '停止'),
|
||
chatStopped: _('已停止当前回复', 'Run stopped', '已停止目前回覆'),
|
||
// Web 模式(远程浏览器)下流式聊天暂不可用 (issue #260)
|
||
chatWebModeStreamingUnsupported: _(
|
||
'Web 模式暂不支持 Hermes 实时流式聊天(依赖桌面端事件桥)。请打开桌面客户端使用此功能。',
|
||
'Hermes streaming chat isn\'t available in Web mode yet (it relies on the desktop event bridge). Please use the desktop app for this.',
|
||
'Web 模式暫不支援 Hermes 即時串流聊天(依賴桌面端事件橋)。請開啟桌面客戶端使用此功能。',
|
||
),
|
||
// 会话搜索 (Ctrl+K)
|
||
chatSearchShortcut: _('搜索会话 (Ctrl+K)', 'Search sessions (Ctrl+K)', '搜尋會話 (Ctrl+K)'),
|
||
chatSearchPlaceholder: _('搜索会话标题或内容...', 'Search by title or message content…', '搜尋會話標題或內容...'),
|
||
chatSearchEmpty: _('没有匹配的会话', 'No matching sessions', '沒有符合的會話'),
|
||
chatSearchNavigate: _('导航', 'Navigate', '導覽'),
|
||
chatSearchOpen: _('打开', 'Open', '開啟'),
|
||
fileAccess: _('文件访问', 'File Access', '檔案存取'),
|
||
fileAccessOn: _('已开启文件系统访问(Agent 可读取本机文件)', 'File system access enabled (Agent can read local files)', '已開啟檔案系統存取(Agent 可讀取本機檔案)'),
|
||
fileAccessOff: _('文件系统访问已关闭', 'File system access disabled', '檔案系統存取已關閉'),
|
||
// 定时任务
|
||
hermesCronTitle: _('定时任务', 'Cron Jobs', '定時任務'),
|
||
cronNoJobs: _('暂无定时任务', 'No cron jobs yet', '暫無定時任務'),
|
||
cronCreate: _('创建任务', 'Create Job', '建立任務'),
|
||
cronName: _('任务名称', 'Job Name', '任務名稱'),
|
||
cronSchedule: _('执行周期', 'Schedule', '執行週期'),
|
||
cronPrompt: _('AI 指令', 'AI Prompt', 'AI 指令'),
|
||
cronActive: _('启用', 'Active', '啟用'),
|
||
cronPaused: _('已暂停', 'Paused', '已暫停'),
|
||
cronRunNow: _('立即执行', 'Run Now', '立即執行'),
|
||
cronDelete: _('删除', 'Delete', '刪除'),
|
||
cronSave: _('保存', 'Save', '儲存'),
|
||
cronCancel: _('取消', 'Cancel', '取消'),
|
||
cronEdit: _('编辑', 'Edit', '編輯'),
|
||
cronTotal: _('总任务', 'Total', '總任務'),
|
||
cronRunning: _('运行中', 'Running', '運行中'),
|
||
cronNoJobsHint: _('点击"创建任务"添加你的第一个定时任务', 'Click "Create Job" to add your first cron job', '點擊「建立任務」添加你的第一個定時任務'),
|
||
cronEvery5min: _('每5分钟', 'Every 5 min', '每5分鐘'),
|
||
cronEvery15min: _('每15分钟', 'Every 15 min', '每15分鐘'),
|
||
cronHourly: _('每小时', 'Hourly', '每小時'),
|
||
cronDaily9: _('每天 9:00', 'Daily 9:00', '每天 9:00'),
|
||
cronDaily18: _('每天 18:00', 'Daily 18:00', '每天 18:00'),
|
||
cronMonday9: _('每周一 9:00', 'Monday 9:00', '每週一 9:00'),
|
||
cronMonthly1: _('每月1日 9:00', '1st of Month 9:00', '每月1日 9:00'),
|
||
cronEveryMinute: _('每分钟', 'Every minute', '每分鐘'),
|
||
cronEveryNMin: _('每 {n} 分钟', 'Every {n} minutes', '每 {n} 分鐘'),
|
||
cronHourlyOnTheHour: _('每小时整点', 'Every hour on the hour', '每小時整點'),
|
||
cronCustomExpr: _('自定义 cron 表达式', 'Custom cron expression', '自訂 cron 表達式'),
|
||
cronPreview: _('预览', 'Preview', '預覽'),
|
||
cronConfirmDelete: _('确定要删除任务「{name}」吗?', 'Delete job "{name}"?', '確定要刪除任務「{name}」嗎?'),
|
||
cronSaving: _('保存中...', 'Saving...', '儲存中...'),
|
||
cronNameRequired: _('请输入任务名称', 'Job name is required', '請輸入任務名稱'),
|
||
cronPromptRequired: _('请输入 AI 指令', 'AI prompt is required', '請輸入 AI 指令'),
|
||
cronScheduleRequired: _('请选择执行周期', 'Schedule is required', '請選擇執行週期'),
|
||
// --- Phase 2 additions: richer job metadata ---
|
||
cronEyebrow: _('AGENT 定时任务', 'AGENT SCHEDULED JOBS', 'AGENT 定時任務'),
|
||
cronJobs: _('个任务', 'jobs', '個任務'),
|
||
cronFailed: _('失败', 'Failed', '失敗'),
|
||
cronPauseBtn: _('暂停', 'Pause', '暫停'),
|
||
cronResume: _('恢复', 'Resume', '恢復'),
|
||
cronStateRunning: _('运行中', 'running', '運行中'),
|
||
cronStatePaused: _('已暂停', 'paused', '已暫停'),
|
||
cronStateDisabled: _('已禁用', 'disabled', '已禁用'),
|
||
cronStateScheduled: _('待调度', 'scheduled', '待調度'),
|
||
cronScheduleLabel: _('执行周期', 'schedule', '執行週期'),
|
||
cronNextRun: _('下次执行', 'next run', '下次執行'),
|
||
cronLastRun: _('上次执行', 'last run', '上次執行'),
|
||
cronDeliverLabel: _('结果回传', 'deliver to', '結果回傳'),
|
||
cronRepeatLabel: _('重复', 'repeat', '重複'),
|
||
cronSkillsLabel: _('Skills', 'Skills', 'Skills'),
|
||
cronLastError: _('上次错误', 'last error', '上次錯誤'),
|
||
cronOverdue: _('已逾期', 'overdue', '已逾期'),
|
||
cronInSeconds: _('{n} 秒后', 'in {n}s', '{n} 秒後'),
|
||
cronInMinutes: _('{n} 分钟后', 'in {n}m', '{n} 分鐘後'),
|
||
cronInHours: _('{n} 小时后', 'in {n}h', '{n} 小時後'),
|
||
cronInDays: _('{n} 天后', 'in {n}d', '{n} 天後'),
|
||
cronDeliverOrigin: _('回传原聊天', 'origin chat', '回傳原聊天'),
|
||
cronDeliverLocal: _('仅本地记录', 'local only', '僅本機記錄'),
|
||
cronRepeatLimit: _('重复次数', 'repeat limit', '重複次數'),
|
||
cronRepeatLimitHint: _('留空表示无限循环', 'Leave empty for unlimited', '留空表示無限迴圈'),
|
||
cronInvalidCron: _('无效的 cron 表达式', 'Invalid cron expression', '無效的 cron 表達式'),
|
||
cronTriggered: _('任务已触发', 'Job triggered', '任務已觸發'),
|
||
cronPausedOk: _('任务已暂停', 'Job paused', '任務已暫停'),
|
||
cronResumedOk: _('任务已恢复', 'Job resumed', '任務已恢復'),
|
||
cronDeletedOk: _('任务已删除', 'Job deleted', '任務已刪除'),
|
||
// 日志页面
|
||
hermesLogsTitle: _('Agent 日志', 'Agent Logs', 'Agent 日誌'),
|
||
logsRefresh: _('刷新', 'Refresh', '重新整理'),
|
||
logsFiles: _('日志文件', 'Log Files', '日誌檔案'),
|
||
logsNoFiles: _('暂无日志文件', 'No log files', '暫無日誌檔案'),
|
||
logsLines: _('行', 'lines', '行'),
|
||
logsSearch: _('搜索日志...', 'Search logs...', '搜尋日誌...'),
|
||
logsEntries: _('条记录', 'entries', '條記錄'),
|
||
logsLoading: _('加载中...', 'Loading...', '載入中...'),
|
||
logsEmpty: _('暂无日志', 'No logs', '暫無日誌'),
|
||
logsLoadFailed: _('加载失败', 'Load failed', '載入失敗'),
|
||
logsEyebrow: _('AGENT 日志流', 'AGENT LOG STREAM', 'AGENT 日誌流'),
|
||
logsTailing: _('实时追踪中', 'TAILING · LIVE', '即時追蹤中'),
|
||
logsTailStart: _('追踪', 'Tail', '追蹤'),
|
||
logsTailStop: _('暂停', 'Pause', '暫停'),
|
||
logsToggleTail: _('开启/停止实时追踪(每 2 秒刷新)', 'Toggle live tail (2s poll)', '開啟/停止即時追蹤(每 2 秒重新整理)'),
|
||
logsDownload: _('下载', 'Download', '下載'),
|
||
logsDownloadOk: _('日志已保存到 {path}', 'Log saved to {path}', '日誌已儲存到 {path}'),
|
||
logsDownloadBrowserOk: _('已交给浏览器下载,请查看默认下载目录。', 'Download started in your browser; check the default downloads folder.', '已交給瀏覽器下載,請查看預設下載目錄。'),
|
||
logsDownloadFailed: _('下载失败', 'Download failed', '下載失敗'),
|
||
logsClear: _('清空当前显示', 'Clear view', '清空目前顯示'),
|
||
logsLevel: _('级别', 'Level', '級別'),
|
||
logsLinesLabel: _('行数', 'Limit', '行數'),
|
||
logsSearchLabel: _('搜索', 'Search', '搜尋'),
|
||
logsFilteredBy: _('过滤自', 'filtered by', '過濾自'),
|
||
// Skills 页面
|
||
hermesSkillsTitle: _('Agent Skills', 'Agent Skills', 'Agent Skills'),
|
||
skillsEyebrow: _('AGENT 技能库', 'AGENT SKILL LIBRARY', 'AGENT 技能庫'),
|
||
skillsTotal: _('个技能', 'skills', '個技能'),
|
||
skillsActive: _('启用中', 'active', '啟用中'),
|
||
skillsSearch: _('搜索技能...', 'Search skills...', '搜尋技能...'),
|
||
skillsLoading: _('加载中...', 'Loading...', '載入中...'),
|
||
skillsEmpty: _('暂无技能', 'No skills found', '暫無技能'),
|
||
skillsNoMatch: _('没有匹配的技能', 'No skills match your search', '沒有符合的技能'),
|
||
skillsUncategorized: _('未分类', 'Uncategorized', '未分類'),
|
||
skillsSelectHint: _('选择一个技能查看详情', 'Select a skill to view details', '選擇一個技能查看詳情'),
|
||
skillsSelectSub: _('从左侧列表点击,或使用搜索快速定位。', 'Click any item on the left, or use search to jump.', '從左側列表點擊,或使用搜尋快速定位。'),
|
||
skillsRefresh: _('刷新', 'Refresh', '重新整理'),
|
||
skillsEnable: _('启用此技能', 'Enable this skill', '啟用此技能'),
|
||
skillsDisable: _('停用此技能', 'Disable this skill', '停用此技能'),
|
||
skillsEnabled: _('技能已启用', 'Skill enabled', '技能已啟用'),
|
||
skillsDisabled: _('技能已停用', 'Skill disabled', '技能已停用'),
|
||
skillsEnabledTag: _('启用', 'Active', '啟用'),
|
||
skillsDisabledTag: _('停用', 'Disabled', '停用'),
|
||
skillsToggleFailed: _('切换失败', 'Toggle failed', '切換失敗'),
|
||
skillsLoadFailed: _('加载失败', 'Load failed', '載入失敗'),
|
||
skillsFileLoadFailed: _('文件加载失败', 'File load failed', '檔案載入失敗'),
|
||
skillsAttachedFiles: _('附带资源', 'Attached Files', '附帶資源'),
|
||
skillsBackTo: _('返回', 'Back to', '返回'),
|
||
// Skills 页面 — Toolsets 区(hermes tools list --platform cli)
|
||
toolsetsTitle: _('内置工具集',
|
||
'Built-in Toolsets',
|
||
'內建工具集',
|
||
'組み込みツールセット',
|
||
'내장 툴셋'),
|
||
toolsetsSubtitle: _('platform: cli · 配置位于 ~/.hermes/config.yaml',
|
||
'platform: cli · configured in ~/.hermes/config.yaml',
|
||
'platform: cli · 配置位於 ~/.hermes/config.yaml',
|
||
'platform: cli · ~/.hermes/config.yaml で設定',
|
||
'platform: cli · ~/.hermes/config.yaml에서 설정'),
|
||
toolsetsLoading: _('正在读取工具集…', 'Loading toolsets…', '正在讀取工具集…', 'ツールセットを読み込み中…', '툴셋 로드 중…'),
|
||
toolsetsEmpty: _('暂无工具集数据。可能 Hermes 未安装或版本过旧。',
|
||
'No toolset data. Hermes may not be installed or the version is too old.',
|
||
'暫無工具集資料。可能 Hermes 未安裝或版本過舊。',
|
||
'ツールセットデータがありません。Hermes がインストールされていないか、バージョンが古い可能性があります。',
|
||
'툴셋 데이터가 없습니다. Hermes가 설치되지 않았거나 버전이 너무 오래되었을 수 있습니다.'),
|
||
toolsetsParseFailed: _('无法解析输出,下面显示原始内容:',
|
||
'Could not parse output. Raw content shown below:',
|
||
'無法解析輸出,下面顯示原始內容:',
|
||
'出力を解析できませんでした。下に生のコンテンツを表示します:',
|
||
'출력을 분석할 수 없습니다. 아래에 원시 콘텐츠를 표시합니다:'),
|
||
toolsetsHint: _('要切换某个工具集,运行 hermes tools 进入交互界面,或编辑 config.yaml 的 platforms.cli.toolsets 字段。',
|
||
'To toggle a toolset, run hermes tools for the interactive UI or edit platforms.cli.toolsets in config.yaml.',
|
||
'要切換某個工具集,執行 hermes tools 進入互動介面,或編輯 config.yaml 的 platforms.cli.toolsets 欄位。',
|
||
'ツールセットを切り替えるには、hermes tools で対話 UI を起動するか、config.yaml の platforms.cli.toolsets を編集します。',
|
||
'툴셋을 전환하려면 hermes tools 대화형 UI를 실행하거나 config.yaml의 platforms.cli.toolsets를 편집하세요.'),
|
||
toolsetsEnabled: _('启用', 'enabled', '啟用', '有効', '활성화'),
|
||
toolsetsDisabled: _('停用', 'disabled', '停用', '無効', '비활성화'),
|
||
toolsetsActiveCount: _('{n}/{total} 启用', '{n}/{total} active', '{n}/{total} 啟用', '{n}/{total} 有効', '{n}/{total} 활성화'),
|
||
// Memory 页面
|
||
hermesMemoryTitle: _('Agent 记忆', 'Agent Memory', 'Agent 記憶'),
|
||
memoryNotes: _('笔记', 'Notes', '筆記'),
|
||
memoryProfile: _('用户画像', 'User Profile', '用戶畫像'),
|
||
memoryEdit: _('编辑', 'Edit', '編輯'),
|
||
memoryCancel: _('取消', 'Cancel', '取消'),
|
||
memorySave: _('保存', 'Save', '儲存'),
|
||
memorySaving: _('保存中...', 'Saving...', '儲存中...'),
|
||
memorySaveFailed: _('保存失败', 'Save failed', '儲存失敗'),
|
||
memoryLoading: _('加载中...', 'Loading...', '載入中...'),
|
||
memoryEmpty: _('暂无内容', 'No content', '暫無內容'),
|
||
memoryPlaceholder: _('使用 Markdown 格式编写...', 'Write in Markdown format...', '使用 Markdown 格式編寫...'),
|
||
memoryUnsaved: _('有未保存的更改,确定离开?', 'Unsaved changes. Leave anyway?', '有未儲存的變更,確定離開?'),
|
||
memorySaved: _('已保存', 'Saved', '已儲存'),
|
||
memorySaveHint: _('Ctrl/⌘ + S 保存 · Esc 取消', 'Ctrl/⌘ + S to save · Esc to cancel', 'Ctrl/⌘ + S 儲存 · Esc 取消'),
|
||
memoryEyebrow: _('AGENT 长期记忆', 'AGENT PERSISTENT MEMORY', 'AGENT 長期記憶'),
|
||
memoryOverviewKicker: _('Hermes Memory Fabric', 'Hermes Memory Fabric', 'Hermes Memory Fabric'),
|
||
memoryOverviewTitle: _('三份 Markdown,组成 Agent 的长期上下文', 'Three Markdown files form the Agent’s long-term context', '三份 Markdown,組成 Agent 的長期上下文'),
|
||
memoryOverviewDesc: _('笔记记录事实,用户画像沉淀偏好,灵魂档案塑造人格。Hermes 会在会话中持续读取这些长期记忆。', 'Notes store facts, profile captures preferences, and soul shapes persona. Hermes continuously reads these persistent memories during conversations.', '筆記記錄事實,用戶畫像沉澱偏好,靈魂檔案塑造人格。Hermes 會在會話中持續讀取這些長期記憶。'),
|
||
memoryFiles: _('记忆文件', 'Memory Files', '記憶檔案'),
|
||
memoryFilled: _('已填写', 'Filled', '已填寫'),
|
||
memoryTotalWords: _('总词数', 'Total Words', '總詞數'),
|
||
memoryLatest: _('最近更新', 'Latest Update', '最近更新'),
|
||
memorySoul: _('灵魂档案', 'Soul', '靈魂檔案'),
|
||
memoryNotesDesc: _('Agent 的笔记与事实备忘——会话间持续累积的知识。', 'Agent\'s notes and factual memories — knowledge accumulated across sessions.', 'Agent 的筆記與事實備忘——會話間持續累積的知識。'),
|
||
memoryProfileDesc: _('用户偏好、身份、背景信息——每次对话都会参考。', 'User preferences, identity, context — referenced in every conversation.', '用戶偏好、身份、背景資訊——每次對話都會參考。'),
|
||
memorySoulDesc: _('Agent 的人格、价值观、说话风格——长期塑造。', 'Agent persona, values, voice — shaped over time.', 'Agent 的人格、價值觀、說話風格——長期塑造。'),
|
||
memoryWords: _('词', 'words', '詞'),
|
||
memoryChars: _('字符', 'chars', '字元'),
|
||
memoryJustNow: _('刚刚', 'just now', '剛剛'),
|
||
memoryMinAgo: _('{n} 分钟前', '{n}m ago', '{n} 分鐘前'),
|
||
memoryHrAgo: _('{n} 小时前', '{n}h ago', '{n} 小時前'),
|
||
// 其它页面
|
||
hermesServicesTitle: _('Hermes 服务', 'Hermes Services', 'Hermes 服務'),
|
||
servicesDesc: _('集中查看 Gateway 运行状态、连接目标、健康检查与维护操作。', 'Inspect gateway status, connection target, health checks, and maintenance actions in one place.', '集中查看 Gateway 運行狀態、連接目標、健康檢查與維護操作。'),
|
||
servicesInstallState: _('安装状态', 'Install State', '安裝狀態'),
|
||
servicesInstallType: _('安装方式', 'Install Method', '安裝方式'),
|
||
servicesInstalled: _('已安装', 'Installed', '已安裝'),
|
||
servicesMissing: _('未安装', 'Not Installed', '未安裝'),
|
||
servicesUnknown: _('未知', 'Unknown', '未知'),
|
||
servicesPath: _('CLI 路径', 'CLI Path', 'CLI 路徑'),
|
||
servicesHome: _('主目录', 'Home Directory', '主目錄'),
|
||
servicesConfigFiles: _('关键配置文件', 'Key Config Files', '關鍵配置檔'),
|
||
servicesNotSet: _('未设置', 'Not set', '未設置'),
|
||
servicesCustomUrl: _('自定义 Gateway URL', 'Custom Gateway URL', '自定義 Gateway URL'),
|
||
servicesWslHint: _('请先在 WSL2 中启动 Gateway,然后再切换。', 'Start the gateway in WSL2 before switching.', '請先在 WSL2 中啟動 Gateway,再切換。'),
|
||
servicesDockerHint: _('Docker 场景请填写容器对外可访问的 Gateway URL。', 'For Docker, enter the externally reachable gateway URL.', 'Docker 場景請填寫容器對外可訪問的 Gateway URL。'),
|
||
servicesDetectFirst: _('请先探测环境并确保目标 Gateway 已启动。', 'Detect environments first and make sure the target gateway is running.', '請先探測環境並確認目標 Gateway 已啟動。'),
|
||
servicesHealthTitle: _('健康检查', 'Health Check', '健康檢查'),
|
||
servicesRawJson: _('查看原始 JSON', 'View Raw JSON', '查看原始 JSON'),
|
||
servicesNoHealth: _('Gateway 未运行或暂时无法返回健康数据。', 'The gateway is offline or health data is temporarily unavailable.', 'Gateway 未運行或暫時無法返回健康資料。'),
|
||
servicesMaintenance: _('维护操作', 'Maintenance', '維護操作'),
|
||
servicesInstall: _('安装 Hermes', 'Install Hermes', '安裝 Hermes'),
|
||
servicesRepairInstall: _('修复/重装 Hermes', 'Repair / Reinstall Hermes', '修復/重裝 Hermes'),
|
||
servicesUpgrade: _('升级 Hermes', 'Upgrade Hermes', '升級 Hermes'),
|
||
servicesUninstall: _('卸载 Hermes', 'Uninstall Hermes', '解除安裝 Hermes'),
|
||
servicesUninstallClean: _('卸载并清理配置', 'Uninstall and Clean Config', '解除安裝並清理配置'),
|
||
servicesOpenLogs: _('打开日志', 'Open Logs', '打開日誌'),
|
||
servicesOpenConfig: _('打开配置', 'Open Config', '打開配置'),
|
||
servicesOpenEnv: _('打开环境变量', 'Open Environment', '打開環境變數'),
|
||
servicesOpenSetup: _('返回安装向导', 'Open Setup', '返回安裝精靈'),
|
||
servicesEyebrow: _('HERMES AGENT · 服务中心', 'HERMES AGENT · SERVICES', 'HERMES AGENT · 服務中心'),
|
||
servicesReadyTag: _('就绪', 'READY', '就緒'),
|
||
servicesDefaultDistro: _('默认发行版', 'default distro', '預設發行版'),
|
||
servicesContainerCount: _('{n} 个容器', '{n} containers', '{n} 個容器'),
|
||
servicesConfirmInstall: _('确认安装 Hermes Agent?将通过 uv 安装最新版本及 Web 扩展。', 'Install Hermes Agent? The latest version and Web extensions will be installed via uv.', '確認安裝 Hermes Agent?將透過 uv 安裝最新版本及 Web 擴展。'),
|
||
servicesConfirmRepairInstall: _('确认修复/重装 Hermes Agent?将保留配置并重新安装最新版本及 Web 扩展。', 'Repair / reinstall Hermes Agent? Config will be kept and the latest version with Web extensions will be reinstalled.', '確認修復/重裝 Hermes Agent?將保留配置並重新安裝最新版本及 Web 擴展。'),
|
||
servicesConfirmUpgrade: _('确认升级 Hermes Agent?升级期间可能短暂中断 Gateway。', 'Upgrade Hermes Agent? The gateway may be briefly interrupted during the upgrade.', '確認升級 Hermes Agent?升級期間 Gateway 可能短暫中斷。'),
|
||
servicesConfirmUninstall: _('确认卸载 Hermes Agent?保留现有配置文件。', 'Uninstall Hermes Agent? Existing config files will be kept.', '確認解除安裝 Hermes Agent?會保留現有配置檔。'),
|
||
servicesConfirmUninstallClean: _('确认卸载 Hermes Agent 并删除配置文件?此操作不可撤销。', 'Uninstall Hermes Agent and remove config files? This cannot be undone.', '確認解除安裝 Hermes Agent 並刪除配置檔?此操作無法撤銷。'),
|
||
servicesUpgradeDone: _('Hermes Agent 升级完成', 'Hermes Agent upgraded', 'Hermes Agent 升級完成'),
|
||
servicesUninstallDone: _('Hermes Agent 已卸载', 'Hermes Agent uninstalled', 'Hermes Agent 已解除安裝'),
|
||
servicesMaintenanceStopGateway: _('正在停止 Gateway,释放 Hermes 可执行文件...', 'Stopping gateway to release Hermes executable...', '正在停止 Gateway,釋放 Hermes 可執行檔...'),
|
||
servicesMaintenanceGatewayStopped: _('Gateway 已停止', 'Gateway stopped', 'Gateway 已停止'),
|
||
servicesMaintenanceGatewayStopWarn: _('Gateway 停止失败,继续执行:{error}', 'Failed to stop gateway, continuing: {error}', 'Gateway 停止失敗,繼續執行:{error}'),
|
||
servicesMaintenanceRestartGateway: _('正在重新启动 Gateway...', 'Restarting gateway...', '正在重新啟動 Gateway...'),
|
||
servicesMaintenanceGatewayRestarted: _('Gateway 已重新启动', 'Gateway restarted', 'Gateway 已重新啟動'),
|
||
servicesMaintenanceGatewayRestartWarn: _('Gateway 重启失败,请稍后手动启动:{error}', 'Gateway restart failed; start it manually later: {error}', 'Gateway 重新啟動失敗,請稍後手動啟動:{error}'),
|
||
hermesConfigTitle: _('Hermes 配置', 'Hermes Config', 'Hermes 配置'),
|
||
hermesChannelsTitle: _('Hermes 渠道', 'Hermes Channels', 'Hermes 頻道'),
|
||
extensionsEyebrow: _('HERMES AGENT · 扩展', 'HERMES AGENT · EXTENSIONS', 'HERMES AGENT · 擴展'),
|
||
extensionsTitle: _('文档 / 插件 / 主题', 'Docs / Plugins / Themes', '文件 / 插件 / 主題'),
|
||
extensionsDesc: _('集中管理 Dashboard 扩展清单、视觉主题和使用洞察。', 'Manage dashboard extension manifests, visual themes and usage intelligence.', '集中管理 Dashboard 擴展清單、視覺主題和使用洞察。'),
|
||
extensionsRefresh: _('刷新', 'Refresh', '刷新'),
|
||
extensionsRescan: _('重扫插件', 'Rescan Plugins', '重掃插件'),
|
||
extensionsDocs: _('文档', 'Documentation', '文件'),
|
||
extensionsAnalytics: _('分析快照', 'Analytics snapshot', '分析快照'),
|
||
extensionsSessions: _('会话', 'Sessions', '會話'),
|
||
extensionsTokens: _('Tokens', 'Tokens', 'Tokens'),
|
||
extensionsCost: _('费用', 'Cost', '費用'),
|
||
extensionsThemes: _('Dashboard 主题', 'Dashboard themes', 'Dashboard 主題'),
|
||
extensionsActive: _('当前', 'active', '目前'),
|
||
extensionsNoThemes: _('未发现主题。', 'No themes discovered.', '未發現主題。'),
|
||
extensionsPlugins: _('Dashboard 插件', 'Dashboard plugins', 'Dashboard 插件'),
|
||
extensionsManifestCount: _('{n} 个清单', '{n} manifest(s)', '{n} 個清單'),
|
||
extensionsNoDescription: _('暂无描述', 'No description', '暫無描述'),
|
||
extensionsNoPlugins: _('未在 ~/.hermes/plugins 中发现 Dashboard 插件清单。', 'No dashboard plugin manifests found in ~/.hermes/plugins.', '未在 ~/.hermes/plugins 中發現 Dashboard 插件清單。'),
|
||
extensionsThemeSaved: _('Dashboard 主题已保存', 'Dashboard theme saved', 'Dashboard 主題已儲存'),
|
||
extensionsPluginsRescanned: _('插件清单已重扫', 'Plugin manifests rescanned', '插件清單已重掃'),
|
||
extensionsDocGettingStarted: _('快速开始', 'Getting Started', '快速開始'),
|
||
extensionsDocCron: _('Cron 自动化', 'Cron Automation', 'Cron 自動化'),
|
||
extensionsDocSkills: _('Skills', 'Skills', 'Skills'),
|
||
extensionsDocDashboard: _('Dashboard', 'Dashboard', 'Dashboard'),
|
||
comingSoonPhase2: _('即将在 Phase 2 中推出', 'Coming in Phase 2', '即將在 Phase 2 中推出'),
|
||
|
||
// ============================================================
|
||
// 心甜Claw(Xintian Claw)· 产品宣传页
|
||
// ============================================================
|
||
xintianNavHome: _('产品首页', 'Home', '產品首頁', 'ホーム', '홈', 'Trang chủ', 'Inicio', 'Início', 'Главная', 'Accueil', 'Startseite'),
|
||
|
||
// Hero
|
||
xtHeroEyebrow: _('心甜Claw · 跨平台 AI 省心助手', 'Xintian Claw · Worry-free AI Companion', '心甜Claw · 跨平台 AI 省心助手', '心甜Claw · 手間いらずの AI コンパニオン', '心甜Claw · 근심 없는 AI 동반자'),
|
||
xtHeroTitleLead: _('WINDOWS 安装即用', 'READY FOR WINDOWS', 'WINDOWS 安裝即用', 'WINDOWS 用すぐに使える', 'WINDOWS에서 바로 사용'),
|
||
xtHeroTitleA: _('不只是对话,是会', 'Not just chat —', '不只是對話,是會'),
|
||
xtHeroTitleB: _('记得你', 'an AI that remembers you', '記得你'),
|
||
xtHeroTitleC: _('的 AI 管家', '.', '的 AI 管家'),
|
||
xtHeroSub: _(
|
||
'桌面客户端 + SaaS 后端 + 长期记忆 + 多渠道,一次安装,让 AI 真正长期为你干活。',
|
||
'Desktop client, SaaS backend, persistent memory, and multi-channel delivery — install once and let AI keep working for you.',
|
||
'桌面客戶端 + SaaS 後端 + 長期記憶 + 多頻道,一次安裝,讓 AI 真正長期為你幹活。',
|
||
),
|
||
xtCtaDownloadWin: _('下载 Windows 版', 'Download for Windows', '下載 Windows 版', 'Windows 版をダウンロード', 'Windows 버전 다운로드'),
|
||
xtCtaVisitSite: _('访问官网', 'Visit website', '訪問官網', '公式サイトへ', '공식 웹사이트'),
|
||
xtHeroPlatformWin: _('Windows 10 / 11 · x64', 'Windows 10 / 11 · x64', 'Windows 10 / 11 · x64'),
|
||
xtHeroPlatformRest: _('macOS / Linux 即将上线', 'macOS / Linux coming soon', 'macOS / Linux 即將上線', 'macOS / Linux 近日公開', 'macOS / Linux 곧 출시'),
|
||
xtHeroFreeTrial: _('预置 2 个免费 Agent', '2 free agents included', '預置 2 個免費 Agent', '2 つの無料エージェント付き', '무료 에이전트 2개 포함'),
|
||
|
||
// Features 区域
|
||
xtFeaturesEyebrow: _('核心能力', 'CORE CAPABILITIES', '核心能力'),
|
||
xtFeaturesTitle: _('八种能力,一个助手', 'Eight capabilities, one companion', '八種能力,一個助手'),
|
||
xtFeaturesSub: _(
|
||
'从聊天、记忆到定时自动化、多渠道通知——把 AI 做到生产可用。',
|
||
'From chat and memory to scheduled automation and multi-channel delivery — AI ready for real work.',
|
||
'從聊天、記憶到定時自動化、多頻道通知——把 AI 做到生產可用。',
|
||
),
|
||
|
||
// 8 个特性卡片
|
||
xtFeatChatTitle: _('流式对话 × 思维链', 'Streaming chat × CoT', '串流對話 × 思維鏈'),
|
||
xtFeatChatDesc: _('工具调用与思考过程全程可见,Markdown / 代码 / 表格原生渲染。', 'Full visibility into tool calls and reasoning, with native Markdown / code / table rendering.', '工具調用與思考過程全程可見,Markdown / 程式碼 / 表格原生渲染。'),
|
||
xtFeatAgentTitle: _('多智能体 Agent 体系', 'Multi-agent roster', '多智能體 Agent 體系'),
|
||
xtFeatAgentDesc: _('预置心甜 + 晴辰两个助手,独立人设与记忆,可随时自定义。', 'Bundled Xintian & Qingchen assistants, each with its own persona and memory — fully customizable.', '預置心甜 + 晴辰兩個助手,獨立人設與記憶,可隨時自定義。'),
|
||
xtFeatMemoryTitle: _('心甜智脑 · 长期记忆', 'Sweet Brain · Long-term memory', '心甜智腦 · 長期記憶'),
|
||
xtFeatMemoryDesc: _('事实 + 对话双层记忆,跨渠道共享,桌面说过的话微信也能想起来。', 'Dual-layer memory (facts + conversations) shared across channels — it remembers what you said, everywhere.', '事實 + 對話雙層記憶,跨頻道共享,桌面說過的話微信也能想起來。'),
|
||
xtFeatRagTitle: _('知识库 × RAG', 'Knowledge base × RAG', '知識庫 × RAG'),
|
||
xtFeatRagDesc: _('拖拽上传 PDF / Word / Markdown,回答自动附带引用与跳转链接。', 'Drag-and-drop PDF / Word / Markdown — answers come with citations and jump links.', '拖放上傳 PDF / Word / Markdown,回答自動附帶引用與跳轉連結。'),
|
||
xtFeatCronTitle: _('定时任务 × 后台任务', 'Scheduled & background tasks', '定時任務 × 背景任務'),
|
||
xtFeatCronDesc: _('到点自动跑,长调研一轮一轮来,进度条可暂停可恢复。', 'Cron-triggered runs and multi-round background research with pause/resume progress.', '到點自動跑,長調研一輪一輪來,進度條可暫停可恢復。'),
|
||
xtFeatSkillsTitle: _('技能中心 · SkillForge', 'Skill Hub · SkillForge', '技能中心 · SkillForge'),
|
||
xtFeatSkillsDesc: _('把常用流程打包成技能 @ 调用,内置抓取 / 日报 / 总结。', 'Package prompts into reusable skills — invoke with @, with built-in scraping, reporting, summarization.', '把常用流程打包成技能 @ 調用,內建抓取 / 日報 / 總結。'),
|
||
xtFeatChannelTitle: _('多消息渠道', 'Multi-channel delivery', '多訊息頻道'),
|
||
xtFeatChannelDesc: _('飞书 / 微信 / Telegram 等消息渠道互通,一套记忆跟你到每个对话窗。', 'Feishu / WeChat / Telegram all connected — one memory follows you to every conversation.', '飛書 / 微信 / Telegram 等訊息頻道互通,一套記憶跟你到每個對話窗。'),
|
||
xtFeatOfflineTitle: _('离线 × 本地优先', 'Offline × local-first', '離線 × 本地優先'),
|
||
xtFeatOfflineDesc: _('核心数据存本地 ~/.xintian-claw,断网队列补发,多后端容灾。', 'Core data stored locally at ~/.xintian-claw, offline queue + multi-backend failover.', '核心資料存本地 ~/.xintian-claw,斷網佇列補發,多後端容災。'),
|
||
|
||
// Compare 区域
|
||
xtCompareEyebrow: _('产品定位', 'POSITIONING', '產品定位'),
|
||
xtCompareTitle: _('同一份心甜 · 不同的打开方式', 'One Xintian, three ways to open it', '同一份心甜 · 不同的打開方式'),
|
||
xtCompareSub: _(
|
||
'根据你的身份选择最合适的入口:开发者用框架、工程师用 Python、普通用户用桌面版。',
|
||
'Pick the entrance that fits you: framework for developers, Python for engineers, desktop client for everyone else.',
|
||
'根據你的身份選擇最合適的入口:開發者用框架、工程師用 Python、普通使用者用桌面版。',
|
||
),
|
||
xtComparePosA: _('开发者 / 架构师', 'DEVELOPER / ARCHITECT', '開發者 / 架構師'),
|
||
xtCompareADesc: _('完整 Agent 框架源码,支持自托管、插件扩展,适合深度定制。', 'Full Agent framework source with self-hosting and plugin extensions — for deep customization.', '完整 Agent 框架原始碼,支援自託管、外掛擴充,適合深度自訂。'),
|
||
xtCompareAForWho: _('面向团队与工程师', 'For teams and engineers', '面向團隊與工程師'),
|
||
xtComparePosB: _('Python 开发者', 'PYTHON DEVELOPER', 'Python 開發者'),
|
||
xtCompareBDesc: _('轻量级 Agent 框架,工具调用能力强,一键 uv 安装,快速集成。', 'Lightweight Agent framework with strong tool-calling, one-click uv install, fast integration.', '輕量級 Agent 框架,工具呼叫能力強,一鍵 uv 安裝,快速整合。'),
|
||
xtCompareBForWho: _('面向 Python 工程师', 'For Python engineers', '面向 Python 工程師'),
|
||
xtComparePosC: _('所有普通用户', 'EVERYONE', '所有普通使用者'),
|
||
xtCompareCTitle: _('心甜Claw', 'Xintian Claw', '心甜Claw'),
|
||
xtCompareCDesc: _('Windows 双击安装即可用,内置 Agent 与记忆,不写一行代码也能上手。', 'Double-click install on Windows — agents and memory out of the box, zero code required.', 'Windows 雙擊安裝即可用,內建 Agent 與記憶,不寫一行程式碼也能上手。'),
|
||
xtCompareCForWho: _('面向日常使用者', 'For everyday users', '面向日常使用者'),
|
||
xtCompareRecommend: _('推荐', 'RECOMMENDED', '推薦'),
|
||
|
||
// CTA 区域
|
||
xtCtaEyebrow: _('立即开始', 'GET STARTED', '立即開始'),
|
||
xtCtaTitle: _('今天装上 · 明天就离不开', 'Install today, depend on it tomorrow', '今天裝上 · 明天就離不開'),
|
||
xtCtaSub: _(
|
||
'下载 Windows 安装包、双击运行,登录账号即可开始使用。无需配置 Python、无需命令行。',
|
||
'Download the Windows installer, double-click, sign in — ready to chat. No Python, no terminal.',
|
||
'下載 Windows 安裝包、雙擊執行,登入帳號即可開始使用。無需配置 Python、無需命令列。',
|
||
),
|
||
xtBulletInstall: _('一次安装 · 自动更新', 'One-click install · auto update', '一次安裝 · 自動更新'),
|
||
xtBulletLogin: _('微信 / 邮箱登录', 'WeChat / Email sign-in', '微信 / 信箱登入'),
|
||
xtBulletSync: _('多设备记忆同步', 'Multi-device memory sync', '多裝置記憶同步'),
|
||
xtBulletSafe: _('核心数据本地加密', 'Core data encrypted locally', '核心資料本地加密'),
|
||
xtCtaPrimary: _('立即下载 Windows 版', 'Download for Windows', '立即下載 Windows 版'),
|
||
xtCtaSecondary: _('了解更多', 'Learn more', '了解更多'),
|
||
xtCtaLinkLabel: _('官网', 'WEBSITE', '官網'),
|
||
|
||
// Preview 气泡
|
||
xtPreviewGreet: _('你好呀,今天想让我帮你处理什么?', 'Hi! How can I help you today?', '你好呀,今天想讓我幫你處理什麼?'),
|
||
xtPreviewUserAsk: _('帮我盯着这条产品线的日报', 'Track the daily report of this product line', '幫我盯著這條產品線的日報'),
|
||
xtPreviewAnswer1: _('好的,已为你创建「日报追踪」定时任务。', 'Got it — created a scheduled "Daily Report" task for you.', '好的,已為你建立「日報追蹤」定時任務。'),
|
||
xtPreviewAnswer2: _('每天 18:00 推送到飞书群,记忆也会同步。', 'Posts to the Feishu group at 18:00 daily, memory stays in sync.', '每天 18:00 推送到飛書群,記憶也會同步。'),
|
||
xtPreviewFoot: _('由 心甜智脑 长期记忆支持', 'Powered by Sweet Brain long-term memory', '由 心甜智腦 長期記憶支援'),
|
||
|
||
// Footer
|
||
xtFootBrand: _('心甜Claw · 跨平台 AI 省心助手', 'Xintian Claw · Worry-free AI Companion', '心甜Claw · 跨平台 AI 省心助手'),
|
||
xtFootHome: _('官网', 'Website', '官網'),
|
||
xtFootDownload: _('下载', 'Download', '下載'),
|
||
xtFootSupport: _('帮助中心', 'Help Center', '幫助中心'),
|
||
}
|