标签 Multi-Agent 下的文章

重塑传统自动化漏洞挖掘的Multi-Agent框架攻防一体化实践

前段时间在某大厂做安全研究时,针对SDLC的重复性审计工作结合大模型Agent思索了一些可行的思路,便在不断摸索中构建了一个Multi-Agent的协同漏洞挖掘框架系统,目前个人使用来看对于开源的web应用的实战效果相比传统的SAST、DAST以及纯LLM的漏洞挖掘工具来说还是很不错的,便记录此篇框架实现过程和当今Agent赋能漏挖的可行性与优势供师傅们交流指点....

0x00 传统漏洞挖掘的困局

当前针对Web应用后端的自动化漏洞挖掘技术主要受困于“覆盖率”与“准确性”难以两全的矛盾:

  • 传统的静态分析技术虽能提供全量的代码覆盖,但由于缺乏对程序运行时状态和复杂业务逻辑的语义理解,往往导致海量的误报噪声,极大地增加了安全工程师的审计成本
  • 而动态应用程序安全测试虽能在黑盒方面挖掘漏洞更具真实性,却受限于黑盒视角的路径探索能力,难以触及深层业务逻辑,会存在很多漏报
  • 目前大语言模型的出现为代码语义分析带来了新的契机,但受限于Context Window 的约束以及生成式模型固有的幻觉问题,直接依赖原生LLM进行大规模代码审计往往导致分析结果碎片化且缺乏可信度,并且直接将代码喂给大模型容易受与漏洞无关代码的影响

0x01 探索漏洞挖掘框架的新出路?

在探索新的框架实现时,我们可以思考是否能将黑白盒的现有技术互补结合来引导漏洞挖掘?以及我们可以看到几年LLM与Agent相关技术如MCP、RAG的工程化落地,能否用LLM赋于框架更好的语义理解和丰富的上下文能力,再通过Agent做一套自动化流程?

为突破上述技术瓶颈,我在探索新的漏洞挖掘框架时也看了一些目前学术界的相关LLM赋能的研究与github开源的技术实现,总体的探索方法还是在论文与现实实践中思考各个方面的优势与缺陷,最终确定做一个基于Muti-Agent协同的智能化漏洞挖掘框架:构建一个从静态分析到动态验证的闭环生态。技术上引入MCP 来作为连接LLM推理能力与静态分析工具的桥梁,利用RAG 技术通过构建高质量漏洞专家知识库来校准模型判定,深度缓解LLM的“幻觉”与知识盲区;同时,结合运行时自动化的流量Fuzz模糊测试技术,将白盒的逻辑推演与黑盒的攻击验证深度融合,减少漏洞的误报和漏报。

这里放一个当时挖到的有CNVD证书的水洞,通过项目上传与聊天,自动化分析审计出多处SQL注入漏洞,并且能够给出攻击POC,以及后续完整的修复方案

image.png

0x02 框架核心:打破黑白盒壁垒

该框架核心架构旨在重构传统安全检测的边界,提出了一种 “白盒语义指引黑盒,黑盒动态验证白盒”的深度融合范式。框架并非单一工具的线性叠加,而是一个基于Multi-Agent编排(Agent Orchestration)的异构系统。

  • 白盒分析维度:框架引入了MCP作为智能体的执行接口,驱动底层的静态分析工具与正则匹配引擎,对代码AST进行初步扫描,快速锚定潜在的危险函数调用Sink。为解决静态分析中常见的上下文缺失问题,进一步融合了RAG 技术:通过引入高质量的博客记录的高精度漏洞知识库,系统能够为大语言模型提供特定漏洞类型的完备的Context上下文与判定依据,从而在保持高代码覆盖率的同时,抑制传统模式匹配带来的误报,实现了从“语法”到“语义”的代码的全面理解提升。
  • 黑盒验证维度:框架构建了运行时的自动化Fuzz模糊测试。该模块独立承担着对Web通用漏洞(如XSS、SQL注入)及敏感信息泄露的覆盖任务。当白盒Agent发现疑似逻辑漏洞时,通过黑盒上的Fuzz可在流量侧生成针对性的变异Payload进行动态优化,通过分析HTTP响应状态来实证漏洞的可利用性。

我认为将静态视角的逻辑推演与动态视角的攻击验证相结合的机制,能极大地提升了漏洞检测的置信度,实现了真正意义上的全链路攻防评估,刚开始时候画的大致架构草图,仅贴示了主要功能,一些细节实现并未展示:

image.png

0x03 智能化Agent设计细节

1. Static Orchestration Agent:基于MCP协议的异构工具编排

在传统的LLM应用中,模型往往被禁锢在文本交互的孤岛中,难以触及本地庞大的代码仓库,且面临着Context Window对海量代码理解的限制。本框架设计的漏洞定位Agent,本质上是一个 静态分析增强型智能体(Static Orchestration Agen) ,通过引入MCP与构建Prompt定义角色任务将LLM从被动的文本生成者转变为主动的工具使用者,通过静态分析获取代码结构中的丰富语义上下文

MCP驱动的“深层感知”

不同于简单的API调用,MCP协议使得Agent能够理解工具的输入输出Schema,实现复杂的推理链条:

  • 工具与模型的语义对齐:通过定义标准化的MCP接口,将底层的静态代码分析工具封装为LLM可调用的能力。
  • 意图驱动的执行:构造合适的CoT思维链Prompt让Agent根据当前的分析任务代码(例如“寻找未授权访问漏洞”),自主决策调用何种工具、传入何种参数。这可以让Agent模拟安全专家的思维过程,主动去探测代码中的漏洞点。

SINK点定位与攻击面收敛

针对LLM处理大规模代码时的“大海捞针”难题,高效定位漏洞利用链

  • SINK点精准锚定:Agent并不直接阅读全量代码,而是利用MCP驱动底层扫描器,基于AST解析和高精度的正则模式,快速提取代码中的SINK点(需要根据不同语言类型的不同漏洞进行扩充分类)

image.png

  • 代码切片与上下文聚焦:一旦定位到SINK点,系统会通过静态分析工具获取sink点污染的上下文Code Slice,并且做到变量语句级,将无关语句统统移除(这里详细的实现师傅们可以去阅读Joern等工具的源码和他的论文,主要在于CPG代码属性图的构建和后向切片等算法技术)。极大地收敛了分析范围,过滤大量无关业务代码,确保输送给LLM进行深度研判的每一行代码都具有潜在的安全价值(无论是控制流还是数据依赖流都对漏洞的存在有潜在的约束和影响)。这不仅大幅降低了Token消耗,更显著提升了后续漏洞验证的准确性。

