convex-reviewer

Convex-Code-Reviewer – Sicherheit, Authentifizierung, Validatoren, Leistung und Musterprüfungen für Code in einem convex/-Verzeichnis. Verwenden Sie ihn, um Convex-Funktionen vor der Veröffentlichung zu überprüfen oder zu auditieren.

npx skills add https://github.com/get-convex/agent-skills --skill convex-reviewer

Convex Code Reviewer

Structured review of Convex code for security, authorization, validators, performance, and schema design. Applies a Convex-specific checklist and flags anti-patterns with severity (Critical / Important / Suggestion).

Workflow

  1. First pass — Security: verify all public functions check ctx.auth.getUserIdentity(), verify resource ownership before reads/writes, confirm no client-provided user IDs are trusted, confirm scheduled functions target internal.* not api.*.
  2. Second pass — Performance: confirm no .filter() on DB queries (withIndex required), verify all foreign-key fields have indexes, confirm no Date.now() in query handlers, confirm .collect() is not used on unbounded queries.
  3. Third pass — Code quality: confirm args and returns validators on every public function, no any types, promises are awaited, arrays in documents are bounded (<8192 elements).
  4. Report findings grouped by severity; explain why each issue matters and suggest a fix.

Rules

  • Flag missing auth checks as Critical — any unauthenticated public mutation is a data-loss risk.
  • Flag .filter() on DB queries as Important — it is a full table scan.
  • Flag Date.now() in query handlers as Important — it breaks reactivity.
  • Flag missing args or returns validators as Important.
  • Flag scheduling to api.* (not internal.*) as Important.
  • Always explain why a change is needed, not just what to change.

Mehr Skills von get-convex

convex-performance-audit
get-convex
Prüft die Convex-Leistung für Lesevorgänge, Abonnements, Schreibkonflikte und Funktionsgrenzen. Verwenden Sie dies bei langsamen Funktionen, Erkenntnissen, OCC-Konflikten oder Leseamplifikation.
developmentdatabasedata-analysis
convex
get-convex
Leitet allgemeine Convex-Anfragen an die richtige Projekt-Fähigkeit weiter. Verwenden, wenn der Benutzer fragt, welche Convex-Fähigkeit verwendet werden soll, oder eine unzureichend spezifizierte Convex-App-Aufgabe angibt.
developmentdatabase
convex-setup-auth
get-convex
Richtet Convex-Authentifizierung, Identitätszuordnung und Zugriffskontrolle ein. Verwenden für Login, Authentifizierungsanbieter, Benutzertabellen, geschützte Funktionen oder Rollen in einer Convex-App.
developmentdatabaseapi
convex-quickstart
get-convex
Erstellt oder fügt Convex zu einer App hinzu. Verwenden für neue Convex-Projekte, npm create convex@latest, Frontend-Setup, Umgebungsvariablen oder den ersten npx convex dev-Durchlauf.
developmentdatabase
convex-migration-helper
get-convex
Plant Convex-Schema- und Datenmigrationen mit widen-migrate-narrow und @convex-dev/migrations. Verwenden für breaking Schemaänderungen, Backfills, Tabellenumstrukturierungen oder Rollouts ohne Ausfallzeiten.
developmentdatabase
convex-create-component
get-convex
Erstellt wiederverwendbare Convex-Komponenten mit isolierten Tabellen und anwendungsorientierten APIs. Verwenden für neue Komponenten, wiederverwendbare Backend-Module, Integrationen oder Arbeiten an Komponentengrenzen.
developmentdatabase
convex-migrate
get-convex
Migriere das Schema und fülle Daten in einer bereitgestellten Convex-App mit @convex-dev/migrations nach.
developmentdatabase
convex-optimize
get-convex
Auditieren und optimieren einer bestehenden Convex-App: Sicherheit, Skalierung, Upgrades, Beobachtbarkeit.