mirror of
https://github.com/Ed1s0nZ/CyberStrikeAI.git
synced 2026-07-16 08:57:30 +02:00
Add files via upload
This commit is contained in:
@@ -97,7 +97,7 @@
|
||||
"agentsManagement": "Agent management",
|
||||
"roles": "Roles",
|
||||
"rolesManagement": "Roles Management",
|
||||
"workflows": "Graph Orchestration",
|
||||
"workflows": "Workflows",
|
||||
"settings": "System settings",
|
||||
"hitl": "Human-in-the-loop",
|
||||
"c2": "C2",
|
||||
@@ -3101,8 +3101,8 @@
|
||||
"roleFilterOnBanner": "These tools are checked and linked to this role (independent of MCP-wide enable).",
|
||||
"roleFilterOffBanner": "These tools are unchecked and not linked to this role.",
|
||||
"checkboxLinkTitle": "Check to link this tool to this role",
|
||||
"bindWorkflow": "Bind graph workflow",
|
||||
"bindWorkflowHint": "When a workflow is selected, conversations with this role automatically run the bound graph; workflow fields are configured freely in the graph JSON.",
|
||||
"bindWorkflow": "Bind workflow",
|
||||
"bindWorkflowHint": "When a workflow is selected, conversations with this role run it automatically; workflow fields are configured freely in the graph JSON.",
|
||||
"workflowPolicy": "Workflow trigger policy",
|
||||
"workflowPolicyAuto": "Auto trigger",
|
||||
"workflowPolicyOff": "Off",
|
||||
@@ -3110,11 +3110,11 @@
|
||||
"workflowDisabledSuffix": " (disabled)"
|
||||
},
|
||||
"workflows": {
|
||||
"title": "Graph Orchestration",
|
||||
"newGraph": "New graph",
|
||||
"processLibrary": "Process library",
|
||||
"title": "Workflows",
|
||||
"newGraph": "New workflow",
|
||||
"processLibrary": "Workflows",
|
||||
"nodeLibrary": "Node library",
|
||||
"emptyList": "No graph workflows yet",
|
||||
"emptyList": "No workflows yet",
|
||||
"statusEnabled": "Enabled",
|
||||
"statusDisabled": "Disabled",
|
||||
"metaId": "ID",
|
||||
|
||||
+14
-14
@@ -97,7 +97,7 @@
|
||||
"agentsManagement": "Agent管理",
|
||||
"roles": "角色",
|
||||
"rolesManagement": "角色管理",
|
||||
"workflows": "图编排",
|
||||
"workflows": "工作流",
|
||||
"settings": "系统设置",
|
||||
"hitl": "人机协同",
|
||||
"c2": "C2",
|
||||
@@ -3089,20 +3089,20 @@
|
||||
"roleFilterOnBanner": "以下为「已勾选、关联到本角色」的工具(与 MCP 管理里全局开/关无关)。",
|
||||
"roleFilterOffBanner": "以下为「未勾选、未关联到本角色」的工具。",
|
||||
"checkboxLinkTitle": "勾选表示本角色关联使用该工具",
|
||||
"bindWorkflow": "绑定图编排流程",
|
||||
"bindWorkflowHint": "选中流程后,对话页使用该角色会自动触发绑定图;流程字段由图定义 JSON 自由配置。",
|
||||
"workflowPolicy": "流程触发策略",
|
||||
"bindWorkflow": "绑定工作流",
|
||||
"bindWorkflowHint": "选中工作流后,对话页使用该角色会自动触发;工作流字段由图定义 JSON 自由配置。",
|
||||
"workflowPolicy": "工作流触发策略",
|
||||
"workflowPolicyAuto": "自动触发",
|
||||
"workflowPolicyOff": "关闭",
|
||||
"noWorkflowBind": "不绑定流程",
|
||||
"noWorkflowBind": "不绑定工作流",
|
||||
"workflowDisabledSuffix": "(已禁用)"
|
||||
},
|
||||
"workflows": {
|
||||
"title": "图编排",
|
||||
"newGraph": "新建图",
|
||||
"processLibrary": "流程库",
|
||||
"title": "工作流",
|
||||
"newGraph": "新建工作流",
|
||||
"processLibrary": "工作流列表",
|
||||
"nodeLibrary": "节点库",
|
||||
"emptyList": "暂无图编排流程",
|
||||
"emptyList": "暂无工作流",
|
||||
"statusEnabled": "启用",
|
||||
"statusDisabled": "禁用",
|
||||
"metaId": "ID",
|
||||
@@ -3110,19 +3110,19 @@
|
||||
"metaDescription": "描述",
|
||||
"metaEnabled": "启用",
|
||||
"metaIdHint": "创建后不可修改,用于 API 与角色绑定",
|
||||
"metaModalTitle": "流程信息",
|
||||
"metaModalTitle": "工作流信息",
|
||||
"editMeta": "编辑",
|
||||
"untitled": "未命名流程",
|
||||
"untitled": "未命名工作流",
|
||||
"toggleEnabled": "启用/禁用",
|
||||
"metaEnabledHint": "禁用后无法被角色自动触发",
|
||||
"enabledUpdated": "启用状态已更新",
|
||||
"enabledUpdateFailed": "更新启用状态失败",
|
||||
"namePlaceholder": "基础 Web 扫描",
|
||||
"descriptionPlaceholder": "可选",
|
||||
"toolbarLabel": "流程编辑工具",
|
||||
"toolbarLabel": "工作流编辑工具",
|
||||
"canvasTools": "画布工具",
|
||||
"moreActions": "更多",
|
||||
"deleteWorkflow": "删除流程",
|
||||
"deleteWorkflow": "删除工作流",
|
||||
"package": {
|
||||
"importLocal": "导入本地包",
|
||||
"export": "导出",
|
||||
@@ -3155,7 +3155,7 @@
|
||||
"overwriteCheck": "我已确认覆盖当前本地工作流",
|
||||
"overwriteConfirm": "确认覆盖并导入",
|
||||
"errors": {
|
||||
"fileRequired": "请选择本地图编排包后再预检。",
|
||||
"fileRequired": "请选择本地工作流包后再预检。",
|
||||
"fileTooLarge": "文件超过 10 MiB 限制,请选择更小的本地包。",
|
||||
"invalidArchive": "本地包不是有效的 Zip 文件,无法完成预检。",
|
||||
"unsupportedFormat": "本地包格式或版本不受支持。",
|
||||
|
||||
@@ -332,7 +332,7 @@ const responseStreamStateByProgressId = new Map();
|
||||
// 主通道当前迭代轮次缓存:progressId -> { iteration, orchestration }
|
||||
const mainIterationStateByProgressId = new Map();
|
||||
|
||||
/** 图编排多 Agent 节点切换时清空流式聚合,避免推理/输出条目覆盖上一节点内容 */
|
||||
/** 工作流多 Agent 节点切换时清空流式聚合,避免推理/输出条目覆盖上一节点内容 */
|
||||
function clearTimelineStreamStates(progressId) {
|
||||
responseStreamStateByProgressId.delete(progressId);
|
||||
thinkingStreamStateByProgressId.delete(progressId);
|
||||
@@ -1886,7 +1886,7 @@ function handleStreamEvent(event, progressElement, progressId,
|
||||
workflowNodeId: curNode,
|
||||
einoAgent: curAgent
|
||||
});
|
||||
// 主通道进入新轮次或图编排切换到新 Agent 节点后,不复用上一段的流式时间线条目
|
||||
// 主通道进入新轮次或工作流切换到新 Agent 节点后,不复用上一段的流式时间线条目
|
||||
if (prevN != null && (n < prevN || prevN !== n || (curNode && prevNode && curNode !== prevNode))) {
|
||||
clearTimelineStreamStates(progressId);
|
||||
}
|
||||
|
||||
@@ -76,7 +76,7 @@
|
||||
}
|
||||
|
||||
async function createInspection(apiFetch, file) {
|
||||
if (!file) throw new WorkflowPackageError('WFPKG_FILE_REQUIRED', '请选择本地图编排包');
|
||||
if (!file) throw new WorkflowPackageError('WFPKG_FILE_REQUIRED', '请选择本地工作流包');
|
||||
const body = new FormData();
|
||||
body.append('file', file, file.name || 'workflow.csapkg.zip');
|
||||
const response = await apiFetch('/api/workflow-package-inspections', { method: 'POST', body: body });
|
||||
|
||||
@@ -2,11 +2,11 @@ const fs = require('node:fs');
|
||||
const test = require('node:test');
|
||||
const assert = require('node:assert/strict');
|
||||
|
||||
test('图编排提供导入、导出和覆盖确认容器', () => {
|
||||
test('工作流提供导入、导出和覆盖确认容器', () => {
|
||||
const html = fs.readFileSync('web/templates/index.html', 'utf8');
|
||||
const zh = JSON.parse(fs.readFileSync('web/static/i18n/zh-CN.json', 'utf8'));
|
||||
assert.match(html, /onclick="openWorkflowPackageImportModal\(\)"/);
|
||||
assert.match(html, /onclick="exportCurrentWorkflowPackage\(\)"/);
|
||||
assert.match(html, /onclick="[^"]*exportCurrentWorkflowPackage\(\)"/);
|
||||
assert.match(html, /id="workflow-package-import-modal"/);
|
||||
assert.match(html, /id="workflow-package-overwrite-modal"/);
|
||||
assert.equal(zh.workflows.package.importLocal, '导入本地包');
|
||||
|
||||
Reference in New Issue
Block a user