mirror of
https://github.com/Ed1s0nZ/CyberStrikeAI.git
synced 2026-05-07 18:17:00 +02:00
1910 lines
87 KiB
JSON
1910 lines
87 KiB
JSON
{
|
||
"lang": {
|
||
"zhCN": "中文",
|
||
"enUS": "English"
|
||
},
|
||
"common": {
|
||
"ok": "确定",
|
||
"cancel": "取消",
|
||
"refresh": "刷新",
|
||
"close": "关闭",
|
||
"edit": "编辑",
|
||
"delete": "删除",
|
||
"save": "保存",
|
||
"loading": "加载中…",
|
||
"search": "搜索",
|
||
"clearSearch": "清除搜索",
|
||
"noData": "暂无数据",
|
||
"confirm": "确认",
|
||
"copy": "复制",
|
||
"copied": "已复制",
|
||
"copyFailed": "复制失败",
|
||
"view": "查看",
|
||
"actions": "操作"
|
||
},
|
||
"header": {
|
||
"title": "CyberStrikeAI",
|
||
"apiDocs": "API 文档",
|
||
"github": "GitHub",
|
||
"logout": "退出登录",
|
||
"language": "界面语言",
|
||
"backToDashboard": "返回仪表盘",
|
||
"userMenu": "用户菜单",
|
||
"version": "当前版本",
|
||
"toggleSidebar": "折叠/展开侧边栏"
|
||
},
|
||
"login": {
|
||
"title": "登录 CyberStrikeAI",
|
||
"subtitle": "请输入配置中的访问密码",
|
||
"passwordLabel": "密码",
|
||
"passwordPlaceholder": "输入登录密码",
|
||
"submit": "登录"
|
||
},
|
||
"nav": {
|
||
"dashboard": "仪表盘",
|
||
"chat": "对话",
|
||
"infoCollect": "信息收集",
|
||
"tasks": "任务管理",
|
||
"vulnerabilities": "漏洞管理",
|
||
"webshell": "WebShell管理",
|
||
"chatFiles": "文件管理",
|
||
"mcp": "MCP",
|
||
"mcpMonitor": "MCP状态监控",
|
||
"mcpManagement": "MCP管理",
|
||
"knowledge": "知识",
|
||
"knowledgeRetrievalLogs": "检索历史",
|
||
"knowledgeManagement": "知识管理",
|
||
"skills": "Skills",
|
||
"skillsMonitor": "Skills状态监控",
|
||
"skillsManagement": "Skills管理",
|
||
"agents": "Agents",
|
||
"agentsManagement": "Agent管理",
|
||
"roles": "角色",
|
||
"rolesManagement": "角色管理",
|
||
"settings": "系统设置",
|
||
"hitl": "人机协同"
|
||
},
|
||
"dashboard": {
|
||
"title": "仪表盘",
|
||
"refresh": "刷新",
|
||
"refreshData": "刷新数据",
|
||
"runningTasks": "运行中任务",
|
||
"vulnTotal": "漏洞总数",
|
||
"toolCalls": "工具调用次数",
|
||
"successRate": "工具执行成功率",
|
||
"clickToViewTasks": "点击查看任务管理",
|
||
"clickToViewVuln": "点击查看漏洞管理",
|
||
"clickToViewMCP": "点击查看 MCP 监控",
|
||
"severityDistribution": "漏洞严重程度分布",
|
||
"severityCritical": "严重",
|
||
"severityHigh": "高危",
|
||
"severityMedium": "中危",
|
||
"severityLow": "低危",
|
||
"severityInfo": "信息",
|
||
"runOverview": "运行概览",
|
||
"batchQueues": "批量任务队列",
|
||
"pending": "待执行",
|
||
"executing": "执行中",
|
||
"completed": "已完成",
|
||
"toolInvocations": "工具调用",
|
||
"callsUnit": "次调用",
|
||
"toolsUnit": "个工具",
|
||
"knowledgeLabel": "知识",
|
||
"knowledgeItems": "项知识",
|
||
"categoriesUnit": "个分类",
|
||
"skillsLabel": "Skills",
|
||
"skillUnit": "个 Skill",
|
||
"quickLinks": "快捷入口",
|
||
"toolsExecCount": "工具执行次数",
|
||
"ctaTitle": "开始你的安全之旅",
|
||
"ctaSub": "在对话中描述目标,AI 将协助执行扫描与漏洞分析",
|
||
"goToChat": "前往对话",
|
||
"noTasks": "暂无任务",
|
||
"totalCount": "共 {{count}} 个",
|
||
"notEnabled": "未启用",
|
||
"enabled": "已启用",
|
||
"toConfigure": "待配置",
|
||
"toUse": "待使用",
|
||
"active": "活跃",
|
||
"highFreq": "高频",
|
||
"noCallData": "暂无调用数据"
|
||
},
|
||
"chat": {
|
||
"newChat": "新对话",
|
||
"toggleConversationPanel": "折叠/展开对话列表",
|
||
"searchHistory": "搜索历史记录...",
|
||
"conversationGroups": "对话分组",
|
||
"addGroup": "新建分组",
|
||
"recentConversations": "最近对话",
|
||
"batchManage": "批量管理",
|
||
"attackChain": "攻击链",
|
||
"viewAttackChain": "查看攻击链",
|
||
"selectRole": "选择角色",
|
||
"defaultRole": "默认",
|
||
"inputPlaceholder": "输入测试目标或命令... (输入 @ 选择工具 | Shift+Enter 换行,Enter 发送)",
|
||
"selectFile": "选择文件",
|
||
"uploadFile": "上传文件(可多选或拖拽到此处)",
|
||
"readingAttachmentsDetail": "读取附件 {{current}}/{{total}} · {{name}} · {{percent}}%",
|
||
"uploadingAttachmentsDetail": "上传附件 · {{done}}/{{total}} 已完成 · 总进度 {{percent}}%",
|
||
"waitingAttachmentsUpload": "正在等待附件上传完成…",
|
||
"attachmentsUploadIncomplete": "部分附件未上传成功,请移除失败项或重新选择文件后再发送。",
|
||
"attachmentUploading": "上传中…",
|
||
"attachmentUploadFailed": "失败",
|
||
"attachmentUploadAlert": "上传失败:{{name}}",
|
||
"send": "发送",
|
||
"searchInGroup": "搜索分组中的对话...",
|
||
"loadingTools": "正在加载工具...",
|
||
"noMatchTools": "没有匹配的工具",
|
||
"penetrationTestDetail": "渗透测试详情",
|
||
"expandDetail": "展开详情",
|
||
"noProcessDetail": "暂无过程详情(可能执行过快或未触发详细事件)",
|
||
"copyMessageTitle": "复制消息内容",
|
||
"deleteTurnTitle": "删除本轮对话",
|
||
"deleteTurnConfirm": "确定删除本轮对话?将同时删除该轮用户消息与助手回复,且无法恢复;下次模型回复将仅基于剩余消息(已保存的上下文快照会清空并按剩余内容重建)。",
|
||
"deleteTurnFailed": "删除本轮失败",
|
||
"emptyGroupConversations": "该分组暂无对话",
|
||
"noMatchingConversationsInGroup": "未找到匹配的对话",
|
||
"noHistoryConversations": "暂无历史对话",
|
||
"renameGroupPrompt": "请输入新名称:",
|
||
"deleteGroupConfirm": "确定要删除此分组吗?分组中的对话不会被删除,但会从分组中移除。",
|
||
"deleteConversationConfirm": "确定要删除此对话吗?",
|
||
"renameFailed": "重命名失败",
|
||
"downloadConversationFailed": "下载对话失败",
|
||
"viewAttackChainSelectConv": "请选择一个对话以查看攻击链",
|
||
"viewAttackChainCurrentConv": "查看当前对话的攻击链",
|
||
"executeFailed": "执行失败",
|
||
"callOpenAIFailed": "调用OpenAI失败",
|
||
"systemReadyMessage": "系统已就绪。请输入您的测试需求,系统将自动执行相应的安全测试。",
|
||
"addNewGroup": "+ 新增分组",
|
||
"callNumber": "调用 #{{n}}",
|
||
"iterationRound": "第 {{n}} 轮迭代",
|
||
"einoOrchestratorRound": "主代理 · 第 {{n}} 轮",
|
||
"einoPlanExecuteRound": "Plan-Execute · 第 {{n}} 轮 · {{phase}}",
|
||
"planExecuteStreamPlanner": "规划输出",
|
||
"planExecuteStreamExecutor": "执行输出",
|
||
"planExecuteStreamReplanning": "重规划输出",
|
||
"planExecuteStreamPhase": "阶段输出",
|
||
"einoSubAgentStep": "子代理 {{agent}} · 第 {{n}} 步",
|
||
"aiThinking": "AI思考",
|
||
"planning": "规划中",
|
||
"toolCallsDetected": "检测到 {{count}} 个工具调用",
|
||
"callTool": "调用工具: {{name}} ({{index}}/{{total}})",
|
||
"toolExecComplete": "工具 {{name}} 执行完成",
|
||
"toolExecFailed": "工具 {{name}} 执行失败",
|
||
"knowledgeRetrieval": "知识检索",
|
||
"knowledgeRetrievalTag": "知识检索",
|
||
"error": "错误",
|
||
"streamNetworkErrorHint": "连接已中断({{detail}})。长时间任务可能仍在后端执行,请查看顶部「运行中」任务或稍后刷新本对话。",
|
||
"taskCancelled": "任务已取消",
|
||
"unknownTool": "未知工具",
|
||
"einoAgentReplyTitle": "子代理回复",
|
||
"einoStreamErrorTitle": "⚠️ Eino 流式中断({{agent}})",
|
||
"einoStreamErrorMessage": "流式读取异常,系统将按策略重试或结束。",
|
||
"iterationLimitReachedTitle": "⛔ 达到迭代上限",
|
||
"iterationLimitReachedMessage": "已达到最大迭代次数,任务已停止继续自动迭代。",
|
||
"einoPendingOrphanedTitle": "🧹 工具调用收尾补偿",
|
||
"einoPendingOrphanedMessage": "检测到 {{count}} 个未闭合工具调用,已自动标记为失败并收尾。",
|
||
"noDescription": "暂无描述",
|
||
"noResponseData": "暂无响应数据",
|
||
"loading": "加载中...",
|
||
"loadFailed": "加载失败: {{message}}",
|
||
"noAttackChainData": "暂无攻击链数据",
|
||
"copyFailedManual": "复制失败,请手动选择内容复制",
|
||
"searching": "搜索中...",
|
||
"loadFailedRetry": "加载失败,请重试",
|
||
"dataFormatError": "数据格式错误",
|
||
"progressInProgress": "渗透测试进行中...",
|
||
"executionFailed": "执行失败",
|
||
"penetrationTestComplete": "渗透测试完成",
|
||
"yesterday": "昨天",
|
||
"historyGroupToday": "今天",
|
||
"historyGroupLast7Days": "过去七天",
|
||
"historyGroupEarlier": "更早",
|
||
"agentModeSelectAria": "选择对话执行模式",
|
||
"agentModePanelTitle": "对话模式",
|
||
"agentModeReactNative": "原生 ReAct 模式",
|
||
"agentModeReactNativeHint": "经典单代理 ReAct 与 MCP 工具",
|
||
"agentModeEinoSingle": "Eino 单代理(ADK)",
|
||
"agentModeEinoSingleHint": "Eino ChatModelAgent + Runner,MCP 工具(/api/eino-agent)",
|
||
"agentModeDeep": "Deep(DeepAgent)",
|
||
"agentModeDeepHint": "Eino DeepAgent,task 调度子代理",
|
||
"agentModePlanExecuteLabel": "Plan-Execute",
|
||
"agentModePlanExecuteHint": "规划 → 执行 → 重规划(单执行器带工具)",
|
||
"agentModeSupervisorLabel": "Supervisor",
|
||
"agentModeSupervisorHint": "监督者协调,transfer 委派子代理",
|
||
"agentModeSingle": "单代理",
|
||
"agentModeMulti": "多代理",
|
||
"agentModeSingleHint": "单模型 ReAct 循环,适合常规对话与工具调用",
|
||
"agentModeMultiHint": "Eino 预置编排(deep / plan_execute / supervisor),适合复杂任务",
|
||
"agentModeOrchPlanExecute": "Plan-Exec",
|
||
"agentModeOrchSupervisor": "Supervisor",
|
||
"hitlTitle": "人机协同",
|
||
"hitlCardSubtitle": "审批与白名单",
|
||
"hitlReviewer": "Review",
|
||
"hitlConfigTitle": "协同模式配置",
|
||
"hitlModeLabel": "模式",
|
||
"hitlModeOff": "关闭",
|
||
"hitlModeApproval": "审批模式",
|
||
"hitlModeReviewEdit": "审查编辑",
|
||
"hitlSensitiveTools": "敏感工具(逗号分隔)",
|
||
"hitlWhitelistTools": "白名单工具(免审批,逗号分隔)",
|
||
"hitlWhitelistPlaceholder": "例:read_file, grep 或每行一个工具名(与 config 全局白名单合并)",
|
||
"hitlWhitelistHint": "每行一个或逗号分隔;与 config 中全局白名单合并展示。",
|
||
"hitlApply": "应用",
|
||
"hitlApplyOkSync": "人机协同配置已保存并同步到服务器。",
|
||
"hitlApplyOkWhitelistYaml": "免审批工具已合并进 config.yaml 并生效。协同模式、超时等仍须选中会话后再点「应用」才会写入服务器。",
|
||
"hitlApplyOkLocal": "已保存到本浏览器。",
|
||
"hitlApplyFail": "同步到服务器失败",
|
||
"hitlStatusOff": "人机协同:关闭"
|
||
},
|
||
"hitl": {
|
||
"pageTitle": "人机协同审批",
|
||
"pendingTitle": "待处理审批"
|
||
},
|
||
"progress": {
|
||
"callingAI": "正在调用AI模型...",
|
||
"callingTool": "正在调用工具: {{name}}",
|
||
"lastIterSummary": "最后一次迭代:正在生成总结和下一步计划...",
|
||
"summaryDone": "总结生成完成",
|
||
"generatingFinalReply": "正在生成最终回复...",
|
||
"maxIterSummary": "达到最大迭代次数,正在生成总结...",
|
||
"analyzingRequestShort": "正在分析您的请求...",
|
||
"analyzingRequestPlanning": "开始分析请求并制定测试策略",
|
||
"startingEinoDeepAgent": "正在启动 Eino 多代理(DeepAgent)...",
|
||
"startingEinoMultiAgent": "正在启动 Eino 多代理...",
|
||
"einoAgent": "Eino 代理:{{name}}",
|
||
"peAgentPlanner": "规划器",
|
||
"peAgentExecutor": "执行器",
|
||
"peAgentReplanning": "重规划"
|
||
},
|
||
"timeline": {
|
||
"params": "参数:",
|
||
"executionResult": "执行结果:",
|
||
"executionId": "执行ID:",
|
||
"noResult": "无结果",
|
||
"running": "执行中...",
|
||
"completed": "已完成",
|
||
"execFailed": "执行失败"
|
||
},
|
||
"tasks": {
|
||
"title": "任务管理",
|
||
"stopTask": "停止任务",
|
||
"collapseDetail": "收起详情",
|
||
"newTask": "新建任务",
|
||
"autoRefresh": "自动刷新",
|
||
"historyHint": "提示:有已完成的任务历史,请勾选\"显示历史记录\"查看",
|
||
"statusRunning": "执行中",
|
||
"statusCancelling": "取消中",
|
||
"statusFailed": "执行失败",
|
||
"statusTimeout": "执行超时",
|
||
"statusCancelled": "已取消",
|
||
"statusCompleted": "已完成",
|
||
"historyBadge": "历史记录",
|
||
"duration": "执行时长",
|
||
"completedAt": "完成时间",
|
||
"startedAt": "开始时间",
|
||
"clickToCopy": "点击复制",
|
||
"unnamedTask": "未命名任务",
|
||
"unknown": "未知",
|
||
"unknownTime": "未知时间",
|
||
"clearHistoryConfirm": "确定要清空所有任务历史记录吗?",
|
||
"cancelTaskFailed": "取消任务失败",
|
||
"cancelFailed": "取消失败",
|
||
"taskInfoNotSynced": "任务信息尚未同步,请稍后再试。",
|
||
"loadActiveTasksFailed": "获取活跃任务失败",
|
||
"cannotGetTaskStatus": "无法获取任务状态",
|
||
"copiedToast": "已复制!",
|
||
"cancelling": "取消中...",
|
||
"enterTaskPrompt": "请输入至少一个任务",
|
||
"noValidTask": "没有有效的任务",
|
||
"createBatchQueueFailed": "创建批量任务队列失败",
|
||
"noBatchQueues": "当前没有批量任务队列",
|
||
"recentCompletedTasks": "最近完成的任务(最近24小时)",
|
||
"clearHistory": "清空历史",
|
||
"cancelTask": "取消任务",
|
||
"viewConversation": "查看对话",
|
||
"retryTask": "重试",
|
||
"conversationIdLabel": "对话ID",
|
||
"statusPending": "待执行",
|
||
"statusPaused": "已暂停",
|
||
"statusCronCycleIdle": "本轮已完成 · 定时循环中",
|
||
"statusCronRunning": "执行中 · 定时队列",
|
||
"cronNextRunLine": "下次执行:{{time}}",
|
||
"cronRoundDoneProgressHint": "定时队列:子任务已跑完,到点将自动下一轮",
|
||
"cronRunningProgressHint": "本轮执行中;下一整轮仍按 Cron 与「下次执行时间」排程",
|
||
"cronPendingScheduled": "Cron 已排程 · 下次 {{time}}",
|
||
"cronPendingProgressNote": "到点将自动开始;也可手动点「开始执行」立即跑一轮",
|
||
"cronRecurringCallout": "Cron 队列会在「下次执行时间」自动开始新一轮;关闭「允许 Cron 自动调度」即停止循环。",
|
||
"confirmCancelTasks": "确定要取消 {{n}} 个任务吗?",
|
||
"batchCancelResultPartial": "批量取消完成:成功 {{success}} 个,失败 {{fail}} 个",
|
||
"batchCancelResultSuccess": "成功取消 {{n}} 个任务",
|
||
"taskCount": "共 {{count}} 个任务",
|
||
"queueIdLabel": "队列ID",
|
||
"createdTimeLabel": "创建时间",
|
||
"totalLabel": "总计",
|
||
"pendingLabel": "待执行",
|
||
"runningLabel": "执行中",
|
||
"completedLabel": "已完成",
|
||
"failedLabel": "失败",
|
||
"cancelledLabel": "已取消",
|
||
"loadingTasks": "加载中...",
|
||
"loadFailedRetry": "加载失败",
|
||
"loadTaskListFailed": "获取任务列表失败",
|
||
"getQueueDetailFailed": "获取队列详情失败",
|
||
"startBatchQueueFailed": "启动批量任务失败",
|
||
"pauseQueueFailed": "暂停批量任务失败",
|
||
"pauseQueueConfirm": "确定要暂停这个批量任务队列吗?当前正在执行的任务将被停止,后续任务将保留待执行状态。",
|
||
"deleteQueueConfirm": "确定要删除这个批量任务队列吗?此操作不可恢复。",
|
||
"deleteQueueFailed": "删除批量任务队列失败",
|
||
"rerunQueueConfirm": "确定要重跑一轮吗?所有子任务将被重置为待执行状态并重新开始执行。",
|
||
"rerunQueueFailed": "重跑批量任务失败",
|
||
"batchQueueTitle": "批量任务队列",
|
||
"batchQueueUntitled": "未命名队列",
|
||
"resumeExecute": "继续执行",
|
||
"taskIncomplete": "任务信息不完整",
|
||
"cannotGetTaskMessageInput": "无法获取任务消息输入框",
|
||
"taskMessageRequired": "任务消息不能为空",
|
||
"saveTaskFailed": "保存任务失败",
|
||
"queueInfoMissing": "队列信息不存在",
|
||
"addTaskFailed": "添加任务失败",
|
||
"confirmDeleteTask": "确定要删除这个任务吗?\n\n任务内容: {{message}}\n\n此操作不可恢复。",
|
||
"deleteTaskFailed": "删除任务失败",
|
||
"paginationShow": "显示 {{start}}-{{end}} / 共 {{total}} 条记录",
|
||
"paginationPerPage": "每页显示",
|
||
"paginationFirst": "首页",
|
||
"paginationPrev": "上一页",
|
||
"paginationNext": "下一页",
|
||
"paginationLast": "末页",
|
||
"paginationPage": "第 {{current}} / {{total}} 页",
|
||
"deleteQueue": "删除队列",
|
||
"retry": "重试",
|
||
"noMatchingTasks": "当前没有符合条件的任务",
|
||
"updateTaskFailed": "更新任务失败",
|
||
"durationSeconds": "秒",
|
||
"durationMinutes": "分",
|
||
"durationHours": "小时"
|
||
},
|
||
"infoCollect": {
|
||
"enterFofaQuery": "请输入 FOFA 查询语法",
|
||
"querying": "查询中...",
|
||
"queryFailed": "查询失败",
|
||
"enterNaturalLanguage": "请输入自然语言描述",
|
||
"cancelParse": "取消解析",
|
||
"clickToCancelParse": "点击取消 AI 解析",
|
||
"parseToFofa": "将自然语言解析为 FOFA 查询语法",
|
||
"parseResultEmpty": "解析结果为空:请在弹窗中补充/修改 FOFA 查询语法",
|
||
"queryPlaceholder": "例如:app=\"Apache\" && country=\"CN\"",
|
||
"selectAll": "全选/全不选",
|
||
"selectRow": "选择该行",
|
||
"copyTarget": "复制目标",
|
||
"sendToChat": "发送到对话(可编辑;Ctrl/⌘+点击可直接发送)",
|
||
"noTargetToCopy": "没有可复制的目标",
|
||
"targetCopied": "已复制目标",
|
||
"manualCopyHint": "复制失败,请手动复制:",
|
||
"cannotInferTarget": "无法从该行推断扫描目标(建议在 fields 中包含 host/ip/port/domain)",
|
||
"noSendMessage": "未找到 sendMessage(),请刷新页面后重试",
|
||
"filledToInput": "已填入对话输入框,可编辑后发送",
|
||
"noExportResult": "暂无可导出的结果",
|
||
"xlsxNotLoaded": "未加载 XLSX 库,请刷新页面后重试",
|
||
"noResults": "暂无结果",
|
||
"selectRowsFirst": "请先勾选需要扫描的行",
|
||
"noScanTarget": "未能从所选行推断任何可扫描目标(建议 fields 中包含 host/ip/port/domain)",
|
||
"batchScanFailed": "批量扫描失败",
|
||
"batchQueueCreated": "已创建批量扫描队列",
|
||
"field": "字段",
|
||
"parsePending": "AI 解析中...",
|
||
"parsePendingClickCancel": "AI 解析中...(点击按钮可取消)",
|
||
"parseSlow": "AI 解析耗时较长,仍在处理中…",
|
||
"parseDone": "AI 解析完成",
|
||
"parseCancelled": "已取消 AI 解析",
|
||
"parseFailed": "AI 解析失败:",
|
||
"parseResultTitle": "AI 解析结果",
|
||
"naturalLanguageLabel": "自然语言",
|
||
"fofaQueryEditable": "FOFA 查询语法(可编辑)",
|
||
"confirmBeforeQuery": "请人工确认语法与范围无误后再执行查询。",
|
||
"reminder": "提醒",
|
||
"explanation": "解析说明",
|
||
"actions": "操作",
|
||
"batchScanTitle": "FOFA 批量扫描",
|
||
"queueCreatedSkipped": "已创建队列(跳过 {{n}} 条无目标行)",
|
||
"createQueueFailed": "创建批量队列失败",
|
||
"loading": "加载中...",
|
||
"none": "无",
|
||
"truncated": "已截断",
|
||
"resultsMeta": "共 {{total}} 条 · 本页 {{count}} 条 · page={{page}} · size={{size}}",
|
||
"parseModalCancel": "取消",
|
||
"parseModalApply": "填入查询框",
|
||
"parseModalApplyRun": "填入并查询"
|
||
},
|
||
"vulnerability": {
|
||
"title": "漏洞管理",
|
||
"addVuln": "添加漏洞",
|
||
"editVuln": "编辑漏洞",
|
||
"loadFailed": "加载漏洞失败",
|
||
"deleteConfirm": "确定要删除此漏洞吗?"
|
||
},
|
||
"webshell": {
|
||
"title": "WebShell 管理",
|
||
"addConnection": "添加连接",
|
||
"connections": "连接列表",
|
||
"noConnections": "暂无连接,请点击「添加连接」",
|
||
"selectOrAdd": "请从左侧选择连接,或添加新的 WebShell 连接",
|
||
"url": "Shell 地址",
|
||
"urlPlaceholder": "http(s)://target.com/shell.php",
|
||
"password": "连接密码/密钥",
|
||
"passwordPlaceholder": "如冰蝎/蚁剑的连接密码",
|
||
"method": "请求方式",
|
||
"methodPost": "POST",
|
||
"methodGet": "GET",
|
||
"type": "Shell 类型",
|
||
"typePhp": "PHP",
|
||
"typeAsp": "ASP",
|
||
"typeAspx": "ASPX",
|
||
"typeJsp": "JSP",
|
||
"typeCustom": "自定义",
|
||
"cmdParam": "命令参数名",
|
||
"cmdParamPlaceholder": "不填默认为 cmd,如填 xxx 则请求为 xxx=命令",
|
||
"remark": "备注",
|
||
"remarkPlaceholder": "便于识别的备注名",
|
||
"deleteConfirm": "确定要删除该连接吗?",
|
||
"editConnection": "编辑",
|
||
"editConnectionTitle": "编辑连接",
|
||
"tabTerminal": "虚拟终端",
|
||
"tabFileManager": "文件管理",
|
||
"tabAiAssistant": "AI 助手",
|
||
"tabDbManager": "数据库管理",
|
||
"tabMemo": "备忘录",
|
||
"dbType": "数据库类型",
|
||
"dbHost": "主机",
|
||
"dbPort": "端口",
|
||
"dbUsername": "用户名",
|
||
"dbPassword": "密码",
|
||
"dbName": "数据库名",
|
||
"dbSqlitePath": "SQLite 文件路径",
|
||
"dbSqlPlaceholder": "输入 SQL,例如:SELECT version();",
|
||
"dbRunSql": "执行 SQL",
|
||
"dbTest": "测试连接",
|
||
"dbOutput": "执行输出",
|
||
"dbNoConn": "请先选择 WebShell 连接",
|
||
"dbSqlRequired": "请输入 SQL",
|
||
"dbRunning": "数据库命令执行中,请稍候",
|
||
"dbCliHint": "如果提示命令不存在,请先在目标主机安装对应客户端(mysql/psql/sqlite3/sqlcmd)",
|
||
"dbExecFailed": "数据库执行失败",
|
||
"dbSchema": "数据库结构",
|
||
"dbLoadSchema": "加载结构",
|
||
"dbNoSchema": "暂无数据库结构,请先加载",
|
||
"dbSelectTableHint": "点击表名可展开列信息并生成查询 SQL",
|
||
"dbNoColumns": "暂无列信息",
|
||
"dbResultTable": "结果表格",
|
||
"dbClearSql": "清空 SQL",
|
||
"dbTemplateSql": "示例 SQL",
|
||
"dbRows": "行",
|
||
"dbColumns": "列",
|
||
"dbSchemaFailed": "加载数据库结构失败",
|
||
"dbSchemaLoaded": "结构加载完成",
|
||
"dbAddProfile": "新增连接",
|
||
"dbExecSuccess": "SQL 执行成功",
|
||
"dbNoOutput": "执行完成(无输出)",
|
||
"dbRenameProfile": "重命名",
|
||
"dbDeleteProfile": "删除连接",
|
||
"dbDeleteProfileConfirm": "确定删除该数据库连接配置吗?",
|
||
"dbProfileNamePrompt": "请输入连接名称",
|
||
"dbProfileName": "连接名称",
|
||
"dbProfiles": "数据库连接",
|
||
"aiSystemReadyMessage": "系统已就绪。请输入您的测试需求,系统将自动执行相应的安全测试。",
|
||
"aiNewConversation": "新对话",
|
||
"aiPreviousConversation": "之前的对话",
|
||
"aiDeleteConversation": "删除对话",
|
||
"aiDeleteConversationConfirm": "确定删除当前对话记录?",
|
||
"aiPlaceholder": "例如:列出当前目录下的文件",
|
||
"aiSend": "发送",
|
||
"aiMemo": "备忘录",
|
||
"aiMemoPlaceholder": "记录关键命令、测试思路、复现步骤...",
|
||
"aiMemoClear": "清空",
|
||
"aiMemoSaving": "保存中...",
|
||
"aiMemoSaved": "已保存到本地",
|
||
"quickCommands": "快捷命令",
|
||
"downloadFile": "下载",
|
||
"terminalWelcome": "WebShell 虚拟终端 — 输入命令后按回车执行(Ctrl+L 清屏)",
|
||
"filePath": "当前路径",
|
||
"listDir": "列出目录",
|
||
"readFile": "读取",
|
||
"editFile": "编辑",
|
||
"deleteFile": "删除",
|
||
"saveFile": "保存",
|
||
"cancelEdit": "取消",
|
||
"parentDir": "上级目录",
|
||
"execError": "执行失败",
|
||
"testConnectivity": "测试连通性",
|
||
"testSuccess": "连通性正常,Shell 可访问",
|
||
"testFailed": "连通性测试失败",
|
||
"testNoExpectedOutput": "Shell 返回了响应但未得到预期输出,请检查连接密码与命令参数名",
|
||
"clearScreen": "清屏",
|
||
"copyTerminalLog": "复制日志",
|
||
"terminalIdle": "空闲",
|
||
"terminalRunning": "执行中",
|
||
"terminalCopyOk": "日志已复制",
|
||
"terminalCopyFail": "复制失败",
|
||
"terminalNewWindow": "新终端",
|
||
"terminalWindowPrefix": "终端",
|
||
"running": "执行中…",
|
||
"waitFinish": "请等待当前命令执行完成",
|
||
"newDir": "新建目录",
|
||
"rename": "重命名",
|
||
"upload": "上传",
|
||
"newFile": "新建文件",
|
||
"filterPlaceholder": "过滤文件名",
|
||
"batchDelete": "批量删除",
|
||
"batchDownload": "批量下载",
|
||
"refresh": "刷新",
|
||
"selectAll": "全选",
|
||
"searchPlaceholder": "搜索连接...",
|
||
"noMatchConnections": "暂无匹配连接",
|
||
"breadcrumbHome": "根",
|
||
"back": "返回",
|
||
"moreActions": "更多操作",
|
||
"batchProbe": "一键批量探活",
|
||
"probeRunning": "探活中",
|
||
"probeOnline": "在线",
|
||
"probeOffline": "离线",
|
||
"probeNoConnections": "暂无可探活连接",
|
||
"colModifiedAt": "修改时间",
|
||
"colPerms": "权限",
|
||
"colOwner": "所有者",
|
||
"colGroup": "用户组",
|
||
"colType": "类型"
|
||
},
|
||
"mcp": {
|
||
"monitorTitle": "MCP 状态监控",
|
||
"execStats": "执行统计",
|
||
"latestExecutions": "最新执行记录",
|
||
"toolSearch": "工具搜索",
|
||
"toolSearchPlaceholder": "输入工具名称...",
|
||
"statusFilter": "状态筛选",
|
||
"filterAll": "全部",
|
||
"filterEnabled": "已启用",
|
||
"filterDisabled": "已停用",
|
||
"selectedCount": "已选择 {{count}} 项",
|
||
"selectAll": "全选",
|
||
"deselectAll": "全不选",
|
||
"deleteSelected": "批量删除",
|
||
"deleteExecConfirm": "确定要删除此执行记录吗?",
|
||
"batchDeleteFailed": "批量删除执行记录失败",
|
||
"managementTitle": "MCP 管理",
|
||
"addExternal": "添加外部MCP",
|
||
"toolConfig": "MCP 工具配置",
|
||
"saveToolConfig": "保存工具配置",
|
||
"externalConfig": "外部 MCP 配置",
|
||
"loadingTools": "正在加载工具列表...",
|
||
"loadToolsTimeout": "加载工具列表超时,可能是外部MCP连接较慢。请点击\"刷新\"按钮重试,或检查外部MCP连接状态。",
|
||
"loadToolsFailed": "加载工具列表失败",
|
||
"noTools": "暂无工具",
|
||
"externalBadge": "外部",
|
||
"externalFrom": "外部 ({{name}})",
|
||
"externalToolFrom": "外部MCP工具 - 来源:{{name}}",
|
||
"noDescription": "无描述",
|
||
"paginationInfo": "显示 {{start}}-{{end}} / 共 {{total}} 个工具",
|
||
"perPage": "每页:",
|
||
"firstPage": "首页",
|
||
"prevPage": "上一页",
|
||
"nextPage": "下一页",
|
||
"lastPage": "末页",
|
||
"pageInfo": "第 {{page}} / {{total}} 页",
|
||
"currentPageEnabled": "当前页已启用",
|
||
"totalEnabled": "总计已启用",
|
||
"toolsConfigSaved": "工具配置已成功保存!",
|
||
"saveToolsConfigFailed": "保存工具配置失败",
|
||
"getConfigFailed": "获取配置失败",
|
||
"noExternalMCP": "暂无外部MCP配置",
|
||
"clickToAddExternal": "点击\"添加外部MCP\"按钮开始配置",
|
||
"connected": "已连接",
|
||
"connecting": "连接中...",
|
||
"connectionFailed": "连接失败",
|
||
"disabled": "已禁用",
|
||
"disconnected": "未连接",
|
||
"stopConnection": "停止连接",
|
||
"startConnection": "启动连接",
|
||
"stop": "停止",
|
||
"start": "启动",
|
||
"editConfig": "编辑配置",
|
||
"deleteConfig": "删除配置",
|
||
"transportMode": "传输模式",
|
||
"toolCount": "工具数量",
|
||
"description": "描述",
|
||
"timeout": "超时时间",
|
||
"command": "命令",
|
||
"addExternalMCP": "添加外部MCP",
|
||
"editExternalMCP": "编辑外部MCP",
|
||
"jsonEmpty": "JSON不能为空",
|
||
"jsonError": "JSON格式错误",
|
||
"configMustBeObject": "配置错误: 必须是JSON对象格式,key为配置名称,value为配置内容",
|
||
"configNeedOne": "配置错误: 至少需要一个配置项",
|
||
"configNameEmpty": "配置错误: 配置名称不能为空",
|
||
"configMustBeObj": "配置错误: \"{{name}}\" 的配置必须是对象",
|
||
"configNeedCommand": "配置错误: \"{{name}}\" 需要指定command(stdio模式)或url(http/sse模式)",
|
||
"configStdioNeedCommand": "配置错误: \"{{name}}\" stdio模式需要command字段",
|
||
"configHttpNeedUrl": "配置错误: \"{{name}}\" http模式需要url字段",
|
||
"configSseNeedUrl": "配置错误: \"{{name}}\" sse模式需要url字段",
|
||
"configEditMustContainName": "配置错误: 编辑模式下,JSON必须包含配置名称 \"{{name}}\"",
|
||
"saveSuccess": "保存成功",
|
||
"deleteSuccess": "删除成功",
|
||
"deleteExternalConfirm": "确定要删除外部MCP \"{{name}}\" 吗?",
|
||
"operationFailed": "操作失败",
|
||
"connectionFailedCheck": "连接失败,请检查配置和网络连接",
|
||
"connectionTimeout": "连接超时,请检查配置和网络连接",
|
||
"totalCount": "总数",
|
||
"enabledCount": "已启用",
|
||
"disabledCount": "已停用",
|
||
"connectedCount": "已连接",
|
||
"toolsCountValue": "🔧 {{count}} 个工具",
|
||
"connectionErrorLabel": "连接错误:",
|
||
"secondsUnit": "秒",
|
||
"urlLabel": "URL",
|
||
"loadExternalMCPFailed": "加载失败"
|
||
},
|
||
"settings": {
|
||
"title": "系统设置",
|
||
"nav": {
|
||
"basic": "基本设置",
|
||
"knowledge": "知识库",
|
||
"robots": "机器人设置",
|
||
"terminal": "终端",
|
||
"security": "安全设置",
|
||
"infocollect": "信息收集"
|
||
},
|
||
"infocollect": {
|
||
"title": "信息收集"
|
||
},
|
||
"knowledge": {
|
||
"title": "知识库设置"
|
||
},
|
||
"robots": {
|
||
"title": "机器人设置",
|
||
"description": "配置企业微信、钉钉、飞书等机器人,在手机端直接与 CyberStrikeAI 对话,无需在服务器上打开网页。",
|
||
"wecom": {
|
||
"title": "企业微信",
|
||
"enabled": "启用企业微信机器人",
|
||
"token": "Token",
|
||
"tokenPlaceholder": "Token",
|
||
"encodingAesKey": "EncodingAESKey",
|
||
"encodingAesKeyPlaceholder": "EncodingAESKey(明文模式可留空)",
|
||
"corpId": "CorpID",
|
||
"corpIdPlaceholder": "企业 ID",
|
||
"secret": "Secret",
|
||
"secretPlaceholder": "应用 Secret",
|
||
"agentId": "AgentID",
|
||
"agentIdPlaceholder": "应用 AgentId"
|
||
},
|
||
"dingtalk": {
|
||
"title": "钉钉",
|
||
"enabled": "启用钉钉机器人",
|
||
"clientIdLabel": "Client ID (AppKey)",
|
||
"clientIdPlaceholder": "钉钉应用 AppKey",
|
||
"clientSecretLabel": "Client Secret",
|
||
"clientSecretPlaceholder": "钉钉应用 Secret",
|
||
"streamHint": "需开启机器人能力并配置流式接入"
|
||
},
|
||
"lark": {
|
||
"title": "飞书 (Lark)",
|
||
"enabled": "启用飞书机器人",
|
||
"appIdLabel": "App ID",
|
||
"appIdPlaceholder": "飞书应用 App ID",
|
||
"appSecretLabel": "App Secret",
|
||
"appSecretPlaceholder": "飞书应用 App Secret",
|
||
"verifyTokenLabel": "Verify Token(可选)",
|
||
"verifyTokenPlaceholder": "事件订阅 Verification Token"
|
||
}
|
||
},
|
||
"apply": {
|
||
"button": "应用配置",
|
||
"loadFailed": "加载配置失败",
|
||
"fillRequired": "请填写所有必填字段(标记为 * 的字段)",
|
||
"applyFailed": "应用配置失败",
|
||
"applySuccess": "配置已成功应用!"
|
||
},
|
||
"security": {
|
||
"changePassword": "修改密码",
|
||
"fillPasswordHint": "请正确填写当前密码和新密码,新密码至少 8 位且需要两次输入一致。",
|
||
"changePasswordFailed": "修改密码失败",
|
||
"passwordUpdated": "密码已更新,请使用新密码重新登录。"
|
||
}
|
||
},
|
||
"auth": {
|
||
"sessionExpired": "认证已过期,请重新登录",
|
||
"unauthorized": "未授权访问",
|
||
"enterPassword": "请输入密码",
|
||
"loginFailedCheck": "登录失败,请检查密码",
|
||
"loginFailedRetry": "登录失败,请稍后重试",
|
||
"loggedOut": "已退出登录"
|
||
},
|
||
"knowledge": {
|
||
"title": "知识管理",
|
||
"retrievalLogs": "检索历史",
|
||
"totalItems": "总知识项",
|
||
"categories": "分类数",
|
||
"addKnowledge": "添加知识",
|
||
"rebuildIndex": "重建索引",
|
||
"rebuildIndexConfirm": "确定要重建索引吗?",
|
||
"deleteItemConfirm": "确定要删除这个知识项吗?",
|
||
"notEnabledTitle": "知识库功能未启用",
|
||
"notEnabledHint": "请前往系统设置启用知识检索功能",
|
||
"goToSettings": "前往设置"
|
||
},
|
||
"roles": {
|
||
"title": "角色管理",
|
||
"createRole": "创建角色",
|
||
"searchPlaceholder": "搜索角色...",
|
||
"deleteConfirm": "确定要删除角色...",
|
||
"loadFailed": "加载角色失败",
|
||
"noDescription": "暂无描述",
|
||
"defaultRoleDescription": "默认角色,不额外携带用户提示词,使用默认MCP",
|
||
"noMatchingRoles": "没有找到匹配的角色",
|
||
"noRoles": "暂无角色",
|
||
"enabled": "已启用",
|
||
"disabled": "已禁用",
|
||
"noDescriptionShort": "无描述"
|
||
},
|
||
"skills": {
|
||
"title": "Skills管理",
|
||
"monitorTitle": "Skills状态监控",
|
||
"createSkill": "创建Skill",
|
||
"callStats": "调用统计",
|
||
"addSkill": "添加Skill",
|
||
"editSkill": "编辑Skill",
|
||
"loadListFailed": "加载skills列表失败",
|
||
"noSkills": "暂无skills,点击\"创建Skill\"创建第一个skill",
|
||
"noMatch": "没有找到匹配的skills",
|
||
"searchFailed": "搜索失败",
|
||
"refreshed": "已刷新",
|
||
"loadDetailFailed": "加载skill详情失败",
|
||
"viewFailed": "查看skill失败",
|
||
"saving": "保存中...",
|
||
"saveFailed": "保存skill失败",
|
||
"deleteFailed": "删除skill失败",
|
||
"loadStatsFailed": "加载skills监控数据失败",
|
||
"clearStatsConfirm": "确定要清空所有Skills统计数据吗?此操作不可恢复。",
|
||
"statsCleared": "已清空所有Skills统计数据",
|
||
"clearStatsFailed": "清空统计数据失败",
|
||
"noDescription": "无描述",
|
||
"viewSkillTitle": "查看Skill: {{name}}",
|
||
"descriptionLabel": "描述:",
|
||
"pathLabel": "路径:",
|
||
"modTimeLabel": "修改时间:",
|
||
"contentLabel": "内容:",
|
||
"cardVersion": "v{{version}}",
|
||
"cardScripts": "{{count}} 个脚本",
|
||
"cardFiles": "{{count}} 个文件",
|
||
"versionLabel": "版本:",
|
||
"scriptsHeading": "脚本:",
|
||
"summaryHint": "(摘要 — 可加载完整正文)",
|
||
"loadFullBody": "加载完整正文",
|
||
"loadFullFailed": "加载完整正文失败",
|
||
"nameRequired": "skill名称不能为空",
|
||
"contentRequired": "skill内容不能为空",
|
||
"nameInvalid": "目录名须为小写字母、数字与连字符(与 Agent Skills 的 name 一致)",
|
||
"descriptionRequired": "描述不能为空(将写入 SKILL.md 的 front matter)",
|
||
"saveSuccess": "skill已更新",
|
||
"createdSuccess": "skill已创建",
|
||
"deleteConfirm": "确定要删除skill \"{{name}}\" 吗?此操作不可恢复。",
|
||
"deleteConfirmWithRoles": "确定要删除skill \"{{name}}\" 吗?\n\n⚠️ 该skill当前已被以下 {{count}} 个角色绑定:\n{{roles}}\n\n删除后,系统将自动从这些角色中移除该skill的绑定。\n\n此操作不可恢复,是否继续?",
|
||
"deleteSuccess": "skill已删除",
|
||
"deleteSuccessWithRoles": "skill已删除,已自动从 {{count}} 个角色中移除绑定:{{roles}}",
|
||
"loadFailedShort": "加载失败",
|
||
"totalSkillsCount": "总Skills数",
|
||
"totalCallsCount": "总调用次数",
|
||
"successfulCalls": "成功调用",
|
||
"failedCalls": "失败调用",
|
||
"successRate": "成功率",
|
||
"skillName": "Skill名称",
|
||
"totalCalls": "总调用",
|
||
"success": "成功",
|
||
"failure": "失败",
|
||
"lastCallTime": "最后调用时间",
|
||
"noCallRecords": "暂无Skills调用记录",
|
||
"loadStatsErrorShort": "无法加载统计信息",
|
||
"loadCallStatsError": "无法加载调用统计"
|
||
},
|
||
"apiDocs": {
|
||
"pageTitle": "API 文档 - CyberStrikeAI",
|
||
"title": "API 文档",
|
||
"subtitle": "CyberStrikeAI 平台 API 接口文档,支持在线测试",
|
||
"authTitle": "API 认证说明",
|
||
"authAllNeedToken": "所有 API 接口都需要 Token 认证。",
|
||
"authGetToken": "1. 获取 Token:",
|
||
"authGetTokenDesc": "在前端页面登录后,Token 会自动保存。您也可以通过以下方式获取:",
|
||
"authUseToken": "2. 使用 Token:",
|
||
"authUseTokenDesc": "在请求头中添加 Authorization 字段:",
|
||
"authTip": "💡 提示:本页面会自动使用您已登录的 Token,无需手动填写。",
|
||
"tokenDetected": "✓ 已检测到 Token - 您可以直接测试 API 接口",
|
||
"tokenNotDetected": "⚠ 未检测到 Token - 请先在前端页面登录,然后刷新此页面。测试接口时需要在请求头中添加 Authorization: Bearer token",
|
||
"sidebarGroupTitle": "API 分组",
|
||
"allApis": "全部接口",
|
||
"loading": "加载中...",
|
||
"loadingDesc": "正在加载 API 文档",
|
||
"errorLoginRequired": "需要登录才能查看API文档。请先在前端页面登录,然后刷新此页面。",
|
||
"errorLoadSpec": "加载API规范失败: ",
|
||
"errorLoadFailed": "加载API文档失败: ",
|
||
"errorSpecInvalid": "API规范格式错误",
|
||
"loadFailed": "加载失败",
|
||
"backToLogin": "返回首页登录",
|
||
"noApis": "暂无API",
|
||
"noEndpointsInGroup": "该分组下没有API端点",
|
||
"sectionDescription": "描述",
|
||
"viewDetailDesc": "查看详细说明",
|
||
"hideDetailDesc": "隐藏详细说明",
|
||
"noDescription": "无描述",
|
||
"sectionParams": "参数",
|
||
"paramName": "参数名",
|
||
"type": "类型",
|
||
"description": "描述",
|
||
"required": "必需",
|
||
"optional": "可选",
|
||
"sectionRequestBody": "请求体",
|
||
"example": "示例",
|
||
"exampleJson": "示例JSON:",
|
||
"sectionResponse": "响应",
|
||
"testSection": "测试接口",
|
||
"requestBodyJson": "请求体 (JSON)",
|
||
"queryParams": "查询参数:",
|
||
"sendRequest": "发送请求",
|
||
"copyCurl": "复制curl",
|
||
"clearResult": "清除结果",
|
||
"copyCurlTitle": "复制curl命令",
|
||
"clearResultTitle": "清除测试结果",
|
||
"sendingRequest": "发送请求中...",
|
||
"errorPathParamRequired": "路径参数 {{name}} 不能为空",
|
||
"errorQueryParamRequired": "查询参数 {{name}} 不能为空",
|
||
"errorTokenRequired": "未检测到 Token。请先在前端页面登录,然后刷新此页面。或者手动在请求头中添加 Authorization: Bearer your_token",
|
||
"errorJsonInvalid": "请求体JSON格式错误: ",
|
||
"requestFailed": "请求失败: ",
|
||
"copied": "已复制",
|
||
"curlCopied": "curl命令已复制到剪贴板!",
|
||
"copyFailedManual": "复制失败,请手动复制:\n\n",
|
||
"curlGenFailed": "生成curl命令失败: ",
|
||
"requestBodyPlaceholder": "请输入JSON格式的请求体",
|
||
"tags": {
|
||
"auth": "认证",
|
||
"conversationManagement": "对话管理",
|
||
"conversationInteraction": "对话交互",
|
||
"batchTasks": "批量任务",
|
||
"conversationGroups": "对话分组",
|
||
"vulnerabilityManagement": "漏洞管理",
|
||
"roleManagement": "角色管理",
|
||
"skillsManagement": "Skills管理",
|
||
"monitoring": "监控",
|
||
"configManagement": "配置管理",
|
||
"externalMCPManagement": "外部MCP管理",
|
||
"attackChain": "攻击链",
|
||
"knowledgeBase": "知识库",
|
||
"mcp": "MCP",
|
||
"fofaRecon": "FOFA信息收集",
|
||
"terminal": "终端",
|
||
"webshellManagement": "WebShell管理",
|
||
"chatUploads": "对话附件",
|
||
"robotIntegration": "机器人集成",
|
||
"markdownAgents": "多代理Markdown"
|
||
},
|
||
"summary": {
|
||
"login": "用户登录",
|
||
"logout": "用户登出",
|
||
"changePassword": "修改密码",
|
||
"validateToken": "验证Token",
|
||
"createConversation": "创建对话",
|
||
"listConversations": "列出对话",
|
||
"getConversationDetail": "查看对话详情",
|
||
"updateConversation": "更新对话",
|
||
"deleteConversation": "删除对话",
|
||
"getConversationResult": "获取对话结果",
|
||
"sendMessageNonStream": "发送消息并获取AI回复(非流式)",
|
||
"sendMessageStream": "发送消息并获取AI回复(流式)",
|
||
"cancelTask": "取消任务",
|
||
"listRunningTasks": "列出运行中的任务",
|
||
"listCompletedTasks": "列出已完成的任务",
|
||
"createBatchQueue": "创建批量任务队列",
|
||
"listBatchQueues": "列出批量任务队列",
|
||
"getBatchQueue": "获取批量任务队列",
|
||
"deleteBatchQueue": "删除批量任务队列",
|
||
"startBatchQueue": "启动批量任务队列",
|
||
"pauseBatchQueue": "暂停批量任务队列",
|
||
"addTaskToQueue": "添加任务到队列",
|
||
"sqlInjectionScan": "SQL注入扫描",
|
||
"portScan": "端口扫描",
|
||
"updateBatchTask": "更新批量任务",
|
||
"deleteBatchTask": "删除批量任务",
|
||
"createGroup": "创建分组",
|
||
"listGroups": "列出分组",
|
||
"getGroup": "获取分组",
|
||
"updateGroup": "更新分组",
|
||
"deleteGroup": "删除分组",
|
||
"getGroupConversations": "获取分组中的对话",
|
||
"addConversationToGroup": "添加对话到分组",
|
||
"removeConversationFromGroup": "从分组移除对话",
|
||
"listVulnerabilities": "列出漏洞",
|
||
"createVulnerability": "创建漏洞",
|
||
"getVulnerabilityStats": "获取漏洞统计",
|
||
"getVulnerability": "获取漏洞",
|
||
"updateVulnerability": "更新漏洞",
|
||
"deleteVulnerability": "删除漏洞",
|
||
"listRoles": "列出角色",
|
||
"createRole": "创建角色",
|
||
"getRole": "获取角色",
|
||
"updateRole": "更新角色",
|
||
"deleteRole": "删除角色",
|
||
"getAvailableSkills": "获取可用Skills列表",
|
||
"listSkills": "列出Skills",
|
||
"createSkill": "创建Skill",
|
||
"getSkillStats": "获取Skill统计",
|
||
"clearSkillStats": "清空Skill统计",
|
||
"getSkill": "获取Skill",
|
||
"updateSkill": "更新Skill",
|
||
"deleteSkill": "删除Skill",
|
||
"getBoundRoles": "获取绑定角色",
|
||
"clearSkillStatsAlt": "清空Skill统计",
|
||
"getMonitorInfo": "获取监控信息",
|
||
"getExecutionRecords": "获取执行记录",
|
||
"deleteExecutionRecord": "删除执行记录",
|
||
"batchDeleteExecutionRecords": "批量删除执行记录",
|
||
"getStats": "获取统计信息",
|
||
"getConfig": "获取配置",
|
||
"updateConfig": "更新配置",
|
||
"getToolConfig": "获取工具配置",
|
||
"applyConfig": "应用配置",
|
||
"listExternalMCP": "列出外部MCP",
|
||
"getExternalMCPStats": "获取外部MCP统计",
|
||
"getExternalMCP": "获取外部MCP",
|
||
"addOrUpdateExternalMCP": "添加或更新外部MCP",
|
||
"stdioModeConfig": "stdio模式配置",
|
||
"sseModeConfig": "SSE模式配置",
|
||
"deleteExternalMCP": "删除外部MCP",
|
||
"startExternalMCP": "启动外部MCP",
|
||
"stopExternalMCP": "停止外部MCP",
|
||
"getAttackChain": "获取攻击链",
|
||
"regenerateAttackChain": "重新生成攻击链",
|
||
"pinConversation": "设置对话置顶",
|
||
"pinGroup": "设置分组置顶",
|
||
"pinGroupConversation": "设置分组中对话的置顶",
|
||
"getCategories": "获取分类",
|
||
"listKnowledgeItems": "列出知识项",
|
||
"createKnowledgeItem": "创建知识项",
|
||
"getKnowledgeItem": "获取知识项",
|
||
"updateKnowledgeItem": "更新知识项",
|
||
"deleteKnowledgeItem": "删除知识项",
|
||
"getIndexStatus": "获取索引状态",
|
||
"rebuildIndex": "重建索引",
|
||
"scanKnowledgeBase": "扫描知识库",
|
||
"searchKnowledgeBase": "搜索知识库",
|
||
"basicSearch": "基础搜索",
|
||
"searchByRiskType": "按风险类型搜索",
|
||
"getRetrievalLogs": "获取检索日志",
|
||
"deleteRetrievalLog": "删除检索日志",
|
||
"mcpEndpoint": "MCP端点",
|
||
"listAllTools": "列出所有工具",
|
||
"invokeTool": "调用工具",
|
||
"initConnection": "初始化连接",
|
||
"successResponse": "成功响应",
|
||
"errorResponse": "错误响应",
|
||
"deleteConversationTurn": "删除对话轮次",
|
||
"getMessageProcessDetails": "获取消息过程详情",
|
||
"rerunBatchQueue": "重跑批量任务队列",
|
||
"updateBatchQueueMetadata": "修改队列元数据",
|
||
"updateBatchQueueSchedule": "修改队列调度配置",
|
||
"setBatchQueueScheduleEnabled": "开关Cron自动调度",
|
||
"getAllGroupMappings": "获取所有分组映射",
|
||
"fofaSearch": "FOFA搜索",
|
||
"fofaParse": "自然语言解析为FOFA语法",
|
||
"testOpenAI": "测试OpenAI API连接",
|
||
"terminalRun": "执行终端命令",
|
||
"terminalRunStream": "流式执行终端命令",
|
||
"terminalWS": "WebSocket终端",
|
||
"listWebshellConnections": "列出WebShell连接",
|
||
"createWebshellConnection": "创建WebShell连接",
|
||
"updateWebshellConnection": "更新WebShell连接",
|
||
"deleteWebshellConnection": "删除WebShell连接",
|
||
"getWebshellConnectionState": "获取连接状态",
|
||
"saveWebshellConnectionState": "保存连接状态",
|
||
"getWebshellAIHistory": "获取AI对话历史",
|
||
"listWebshellAIConversations": "列出AI对话",
|
||
"webshellExec": "执行WebShell命令",
|
||
"webshellFileOp": "WebShell文件操作",
|
||
"listChatUploads": "列出附件",
|
||
"uploadChatFile": "上传附件",
|
||
"deleteChatUpload": "删除附件",
|
||
"downloadChatUpload": "下载附件",
|
||
"getChatUploadContent": "获取附件文本内容",
|
||
"putChatUploadContent": "写入附件文本内容",
|
||
"mkdirChatUpload": "创建附件目录",
|
||
"renameChatUpload": "重命名附件",
|
||
"wecomCallbackVerify": "企业微信回调验证",
|
||
"wecomCallbackMessage": "企业微信消息回调",
|
||
"dingtalkCallback": "钉钉消息回调",
|
||
"larkCallback": "飞书消息回调",
|
||
"testRobot": "测试机器人消息处理",
|
||
"listMarkdownAgents": "列出Markdown代理",
|
||
"createMarkdownAgent": "创建Markdown代理",
|
||
"getMarkdownAgent": "获取Markdown代理详情",
|
||
"updateMarkdownAgent": "更新Markdown代理",
|
||
"deleteMarkdownAgent": "删除Markdown代理",
|
||
"listSkillPackageFiles": "列出技能包文件",
|
||
"getSkillPackageFile": "获取技能包文件内容",
|
||
"putSkillPackageFile": "写入技能包文件",
|
||
"batchGetToolNames": "批量获取工具名称",
|
||
"getKnowledgeStats": "获取知识库统计"
|
||
},
|
||
"response": {
|
||
"getSuccess": "获取成功",
|
||
"unauthorized": "未授权",
|
||
"unauthorizedToken": "未授权,需要有效的Token",
|
||
"createSuccess": "创建成功",
|
||
"badRequest": "请求参数错误",
|
||
"conversationNotFound": "对话不存在",
|
||
"conversationOrResultNotFound": "对话不存在或结果不存在",
|
||
"badRequestTaskEmpty": "请求参数错误(如task为空)",
|
||
"badRequestGroupNameExists": "请求参数错误或分组名称已存在",
|
||
"groupNotFound": "分组不存在",
|
||
"badRequestConfig": "请求参数错误(如配置格式不正确、缺少必需字段等)",
|
||
"badRequestQueryEmpty": "请求参数错误(如query为空)",
|
||
"methodNotAllowed": "方法不允许(仅支持POST请求)",
|
||
"loginSuccess": "登录成功",
|
||
"invalidPassword": "密码错误",
|
||
"logoutSuccess": "登出成功",
|
||
"passwordChanged": "密码修改成功",
|
||
"tokenValid": "Token有效",
|
||
"tokenInvalid": "Token无效或已过期",
|
||
"conversationCreated": "对话创建成功",
|
||
"internalError": "服务器内部错误",
|
||
"updateSuccess": "更新成功",
|
||
"deleteSuccess": "删除成功",
|
||
"queueNotFound": "队列不存在",
|
||
"startSuccess": "启动成功",
|
||
"pauseSuccess": "暂停成功",
|
||
"addSuccess": "添加成功",
|
||
"taskNotFound": "任务不存在",
|
||
"conversationOrGroupNotFound": "对话或分组不存在",
|
||
"cancelSubmitted": "取消请求已提交",
|
||
"noRunningTask": "未找到正在执行的任务",
|
||
"messageSent": "消息发送成功,返回AI回复",
|
||
"streamResponse": "流式响应(Server-Sent Events)",
|
||
"badRequestOrDeleteFailed": "参数错误或删除失败",
|
||
"paramError": "参数错误",
|
||
"onlyCompletedOrCancelledCanRerun": "仅已完成或已取消的队列可以重跑",
|
||
"badRequestOrQueueRunning": "参数错误或队列正在运行中",
|
||
"setSuccess": "设置成功",
|
||
"searchSuccess": "搜索成功",
|
||
"parseSuccess": "解析成功",
|
||
"testResult": "测试结果",
|
||
"executionDone": "执行完成",
|
||
"sseEventStream": "SSE事件流",
|
||
"wsEstablished": "WebSocket连接已建立",
|
||
"fileDownload": "文件下载",
|
||
"fileNotFound": "文件不存在",
|
||
"writeSuccess": "写入成功",
|
||
"renameSuccess": "重命名成功",
|
||
"wecomVerifySuccess": "验证成功,返回解密后的echostr",
|
||
"processSuccess": "处理成功",
|
||
"agentNotFound": "代理不存在",
|
||
"saveSuccess": "保存成功",
|
||
"operationResult": "操作结果",
|
||
"executionResult": "执行结果",
|
||
"connectionNotFound": "连接不存在"
|
||
}
|
||
},
|
||
"chatGroup": {
|
||
"search": "搜索",
|
||
"edit": "编辑",
|
||
"delete": "删除",
|
||
"clearSearch": "清除搜索",
|
||
"searchInGroupPlaceholder": "搜索分组中的对话...",
|
||
"attackChain": "攻击链",
|
||
"viewAttackChain": "查看攻击链",
|
||
"selectRole": "选择角色",
|
||
"close": "关闭",
|
||
"selectFile": "选择文件",
|
||
"uploadFile": "上传文件(可多选或拖拽到此处)",
|
||
"send": "发送",
|
||
"rolePanelTitle": "选择角色",
|
||
"copyMessage": "复制消息内容",
|
||
"remove": "移除"
|
||
},
|
||
"mcpMonitor": {
|
||
"deselectAll": "取消全选",
|
||
"statusPending": "等待中",
|
||
"statusCompleted": "已完成",
|
||
"statusRunning": "执行中",
|
||
"statusFailed": "失败",
|
||
"loading": "加载中...",
|
||
"noStatsData": "暂无统计数据",
|
||
"noExecutions": "暂无执行记录",
|
||
"noRecordsWithFilter": "当前筛选条件下暂无记录",
|
||
"paginationInfo": "显示 {{start}}-{{end}} / 共 {{total}} 条记录",
|
||
"perPageLabel": "每页显示",
|
||
"loadStatsError": "无法加载统计信息",
|
||
"loadExecutionsError": "无法加载执行记录",
|
||
"totalCalls": "总调用次数",
|
||
"successFailed": "成功 {{success}} / 失败 {{failed}}",
|
||
"successRate": "成功率",
|
||
"statsFromAllTools": "统计自全部工具调用",
|
||
"lastCall": "最近一次调用",
|
||
"lastRefreshTime": "最后刷新时间",
|
||
"noCallsYet": "暂无调用",
|
||
"unknownTool": "未知工具",
|
||
"successFailedRate": "成功 {{success}} / 失败 {{failed}} · 成功率 {{rate}}%",
|
||
"columnTool": "工具",
|
||
"columnStatus": "状态",
|
||
"columnStartTime": "开始时间",
|
||
"columnDuration": "耗时",
|
||
"columnActions": "操作",
|
||
"viewDetail": "查看详情",
|
||
"delete": "删除",
|
||
"deleteExecTitle": "删除此执行记录",
|
||
"deleteExecConfirmSingle": "确定要删除此执行记录吗?此操作不可恢复。",
|
||
"deleteExecFailed": "删除执行记录失败",
|
||
"execDeleted": "执行记录已删除",
|
||
"selectExecFirst": "请先选择要删除的执行记录",
|
||
"batchDeleteConfirm": "确定要删除选中的 {{count}} 条执行记录吗?此操作不可恢复。",
|
||
"batchDeleteSuccess": "成功删除 {{count}} 条执行记录",
|
||
"unknown": "未知",
|
||
"durationSeconds": "{{n}} 秒",
|
||
"durationMinutes": "{{minutes}} 分 {{seconds}} 秒",
|
||
"durationMinutesOnly": "{{minutes}} 分",
|
||
"durationHours": "{{hours}} 小时 {{minutes}} 分",
|
||
"durationHoursOnly": "{{hours}} 小时"
|
||
},
|
||
"knowledgePage": {
|
||
"totalContent": "总内容",
|
||
"categoryFilter": "分类筛选",
|
||
"all": "全部",
|
||
"searchPlaceholder": "搜索知识...",
|
||
"loading": "加载中..."
|
||
},
|
||
"retrievalLogs": {
|
||
"totalRetrievals": "总检索次数",
|
||
"successRetrievals": "成功检索",
|
||
"successRate": "成功率",
|
||
"retrievedItems": "检索到知识项",
|
||
"conversationId": "对话ID",
|
||
"messageId": "消息ID",
|
||
"filter": "筛选",
|
||
"optionalConversation": "可选:筛选特定对话",
|
||
"optionalMessage": "可选:筛选特定消息",
|
||
"loading": "加载中...",
|
||
"noRecords": "暂无检索记录",
|
||
"noQuery": "无查询内容",
|
||
"itemsUnit": "项",
|
||
"hasResults": "有结果",
|
||
"noResults": "无结果",
|
||
"clickToCopy": "点击复制",
|
||
"retrievalResult": "检索结果",
|
||
"foundCount": "找到 {{count}} 个相关知识项",
|
||
"foundUnknown": "找到相关知识项(数量未知)",
|
||
"noMatch": "未找到匹配的知识项",
|
||
"retrievedItemsLabel": "检索到的知识项:",
|
||
"viewDetails": "查看详情",
|
||
"loadError": "加载检索日志失败",
|
||
"detailError": "无法获取检索详情",
|
||
"deleteError": "删除检索日志失败",
|
||
"detailsTitle": "检索详情",
|
||
"queryInfo": "查询信息",
|
||
"queryContent": "查询内容:",
|
||
"retrievalInfo": "检索信息",
|
||
"riskType": "风险类型",
|
||
"retrievalTime": "检索时间",
|
||
"noItemDetails": "未找到知识项详情",
|
||
"noContentPreview": "无内容预览",
|
||
"untitled": "未命名",
|
||
"uncategorized": "未分类",
|
||
"relatedInfo": "关联信息",
|
||
"itemsCount": "{{count}} 个知识项",
|
||
"deleteConfirm": "确定要删除这条检索记录吗?"
|
||
},
|
||
"infoCollectPage": {
|
||
"title": "信息收集",
|
||
"reset": "重置",
|
||
"confirm": "确定",
|
||
"fofaQuerySyntax": "FOFA 查询语法",
|
||
"naturalLanguage": "自然语言(AI 解析为 FOFA 语法)",
|
||
"returnCount": "返回数量",
|
||
"pageNum": "页码",
|
||
"returnFields": "返回字段名(逗号分隔)",
|
||
"queryResults": "查询结果",
|
||
"selectedRows": "已选择 {{count}} 条",
|
||
"selectedRowsZero": "已选择 0 条",
|
||
"columns": "列",
|
||
"exportCsv": "导出 CSV",
|
||
"exportJson": "导出 JSON",
|
||
"exportXlsx": "导出 XLSX",
|
||
"batchScan": "批量扫描",
|
||
"showColumns": "显示字段",
|
||
"columnsPanelAll": "全选",
|
||
"columnsPanelNone": "全不选",
|
||
"columnsPanelClose": "关闭",
|
||
"formHint": "查询语法参考 FOFA 文档,支持 && / || / () 等。",
|
||
"parseBtn": "AI 解析",
|
||
"parseHint": "解析后会弹窗展示 FOFA 语法(可编辑),确认无误后再填入查询框并执行查询。",
|
||
"minFields": "最小字段",
|
||
"webCommon": "Web 常用",
|
||
"intelEnhanced": "情报增强",
|
||
"presetApache": "Apache + 中国",
|
||
"presetLogin": "登录页 + 中国",
|
||
"presetDomain": "指定域名",
|
||
"presetIp": "指定 IP",
|
||
"queryPresetsAria": "FOFA 查询示例",
|
||
"fieldsPresetsAria": "FOFA 字段模板",
|
||
"resultsToolbarAria": "结果工具条",
|
||
"fillExample": "填入示例",
|
||
"parseBtnTitle": "将自然语言解析为 FOFA 查询语法",
|
||
"minFieldsTitle": "适合快速导出目标",
|
||
"webCommonTitle": "适合浏览和筛选",
|
||
"intelEnhancedTitle": "更偏指纹/情报",
|
||
"fullLabel": "full",
|
||
"nlPlaceholder": "例如:找美国 Missouri 的 Apache 站点,标题包含 Home",
|
||
"showHideColumns": "显示/隐藏字段",
|
||
"exportCsvTitle": "导出当前结果为 CSV(UTF-8,兼容中文)",
|
||
"exportJsonTitle": "导出当前结果为 JSON",
|
||
"exportXlsxTitle": "导出当前结果为 Excel",
|
||
"batchScanTitle": "将所选行创建为批量任务队列"
|
||
},
|
||
"chatFilesPage": {
|
||
"title": "文件管理",
|
||
"intro": "管理在对话中上传的文件。需要让 AI 引用某文件时,在列表中点击「复制路径」,到对话里粘贴即可(路径为服务器上的绝对路径,与对话附件保存位置一致)。",
|
||
"upload": "上传文件",
|
||
"conversationFilter": "会话 ID",
|
||
"conversationPlaceholder": "留空表示全部",
|
||
"searchName": "文件名",
|
||
"searchNamePlaceholder": "筛选文件名",
|
||
"groupBy": "分组方式",
|
||
"groupNone": "不分组(平铺)",
|
||
"groupByDate": "按日期",
|
||
"groupByConversation": "按会话",
|
||
"groupByFolder": "按文件夹(路径浏览)",
|
||
"browseRoot": "chat_uploads",
|
||
"browseUp": "上级",
|
||
"enterFolderTitle": "进入此文件夹",
|
||
"copyFolderPathTitle": "复制该目录的相对路径(chat_uploads/…)",
|
||
"folderPathCopied": "目录路径已复制,可粘贴到对话中",
|
||
"folderEmpty": "此文件夹为空",
|
||
"confirmDeleteFolder": "确定删除该文件夹及其中的全部文件?此操作不可恢复。",
|
||
"folderRemovedStale": "服务器上已无该目录,列表已刷新。",
|
||
"deleteFolderTitle": "删除文件夹",
|
||
"uploadToFolderTitle": "上传文件到此文件夹",
|
||
"newFolderButton": "新建文件夹",
|
||
"newFolderTitle": "新建文件夹",
|
||
"newFolderLocation": "位置",
|
||
"newFolderNameLabel": "文件夹名称",
|
||
"newFolderNamePlaceholder": "仅名称,不含 /",
|
||
"mkdirOk": "文件夹已创建",
|
||
"mkdirExists": "该名称已存在",
|
||
"mkdirInvalidName": "名称无效:不能为空,且不能包含 /、\\ 或 . / ..",
|
||
"colSubPath": "子路径",
|
||
"folderRoot": "(根目录)",
|
||
"groupCount": "{{count}} 个文件",
|
||
"convManual": "手动上传",
|
||
"convNew": "新对话",
|
||
"colDate": "日期",
|
||
"colConversation": "会话",
|
||
"colName": "文件名",
|
||
"colSize": "大小",
|
||
"colModified": "修改时间",
|
||
"colActions": "操作",
|
||
"copyPath": "复制路径",
|
||
"copyPathTitle": "复制服务器上的绝对路径,可粘贴到对话中让模型引用该文件",
|
||
"pathCopied": "路径已复制,可到对话中粘贴使用",
|
||
"uploadOkHint": "上传成功。点击「复制路径」可复制绝对路径到剪贴板。",
|
||
"uploadingFile": "正在上传 {{name}} · {{percent}}%",
|
||
"moreActions": "更多:打开对话、编辑、重命名、删除",
|
||
"download": "下载",
|
||
"edit": "编辑",
|
||
"rename": "重命名",
|
||
"openChat": "打开对话",
|
||
"confirmDelete": "确定删除该文件?",
|
||
"editTitle": "编辑文件",
|
||
"renameTitle": "重命名",
|
||
"newFileName": "新文件名",
|
||
"empty": "暂无对话附件",
|
||
"errorLoad": "加载失败",
|
||
"editBinaryHint": "图片、压缩包等二进制文件无法在此以文本方式编辑,请使用「下载」后在本地查看或处理。",
|
||
"editUnavailable": "不可编辑",
|
||
"editTooLarge": "文件超过 2MB,无法在此编辑,请下载后本地处理。",
|
||
"errorGeneric": "操作失败,请稍后重试。"
|
||
},
|
||
"vulnerabilityPage": {
|
||
"statTotal": "总漏洞数",
|
||
"filter": "筛选",
|
||
"clear": "清除",
|
||
"vulnId": "漏洞ID",
|
||
"conversationId": "会话ID",
|
||
"taskOrQueueId": "任务ID/队列ID",
|
||
"filterTaskOrQueue": "筛选任务ID或队列ID",
|
||
"conversationTag": "对话标签",
|
||
"filterConversationTag": "筛选对话标签",
|
||
"taskTag": "任务标签",
|
||
"filterTaskTag": "筛选任务标签",
|
||
"severity": "严重程度",
|
||
"status": "状态",
|
||
"statusOpen": "待处理",
|
||
"statusConfirmed": "已确认",
|
||
"statusFixed": "已修复",
|
||
"statusFalsePositive": "误报",
|
||
"searchVulnId": "搜索漏洞ID",
|
||
"filterConversation": "筛选特定会话",
|
||
"loading": "加载中...",
|
||
"loadListFailed": "加载失败",
|
||
"noRecords": "暂无漏洞记录",
|
||
"batchExport": "批量导出",
|
||
"downloadMarkdownTitle": "下载 Markdown",
|
||
"exportNoResults": "当前筛选条件下无可导出漏洞",
|
||
"exportStarted": "已开始下载 {{count}} 份报告",
|
||
"exportFailed": "导出失败",
|
||
"saveRequiredFields": "请填写必填字段:会话ID、标题和严重程度",
|
||
"saveFailed": "保存失败",
|
||
"fetchFailed": "获取漏洞失败",
|
||
"deleteFailed": "删除失败",
|
||
"detailVulnId": "漏洞ID",
|
||
"detailType": "类型",
|
||
"detailTarget": "目标",
|
||
"detailConversationId": "会话ID",
|
||
"detailTaskId": "任务ID",
|
||
"detailTaskQueueId": "任务队列ID",
|
||
"detailConversationTag": "对话标签",
|
||
"detailTaskTag": "任务标签",
|
||
"detailProof": "证明",
|
||
"detailImpact": "影响",
|
||
"detailRecommendation": "修复建议",
|
||
"downloadOkTitle": "下载成功",
|
||
"exportFailedMessage": "导出失败",
|
||
"downloadFailed": "下载失败"
|
||
},
|
||
"tasksPage": {
|
||
"statusFilter": "状态筛选",
|
||
"statusPending": "待执行",
|
||
"statusPaused": "已暂停",
|
||
"statusCancelled": "已取消",
|
||
"searchQueuePlaceholder": "搜索队列ID、标题或创建时间",
|
||
"searchKeywordPlaceholder": "输入关键字搜索..."
|
||
},
|
||
"skillsPage": {
|
||
"clearStats": "清空统计",
|
||
"clearStatsTitle": "清空所有统计数据",
|
||
"skillsCallStats": "Skills调用统计",
|
||
"searchPlaceholder": "搜索Skills...",
|
||
"loading": "加载中...",
|
||
"paginationShow": "显示 {{start}}-{{end}} / 共 {{total}} 条",
|
||
"perPageLabel": "每页显示",
|
||
"firstPage": "首页",
|
||
"prevPage": "上一页",
|
||
"pageOf": "第 {{current}} / {{total}} 页",
|
||
"nextPage": "下一页",
|
||
"lastPage": "尾页"
|
||
},
|
||
"agentsPage": {
|
||
"title": "Agent 管理",
|
||
"create": "新建 Agent",
|
||
"hint": "Agent 在 agents 目录(config 中 agents_dir)下以 .md 维护:YAML front matter + 正文为系统提示词;主代理为 Deep 协调者,不参与 task 子代理列表。",
|
||
"dirLabel": "目录",
|
||
"loading": "加载中...",
|
||
"empty": "暂无 Markdown 子 Agent,点击「新建 Agent」创建。",
|
||
"noDesc": "暂无描述",
|
||
"loadFailed": "加载列表失败",
|
||
"loadOneFailed": "加载 Agent 失败",
|
||
"createTitle": "新建 Agent",
|
||
"editTitle": "编辑 Agent",
|
||
"filename": "文件名(.md)",
|
||
"filenamePlaceholder": "例如 code-reviewer.md",
|
||
"fieldRole": "类型",
|
||
"roleSub": "子代理",
|
||
"roleOrchestrator": "主代理(Deep 协调者)",
|
||
"roleHint": "主代理分模式:Deep 用 orchestrator.md(或 kind: orchestrator 的单个 .md);plan_execute 用 orchestrator-plan-execute.md;supervisor 用 orchestrator-supervisor.md。每种至多一个。正文为空时分别回退 multi_agent.orchestrator_instruction / orchestrator_instruction_plan_execute / orchestrator_instruction_supervisor 或内置默认(PE/SV 不使用 Deep 的 orchestrator_instruction)。",
|
||
"badgeOrchestrator": "主代理",
|
||
"badgeSub": "子代理",
|
||
"filenameInvalid": "文件名须为 .md,且仅含字母、数字、._-",
|
||
"fieldId": "Agent ID(留空则从名称生成)",
|
||
"fieldName": "显示名称",
|
||
"namePlaceholder": "Code Reviewer",
|
||
"fieldDesc": "描述",
|
||
"descPlaceholder": "何时由协调者调度该子代理",
|
||
"fieldTools": "可用工具(逗号分隔,与角色工具 key 一致)",
|
||
"fieldBindRole": "绑定角色(可选)",
|
||
"fieldMaxIter": "子代理最大迭代(0=使用全局默认)",
|
||
"fieldInstruction": "系统提示词(Markdown 正文)",
|
||
"instructionPlaceholder": "You are a specialist agent...",
|
||
"nameRequired": "请填写显示名称",
|
||
"instructionRequired": "请填写系统提示词正文",
|
||
"saveOk": "已保存",
|
||
"createOk": "已创建",
|
||
"saveFailed": "保存失败",
|
||
"deleteConfirm": "确定删除 {{name}} 吗?",
|
||
"deleteOk": "已删除",
|
||
"deleteFailed": "删除失败"
|
||
},
|
||
"settingsBasic": {
|
||
"basicTitle": "基本设置",
|
||
"openaiConfig": "OpenAI 配置",
|
||
"fofaConfig": "FOFA 配置",
|
||
"agentConfig": "Agent 配置",
|
||
"knowledgeConfig": "知识库配置",
|
||
"baseUrl": "Base URL",
|
||
"apiKey": "API Key",
|
||
"model": "模型",
|
||
"openaiBaseUrlPlaceholder": "https://api.openai.com/v1",
|
||
"openaiApiKeyPlaceholder": "输入OpenAI API Key",
|
||
"modelPlaceholder": "gpt-4",
|
||
"maxTotalTokens": "最大上下文 Token 数",
|
||
"maxTotalTokensPlaceholder": "120000",
|
||
"maxTotalTokensHint": "内存压缩和攻击链构建共用此配置,默认 120000",
|
||
"fofaBaseUrlPlaceholder": "https://fofa.info/api/v1/search/all(可选)",
|
||
"fofaBaseUrlHint": "留空则使用默认地址。",
|
||
"email": "Email",
|
||
"fofaEmailPlaceholder": "输入 FOFA 账号邮箱",
|
||
"fofaApiKeyPlaceholder": "输入 FOFA API Key",
|
||
"fofaApiKeyHint": "仅保存在服务器配置中(`config.yaml`)。",
|
||
"maxIterations": "最大迭代次数",
|
||
"iterationsPlaceholder": "30",
|
||
"enableMultiAgent": "启用 Eino 多代理",
|
||
"enableMultiAgentHint": "开启后对话页可选「多代理」模式;子代理在 multi_agent.sub_agents 或 agents 目录配置;编排方式见下方「预置编排」。",
|
||
"multiAgentOrchestration": "多代理预置编排",
|
||
"multiAgentOrchestrationHint": "deep=DeepAgent+task;plan_execute=规划/执行/重规划(单执行器工具链);supervisor=监督者+transfer。保存并应用后生效。",
|
||
"multiAgentOrchDeep": "deep — DeepAgent(task 子代理)",
|
||
"multiAgentOrchPlanExecute": "plan_execute — 规划 / 执行 / 重规划",
|
||
"multiAgentOrchSupervisor": "supervisor — 监督者 + transfer",
|
||
"multiAgentPeLoop": "plan_execute 外层循环上限",
|
||
"multiAgentPeLoopPlaceholder": "0 表示 Eino 默认 10",
|
||
"multiAgentPeLoopHint": "仅 plan_execute 有效;execute 与 replan 之间的最大轮次。",
|
||
"multiAgentRobotUse": "企业微信 / 钉钉 / 飞书机器人也使用多代理",
|
||
"multiAgentRobotUseHint": "需同时勾选「启用多代理」;调用量与成本更高。",
|
||
"multiAgentBatchUse": "批量任务队列也使用多代理",
|
||
"multiAgentBatchUseHint": "开启后,任务管理中按队列执行的每个子任务将走 Eino DeepAgent(需启用多代理)。",
|
||
"enableKnowledge": "启用知识检索功能",
|
||
"knowledgeBasePath": "知识库路径",
|
||
"knowledgeBasePathPlaceholder": "knowledge_base",
|
||
"knowledgeBasePathHint": "相对于配置文件所在目录的路径",
|
||
"embeddingConfig": "嵌入模型配置",
|
||
"provider": "提供商",
|
||
"embeddingBaseUrlPlaceholder": "留空则使用OpenAI配置的base_url",
|
||
"embeddingApiKeyPlaceholder": "留空则使用OpenAI配置的api_key",
|
||
"modelName": "模型名称",
|
||
"embeddingModelPlaceholder": "text-embedding-v4",
|
||
"retrievalConfig": "检索配置",
|
||
"topK": "Top-K 结果数量",
|
||
"topKPlaceholder": "5",
|
||
"topKHint": "检索返回的Top-K结果数量",
|
||
"similarityThreshold": "相似度阈值",
|
||
"similarityPlaceholder": "0.7",
|
||
"similarityHint": "相似度阈值(0-1),低于此值的结果将被过滤",
|
||
"subIndexFilter": "子索引过滤(可选)",
|
||
"subIndexFilterPlaceholder": "如 prod,与索引 sub_indexes 一致",
|
||
"subIndexFilterHint": "留空不过滤;填写后仅检索向量行 sub_indexes 中含该标签的结果(未打标旧行仍保留)。",
|
||
"postRetrieveHeader": "检索后处理(去重 / 预算)",
|
||
"postRetrieveDedupeAuto": "检索结果会自动按正文规范化去重(合并仅空白不同的重复片段),无需配置。",
|
||
"prefetchTopK": "预取候选数(向量阶段)",
|
||
"prefetchTopKPlaceholder": "0",
|
||
"prefetchTopKHint": "0 表示与 Top-K 相同;大于 Top-K 时先多取候选再经去重/截断回到 Top-K(上限 200)。",
|
||
"maxContextChars": "返回内容最大字符数(Unicode)",
|
||
"maxContextCharsPlaceholder": "0",
|
||
"maxContextCharsHint": "0 表示不限制;按检索顺序整段保留 chunk,超出则丢弃后续。",
|
||
"maxContextTokens": "返回内容最大 Token 数",
|
||
"maxContextTokensPlaceholder": "0",
|
||
"maxContextTokensHint": "0 表示不限制;tiktoken 估算(与嵌入模型名一致,失败则用 cl100k_base)。",
|
||
"indexConfig": "索引配置",
|
||
"chunkStrategy": "分块策略",
|
||
"chunkStrategyMarkdownRecursive": "Markdown 标题切分后递归(推荐)",
|
||
"chunkStrategyRecursive": "仅递归切分",
|
||
"chunkStrategyHint": "与 Eino 索引链一致:技术文档建议 Markdown 标题 + 递归;纯文本可仅用递归。",
|
||
"requestTimeoutSeconds": "嵌入 HTTP 超时(秒)",
|
||
"requestTimeoutPlaceholder": "120",
|
||
"requestTimeoutHint": "0 表示使用默认 120 秒,与嵌入 HTTP 客户端一致。",
|
||
"batchSize": "嵌入批大小",
|
||
"batchSizePlaceholder": "64",
|
||
"batchSizeHint": "单次嵌入请求的文本条数上限(SQLite 写入按此分批)。",
|
||
"preferSourceFile": "索引时优先从磁盘源文件读取(Eino FileLoader)",
|
||
"preferSourceFileHint": "开启后以 file_path 为准;读取失败时回退数据库中的 content。",
|
||
"subIndexes": "Eino 子索引(逗号分隔)",
|
||
"subIndexesPlaceholder": "例如: prod, knowledge",
|
||
"subIndexesHint": "对应 indexer.WithSubIndexes,持久化到向量表 sub_indexes 字段。",
|
||
"chunkSize": "分块大小(Chunk Size)",
|
||
"chunkSizePlaceholder": "512",
|
||
"chunkSizeHint": "每个块的最大 token 数(默认 512),长文本会被分割成多个块",
|
||
"chunkOverlap": "分块重叠(Chunk Overlap)",
|
||
"chunkOverlapPlaceholder": "50",
|
||
"chunkOverlapHint": "块之间的重叠 token 数(默认 50),保持上下文连贯性",
|
||
"maxChunksPerItem": "单个知识项最大块数",
|
||
"maxChunksPlaceholder": "0",
|
||
"maxChunksHint": "单个知识项的最大块数量(0 表示不限制),防止单个文件消耗过多 API 配额",
|
||
"maxRpm": "每分钟最大请求数(Max RPM)",
|
||
"maxRpmPlaceholder": "0",
|
||
"maxRpmHint": "每分钟最大请求数(默认 0 表示不限制),如 OpenAI 默认 200 RPM",
|
||
"rateLimitDelay": "请求间隔延迟(毫秒)",
|
||
"rateLimitPlaceholder": "300",
|
||
"rateLimitHint": "请求间隔毫秒数(默认 300),用于避免 API 速率限制,设为 0 不限制",
|
||
"maxRetries": "最大重试次数",
|
||
"maxRetriesPlaceholder": "3",
|
||
"maxRetriesHint": "最大重试次数(默认 3),遇到速率限制或服务器错误时自动重试",
|
||
"retryDelay": "重试间隔(毫秒)",
|
||
"retryDelayPlaceholder": "1000",
|
||
"retryDelayHint": "重试间隔毫秒数(默认 1000),每次重试会递增延迟",
|
||
"testConnection": "测试连接",
|
||
"testFillRequired": "请先填写 API Key 和模型",
|
||
"testing": "测试中...",
|
||
"testSuccess": "连接成功",
|
||
"testFailed": "连接失败",
|
||
"testError": "测试出错"
|
||
},
|
||
"settingsTerminal": {
|
||
"title": "终端",
|
||
"description": "在服务器上执行命令,便于运维与调试。命令在服务端执行,请勿执行敏感或破坏性操作。",
|
||
"terminalTab": "终端 {{n}}",
|
||
"welcomeLine": "CyberStrikeAI 终端 - 真实 Shell 会话,直接输入命令;Ctrl+L 清屏",
|
||
"sessionClosed": "[会话已关闭]",
|
||
"connectionError": "[终端连接出错]",
|
||
"connectFailed": "[无法连接终端服务: {{msg}}]",
|
||
"closeTabTitle": "关闭",
|
||
"containerClickTitle": "点击此处后输入命令",
|
||
"xtermNotLoaded": "未加载 xterm.js,请刷新页面或检查网络。",
|
||
"close": "×",
|
||
"newTerminal": "+"
|
||
},
|
||
"settingsSecurity": {
|
||
"changePasswordTitle": "修改密码",
|
||
"changePasswordDesc": "修改登录密码后,需要使用新密码重新登录。",
|
||
"currentPassword": "当前密码",
|
||
"currentPasswordPlaceholder": "输入当前登录密码",
|
||
"newPassword": "新密码",
|
||
"newPasswordPlaceholder": "设置新密码(至少 8 位)",
|
||
"confirmPassword": "确认新密码",
|
||
"confirmPasswordPlaceholder": "再次输入新密码",
|
||
"clear": "清空",
|
||
"changePasswordBtn": "修改密码"
|
||
},
|
||
"settingsRobotsExtra": {
|
||
"botCommandsTitle": "机器人命令说明",
|
||
"botCommandsDesc": "在对话中可发送以下命令(支持中英文):",
|
||
"botCmdHelp": "显示本帮助 | Show this help",
|
||
"botCmdList": "列出所有对话标题与 ID | List conversations",
|
||
"botCmdSwitch": "指定对话继续 | Switch to conversation",
|
||
"botCmdNew": "开启新对话 | Start new conversation",
|
||
"botCmdClear": "清空当前上下文 | Clear context",
|
||
"botCmdCurrent": "显示当前对话 ID 与标题 | Show current conversation",
|
||
"botCmdStop": "中断当前任务 | Stop running task",
|
||
"botCmdRoles": "列出所有可用角色 | List roles",
|
||
"botCmdRole": "切换当前角色 | Switch role",
|
||
"botCmdDelete": "删除指定对话 | Delete conversation",
|
||
"botCmdVersion": "显示当前版本号 | Show version",
|
||
"botCommandsFooter": "除以上命令外,直接输入内容将发送给 AI 进行渗透测试/安全分析。Otherwise, send any text for AI penetration testing / security analysis."
|
||
},
|
||
"mcpDetailModal": {
|
||
"title": "工具调用详情",
|
||
"execInfo": "执行信息",
|
||
"tool": "工具",
|
||
"status": "状态",
|
||
"statusPending": "等待中",
|
||
"statusRunning": "执行中",
|
||
"statusCompleted": "已完成",
|
||
"statusFailed": "失败",
|
||
"unknown": "未知",
|
||
"getDetailFailed": "获取详情失败",
|
||
"execSuccessNoContent": "执行成功,未返回可展示的文本内容。",
|
||
"time": "时间",
|
||
"executionId": "执行 ID",
|
||
"requestParams": "请求参数",
|
||
"copyJson": "复制 JSON",
|
||
"responseResult": "响应结果",
|
||
"copyContent": "复制内容",
|
||
"correctInfo": "正确信息",
|
||
"errorInfo": "错误信息",
|
||
"copyError": "复制错误"
|
||
},
|
||
"attackChainModal": {
|
||
"title": "攻击链可视化",
|
||
"regenerate": "重新生成",
|
||
"regenerateTitle": "重新生成攻击链(包含最新对话内容)",
|
||
"exportPng": "导出为PNG",
|
||
"exportSvg": "导出为SVG",
|
||
"refreshTitle": "刷新当前攻击链(不重新生成)",
|
||
"nodesEdges": "节点: {{nodes}} | 边: {{edges}}",
|
||
"searchPlaceholder": "搜索节点...",
|
||
"allTypes": "所有类型",
|
||
"target": "目标",
|
||
"action": "行动",
|
||
"vulnerability": "漏洞",
|
||
"allRisks": "所有风险",
|
||
"highRisk": "高风险 (80-100)",
|
||
"mediumHighRisk": "中高风险 (60-79)",
|
||
"mediumRisk": "中风险 (40-59)",
|
||
"lowRisk": "低风险 (0-39)",
|
||
"resetFilter": "重置筛选",
|
||
"loading": "加载中...",
|
||
"riskLevel": "风险等级",
|
||
"lineMeaning": "连接线含义",
|
||
"blueLine": "蓝色线:行动发现漏洞",
|
||
"redLine": "红色线:使能/促成关系",
|
||
"grayLine": "灰色线:逻辑顺序",
|
||
"nodeDetails": "节点详情",
|
||
"closeDetails": "关闭详情"
|
||
},
|
||
"externalMcpModal": {
|
||
"configJson": "配置JSON",
|
||
"formatLabel": "配置格式:",
|
||
"formatDesc": "JSON对象,key为配置名称,value为配置内容。状态通过\"启动/停止\"按钮控制,无需在JSON中配置。支持 ${VAR} 和 ${VAR:-默认值} 环境变量语法。",
|
||
"configExample": "配置示例:",
|
||
"stdioMode": "stdio模式:",
|
||
"httpMode": "HTTP模式:",
|
||
"sseMode": "SSE模式:",
|
||
"placeholder": "{\n \"my-server\": {\n \"command\": \"python3\",\n \"args\": [\"${HOME}/mcp/server.py\"],\n \"env\": { \"API_KEY\": \"${API_KEY}\" },\n \"timeout\": 300\n }\n}",
|
||
"exampleStdio": "{\n \"my-server\": {\n \"command\": \"python3\",\n \"args\": [\"${HOME}/mcp/server.py\"],\n \"env\": { \"API_KEY\": \"${API_KEY}\", \"LOG_LEVEL\": \"${LOG_LEVEL:-INFO}\" },\n \"timeout\": 300\n }\n}",
|
||
"exampleHttp": "{\n \"remote-mcp\": {\n \"type\": \"http\",\n \"url\": \"https://mcp.example.com/mcp\",\n \"headers\": { \"Authorization\": \"Bearer ${MCP_TOKEN}\" }\n }\n}",
|
||
"exampleSse": "{\n \"sse-mcp\": {\n \"type\": \"sse\",\n \"url\": \"http://127.0.0.1:8081/mcp/sse\"\n }\n}",
|
||
"exampleDescription": "示例描述",
|
||
"formatJson": "格式化JSON",
|
||
"loadExample": "加载示例"
|
||
},
|
||
"skillModal": {
|
||
"addSkill": "添加Skill",
|
||
"editSkill": "编辑Skill",
|
||
"skillName": "Skill名称",
|
||
"skillNamePlaceholder": "例如: sql-injection-testing",
|
||
"skillNameHint": "小写字母、数字、连字符(与 Agent Skills 的 name 一致)",
|
||
"description": "描述",
|
||
"descriptionPlaceholder": "Skill的简短描述",
|
||
"descriptionHint": "对应 SKILL.md 中 YAML 的 description 字段(创建/编辑 SKILL.md 时使用)",
|
||
"packageFiles": "包内文件",
|
||
"editingFile": "正在编辑",
|
||
"newFile": "新建文件",
|
||
"newFilePlaceholder": "新文件路径,如 FORMS.md 或 scripts/extra.sh",
|
||
"newFilePathRequired": "请填写新文件路径",
|
||
"newFilePathInvalid": "路径无效(禁止 .. 与绝对路径)",
|
||
"noPackageFiles": "未列出文件",
|
||
"unsavedSwitch": "当前文件有未保存修改,确定切换?",
|
||
"contentLabel": "内容",
|
||
"contentPlaceholder": "编辑当前选中的文件…",
|
||
"contentPlaceholderAdd": "SKILL.md 正文(无需手写 YAML 头)…",
|
||
"bodyHintEdit": "当前为 SKILL.md 的正文部分(不含 --- 头);保存时会合并名称/描述生成标准 SKILL.md。",
|
||
"contentHintAdd": "保存后生成标准 SKILL.md(YAML front matter + 正文)。开源技能目录可直接放入 skills/ 使用。",
|
||
"contentHint": "标准格式见 Claude Agent Skills 文档"
|
||
},
|
||
"knowledgeItemModal": {
|
||
"addKnowledge": "添加知识",
|
||
"editKnowledge": "编辑知识",
|
||
"category": "分类(风险类型)",
|
||
"categoryPlaceholder": "例如:SQL注入",
|
||
"title": "标题",
|
||
"titlePlaceholder": "知识项标题",
|
||
"contentLabel": "内容(Markdown格式)",
|
||
"contentPlaceholder": "输入知识内容,支持Markdown格式..."
|
||
},
|
||
"batchManageModal": {
|
||
"title": "管理对话记录·共{{count}}条",
|
||
"searchPlaceholder": "搜索历史记录",
|
||
"conversationName": "对话名称",
|
||
"lastTime": "最近一次对话时间",
|
||
"action": "操作",
|
||
"selectAll": "全选",
|
||
"deleteSelected": "删除所选",
|
||
"confirmDeleteNone": "请先选择要删除的对话",
|
||
"confirmDeleteN": "确定要删除选中的 {{count}} 条对话吗?",
|
||
"deleteFailed": "删除失败",
|
||
"unnamedConversation": "未命名对话"
|
||
},
|
||
"createGroupModal": {
|
||
"title": "创建分组",
|
||
"description": "分组功能可将对话集中归类管理,让对话更加井然有序。",
|
||
"selectIcon": "点击选择图标",
|
||
"groupNamePlaceholder": "请输入分组名称",
|
||
"pickIcon": "选择图标",
|
||
"customIcon": "自定义",
|
||
"confirmIcon": "确定",
|
||
"create": "创建",
|
||
"cancel": "取消",
|
||
"suggestionPenetrationTest": "渗透测试",
|
||
"suggestionCtf": "CTF",
|
||
"suggestionRedTeam": "红队",
|
||
"suggestionVulnerabilityMining": "漏洞挖掘",
|
||
"nameExists": "分组名称已存在,请使用其他名称",
|
||
"createFailed": "创建失败",
|
||
"unknownError": "未知错误"
|
||
},
|
||
"contextMenu": {
|
||
"viewAttackChain": "查看攻击链",
|
||
"downloadMarkdown": "下载 Markdown",
|
||
"downloadMarkdownSummary": "简版",
|
||
"downloadMarkdownFull": "完整版",
|
||
"rename": "重命名",
|
||
"pinConversation": "置顶此对话",
|
||
"unpinConversation": "取消置顶",
|
||
"batchManage": "批量管理",
|
||
"moveToGroup": "移动到分组",
|
||
"deleteConversation": "删除此对话",
|
||
"pinGroup": "置顶此分组",
|
||
"unpinGroup": "取消置顶",
|
||
"deleteGroup": "删除此分组"
|
||
},
|
||
"batchImportModal": {
|
||
"title": "新建任务",
|
||
"queueTitle": "任务标题",
|
||
"queueTitlePlaceholder": "请输入任务标题(可选,用于标识和筛选)",
|
||
"queueTitleHint": "为批量任务队列设置一个标题,方便后续查找和管理。",
|
||
"role": "角色",
|
||
"defaultRole": "默认",
|
||
"roleHint": "选择一个角色,所有任务将使用该角色的配置(提示词和工具)执行。",
|
||
"agentMode": "代理模式",
|
||
"agentModeSingle": "单代理(ReAct)",
|
||
"agentModeMulti": "多代理(Eino)",
|
||
"agentModeHint": "与对话页一致:原生 ReAct、Eino 单代理(ADK),或 Deep / Plan-Execute / Supervisor(后三种需已启用多代理)。",
|
||
"scheduleMode": "调度方式",
|
||
"scheduleModeManual": "手工执行",
|
||
"scheduleModeCron": "调度表达式(Cron)",
|
||
"scheduleModeHint": "手工执行用于一次性任务;Cron 用于周期任务,建议先手工验证任务正确性。",
|
||
"cronExpr": "Cron 表达式",
|
||
"cronExprPlaceholder": "例如:0 */2 * * *(每2小时执行一次)",
|
||
"cronExprHint": "采用标准 5 段 Cron:分 时 日 月 周,例如 `0 2 * * *` 表示每天 02:00 执行。",
|
||
"cronExprRequired": "请选择 Cron 调度后填写 Cron 表达式",
|
||
"cronExprInvalid": "Cron 表达式格式错误,需要 5 段(分 时 日 月 周),例如:0 */2 * * *",
|
||
"executeNow": "创建后立即执行",
|
||
"executeNowHint": "默认不立即执行;关闭后队列保持待执行,可在需要时手动开始。",
|
||
"tasksList": "任务列表(每行一个任务)",
|
||
"tasksListPlaceholder": "请输入任务列表,每行一个任务",
|
||
"tasksListPlaceholderExample": "请输入任务列表,每行一个任务,例如:\n扫描 192.168.1.1 的开放端口\n检查 https://example.com 是否存在SQL注入\n枚举 example.com 的子域名",
|
||
"tasksListHint": "每行输入一个任务指令,系统将依次执行这些任务。空行会被自动忽略。",
|
||
"tasksListHintFull": "提示:每行输入一个任务指令,系统将依次执行这些任务。空行会被自动忽略。",
|
||
"createQueue": "创建队列"
|
||
},
|
||
"batchQueueDetailModal": {
|
||
"title": "批量任务队列详情",
|
||
"addTask": "添加任务",
|
||
"startExecute": "开始执行",
|
||
"startExecuteNow": "立即执行一轮",
|
||
"startExecuteNowConfirm": "这是 Cron 队列,点击后会立即执行当前这一轮,不会等待下次 Cron 时间。确定立即执行吗?",
|
||
"pauseQueue": "暂停队列",
|
||
"rerunQueue": "重跑一轮",
|
||
"deleteQueue": "删除队列",
|
||
"queueTitle": "任务标题",
|
||
"role": "角色",
|
||
"defaultRole": "默认",
|
||
"queueId": "队列ID",
|
||
"status": "状态",
|
||
"createdAt": "创建时间",
|
||
"startedAt": "开始时间",
|
||
"nextRunAt": "下次执行时间",
|
||
"scheduleCronAuto": "允许 Cron 自动调度",
|
||
"scheduleCronAutoHint": "关闭后仅保留表达式配置,不会按时间自动跑;可随时手工点「开始执行」。",
|
||
"editSchedule": "修改调度",
|
||
"editScheduleTitle": "修改调度配置",
|
||
"editScheduleSuccess": "调度配置已更新",
|
||
"editScheduleError": "更新调度配置失败",
|
||
"editMetadata": "编辑信息",
|
||
"lastScheduleTriggerAt": "最近调度触发时间",
|
||
"lastScheduleError": "最近调度失败原因",
|
||
"lastRunError": "最近运行失败摘要",
|
||
"cronSchedulePausedBadge": "调度已暂停",
|
||
"scheduleToggleFailed": "更新调度开关失败",
|
||
"completedAt": "完成时间",
|
||
"taskTotal": "任务总数",
|
||
"taskList": "任务列表",
|
||
"startLabel": "开始",
|
||
"completeLabel": "完成",
|
||
"errorLabel": "错误",
|
||
"resultLabel": "结果",
|
||
"technicalDetails": "技术信息(ID / 时间 / 调度)"
|
||
},
|
||
"editBatchTaskModal": {
|
||
"title": "编辑任务",
|
||
"taskMessage": "任务消息",
|
||
"taskMessagePlaceholder": "请输入任务消息"
|
||
},
|
||
"addBatchTaskModal": {
|
||
"title": "添加任务",
|
||
"taskMessage": "任务消息",
|
||
"taskMessagePlaceholder": "请输入任务消息",
|
||
"add": "添加"
|
||
},
|
||
"vulnerabilityModal": {
|
||
"conversationId": "会话ID",
|
||
"conversationIdPlaceholder": "输入会话ID",
|
||
"conversationTag": "对话标签",
|
||
"conversationTagPlaceholder": "如:红队演练A、客户A周报",
|
||
"taskTag": "任务标签",
|
||
"taskTagPlaceholder": "如:批量扫描Q2、专项复测",
|
||
"title": "标题",
|
||
"titlePlaceholder": "漏洞标题",
|
||
"description": "描述",
|
||
"descriptionPlaceholder": "漏洞详细描述",
|
||
"severity": "严重程度",
|
||
"pleaseSelect": "请选择",
|
||
"severityCritical": "严重",
|
||
"severityHigh": "高危",
|
||
"severityMedium": "中危",
|
||
"severityLow": "低危",
|
||
"severityInfo": "信息",
|
||
"status": "状态",
|
||
"statusOpen": "待处理",
|
||
"statusConfirmed": "已确认",
|
||
"statusFixed": "已修复",
|
||
"statusFalsePositive": "误报",
|
||
"type": "漏洞类型",
|
||
"typePlaceholder": "如:SQL注入、XSS、CSRF等",
|
||
"target": "目标",
|
||
"targetPlaceholder": "受影响的目标(URL、IP地址等)",
|
||
"proof": "证明(POC)",
|
||
"proofPlaceholder": "漏洞证明,如请求/响应、截图等",
|
||
"impact": "影响",
|
||
"impactPlaceholder": "漏洞影响说明",
|
||
"recommendation": "修复建议",
|
||
"recommendationPlaceholder": "修复建议"
|
||
},
|
||
"vulnerabilityMd": {
|
||
"headingBasic": "基本信息",
|
||
"labelId": "漏洞ID",
|
||
"labelSeverity": "严重程度",
|
||
"labelStatus": "状态",
|
||
"labelType": "类型",
|
||
"labelTarget": "目标",
|
||
"labelConversationId": "会话ID",
|
||
"labelTaskId": "任务ID",
|
||
"labelTaskQueueId": "任务队列ID",
|
||
"labelConversationTag": "对话标签",
|
||
"labelTaskTag": "任务标签",
|
||
"labelCreated": "创建时间",
|
||
"labelUpdated": "更新时间",
|
||
"headingDescription": "描述",
|
||
"headingProof": "证明(POC)",
|
||
"headingImpact": "影响",
|
||
"headingRecommendation": "修复建议"
|
||
},
|
||
"roleModal": {
|
||
"addRole": "添加角色",
|
||
"editRole": "编辑角色",
|
||
"roleName": "角色名称",
|
||
"roleNamePlaceholder": "输入角色名称",
|
||
"roleDescription": "角色描述",
|
||
"roleDescriptionPlaceholder": "输入角色描述",
|
||
"roleIcon": "角色图标",
|
||
"roleIconPlaceholder": "输入emoji图标,例如: 🏆",
|
||
"roleIconHint": "输入一个emoji作为角色的图标,将显示在角色选择器中。",
|
||
"userPrompt": "用户提示词",
|
||
"userPromptPlaceholder": "输入用户提示词,会在用户消息前追加此提示词...",
|
||
"userPromptHint": "此提示词会追加到用户消息前,用于指导AI的行为。注意:这不会修改系统提示词。",
|
||
"relatedTools": "关联的工具(可选)",
|
||
"defaultRoleToolsTitle": "默认角色使用所有工具",
|
||
"defaultRoleToolsDesc": "默认角色会自动使用MCP管理中启用的所有工具,无需单独配置。",
|
||
"searchToolsPlaceholder": "搜索工具...",
|
||
"loadingTools": "正在加载工具列表...",
|
||
"relatedToolsHint": "上方「本角色已开/已关」按复选框筛选;留空工具清单表示不限制。MCP 全局开关请在 MCP 管理中操作。",
|
||
"enableRole": "启用此角色",
|
||
"selectAll": "全选",
|
||
"deselectAll": "全不选",
|
||
"roleNameRequired": "角色名称不能为空",
|
||
"roleNotFound": "角色不存在",
|
||
"firstRoleNoToolsHint": "检测到这是首次添加角色且未选择工具,将默认使用全部工具",
|
||
"filterRoleAll": "全部",
|
||
"filterRoleOn": "本角色已开",
|
||
"filterRoleOff": "本角色已关",
|
||
"statsPageLinked": "本页已勾选: {{current}} / {{total}}",
|
||
"statsPageLinkedTitle": "勾选=关联到本角色;与 MCP 里是否开启无关",
|
||
"statsRoleLinked": "本角色已勾选: {{current}} / {{max}}",
|
||
"statsRoleLinkedTitle": "分子为全库勾选数(仅 MCP 为开的工具);分母为 MCP 已开工具总数,与「MCP管理」里筛选 MCP已开 的条数一致",
|
||
"statsRoleLinkedNoMax": "本角色已勾选: {{current}}(请先切到「全部」且无搜索,加载一页以同步上限)",
|
||
"statsRoleLinkedNoMaxTitle": "尚未缓存 MCP 已开总数",
|
||
"statsRoleUsesAll": "工具策略: 使用全部 MCP 已开工具({{mcpOn}} 个)· 全库共 {{all}} 个(含 MCP 已关)",
|
||
"statsRoleUsesAllTitle": "与 MCP 管理中「MCP已开」数量一致;未单独限定工具清单",
|
||
"statsListScopeAll": "当前列表: 全部 {{n}} 条",
|
||
"statsListScopeRoleOn": "当前列表: 本角色已关联 {{n}} 条",
|
||
"statsListScopeRoleOff": "当前列表: 本角色未关联 {{n}} 条",
|
||
"usingAllEnabledTools": "(使用所有已启用工具)",
|
||
"loadToolsFailed": "加载工具列表失败",
|
||
"cannotDeleteDefaultRole": "不能删除默认角色",
|
||
"usingAllTools": "使用所有工具",
|
||
"andNMore": " 等 {{count}} 个",
|
||
"toolsLabel": "工具:",
|
||
"noTools": "暂无工具",
|
||
"paginationShow": "显示 {{start}}-{{end}} / 共 {{total}} 个工具",
|
||
"paginationSearch": " (搜索: \"{{keyword}}\")",
|
||
"firstPage": "首页",
|
||
"prevPage": "上一页",
|
||
"pageOf": "第 {{page}} / {{total}} 页",
|
||
"nextPage": "下一页",
|
||
"lastPage": "末页",
|
||
"mcpDisabledBadge": "MCP已关",
|
||
"mcpDisabledBadgeTitle": "MCP 管理里该工具为关闭;勾选只表示想关联到本角色,实际调用需先在 MCP 中打开",
|
||
"roleFilterOnBanner": "以下为「已勾选、关联到本角色」的工具(与 MCP 管理里全局开/关无关)。",
|
||
"roleFilterOffBanner": "以下为「未勾选、未关联到本角色」的工具。",
|
||
"checkboxLinkTitle": "勾选表示本角色关联使用该工具"
|
||
}
|
||
}
|