Files
clawgo/webui/src/i18n/index.ts

872 lines
33 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import i18n from 'i18next';
import { initReactI18next } from 'react-i18next';
import LanguageDetector from 'i18next-browser-languagedetector';
const resources = {
en: {
translation: {
dashboard: 'Dashboard',
chat: 'Chat',
config: 'Config',
cronJobs: 'Cron Jobs',
nodes: 'Nodes',
logs: 'Real-time Logs',
logCodes: 'Log Codes',
skills: 'Skills',
memory: 'Memory',
taskAudit: 'Task Audit',
tasks: 'Tasks',
sidebarCore: 'Core',
sidebarSystem: 'System',
sidebarOps: 'Operations',
sidebarInsights: 'Insights',
ekg: 'EKG',
ekgEscalations: 'Escalations',
ekgSourceStats: 'Source Stats',
ekgChannelStats: 'Channel Stats',
ekgTopProvidersWorkload: 'Top Providers (workload)',
ekgTopProvidersAll: 'Top Providers (all)',
ekgTopErrsigWorkload: 'Top Error Signatures (workload)',
ekgTopErrsigHeartbeat: 'Top Error Signatures (heartbeat)',
ekgTopErrsigAll: 'Top Error Signatures (all)',
taskList: 'Task List',
taskDetail: 'Task Detail',
taskQueue: 'Task Queue',
taskLogs: 'Task Logs',
mediaSources: 'Media Sources',
lastPauseReason: 'Last Pause Reason',
lastPauseAt: 'Last Pause Time',
allSources: 'All Sources',
allStatus: 'All Status',
pauseTask: 'Pause',
retryTask: 'Retry',
completeTask: 'Complete',
ignoreTask: 'Ignore',
taskCrud: 'Task CRUD',
createTask: 'Create',
newTask: 'New Task',
updateTask: 'Update',
deleteTask: 'Delete',
export: 'Export',
dailySummary: 'Daily Summary',
noDailySummary: 'No autonomy daily summary yet.',
error: 'Error',
noTaskAudit: 'No task audit records',
selectTask: 'Select a task from the left list',
loading: 'Loading...',
gatewayStatus: 'Gateway Status',
online: 'Online',
offline: 'Offline',
activeSessions: 'Active Sessions',
nodesOnline: 'Nodes Online',
recentCron: 'Recent Cron Jobs',
nodesSnapshot: 'Nodes Snapshot',
refreshAll: 'Refresh All',
refresh: 'Refresh',
active: 'Active',
paused: 'Paused',
noCronJobs: 'No cron jobs found',
noNodes: 'No nodes available',
sessions: 'Sessions',
startConversation: 'Start a conversation',
typeMessage: 'Type a message...',
configuration: 'Configuration',
form: 'Form',
rawJson: 'Raw JSON',
reload: 'Reload',
saveChanges: 'Save Changes',
gatewaySettings: 'Gateway Settings',
host: 'Host',
port: 'Port',
token: 'Token',
agentDefaults: 'Agent Defaults',
maxToolIterations: 'Max Tool Iterations',
maxTokens: 'Max Tokens',
providers: 'Providers',
proxyTimeout: 'Proxy Timeout (sec)',
system: 'System',
enableShellTools: 'Enable Shell Tools',
enableLogging: 'Enable Logging',
pauseJob: 'Pause Job',
startJob: 'Start Job',
deleteJob: 'Delete Job',
gatewayToken: 'Gateway Token',
enterToken: 'Enter token...',
addJob: 'Add Job',
editJob: 'Edit Job',
jobName: 'Job Name',
kind: 'Kind',
everyMs: 'Interval (ms)',
cronExpression: 'Cron Expression',
runAt: 'Run At',
message: 'Message',
deliver: 'Deliver',
channel: 'Channel',
to: 'To (Recipient)',
cancel: 'Cancel',
save: 'Save',
create: 'Create',
update: 'Update',
delete: 'Delete',
add: 'Add',
install: 'Install',
installed: 'Installed',
notInstalled: 'Not Installed',
status: 'Status',
source: 'Source',
duration: 'Duration',
provider: 'Provider',
model: 'Model',
time: 'Time',
level: 'Level',
code: 'Code',
template: 'Template',
content: 'Content',
id: 'ID',
files: 'Files',
close: 'Close',
path: 'Path',
before: 'Before',
after: 'After',
hide: 'Hide',
show: 'Show',
clear: 'Clear',
pause: 'Pause',
resume: 'Resume',
live: 'Live',
raw: 'Raw',
pretty: 'Pretty',
entries: 'entries',
appName: 'ClawGo',
webui: 'WebUI',
node: 'Node',
unknownIp: 'Unknown IP',
memoryFiles: 'Memory Files',
memoryFileNamePrompt: 'Memory file name',
noFileSelected: 'No file selected',
noDescription: 'No description provided.',
empty: '(empty)',
modal: 'Modal',
dialogPleaseConfirm: 'Please confirm',
dialogNotice: 'Notice',
dialogOk: 'OK',
requestFailed: 'Request Failed',
saved: 'Saved',
reloadHistory: 'Reload History',
user: 'User',
exec: 'Exec',
agent: 'Agent',
toolOutput: 'tool output',
chatServerError: 'Error: Failed to get response from server.',
waitingForLogs: 'Waiting for logs...',
systemLog: 'system.log',
codeCaller: 'Code/Caller',
recursiveAddValuePlaceholder: 'Type new value and add',
recursiveSelectOption: 'Select option',
logCodesSearchPlaceholder: 'Search code/text',
logCodesNoCodes: 'No codes',
skillsDeleteTitle: 'Delete Skill',
skillsDeleteMessage: 'Are you sure you want to delete this skill?',
skillsClawhubMissingTitle: 'clawhub not detected',
skillsClawhubMissingMessage: 'clawhub is not installed. Install dependencies and clawhub automatically?',
skillsInstallNow: 'Install now',
skillsInstallingDeps: 'Installing node/npm and clawhub...',
skillsInstallFailedTitle: 'Install failed',
skillsInstallFailedMessage: 'Failed to install clawhub',
skillsInstallDoneTitle: 'Install complete',
skillsInstallDoneMessage: 'clawhub is installed. You can continue installing skills.',
skillsInstallingSkill: 'Installing skill...',
skillsInstallSkillDoneTitle: 'Skill installed',
skillsInstallSkillDoneMessage: 'Skill "{{name}}" installed successfully.',
skillsAddTitle: 'Add Skill',
skillsAddMessage: 'Upload skill archive (.zip / .tar.gz / .tgz / .tar). It will be extracted into skills folder and archive will be removed.',
skillsSelectArchive: 'Select archive',
skillsImporting: 'Uploading and importing skill...',
skillsImportFailedTitle: 'Import failed',
skillsImportFailedMessage: 'Failed to import skill archive',
skillsImportDoneTitle: 'Import complete',
skillsImportedPrefix: 'Imported',
skillsImportDoneMessage: 'Skill imported successfully.',
skillsFileSaved: 'Skill file saved successfully.',
skillsNamePlaceholder: 'skill name',
skillsIgnoreSuspicious: 'Ignore suspicious warning (use --force)',
skillsClawhubNotFound: 'clawhub not found',
skillsClawhubStatus: 'clawhub',
skillsAdd: 'Add Skill',
skillsNoTools: 'No tools defined',
skillsFileEdit: 'File Edit',
configDiffPreview: 'Diff Preview',
configBasicMode: 'Basic Mode',
configAdvancedMode: 'Advanced Mode',
configHotOnly: 'Hot-reload fields only',
configSearchPlaceholder: 'Search group...',
configHotFieldsFull: 'Hot-reload fields (full)',
configTopLevel: 'Top Level',
configProxies: 'Proxies',
configNewProviderName: 'new provider name',
configNoCustomProviders: 'No custom providers yet.',
configNoGroups: 'No config groups found.',
configDiffPreviewCount: 'Diff Preview ({{count}} items)',
saveConfigFailed: 'Failed to save config',
sourceAutonomy: 'autonomy',
sourceDirect: 'direct',
sourceMemoryTodo: 'memory_todo',
statusRunning: 'running',
statusWaiting: 'waiting',
statusBlocked: 'blocked',
statusSuccess: 'success',
statusError: 'error',
statusSuppressed: 'suppressed',
taskId: 'Task ID',
inputPreview: 'Input Preview',
blockReason: 'Block Reason',
actionFailed: 'Action failed',
cronExpressionPlaceholder: '*/5 * * * *',
recipientId: 'recipient id',
languageZh: '中文',
languageEn: 'English',
configRoot: '(root)',
configCommaSeparatedHint: ', a, b',
configLabels: {
gateway: 'Gateway',
host: 'Host',
port: 'Port',
token: 'Token',
agents: 'Agents',
defaults: 'Defaults',
max_tool_iterations: 'Max Tool Iterations',
max_tokens: 'Max Tokens',
providers: 'Providers',
proxy: 'Proxy',
timeout_sec: 'Timeout (Seconds)',
shell: 'Shell',
enabled: 'Enabled',
logging: 'Logging',
level: 'Log Level',
format: 'Log Format',
storage: 'Storage',
path: 'Path',
database: 'Database',
type: 'Type',
connection: 'Connection',
security: 'Security',
cors: 'CORS',
allowed_origins: 'Allowed Origins',
rate_limit: 'Rate Limit',
requests_per_minute: 'Requests Per Minute',
enabled_true: 'Enabled',
enabled_false: 'Disabled',
openai: 'OpenAI',
gemini: 'Gemini',
anthropic: 'Anthropic',
api_key: 'API Key',
model: 'Model',
temperature: 'Temperature',
top_p: 'Top P',
top_k: 'Top K',
presence_penalty: 'Presence Penalty',
frequency_penalty: 'Frequency Penalty',
stream: 'Stream',
user: 'User',
system_instruction: 'System Instruction',
max_output_tokens: 'Max Output Tokens',
response_mime_type: 'Response MIME Type',
thinking_config: 'Thinking Config',
thinking_level: 'Thinking Level',
google_search: 'Google Search',
google_maps: 'Google Maps',
url_context: 'URL Context',
api_base: 'API Base',
protocol: 'Protocol',
models: 'Models',
responses: 'Responses',
streaming: 'Streaming',
web_search_enabled: 'Web Search Enabled',
web_search_context_size: 'Web Search Context Size',
file_search_vector_store_ids: 'File Search Vector Store IDs',
file_search_max_num_results: 'File Search Max Results',
include: 'Include',
stream_include_usage: 'Stream Include Usage',
organization: 'Organization',
project: 'Project',
region: 'Region',
deployment_name: 'Deployment Name',
version: 'Version',
name: 'Name',
description: 'Description',
system_prompt: 'System Prompt',
tools: 'Tools',
auth: 'Authentication',
jwt: 'JWT',
secret: 'Secret',
issuer: 'Issuer',
audience: 'Audience',
expires_in: 'Expires In',
refresh_token: 'Refresh Token',
access_token: 'Access Token',
client_id: 'Client ID',
client_secret: 'Client Secret',
redirect_uri: 'Redirect URI',
scope: 'Scope',
state: 'State',
retry: 'Retry',
backoff: 'Backoff',
factor: 'Factor',
min_delay: 'Min Delay',
max_delay: 'Max Delay',
jitter: 'Jitter',
channels: 'Channels',
cron: 'Cron',
workspace: 'Workspace',
proxy_fallbacks: 'Proxy Fallbacks',
heartbeat: 'Heartbeat',
every_sec: 'Interval (Seconds)',
ack_max_chars: 'Ack Max Chars',
prompt_template: 'Prompt Template',
autonomy: 'Autonomy',
tick_interval_sec: 'Tick Interval (Seconds)',
min_run_interval_sec: 'Min Run Interval (Seconds)',
max_pending_duration_sec: 'Max Pending Duration (Seconds)',
max_consecutive_stalls: 'Max Consecutive Stalls',
max_dispatch_per_tick: 'Max Dispatch Per Tick',
notify_cooldown_sec: 'Notify Cooldown (Seconds)',
notify_same_reason_cooldown_sec: 'Same-reason Notify Cooldown (Seconds)',
quiet_hours: 'Quiet Hours',
user_idle_resume_sec: 'User Idle Resume (Seconds)',
max_rounds_without_user: 'Max Rounds Without User',
task_history_retention_days: 'Task History Retention (Days)',
waiting_resume_debounce_sec: 'Waiting Resume Debounce (Seconds)',
idle_round_budget_release_sec: 'Idle Round Budget Release (Seconds)',
allowed_task_keywords: 'Allowed Task Keywords',
ekg_consecutive_error_threshold: 'EKG Consecutive Error Threshold',
texts: 'Text Templates',
no_response_fallback: 'No-response Fallback',
think_only_fallback: 'Think-only Fallback',
memory_recall_keywords: 'Memory Recall Keywords',
lang_usage: 'Language Usage Hint',
lang_invalid: 'Invalid Language Message',
lang_updated_template: 'Language Updated Template',
subagents_none: 'No-subagents Message',
sessions_none: 'No-sessions Message',
unsupported_action: 'Unsupported Action Message',
system_rewrite_template: 'System Rewrite Template',
runtime_compaction_note: 'Runtime Compaction Note',
startup_compaction_note: 'Startup Compaction Note',
autonomy_important_keywords: 'Autonomy Important Keywords',
autonomy_completion_template: 'Autonomy Completion Template',
autonomy_blocked_template: 'Autonomy Blocked Template',
context_compaction: 'Context Compaction',
mode: 'Mode',
trigger_messages: 'Trigger Messages',
keep_recent_messages: 'Keep Recent Messages',
max_summary_chars: 'Max Summary Chars',
max_transcript_chars: 'Max Transcript Chars',
runtime_control: 'Runtime Control',
intent_max_input_chars: 'Intent Max Input Chars',
autonomy_tick_interval_sec: 'Autonomy Tick Interval (Seconds)',
autonomy_min_run_interval_sec: 'Autonomy Min Run Interval (Seconds)',
autonomy_idle_threshold_sec: 'Autonomy Idle Threshold (Seconds)',
autonomy_max_rounds_without_user: 'Autonomy Max Rounds Without User',
autonomy_max_pending_duration_sec: 'Autonomy Max Pending Duration (Seconds)',
autonomy_max_consecutive_stalls: 'Autonomy Max Consecutive Stalls',
autolearn_max_rounds_without_user: 'Autolearn Max Rounds Without User',
run_state_ttl_seconds: 'Run State TTL (Seconds)',
run_state_max: 'Run State Max',
tool_parallel_safe_names: 'Tool Parallel Safe Names',
tool_max_parallel_calls: 'Tool Max Parallel Calls',
session_resource_scheduling_enabled: 'Session Resource Scheduling Enabled',
session_max_parallel_runs: 'Session Max Parallel Runs',
session_auto_plan_enabled: 'Session Auto Plan Enabled',
session_auto_plan_max_tasks: 'Session Auto Plan Max Tasks',
system_summary: 'System Summary',
marker: 'Summary Marker',
completed_prefix: 'Completed Prefix',
changes_prefix: 'Changes Prefix',
outcome_prefix: 'Outcome Prefix',
completed_title: 'Completed Title',
changes_title: 'Changes Title',
outcomes_title: 'Outcomes Title',
inbound_message_id_dedupe_ttl_seconds: 'Inbound Message Dedupe TTL (Seconds)',
inbound_content_dedupe_window_seconds: 'Inbound Content Dedupe Window (Seconds)',
outbound_dedupe_window_seconds: 'Outbound Dedupe Window (Seconds)',
telegram: 'Telegram',
allow_from: 'Allowed Senders',
allow_chats: 'Allowed Chats',
enable_groups: 'Enable Groups',
require_mention_in_groups: 'Require Mention In Groups',
discord: 'Discord',
maixcam: 'MaixCam',
whatsapp: 'WhatsApp',
bridge_url: 'Bridge URL',
feishu: 'Feishu',
app_id: 'App ID',
app_secret: 'App Secret',
encrypt_key: 'Encrypt Key',
verification_token: 'Verification Token',
dingtalk: 'DingTalk',
filesystem: 'Filesystem',
working_dir: 'Working Directory',
timeout: 'Timeout',
auto_install_missing: 'Auto-install Missing',
sandbox: 'Sandbox',
image: 'Image',
web: 'Web',
search: 'Search',
max_results: 'Max Results',
proxies: 'Proxies',
cross_session_call_id: 'Cross-session Call ID',
supports_responses_compact: 'Supports Responses Compact',
min_sleep_sec: 'Min Sleep (Seconds)',
max_sleep_sec: 'Max Sleep (Seconds)',
retry_backoff_base_sec: 'Retry Backoff Base (Seconds)',
retry_backoff_max_sec: 'Retry Backoff Max (Seconds)',
max_consecutive_failure_retries: 'Max Consecutive Failure Retries',
max_workers: 'Max Workers',
dir: 'Directory',
filename: 'Filename',
max_size_mb: 'Max Size (MB)',
retention_days: 'Retention Days'
}
}
},
zh: {
translation: {
dashboard: '仪表盘',
chat: '对话',
config: '配置',
cronJobs: '定时任务',
nodes: '节点',
logs: '实时日志',
logCodes: '日志编号',
skills: '技能管理',
memory: '记忆文件',
taskAudit: '任务审计',
tasks: '任务管理',
sidebarCore: '核心',
sidebarSystem: '系统',
sidebarOps: '运维',
sidebarInsights: '洞察',
ekg: 'EKG',
ekgEscalations: '升级拦截次数',
ekgSourceStats: '来源统计',
ekgChannelStats: '通道统计',
ekgTopProvidersWorkload: 'Top Providers业务负载',
ekgTopProvidersAll: 'Top Providers全量',
ekgTopErrsigWorkload: 'Top 错误签名(业务负载)',
ekgTopErrsigHeartbeat: 'Top 错误签名(心跳)',
ekgTopErrsigAll: 'Top 错误签名(全量)',
taskList: '任务列表',
taskDetail: '任务详情',
taskQueue: '任务队列',
taskLogs: '任务日志',
mediaSources: '媒体来源',
lastPauseReason: '最近暂停原因',
lastPauseAt: '最近暂停时间',
allSources: '全部来源',
allStatus: '全部状态',
pauseTask: '暂停',
retryTask: '重试',
completeTask: '完成',
ignoreTask: '忽略',
taskCrud: '任务 CRUD',
createTask: '新建',
newTask: '新任务',
updateTask: '更新',
deleteTask: '删除',
export: '导出',
dailySummary: '日报摘要',
noDailySummary: '暂无自治日报。',
error: '错误',
noTaskAudit: '暂无任务审计记录',
selectTask: '请从左侧选择任务',
loading: '加载中...',
gatewayStatus: '网关状态',
online: '在线',
offline: '离线',
activeSessions: '活跃会话',
nodesOnline: '在线节点',
recentCron: '最近定时任务',
nodesSnapshot: '节点快照',
refreshAll: '刷新全部',
refresh: '刷新',
active: '活跃',
paused: '已暂停',
noCronJobs: '未找到定时任务',
noNodes: '无可用节点',
sessions: '会话',
startConversation: '开始对话',
typeMessage: '输入消息...',
configuration: '配置',
form: '表单',
rawJson: '原始 JSON',
reload: '重新加载',
saveChanges: '保存更改',
gatewaySettings: '网关设置',
host: '主机',
port: '端口',
token: '令牌',
agentDefaults: '代理默认值',
maxToolIterations: '最大工具迭代次数',
maxTokens: '最大 Token 数',
providers: '提供商',
proxyTimeout: '代理超时 (秒)',
system: '系统',
enableShellTools: '启用 Shell 工具',
enableLogging: '启用日志',
pauseJob: '暂停任务',
startJob: '启动任务',
deleteJob: '删除任务',
gatewayToken: '网关令牌',
enterToken: '输入令牌...',
addJob: '新增任务',
editJob: '编辑任务',
jobName: '任务名称',
kind: '类型',
everyMs: '间隔 (毫秒)',
cronExpression: 'Cron 表达式',
runAt: '执行时间',
message: '消息',
deliver: '投递',
channel: '频道',
to: '接收者',
cancel: '取消',
save: '保存',
create: '创建',
update: '更新',
delete: '删除',
add: '添加',
install: '安装',
installed: '已安装',
notInstalled: '未安装',
status: '状态',
source: '来源',
duration: '耗时',
provider: '提供商',
model: '模型',
time: '时间',
level: '级别',
code: '代码',
template: '模板',
content: '内容',
id: 'ID',
files: '文件',
close: '关闭',
path: '路径',
before: '变更前',
after: '变更后',
hide: '隐藏',
show: '显示',
clear: '清空',
pause: '暂停',
resume: '继续',
live: '实时',
raw: '原始',
pretty: '格式化',
entries: '条',
appName: 'ClawGo',
webui: 'WebUI',
node: '节点',
unknownIp: '未知 IP',
memoryFiles: '记忆文件',
memoryFileNamePrompt: '记忆文件名',
noFileSelected: '未选择文件',
noDescription: '暂无描述。',
empty: '(空)',
modal: '弹窗',
dialogPleaseConfirm: '请确认',
dialogNotice: '提示',
dialogOk: '确定',
requestFailed: '请求失败',
saved: '已保存',
reloadHistory: '重新加载历史',
user: '用户',
exec: '执行',
agent: '助手',
toolOutput: '工具输出',
chatServerError: '错误:获取服务端响应失败。',
waitingForLogs: '等待日志中...',
systemLog: '系统日志',
codeCaller: '代码/来源',
recursiveAddValuePlaceholder: '输入新值后添加',
recursiveSelectOption: '下拉选择',
logCodesSearchPlaceholder: '搜索代码/文本',
logCodesNoCodes: '暂无代码',
skillsDeleteTitle: '删除技能',
skillsDeleteMessage: '确认删除这个技能吗?',
skillsClawhubMissingTitle: '未检测到 clawhub',
skillsClawhubMissingMessage: '检测到系统中未安装 clawhub。是否自动安装依赖环境并安装 clawhub',
skillsInstallNow: '立即安装',
skillsInstallingDeps: '正在安装 node/npm 与 clawhub...',
skillsInstallFailedTitle: '安装失败',
skillsInstallFailedMessage: '安装 clawhub 失败',
skillsInstallDoneTitle: '安装完成',
skillsInstallDoneMessage: 'clawhub 已安装,可继续安装技能。',
skillsInstallingSkill: '正在安装技能...',
skillsInstallSkillDoneTitle: '技能安装完成',
skillsInstallSkillDoneMessage: '技能 "{{name}}" 安装成功。',
skillsAddTitle: '添加技能',
skillsAddMessage: '请上传技能压缩包(.zip / .tar.gz / .tgz / .tar。上传后将自动解压到 skills 目录,并删除上传压缩包。',
skillsSelectArchive: '选择压缩包',
skillsImporting: '正在上传并导入技能...',
skillsImportFailedTitle: '导入失败',
skillsImportFailedMessage: '技能压缩包导入失败',
skillsImportDoneTitle: '导入完成',
skillsImportedPrefix: '已导入',
skillsImportDoneMessage: '技能导入成功。',
skillsFileSaved: '技能文件保存成功。',
skillsNamePlaceholder: '技能名',
skillsIgnoreSuspicious: '忽略可疑告警(使用 --force',
skillsClawhubNotFound: '未找到 clawhub',
skillsClawhubStatus: 'clawhub',
skillsAdd: '添加技能',
skillsNoTools: '未定义工具',
skillsFileEdit: '文件编辑',
configDiffPreview: '差异预览',
configBasicMode: '基础模式',
configAdvancedMode: '高级模式',
configHotOnly: '仅热更新字段',
configSearchPlaceholder: '搜索分类...',
configHotFieldsFull: '热更新字段(完整)',
configTopLevel: '顶层分类',
configProxies: '代理配置',
configNewProviderName: '新 provider 名称',
configNoCustomProviders: '暂无自定义 provider。',
configNoGroups: '未找到配置分组。',
configDiffPreviewCount: '配置差异预览({{count}}项)',
saveConfigFailed: '保存配置失败',
sourceAutonomy: 'autonomy',
sourceDirect: 'direct',
sourceMemoryTodo: 'memory_todo',
statusRunning: 'running',
statusWaiting: 'waiting',
statusBlocked: 'blocked',
statusSuccess: 'success',
statusError: 'error',
statusSuppressed: 'suppressed',
taskId: '任务 ID',
inputPreview: '输入预览',
blockReason: '阻断原因',
actionFailed: '操作失败',
cronExpressionPlaceholder: '*/5 * * * *',
recipientId: '接收者 ID',
languageZh: '中文',
languageEn: 'English',
configRoot: '(根)',
configCommaSeparatedHint: ',例如 a,b',
configLabels: {
gateway: '网关',
host: '主机',
port: '端口',
token: '令牌',
agents: '代理',
defaults: '默认值',
max_tool_iterations: '最大工具迭代次数',
max_tokens: '最大 Token 数',
providers: '提供商',
proxy: '代理',
timeout_sec: '超时时间 (秒)',
shell: 'Shell',
enabled: '已启用',
logging: '日志',
level: '日志级别',
format: '日志格式',
storage: '存储',
path: '路径',
database: '数据库',
type: '类型',
connection: '连接',
security: '安全',
cors: '跨域资源共享 (CORS)',
allowed_origins: '允许的来源',
rate_limit: '速率限制',
requests_per_minute: '每分钟请求数',
enabled_true: '已启用',
enabled_false: '已禁用',
openai: 'OpenAI',
gemini: 'Gemini',
anthropic: 'Anthropic',
api_key: 'API 密钥',
model: '模型',
temperature: '温度',
top_p: 'Top P',
top_k: 'Top K',
presence_penalty: '存在惩罚',
frequency_penalty: '频率惩罚',
stream: '流式传输',
user: '用户',
system_instruction: '系统指令',
max_output_tokens: '最大输出 Token',
response_mime_type: '响应 MIME 类型',
thinking_config: '思考配置',
thinking_level: '思考级别',
google_search: '谷歌搜索',
google_maps: '谷歌地图',
url_context: 'URL 上下文',
api_base: 'API 基础地址',
protocol: '协议',
models: '模型列表',
responses: 'Responses 配置',
streaming: '流式输出',
web_search_enabled: '启用网页搜索',
web_search_context_size: '网页搜索上下文大小',
file_search_vector_store_ids: '文件搜索向量库 ID 列表',
file_search_max_num_results: '文件搜索最大结果数',
include: '包含字段',
stream_include_usage: '流式包含用量',
organization: '组织',
project: '项目',
region: '区域',
deployment_name: '部署名称',
version: '版本',
name: '名称',
description: '描述',
system_prompt: '系统提示词',
tools: '工具',
auth: '身份验证',
jwt: 'JWT',
secret: '密钥',
issuer: '发行者',
audience: '受众',
expires_in: '过期时间',
refresh_token: '刷新令牌',
access_token: '访问令牌',
client_id: '客户端 ID',
client_secret: '客户端密钥',
redirect_uri: '重定向 URI',
scope: '范围',
state: '状态',
retry: '重试',
backoff: '退避',
factor: '因子',
min_delay: '最小延迟',
max_delay: '最大延迟',
jitter: '抖动',
channels: '通道',
cron: '定时任务',
workspace: '工作目录',
proxy_fallbacks: '代理回退链',
heartbeat: '心跳',
every_sec: '间隔(秒)',
ack_max_chars: '确认最大字符数',
prompt_template: '提示模板',
autonomy: '自治',
tick_interval_sec: '轮询间隔(秒)',
min_run_interval_sec: '最小运行间隔(秒)',
max_pending_duration_sec: '最大挂起时长(秒)',
max_consecutive_stalls: '最大连续停滞次数',
max_dispatch_per_tick: '每次轮询最大派发数',
notify_cooldown_sec: '通知冷却(秒)',
notify_same_reason_cooldown_sec: '同原因通知冷却(秒)',
quiet_hours: '静默时段',
user_idle_resume_sec: '用户空闲恢复(秒)',
max_rounds_without_user: '无用户最大轮数',
task_history_retention_days: '任务历史保留天数',
waiting_resume_debounce_sec: '等待恢复防抖(秒)',
idle_round_budget_release_sec: '空闲轮次预算释放(秒)',
allowed_task_keywords: '允许任务关键词',
ekg_consecutive_error_threshold: 'EKG 连续错误阈值',
texts: '文本模板',
no_response_fallback: '无响应兜底文案',
think_only_fallback: '仅思考兜底文案',
memory_recall_keywords: '记忆召回关键词',
lang_usage: '语言用法提示',
lang_invalid: '语言非法提示',
lang_updated_template: '语言更新模板',
subagents_none: '无子代理提示',
sessions_none: '无会话提示',
unsupported_action: '不支持操作提示',
system_rewrite_template: '系统改写模板',
runtime_compaction_note: '运行期压缩说明',
startup_compaction_note: '启动期压缩说明',
autonomy_important_keywords: '自治重要关键词',
autonomy_completion_template: '自治完成模板',
autonomy_blocked_template: '自治阻塞模板',
context_compaction: '上下文压缩',
mode: '模式',
trigger_messages: '触发消息数',
keep_recent_messages: '保留最近消息数',
max_summary_chars: '摘要最大字符数',
max_transcript_chars: '转录最大字符数',
runtime_control: '运行时控制',
intent_max_input_chars: '意图输入最大字符数',
autonomy_tick_interval_sec: '自治轮询间隔(秒)',
autonomy_min_run_interval_sec: '自治最小运行间隔(秒)',
autonomy_idle_threshold_sec: '自治空闲阈值(秒)',
autonomy_max_rounds_without_user: '自治无用户最大轮数',
autonomy_max_pending_duration_sec: '自治最大挂起时长(秒)',
autonomy_max_consecutive_stalls: '自治最大连续停滞次数',
autolearn_max_rounds_without_user: '自学习无用户最大轮数',
run_state_ttl_seconds: '运行状态 TTL',
run_state_max: '运行状态上限',
tool_parallel_safe_names: '工具并行安全名单',
tool_max_parallel_calls: '工具最大并行调用数',
session_resource_scheduling_enabled: '会话资源调度开关',
session_max_parallel_runs: '会话最大并行数',
session_auto_plan_enabled: '会话自动拆解开关',
session_auto_plan_max_tasks: '会话自动拆解最大任务数',
system_summary: '系统摘要',
marker: '摘要标记',
completed_prefix: '完成前缀',
changes_prefix: '变更前缀',
outcome_prefix: '结果前缀',
completed_title: '完成标题',
changes_title: '变更标题',
outcomes_title: '结果标题',
inbound_message_id_dedupe_ttl_seconds: '入站消息去重 TTL',
inbound_content_dedupe_window_seconds: '入站内容去重窗口(秒)',
outbound_dedupe_window_seconds: '出站去重窗口(秒)',
telegram: 'Telegram',
allow_from: '允许发送者',
allow_chats: '允许会话',
enable_groups: '启用群组',
require_mention_in_groups: '群组需 @ 提及',
discord: 'Discord',
maixcam: 'MaixCam',
whatsapp: 'WhatsApp',
bridge_url: '桥接地址',
feishu: '飞书',
app_id: '应用 ID',
app_secret: '应用密钥',
encrypt_key: '加密 Key',
verification_token: '校验 Token',
dingtalk: '钉钉',
filesystem: '文件系统',
working_dir: '工作目录',
timeout: '超时',
auto_install_missing: '自动安装缺失依赖',
sandbox: '沙箱',
image: '镜像',
web: 'Web',
search: '搜索',
max_results: '最大结果数',
proxies: '代理集合',
cross_session_call_id: '跨会话调用 ID',
supports_responses_compact: '支持紧凑 responses',
min_sleep_sec: '最小休眠(秒)',
max_sleep_sec: '最大休眠(秒)',
retry_backoff_base_sec: '重试退避基准(秒)',
retry_backoff_max_sec: '重试退避上限(秒)',
max_consecutive_failure_retries: '最大连续失败重试次数',
max_workers: '最大 worker 数',
dir: '目录',
filename: '文件名',
max_size_mb: '最大大小MB',
retention_days: '保留天数'
}
}
}
};
i18n
.use(LanguageDetector)
.use(initReactI18next)
.init({
resources,
fallbackLng: 'zh',
interpolation: {
escapeValue: false,
},
});
export default i18n;