convex-reviewer

Revisor de código Convex — verificações de segurança, autenticação, validadores, desempenho e padrões de código em um diretório convex/. Use para revisar ou auditar funções Convex antes de publicar.

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.

Mais skills de get-convex

convex-performance-audit
get-convex
Audita o desempenho do Convex para leituras, assinaturas, contenção de gravação e limites de função. Use para funcionalidades lentas, descobertas de insights, conflitos OCC ou amplificação de leitura.
developmentdatabasedata-analysis
convex
get-convex
Roteia solicitações gerais do Convex para a skill de projeto correta. Use quando o usuário perguntar qual skill do Convex usar ou der uma tarefa de aplicativo Convex subespecificada.
developmentdatabase
convex-setup-auth
get-convex
Configura autenticação Convex, mapeamento de identidade e controle de acesso. Use para login, provedores de autenticação, tabelas de usuários, funções protegidas ou funções em um aplicativo Convex.
developmentdatabaseapi
convex-quickstart
get-convex
Cria ou adiciona Convex a um aplicativo. Use para novos projetos Convex, npm create convex@latest, configuração de frontend, variáveis de ambiente ou a primeira execução do npx convex dev.
developmentdatabase
convex-migration-helper
get-convex
Planeja migrações de esquema e dados do Convex com widen-migrate-narrow e @convex-dev/migrations. Use para mudanças de esquema que quebram compatibilidade, backfills, reformatação de tabelas ou implantações sem tempo de inatividade.
developmentdatabase
convex-create-component
get-convex
Constrói componentes Convex reutilizáveis com tabelas isoladas e APIs voltadas para aplicativos. Use para novos componentes, módulos de backend reutilizáveis, integrações ou trabalho em limites de componentes.
developmentdatabase
convex-migrate
get-convex
Migre o schema e faça o backfill de dados em um app Convex implantado usando @convex-dev/migrations.
developmentdatabase
convex-optimize
get-convex
Audite e otimize um aplicativo Convex existente: segurança, escala, atualizações, observabilidade.