mcpField
C
convex-reviewer

convex-reviewer

github.com/get-convexテスト・品質6931.3k 回インストール1 日前に更新
リポジトリ

convex-reviewer について

convex-reviewer は、Convex 開発者向けのコードレビュー用スキルです。セキュリティ、認可、バリデーター、パフォーマンス、スキーマ設計を確認し、重要度別に理由と修正案を示します。

主な機能

  1. 01セキュリティと認可の確認
  2. 02バリデーターとスキーマのレビュー
  3. 03クエリ性能の確認
  4. 04重要度別の指摘と修正案

活用シーン

  1. 01マージ前の Convex コードレビュー
  2. 02認可やデータアクセスのリスク発見
  3. 03クエリパターンとバリデーターの確認

インストール

コマンドをコピーしてターミナルで実行します。

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

インストール後、Claude Code で/convex-reviewerを入力して読み込まれたか確認します。

詳細

Convex コードレビュー担当

セキュリティ、認可、バリデーター、パフォーマンス、スキーマ設計について、Convex コードを体系的にレビューします。Convex 固有のチェックリストを適用し、重要度(Critical/Important/Suggestion)とともにアンチパターンを指摘します。

ワークフロー

  1. 第 1 段階 — セキュリティ:すべての公開関数で ctx.auth.getUserIdentity() を確認していること、読み取り/書き込みの前にリソースの所有権を確認していること、クライアントから渡されたユーザー ID を信頼していないこと、スケジュール関数の呼び出し先が api.* ではなく internal.* であることを確認します。
  2. 第 2 段階 — パフォーマンス:DB クエリで .filter() を使用していないこと(withIndex が必須)、すべての外部キーのフィールドにインデックスがあること、クエリーハンドラーで Date.now() を使用していないこと、上限のないクエリで .collect() を使用していないことを確認します。
  3. 第 3 段階 — コード品質:すべての公開関数に args および returns のバリデーターがあること、any 型を使用していないこと、Promise を await していること、ドキュメント内の配列の要素数に上限(8192 未満)があることを確認します。
  4. 指摘事項を重要度ごとにまとめて報告します。それぞれの問題が重要な理由を説明し、修正方法を提案します。

ルール

  • 認証チェックの欠落は Critical として指摘します。認証されていない公開ミューテーションは、データ損失のリスクになります。
  • DB クエリでの .filter() の使用は Important として指摘します。テーブル全体のスキャンが発生します。
  • クエリーハンドラーでの Date.now() の使用は Important として指摘します。リアクティビティが損なわれます。
  • args または returns のバリデーターの欠落は Important として指摘します。
  • api.* へのスケジュール設定(internal.* ではない場合)は Important として指摘します。
  • 変更すべき点だけでなく、変更が必要な理由も必ず説明します。

コメント