2. Contextual Reasoning Agent:基于RAG的领域知识增强与检索优化

作为本框架保障检测精度的核心组件,校验 Contextual Reasoning Agent承担着“校验”的角色。针对通用大语言模型在特定安全领域存在的专业知识匮乏逻辑幻觉 问题,本模块引入RAG 技术,人为构建了一个可随时扩展的领域专家知识文档库,通过实时注入精确的先验知识来约束和校准模型的推理过程。

RAG知识库的结构化重构与向量化

为了让非结构化的安全知识能够被机器高效理解,摒弃粗暴的文本截断,采用基于Markdown语法树的结构化清洗策略。系统依据标题层级对海量的漏洞PoC、修复方案及原理分析文档进行逻辑切分,确保每个Chunk都包含完整的语义单元

例如一个简易的MARKDOWN文档:

image.png

动态滑窗与重叠分块策略

在知识切片过程中,为了规避硬切分导致的语义断层,切片策略采用基于重叠策略(Overlapping Strategy)的动态滑窗机制

  • 语义连贯性保障:设定固定的Token阈值作为基础窗口大小,同时引入预设比例的重叠缓冲区。每一分块的末尾段落会被完整保留并作为下一分块的起始上下文。
  • 边界信息无损传输:这种机制确保了跨越分块边界的逻辑描述(如一段跨越多行的代码逻辑或长难句的漏洞解释)不会被割裂,保证了向量检索时上下文信息的完整性与连贯性。

image.png

向量检索与推理运行

采用all-MiniLM-L6-v2模型作为Embedding引擎。该模型在保持低延迟推理的同时,在多语言的语义相似度任务上有更好的泛化能力;数据库采用集成Qdrant向量数据库,支撑大规模向量的高并发检索

  • 上下文感知的推理校准:当定位Agent上报疑似SINK点时,校验Agent会提取当前代码特征,在向量库中实时检索最相似的Top-K个历史漏洞模式和修复示例。这些检索结果被作为增强上下文 注入到LLM的Prompt中,迫使模型基于检索到的“事实依据”而非单纯的概率预测进行最终判定,减少了误报的产生

0x04 动态流量FUZZ

我从以往的安全研究触发,针对通用型漏洞的工具做了大量的调研,并基于BurpSuite原生API开发了自动化Fuzz工具如:反射性和存储型XSS、SSRF、CORS、敏感信息泄露等(同时也是在锻炼开发能力,也让日常重复性漏洞渗透工作能够做的更高效),再结合MCP集成给Agent。该模块并非简单的随机测试,而是作为一个流式检测组件,实时拦截、解析并重放业务流量,对潜在漏洞动态扫描。而对于敏感信息泄露则是比较容易 ,针对Spring Boot Actuator、Swagger UI、Druid Monitor等常见中间件的指纹来做识别。同时,结合模式匹配,对响应包中的JWT Token、阿里云AK/SK、AWS凭证等高熵字符串进行实时监测,有效发现硬编码或调试信息泄露。

下面挑了几个通用型漏洞的Fuzz来做简单做下原理解释

1. 通用XSS漏洞的自动化Fuzz

比如针对XSS反射型和存储型漏洞,开发时采用了全量参数解析+动态污点标记的检测策略,确保对异构http包结构中参数的全面覆盖。

  • 深度参数提取与结构化解析
    不仅仅局限于URL Query参数,还有针对JSON、XML、Multipart-form等多种数据格式的解析器。能够递归遍历HTTP Request Body中的每一层嵌套结构,提取所有用户可控的叶子节点作为Fuzz入口。
  • 唯一性污点标记
    为了解决并发扫描时的结果混淆问题,引擎摒弃了静态Payload,转而采用动态生成的唯一性测试标记


    • Payload构造:Timestamp + RandomStr + Vector(例如:CurrentTime等高熵字符串)
    • 状态映射表:内存中维护一张高并发的HashMap,记录RequestID <-> ParameterName <-> UniquePayload的映射关系。
    • 响应回显与验证
      发送测试请求后,引擎自动捕获HTTP Response,通过高效的字符串匹配算法检索之前的唯一标记。一旦检测到标记回显且上下文未经过滤(如HTML实体编码缺失),即判定存在可疑XSS漏洞,并自动关联原始请求数据生成漏洞条目。

(当时研究设计思路时绘制的草图)

image.png

2. 访问控制与配置缺陷的CORS漏洞检测

自动化Fuzz HTTP请求头中的Origin字段,构造包括恶意第三方域名、特殊字符(如null)及子域名在内的多种变异Payload

  • 高危利用判定:当响应头Access-Control-Allow-Origin和攻击者Payload一样或为小写null,且同时存在Access-Control-Allow-Credentials: true时,将其标记为高危漏洞。此类配置允许攻击者绕过同源策略(SOP)窃取用户敏感数据
  • 严格语法校验:针对协议规范的边缘场景进行校验,例如检测到Access-Control-Allow-Origin: Null(大写)时,引擎会自动识别其为无效配置(浏览器不识别大写Null),从而将其作为无效处理
    以及服务端错误配置导致Access-Control-Allow-Origin始终和Origin一样,这里放一张示例图便于理解:

image.png

0x05 构建认知型安全智能体的未来图景

在对Multi-Agent探索自动化漏洞挖掘实践的探索过程中,其实我们一直在试图回答一个核心问题:如何在安全攻防领域,构建一个具备“感知-推理-决策-行动”完整闭环的智能系统。目前的Agent主要还停留在“检测与验证”阶段,之后更完备的阶段是自动化环境的感知探索与白盒源码的结合,以及能够基于当前的Shell环境或数据库权限,自主规划后续的横向移动与权限提升路径。另一个重要的方面是自适应Payload生成:比如利用强化学习反馈机制,让Agent在面对WAF拦截时,能够动态调整Payload的混淆策略,实现智能化的WAF绕过

希望本文的实践能为各位师傅提供一种新的视角供师傅们交流指点~

重塑传统自动化漏洞挖掘的Multi-Agent框架攻防一体化实践

前段时间在某大厂做安全研究时,针对SDLC的重复性审计工作结合大模型Agent思索了一些可行的思路,便在不断摸索中构建了一个Multi-Agent的协同漏洞挖掘框架系统,目前个人使用来看对于开源的web应用的实战效果相比传统的SAST、DAST以及纯LLM的漏洞挖掘工具来说还是很不错的,便记录此篇框架实现过程和当今Agent赋能漏挖的可行性与优势供师傅们交流指点....

