CASE STUDY / 01
Smart Agent Detector
结合 AI 语义理解、确定性程序分析与历史攻击知识,生成有证据支撑的智能合约风险判断。
- 角色
- 创始人 / 技术负责人
- 周期
- 2026 — 现在
- 状态
- 持续迭代
- 团队
- 5+ 人
- 代码贡献
- 400+ commits
项目背景
智能合约审计目前主要依赖人工审核和固定规则检测。人工审计成本高、覆盖能力有限;规则系统虽然高效,但难以及时适应新型攻击,对代码语义和复杂上下文的理解也相对有限。
Smart Agent Detector 尝试将 AI 代码语义理解、确定性程序分析和历史攻击知识结合,为合约审计人员、普通投资者及 Web3 项目方提供可解释的安全分析。
我的职责
我主要负责系统架构、Agent 工作流、后端建设、模型评测与团队管理,推动超过 5 人的跨职能团队持续交付。目前项目已经积累超过 400 次代码提交。
核心流程
用户输入合约地址或合约代码后,系统执行多阶段分析,并生成风险评估报告、风险点解释及对应的代码证据。
关键设计
让 Agent 聚焦有限职责
多 Agent 架构通过职责拆分,让不同节点专注于更细粒度的分析任务。并行执行有助于扩大代码语义分析的覆盖范围,并生成可定位到风险片段的证据;工作流同时加入成本约束,使多节点调用成本保持可控。
证据优先,疑点降级
模型生成的结论必须与确定性代码证据相互印证。证据不足的疑点不会被包装成高置信结论,使分析结果更容易解释和复核。
核心难点
让生成结论与代码证据相互对应
最困难的问题,是建立模型生成结论与确定性证据之间稳定、可追踪的对应关系。
为此,我们定义了更细粒度的结构化证据模型,使 LLM 输出能够引用并对应具体证据,让风险判断不仅可以生成,也可以被解释和复核。
让历史案例成为可用证据
为了让历史数据真正参与判断,我们对历史攻击案例中的风险代码片段进行切分并生成元数据。分析阶段通过相似性检索与重排序筛选相关片段,为当前代码提供可比较的历史证据,增强候选风险片段的可信度,并为 LLM 判断提供更强的依据。
校准协议代码引发的假阳性
LLM 容易把协议中的正常机制误解为恶意行为。针对已知的协议结构,我们预设可复核的模式模板;当代码与模板匹配时,将其作为提高安全置信度、降低风险疑点等级的校准信号,而不是直接作出“安全”结论。这样可以减少假阳性,同时保留对其他异常证据的检查。
当前状态与下一步
项目于 2026 年启动,目前已完成基础工程建设并持续迭代。下一阶段将建设更强的历史数据检索系统,让历史攻击知识能够更准确、充分地参与当前合约分析。