mcpField
C
code-review

code-review

github.com/lobehubテスト・品質83.6k56 回インストール今日更新
リポジトリ

code-review について

ローカルでコード変更をレビューするためのガイドです。正確性、セキュリティ、テスト、プロジェクト規約を確認し、優先度やファイル位置を添えた指摘の形式を定めています。

主な機能

  1. 01差分レビューのチェックリスト
  2. 02セキュリティとテストの確認
  3. 03i18nとルーティングの確認
  4. 04クラウドデプロイ影響の確認項目
  5. 05指摘の出力形式

活用シーン

  1. 01ローカルのコード差分をレビュー
  2. 02修正にテストがあるか確認
  3. 03クラウドデプロイに影響する変更を特定

インストール

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

$npx skills add https://github.com/lobehub/lobehub --skill code-review

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

詳細

コードレビューガイド

開始前

  1. コードスタイルとテスト規約を確認するため、/typescript と /testing のスキルを読みます
  2. 差分を取得します(GitHub のレビューツールから注入されるなど、すでにコンテキストに含まれている場合はスキップしてください):git diff または git diff origin/canary..HEAD

チェックリスト

正確性
  • console.log / console.debug の残存箇所 — debug パッケージを使うか、削除してください
  • try/catch 内の return await の欠落 — https://typescript-eslint.io/rules/return-await/ を参照してください(型情報が必要なため、現在は ESLint 設定に含まれていません)
  • 修正や実装をより簡潔、効率的、または互換性の高いものにできませんか?
セキュリティ
  • console.* や debug() の出力に機密データ(API キー、トークン、認証情報)が含まれていないこと
  • ターミナルに base64 を出力しないこと — 非常に長くなり、出力がフリーズします
  • シークレットをハードコードしないこと — 環境変数を使用してください
テスト
  • バグ修正には、修正したシナリオを網羅するテストを含めてください
  • 新しいロジック(サービス、ストアアクション、ユーティリティ)はテストで網羅してください
  • 既存のテストで、変更した動作が引き続き網羅されていますか?
  • vi.mock より vi.spyOn を優先してください(/testing スキルを参照)
i18n
  • 新しいユーザー向け文字列には、ハードコードしたテキストではなく i18n キーを使用してください
  • キーは {feature}.{context}.{action|status} の命名規則に従い、src/locales/default/{namespace}.ts に追加してください
  • PR の場合:すべての言語の locales/ 翻訳を更新してください(pnpm i18n)
SPA / ルーティング
  • desktopRouter のペア: 差分が src/spa/router/desktopRouter.config.tsx に触れている場合、同じルートパスとネスト構造で src/spa/router/desktopRouter.config.desktop.tsx も更新されていますか? 片方のファイルだけを編集すると、差異が生じて画面が真っ白になることがよくあります。
再利用
  • 新しく書いたコードは、packages/utils や共有モジュールにある既存のユーティリティと重複していませんか?
  • わずかに異なるコピペのコードブロック — 共有関数に切り出してください
  • antd のインポートは、@lobehub/ui のラッパーコンポーネント(Input、Button、Modal、Avatar など)に置き換えられませんか?
  • ハードコードした色ではなく antd-style のトークンシステムを使用してください。ランタイムでの計算が必要な場合を除き、createStyles + token より createStaticStyles + cssVar.* を優先してください
データベース
  • マイグレーションスクリプトはべき等である必要があります(IF NOT EXISTS、IF EXISTS ガード)
クラウドへの影響

下流のクラウドデプロイはこのリポジトリに依存しています。クラウド側の更新が必要になる可能性のある変更を指摘してください。

  • バックエンドのルートパスの変更 — 例:src/app/(backend)/webapi/chat/route.ts の名前変更、またはエクスポートの変更
  • SSR ページパスの変更 — 例:src/app/[variants]/(auth)/ 以下のファイルの移動や名前変更
  • 依存関係のバージョン更新 — 例:package.json の next や drizzle-orm のアップグレード
  • @lobechat/business-* のエクスポート変更 — 例:src/business/ の関数の名前変更、または packages/business/ の型シグネチャの変更
  • src/business/ と packages/business/ では、コメントやコード内でクラウド向けの商用ロジックを公開してはいけません

出力形式

ローカルの CLI レビューのみ(GitHub のレビューツールは代わりに PR へインラインコメントを投稿します):

  • 指摘事項に連番を付けてください
  • 優先度を示してください:[high] / [medium] / [low]
  • 各指摘事項にファイルパスと行番号を含めてください
  • 問題点のみを列挙し、要約や称賛は含めないでください
  • 各指摘事項についてソース全体を読み直し、実際の問題であることを確認してから、「すべての指摘事項を検証しました。」と出力してください

コメント