Polyscan

オープンソース。明確なシグナル。

コード品質を、
測定する。

AIが書くコードの時代のための構造解析ツール。

Claude、Cursor、Codexで開発していますか? エージェントはレビューが追いつかない速さでコードを書きます。Polyscanはコードベース全体を構造解析し、1コマンドでスコア化して修正すべき箇所を示します。

Python

uvx pyscn@latest analyze .

JavaScript / TypeScript / Go / Rust / C++

npx polyscan analyze .

インストール不要、登録不要、コードがマシンの外に出ることはありません。

pyscn / 構造レポート
サンプル実行
ヘルススコア:74/ 100

コードベースの健全性

グレード B

構造のスナップショット。
次に見るべき場所がわかります。

3 個のメトリクスがしきい値超過

構造メトリクス05 項目
CC循環的複雑度
最大 31
しきい値超過
DUP重複率
8.2%
しきい値超過
DEADデッドコード
0 ブロック
しきい値以内
DEP依存サイクル
2 件
しきい値超過
CBOクラス結合度
最大 9
しきい値以内

自分のコードベースで実行

uvx pyscn@latest analyze .

1つのコードベース。5つの視点。明確な次の一歩。

あなたのスタックもカバーPythonTypeScriptJavaScriptGoRustC++

測定結果

推測を減らし、シグナルを増やす。

各アナライザーはコードベースを0〜100でスコア化し、A〜Fの評価付きHTMLレポートを生成します。5つの視点からコードを分析します。

DEAD

デッドコード

安全に削除できる到達不可能なコードを特定します。推測ではなく、制御フローグラフを辿って検出します。

DUP

重複コード

コピペや構造が類似した、マージする価値のあるコードを検出します。ツリー編集距離によるType 1〜4クローン検出。

CC

複雑度

読みにくくテストしにくい関数を循環的複雑度で順位付けし、どこから着手すべきかを示します。

DEP

依存関係

循環インポートや不安定なモジュール依存に加えて、コードベースが実際に形成しているモジュールコミュニティを可視化します。

CBO

クラス設計

責務が多すぎたり依存しすぎたりするクラスを、CBO結合度とLCOM凝集度で測定します。

全体像測るのは
構造。
アナライザーを見る

計測器

1つのエンジン、言語ごとのアナライザー

解析アルゴリズムは共有の言語非依存Goモジュールにあります。各アナライザーはパースと分類だけを実装するため、すべての言語が同じルールで評価されます。

pyscn

Python

オリジナルのアナライザー。CLI、MCPサーバー、Agent Skillsを同梱し、Polyscanの中核を担います。

uvx pyscn@latest analyze .

polyscan

JS / TS · Go · Rust · C++

JavaScript、TypeScript、Go、Rust、C++を1つのCLIで解析。拡張子から各ファイルの言語を判定し、1つのヘルススコアとともに1つのレポートにまとめます。事前ビルド済みバイナリ付きでnpmで配布されるため、ツールチェーンのインストールは不要です。

npx polyscan analyze .

core

Go module

両アナライザーの背後にある言語非依存エンジン。APTEDツリー編集距離、LSH/MinHashクローンインデックス、CFG解析、結合度・凝集度メトリクス。

go get github.com/ludo-technologies/polyscan/core

複雑度と重複コードは全言語をカバーします。デッドコード、依存関係、クラス設計は現在PythonとJavaScript/TypeScriptで利用可能で、その言語が持たない指標はクリーンと数えずスコアから除外されます。

エージェントスキル

コーディングエージェントのために設計

アナライザーには、AIエージェントに各解析をいつ・どう実行するかを教えるAgent Skillsが同梱されています。ヘルスチェック、リファクタリング、アーキテクチャレビュー、CI向けレポートに対応し、Claude Code、Cursor、Codex、Gemini CLIなどで動作します。

pyscn Skills

uvx add-skills ludo-technologies/pyscn

polyscan Skills

npx skills add ludo-technologies/polyscan

Claude Code plugin

claude plugin marketplace add ludo-technologies/polyscan

あとは聞くだけ

  • src/ディレクトリのコード品質を分析して
  • 重複コードを見つけて、リファクタリングを手伝って
  • 複雑なコードを見せて、簡略化するのを手伝って

継続モニタリング

CLIで一度測り、Appで毎週追跡。

GitHub Appは、リポジトリ全体の複雑度・重複・デッドコード・依存関係を毎週測定します。構造の劣化を継続的に追跡し、GitHub Issueで修正優先度を報告し、プルリクエストで新しい問題を検出します。週次測定はすべてのリポジトリで無料です。

FAQ

よくある質問

QPolyscanは実際に何を測定しますか?

スタイルではなく構造です。デッドコード、重複コード、循環的複雑度、モジュール依存の循環、クラスの結合度と凝集度——コードベースの変更コストを高める要素です。リンターやフォーマッタではありませんが、それらを補完します。

QAI生成コードになぜ重要なのですか?

コーディングエージェントは動くコードを素早く作りますが、リファクタリングせずにロジックを重複させ、関数を肥大化させがちです。こうした問題は静かに積み重なります。Polyscanはあなたとエージェントが取り組むべき測定値を提供し、クリーンアップを曖昧な感覚ではなく具体的なタスクにします。

Q何かインストールする必要がありますか?

いいえ。uvxとnpxがアナライザーを直接実行します。どちらもtree-sitterで構築された単一のGoバイナリとして配布されるため、コミットごとに実行できるほど高速です。

Qどの言語に対応していますか?

Pythonはpyscn、JavaScript・TypeScript・Go・Rust・C++はpolyscanが対応します。複雑度と重複コードは全言語で測定します。デッドコード、依存関係、クラス設計は、現時点でPythonとJavaScript/TypeScriptのバックエンドだけが構築するインポートグラフとクラスモデルを必要とするため、Go・Rust・C++ではスコアに含めず、クリーンとも数えません。

Qオープンソースですか?

はい、MITライセンスです。アナライザー、共有コア、Agent SkillsはすべてGitHubで公開されています。

今すぐ実行

1つのコマンドでコードベースを採点

今作業しているリポジトリで実行してください。数秒で終わり、インストールも不要です。

ターミナル

uvx pyscn@latest analyze .

ターミナル

npx polyscan analyze .