mirror of
https://github.com/sipeed/picoclaw.git
synced 2026-06-12 18:08:54 +00:00
be6bf9f6c6
Virtual models generated from multi-key expansion are now marked and filtered during config persistence. Virtual models display with a badge in the UI and cannot be set as default.
508 lines
22 KiB
JSON
508 lines
22 KiB
JSON
{
|
||
"navigation": {
|
||
"chat": "对话",
|
||
"model_group": "模型",
|
||
"models": "模型",
|
||
"credentials": "凭据",
|
||
"agent_group": "智能体",
|
||
"skills": "技能",
|
||
"tools": "工具",
|
||
"services": "服务",
|
||
"channels_group": "频道",
|
||
"show_more_channels": "更多",
|
||
"show_less_channels": "收起",
|
||
"config": "配置",
|
||
"logs": "日志"
|
||
},
|
||
"chat": {
|
||
"welcome": "今天我能为您做些什么?",
|
||
"welcomeDesc": "您可以询问我天气、设置或其他任何任务,我随时为您效劳。",
|
||
"placeholder": "输入新消息...\n按 Enter 发送,Shift + Enter 换行",
|
||
"newChat": "新建对话",
|
||
"notConnected": "服务未运行,请先启动以进行对话。",
|
||
"thinking": {
|
||
"step1": "思考中...",
|
||
"step2": "分析您的请求...",
|
||
"step3": "准备回复...",
|
||
"step4": "马上就好..."
|
||
},
|
||
"history": "历史记录",
|
||
"noHistory": "暂无对话历史",
|
||
"historyLoadFailed": "加载历史记录失败",
|
||
"historyOpenFailed": "打开该历史会话失败",
|
||
"loadingMore": "加载更多...",
|
||
"deleteSession": "删除会话",
|
||
"messagesCount": "{{count}} 条消息",
|
||
"noModel": "选择模型",
|
||
"empty": {
|
||
"noConfiguredModel": "尚未配置模型",
|
||
"noConfiguredModelDescription": "请先配置至少一个带有 API Key 的 AI 模型,才能开始对话。",
|
||
"goToModels": "去模型页配置",
|
||
"noSelectedModel": "尚未设置模型",
|
||
"noSelectedModelDescription": "您已配置模型,但尚未设置默认模型。请选择一个模型后开始对话",
|
||
"notRunning": "服务尚未运行",
|
||
"notRunningDescription": "请先启动网关服务后再开始对话,可点击顶部栏中的「启动服务」按钮。"
|
||
},
|
||
"modelGroup": {
|
||
"apikey": "API Key",
|
||
"oauth": "OAuth",
|
||
"local": "本地模型"
|
||
}
|
||
},
|
||
"header": {
|
||
"gateway": {
|
||
"stopDialog": {
|
||
"title": "停止服务?",
|
||
"description": "您确定要停止服务吗?这将断开您当前活动的聊天会话并停止推理。",
|
||
"confirm": "停止服务"
|
||
},
|
||
"action": {
|
||
"start": "启动服务",
|
||
"stop": "停止服务",
|
||
"restart": "重启服务"
|
||
},
|
||
"status": {
|
||
"starting": "服务启动中...",
|
||
"restarting": "服务重启中...",
|
||
"stopping": "服务停止中..."
|
||
},
|
||
"restartRequired": "切换默认模型后需要重启服务才能生效。"
|
||
}
|
||
},
|
||
"common": {
|
||
"cancel": "取消",
|
||
"save": "保存",
|
||
"saving": "保存中...",
|
||
"reset": "重置",
|
||
"confirm": "确认"
|
||
},
|
||
"labels": {
|
||
"loading": "加载中..."
|
||
},
|
||
"credentials": {
|
||
"description": "管理已支持服务商的 OAuth 与 Token 凭据。",
|
||
"loading": "正在加载凭据...",
|
||
"providers": {
|
||
"openai": {
|
||
"description": "支持浏览器 OAuth、设备码和 Token 登录。"
|
||
},
|
||
"anthropic": {
|
||
"description": "使用 Token 登录 Claude。"
|
||
},
|
||
"antigravity": {
|
||
"description": "使用浏览器 OAuth 登录 Google Cloud Code Assist。"
|
||
}
|
||
},
|
||
"status": {
|
||
"connected": "已连接",
|
||
"needsRefresh": "即将过期",
|
||
"expired": "已过期",
|
||
"notLoggedIn": "未登录"
|
||
},
|
||
"actions": {
|
||
"browser": "浏览器 OAuth",
|
||
"deviceCode": "设备码",
|
||
"stopLoading": "停止加载",
|
||
"saveToken": "保存",
|
||
"logout": "退出登录"
|
||
},
|
||
"logoutDialog": {
|
||
"title": "确认退出登录?",
|
||
"description": "这将删除 {{provider}} 的已保存凭据。"
|
||
},
|
||
"fields": {
|
||
"openaiToken": "OpenAI Token",
|
||
"anthropicToken": "Anthropic Token"
|
||
},
|
||
"labels": {
|
||
"account": "账号",
|
||
"email": "邮箱",
|
||
"project": "项目"
|
||
},
|
||
"errors": {
|
||
"loadFailed": "加载凭据失败",
|
||
"flowFailed": "查询授权流程失败",
|
||
"loginFailed": "登录失败",
|
||
"logoutFailed": "退出登录失败",
|
||
"invalidBrowserResponse": "浏览器登录响应无效",
|
||
"invalidDeviceResponse": "设备码响应无效",
|
||
"popupBlocked": "无法打开新标签页,请允许弹窗后重试。"
|
||
},
|
||
"flow": {
|
||
"current": "当前授权状态",
|
||
"pending": "等待授权中...",
|
||
"success": "认证成功",
|
||
"error": "认证失败",
|
||
"expired": "授权会话已过期"
|
||
},
|
||
"device": {
|
||
"title": "OpenAI 设备码登录",
|
||
"description": "请打开验证页面并输入下方代码,此页面会自动刷新授权状态。",
|
||
"code": "用户代码",
|
||
"url": "验证地址",
|
||
"polling": "正在轮询登录状态...",
|
||
"open": "打开验证页面"
|
||
}
|
||
},
|
||
"models": {
|
||
"description": "为 AI 服务商配置 API Key。只有已配置的模型可用于对话。",
|
||
"loadError": "加载模型列表失败",
|
||
"noDefaultHintPrefix": "尚未设置默认模型,点击",
|
||
"noDefaultHintSuffix": "设为默认。",
|
||
"status": {
|
||
"configured": "已配置",
|
||
"unconfigured": "未配置"
|
||
},
|
||
"badge": {
|
||
"default": "默认",
|
||
"virtual": "虚拟"
|
||
},
|
||
"action": {
|
||
"edit": "编辑 API Key",
|
||
"setDefault": "设为默认",
|
||
"delete": "删除模型"
|
||
},
|
||
"defaultOnSave": {
|
||
"label": "默认模型",
|
||
"description": "保存后自动将该模型设置为默认模型。"
|
||
},
|
||
"add": {
|
||
"button": "添加模型",
|
||
"title": "添加自定义模型",
|
||
"description": "添加兼容 OpenAI 或原生协议的模型端点。",
|
||
"modelName": "模型别名",
|
||
"modelNamePlaceholder": "例如 my-gpt4",
|
||
"modelNameHint": "用于在对话中识别此模型的简短名称。",
|
||
"modelId": "模型标识符",
|
||
"modelIdPlaceholder": "例如 openai/gpt-4o",
|
||
"modelIdHint": "格式:协议/模型ID。支持:openai、anthropic、gemini、groq 等。",
|
||
"errorRequired": "此字段为必填项。",
|
||
"errorDuplicateModelName": "模型别名已存在,请使用其他名称。",
|
||
"saveError": "添加模型失败",
|
||
"confirm": "添加模型"
|
||
},
|
||
"delete": {
|
||
"title": "确认删除模型?",
|
||
"description": "「{{name}}」将从模型列表中永久移除,此操作不可撤销。",
|
||
"confirm": "删除"
|
||
},
|
||
"advanced": {
|
||
"toggle": "高级选项"
|
||
},
|
||
"field": {
|
||
"apiBase": "API Base URL",
|
||
"apiKey": "API Key",
|
||
"apiKeyPlaceholder": "请输入 API Key",
|
||
"apiKeyPlaceholderSet": "留空保持原有 Key 不变",
|
||
"proxy": "HTTP 代理",
|
||
"proxyHint": "可选。例如 http://127.0.0.1:7890",
|
||
"authMethod": "认证方式",
|
||
"authMethodHint": "认证方式:oauth、token。留空表示使用 API Key 认证。",
|
||
"connectMode": "连接模式",
|
||
"connectModeHint": "CLI 型服务商的连接模式:stdio 或 grpc。",
|
||
"workspace": "工作目录",
|
||
"workspaceHint": "CLI 型服务商的工作目录路径(如 GitHub Copilot)。",
|
||
"requestTimeout": "请求超时(秒)",
|
||
"requestTimeoutHint": "等待响应的最大秒数,0 表示使用默认值。",
|
||
"rpm": "速率限制(RPM)",
|
||
"rpmHint": "每分钟最大请求数,0 表示不限制。",
|
||
"thinkingLevel": "思考级别",
|
||
"thinkingLevelHint": "扩展思考预算:off、low、medium、high、xhigh、adaptive。",
|
||
"maxTokensField": "Max Tokens 字段名",
|
||
"maxTokensFieldHint": "覆盖请求中 max_tokens 的字段名,例如 max_completion_tokens。"
|
||
},
|
||
"edit": {
|
||
"title": "配置 {{name}}",
|
||
"apiKeyHint": "已设置 API Key,留空表示不修改。",
|
||
"oauthNote": "该服务商使用 OAuth 认证,无需 API Key。",
|
||
"saveError": "保存失败"
|
||
}
|
||
},
|
||
"channels": {
|
||
"loadError": "加载频道列表失败",
|
||
"edit": "配置 {{name}}",
|
||
"status": {
|
||
"configured": "已配置"
|
||
},
|
||
"name": {
|
||
"telegram": "Telegram",
|
||
"discord": "Discord",
|
||
"slack": "Slack",
|
||
"feishu": "飞书",
|
||
"dingtalk": "钉钉",
|
||
"line": "LINE",
|
||
"qq": "QQ",
|
||
"onebot": "OneBot",
|
||
"wecom": "企业微信",
|
||
"whatsapp": "WhatsApp",
|
||
"whatsapp_native": "WhatsApp Native",
|
||
"pico": "Web",
|
||
"maixcam": "MaixCam",
|
||
"matrix": "Matrix",
|
||
"irc": "IRC",
|
||
"weixin": "微信"
|
||
},
|
||
"weixin": {
|
||
"warningTitle": "测试阶段,请谨慎使用",
|
||
"warningDesc": "微信 Channel 当前仍处于测试阶段,存在封号风险。请仅在充分了解风险的前提下使用。",
|
||
"bindEnableSuccess": "微信已连接,频道已自动启用。",
|
||
"bindTitle": "微信账号绑定",
|
||
"bindDesc": "使用微信扫描二维码以绑定您的个人微信账号。",
|
||
"bind": "绑定微信",
|
||
"rebind": "重新绑定",
|
||
"bound": "微信已绑定",
|
||
"notBound": "尚未绑定微信账号。",
|
||
"generating": "正在生成二维码...",
|
||
"scanHint": "打开微信,扫描二维码",
|
||
"scanned": "已扫码 — 请在微信中确认",
|
||
"expired": "二维码已过期",
|
||
"retry": "重试",
|
||
"refresh": "刷新二维码",
|
||
"errorGeneric": "发生错误,请重试。"
|
||
},
|
||
"field": {
|
||
"token": "Bot Token",
|
||
"tokenPlaceholder": "输入 Bot Token",
|
||
"botToken": "Bot Token",
|
||
"appToken": "App Token",
|
||
"appId": "App ID",
|
||
"appSecret": "App Secret",
|
||
"verificationToken": "Verification Token",
|
||
"encryptKey": "Encrypt Key",
|
||
"baseUrl": "API Base URL",
|
||
"proxy": "HTTP 代理",
|
||
"mentionOnly": "仅提及时响应",
|
||
"typingEnabled": "输入中提示",
|
||
"placeholderEnabled": "占位消息",
|
||
"placeholderText": "占位文案",
|
||
"groupTriggerMentionOnly": "群聊仅提及时响应",
|
||
"groupTriggerPrefixes": "群聊触发前缀",
|
||
"isLark": "Lark(国际版)",
|
||
"allowFrom": "允许来源",
|
||
"allowFromPlaceholder": "例如 123456, 789012",
|
||
"allowOrigins": "允许来源域名",
|
||
"allowOriginsPlaceholder": "例如 https://example.com, http://localhost:5173",
|
||
"secretPlaceholder": "输入密钥",
|
||
"secretHintSet": "已设置密钥,留空表示不修改。"
|
||
},
|
||
"page": {
|
||
"notFound": "不支持频道“{{name}}”。",
|
||
"saveSuccess": "频道配置已保存。",
|
||
"saveError": "保存频道配置失败",
|
||
"enabled": "已启用",
|
||
"docLink": "配置文档",
|
||
"enableLabel": "启用频道",
|
||
"restartRequiredTitle": "需要重启服务",
|
||
"restartRequiredDesc": "{{name}} 的最新配置已保存。重启服务后才能正式生效。"
|
||
},
|
||
"form": {
|
||
"desc": {
|
||
"token": "机器人访问令牌,用于连接平台 API。",
|
||
"botToken": "Bot Token,用于发送与接收消息。",
|
||
"appToken": "App Token,用于 Socket 模式连接。",
|
||
"appId": "应用唯一标识,用于平台鉴权。",
|
||
"appSecret": "应用密钥,用于请求签名和鉴权。",
|
||
"verificationToken": "事件回调验证令牌。",
|
||
"encryptKey": "消息加密密钥,用于解密回调内容。",
|
||
"baseUrl": "平台 API 地址,默认使用官方地址。",
|
||
"proxy": "HTTP 代理地址,用于网络访问。",
|
||
"mentionOnly": "在群聊中仅当明确提及时才响应。",
|
||
"typingEnabled": "在生成回复时显示“正在输入”状态。",
|
||
"placeholderEnabled": "在最终回复发送前,先发送临时占位消息。",
|
||
"groupTriggerMentionOnly": "在群聊中仅当提及机器人时才响应。",
|
||
"groupTriggerPrefixes": "群聊触发前缀,多个值用逗号分隔。",
|
||
"isLark": "使用 Lark 国际版域名(open.larksuite.com)替代飞书域名(open.feishu.cn)。",
|
||
"allowFrom": "允许访问的用户或群组 ID,多个值用逗号分隔。",
|
||
"allowOrigins": "允许访问的来源域名,多个值用逗号分隔。",
|
||
"wsUrl": "WebSocket 服务地址。",
|
||
"reconnectInterval": "断线后的重连间隔(秒)。",
|
||
"bridgeUrl": "桥接服务地址。",
|
||
"sessionStorePath": "本地会话存储目录路径。",
|
||
"useNative": "是否使用原生客户端模式连接。",
|
||
"host": "服务监听主机地址。",
|
||
"port": "服务监听端口。",
|
||
"homeserver": "Matrix homeserver 地址。",
|
||
"userId": "账号 ID。",
|
||
"deviceId": "设备 ID。",
|
||
"joinOnInvite": "收到邀请时是否自动加入房间。",
|
||
"clientId": "应用客户端 ID,用于平台鉴权。",
|
||
"corpId": "企业 ID。",
|
||
"agentId": "企业应用 Agent ID。",
|
||
"webhookUrl": "Webhook 完整地址。",
|
||
"webhookHost": "Webhook 监听主机。",
|
||
"webhookPort": "Webhook 监听端口。",
|
||
"webhookPath": "Webhook 路径。",
|
||
"replyTimeout": "回复超时时间(秒)。",
|
||
"maxSteps": "最大步骤数。",
|
||
"welcomeMessage": "新会话欢迎语内容。",
|
||
"allowTokenQuery": "是否允许 URL Query 方式传递 Token。",
|
||
"pingInterval": "连接心跳间隔(秒)。",
|
||
"readTimeout": "读取超时时间(秒)。",
|
||
"writeTimeout": "写入超时时间(秒)。",
|
||
"maxConnections": "最大并发连接数。",
|
||
"server": "IRC 服务器地址。",
|
||
"tls": "是否启用 TLS 连接。",
|
||
"nick": "机器人昵称。",
|
||
"user": "IRC 用户名。",
|
||
"realName": "显示名称。",
|
||
"channels": "要加入的 IRC 频道列表。",
|
||
"requestCaps": "连接时请求的 IRC 扩展能力列表。",
|
||
"maxBase64FileSizeMiB": "本地文件转为 base64 上传的最大体积,单位 MiB;0 表示不限制,仅影响本地文件,不影响 URL 直传。",
|
||
"genericField": "用于配置{{field}}。"
|
||
}
|
||
},
|
||
"validation": {
|
||
"requiredField": "请填写该字段"
|
||
}
|
||
},
|
||
"pages": {
|
||
"agent": {
|
||
"load_error": "加载 Agent 支持信息失败。",
|
||
"skills": {
|
||
"description": "技能会从工作区、PicoClaw 全局目录和内置目录中加载。",
|
||
"empty": "当前没有可用技能。",
|
||
"import": "导入技能",
|
||
"import_success": "技能导入成功。",
|
||
"import_error": "导入技能失败。",
|
||
"view": "查看",
|
||
"delete": "删除",
|
||
"delete_title": "删除技能?",
|
||
"delete_description": "将从工作区技能中移除「{{name}}」。",
|
||
"delete_confirm": "删除",
|
||
"delete_success": "技能已删除。",
|
||
"delete_error": "删除技能失败。",
|
||
"viewer_title": "技能内容",
|
||
"viewer_description": "这里展示当前生效的 SKILL.md 内容。",
|
||
"loading_detail": "正在加载技能内容...",
|
||
"load_detail_error": "加载技能内容失败。",
|
||
"path": "技能路径",
|
||
"no_description": "未提供描述。"
|
||
},
|
||
"tools": {
|
||
"description": "这里展示每个 Agent 工具当前是已启用、已禁用,还是被依赖条件阻塞。",
|
||
"empty": "当前没有可用工具。",
|
||
"enable": "启用",
|
||
"disable": "禁用",
|
||
"enable_success": "工具已启用。",
|
||
"disable_success": "工具已禁用。",
|
||
"toggle_error": "更新工具状态失败。",
|
||
"config_key": "由 tools.{{key}} 控制",
|
||
"status": {
|
||
"enabled": "已启用",
|
||
"disabled": "已禁用",
|
||
"blocked": "被阻塞"
|
||
},
|
||
"categories": {
|
||
"automation": "自动化",
|
||
"filesystem": "文件系统",
|
||
"web": "网页",
|
||
"communication": "通信",
|
||
"skills": "技能",
|
||
"agents": "Agent",
|
||
"hardware": "硬件",
|
||
"discovery": "发现"
|
||
},
|
||
"reasons": {
|
||
"requires_linux": "该工具仅在 Linux 主机上可用,并且需要暴露对应的设备文件。",
|
||
"requires_skills": "需要先启用 `tools.skills`,该技能注册表工具才能使用。",
|
||
"requires_subagent": "需要先启用 `tools.subagent`,`spawn` 才能委派任务。",
|
||
"requires_mcp_discovery": "需要先启用 `tools.mcp.discovery`,MCP 发现工具才会可用。"
|
||
}
|
||
}
|
||
},
|
||
"config": {
|
||
"load_error": "加载配置失败,请刷新后重试。",
|
||
"workspace": "工作目录",
|
||
"workspace_hint": "智能体执行文件读写操作时使用的基础目录。",
|
||
"restrict_workspace": "限制工作目录访问",
|
||
"restrict_workspace_hint": "仅允许在工作目录内执行文件操作。",
|
||
"tool_feedback_enabled": "工具反馈",
|
||
"tool_feedback_enabled_hint": "在每次执行工具前,先向当前会话发送一条简短的工具调用预览。",
|
||
"tool_feedback_max_args_length": "工具反馈参数预览长度",
|
||
"tool_feedback_max_args_length_hint": "每条工具反馈消息中展示的参数字符上限。设为 0 时使用默认值。",
|
||
"exec_enabled": "允许命令执行",
|
||
"exec_enabled_hint": "控制应用是否允许执行命令。关闭后,所有命令请求都不会执行。",
|
||
"allow_remote": "允许远程命令执行",
|
||
"allow_remote_hint": "开启后,来自远程会话或非本地上下文的请求也可以执行命令;关闭后,仅允许本地安全上下文执行命令。",
|
||
"enable_deny_patterns": "启用黑名单",
|
||
"enable_deny_patterns_hint": "开启后,应用会拦截匹配内置危险模式以及下方自定义命令黑名单的命令。",
|
||
"exec_timeout_seconds": "命令超时(秒)",
|
||
"exec_timeout_seconds_hint": "命令请求的最长运行时间。设置为 0 表示使用默认超时。",
|
||
"custom_deny_patterns": "命令黑名单",
|
||
"custom_deny_patterns_hint": "用于补充额外的命令拦截规则,每行一个正则表达式。命中任意一条规则的命令都会被阻止。",
|
||
"custom_allow_patterns": "命令白名单",
|
||
"custom_allow_patterns_hint": "用于补充额外的命令放行规则,每行一个正则表达式。命中任意一条规则的命令会跳过黑名单检查,但仍受其他安全限制约束。",
|
||
"custom_patterns_placeholder": "^rm\\s+-rf\\b\n^git\\s+push\\b",
|
||
"allow_shell_execution": "允许定时任务运行命令",
|
||
"allow_shell_execution_hint": "开启后,定时任务默认允许运行命令。关闭后,必须显式传入 command_confirm=true 才能创建运行命令的定时任务。",
|
||
"cron_exec_timeout": "定时命令超时(分钟)",
|
||
"cron_exec_timeout_hint": "定时任务中命令的最长运行时间。设置为 0 表示不限制超时。",
|
||
"max_tokens": "最大 Token 数",
|
||
"max_tokens_hint": "单次模型响应允许的最大 Token 数。",
|
||
"context_window": "上下文窗口",
|
||
"context_window_hint": "模型输入上下文容量(Token 数)。留空使用默认值(最大 Token 数的 4 倍)。",
|
||
"max_tool_iterations": "最大工具迭代次数",
|
||
"max_tool_iterations_hint": "单个任务中允许的工具调用循环上限。",
|
||
"summarize_threshold": "触发摘要的消息阈值",
|
||
"summarize_threshold_hint": "消息数量达到该值后开始触发摘要。",
|
||
"summarize_token_percent": "摘要目标 Token 百分比",
|
||
"summarize_token_percent_hint": "在触发会话摘要时使用。",
|
||
"session_scope": "会话隔离范围",
|
||
"session_scope_hint": "定义不同用户/频道之间如何隔离会话上下文。",
|
||
"session_scope_per_channel_peer": "按频道+用户隔离",
|
||
"session_scope_per_channel_peer_desc": "同一频道内不同用户使用独立上下文。",
|
||
"session_scope_per_channel": "按频道隔离",
|
||
"session_scope_per_channel_desc": "同一频道内共享一个上下文。",
|
||
"session_scope_per_peer": "按用户隔离",
|
||
"session_scope_per_peer_desc": "同一用户跨频道共享一个上下文。",
|
||
"session_scope_global": "全局共享",
|
||
"session_scope_global_desc": "所有消息共用一个全局上下文。",
|
||
"heartbeat_enabled": "心跳开关",
|
||
"heartbeat_enabled_hint": "按间隔发送系统心跳。",
|
||
"heartbeat_interval": "心跳间隔(分钟)",
|
||
"heartbeat_interval_hint": "两次心跳发送之间的分钟间隔。",
|
||
"devices_enabled": "启用设备功能",
|
||
"devices_enabled_hint": "启用与本机硬件设备相关的能力。",
|
||
"monitor_usb": "监听 USB",
|
||
"monitor_usb_hint": "在启用设备功能时,监听 USB 插拔事件。",
|
||
"autostart_label": "开机自启",
|
||
"autostart_hint": "登录系统后自动启动 PicoClaw Web。",
|
||
"autostart_unsupported": "当前平台不支持开机自启。",
|
||
"autostart_load_error": "加载开机自启状态失败。",
|
||
"server_port": "服务端口",
|
||
"server_port_hint": "PicoClaw Web 的 HTTP 监听端口。",
|
||
"lan_access": "启用局域网访问",
|
||
"lan_access_hint": "允许局域网中的其他设备访问当前服务。",
|
||
"allowed_cidrs": "允许访问网段",
|
||
"allowed_cidrs_hint": "仅允许这些 CIDR 网段的客户端访问服务。可按行或逗号分隔;留空表示允许所有来源。",
|
||
"allowed_cidrs_placeholder": "192.168.1.0/24\n10.0.0.0/8",
|
||
"sections": {
|
||
"agent": "智能体",
|
||
"runtime": "运行时",
|
||
"exec": "运行命令",
|
||
"cron": "定时任务",
|
||
"launcher": "服务参数",
|
||
"devices": "设备"
|
||
},
|
||
"open_raw": "原始配置",
|
||
"back_to_visual": "可视化配置",
|
||
"raw_json_title": "原始 JSON 配置",
|
||
"json_placeholder": "请输入有效的 JSON 配置...",
|
||
"save_success": "配置保存成功。",
|
||
"save_error": "配置保存失败。",
|
||
"reset_confirm_title": "重置更改",
|
||
"reset_confirm_desc": "您确定要重置回上次保存的状态吗?",
|
||
"reset_success": "更改已重置为上次保存的状态。",
|
||
"invalid_json": "JSON 格式无效。",
|
||
"format_success": "JSON 格式化成功。",
|
||
"format_error": "JSON 格式无效。",
|
||
"format": "格式化",
|
||
"unsaved_changes": "您有未保存的更改。"
|
||
},
|
||
"logs": {
|
||
"clear": "清空日志",
|
||
"empty": "等待日志中..."
|
||
}
|
||
}
|
||
}
|