Эксперт по TypeScript

AI Code Review для TypeScript

diffray понимает TypeScript. Дженерики, строгий режим, type guards — AI-ревью для типобезопасных приложений.

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

Создано для TypeScript-разработчиков

AI-агенты, глубоко понимающие систему типов TypeScript.

Типобезопасность

Обнаружение ошибок типов, проверка дженериков и соблюдение паттернов strict mode.

  • Strict null checks
  • Ограничения generic
  • Сужение типов

Runtime-безопасность

Поиск проблем, которые компилятор пропускает, но вызывают runtime ошибки.

  • Злоупотребление as
  • Implicit any
  • Небезопасные касты

Безопасность

Обнаружение уязвимостей в full-stack TypeScript приложениях.

  • Валидация ввода
  • SQL инъекции
  • Защита от XSS

Производительность

Выявление проблем производительности типов и оптимизации сборки.

  • Сложные типы
  • Влияние на бандл
  • Tree shaking

Типичные проблемы TypeScript, которые мы находим

Утверждения типов (as any)
Обход типобезопасности, runtime ошибки
Отмечает небезопасные касты, предлагает type guards
Отсутствие проверок на null
Cannot read property of undefined
Проверяет паттерны strictNullChecks
Implicit any в дженериках
Потеря информации о типах, баги
Требует явных ограничений generic
Небезопасные предикаты типов
Неправильное сужение типов
Проверяет пользовательские type guards

Кастомные правила для типобезопасности

Соблюдайте стандарты TypeScript вашей команды. Запрет небезопасных паттернов, требование строгих типов.

  • Запрет 'as any' и небезопасных утверждений типов
  • Требование явных типов возврата для экспортов
  • Применение брендированных типов для ID
  • Проверка использования схем 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

Вопросы о TypeScript

Создавайте типобезопасные приложения

Присоединяйтесь к командам TypeScript, использующим diffray для экспертного AI code review.

Проверка strict mode
Проверка дженериков
Валидация type guards