プログラミング
Jev ベースのコードレビュー
Jev Based Code Review (github.com)
要約
Jev Code Reviewerは、AIエージェントが生成するプルリクエスト(PR)のレビュー負荷を軽減するためのツールです。変更をP0、P1、P2の優先度で分類し、デフォルトではP0のみを表示することで、人間のレビュアーの負担を減らします。自然言語での差分表示や、ローカル実行によるプライバシー保護も特徴です。
全文翻訳
Jev-Code-Reviewer
今日のAIエージェントが生成するPRの多くは、エージェントが突然230ファイルもの変更を提示した場合、人間が理解するのが難しいため、YOLO(You Only Live Once)でマージされています。これは、レビュー内の各変更をP0、P1、P2に分類することで、精神的な負担を軽減しようとする試みです。デフォルトではP0のみが表示されます。優先度は設定可能です。差分は自然言語でも表示されます。元のコードはトグルで切り替え可能です。これはあなたのコンピュータ上で実行され、あなたのコーディングエージェントのPRをレビューし、GitHubには何も投稿しません。
録画を見る · デモPRを開く。
バンドルされた録画は、実際のJev分類と、ラベル付けされた準備済みの説明コピー(出所)を使用しています。
クイックデモ
Node.js 22+ が必要です。
git clone https://github.com/egma-ai/jev-code-reviewer.git
cd jev-code-reviewer
npm install
npm run demo
http://127.0.0.1:4731/demo を開いてリプレイを表示します。これはプロバイダーへの呼び出しを行いません。または、拡張機能(下記参照)をロードして、デモPRのFiles changedページを開きます。
あなた自身のPRをレビューする
GitHub CLIにサインインしていること(gh auth login)と、PRのリポジトリをオリジンとするローカルクローンが必要です。
npm link # jev-reviewer コマンドを追加します
jev-reviewer setup # TypeSafe と OpenAI のキーを保存します。自分のターミナルで実行してください。
jev-reviewer doctor # ツール、キーソース、ローカルサーバー、プロバイダーへのアクセスを確認します。
jev-reviewer serve # 実行したままにしておきます。
jev-reviewer analyze --pr https://github.com/OWNER/REPO/pull/123 --repo /path/to/clone
その後Chromeで:
chrome://extensions を開き、開発者モードをオンにし、「Load unpacked」をクリックして、このリポジトリのextension/フォルダを選択します。
jev-reviewer token | pbcopy を実行します。拡張機能のポップアップで、Connectionを開き、ペーストしてSaveをクリックします。Pairedと表示されるはずです。
PRのFiles changedページ(/pull/<n>/files)を開き、「Show logic in place of code」をオンにします。
オプション:uv tool install graphifyy は、より良いコンテキストのためにローカルコードグラフを追加します。
あなたのコーディングエージェントがPRを開いた後にanalyzeを実行するようにするには、エージェントスキルをインストールします。
知っておくと良いこと
あなたのコードはあなたのマシンから離れます。analyze は変更されたコードと近傍のコンテキストをTypeSafeとOpenAIに送信します。拡張機能は127.0.0.1:4731のローカルサーバーとしか通信しません。キーは~/.config/jev-reviewer/credentials.json(所有者のみ、暗号化なし)に保存されます。コーディングエージェントのシェルがしばしば見ることができないエクスポートされた変数よりもこちらを推奨します。
カバレッジには上限があります。パス順で最初の12個の変更ユニット(diff hunks)が分析されます。--max-unitsは最大100まで許可します。分析されていない変更があるファイルはGitHubのコードを保持し、CLIとポップアップにその数が表示されます。
Classic Files changedページのみ対応です。GitHubの新しい/changesページはまだサポートされていません。プロフィール写真→Feature previewの下に戻してください。古いレポートは決して表示されません。
PRに新しいコミットがある場合、拡張機能はGitHubのコードを保持します。analyzeを再実行し、Refresh reportをクリックしてください。
優先度は正確さではなく、注意を意味します。P0ファイルはデフォルトで開きます。P1とP2は折りたたまれた状態で始まります。config/policy.jsonをレビュー対象リポジトリの.jev-reviewer.jsonにコピーするか、--policyを渡すことで調整できます。
開発
npm test
node scripts/test-extension.mjs # Chromiumとポート4731が空いている必要があります
アーキテクチャ、デモガイド、拡張機能の詳細をご覧ください。MIT。