Expert TypeScript

Revue de Code IA pour TypeScript

diffray comprend TypeScript. Génériques, mode strict, type guards — revue IA pour des applications type-safe.

Node.js18+
Deno1.x
Bun1.x
NestJS10.x
tRPC10+

Conçu pour les Développeurs TypeScript

Agents IA qui comprennent le système de types de TypeScript en profondeur.

Sécurité des Types

Détecte les erreurs de types, valide les génériques et applique les patterns du mode strict.

  • Strict null checks
  • Contraintes génériques
  • Type narrowing

Sécurité Runtime

Trouve les problèmes que le compilateur manque mais qui causent des erreurs runtime.

  • Abus de type assertion
  • Implicit any
  • Casts non sécurisés

Sécurité

Détecte les vulnérabilités dans les applications TypeScript full-stack.

  • Validation d'entrée
  • Injection SQL
  • Prévention XSS

Performance

Identifie les problèmes de performance au niveau des types et d'optimisation de build.

  • Types complexes
  • Impact bundle
  • Tree shaking

Problèmes TypeScript Courants Détectés

Type assertions (as any)
Contourne la sécurité des types, erreurs runtime
Signale les casts non sécurisés, suggère des type guards
Vérifications null manquantes
Cannot read property of undefined
Valide les patterns strictNullChecks
Implicit any dans les génériques
Perte d'information de type, bugs
Applique des contraintes génériques explicites
Prédicats de type non sécurisés
Type narrowing incorrect
Valide les type guards définis par l'utilisateur

Règles Personnalisées pour la Sécurité des Types

Appliquez les standards TypeScript de votre équipe. Interdire les patterns non sécurisés, exiger des types stricts.

  • Interdire 'as any' et les type assertions non sécurisés
  • Exiger des types de retour explicites sur les exports
  • Appliquer les branded types pour les IDs
  • Valider l'utilisation des schémas Zod/io-ts
.diffray/rules/typescript.yaml
rules:
  - id: ts_no_unsafe_any
    agent: bugs
    title: No unsafe type assertions
    description: Avoid 'as any' and prefer
      type guards or unknown
    importance: 9
    match:
      file_glob:
        - '**/*.ts'
        - '**/*.tsx'
    checklist:
      - No 'as any' assertions
      - Use type guards for narrowing
      - Prefer unknown over any
    tags:
      - typescript
      - type-safety
      - strict-mode

FAQ TypeScript

Créez des Apps Type-Safe

Rejoignez les équipes TypeScript utilisant diffray pour une revue de code IA experte.

Validation mode strict
Vérification des génériques
Validation type guards