← 返回项目

CASE STUDY / 01

Smart Agent Detector

结合 AI 语义理解、确定性程序分析与历史攻击知识,生成有证据支撑的智能合约风险判断。

角色
创始人 / 技术负责人
周期
2026 — 现在
状态
持续迭代
团队
5+ 人
代码贡献
400+ commits
LangGraphFastAPIReactRAGAST / IRMLflow

项目背景

智能合约审计目前主要依赖人工审核和固定规则检测。人工审计成本高、覆盖能力有限;规则系统虽然高效,但难以及时适应新型攻击,对代码语义和复杂上下文的理解也相对有限。

Smart Agent Detector 尝试将 AI 代码语义理解、确定性程序分析和历史攻击知识结合,为合约审计人员、普通投资者及 Web3 项目方提供可解释的安全分析。

我的职责

我主要负责系统架构、Agent 工作流、后端建设、模型评测与团队管理,推动超过 5 人的跨职能团队持续交付。目前项目已经积累超过 400 次代码提交。

核心流程

用户输入合约地址或合约代码后,系统执行多阶段分析,并生成风险评估报告、风险点解释及对应的代码证据。

关键设计

让 Agent 聚焦有限职责

多 Agent 架构通过职责拆分,让不同节点专注于更细粒度的分析任务。并行执行有助于扩大代码语义分析的覆盖范围,并生成可定位到风险片段的证据;工作流同时加入成本约束,使多节点调用成本保持可控。

证据优先,疑点降级

模型生成的结论必须与确定性代码证据相互印证。证据不足的疑点不会被包装成高置信结论,使分析结果更容易解释和复核。

核心难点

让生成结论与代码证据相互对应

最困难的问题,是建立模型生成结论与确定性证据之间稳定、可追踪的对应关系。

为此,我们定义了更细粒度的结构化证据模型,使 LLM 输出能够引用并对应具体证据,让风险判断不仅可以生成,也可以被解释和复核。

让历史案例成为可用证据

为了让历史数据真正参与判断,我们对历史攻击案例中的风险代码片段进行切分并生成元数据。分析阶段通过相似性检索与重排序筛选相关片段,为当前代码提供可比较的历史证据,增强候选风险片段的可信度,并为 LLM 判断提供更强的依据。

校准协议代码引发的假阳性

LLM 容易把协议中的正常机制误解为恶意行为。针对已知的协议结构,我们预设可复核的模式模板;当代码与模板匹配时,将其作为提高安全置信度、降低风险疑点等级的校准信号,而不是直接作出“安全”结论。这样可以减少假阳性,同时保留对其他异常证据的检查。

当前状态与下一步

项目于 2026 年启动,目前已完成基础工程建设并持续迭代。下一阶段将建设更强的历史数据检索系统,让历史攻击知识能够更准确、充分地参与当前合约分析。