Skip to main content

semgrep-rule-creator

semgrep-rule-creator

Catalogue généré le 2026-05-11

En une phrase

CreatesAide customà écrire des règles personnalisées pour Semgrep rules forun detectingoutil securityqui vulnerabilities,scanne le code à la recherche de motifs vulnérables — afin de détecter automatiquement un type de bug patterns,spécifique andà codeton patterns.projet.

Quand l'utiliser

  • UseTu whenas writingidentifié un motif vulnérable récurrent et tu veux qu'un scan automatique le détecte à chaque commit.
Tu veux imposer une convention de code à ton équipe (par exemple : « interdiction d'utiliser telle fonction dangereuse »). Tu veux suivre la trace d'une donnée « salie » par l'utilisateur jusqu'à un point sensible (mode « taint », qui suit le flux des données). Tu écris une règle Semgrep ruleset ortu buildingveux customla statictester analysisproprement detections.avec des cas vulnérables ET des cas sûrs.

Comment l'invoquer

  • Slash command : /semgrep-rule-creator (siou exposé dans ton CLI)/semgrep-rule).
  • Phrases déclencheurs (texte) : voir"write laa descriptionSemgrep complèterule", ci-dessous"build a custom static analysis detection", "detect this pattern".
  • Auto-invocation : surSur demande expliciteexplicite.

Description complètedétaillée

Creates custom Semgrep rulesest forun detectingoutil securityqui vulnerabilities,parcourt ton code et signale tous les endroits où un certain motif apparaît. Par exemple, on peut lui demander de signaler tous les appels à eval() (une fonction réputée dangereuse) ou toutes les requêtes SQL construites par concaténation. Le skill semgrep-rule-creator t'aide à écrire ces règles correctement, parce qu'une règle mal écrite produit soit trop d'alertes inutiles (faux positifs qui érodent la confiance), soit pas assez (faux négatifs qui laissent passer des vrais bugs).

Le skill insiste sur la méthode : commencer par un motif large pour bien capturer le bug patterns,initial, andpuis l'affiner jusqu'à ce qu'il ne déclenche que sur le vrai cas dangereux. Il rappelle aussi qu'une règle non testée ne sert à rien : il faut toujours fournir des exemples de code patterns.vulnérable Use(qui whendoivent writingdéclencher Semgrepl'alerte) ruleset ordes buildingexemples customsûrs static(qui analysisne detections.doivent pas la déclencher). Il décourage les patterns trop larges (qui matchent tout et n'importe quoi) et trop spécifiques (qui ratent les variantes).

Pour les cas où on veut suivre la propagation d'une donnée — par exemple, une entrée utilisateur qui finit dans une commande système — il guide vers le mode « taint » de Semgrep, qui modélise les sources (où entre la donnée) et les sinks (où elle ne devrait jamais arriver sans nettoyage). En sortie : une règle YAML prête à intégrer dans ton pipeline d'intégration continue (CI).

Pour aller plus loin

Semgrep

Pour Ruleles Creatordétails

Createtechniques, production-qualityexemples Semgrep rules with proper testing and validation.

When to Use

Ideal scenarios:

    Writing Semgrep rules for specific buget patterns Writing rules to detect security vulnerabilities in your codebase Writing taint mode rules for data flow vulnerabilities Writing rules to enforce coding standards

    When NOT to Use

    Do NOT use this skill for:

      Running existing Semgrep rulesets General static analysis without custom rules (use static-analysis skill)

      Rationalizations to Reject

      When writing Semgrep rules, reject these common shortcuts:

        "The pattern looks complete" → Still run semgrep --test --config <rule-id>.yaml <rule-id>.<ext> to verify. Untested rules have hidden false positives/negatives. "It matches the vulnerable case" → Matching vulnerabilities is half the job. Verify safe cases don't match (false positives break trust).

        (extrait —spécifiques, voir le SKILL.md complet pour la suite)original.

        Source

        • Plugin : trailofbits/semgrep-rule-creator
        • Nom interne : semgrep-rule-creator
        • Fichier : /home/thymon/.claude/plugins/cache/trailofbits/semgrep-rule-creator/1.1.0/skills/semgrep-rule-creator/SKILL.md