参考资料与来源

Lagune vs. Deepsec:两种 AI 驱动的安全方案对比

一份参考资料,从工作方式、生命周期、检测、成本、发现项和结案几个方面,对比 Lagune 与 Vercel 的 Deepsec。

Lagune 和 Deepsec(v2.2.1)是两种防御性方案,针对的是同一个问题:AI 辅助开发时代的安全。即使在机制上有重叠,两者的前提、从开始到结束的整个过程,以及在用户面前的呈现方式,都是有意设计得不同的。

提示

Lagune 是受 Deepsec 启发的吗?不是。Lagune 从零开始编写,灵感来自 Spec-Driven Development 和 Security Hardening。两个项目是各自独立开发的,这里的对比是为了帮助用户了解它们之间的差异。

速览​

方面LaguneDeepsec
类型一套方法论(SDH),附带一个参考实现一个产品:由智能体驱动的漏洞扫描器
核心由安全原则和按需加载的知识驱动智能体,并以确定性 hook 为基础大范围的正则表达式网为必需的 AI 调查提供输入
产出加固后的代码、证明,以及一条可追踪的发现项链路一份按严重程度排序、经过研判的发现项报告
是否改动代码是:harden 会编辑你的代码否:只做静态分析,输出发现项和建议文本
运行方式在你已经在用的智能体和模型上运行,任何档次的模型都可以运行自己的模型流水线,默认使用前沿级模型
快速开始安装一个插件或运行 npx skills add,然后用日常语言驱动它,无需搭建新工具搭建 .deepsec/ 工作区,安装依赖,再添加模型密钥

工作原理​

Lagune 以智能体为先:由智能体主导,根据代码的实际情况按需调入知识,并把能够确定判定的那部分交给确定性 hook。

Deepsec 以确定性为先:大范围扫描标记出候选项,告诉必需的模型该调查和判断什么。

方面LaguneDeepsec
顺序安全原则和匹配到的知识引导智能体,智能体把一部分交给 hook,其余自己判断匹配器标记候选项,模型逐一调查并判断
确定性部分的作用多语言 hook,给出判定结果或为智能体指明方向,并结合类别知识匹配器标记候选项,交给必需的模型判断
开发流程/lagune 在你写代码的同时安全地构建它只审查代码,不编写代码
审计流程charter → detect → plan → harden → verifyscan → process → triage → revalidate → report
AI 的任务依据知识推理,应用修复,并证明修复确实有效调查每个候选项并报告发现项

生命周期​

Lagune 在代码编写之前、之中和之后都能发挥作用。Deepsec 则在代码写好之后审查仓库。

时机LaguneDeepsec
代码还不存在时charter 根据你表达的意图制定安全策略从已有代码开始:init 需要一个目录
开发过程中/lagune 在编写过程中按默认安全的方式构建,不留下任何产物在开发完成后审查,而不是在开发过程中
针对已有代码detect → plan → harden → verifyscan → process,即核心流程
持续审查按范围重新运行各阶段,没有现成的 CI 门禁增量重新扫描,用 process --diff 作为 CI 的退出门禁

检测层​

两者的确定性层性质相反:一个负责判定,另一个负责标记。

方面LaguneDeepsec
组织方式hook 和专项,按类别分组按模式或框架划分的匹配器
输出明确的判定结果(finding / review / advisory),外加一个分类标签不带判定结果的候选项(slug、行号、代码片段、匹配到的模式)
调校方向精确率:能识别注释,并带有占位符防护和窗口防护召回率:撒大网,之后由 AI 剔除误报
深度在两者都覆盖的问题类型上更深入覆盖更广,但在两者都覆盖的问题类型上没那么深入
误报从源头压低,再结合上下文判定有意多报,再通过一轮 revalidate 削减

知识与判断​

两者都具备正则表达式无法承载的安全知识。区别在于这些知识放在哪里,以及谁能塑造它们。

方面LaguneDeepsec
形式可编辑的 Markdown 模块,其中一些有确定性 hook 作为支撑一段简短的提示词加上按技术划分的要点,依靠模型自身的知识
选取方式与代码匹配,只在相应场景存在时加载注入每个 AI 批次,再加上针对检测到的技术的要点
由谁编写用户编辑模块,并用 specialize 添加新模块提示词由维护者掌控,用户填写一份 INFO.md
判断由谁做出hook 负责判定基础层,其余由智能体依据知识判断集中式:由一个 AI 处理器判断所有候选项
复用同一个模块同时指导 detect 和 verify一段提示词驱动唯一的 process 阶段

发现项与结案​

两者分歧最大的地方,在于发现项解决之后会变成什么。

