Références & sources

Lagune vs Deepsec : deux approches de la sécurité pilotées par IA, côte à côte

Une comparaison de référence entre Lagune et Deepsec de Vercel, sur leur fonctionnement, leur cycle de vie, la détection, le coût, les constats et la clôture.

Lagune et Deepsec (v2.2.1) sont deux réponses défensives au même problème : la sécurité à l'ère du développement assisté par IA. Leur prémisse, leur début, leur milieu et leur fin, ainsi que la façon dont chacun se présente à l'utilisateur, divergent par conception, même là où leurs mécanismes se recoupent.

astuce

Lagune s'inspire-t-il de Deepsec ? Non, Lagune a été écrit à partir de zéro et s'inspire du Spec-Driven Development et du Security Hardening. Les deux projets ont été développés indépendamment, et cette comparaison vise à aider les utilisateurs à comprendre leurs différences.

En un coup d'œil​

AspectLaguneDeepsec
NatureUne méthodologie (SDH) avec une implémentation de référenceUn produit : un scanner de vulnérabilités piloté par agent
Centre de gravitéDes principes de sécurité et des connaissances à la demande guident l'agent, en s'appuyant sur des hooks déterministesUn large filet de regex alimente une investigation obligatoire par IA
Ce qu'il produitDu code durci, des preuves et une chaîne de constats suivisUn rapport de constats triés et classés par gravité
Touche à votre codeOui : harden modifie votre codeNon : uniquement de l'analyse statique, il émet des constats et des recommandations écrites
ExécutionTourne sur l'agent et le modèle que vous utilisez déjà, quel que soit le niveauFait tourner son propre pipeline de modèles, un modèle de pointe par défaut
Prise en mainUne installation de plugin ou npx skills add, puis pilotage en langage courant, sans nouvel outil à mettre en placeMettre en place un workspace .deepsec/, installer les dépendances et ajouter une clé de modèle

Fonctionnement​

Lagune est centré sur l'agent : l'agent pilote, charge à la demande les connaissances adaptées à ce qu'est le code, et délègue aux hooks déterministes la part qu'il est possible de trancher.

Deepsec est centré sur le déterminisme : une analyse large signale des candidats qui indiquent à un modèle obligatoire ce qu'il doit investiguer et juger.

AspectLaguneDeepsec
OrdreLes principes de sécurité et les connaissances retenues guident l'agent, qui délègue aux hooks et juge le resteLes matchers signalent des candidats, le modèle investigue et juge chacun
Rôle du déterminismeDes hooks multilangages qui rendent un verdict ou orientent l'agent, combinés aux connaissances des catégoriesDes matchers qui signalent des candidats que le modèle obligatoire juge
Flux de développement/lagune construit de façon sécurisée, au fil de l'écriture du codeIl relit le code, il ne l'écrit pas
Flux d'auditcharter → detect → plan → harden → verifyscan → process → triage → revalidate → report
Le rôle de l'IARaisonner à partir des connaissances, appliquer le correctif et prouver qu'il est efficaceInvestiguer chaque candidat et rapporter les constats

Cycle de vie​

Lagune intervient avant, pendant et après l'écriture du code. Deepsec relit un dépôt une fois le code écrit.

MomentLaguneDeepsec
Avant que le code existecharter établit une politique de sécurité à partir de l'intention expriméePart du code existant : init a besoin d'un répertoire
Pendant le développement/lagune construit de façon sûre par défaut, sans laisser d'artefactRelit après le développement, pas pendant
Sur du code existantdetect → plan → harden → verifyscan → process, le flux principal
Revue continueRelancer les phases par périmètre, pas de contrôle de CI prêt à l'emploiNouvelle analyse incrémentale, process --diff comme contrôle de sortie en CI

Couche de détection​

Les deux couches déterministes sont de nature opposée : l'une tranche, l'autre signale.

AspectLaguneDeepsec
RegroupementHooks et spécialisations, regroupés en catégoriesMatchers par motif ou par framework
SortieVerdict littéral (finding / review / advisory) plus une étiquette de classementCandidat sans verdict (slug, lignes, extrait, motif reconnu)
RéglagePrécision : prise en compte des commentaires, garde-fous sur les placeholders et les fenêtresRappel : filets larges, l'IA élimine ensuite les faux positifs
ProfondeurPlus profond sur les classes communesPlus large, moins profond sur les classes communes
Faux positifsMaintenus bas à la source, puis jugés en contexteGénérés en excès volontairement, réduits par une passe revalidate

Connaissances et jugement​

Les deux portent des connaissances de sécurité que les regex ne peuvent pas porter. Ils diffèrent sur l'endroit où elles se trouvent et sur qui peut les façonner.

AspectLaguneDeepsec
FormeDes modules Markdown modifiables, dont plusieurs s'appuient sur un hook déterministeUn prompt court et des points d'attention par technologie, qui s'appuient sur les connaissances du modèle
SélectionRetenus selon le code, chargés seulement quand leur contexte est présentInjectés dans chaque lot d'IA, plus les points d'attention de la technologie détectée
Qui les rédigeL'utilisateur modifie les modules et en ajoute avec specializeLe mainteneur possède le prompt, l'utilisateur remplit un INFO.md
Où se situe le jugementLes hooks tranchent leur socle, l'agent juge le reste à partir des connaissancesCentralisé : un seul processeur d'IA juge chaque candidat
RéutilisationUn même module guide detect et verifyUn seul prompt pilote l'unique étape process

Constats et clôture​

C'est sur ce que devient un constat une fois résolu qu'ils divergent le plus.

