使用说明
██╗ █████╗ ███╗ ██╗ ██████╗ ██████╗ ██████╗ █████╗ ██████╗ ██╗ ██╗
██║ ██╔══██╗████╗ ██║██╔════╝ ██╔════╝ ██╔══██╗██╔══██╗██╔══██╗██║ ██║
██║ ███████║██╔██╗ ██║██║ ███╗██║ ███╗██████╔╝███████║██████╔╝███████║
██║ ██╔══██║██║╚██╗██║██║ ██║██║ ██║██╔══██╗██╔══██║██╔═══╝ ██╔══██║
███████╗██║ ██║██║ ╚████║╚██████╔╝╚██████╔╝██║ ██║██║ ██║██║ ██║ ██║
╚══════╝╚═╝ ╚═╝╚═╝ ╚═══╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝
███╗ ███╗ ██████╗██████╗ █████╗ ██████╗ ███████╗███╗ ██╗████████╗
████╗ ████║██╔════╝██╔══██╗ ██╔══██╗██╔════╝ ██╔════╝████╗ ██║╚══██╔══╝
██╔████╔██║██║ ██████╔╝ ███████║██║ ███╗█████╗ ██╔██╗ ██║ ██║
██║╚██╔╝██║██║ ██╔═══╝ ██╔══██║██║ ██║██╔══╝ ██║╚██╗██║ ██║
██║ ╚═╝ ██║╚██████╗██║ ██║ ██║╚██████╔╝███████╗██║ ╚████║ ██║
╚═╝ ╚═╝ ╚═════╝╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═══╝ ╚═╝
🤖 使用LangGraph和MCP的自主安全代理
用于安全操作、代码分析和Mantis防御集成的多代理系统
🏗️ 建筑
graph TD
A[User Input] --> B[LangGraph Orchestrator]
B --> C[Code Analysis Agent]
B --> D[Knowledge Agent]
B --> E[Mantis Defense Agent]
B --> F[Red Team Agent]
B --> G[Research Agent]
C --> H[MCP Tool Layer]
D --> H
E --> H
F --> H
G --> H
H --> I[Mantis MCP Server]
H --> J[Memory MCP Server]
H --> K[Learning Loop MCP]
I --> L[Security Operations]
J --> L
K --> L
style B fill:#f9f,stroke:#333,stroke-width:4px
style H fill:#bbf,stroke:#333,stroke-width:2px
style L fill:#bfb,stroke:#333,stroke-width:2px
多代理系统 通过LangGraph编排、MCP工具集成和持久状态管理。
🌟 特性
专业安全代理
- 🔍 代码分析代理 -静态分析、漏洞检测、安全模式
- 🧠 知识代理 -内存持久性、上下文检索、模式匹配
- 🛡️ Mantis集成代理 -防御快速注射,LLM攻击检测
- ⚔️ 红队特工 -自动化渗透测试、攻击模拟
- 🔬 研究代理 -威胁情报、CVE分析、安全研究
- 🔄 工作流代理 -多代理编排、任务协调
MCP集成
- 模型上下文协议 -Claude和其他LLM的统一工具界面
- 实时通信 -WebSocket和HTTP流媒体支持
- 状态管理 -跨会话的持久对话上下文
- 工具链 -多步骤自动化工作流程
LangGraph功能
- 可视化调试 -用于图形可视化的LangGraph Studio集成
- 州检查站 -暂停、恢复和重放代理执行
- 循环中的人类 -敏感操作的交互式审批门
- 并行执行 -并行代理处理以提高性能
入门指南
- 安装依赖项,以及 LangGraph 界面,它将用于运行服务器。
cd path/to/your/app
pip install -e . "langgraph-cli[inmem]"
- (可选)根据需要自定义代码和项目。创建一个
.env如果你需要使用机密文件。
cp .env.example .env
如果要启用LangSmith跟踪,请将LangSmith API密钥添加到 .env 文件。
# .env
LANGSMITH_API_KEY=lsv2...
- 启动LangGraph服务器。
langgraph dev
有关开始使用LangGraph Server的更多信息, 看这里.
如何自定义
-
定义运行时上下文:修改
Context类在graph.py文件,以显示每个助手要配置的参数。例如,在聊天机器人应用程序中,您可能希望定义要使用的动态系统提示或LLM。有关LangGraph中运行时上下文的更多信息, 看这里. -
扩展图形:应用程序的核心逻辑在 graph.py。您可以修改此文件以添加新节点、边或更改信息流。
发展
在LangGraph Studio中迭代图形时,您可以编辑过去的状态,并从以前的状态重新运行应用程序以调试特定节点。本地更改将通过热重新加载自动应用。
后续请求扩展了相同的线程。您可以使用以下命令创建一个全新的线程,清除以前的历史记录 + 右上角的按钮。
有关更高级的功能和示例,请参阅 LangGraph文档这些资源可以帮助您根据特定用例调整此模板,并构建更复杂的会话代理。
LangGraph Studio还与 朗史密斯 用于更深入的跟踪和与队友的协作,使您能够分析和优化聊天机器人的性能。