0x00 传统漏洞挖掘的困局

当前针对Web应用后端的自动化漏洞挖掘技术主要受困于“覆盖率”与“准确性”难以两全的矛盾:

  • 传统的静态分析技术虽能提供全量的代码覆盖,但由于缺乏对程序运行时状态和复杂业务逻辑的语义理解,往往导致海量的误报噪声,极大地增加了安全工程师的审计成本
  • 而动态应用程序安全测试虽能在黑盒方面挖掘漏洞更具真实性,却受限于黑盒视角的路径探索能力,难以触及深层业务逻辑,会存在很多漏报
  • 目前大语言模型的出现为代码语义分析带来了新的契机,但受限于Context Window 的约束以及生成式模型固有的幻觉问题,直接依赖原生LLM进行大规模代码审计往往导致分析结果碎片化且缺乏可信度,并且直接将代码喂给大模型容易受与漏洞无关代码的影响

0x01 探索漏洞挖掘框架的新出路?

在探索新的框架实现时,我们可以思考是否能将黑白盒的现有技术互补结合来引导漏洞挖掘?以及我们可以看到几年LLM与Agent相关技术如MCP、RAG的工程化落地,能否用LLM赋于框架更好的语义理解和丰富的上下文能力,再通过Agent做一套自动化流程?

为突破上述技术瓶颈,我在探索新的漏洞挖掘框架时也看了一些目前学术界的相关LLM赋能的研究与github开源的技术实现,总体的探索方法还是在论文与现实实践中思考各个方面的优势与缺陷,最终确定做一个基于Muti-Agent协同的智能化漏洞挖掘框架:构建一个从静态分析到动态验证的闭环生态。技术上引入MCP 来作为连接LLM推理能力与静态分析工具的桥梁,利用RAG 技术通过构建高质量漏洞专家知识库来校准模型判定,深度缓解LLM的“幻觉”与知识盲区;同时,结合运行时自动化的流量Fuzz模糊测试技术,将白盒的逻辑推演与黑盒的攻击验证深度融合,减少漏洞的误报和漏报。

这里放一个当时挖到的有CNVD证书的水洞,通过项目上传与聊天,自动化分析审计出多处SQL注入漏洞,并且能够给出攻击POC,以及后续完整的修复方案

image.png

0x02 框架核心:打破黑白盒壁垒

该框架核心架构旨在重构传统安全检测的边界,提出了一种 “白盒语义指引黑盒,黑盒动态验证白盒”的深度融合范式。框架并非单一工具的线性叠加,而是一个基于Multi-Agent编排(Agent Orchestration)的异构系统。

  • 白盒分析维度:框架引入了MCP作为智能体的执行接口,驱动底层的静态分析工具与正则匹配引擎,对代码AST进行初步扫描,快速锚定潜在的危险函数调用Sink。为解决静态分析中常见的上下文缺失问题,进一步融合了RAG 技术:通过引入高质量的博客记录的高精度漏洞知识库,系统能够为大语言模型提供特定漏洞类型的完备的Context上下文与判定依据,从而在保持高代码覆盖率的同时,抑制传统模式匹配带来的误报,实现了从“语法”到“语义”的代码的全面理解提升。
  • 黑盒验证维度:框架构建了运行时的自动化Fuzz模糊测试。该模块独立承担着对Web通用漏洞(如XSS、SQL注入)及敏感信息泄露的覆盖任务。当白盒Agent发现疑似逻辑漏洞时,通过黑盒上的Fuzz可在流量侧生成针对性的变异Payload进行动态优化,通过分析HTTP响应状态来实证漏洞的可利用性。

我认为将静态视角的逻辑推演与动态视角的攻击验证相结合的机制,能极大地提升了漏洞检测的置信度,实现了真正意义上的全链路攻防评估,刚开始时候画的大致架构草图,仅贴示了主要功能,一些细节实现并未展示:

image.png

0x03 智能化Agent设计细节

1. Static Orchestration Agent:基于MCP协议的异构工具编排

在传统的LLM应用中,模型往往被禁锢在文本交互的孤岛中,难以触及本地庞大的代码仓库,且面临着Context Window对海量代码理解的限制。本框架设计的漏洞定位Agent,本质上是一个 静态分析增强型智能体(Static Orchestration Agen) ,通过引入MCP与构建Prompt定义角色任务将LLM从被动的文本生成者转变为主动的工具使用者,通过静态分析获取代码结构中的丰富语义上下文

MCP驱动的“深层感知”

不同于简单的API调用,MCP协议使得Agent能够理解工具的输入输出Schema,实现复杂的推理链条:

  • 工具与模型的语义对齐:通过定义标准化的MCP接口,将底层的静态代码分析工具封装为LLM可调用的能力。
  • 意图驱动的执行:构造合适的CoT思维链Prompt让Agent根据当前的分析任务代码(例如“寻找未授权访问漏洞”),自主决策调用何种工具、传入何种参数。这可以让Agent模拟安全专家的思维过程,主动去探测代码中的漏洞点。

SINK点定位与攻击面收敛

针对LLM处理大规模代码时的“大海捞针”难题,高效定位漏洞利用链

  • SINK点精准锚定:Agent并不直接阅读全量代码,而是利用MCP驱动底层扫描器,基于AST解析和高精度的正则模式,快速提取代码中的SINK点(需要根据不同语言类型的不同漏洞进行扩充分类)

image.png

  • 代码切片与上下文聚焦:一旦定位到SINK点,系统会通过静态分析工具获取sink点污染的上下文Code Slice,并且做到变量语句级,将无关语句统统移除(这里详细的实现师傅们可以去阅读Joern等工具的源码和他的论文,主要在于CPG代码属性图的构建和后向切片等算法技术)。极大地收敛了分析范围,过滤大量无关业务代码,确保输送给LLM进行深度研判的每一行代码都具有潜在的安全价值(无论是控制流还是数据依赖流都对漏洞的存在有潜在的约束和影响)。这不仅大幅降低了Token消耗,更显著提升了后续漏洞验证的准确性。

2. Contextual Reasoning Agent:基于RAG的领域知识增强与检索优化

作为本框架保障检测精度的核心组件,校验 Contextual Reasoning Agent承担着“校验”的角色。针对通用大语言模型在特定安全领域存在的专业知识匮乏逻辑幻觉 问题,本模块引入RAG 技术,人为构建了一个可随时扩展的领域专家知识文档库,通过实时注入精确的先验知识来约束和校准模型的推理过程。

RAG知识库的结构化重构与向量化