AspectLaguneDeepsec
GravitéUn score CVSS v4.0, ajusté selon l'exposition et les enjeuxUne gravité estimée par l'IA, plus un tri P0 / P1 / P2 selon l'exploitabilité et l'impact
VerdictsRisk closed, not closed ou cannot tell from the codetrue-positive, false-positive, fixed, uncertain, accepted-risk, duplicate
PersistanceLa chaîne de travail se met en cohérence, les constats clôturés sont condensés dans un historiqueDes enregistrements par fichier en ajout seul, rien n'est supprimé
État finalClôturable : un constat prouvé est retiré, la chaîne peut arriver au reposChaque constat est conservé pour de bon, masqué des vues une fois résolu
Détail de l'historiqueUn résumé compact de ce qu'était le risqueToute la trace des verdicts, y compris la façon dont il a été corrigé

Coût​

AspectLaguneDeepsec
Socle déterministeGratuit : les hooks tournent sans IA et sans clé, et émettent déjà des verdictsGratuit : scan tourne sans IA, mais n'émet aucun verdict par lui-même
Facture typeIntégrée à un agent que vous utilisez déjà, jusqu'à 0 $ avec un modèle local, au prix de l'abonnement que vous avez déjà, ou par itération en usage via APIEnviron 25 $ à 1 200 $ par exécution pour 100 à 2 000 fichiers, davantage à grande échelle
Option la moins chèreN'importe quel modèle, y compris un modèle local gratuit, boucle le cycleDes offres payantes moins chères existent, mais les constats exigent l'étape d'IA payante

Extensibilité et gouvernance​

Chacun ouvre la couche que l'autre garde fermée.

AspectLaguneDeepsec
Ce que vous étendezModifier des modules, ou en ajouter via specializeAjouter des matchers, des agents, des notificateurs et des responsables
Couche de politiqueLa charter gouverne chaque phase et est versionnéeLa configuration est opérationnelle (matchers, modèles, chemins)
Remplacement par nomUn module affiné masque la spécialisation intégréeEn cas de collision de slug de matcher, le vôtre l'emporte

Interfaces​

Deepsec produit des livrables pour une organisation de sécurité. Lagune affiche une vue en direct pour la personne qui l'exécute.

AspectLaguneDeepsec
Interface humaineUn tableau de bord local en direct de toute la chaîne, en langage courantDes fichiers de rapport, d'export, de métriques et de commentaires de PR, plus un site de documentation
ResponsabilitéFait ressortir les fichiers et les spécialisations appliquéesPropose une personne à qui attribuer le constat : astreinte, manager ou auteur du commit
Preuve reproductibleprove écrit des tests exécutables et un avis de divulgationReste statique par conception, il n'exécute jamais la cible
Autoprotection de l'outilDurcit une API d'écriture locale sur le tableau de bordDurcit sa propre exécution d'IA face au code cible non fiable

Échelle et déploiement​

AspectLaguneDeepsec
InstallationNeuf commandes via le plugin de votre agent ou la CLI skills, rien n'est généréUn workspace .deepsec/ avec son propre paquet et ses dépendances
Sens de l'échelleSe limite à n'importe quelle partie, un contexte, d'un fichier à tout le projetParcourt des dépôts entiers, jusqu'aux grands monorepos
DistributionUniquement local, le seul serveur écoute sur le loopbackRépartition facultative sur des VM de travail Vercel Sandbox

Expérience utilisateur​

Comment chacun accueille la personne qui l'exécute : ce que demande la première exécution, et comment l'opérateur l'oriente.

Prise en main​

Lagune passe par l'agent déjà ouvert. Deepsec met d'abord en place son propre workspace et son accès aux modèles.

AspectLaguneDeepsec
Première commandeL'installation du plugin ou npx skills add wellwelwel/lagune, puis /lagune-* dans l'agentnpx deepsec init, puis cd .deepsec, pnpm install, scan, process
Identifiants pour l'exécuterPas de clé à part, il utilise votre agent actuelUne clé de modèle (par ex. AI Gateway, un jeton OIDC Vercel de 12 heures ou un jeton Anthropic)

Le piloter​

Les deux acceptent qu'on les oriente. Lagune lit la forme de l'entrée à chaque phase. Deepsec restreint l'ensemble de fichiers sur lequel s'exécute la même investigation.

AspectLaguneDeepsec
Tout le projetUne phase sans entrée analyse tout le périmètrescan et process parcourent le dépôt
Une partieN'importe quelle phase se limite à des fichiers ou répertoires donnés--files, --files-from ou --diff restreignent l'exécution
Une préoccupationUne phase se limite à une inquiétude décriteLe prompt d'investigation est figé
Une tranche de prioritéharden et verify se limitent à Critical, High, Medium ou LowLes constats sont étiquetés après l'exécution
Une seule valeurUn hook évalue directement un extrait, un motif ou une URL (--pattern, --url)L'unité de travail est le fichier

Questions fréquentes

Lagune est centré sur l'agent et intervient avant, pendant et après l'écriture du code : il fixe une politique avant le code, durcit au fil du développement, et audite, durcit et vérifie le code déjà écrit. Deepsec est centré sur le déterminisme : une large analyse par regex alimente une investigation obligatoire par un modèle de pointe, qui relit le code existant et rapporte des constats, sans le modifier.

Tout le flux de Lagune peut tourner pour 0 $ avec un modèle local gratuit, et ses hooks déterministes émettent des verdicts sans aucune IA. L'analyse de Deepsec est gratuite mais n'émet aucun verdict, donc tout constat exige son étape d'IA payante.

Lagune, oui : harden applique des correctifs à votre code. Deepsec, non : il ne fait que de l'analyse statique et émet des constats et des recommandations écrites qu'une personne ou un agent applique séparément.