MEASURE
リポジトリ全体を測定
オープンソースの解析エンジン(Pythonはpyscn、JavaScript・TypeScript・Go・Rust・C++はpolyscan)が、複雑度・重複・デッドコード・依存関係・クラス設計をリポジトリ全体で測定します。数値は毎回同じ基準で算出されます。
GitHub App · パブリックリポジトリは無料
PR単位のレビューでは、コードベース全体の劣化は見えません。オープンソースの静的解析がリポジトリ全体から問題候補を見つけ、AIエージェントが重要な候補を実際のコードを読んで検証。優先して直すべき箇所を、最大10件の推奨事項としてGitHub Issueに届けます。
パブリックリポジトリは全機能が無料。カード登録も不要です。Proはプライベートリポジトリにも同じ機能を提供します。
polyscan analyze . → 142 findings
read_file api/handlers.py:190-262
▲ confirmedCC 31, three jobs in one function
read_file services/user.py:45-62 + admin.py:23-40
▲ confirmed87% clone, same validation twice
read_file core/plugins.py:1-44
● dismissed"dead code" is a documented plugin hook
監査エージェント
静的解析は網羅的ですが、誤検知も意図的な設計も、本物の問題と同じように機械的に拾います。Polyscanはその出力を出発点に、人間のレビュアーのようにコードを読んで裏を取ります。
MEASURE
オープンソースの解析エンジン(Pythonはpyscn、JavaScript・TypeScript・Go・Rust・C++はpolyscan)が、複雑度・重複・デッドコード・依存関係・クラス設計をリポジトリ全体で測定します。数値は毎回同じ基準で算出されます。
INVESTIGATE
エージェントは重要度の高い指摘を選び、その背後にある関数やクラスをファイルを横断して読みます。重複の統合を勧める前に該当箇所をすべて読み、コード自身が理由を説明している指摘やプロジェクトの設計方針に沿った依存は見送るよう設計しています。
REPORT
コードと照らして残った指摘を、ファイル・関数・行番号付きの推奨事項(最大10件)にまとめ、GitHub Issueに書き込みます。レポートは日本語を含む8言語から選べます。
コードと照らして検証
静的解析ツールは数百件の警告を出力し、どれが本物かの判断は人間に委ねます。Polyscanはその一次判断を引き受けます。
機能
AUDIT
リポジトリ全体の複雑度、重複、デッドコード、依存関係を毎週測定。エージェントが指摘の背後にあるコードを読んで検証し、直すべき箇所と前回からの変化をGitHub Issueで報告します。
PR
変更されたコードを静的解析し、複雑化や重複をマージ前に指摘。週次の全体測定をリアルタイムのフィードバックで補完します。

YAML
シンプルなYAMLファイルでPolyscanの動作をカスタマイズ。複雑なセットアップは不要です。
.github/polyscan.yml
# レポート言語 (デフォルト: en)
language: ja
# 対象ディレクトリ (デフォルト: 全体)
target_directories:
- src/
# 監査間隔 (デフォルト: weekly)
audit_interval: weekly
# PRレビュー (デフォルト: false、プライベートはPro)
pr_review: true測定項目
エージェントの調査は、リポジトリ全体で測定したこの5つの構造指標から始まります。
DEAD
安全に削除できる到達不可能なコードを特定します。推測ではなく、制御フローグラフを辿って検出します。
DUP
コピペや構造が類似した、マージする価値のあるコードを検出します。ツリー編集距離によるType 1〜4クローン検出。
CC
読みにくくテストしにくい関数を循環的複雑度で順位付けし、どこから着手すべきかを示します。
DEP
循環インポートや不安定なモジュール依存に加えて、コードベースが実際に形成しているモジュールコミュニティを可視化します。
CBO
責務が多すぎたり依存しすぎたりするクラスを、CBO結合度とLCOM凝集度で測定します。
オープンソース
Polyscanが使う解析エンジンはMITライセンスで公開されています。CLIとして手元で実行すれば、エージェントが出発点にしているのと同じ測定値を確認できます。
Python
uvx pyscn@latest analyze .JavaScript / TypeScript / Go / Rust / C++
npx polyscan analyze .料金
パブリックリポジトリは全機能を無料で。支払いはプライベートリポジトリの分だけ
FAQ
GitHubリポジトリを定期的に監査するAIエージェントです。オープンソースの静的解析エンジン(Pythonはpyscn、JavaScript・TypeScript・Go・Rust・C++はpolyscan)でリポジトリ全体を測定し、重要な指摘の背後にある実際のコードを読んで検証し、優先して直すべき箇所をGitHub Issueで推奨します。
解析ツールは誤検知や意図的な設計も含めてすべての指摘を出力し、選別は人間に委ねます。Polyscanのエージェントはその一次選別を担います。重要な指摘の背後にあるコードをリポジトリ横断で読み、コード自身が理由を説明しているものを見送り、ファイル・関数・行番号付きの推奨事項(最大10件)に絞り込みます。推奨はAIの判断なので、結論ではなく優先度付きの出発点として扱ってください。
多くのAIレビューはプルリクエストの差分だけを見ます。Polyscanは毎週リポジトリ全体を測定し、その測定値を起点に調査するため、指摘は印象ではなく毎回同じ基準で取った数値に基づきます。PRレビューもオプトインで利用できます。
コードは当社のオンプレミス環境で動作するローカルLLMによって解析され、外部の生成AI APIには送信されません。保存もしません。レポートがGitHubに投稿された時点でコードは破棄されます。
Python、JavaScript、TypeScript、Go、Rust、C++に対応しています。複雑度と重複コードは全言語で測定します。デッドコード、依存関係、クラス設計は、現時点でPythonとJavaScript/TypeScriptのバックエンドだけが構築するインポートグラフとクラスモデルを必要とするため、Go・Rust・C++ではスコアに含めず、クリーンとも数えません。
解析エンジン(pyscn、polyscan、共有コア)はMITライセンスで、CLIとして無料で実行できます。エージェントを加えて運用まで行うGitHub Appは、パブリックリポジトリなら全機能無料、プライベートリポジトリはProで利用できます。
インストール