为了让非结构化的安全知识能够被机器高效理解,摒弃粗暴的文本截断,采用基于Markdown语法树的结构化清洗策略。系统依据标题层级对海量的漏洞PoC、修复方案及原理分析文档进行逻辑切分,确保每个Chunk都包含完整的语义单元

例如一个简易的MARKDOWN文档:

image.png

动态滑窗与重叠分块策略

在知识切片过程中,为了规避硬切分导致的语义断层,切片策略采用基于重叠策略(Overlapping Strategy)的动态滑窗机制

  • 语义连贯性保障:设定固定的Token阈值作为基础窗口大小,同时引入预设比例的重叠缓冲区。每一分块的末尾段落会被完整保留并作为下一分块的起始上下文。
  • 边界信息无损传输:这种机制确保了跨越分块边界的逻辑描述(如一段跨越多行的代码逻辑或长难句的漏洞解释)不会被割裂,保证了向量检索时上下文信息的完整性与连贯性。

image.png

向量检索与推理运行

采用all-MiniLM-L6-v2模型作为Embedding引擎。该模型在保持低延迟推理的同时,在多语言的语义相似度任务上有更好的泛化能力;数据库采用集成Qdrant向量数据库,支撑大规模向量的高并发检索

  • 上下文感知的推理校准:当定位Agent上报疑似SINK点时,校验Agent会提取当前代码特征,在向量库中实时检索最相似的Top-K个历史漏洞模式和修复示例。这些检索结果被作为增强上下文 注入到LLM的Prompt中,迫使模型基于检索到的“事实依据”而非单纯的概率预测进行最终判定,减少了误报的产生

0x04 动态流量FUZZ

我从以往的安全研究触发,针对通用型漏洞的工具做了大量的调研,并基于BurpSuite原生API开发了自动化Fuzz工具如:反射性和存储型XSS、SSRF、CORS、敏感信息泄露等(同时也是在锻炼开发能力,也让日常重复性漏洞渗透工作能够做的更高效),再结合MCP集成给Agent。该模块并非简单的随机测试,而是作为一个流式检测组件,实时拦截、解析并重放业务流量,对潜在漏洞动态扫描。而对于敏感信息泄露则是比较容易 ,针对Spring Boot Actuator、Swagger UI、Druid Monitor等常见中间件的指纹来做识别。同时,结合模式匹配,对响应包中的JWT Token、阿里云AK/SK、AWS凭证等高熵字符串进行实时监测,有效发现硬编码或调试信息泄露。

下面挑了几个通用型漏洞的Fuzz来做简单做下原理解释

1. 通用XSS漏洞的自动化Fuzz

比如针对XSS反射型和存储型漏洞,开发时采用了全量参数解析+动态污点标记的检测策略,确保对异构http包结构中参数的全面覆盖。

  • 深度参数提取与结构化解析
    不仅仅局限于URL Query参数,还有针对JSON、XML、Multipart-form等多种数据格式的解析器。能够递归遍历HTTP Request Body中的每一层嵌套结构,提取所有用户可控的叶子节点作为Fuzz入口。
  • 唯一性污点标记
    为了解决并发扫描时的结果混淆问题,引擎摒弃了静态Payload,转而采用动态生成的唯一性测试标记


    • Payload构造:Timestamp + RandomStr + Vector(例如:CurrentTime等高熵字符串)
    • 状态映射表:内存中维护一张高并发的HashMap,记录RequestID <-> ParameterName <-> UniquePayload的映射关系。
    • 响应回显与验证
      发送测试请求后,引擎自动捕获HTTP Response,通过高效的字符串匹配算法检索之前的唯一标记。一旦检测到标记回显且上下文未经过滤(如HTML实体编码缺失),即判定存在可疑XSS漏洞,并自动关联原始请求数据生成漏洞条目。

(当时研究设计思路时绘制的草图)

image.png

2. 访问控制与配置缺陷的CORS漏洞检测

自动化Fuzz HTTP请求头中的Origin字段,构造包括恶意第三方域名、特殊字符(如null)及子域名在内的多种变异Payload

  • 高危利用判定:当响应头Access-Control-Allow-Origin和攻击者Payload一样或为小写null,且同时存在Access-Control-Allow-Credentials: true时,将其标记为高危漏洞。此类配置允许攻击者绕过同源策略(SOP)窃取用户敏感数据
  • 严格语法校验:针对协议规范的边缘场景进行校验,例如检测到Access-Control-Allow-Origin: Null(大写)时,引擎会自动识别其为无效配置(浏览器不识别大写Null),从而将其作为无效处理
    以及服务端错误配置导致Access-Control-Allow-Origin始终和Origin一样,这里放一张示例图便于理解:

image.png

0x05 构建认知型安全智能体的未来图景

在对Multi-Agent探索自动化漏洞挖掘实践的探索过程中,其实我们一直在试图回答一个核心问题:如何在安全攻防领域,构建一个具备“感知-推理-决策-行动”完整闭环的智能系统。目前的Agent主要还停留在“检测与验证”阶段,之后更完备的阶段是自动化环境的感知探索与白盒源码的结合,以及能够基于当前的Shell环境或数据库权限,自主规划后续的横向移动与权限提升路径。另一个重要的方面是自适应Payload生成:比如利用强化学习反馈机制,让Agent在面对WAF拦截时,能够动态调整Payload的混淆策略,实现智能化的WAF绕过

希望本文的实践能为各位师傅提供一种新的视角供师傅们交流指点~

重塑传统自动化漏洞挖掘的Multi-Agent框架攻防一体化实践

前段时间在某大厂做安全研究时,针对SDLC的重复性审计工作结合大模型Agent思索了一些可行的思路,便在不断摸索中构建了一个Multi-Agent的协同漏洞挖掘框架系统,目前个人使用来看对于开源的web应用的实战效果相比传统的SAST、DAST以及纯LLM的漏洞挖掘工具来说还是很不错的,便记录此篇框架实现过程和当今Agent赋能漏挖的可行性与优势供师傅们交流指点....

0x00 传统漏洞挖掘的困局

当前针对Web应用后端的自动化漏洞挖掘技术主要受困于“覆盖率”与“准确性”难以两全的矛盾:

  • 传统的静态分析技术虽能提供全量的代码覆盖,但由于缺乏对程序运行时状态和复杂业务逻辑的语义理解,往往导致海量的误报噪声,极大地增加了安全工程师的审计成本
  • 而动态应用程序安全测试虽能在黑盒方面挖掘漏洞更具真实性,却受限于黑盒视角的路径探索能力,难以触及深层业务逻辑,会存在很多漏报
  • 目前大语言模型的出现为代码语义分析带来了新的契机,但受限于Context Window 的约束以及生成式模型固有的幻觉问题,直接依赖原生LLM进行大规模代码审计往往导致分析结果碎片化且缺乏可信度,并且直接将代码喂给大模型容易受与漏洞无关代码的影响

