diff --git a/plugins/burp-suite/cyberstrikeai-burp-extension/README.md b/plugins/burp-suite/cyberstrikeai-burp-extension/README.md index 73b7349c..be1524ed 100644 --- a/plugins/burp-suite/cyberstrikeai-burp-extension/README.md +++ b/plugins/burp-suite/cyberstrikeai-burp-extension/README.md @@ -6,7 +6,7 @@ - Configure **Host / Port / HTTPS / Password** and choose an agent mode - Click **Validate** to login (`POST /api/auth/login`) and verify token (`GET /api/auth/validate`) -- Right-click any HTTP message in Burp and send it to CyberStrikeAI for **streaming web pentest** +- Right-click any HTTP message in Burp and send it to CyberStrikeAI for **streaming web pentest** (agent modes: **Eino Single**, Deep, Plan-Execute, Supervisor — maps to `/api/eino-agent/stream` or `/api/multi-agent/stream`) - Keep a **test history sidebar** (searchable) so you can revisit previous runs - Output is split into **collapsible Progress** + **Final Response** (Markdown rendering supported) - View captured **Request / Response** for each run diff --git a/plugins/burp-suite/cyberstrikeai-burp-extension/README.zh-CN.md b/plugins/burp-suite/cyberstrikeai-burp-extension/README.zh-CN.md index e175aec7..575d55f7 100644 --- a/plugins/burp-suite/cyberstrikeai-burp-extension/README.zh-CN.md +++ b/plugins/burp-suite/cyberstrikeai-burp-extension/README.zh-CN.md @@ -10,8 +10,8 @@ - 右键任意 HTTP 请求包 → **Send to CyberStrikeAI (stream test)**: - 将该 HTTP 请求(含 headers/body;若存在响应则附带截断片段)发送到 CyberStrikeAI - 以 **SSE 流式**接收返回内容,并在标签页中实时展示 - - 单 Agent:`POST /api/agent-loop/stream` - - 多 Agent:`POST /api/multi-agent/stream`(需要服务端启用 `multi_agent.enabled: true`) + - 单 Agent:`POST /api/eino-agent/stream` + - 多 Agent:`POST /api/multi-agent/stream`(需 `multi_agent.enabled: true`,请求体 `orchestration`) - **测试历史侧边栏(可搜索)**:每次发送都会新增一条记录,方便回看与对比 - **Output 分区**:`Progress`(可折叠)+ `Final Response`(主区域) - **Markdown 渲染**:最终输出可在 Output 主区域渲染为富文本(可开关) diff --git a/plugins/burp-suite/cyberstrikeai-burp-extension/src/main/java/burp/CyberStrikeAIClient.java b/plugins/burp-suite/cyberstrikeai-burp-extension/src/main/java/burp/CyberStrikeAIClient.java index dd79d397..b288b156 100644 --- a/plugins/burp-suite/cyberstrikeai-burp-extension/src/main/java/burp/CyberStrikeAIClient.java +++ b/plugins/burp-suite/cyberstrikeai-burp-extension/src/main/java/burp/CyberStrikeAIClient.java @@ -38,7 +38,6 @@ final class CyberStrikeAIClient { } enum AgentMode { - NATIVE_REACT("Native ReAct", "/api/agent-loop/stream", null), EINO_SINGLE("Eino Single (ADK)", "/api/eino-agent/stream", null), DEEP("Deep (DeepAgent)", "/api/multi-agent/stream", "deep"), PLAN_EXECUTE("Plan-Execute", "/api/multi-agent/stream", "plan_execute"), diff --git a/plugins/burp-suite/cyberstrikeai-burp-extension/src/main/java/burp/CyberStrikeAITab.java b/plugins/burp-suite/cyberstrikeai-burp-extension/src/main/java/burp/CyberStrikeAITab.java index db1f5b86..baad02c1 100644 --- a/plugins/burp-suite/cyberstrikeai-burp-extension/src/main/java/burp/CyberStrikeAITab.java +++ b/plugins/burp-suite/cyberstrikeai-burp-extension/src/main/java/burp/CyberStrikeAITab.java @@ -16,9 +16,16 @@ final class CyberStrikeAITab implements ITab { private final JTextField portField = new JTextField("8080"); private final JCheckBox useHttpsBox = new JCheckBox("HTTPS", true); private final JPasswordField passwordField = new JPasswordField(); - private final JComboBox agentModeBox = new JComboBox<>(new String[]{ - "Native ReAct", "Eino Single (ADK)", "Deep (DeepAgent)", "Plan-Execute", "Supervisor" - }); + private final JComboBox agentModeBox = new JComboBox<>(agentModeLabels()); + private static String[] agentModeLabels() { + CyberStrikeAIClient.AgentMode[] modes = CyberStrikeAIClient.AgentMode.values(); + String[] labels = new String[modes.length]; + for (int i = 0; i < modes.length; i++) { + labels[i] = modes[i].displayName; + } + return labels; + } + private final JButton validateButton = new JButton("Validate"); private final JButton clearButton = new JButton("Clear Output"); private final JButton stopButton = new JButton("Stop"); @@ -554,7 +561,7 @@ final class CyberStrikeAITab implements ITab { int idx = agentModeBox.getSelectedIndex(); CyberStrikeAIClient.AgentMode mode = (idx >= 0 && idx < AGENT_MODES.length) ? AGENT_MODES[idx] - : CyberStrikeAIClient.AgentMode.NATIVE_REACT; + : CyberStrikeAIClient.AgentMode.EINO_SINGLE; return new CyberStrikeAIClient.Config(baseUrl, password, mode); }