あらゆるモデルプロバイダーに対応し、GitHubのプルリクエストやローカルブランチの変更をLLMでレビューするオープンソースのAIコードレビュアー。
winnin/farol
AIコードレビュー後にプルリクエストのマージリスクを評価し、影響するファイルやエンドポイントを一覧表示するCLI/GitHub Action。
- スター
- 174
- フォーク
- 5
- 未解決の Issue
- 6
- 最終コミット
- 一昨日
これは何?
farolは、プルリクエストを承認する人向けの無料のオープンソースCLI/GitHub Actionです。AIレビューエージェントがdiffにコメントした後、farolは静的解析で変更コードの影響先(ページ、API操作、RPCメソッド、ジョブ、スクリプトなど)を可視化し、変更に対する判定(迅速にマージ、簡易レビュー、慎重にレビュー)と0〜100のリスクスコアを提示します。
レポートでは、影響範囲、diffのカバレッジ、セキュリティ上の指摘、コントラクトの破壊的変更、依存関係の変更を組み合わせて評価します。リスクの高いファイルから順に、インラインdiff、テストされていない行、手動テストのチェックリストを表示します。コードの解析にはTypeScriptの型チェッカー、go/types、Pythonのastを使い、解析対象のコードを実行したり、ネットワーク経由で送信したりすることはありません。ローカルまたはCIで実行でき、マージをブロックせずにプルリクエストへコメントを投稿します。
対応スタックには、React Router、Next.js、TanStack Routerのフロントエンド、TypeScriptのGraphQL/RESTバックエンド、Goサービス、FastAPI、Flask、DjangoなどのPythonサービスが含まれます。Datadogを連携すると、トラフィックとエラーの情報も追加できます。
主な機能
- 01変更されたファイルをリスク順に並べ、それぞれが影響するページやエンドポイントを表示する。
- 02判定と0〜100のリスクスコアを、その根拠とともに提示する。
- 03GraphQL、FastAPI、Go、gRPCのコントラクトに対する破壊的変更を検出する。
- 04インラインdiffで未テストの行を示し、CIからカバレッジ、lint、監査レポートを取り込む。
- 05単一ファイルのHTMLレポートとMarkdown形式のレビューレコードを生成する。
ユースケース
- 大規模なプルリクエストを承認する前に、どれだけレビュー時間をかけるべきか判断する。
- マージ前に、破壊的なAPI変更とその下流の呼び出し元を検出する。
- 既存のAIレビュアーと併用し、GitHubのプルリクエストにリスクのトリアージ工程を追加する。
- 共有コンポーネントの変更がどのフロントエンドページに影響するか確認する。
クイックスタート
- 1
プロジェクトのルートに farol.config.json を作成し、使用する技術スタックを記述します
- 2
farol が検出したページ、エンドポイント、ジョブ、スクリプトを一覧表示します
npx @winninjs/farol routes - 3
ブランチを比較対象のブランチと照らし合わせて分析します
npx @winninjs/farol analyze --base origin/main --head HEAD --out farol.json - 4
HTML レポートを生成して開きます
npx @winninjs/farol html --in farol.json --out farol.html && open farol.html
使う前に知っておきたいこと
- Node.js 22 以降と git が必要です。Go プロジェクトでは go、Python プロジェクトでは python3 3.11 以降も必要です。
- 対応しているコードベースは TypeScript、Go、Python のみです。
収録されている特集
トピック
よくある質問
- farol とは?
- AIコードレビュー後にプルリクエストのマージリスクを評価し、影響するファイルやエンドポイントを一覧表示するCLI/GitHub Action。 farolは、プルリクエストを承認する人向けの無料のオープンソースCLI/GitHub Actionです。AIレビューエージェントがdiffにコメントした後、farolは静的解析で変更コードの影響先(ページ、API操作、RPCメソッド、ジョブ、スクリプトなど)を可視化し、変更に対する判定(迅速にマージ、簡易レビュー、慎重にレビュー)と0〜100のリスクスコアを提示します。
- farol は無料で使えますか?ライセンスは?
- farol は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- farol は今もメンテナンスされていますか?
- 活発にメンテナンス中。farol の最終コミットは 2026年11月4日 です。
- farol は何に使えますか?
- 大規模なプルリクエストを承認する前に、どれだけレビュー時間をかけるべきか判断する。 マージ前に、破壊的なAPI変更とその下流の呼び出し元を検出する。 既存のAIレビュアーと併用し、GitHubのプルリクエストにリスクのトリアージ工程を追加する。 共有コンポーネントの変更がどのフロントエンドページに影響するか確認する。
- farol のインストール方法は?
- プロジェクトのルートに farol.config.json を作成し、使用する技術スタックを記述します farol が検出したページ、エンドポイント、ジョブ、スクリプトを一覧表示します: npx @winninjs/farol routes ブランチを比較対象のブランチと照らし合わせて分析します: npx @winninjs/farol analyze --base origin/main --head HEAD --out farol.json HTML レポートを生成して開きます: npx @winninjs/farol html --in farol.json --out farol.html && open farol.html
- farol はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/winnin/farol
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
好みのLLMプロバイダーを使ってセルフホストできる、プルリクエスト向けのオープンソースAIコードレビュー。
Claude Code、Codex、Cursor、Cline向けに、push前に別のレビュアーでエージェントの変更を確認するオープンソースのAIコードレビュー。
Danger JSはCI後に実行され、変更履歴やPRの説明文など、チームのコードレビュー規約を自動チェックします。
LLMでプルリクエストの差分をレビューし、優先度を付けた少数のインラインコメントを投稿するGitHub Actionです。
コミット前にステージ済みの差分をAIレビューするGitフック。ブラウザー上のUIでインラインコメントを確認できます。