方面LaguneDeepsec
严重程度CVSS v4.0 评分,并根据暴露程度和利害关系调整由 AI 给出的严重程度,外加按可利用性和影响划分的 P0 / P1 / P2 分级
判定结果Risk closed、Risk not closed 或 Cannot tell from the codetrue-positive, false-positive, fixed, uncertain, accepted-risk, duplicate
持久化工作链路持续核对更新,已结案的发现项提炼成历史记录按文件记录,只增不删
最终状态可结案:已证明的发现项会结案,链路可以进入静止状态每个发现项都永久保留,解决后从视图中隐藏
历史详情对风险本身的简要总结完整的判定记录,包括它是如何修复的

成本​

方面LaguneDeepsec
确定性基础层免费:hook 无需 AI、无需密钥即可运行,并且已经会给出判定结果免费:scan 无需 AI 即可运行,但本身不给出判定结果
常见开销包含在你已经在用的智能体里:用本地模型可低至 $0,否则就是你现有套餐的价格,或在基于 API 的使用中按迭代计费每次运行 100 到 2,000 个文件约需 $25 到 $1,200,规模更大时更贵
最省钱的方式任何模型都能走完整个循环,包括免费的本地模型有更便宜的付费档位,但要得到发现项,仍离不开付费的 AI 阶段

可扩展性与治理​

一方开放的那一层,正是另一方保持封闭的。

方面LaguneDeepsec
可以扩展什么编辑模块,或通过 specialize 添加新模块添加匹配器、智能体、通知器和代码归属
策略层安全原则管辖每个阶段,并纳入版本管理配置是运行层面的(匹配器、模型、路径)
按名称覆盖改进后的模块会覆盖同名的内置模块匹配器 slug 冲突时,以你的匹配器为准

界面​

Deepsec 为安全团队产出交付物。Lagune 则为运行它的人呈现实时视图。

方面LaguneDeepsec
面向人的界面一个本地实时仪表盘,用通俗的语言展示整条链路报告、导出、指标和 PR 评论文件,外加一个文档站点
责任归属列出相关文件和所应用的专项给出建议的负责人:值班人员、经理或提交者
可复现的证明prove 编写可运行的测试和一份用于披露的安全公告按设计保持静态,从不执行目标代码
工具自身防护加固仪表盘上的本地写入 API加固自身的 AI 执行环境,防范不可信的目标代码

规模与部署​

方面LaguneDeepsec
安装通过智能体的插件或 skills CLI 安装九个命令,不生成任何脚手架一个 .deepsec/ 工作区,带有自己的包和依赖
规模取向可以限定到任意范围:某个场景,或从单个文件到整个项目扫描整个仓库,最大可到大型 monorepo
分布式运行仅限本地,唯一的服务器绑定在回环地址上可选择分发到多台 Vercel Sandbox 工作虚拟机上并行执行

用户体验​

两者各自如何面对使用者:第一次运行需要什么,以及操作者如何为它指定方向。

上手​

Lagune 直接通过已经打开的智能体运行。Deepsec 则要先准备好自己的工作区和模型访问权限。

方面LaguneDeepsec
第一条命令安装插件或运行 npx skills add wellwelwel/lagune,然后在智能体中使用 /lagune-*npx deepsec init,然后依次执行 cd .deepsec、pnpm install、scan、process
运行所需凭证不需要额外的密钥,直接使用你当前的智能体一个模型密钥(例如 AI Gateway、有效期 12 小时的 Vercel OIDC 令牌或 Anthropic 令牌)

如何驱动​

两者都接受指引。Lagune 在每个阶段都会识别输入的形式。Deepsec 则缩小同一套调查所覆盖的文件范围。

方面LaguneDeepsec
整个项目不带输入运行某个阶段,就会扫描整个范围scan 和 process 扫描整个仓库
局部范围任何阶段都可以限定到指定的文件或目录用 --files、--files-from 或 --diff 缩小运行范围
某个顾虑阶段可以限定到你描述的某个担忧调查用的提示词是固定的
某个优先级harden 和 verify 可以限定到严重、高危、中危或低危发现项在运行结束后才打上标签
单个值hook 直接为单个代码片段、模式或 URL 评分(--pattern、--url)工作单位是文件

常见问题

Lagune 以智能体为先,在代码编写之前、之中和之后都能发挥作用:写代码之前先制定策略,开发时在编写过程中直接加固,并对已经写好的代码进行审计、加固和验证。Deepsec 以确定性为先:大范围的正则表达式扫描为必需的前沿模型调查提供输入,这项调查会审查已有代码并报告发现项,但不会修改代码。

Lagune 的完整流程可以在免费的本地模型上以 $0 运行,它的确定性 hook 完全不用 AI 也能给出判定结果。Deepsec 的扫描是免费的,但不给出判定结果,所以任何发现项都要依靠它付费的 AI 阶段。

Lagune 会:harden 会把修复应用到你的代码中。Deepsec 不会:它只做静态分析,输出发现项和建议文本,由人或智能体另行应用。