0x01 探索漏洞挖掘框架的新出路?

在探索新的框架实现时,我们可以思考是否能将黑白盒的现有技术互补结合来引导漏洞挖掘?以及我们可以看到几年LLM与Agent相关技术如MCP、RAG的工程化落地,能否用LLM赋于框架更好的语义理解和丰富的上下文能力,再通过Agent做一套自动化流程?

为突破上述技术瓶颈,我在探索新的漏洞挖掘框架时也看了一些目前学术界的相关LLM赋能的研究与github开源的技术实现,总体的探索方法还是在论文与现实实践中思考各个方面的优势与缺陷,最终确定做一个基于Muti-Agent协同的智能化漏洞挖掘框架:构建一个从静态分析到动态验证的闭环生态。技术上引入MCP 来作为连接LLM推理能力与静态分析工具的桥梁,利用RAG 技术通过构建高质量漏洞专家知识库来校准模型判定,深度缓解LLM的“幻觉”与知识盲区;同时,结合运行时自动化的流量Fuzz模糊测试技术,将白盒的逻辑推演与黑盒的攻击验证深度融合,减少漏洞的误报和漏报。

这里放一个当时挖到的有CNVD证书的水洞,通过项目上传与聊天,自动化分析审计出多处SQL注入漏洞,并且能够给出攻击POC,以及后续完整的修复方案

image.png

0x02 框架核心:打破黑白盒壁垒

该框架核心架构旨在重构传统安全检测的边界,提出了一种 “白盒语义指引黑盒,黑盒动态验证白盒”的深度融合范式。框架并非单一工具的线性叠加,而是一个基于Multi-Agent编排(Agent Orchestration)的异构系统。

  • 白盒分析维度:框架引入了MCP作为智能体的执行接口,驱动底层的静态分析工具与正则匹配引擎,对代码AST进行初步扫描,快速锚定潜在的危险函数调用Sink。为解决静态分析中常见的上下文缺失问题,进一步融合了RAG 技术:通过引入高质量的博客记录的高精度漏洞知识库,系统能够为大语言模型提供特定漏洞类型的完备的Context上下文与判定依据,从而在保持高代码覆盖率的同时,抑制传统模式匹配带来的误报,实现了从“语法”到“语义”的代码的全面理解提升。
  • 黑盒验证维度:框架构建了运行时的自动化Fuzz模糊测试。该模块独立承担着对Web通用漏洞(如XSS、SQL注入)及敏感信息泄露的覆盖任务。当白盒Agent发现疑似逻辑漏洞时,通过黑盒上的Fuzz可在流量侧生成针对性的变异Payload进行动态优化,通过分析HTTP响应状态来实证漏洞的可利用性。

我认为将静态视角的逻辑推演与动态视角的攻击验证相结合的机制,能极大地提升了漏洞检测的置信度,实现了真正意义上的全链路攻防评估,刚开始时候画的大致架构草图,仅贴示了主要功能,一些细节实现并未展示:

image.png

0x03 智能化Agent设计细节

1. Static Orchestration Agent:基于MCP协议的异构工具编排

在传统的LLM应用中,模型往往被禁锢在文本交互的孤岛中,难以触及本地庞大的代码仓库,且面临着Context Window对海量代码理解的限制。本框架设计的漏洞定位Agent,本质上是一个 静态分析增强型智能体(Static Orchestration Agen) ,通过引入MCP与构建Prompt定义角色任务将LLM从被动的文本生成者转变为主动的工具使用者,通过静态分析获取代码结构中的丰富语义上下文

MCP驱动的“深层感知”

不同于简单的API调用,MCP协议使得Agent能够理解工具的输入输出Schema,实现复杂的推理链条:

  • 工具与模型的语义对齐:通过定义标准化的MCP接口,将底层的静态代码分析工具封装为LLM可调用的能力。
  • 意图驱动的执行:构造合适的CoT思维链Prompt让Agent根据当前的分析任务代码(例如“寻找未授权访问漏洞”),自主决策调用何种工具、传入何种参数。这可以让Agent模拟安全专家的思维过程,主动去探测代码中的漏洞点。

SINK点定位与攻击面收敛

针对LLM处理大规模代码时的“大海捞针”难题,高效定位漏洞利用链

  • SINK点精准锚定:Agent并不直接阅读全量代码,而是利用MCP驱动底层扫描器,基于AST解析和高精度的正则模式,快速提取代码中的SINK点(需要根据不同语言类型的不同漏洞进行扩充分类)

image.png

  • 代码切片与上下文聚焦:一旦定位到SINK点,系统会通过静态分析工具获取sink点污染的上下文Code Slice,并且做到变量语句级,将无关语句统统移除(这里详细的实现师傅们可以去阅读Joern等工具的源码和他的论文,主要在于CPG代码属性图的构建和后向切片等算法技术)。极大地收敛了分析范围,过滤大量无关业务代码,确保输送给LLM进行深度研判的每一行代码都具有潜在的安全价值(无论是控制流还是数据依赖流都对漏洞的存在有潜在的约束和影响)。这不仅大幅降低了Token消耗,更显著提升了后续漏洞验证的准确性。

2. Contextual Reasoning Agent:基于RAG的领域知识增强与检索优化

作为本框架保障检测精度的核心组件,校验 Contextual Reasoning Agent承担着“校验”的角色。针对通用大语言模型在特定安全领域存在的专业知识匮乏逻辑幻觉 问题,本模块引入RAG 技术,人为构建了一个可随时扩展的领域专家知识文档库,通过实时注入精确的先验知识来约束和校准模型的推理过程。

RAG知识库的结构化重构与向量化

为了让非结构化的安全知识能够被机器高效理解,摒弃粗暴的文本截断,采用基于Markdown语法树的结构化清洗策略。系统依据标题层级对海量的漏洞PoC、修复方案及原理分析文档进行逻辑切分,确保每个Chunk都包含完整的语义单元

例如一个简易的MARKDOWN文档:

image.png

动态滑窗与重叠分块策略

