convex-reviewer

Ревьюер кода Convex — проверки безопасности, аутентификации, валидаторов, производительности и паттернов для кода в каталоге convex/. Используйте для ревью или аудита функций Convex перед выпуском.

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.

Больше skills от get-convex

convex-performance-audit
get-convex
Аудит производительности Convex для чтений, подписок, конфликтов записи и ограничений функций. Используется для медленных функций, результатов анализа, конфликтов OCC или усиления чтения.
developmentdatabasedata-analysis
convex
get-convex
Маршрутизирует общие запросы Convex к соответствующему навыку проекта. Используйте, когда пользователь спрашивает, какой навык Convex использовать, или даёт недостаточно конкретную задачу для приложения Convex.
developmentdatabase
convex-setup-auth
get-convex
Настраивает аутентификацию Convex, сопоставление идентификаторов и контроль доступа. Используется для входа в систему, провайдеров аутентификации, таблиц пользователей, защищённых функций или ролей в приложении Convex.
developmentdatabaseapi
convex-quickstart
get-convex
Создаёт или добавляет Convex в приложение. Используется для новых проектов Convex, npm create convex@latest, настройки фронтенда, переменных окружения или первого запуска npx convex dev.
developmentdatabase
convex-migration-helper
get-convex
Планирует миграции схемы и данных Convex с помощью widen-migrate-narrow и @convex-dev/migrations. Используется для критических изменений схемы, обратного заполнения, изменения структуры таблиц или развертываний без простоев.
developmentdatabase
convex-create-component
get-convex
Создаёт переиспользуемые компоненты Convex с изолированными таблицами и API для приложений. Используйте для новых компонентов, переиспользуемых бэкенд-модулей, интеграций или работы на границах компонентов.
developmentdatabase
convex-migrate
get-convex
Мигрировать схему + обратно заполнить данные в развернутом приложении Convex с помощью @convex-dev/migrations.
developmentdatabase
convex-optimize
get-convex
Аудит и оптимизация существующего приложения Convex: безопасность, масштабирование, обновления, наблюдаемость.