在知识切片过程中,为了规避硬切分导致的语义断层,切片策略采用基于重叠策略(Overlapping Strategy)的动态滑窗机制

  • 语义连贯性保障:设定固定的Token阈值作为基础窗口大小,同时引入预设比例的重叠缓冲区。每一分块的末尾段落会被完整保留并作为下一分块的起始上下文。
  • 边界信息无损传输:这种机制确保了跨越分块边界的逻辑描述(如一段跨越多行的代码逻辑或长难句的漏洞解释)不会被割裂,保证了向量检索时上下文信息的完整性与连贯性。

image.png

向量检索与推理运行

采用all-MiniLM-L6-v2模型作为Embedding引擎。该模型在保持低延迟推理的同时,在多语言的语义相似度任务上有更好的泛化能力;数据库采用集成Qdrant向量数据库,支撑大规模向量的高并发检索

  • 上下文感知的推理校准:当定位Agent上报疑似SINK点时,校验Agent会提取当前代码特征,在向量库中实时检索最相似的Top-K个历史漏洞模式和修复示例。这些检索结果被作为增强上下文 注入到LLM的Prompt中,迫使模型基于检索到的“事实依据”而非单纯的概率预测进行最终判定,减少了误报的产生

0x04 动态流量FUZZ

我从以往的安全研究触发,针对通用型漏洞的工具做了大量的调研,并基于BurpSuite原生API开发了自动化Fuzz工具如:反射性和存储型XSS、SSRF、CORS、敏感信息泄露等(同时也是在锻炼开发能力,也让日常重复性漏洞渗透工作能够做的更高效),再结合MCP集成给Agent。该模块并非简单的随机测试,而是作为一个流式检测组件,实时拦截、解析并重放业务流量,对潜在漏洞动态扫描。而对于敏感信息泄露则是比较容易 ,针对Spring Boot Actuator、Swagger UI、Druid Monitor等常见中间件的指纹来做识别。同时,结合模式匹配,对响应包中的JWT Token、阿里云AK/SK、AWS凭证等高熵字符串进行实时监测,有效发现硬编码或调试信息泄露。

下面挑了几个通用型漏洞的Fuzz来做简单做下原理解释

1. 通用XSS漏洞的自动化Fuzz

比如针对XSS反射型和存储型漏洞,开发时采用了全量参数解析+动态污点标记的检测策略,确保对异构http包结构中参数的全面覆盖。

  • 深度参数提取与结构化解析
    不仅仅局限于URL Query参数,还有针对JSON、XML、Multipart-form等多种数据格式的解析器。能够递归遍历HTTP Request Body中的每一层嵌套结构,提取所有用户可控的叶子节点作为Fuzz入口。
  • 唯一性污点标记
    为了解决并发扫描时的结果混淆问题,引擎摒弃了静态Payload,转而采用动态生成的唯一性测试标记


    • Payload构造:Timestamp + RandomStr + Vector(例如:CurrentTime等高熵字符串)
    • 状态映射表:内存中维护一张高并发的HashMap,记录RequestID <-> ParameterName <-> UniquePayload的映射关系。
    • 响应回显与验证
      发送测试请求后,引擎自动捕获HTTP Response,通过高效的字符串匹配算法检索之前的唯一标记。一旦检测到标记回显且上下文未经过滤(如HTML实体编码缺失),即判定存在可疑XSS漏洞,并自动关联原始请求数据生成漏洞条目。

(当时研究设计思路时绘制的草图)

image.png

2. 访问控制与配置缺陷的CORS漏洞检测

自动化Fuzz HTTP请求头中的Origin字段,构造包括恶意第三方域名、特殊字符(如null)及子域名在内的多种变异Payload

  • 高危利用判定:当响应头Access-Control-Allow-Origin和攻击者Payload一样或为小写null,且同时存在Access-Control-Allow-Credentials: true时,将其标记为高危漏洞。此类配置允许攻击者绕过同源策略(SOP)窃取用户敏感数据
  • 严格语法校验:针对协议规范的边缘场景进行校验,例如检测到Access-Control-Allow-Origin: Null(大写)时,引擎会自动识别其为无效配置(浏览器不识别大写Null),从而将其作为无效处理
    以及服务端错误配置导致Access-Control-Allow-Origin始终和Origin一样,这里放一张示例图便于理解:

image.png

0x05 构建认知型安全智能体的未来图景

在对Multi-Agent探索自动化漏洞挖掘实践的探索过程中,其实我们一直在试图回答一个核心问题:如何在安全攻防领域,构建一个具备“感知-推理-决策-行动”完整闭环的智能系统。目前的Agent主要还停留在“检测与验证”阶段,之后更完备的阶段是自动化环境的感知探索与白盒源码的结合,以及能够基于当前的Shell环境或数据库权限,自主规划后续的横向移动与权限提升路径。另一个重要的方面是自适应Payload生成:比如利用强化学习反馈机制,让Agent在面对WAF拦截时,能够动态调整Payload的混淆策略,实现智能化的WAF绕过

希望本文的实践能为各位师傅提供一种新的视角供师傅们交流指点~

【solo-agile-template】人人都是全栈工程师 以及 人人都是全栈工程师第二弹 后,作者君持续探索全栈工程师 & 一人公司 这条道路。在之前的探索上,这次我基于 AionUi 新包还没发成(skills 有 bug),先冲上 github 榜 1 了... 瓦砾酱的 AionUI 二次开发了 CodeConductor(简称 CC )。

CodeConductor 相比与 AionUI,引入了 command、Skills 等特性,并且引入了作者念念不忘的 Multi-Agent 协作体系,允许多个 Assistant 通过协作来解决复杂项目开发和管理的问题。另外在交互上做了一点小优化。目前 CC 的中期目标是让能通过 CodeConductor 来对 CodeConductor 进行迭代开发,左脚踩右脚直接螺旋升天!


📌 转载信息
转载时间:
2026/1/18 08:51:30

Hello 佬们晚上好啊~又是瓦砾酱
喜欢的深夜更新,这两天抱歉占用大家资源来看我又哭 & 又笑了.
AionUi V1.7.0 Cowork 的版本发了,欢迎大家升级反馈、吐槽(能惦记着就很感恩了)

历史版本介绍,不了解 AionUi 的佬友可以从这儿开始看👇

AionUi V1.7.0 新特性介绍

1- 内置 Cowork,默认开启开箱即用

2- 内置多个 Assistant,在设置中随心启用

到设置界面启用想要的助手


启用后,新对话就可以直接使用啦

3- 内置助手可编辑 Agent,Rule,Skills

点击任意助手,即可打开助手详情进行编辑。下个版本会支持大家自己创建,现在创建界面实在是没想好咋处理,AI 写的丑死了,先暂时屏蔽了 w~

这次就更新了这么多,而且我已经用出 Bug 了… 有点匆忙,期望大家轻轻喷。


然后关于反馈群的事儿,我还不知道 L 站允不允许拉微信群啥的,我担心不符合社区规范,我谨慎研究下再回复大家吖,谢谢大家的包含


好像点赞到每日上限了,今天欠大家的明天补上(不是我不理你嗷


📌 转载信息
原作者:
waili
转载时间:
2026/1/16 12:41:42

Claude Code Multi-Agent

【个人工作流开源】Claude-Code-Multi-Agent 涵盖 300+ 超智能开发调优专家,完整的 Hooks 调优系统1
【个人工作流开源】Claude-Code-Multi-Agent 涵盖 300+ 超智能开发调优专家,完整的 Hooks 调优系统2


让 Claude Code 拥有项目感知能力的智能开发框架

更多详细的介绍内容与文档,请详见:
Claude-Code-Multi-Agent/README.md at master · Prorise-cool/Claude-Code-Multi-Agent

如果有功能上的疑问,请在 github 上提交 PR,此项目已内置 MCP

因为是个人使用的工作流,开源出来如果有无法复现的情况请反馈给我及时优化,欢迎提交 PR,分享更多实用的 SKILLS 技能

这是什么?

Claude Code Multi-Agent 是一个为 Claude Code 设计的智能开发框架,通过 Hooks 系统 在会话生命周期中自动执行智能操作,让 Claude Code 从 “通用聊天助手” 升级为 “懂你项目的专业开发伙伴”。

核心定位

这不是一个插件生态,而是一个 Claude Code 的专属工作空间
你需要将仓库克隆后,将你的项目(或初始化项目)放在此文件夹中,即可享受智能 Hooks 定义以及 300+ Skills 方案。


解决了什么痛点?

痛点 1:Claude Code 缺乏项目感知能力

问题:Claude Code 默认不知道你的项目是什么类型、使用什么框架、有什么依赖。每次都需要你手动描述项目背景。

解决:通过 Ollama 智能引擎 自动检测项目类型(Python/Node.js/Java 等)、识别框架(Django/FastAPI/React 等),并在会话启动时自动注入项目上下文。

痛点 2:需要手动配置各种工具和提示词

问题:每次使用 Claude Code 都需要:

  • 手动告诉它项目结构
  • 手动配置 Git 工作流
  • 手动编写提示词模板
  • 手动管理文档更新

解决零配置启动 - 克隆即用,所有配置通过 Hooks 自动完成。提示词模板化存储在 prompts.json,支持团队协作和版本控制。

痛点 3:缺乏智能的意图分析和技能推荐

问题:Claude Code 不知道什么时候该调用什么工具,也不知道有哪些可用的专家技能。

解决智能意图分析 - 自动判断任务复杂度,推荐合适的 MCP 工具(Sequential Thinking、Task Manager 等)和 Skills(后端专家、测试专家等)。

痛点 4:文档维护繁琐且容易遗忘

问题:代码改了,文档忘了更新。项目知识散落在聊天记录中,无法沉淀。

解决自动文档维护 - 每次代码修改后,强制提示更新 DEVELOPMENT.mdKNOWLEDGE.mdCHANGELOG.md,确保文档与代码同步。


核心优势

所有判断逻辑通过本地部署 Ollama 完成,无需编写复杂的规则引擎。提示词模板化存储在 prompts.json,支持持续调优和版本控制。

300+ Skills 专家智能体

会话启动时自动扫描并加载所有 Skills,包括:

  • 后端专家 (/backend-specialist) - Django、FastAPI、Spring Boot 等
  • 前端专家 (/frontend-specialist) - React、Vue、Next.js 等
  • 测试专家 (/testing-specialist) - 单元测试、集成测试、E2E 测试
  • 安全专家 (/security-specialist) - OWASP Top 10、安全审计
  • 架构专家 (/architecture-specialist) - 系统设计、微服务架构
  • DevOps 专家 (/devops-specialist) - CI/CD、容器化、云部署
  • … 还有更多

自动文档维护系统

强制维护三个核心文档:

  • DEVELOPMENT.md - 开发工作文档(任务状态、进度跟踪)
  • KNOWLEDGE.md - 项目知识库(技术决策、代码模式)
  • CHANGELOG.md - 变更日志(版本记录、功能变更)

文档在会话启动时自动注入上下文,替代 Memory MCP,避免上下文爆炸。

Git 工作流智能集成

自动检测 Git 仓库配置,提示分支策略(github-flow /git-flow),确保团队协作规范。

零配置启动

基于 uv 的依赖管理,无需手动安装 Python 包。克隆项目 → 配置环境变量 → 启动 Claude Code,即可使用。


使用示例

示例 1:自动项目检测

场景:你打开了一个新的 Python 项目,想了解项目结构。

操作:直接打开 Claude Code,系统会自动:

  1. 检测项目类型(Python + FastAPI)
  2. 识别框架和依赖
  3. 加载相关 Skills(后端专家、测试专家等)
  4. 初始化项目文档

结果:Claude Code 立即了解你的项目,无需手动介绍。


示例 2:调用专家 Skills

场景:需要设计 RESTful API,但不确定最佳实践。

操作:在 Claude Code 中输入:

/backend-specialist 设计用户认证的 RESTful API

结果:Claude Code 以 “后端专家” 身份回答,参考 FastAPI/Django 最佳实践,提供:

  • RESTful 资源设计
  • HTTP 方法选择
  • 状态码定义
  • 请求 / 响应格式


示例 3:智能意图分析

场景:输入一个复杂任务:“实现用户登录功能”

操作:系统自动分析意图,推荐:

  • 推荐工具:Sequential Thinking(复杂任务分解)
  • 推荐 Skills/backend-specialist/security-specialist
  • 执行计划:自动生成任务拆解建议

结果:无需手动思考 “该用什么工具”,系统智能推荐。


示例 4:自动文档维护

场景:修改了 user_service.py,添加了新功能。

操作:系统自动检测代码变更,强制提示更新:

  • DEVELOPMENT.md - 记录开发进度
  • KNOWLEDGE.md - 记录技术决策
  • CHANGELOG.md - 记录变更历史

结果:文档始终与代码同步,项目知识可沉淀。


示例 5:Commands 工作流

Commands 是预定义的工作流,通过 /command-name 触发:

# 创建功能规格(从需求到实施计划)
/kiro/spec 用户认证功能

# 执行完整的代理工作流
/agent-workflow 实现博客系统

# Git 提交(自动生成 Commit Message)
/gh/commit

Command 示例:/kiro/spec

这个 Command 会引导你完成:

  1. 需求收集:生成 EARS 格式的需求文档
  2. 设计文档:创建架构设计和数据模型
  3. 任务列表:拆解为可执行的开发任务

所有文档自动保存到 .kiro/specs/{feature_name}/ 目录。

系统架构

Hooks 工作原理

本项目通过 Python Hooks 系统管理 Claude Code 的会话生命周期。每个 Hook 在特定事件触发时执行,通过 Ollama 进行智能决策。

核心设计理念:

  • 文档驱动:强制维护三个核心文档(DEVELOPMENT.md、KNOWLEDGE.md、CHANGELOG.md),会话启动时自动读取并注入上下文
  • 配置化提示词:所有提示词模板存储在 .claude/hooks/prompts.json,用户可自由调整和优化
  • 去 Memory 中间层:不再依赖 Memory MCP,直接通过文档维护项目知识,避免上下文爆炸导致的指令失效

Hook 触发时机

会话启动

SessionStart

用户输入

UserPromptSubmit

工具调用

PreToolUse

PostToolUse

Notification

PreCompact

Stop/SubagentStop

Hook 执行流程

每个 Hook 通过 exit_code 控制后续操作:

0

2

Hook 触发

执行脚本

exit_code

继续操作

阻止操作

返回 JSON

更新系统消息

返回值格式:

{ "exit_code": 0, "message": "操作成功", "data": { "skills": ["backend-specialist", "testing-specialist"], "project_type": "Python", "framework": "FastAPI" } } 
  • exit_code=0:允许操作继续
  • exit_code=2:阻止操作(如检测到危险命令)


Hook 类型说明

Hook触发时机核心功能Ollama 作用
SessionStart会话启动项目初始化检测项目类型、推荐 Skills
UserPromptSubmit用户提交输入意图分析判断任务复杂度、优化提示词
PreToolUse工具调用前权限检查评估操作风险
PostToolUse工具调用后文档更新生成文档更新建议
Stop会话结束清理资源-
SubagentStop子代理停止子任务处理-
PreCompact上下文压缩前信息保留识别重要上下文
Notification系统通知消息处理-

核心 Hook 详解:

1. SessionStart - 会话启动处理器

这是最重要的 Hook,负责项目初始化:

# .claude/hooks/handlers/session_start.py 的核心逻辑 # 1. 调用 Ollama 检测项目类型
project_info = ollama_client.detect_project_type()
# 返回:{"type": "Python", "framework": "FastAPI", "version": "3.11"} # 2. 扫描 skills/ 目录
skills = scan_skills_directory()
# 返回:["backend-specialist", "testing-specialist", ...] # 3. 初始化文档系统
document_manager.init_documents()
# 创建:DEVELOPMENT.md, KNOWLEDGE.md, CHANGELOG.md # 4. 【核心改进】强制读取三个文档并注入上下文
development_content = read_file("project_document/DEVELOPMENT.md")
knowledge_content = read_file("project_document/KNOWLEDGE.md")
changelog_content = read_file("project_document/CHANGELOG.md")
# 将这些内容注入到系统上下文中,替代 Memory MCP # 5. 检查 Git 配置
git_status = check_git_config()
# 检查:.gitignore, 分支策略 

2. UserPromptSubmit - 意图识别处理器

分析用户输入,提供智能建议:

# 用户输入:"帮我实现用户登录功能" # Ollama 分析结果:
{
    "intent": "feature_implementation",
    "complexity": "medium",
    "recommended_tools": ["Write", "Edit", "Bash"],
    "recommended_skills": ["backend-specialist", "security-specialist"],
    "suggested_plan": [
        "1. 设计数据库表结构",
        "2. 实现认证逻辑",
        "3. 编写单元测试",
        "4. 添加安全防护"
    ]
}

3. PostToolUse - 工具使用后处理器

在每次代码修改后,强制 更新三个文档:

# 检测到修改了 user_service.py # 【强制】必须更新以下文档: # 1. DEVELOPMENT.md - 记录开发进度和任务状态 # 2. KNOWLEDGE.md - 记录技术决策和代码模式 # 3. CHANGELOG.md - 记录变更历史 # 文档更新提示通过 prompts.json 配置,用户可自定义格式和要求 

提示词配置化:
所有提示词模板存储在 .claude/hooks/prompts.json,支持:

  • 自定义提示词内容和格式
  • 使用 {变量} 占位符动态替换
  • 按 Hook 类型分组管理
  • 便于持续调优和版本控制


Skills 触发机制

Skills 是本项目的 “专家团队”,每个 Skill 代表一个专业领域的智能体。

Skills 加载流程

Ollama 文件系统 Claude Code 用户 Ollama 文件系统 Claude Code 用户/backend-specialist 设计 API 读取 skills/backend-specialist/SKILL.md 返回 Skill 定义解析 YAML Frontmatter 结合 Skill 能力优化提示词返回优化后的系统提示注入系统上下文以专家身份执行任务

Skill 目录结构

.claude/skills/ ├── backend-specialist/  ├── SKILL.md                    # Skill 定义(必需)
 └── references/                 # 参考文档(可选)
 ├── cursor_rules_django.md
 ├── cursor_rules_fastapi.md
 └── restful_best_practices.md
├── testing-specialist/  ├── SKILL.md
 └── references/  ├── pytest_guide.md
 └── test_patterns.md
└── security-specialist/ ├── SKILL.md
    └── references/ ├── owasp_top10.md
        └── secure_coding.md


为什么需要 Ollama?

Ollama 是本项目的 “大脑”,负责:

  • 项目类型检测:自动识别你的项目是 Python/Node.js/Java 等
  • 意图分析:理解用户输入,判断是简单查询还是复杂任务
  • 提示词优化:将模糊需求转化为清晰的执行计划
  • 技能推荐:根据任务类型推荐合适的 Skills

没有 Ollama,系统会降级到基础模式(仅支持手动触发 Skills)。

为什么需要 uv?

uv 是 Rust 编写的超快 Python 包管理器,本项目用它来:

  • 自动管理 Python 环境:无需手动创建虚拟环境
  • 秒级安装依赖:比 pip 快 10-100 倍
  • 零配置运行 Hooksuv run 自动处理依赖隔离

为什么不用 pip? uv 会自动创建隔离环境,避免污染全局 Python 环境,且速度快 10 倍以上。


📌 转载信息
转载时间:
2026/1/14 10:44:42