
コード品質の向上に焦点を当てた、プログラミング言語、設定、ビルドツール、CI向けの静的解析(SAST)ツールとリンターの厳選ディレクトリ。
このリポジトリは、すべてのプログラミング言語、ビルドツール、設定ファイルなどに対応する静的解析ツールを一覧にしています。リンターやフォーマッターなど、コード品質を向上させるツールに焦点を当てています。 公式ウェブサイト analysis-tools.dev はこのリポジトリを基にしており、ランキング、ユーザーコメント、各ツールの動画などの追加リソースを提供しています。
このプロジェクトは、スポンサーの寛大な支援なしには実現できませんでした。
|
|
|
|
このプロジェクトを支援したい方は、GitHub Sponsors ページ をご覧ください。
姉妹プロジェクトの awesome-dynamic-analysis もぜひご覧ください。
abaplint — TypeScript で書かれた ABAP 用リンター。
abapOpenChecks — 新しいカスタマイズ可能なチェックで SAP Code Inspector を強化します。
Polyspace for Ada ©️ — ソースコード内のオーバーフロー、ゼロ除算、配列の範囲外アクセス、およびその他の特定の実行時エラーが存在しないことを証明するコード検証を提供します。
SPARK ©️ — Ada 用の静的解析および形式検証ツールセット。
Astrée ©️ — Astrée は、C/C++ アプリケーションにおける実行時エラーおよび不正な並行動作が存在しないことを自動的に証明します。浮動小数点演算に対して健全で、非常に高速かつ極めて正確です。このアナライザーは MISRA/CERT/CWE/Adaptive Autosar コーディングルールもチェックし、ISO 26262、DO-178C レベル A、およびその他の安全基準の認定をサポートしています。Jenkins および Eclipse プラグインが利用可能です。
CBMC — C プログラム用の有界モデルチェッカー。ユーザー定義のアサーション、標準アサーション、いくつかのカバレッジメトリクス分析に対応。
clang-tidy — Clang ベースの C++ リンターツール。問題を修正する(限定的な)機能も備えています。
clazy — Clang フレームワークに基づく Qt 指向の静的コードアナライザー。clazy は clang が Qt のセマンティクスを理解できるようにするコンパイラプラグインです。不要なメモリ割り当てから API の誤用まで、50 以上の Qt 関連のコンパイラ警告が得られ、自動リファクタリング用の fix-it も含まれます。
CMetrics ⚠️ — C ファイルのサイズと複雑度を測定します。
codechecker — Web GUI を備えた Clang Static Analyzer 用の欠陥データベースおよびビューア拡張機能。
CPAchecker — C プログラムの構成可能なソフトウェア検証用ツール。CPAchecker という名前は、このツールが CPA の概念に基づいており、ソフトウェアプログラムのチェックに使用されることを反映して選ばれました。
cppcheck — C/C++ コードの静的解析。
CppDepend ©️ — コードを測定、クエリ、可視化し、予期しない問題、技術的負債、複雑度を回避します。
cpplint — Google のスタイルガイドに従う自動 C++ チェッカー。
cqmetrics ⚠️ — C コードの品質メトリクス。
CScout — C および C プリプロセッサコードの複雑度と品質メトリクス。
ENRE-cpp ⚠️ — ENRE (ENtity Relationship Extractor) は、ソースコードからコードエンティティの依存関係や関係を抽出するツールです。ENRE-cpp は @eclipse/CDT に基づく C/C++ 用の ENtity Relationship Extractor です。(開発中)
ESBMC — ESBMC は、単一およびマルチスレッドの C/C++ プログラムの検証のために、充足可能性モジュロ理論に基づく、オープンソースで寛容なライセンスのコンテキスト有界モデルチェッカーです。
flawfinder — 潜在的なセキュリティ上の弱点を検出します。
flint++ ⚠️ — Facebook で開発・使用された C++ 用 lint プログラム flint のクロスプラットフォームで依存関係ゼロの移植版。
Frama-C — C コード用の健全で拡張可能な静的アナライザー。
GCC — GCC コンパイラはバージョン 10 以降、静的解析機能を備えています。このオプションは、GCC がアナライザーサポートを有効にして構成されている場合にのみ利用可能です。また、診断結果を SARIF 形式の JSON ファイルに出力することもできます(v13 以降)。
Goblint — マルチスレッド C プログラムの解析用の静的アナライザー。主な焦点はデータ競合の検出ですが、バッファオーバーフローやヌルポインタ参照などの他の実行時エラーも報告します。
Helix QAC ©️ — 組み込みソフトウェア向けのエンタープライズグレードの静的解析。MISRA、CERT、AUTOSAR コーディング標準をサポートしています。
IKOS ⚠️ — LLVM に基づく C/C++ コード用の健全な静的アナライザー。
KLEE — LLVM コンパイラ基盤上に構築された動的シンボリック実行エンジン。プログラムのできるだけ多くの部分をテストケースが網羅するように、テストケースを自動生成できます。
LDRA ©️ — MISRA C & C++、JSF++ AV、CWE、CERT C、CERT C++ & カスタムルールなど、さまざまな標準に対応した静的解析 (TBVISION) を含むツールスイート。
MATE ⚠️ — C および C++ コードのバグ発見に焦点を当てた対話型プログラム解析ツールスイート。MATE はコードプロパティグラフ (CPG) を使用してアプリケーション固有の脆弱性解析と低レベルの脆弱性解析を統合し、実装の詳細と対象 C/C++ プログラムの高レベルなセマンティクスの両方に依存する高度にアプリケーション固有の脆弱性の発見を可能にします。
PC-lint ©️ — C/C++ 用の静的解析。Windows/Linux/MacOS でネイティブに動作します。C11/C18 および C++17 をサポートし、事実上あらゆるプラットフォームのコードを解析します。
Phasar — テイント解析と型状態解析を備えた LLVM ベースの静的解析フレームワーク。
Polyspace Bug Finder ©️ — C および C++ の組み込みソフトウェアにおける実行時エラー、並行処理の問題、セキュリティ脆弱性、その他の欠陥を特定します。
Polyspace Code Prover ©️ — C および C++ ソースコード内のオーバーフロー、ゼロ除算、配列の範囲外アクセス、およびその他の特定の実行時エラーが存在しないことを証明するコード検証を提供します。
scan-build — 通常のビルドを通じて Clang に組み込まれた Clang Static Analyzer を駆動するフロントエンド。
splint — アノテーション支援による静的プログラムチェッカー。
SVF — C および C++ プログラムのスケーラブルで正確な手続き間依存関係解析を可能にする静的ツール。
TrustInSoft Analyzer ©️ — コーディングエラーとそれに関連するセキュリティ脆弱性を網羅的に検出します。これには、健全な未定義動作の検出(バッファオーバーフロー、配列の範囲外アクセス、ヌルポインタ参照、use-after-free、ゼロ除算、未初期化メモリアクセス、符号付きオーバーフロー、無効なポインタ演算など)、データフローおよび制御フローの検証、ならびに形式仕様の完全な機能検証が含まれます。C18 までのすべての C バージョンと C++20 までの C++ がサポートされています。TrustInSoft Analyzer は 2023 年第 2 四半期に ISO 26262 認定 (TCL3) を取得する予定です。MISRA C チェッカーも同梱されています。
vera++ ⚠️ — Vera++ は、C++ ソースコードの検証、解析、変換のためのプログラマブルなツールです。
weggli ⚠️ — C および C++ コードベース向けの高速で堅牢なセマンティック検索ツール。セキュリティ研究者が大規模なコードベース内の興味深い機能を特定するのに役立つよう設計されています。
.NET Analyzers — .NET Compiler Platform を使用したアナライザー(診断とコード修正)を開発するための組織。
ArchUnitNET — 自動テストのために C# でアーキテクチャルールを指定および検証するための C# アーキテクチャテストライブラリ。
code-cracker ⚠️ — Roslyn を使用してリファクタリング、コード解析、その他の便利な機能を提供する C# および VB 用のアナライザーライブラリ。
CSharpEssentials ⚠️ — C# Essentials は、C# 6 の言語機能を簡単に扱えるようにする Roslyn 診断アナライザー、コード修正、リファクタリングのコレクションです。
Designite ©️ — Designite は、さまざまなアーキテクチャ、設計、実装のスメルの検出、さまざまなコード品質メトリクスの計算、トレンド分析をサポートしています。
Gendarme ⚠️ — Gendarme は、ECMA CIL 形式(Mono および .NET)のコードを含むプログラムとライブラリを検査します。
Infer# ⚠️ — InferSharp(Infer# とも呼ばれる)は、C# 用の手続き間でスケーラブルな静的コードアナライザーです。Facebook の Infer の機能を通じて、このツールはヌルポインタ参照とリソースリークを検出します。
Meziantou.Analyzer — 設計、使用法、セキュリティ、パフォーマンス、スタイルの観点から C# のいくつかのグッドプラクティスを強制する Roslyn アナライザー。
NDepend ©️ — コードを測定、クエリ、可視化し、予期しない問題、技術的負債、複雑度を回避します。
Puma Scan — Puma Scan は、開発チームが Visual Studio でコードを書く際に、一般的な脆弱性(XSS、SQLi、CSRF、LDAPi、暗号、デシリアライゼーションなど)に対するリアルタイムのセキュアコード解析を提供します。
Roslynator — Roslyn を活用した C# 用の 190 以上のアナライザーと 190 以上のリファクタリングのコレクション。
SonarAnalyzer.CSharp — これらの Roslyn アナライザーは、コードベース内のバグ、脆弱性、コードスメルを見つけて修正するのを支援することで、安全で信頼性が高く保守可能なクリーンコードを作成できるようにします。
VSDiagnostics ⚠️ — VS と統合する Roslyn ベースの静的アナライザーのコレクション。
Wintellect.Analyzers ⚠️ — .NET Compiler Platform("Roslyn")の診断アナライザーとコード修正。
Astrée ©️ — Astrée は、C/C++ アプリケーションにおける実行時エラーおよび不正な並行動作が存在しないことを自動的に証明します。浮動小数点演算に対して健全で、非常に高速かつ極めて正確です。このアナライザーは MISRA/CERT/CWE/Adaptive Autosar コーディングルールもチェックし、ISO 26262、DO-178C レベル A、およびその他の安全基準の認定をサポートしています。Jenkins および Eclipse プラグインが利用可能です。
CBMC — C プログラム用の有界モデルチェッカー。ユーザー定義のアサーション、標準アサーション、いくつかのカバレッジメトリクス分析に対応。
clang-tidy — Clang ベースの C++ リンターツール。問題を修正する(限定的な)機能も備えています。
clazy — Clang フレームワークに基づく Qt 指向の静的コードアナライザー。clazy は clang が Qt のセマンティクスを理解できるようにするコンパイラプラグインです。不要なメモリ割り当てから API の誤用まで、50 以上の Qt 関連のコンパイラ警告が得られ、自動リファクタリング用の fix-it も含まれます。
CMetrics ⚠️ — C ファイルのサイズと複雑度を測定します。
codechecker — Web GUI を備えた Clang Static Analyzer 用の欠陥データベースおよびビューア拡張機能。
cppcheck — C/C++ コードの静的解析。
CppDepend ©️ — コードを測定、クエリ、可視化し、予期しない問題、技術的負債、複雑度を回避します。
cpplint — Google のスタイルガイドに従う自動 C++ チェッカー。
cqmetrics ⚠️ — C コードの品質メトリクス。
CScout — C および C プリプロセッサコードの複雑度と品質メトリクス。
ENRE-cpp ⚠️ — ENRE (ENtity Relationship Extractor) は、ソースコードからコードエンティティの依存関係や関係を抽出するツールです。ENRE-cpp は @eclipse/CDT に基づく C/C++ 用の ENtity Relationship Extractor です。(開発中)
ESBMC — ESBMC は、単一およびマルチスレッドの C/C++ プログラムの検証のために、充足可能性モジュロ理論に基づく、オープンソースで寛容なライセンスのコンテキスト有界モデルチェッカーです。
flawfinder — 潜在的なセキュリティ上の弱点を検出します。
flint++ ⚠️ — Facebook で開発・使用された C++ 用 lint プログラム flint のクロスプラットフォームで依存関係ゼロの移植版。
GCC — GCC コンパイラはバージョン 10 以降、静的解析機能を備えています。このオプションは、GCC がアナライザーサポートを有効にして構成されている場合にのみ利用可能です。また、診断結果を SARIF 形式の JSON ファイルに出力することもできます(v13 以降)。
Helix QAC ©️ — 組み込みソフトウェア向けのエンタープライズグレードの静的解析。MISRA、CERT、AUTOSAR コーディング標準をサポートしています。
IKOS ⚠️ — LLVM に基づく C/C++ コード用の健全な静的アナライザー。
KLEE — LLVM コンパイラ基盤上に構築された動的シンボリック実行エンジン。プログラムのできるだけ多くの部分をテストケースが網羅するように、テストケースを自動生成できます。
LDRA ©️ — MISRA C & C++、JSF++ AV、CWE、CERT C、CERT C++ & カスタムルールなど、さまざまな標準に対応した静的解析 (TBVISION) を含むツールスイート。
MATE ⚠️ — C および C++ コードのバグ発見に焦点を当てた対話型プログラム解析ツールスイート。MATE はコードプロパティグラフ (CPG) を使用してアプリケーション固有の脆弱性解析と低レベルの脆弱性解析を統合し、実装の詳細と対象 C/C++ プログラムの高レベルなセマンティクスの両方に依存する高度にアプリケーション固有の脆弱性の発見を可能にします。
PC-lint ©️ — C/C++ 用の静的解析。Windows/Linux/MacOS でネイティブに動作します。C11/C18 および C++17 をサポートし、事実上あらゆるプラットフォームのコードを解析します。
Phasar — テイント解析と型状態解析を備えた LLVM ベースの静的解析フレームワーク。- Polyspace Bug Finder ©️ — CおよびC++の組み込みソフトウェアにおける実行時エラー、並行処理の問題、セキュリティ脆弱性、その他の欠陥を特定します。
Polyspace Code Prover ©️ — CおよびC++のソースコードにおいて、オーバーフロー、ゼロ除算、配列の範囲外アクセス、およびその他の特定の実行時エラーが存在しないことを証明するコード検証を提供します。
scan-build — 通常のビルドを通じてClangに組み込まれたClang Static Analyzerを駆動するフロントエンド。
splint — アノテーション支援による静的プログラムチェッカー。
SVF — CおよびC++プログラムに対してスケーラブルで正確な手続き間依存関係解析を可能にする静的ツール。
TrustInSoft Analyzer ©️ — コーディングエラーとそれに関連するセキュリティ脆弱性を網羅的に検出します。これには、健全な未定義動作の検出(バッファオーバーフロー、配列の範囲外アクセス、ヌルポインタ参照解除、use-after-free、ゼロ除算、未初期化メモリアクセス、符号付きオーバーフロー、無効なポインタ演算など)、データフローおよび制御フローの検証、ならびに形式仕様の完全な機能検証が含まれます。C18までのすべてのCバージョンとC++20までのC++がサポートされています。TrustInSoft Analyzerは2023年第2四半期にISO 26262認定(TCL3)を取得予定です。MISRA Cチェッカーも同梱されています。
vera++ ⚠️ — Vera++は、C++ソースコードの検証、分析、変換のためのプログラマブルなツールです。
weggli ⚠️ — CおよびC++コードベース向けの高速で堅牢なセマンティック検索ツール。セキュリティ研究者が大規模なコードベース内の興味深い機能を特定するのを支援するために設計されています。
Dart Code Metrics ⚠️ — Dart用の追加リンター。コードメトリクスを報告し、アンチパターンをチェックし、Dartアナライザー用の追加ルールを提供します。
effective_dart ⚠️ — Effective Dartのガイドラインに対応するリンタールール
lint ⚠️ — DartおよびFlutterプロジェクト向けの、意見を持ったコミュニティ主導のリンタールールセット。pedanticに似ていますが、より厳格です
Linter for dart ⚠️ — Dart用のスタイルリンター。
DelphiLint — SonarDelphiを搭載した、オンザフライのコード分析とリンティングを提供するDelphi IDEパッケージ。
Fix Insight ©️ — 静的コード分析用の無料IDEプラグイン。_Pro_エディションには自動化目的のコマンドラインツールが含まれます。
Pascal Analyzer ©️ — 多数のレポートを備えた静的コード分析ツール。レポートが限定された無料の_Lite_バージョンが利用可能です。
Pascal Expert ©️ — コード分析用のIDEプラグイン。Pascal Analyzerのレポート機能のサブセットを含み、Delphi 2007以降で利用可能です。
SonarDelphi — SonarQubeコード品質プラットフォーム用のDelphi静的アナライザー。
elm-analyse ⚠️ — Elmコードを分析し、欠陥を特定し、ベストプラクティスを適用できるツール。
elm-review — Elmプロジェクト全体を分析し、Elmコンパイラが提供しない保証を追加する、Elmで書かれた共有可能でカスタムなルールに焦点を当てています。
dialyzer — DIALYZERは、ERlangプログラム用のDIscrepancy AnaLYZerです。Dialyzerは、単一のErlangモジュールまたはアプリケーション全体(の集合)において、明確な型エラー、プログラミングエラーによりデッドまたは到達不能になったコード、不要なテストなどのソフトウェアの不一致を特定する静的解析ツールです。 Dialyzerは、デバッグコンパイルされたBEAMバイトコードまたはErlangソースコードのいずれかから解析を開始します。不一致のファイルと行番号が、その不一致が何に関するものかの表示とともに報告されます。Dialyzerは成功型付け(success typings)の概念に基づいて解析を行い、健全な警告(偽陽性なし)を可能にします。
elvis — Erlangスタイルレビューアー。
Primitive Erlang Security Tool (PEST) ⚠️ — Erlangソースコードの基本的なスキャンを行い、Erlangソースコードを安全でなくする可能性のある関数呼び出しを報告するツール。
fantomas — F#ソースコードフォーマッター。
FSharpLint — F#用のリントツール。
ionide-analyzers — FSharp.Analyzers.SDKで構築されたF#アナライザーのコレクション。
Fortitude — Ruffに触発され(そしてその上に構築され)、コミュニティのベストプラクティスに基づいたFortranリンター。最新のFortran(2023)標準をサポートしています。
fprettify — Pythonで書かれた、現代的なFortranソースコード用の自動フォーマッター。 Fprettifyは、コード内で一貫した空白、インデント、区切り文字の整列を提供するツールで、文字ケースの変更やプリプロセッサディレクティブの処理も可能であり、リビジョン履歴を保持し、エディタ統合についてテストされています。
i-Code CNES for Fortran ⚠️ — Fortran 77、Fortran 90、Shell用のオープンソース静的コード分析ツール。
aligncheck — 非効率にパックされた構造体を見つけます。
bodyclose — HTTPレスポンスボディが閉じられているかどうかをチェックします。
deadcode ⚠️ — 未使用のコードを見つけます。
dingo-hunter ⚠️ — Goにおけるデッドロックを見つけるための静的アナライザー。
dogsled ⚠️ — 空白識別子が多すぎる代入/宣言を見つけます。
dupl — 潜在的に重複したコードを報告します。
errcheck — エラー戻り値が使用されているかをチェックします。
errwrap ⚠️ — 新しい%w動詞ディレクティブでGoエラーをラップして修正します。このツールはfmt.Errorf()呼び出しを分析し、Go v1.13で導入された新しい%w動詞ディレクティブとは異なる動詞ディレクティブを含む呼び出しを報告します。また、新しい%wラップ動詞ディレクティブを使用するように呼び出しを書き換えることもできます。
flen — Goパッケージ内の関数の長さに関する情報を取得します。
Go Meta Linter ⚠️ — Goリントツールを同時に実行し、その出力を正規化します。新しいプロジェクトにはgolangci-lintを使用してください。
go tool vet --shadow — 意図せずシャドウイングされた可能性のある変数を報告します。
go vet — Goソースコードを検査し、疑わしいものを報告します。
go-consistent ⚠️ — Goプログラムをより一貫性のあるものにするのに役立つアナライザー。
go-critic — 他のリンターで現在実装されていないチェックを維持するGoソースコードリンター。
go/ast — パッケージastは、Goパッケージの構文木を表現するために使用される型を宣言します。
goast — Regoを使用したGo AST(抽象構文木)ベースの静的解析ツール。
gochecknoglobals ⚠️ — グローバルが存在しないことをチェックします。
goconst — 定数で置き換え可能な繰り返し文字列を見つけます。
gocyclo — Goソースコード内の関数の循環的複雑度を計算します。
gofmt -s — コードが適切にフォーマットされており、これ以上簡素化できないかどうかをチェックします。
gofumpt — 後方互換性を保ちながら、gofmtよりも厳格なフォーマットを強制します。つまり、gofumptはgofmtが受け入れるフォーマットのサブセットを受け入れます。
このツールはGo 1.19時点のgofmtのフォークであり、Go 1.18以降が必要です。Goコードをフォーマットするためのドロップイン代替として使用でき、gofumptの後にgofmtを実行しても変更は生じないはずです。
gofumptはgofmtのフォーマットと矛盾するルールを追加することは決してありません。したがって、私たちはgofmtと競合するのではなく、それを拡張します。
goimports — 欠落している、または参照されていないパッケージインポートをチェックします。
gokart ⚠️ — 偽陽性の最小化に焦点を当てたGolangセキュリティ分析。変数や関数引数のソースを追跡して、入力ソースが安全かどうかを判断できます。
GolangCI-Lint — Go用の高速リンターランナー。複数のGoリンターを集約し、統一された設定、キャッシュ、出力フォーマットを提供します。Go Meta Linterの代替。
golint ⚠️ — Goソースコードのコーディングスタイルの間違いを出力します。
goreporter ⚠️ — 多くのリンターを同時に実行し、その出力をレポートに正規化します。
goroutine-inspect ⚠️ — Golangのgoroutineダンプを分析するためのインタラクティブツール。
gosec (gas) — Go ASTをスキャンしてソースコードのセキュリティ問題を検査します。
gotype — Goコンパイラに類似した構文および意味解析。
govulncheck — GovulncheckはGoコードに影響を与える既知の脆弱性を報告します。ソースコードまたはバイナリのシンボルテーブルの静的解析を使用して、アプリケーションに影響を与える可能性のあるものだけにレポートを絞り込みます。 デフォルトでは、govulncheckはhttps://vuln.go.devのGo脆弱性データベースにリクエストを行います。脆弱性データベースへのリクエストにはモジュールパスのみが含まれ、コードやプログラムのその他のプロパティは含まれません。
ineffassign ⚠️ — Goコード内の効果のない代入を検出します。
interfacer ⚠️ — 使用できるより狭いインターフェースを提案します。
lll ⚠️ — 長い行を報告します。
maligned ⚠️ — フィールドをソートするとより少ないメモリで済む構造体を検出します。
misspell ⚠️ — よくある英語のスペルミスを見つけます。
nakedret ⚠️ — 名前なし戻り値(naked returns)を見つけます。
nargs ⚠️ — 関数宣言内の未使用の引数を見つけます。
OSV-Scanner — OSV.devが提供するデータを使用するGoで書かれた脆弱性スキャナー。Googleによって開発され、複数の言語とパッケージマネージャーの依存関係を既知の脆弱性についてスキャンします。コンテナスキャン、ライセンススキャン、ガイド付き修復をサポートしています。ロックファイル、SBOM、コンテナイメージと連携してセキュリティ問題を特定します。
prealloc — 事前に割り当て可能なスライス宣言を見つけます。
Reviewdog — 任意のコードホスティングサービスで任意のリンターからのレビューコメントを投稿するためのツール。
revive — Go用の高速で設定可能、拡張可能、柔軟で美しいリンター。golintのドロップイン代替。
safesql ⚠️ — SQLインジェクションから保護するGolang用の静的解析ツール。
shisho ⚠️ — 開発者とセキュリティチーム向けに設計された軽量な静的コードアナライザー。sedに似た直感的なDSLでソースコードを分析および変換できますが、コード用です。
staticcheck — バグの発見、コードの簡素化、パフォーマンスの向上を専門とするGo静的解析。
structcheck — 未使用の構造体フィールドを見つけます。
structslop ⚠️ — 最大のスペース/割り当て効率を提供するために構造体フィールドの再配置を推奨するGo用の静的アナライザー
test — 標準ライブラリのtestingモジュールからテスト失敗の場所を表示します。
unconvert — 冗長な型変換を検出します。
unparam — 未使用の関数パラメータを見つけます。
varcheck — 未使用のグローバル変数と定数を見つけます。
wsl — 適切な場所に空行を強制します。
brittany ⚠️ — Haskellソースコードフォーマッター
HLint — HLintは、Haskellコードに対する可能な改善を提案するためのツールです。
Liquid Haskell — Liquid Haskellは、Haskellプログラム用の篩型(refinement type)チェッカーです。
Stan — Stanは、Haskellプロジェクトを分析し、発見された脆弱性を検出された問題に対する可能な解決策とともに役立つ形で出力するためのコマンドラインツールです。
Weeder — Haskellコード内のデッドエクスポートまたはパッケージインポートを検出するためのツール。
Checker Framework — Java用のプラグ可能な型チェック。これは単なるバグファインダーではなく、正確性を保証する検証ツールです。27の事前構築された型システムが付属しており、ユーザーが独自の型システムを定義することも可能です。マニュアルには30以上のユーザー提供型システムが掲載されています。
checkstyle — Javaソースコードがコード標準または検証ルールのセット(ベストプラクティス)に準拠しているかをチェックします。
ck — ソースJavaファイルを処理してChidamberとKemererのオブジェクト指向メトリクスを計算します。
ckjm ⚠️ — コンパイルされたJavaファイルのバイトコードを処理してChidamberとKemererのオブジェクト指向メトリクスを計算します。
CogniCrypt ⚠️ — 暗号化APIの不正確な使用についてJavaソースとバイトコードをチェックします。
Dataflow Framework — Java用の産業強度のデータフローフレームワーク。Dataflow Frameworkは、Checker Framework、GoogleのError Prone、UberのNullAway、MetaのNullsafe、およびその他のコンテキストで使用されています。Checker Frameworkとともに配布されています。
DesigniteJava ©️ — DesigniteJavaは、さまざまなアーキテクチャ、設計、実装のスメルの検出と、さまざまなコード品質メトリクスの計算をサポートしています。
Diffblue ©️ — Diffblueは、ソフトウェア開発チーム向けにAIを活用したコード分析およびテストソリューションを提供するソフトウェア企業です。 その技術は、開発者がソフトウェア開発プロセスにおいてテストを自動化し、バグを見つけ、手作業を削減するのを支援します。同社の主力製品であるDiffblue Coverは、AIを使用してJavaコードの単体テストを生成および実行し、エラーの検出とコード品質の向上を支援します。
Doop — Doopは、Java/Androidプログラムの静的解析のための宣言型フレームワークで、ポインタ解析アルゴリズムを中心としています。Doopは多種多様な解析と、解析をエンドツーエンドで実行するための周辺のスキャフォールディング(ファクト生成、処理、統計など)を提供します。
ENRE-java ⚠️ — ENRE(ENtity Relationship Extractor)は、ソースコードからコードエンティティの依存関係や関係を抽出するためのツールです。ENRE-javaは、@Eclipse JDT/parserに基づくJavaプロジェクト用のENtity Relationship Extractorです。
Error Prone — 一般的なJavaの間違いをコンパイル時エラーとして捕捉します。
fb-contrib — 追加のバグ検出器を備えたFindBugs用のプラグイン。
forbidden-apis — 特定のメソッド/クラス/フィールドの呼び出し(文字セットなしでテキストストリームから読み取るなど)を検出して禁止します。Maven/Gradle/Ant互換。
google-java-format — Google Java Styleに準拠するようにJavaソースコードを再フォーマットします
HuntBugs ⚠️ — FindBugsを置き換えることを目的とした、Procyon Compiler Toolsに基づくバイトコード静的アナライザーツール。
IntelliJ IDEA ©️ — JavaとKotlin用の多くのインスペクションがバンドルされており、リファクタリング、フォーマットなどのツールが含まれています。
JArchitect ©️ — コードを測定、クエリ、可視化し、予期しない問題、技術的負債、複雑さを回避します。
JBMC — Java(バイトコード)用の有界モデルチェッカーで、ユーザー定義のアサーション、標準アサーション、いくつかのカバレッジメトリクス分析を検証します。
Mariana Trench — AndroidおよびJavaアプリケーション向けの、セキュリティに焦点を当てた静的解析ツール。Mariana TrenchはDalvikバイトコードを分析し、大規模なコードベース(数千万行のコード)で高速に実行されるように構築されています。コードの変更時に、リポジトリに取り込まれる前に脆弱性を見つけることができます。
NullAway — ビルド時のオーバーヘッドが低い、型ベースのヌルポインタチェッカー。Error Proneプラグイン。
OWASP Dependency Check ⚠️ — 依存関係を既知の公開された脆弱性についてチェックします。
qulice — いくつかの(事前設定された)静的解析ツール(checkstyle、PMD、Findbugsなど)を組み合わせます。
RefactorFirst — Javaコードベース内で最初にリファクタリングすべき神クラス(God Classes)と高度に結合したクラスを特定して優先順位を付けます。
Soot — JavaおよびAndroidアプリケーションを分析および変換するためのフレームワーク。- Spoon — Spoon は Java ソースコード(Java 9、10、11、12、13、14 を含む)を解析・変換するためのメタプログラミングライブラリです。ソースファイルを解析して、強力な解析・変換 API を備えた適切に設計された AST を構築します。Maven や Gradle に統合できます。
SpotBugs — SpotBugs は FindBugs の後継です。Java コードのバグを探すための静的解析ツールです。
steady ⚠️ — 既知の脆弱性を持つオープンソース依存関係について Java アプリケーションを解析します。静的解析とテストの両方を使用してコードのコンテキストと使用状況を判断し、より高い精度を実現します。
Violations Lib — 静的コード解析のレポートファイルを解析するための Java ライブラリ。多くの Jenkins、Maven、Gradle プラグインで使用されています。
aether ⚠️ — node またはブラウザで、ユーザーの JavaScript を lint、解析、正規化、変換、サンドボックス化、実行、ステップ実行、可視化します。
Closure Compiler — JavaScript ファイルの効率を高め、サイズを削減し、コード警告を提供するコンパイラツールです。
ClosureLinter ⚠️ — プロジェクトのすべての JavaScript コードが Google JavaScript Style Guide のガイドラインに従っていることを確認します。また、多くの一般的なエラーを自動的に修正することもできます。
complexity-report ⚠️ — JavaScript プロジェクトのソフトウェア複雑度解析。
DeepScan ©️ — コーディング規約ではなく、ランタイムエラーと品質問題を対象とした JavaScript のアナライザーです。
es6-plato ⚠️ — JavaScript (ES6) ソースの複雑度を可視化します。
escomplex ⚠️ — JavaScript ファミリーの抽象構文木のソフトウェア複雑度解析。
Esprima ⚠️ — 多目的解析のための ECMAScript パースインフラストラクチャ。
flow — JavaScript の静的型チェッカー。
hegel ⚠️ — 型推論と強力な型システムに重点を置いた JavaScript の静的型チェッカー。
jshint ℹ️ ⚠️ — JavaScript コードのエラーと潜在的な問題を検出し、チームのコーディング規約を徹底します。
JSPrime ⚠️ — 静的セキュリティ解析ツール。
NodeJSScan ⚠️ — libsast と semgrep を基盤とした、Node.js アプリケーション向けの静的セキュリティコードスキャナーで、njsscan CLI ツールをベースに構築されています。アプリケーションのセキュリティ状態に関するさまざまなダッシュボードを備えた UI を提供します。
plato ⚠️ — JavaScript ソースの複雑度を可視化します。
Polymer-analyzer — Web Components のための静的解析フレームワーク。
retire.js — 既知の脆弱性を持つ JavaScript ライブラリの使用を検出するスキャナー。
RSLint ⚠️ — Rust で書かれた (WIP) JavaScript リンターで、可能な限り高速で、カスタマイズ可能で、使いやすくなるように設計されています。
squirrelscan — squirrelscan は、Claude Code や Cursor などのコーディングエージェント向けに構築されたウェブサイト QA ツールです。その squirrel CLI はライブサイトをクロールし、SEO、パフォーマンス、セキュリティ、アクセシビリティ、構造化データ、エージェント体験にわたる 260 以上の監査ルールを実行し、正確なソースマップ付きの修正を返します。ターミナル、CI、クラウド、または MCP 経由で実行できます。
standard ⚠️ — Javascript スタイルガイドの問題をチェックする npm モジュール。
tern — 深い、エディター横断的な言語サポートのための JavaScript コードアナライザー。
TypL ⚠️ — TypL では、完全に標準的な JS を書くだけで、ツールが強力な推論によって型を割り出します。
xo — 多くの便利な機能を備えた、意見は強いが設定可能な ESLint ラッパー。厳格で読みやすいコードを強制します。
yardstick ⚠️ — Javascript コードメトリクス。
JET — バグと型の不安定性を検出する静的型推論システム。
StaticLint — Julia の静的コード解析
detekt — Kotlin コードの静的コード解析。
diktat ⚠️ — Kotlin の厳格なコーディング標準であり、コードスメルを検出して自動修正するリンター。
ktfmt — Kotlin コード規約の一般的なコミュニティ標準に準拠するように Kotlin ソースコードを再フォーマットするプログラム。 ktfmt IntelliJ プラグインはプラグインリポジトリから入手できます。インストールするには、IDE の設定に移動して Plugins カテゴリを選択します。Marketplace タブをクリックし、ktfmt プラグインを検索して、Install ボタンをクリックします。
ktlint — 組み込みフォーマッターを備えた、無駄な議論を排する Kotlin リンター。
luacheck — Lua コードの lint と静的解析のためのツール。
lualint ⚠️ — lualint は、Lua ソースコードにおけるグローバル変数の使用状況を luac ベースで静的解析します。
Luanalysis ⚠️ — 静的型付け Lua 開発のための IDE。
MISS_HIT ⚠️ — MISS_HIT は、MATLAB、Simulink、Octave 向けの無料のオープンソースコード品質ツールセットです。MH Style(スタイルチェッカーとフォーマッター)、MH Metrics(複雑度メトリクス)、MH Lint(静的解析)、MH Trace(要求トレーサビリティ)、MH Copyright(著作権管理)が含まれます。MATLAB/Octave のインストールを必要とせず、単独で動作するように設計されています。
mlint ©️ — MATLAB コードファイルに問題がないかチェックします。
DrNim — DrNim は Nim フロントエンドと Z3 証明エンジンを組み合わせることで、Nim で書かれたソフトウェアの検証・妥当性確認を可能にします。
nimfmt ⚠️ — Nim コードフォーマッター / リンター / スタイルチェッカー
Sys ⚠️ — (ブラウザ) コードのバグを見つけるための静的/シンボリックツール。LLVM AST を使用して、未初期化メモリアクセスなどのバグを見つけます。
VeriFast — 分離論理で書かれた事前条件と事後条件で注釈付けされた、シングルスレッドおよびマルチスレッドの C および Java プログラムの正当性特性をモジュール方式で形式検証するためのツール。豊富な仕様を表現するために、プログラマーは帰納的データ型、これらのデータ型に対する原始再帰的純粋関数、および抽象分離論理述語を定義できます。
CakeFuzzer ⚠️ — CakePHP ベースのウェブアプリケーション向けのウェブアプリケーションセキュリティテストツール。CakeFuzzer は、実行前にランダムに変更される事前定義された攻撃セットを使用します。Cake PHP フレームワークに対する深い理解を活用して、Cake Fuzzer はすべての潜在的なアプリケーションエントリポイントに対して攻撃を仕掛けます。
churn-php — リファクタリングの良い候補の発見を支援します。
composer-dependency-analyser — composer 依存関係の問題を高速に検出します。
dephpend — 依存関係解析ツール。
deprecation-detector ⚠️ — 非推奨の (Symfony) コードの使用箇所を見つけます。
deptrac — ソフトウェアレイヤー間の依存関係に関するルールを強制します。
DesignPatternDetector ⚠️ — PHP コードにおけるデザインパターンの検出。
EasyCodingStandard — PHP_CodeSniffer と PHP-CS-Fixer を組み合わせます。
Enlightn ⚠️ — Laravel アプリケーション向けの静的および動的解析ツールで、Laravel アプリのパフォーマンス、セキュリティ、コードの信頼性を向上させるための推奨事項を提供します。120 の自動チェックを含みます。
exakat ⚠️ — PHP 向けの自動コードレビューエンジン。
GrumPHP — コミットごとにコードをチェックします。
larastan — Laravel に静的解析を追加し、開発者の生産性とコード品質を向上させます。PHPStan のラッパーです。
mago — Mago は Rust で書かれた PHP 向けの完全なツールチェーンで、最大限のパフォーマンスを目指してゼロから設計されています。
✨ PER-CS に従ってコードを自動的にフォーマットする超高速フォーマッターで、スタイル論争に終止符を打ちます。 - 🔎 スタイル上の問題、不整合、コードスメルを問題になる前に検出するインテリジェントなリンター。 - 🔬 コードを実行することなく型エラーや論理的なバグを見つける強力な静的アナライザー。 - 🛡️ 依存関係ルールと構造規約を強制する堅牢なアーキテクチャガード。
Mondrian ⚠️ — グラフ理論を使用した静的解析およびリファクタリングツールのセット。
parallel-lint — このツールは、シリアルチェックよりも高速に PHP ファイルの構文をチェックし、より洗練された出力を提供します。
Parse ⚠️ — 静的セキュリティスキャナー。
pdepend — PHP コードの循環的複雑度などのソフトウェアメトリクスを計算します。
phan — etsy 製のモダンな静的アナライザー。
PHP Architecture Tester — PHP 向けの使いやすいアーキテクチャテストツール。
PHP Assumptions ⚠️ — 弱い前提条件をチェックします。
PHP Coding Standards Fixer — PSR-1、PSR-2、Symfony 標準などの規格に従ってコードを修正します。
PHP Insights — コンソールから即座に PHP 品質チェック。コード品質とコーディングスタイルの解析、およびコードアーキテクチャとその複雑度の概要を提供します。
Php Inspections (EA Extended) — PHP 向けの静的コードアナライザー。
PHP Refactoring Browser ⚠️ — リファクタリングヘルパー。
PHP Semantic Versioning Checker — セマンティックバージョニングに従って次のバージョンを提案します。
PHP-Parser — PHP で書かれた PHP パーサー。
php-speller ⚠️ — PHP スペルチェックライブラリ。
PHP-Token-Reflection ⚠️ — PHP 内部リフレクションをエミュレートするライブラリ。
php7cc ⚠️ — PHP 7 互換性チェッカー。
php7mar ⚠️ — 開発者がコードを迅速に PHP 7 へ移植するのを支援します。
PHP_CodeSniffer ⚠️ — 定義されたコーディング標準セットの違反を検出します。
PHPArkitect — PHPArkitect は、ワークフローにアーキテクチャ制約チェックを追加できるようにすることで、PHP コードベースを一貫性があり堅牢なものに保つのを支援します。強制したい制約を、シンプルで読みやすい PHP コードで表現できます。
phpca ⚠️ — 非組み込み拡張機能の使用箇所を見つけます。
phpcpd ⚠️ — PHP コードのコピー/ペースト検出器。
phpdcd ⚠️ — PHP コードのデッドコード検出器 (DCD)。
PhpDependencyAnalysis ⚠️ — プロジェクトの依存関係グラフを構築します。
PhpDeprecationDetector ⚠️ — 新しいインタープリターバージョンで非推奨となった機能に関する問題を検索する PHP コードのアナライザー。削除されたオブジェクト(関数、変数、定数、ini ディレクティブ)、非推奨となった関数機能、および禁止された名前やトリック(例: 新しいバージョンでの予約識別子)の使用を検出します。
phpdoc-to-typehint ⚠️ — PHPDoc アノテーションを使用して、既存の PHP プロジェクトにスカラー型ヒントと戻り値の型を追加します。
phpDocumentor — PHP ソースコードを解析してドキュメントを生成します。
phploc ⚠️ — PHP プロジェクトのサイズを迅速に測定し、構造を解析するためのツール。
PHPMD — コード内の潜在的なバグを見つけます。
PhpMetrics — さまざまなコード品質メトリクスを計算して可視化します。
phpmnd — マジックナンバーの検出を支援します。
PHPQA — QA ツール (phploc、phpcpd、phpcs、pdepend、phpmd、phpmetrics) を実行するためのツール。
phpqa - jakzal — 1 つのコンテナに PHP 静的解析用の多くのツールをまとめたもの。
phpqa - jmolivas ⚠️ — PHPQA オールインワンアナライザー CLI ツール。
phpsa ⚠️ — PHP 向けの静的解析ツール。
PHPStan — PHP 静的解析ツール - コードを実行せずにバグを発見!
Progpilot ⚠️ — セキュリティ目的の静的解析ツール。
Psalm — PHP アプリケーションの型エラーを見つけるための静的解析ツール。
Qafoo Quality Analyzer ⚠️ — メトリクスとソースコードを可視化します。
rector — あらゆる PHP 5.3+ コードの即時アップグレードと自動リファクタリング。コードを PHP 7.4、8.0 以降にアップグレードします。Rector は、狭く定義された AST (抽象構文木) パターンを探すため、低い誤検出率を約束します。主なユースケースは、レガシーコードの技術的負債への対処とデッドコードの削除です。Rector は Symfony、Doctrine、PHPUnit など向けの特別なルールセットを提供します。
Reflection — PHP プロジェクトの静的解析を行うためのリフレクションライブラリ
Symfony Insight ©️ — PHP プロジェクトのセキュリティリスクを検出し、バグを見つけ、実行可能なメトリクスを提供します。
Tuli ⚠️ — 静的解析エンジン。
twig-lint ⚠️ — twig-lint は twig ファイル用の lint ツールです。
WAP — PHP (4.0 以上) ウェブアプリケーションの入力検証脆弱性を検出・修正し、静的解析とデータマイニングを組み合わせて誤検出を予測するツール。
Perl::Analyzer ⚠️ — Perl-Analyzer は、名前空間とその関係、依存関係、継承、パッケージで実装・継承・再定義されたメソッド、および SUPER を介した親パッケージからのメソッド呼び出しに関する情報を提供することで、ユーザーが Perl コードベースを解析・可視化できるようにするプログラムとモジュールのセットです。
Perl::Critic — ベストプラクティスに照らして Perl ソースコードを批評します。
perltidy — Perltidy は、Perl スクリプトを読みやすくするためにインデントと再フォーマットを行う Perl スクリプトです。 フォーマットはコマンドラインパラメータで制御できます。デフォルトのパラメータ設定は、おおむね Perl Style Guide の提案に従っています。 スクリプトの再フォーマットに加えて、Perltidy はエラーの特定に非常に優れているため、中括弧、丸括弧、角括弧の欠落や余分を追跡するのに大いに役立ちます。
zarn — モダンな Perl アプリ向けの軽量な静的セキュリティ解析ツール
autoflake — Autoflake は、Python コードから未使用のインポートと未使用の変数を削除します。
autopep8 — PEP 8 スタイルガイドに準拠するように Python コードを自動的にフォーマットするツール。 pycodestyle ユーティリティを使用して、コードのどの部分をフォーマットする必要があるかを判断します。
bandit — Python コードの一般的なセキュリティ問題を見つけるためのツール。
bellybutton ⚠️ — プロジェクト固有のカスタムルールをサポートする lint エンジン。
Black — 妥協のない Python コードフォーマッター。
Bowler ⚠️ — モダンな Python のための安全なコードリファクタリング。Bowler は構文木レベルで Python を操作するためのリファクタリングツールです。結果のコードがコンパイルおよび実行されることを保証しながら、安全で大規模なコード変更を可能にします。シンプルなコマンドラインインターフェースと、コード内で複雑なコード変更を生成するための Python の流暢な API の両方を提供します。
ciocheck ⚠️ — リンター、フォーマッター、テストスイートヘルパー。リンターとしては、pep8、pydocstyle、flake8、pylint のラッパーです。
cohesion ⚠️ — Python クラスの凝集度を測定するためのツール。
deal — Python のための契約による設計。バグのないコードを書きましょう。コードにいくつかのデコレーターを追加するだけで、テスト、静的解析、形式検証などが無料で手に入ります。
Dlint — Python コードが安全であることを保証するためのツール。
Dodgy ⚠️ — Dodgy は、コードベースに対して実行して「怪しい」値を検索するための非常に基本的なツールです。偶発的な SCM diff のチェックインや、ファイルにハードコードされたパスワードや秘密鍵などを検出するために設計された一連の単純な正規表現です。
ENRE-py ⚠️ — ENRE (ENtity Relationship Extractor) は、ソースコードからコードエンティティの依存関係や関係を抽出するためのツールです。ENRE-py は、標準ライブラリの Python Language Services に基づく Python 用の ENtity Relationship Extractor です。
fixit — ソースコードの lint ルールと対応する自動修正を作成するためのフレームワーク。
flake8 — pyflakes、pycodestyle、mccabe のラッパー。
flakeheaven ⚠️ — flakeheaven は、継承可能で複雑な toml 設定を可能にするために flake8 を中心に構築された Python リンターです。
Griffe — Python プログラム全体のシグネチャ。プロジェクトの構造、フレーム、スケルトンを抽出して、API ドキュメントを生成したり、API の破壊的変更を見つけたりします。
InspectorTiger ⚠️ — IT、Inspector Tiger は、モダンな Python コードレビューツール / フレームワークです。改善点や潜在的なバグについて警告する、あらかじめ定義された多数のハンドラーが付属しています。これらのハンドラーに加えて、独自のものを書いたり、コミュニティのものを使用したりできます。
jedi — Python 用の自動補完 / 静的解析ライブラリ。
linty fresh ⚠️ — lint エラーを解析し、プルリクエストのコメントとして Github に報告します。
mbake — mbake は Makefile フォーマッター兼リンターです。わずか 50 年で実現しました!
mccabe — McCabe 複雑度をチェックします。
multilint ⚠️ — flake8、isort、modernize のラッパー。
mypy — ダックタイピングと静的型付けの利点を組み合わせることを目的とした静的型チェッカーで、MonkeyType とともによく使用されます。- pip-audit — Python パッケージの既知の脆弱性をスキャンするツール。Python Packaging Authority (PyPA) によって開発され、Trail of Bits と Google がサポートしています。Python 環境と requirements ファイルをスキャンして脆弱なパッケージを特定し、修正を提案します。GitHub Actions、pre-commit フック、複数の脆弱性サービスとの連携をサポートしています。
prospector — pylint、pep8、mccabe などのラッパー。
py-find-injection ⚠️ — Python コード内の SQL インジェクション脆弱性を検出します。
pyanalyze — 未定義変数への参照や型エラーなど、Python コードにおける一般的な間違いをプログラム的に検出するツール。追加のルールを拡張して、特定の関数に固有のチェックを実行できます。
pycodestyle — (旧 pep8) Python コードが PEP 8 のスタイル規約の一部に準拠しているかチェックします。
pydocstyle ⚠️ — Python の docstring 規約への準拠をチェックします。
pyflakes ⚠️ — Python ソースファイルのエラーをチェックします。
pylint — プログラミングエラーを探し、コーディング標準の適用を支援し、いくつかのコードスメルを検出します。さらに pyreverse (UML 図ジェネレーター) と symilar (類似性チェッカー) も含まれています。
pylyzers ⚠️ — Rust で書かれた Python 用の静的コードアナライザー / 言語サーバーで、型チェックと読みやすい出力に重点を置いています。
Pyra — Pyra は、Python で書かれたデータサイエンスアプリケーション向けの高レベルな linter 静的アナライザーで、Lyra の拡張として、Python で書かれたデータサイエンスコードの潜在的な問題を開発者が特定できるよう支援します。
pyre-check — 大規模な Python コードベース向けの高速でスケーラブルな型チェッカー。Pyre-check は、その次のイテレーションである Pyrefly に取って代わられました。
pyrefly — Python 用の高速でインクリメンタルな型チェッカー兼言語サーバーで、コードナビゲーション、セマンティックハイライト、コード補完などの IDE 機能を提供します。
pyright — mypy などの既存ツールのギャップを埋めるために作成された Python 用の静的型チェッカー。
pyroma — Python プロジェクトが Python パッケージングエコシステムのベストプラクティスにどの程度準拠しているかを評価し、改善できる問題をリストアップします。
Pysa — Facebook の pyre-check をベースにしたツールで、テイント解析によって特定された Python コードの潜在的なセキュリティ問題を検出します。
pyscn — CFG ベースの循環的複雑度分析、デッドコード検出、クローン検出 (Type 1-4)、結合度メトリクスを備えたインテリジェントな Python コード品質アナライザー。解析には tree-sitter を使用。Go で書かれています。
PyT - Python Taint ⚠️ — Python ウェブアプリケーションのセキュリティ脆弱性を検出するための静的解析ツール。
pytype — Python コード用の静的型アナライザー。
pyupgrade — 新しいバージョンの言語向けに構文を自動的にアップグレードするツール (および pre-commit フック)。
QuantifiedCode ⚠️ — 自動コードレビューと修復。ソフトウェアプロジェクトの問題とメトリクスを追跡するのに役立ち、新しい種類の分析をサポートするように簡単に拡張できます。
radon ⚠️ — ソースコードからさまざまなメトリクスを計算する Python ツール。
refurb — Python コードベースを刷新しモダナイズするためのツール。Refurb は Rust の組み込み linter である clippy に大きく影響を受けています。
ruff — Rust で書かれた高速な Python linter。既存の linter より 10〜100 倍高速。Python 3.10 と互換。ファイルウォッチャーをサポート。
Safety — 既知の脆弱性を持つパッケージを検出することでソフトウェアサプライチェーンのセキュリティを強化するために設計された Python 依存関係脆弱性スキャナー。Python の依存関係を既知のセキュリティ脆弱性のデータベースと照合し、詳細なレポートを提供します。CI/CD 連携と複数の出力形式をサポートしています。
ty — Rust で書かれた非常に高速な Python 型チェッカー。
unimport — 未使用の import 文を見つけて削除するための linter、フォーマッター。
vulture — Python コード内の未使用のクラス、関数、変数を検出します。
wemake-python-styleguide — これまでで最も厳格で意見の強い Python linter。
wily — Python ソースコードの複雑度をアーカイブ、探索、グラフ化するためのコマンドラインツール。
xenon ⚠️ — radon を使用してコードの複雑度を監視します。
yapf ⚠️ — Google によって作成された Python ファイル用のフォーマッター YAPF は、Daniel Jasper によって作成された 'clang-format' ツールに由来する独特の方法論に従っています。基本的に、このプログラムは、元のコードがすでにスタイルガイドに従っている場合でも、スタイルガイドに準拠する最も適切なフォーマットにコードを再構成します。この概念は、Go プログラミング言語の 'gofmt' ツールに似ており、変更が加えられるたびにプロジェクトのコードベース全体を YAPF に通すことで、フォーマットに関する議論を終わらせ、プロジェクト全体で一貫したスタイルを維持し、コードレビューのたびにスタイルについて議論する必要をなくすことを目的としています。
CodeDepends — R 用の静的コード解析。
cyclocomp ⚠️ — R の関数 / 式の循環的複雑度を定量化します。
flowR — R プログラミング言語用のプログラムスライサーおよびデータフローアナライザー。そのスライサーを使用すると、複雑なプログラムを特定のタスク (例: 単一または一連のプロットの生成、有意性検定など) に関連する部分だけに縮小できます。データフロー解析は、R コードのセマンティクスに関する詳細なビューを提供し、他の分析を大幅に改善できます。flowR を使用するには、Visual Studio Code 拡張機能、RStudio Addin、Docker イメージ、または R パッケージをチェックしてください。
goodpractice — R パッケージのソースコードを分析し、ベストプラクティスの推奨事項を提供します。
lintr — R 用の静的コード解析。
R Language Server — R 用のコード補完、リファクタリング、折りたたみ、診断 (lintr を使用) などを提供します。
rco ⚠️ — R コードのパフォーマンスオプティマイザー (GUI 付き)。
styler — R ソースコードファイルのフォーマットと R コードの整形出力。
Active Record Doctor — 本番環境に影響が出る前にデータベースの問題を特定します。
brakeman — Ruby on Rails アプリケーション用の静的解析セキュリティ脆弱性スキャナー。
Bullet — N+1 クエリと未使用の eager loading の排除を支援します。
bundler-audit — Ruby Advisory Database で報告されたセキュリティ脆弱性を持つ gem について Gemfile.lock を監査します。
cane ⚠️ — ビルドの一部としてコード品質のしきい値をチェックします。
Churn ⚠️ — 特定のチェックインに対してプロジェクトのチャーン (churn) ファイル、クラス、メソッドを提供するプロジェクト。時間の経過とともに、このツールはチャーンの履歴を積み上げて、プロジェクトの存続期間中にファイル、クラス、メソッドが何回変更されたかを示します。
DatabaseConsistency — データベーススキーマとアプリケーションモデル間の不整合や非効率性によるさまざまな問題を回避するためのツール。
dawnscanner ⚠️ — Ruby で書かれたウェブアプリケーション用の静的解析セキュリティスキャナー。Sinatra、Padrino、Ruby on Rails フレームワークをサポートしています。
ERB Lint — ERB または HTML ファイルを lint します
ERB::Formatter ⚠️ — ERB ファイルを高速かつ正確にフォーマットします。
Fasterer ⚠️ — 一般的な Ruby イディオムチェッカー。
flay — Flay はコードの構造的類似性を分析します。
flog — Flog は最も苦しめられたコードを読みやすい苦痛レポートで報告します。スコアが高いほど、コードはより苦痛な状態にあります。
Fukuzatsu ⚠️ — Ruby クラスファイルのコード複雑度を測定するためのツール。その分析は、余分な「意見」を加えずに循環的複雑度アルゴリズムに基づいたスコアを生成します。
htmlbeautifier ⚠️ — 埋め込み Ruby も理解する HTML のノーマライザー / ビューティファイア。Rails テンプレートの整理に最適です。
laser ⚠️ — Ruby コード用の静的解析およびスタイル linter。
MetricFu ⚠️ — MetricFu は、コードのどの部分に追加の作業が必要かを示すレポートを提供するツールセットです。
pelusa ⚠️ — OO Ruby コードを改善するための静的解析 Lint タイプのツール。
quality ⚠️ — コミュニティツールを使用してコードの品質チェックを実行し、数値が時間の経過とともに悪化しないようにします。
Querly ⚠️ — Ruby 用のパターンベースのチェックツール。
Railroader ⚠️ — Ruby on Rails アプリケーション用のオープンソース静的解析セキュリティ脆弱性スキャナー。
rails_best_practices — Rails プロジェクト用のコードメトリクスツール
reek — Ruby 用のコードスメル検出器。
Roodi ⚠️ — Roodi は Ruby Object Oriented Design Inferometer の略です。Ruby コードを解析し、設定されたチェックに基づいて設計上の問題を警告します。
RuboCop — コミュニティの Ruby スタイルガイドに基づいた Ruby 静的コードアナライザー。
Rubrowser ⚠️ — Ruby クラスのインタラクティブな依存関係グラフジェネレーター。
ruby-lint ⚠️ — Ruby 用の静的コード解析。
rubycritic — Ruby コード品質レポーター。
rufo — 意見の強い Ruby フォーマッターで、コマンドラインからテキストエディタのプラグインとして使用し、保存時またはオンデマンドでファイルを自動フォーマットすることを目的としています。
Saikuro ⚠️ — Ruby の循環的複雑度アナライザー。
SandiMeter ⚠️ — Sandi Metz のルールに照らして Ruby コードをチェックする静的解析ツール。
Skunk — Ruby コード用の SkunkScore 計算機 -- テストカバレッジのない最も複雑なコードを見つけましょう!
Sorbet — Ruby 向けに設計された高速で強力な型チェッカー。
Standard Ruby — Ruby スタイルガイド、linter と自動コード修正機能付き
Steep — Ruby 用の漸進的型付け。
Traceroute ⚠️ — Rails 3+ アプリの未使用のルートとコントローラーアクションを見つけるのに役立つ Rake タスク gem。
C2Rust — C2Rust は、C99 準拠のコードを Rust に移行するのを支援します。トランスレーター (またはトランスパイラー) は、入力 C コードを忠実に反映した unsafe な Rust コードを生成します。
cargo udeps — Cargo.toml 内の未使用の依存関係を見つけます。クレートをリストした "unused crates" 行を出力するか、未使用のクレートがなかったことを示す行を出力します。
cargo-audit — RustSec Advisory Database に報告されたセキュリティ脆弱性を持つクレートについて Cargo.lock を監査します。
cargo-bloat ⚠️ — 実行ファイルのスペースの大部分を何が占めているかを調べます。ELF (Linux、BSD)、Mach-O (macOS)、PE (Windows) バイナリをサポートしています。
cargo-breaking ⚠️ — cargo-breaking は、2 つの異なるブランチ間でクレートの公開 API を比較し、変更点を示し、semver に従って次のバージョンを提案します。
cargo-call-stack ⚠️ — プログラム全体の静的スタック解析。このツールは、プログラムの完全なコールグラフを dot ファイルとして生成します。
cargo-deny — 依存関係を lint するための cargo プラグイン。コマンドラインツール、Rust クレート、または CI 用の Github アクションとして使用できます。有効なライセンス情報、重複するクレート、セキュリティ脆弱性などをチェックします。
cargo-expand — 現在のクレートに適用されたマクロ展開と #[derive] 展開の結果を表示する Cargo サブコマンド。これは、より冗長なコンパイラコマンドのラッパーです。
cargo-geiger — unsafe な Rust コードの使用状況を分析するための cargo プラグイン。セキュリティ監査を支援する統計出力を提供します
cargo-inspect ⚠️ — 糖衣構文なしで Rust コードを検査し、コンパイラが舞台裏で何を行っているかを確認します。
cargo-semver-checks — Rust クレートのリリースをスキャンして semver 違反を検出します。CLI から直接、CI の GitHub Action として、または release-plz などのリリースマネージャーを介して使用できます。crates.io で最もダウンロードされている上位 1000 クレートのうち 6 つに 1 つ以上で semver 違反を発見しました。
cargo-show-asm — Rust コード用に生成されたアセンブリ、LLVM-IR、MIR を表示する cargo サブコマンド
cargo-spellcheck — hunspell (準備完了) と languagetool (プレビュー) を使用して、すべてのドキュメントのスペルと文法の間違いをチェックします
cargo-unused-features ⚠️ — 潜在的に未使用の有効な機能フラグを見つけて削除します。json からシンプルな HTML レポートを生成して、結果を検査しやすくすることができます。 依存関係の機能を削除してからプロジェクトをコンパイルし、まだコンパイルできるかどうかを確認します。コンパイルできる場合、その機能フラグはおそらく削除できますが、偽陽性である可能性もあります。
clippy — よくある間違いを検出し、Rust コードを改善するためのコード linter。
diff.rs — Rust クレートのバージョン間の差分をレンダリングするウェブアプリケーション (WASM)。
dylint — 動的ライブラリから Rust lint を実行するためのツール。Dylint により、開発者は自分自身の個人的な lint コレクションを簡単に維持できます。
electrolysis ⚠️ — Rust プログラムを Lean 定理証明器の定義にトランスパイルすることで形式的に検証するためのツール。
herbie ⚠️ — 数値的に不安定な浮動小数点式を使用した場合に、クレートに警告またはエラーを追加します。
kani — Kani Rust Verifier は、Rust 用のビット精度モデルチェッカーです。 Kani は、コンパイラによってチェックされない「unsafe な超能力」を持つ Rust の unsafe コードブロックを検証するのに特に役立ちます。 Kani は以下を検証します:
linter-rust ⚠️ — rustc と cargo を使用して、Atom で Rust ファイルを lint します。
lockbud — Rust のデッドロックバグを静的に検出します。現在、2 つの一般的な種類のデッドロックバグ (doublelock と競合する順序でのロック) を検出します。バグをソースコードの位置と各バグの説明とともに JSON 形式で出力します。
MIRAI ⚠️ — Rust の中間中間言語 (mid-level intermediate language) で動作し、テイント解析に基づいて警告を提供する抽象インタープリター。
prae ⚠️ — 指定した任意の不変条件を常に維持することを約束する型ラッパーを生成できる便利なマクロを提供します。
Prusti ⚠️ — Viper 検証インフラストラクチャに基づく Rust 用の静的検証器。デフォルトでは、Prusti は unreachable!() や panic!() などの文が到達不能であることを証明することで、パニックの不在を検証します。
Rudra — Rust のメモリ安全性と未定義動作の検出。単一の Rust パッケージだけでなく、crates.io 上のすべてのパッケージを分析できます。
Rust Language Server ⚠️ — 'goto definition'、シンボル検索、再フォーマット、コード補完などの機能をサポートし、名前変更とリファクタリングを可能にします。
rust-analyzer — 'goto definition'、型推論、シンボル検索、再フォーマット、コード補完などの機能をサポートし、名前変更とリファクタリングを可能にします。
rust-audit — 既知のバグやセキュリティ脆弱性について Rust バイナリを監査します。これは、依存関係ツリー (Cargo.lock) に関するデータを JSON 形式でコンパイル済み実行ファイルの専用リンカーセクションに埋め込むことで機能します。
rustfix ⚠️ — rustc (および clippy が提供するようなサードパーティの lint) によって行われた提案を読み取り、適用します。
rustfmt — スタイルガイドラインに従って Rust コードをフォーマットするためのツール。
RustViz — RustViz は、シンプルな Rust プログラムから視覚化を生成し、ユーザーが Rust のライフタイムと借用のメカニズムをよりよく理解できるよう支援するツールです。mdbook と統合して Rust プログラムのデータフローの視覚化をレンダリングするグラフィカルインジケーター付きの SVG ファイルを生成します。
TangleGuard ©️ — スケーラブルなソフトウェアアーキテクチャの理解と維持を支援します。そのために、ソースコードからインタラクティブでネストされた依存関係グラフを生成します。詳細レベルを選択して、コードベースの重要な部分を取得できます。
warnalyzer ⚠️ — マルチクレート Rust プロジェクトから未使用のコードを表示します
Bytebase — 組み込みの SQL Review エンジンを備えたデータベース DevSecOps プラットフォームで、MySQL、PostgreSQL、Oracle、SQL Server、Snowflake などにわたって、スキーママイグレーションとクエリを 100 以上の設定可能なルール (命名規則、アンチパターン、安全性チェック) に照らして lint します。
dbcritic — dbcritic は、テーブルに主キー制約が欠けているなど、データベーススキーマの問題を見つけます。
holistic — SQL クエリを分析する 1,300 以上のルール。SQL スキーマ定義とクエリソースコードを受け取り、改善の推奨事項を生成します。コードスメル、未使用のインデックス、未使用のテーブル、ビュー、マテリアライズドビューなどを検出します。- pgspot — Postgres 拡張スクリプトの脆弱性を検出します。PostgreSQL 拡張スクリプトやその他の PostgreSQL SQL コードにおける安全でない search_path の使用や安全でないオブジェクト作成を検出します。
sleek ⚠️ — Sleek は SQL をフォーマットするための CLI ツールです。SQL コード全体で一貫したスタイルを維持し、可読性と生産性を向上させるのに役立ちます。面倒な処理は sqlformat クレートが行います。
sqlcheck ⚠️ — SQL クエリのアンチパターンを自動的に特定します。
SQLFluff — 複数方言対応の SQL リンターおよびフォーマッター。
sqlint — シンプルな SQL リンター。
squawk — PostgreSQL 向けのリンターで、マイグレーションに焦点を当てています。データベースマイグレーションによる予期しないダウンタイムを防ぎ、Postgres スキーマと SQL に関するベストプラクティスを促進します。
tsqllint — T-SQL 固有のリンター。
TSqlRules ⚠️ — SQL Server 向けの TSQL 静的コード分析ルール。
Visual Expert ©️ — PowerBuilder、Oracle、SQL Server 向けのコード分析。コードを探索、分析、文書化します
linter ⚠️ — Linter は Scala の静的解析コンパイラプラグインで、さまざまな潜在的なバグ、非効率性、スタイルの問題に対するコンパイル時のチェックを追加します。
Scalastyle ⚠️ — Scalastyle は Scala コードを検査し、潜在的な問題を指摘します。
scapegoat — 静的コード分析のための Scala コンパイラプラグイン。
WartRemover — 柔軟な Scala コードリンティングツール。
bashate ⚠️ — bash プログラムのコードスタイルを強制します。出力形式は pycodestyle (pep8) のデフォルト出力形式に従うことを目指しています。
i-Code CNES for Shell ⚠️ — Shell および Fortran (77 および 90) 向けのオープンソース静的コード分析ツール。
kmdr ⚠️ — ターミナルからコマンドを学習するための CLI ツール。kmdr はすべての属性を説明しながらコマンドを分解して提供します。
sh — bash をサポートするシェルパーサー、フォーマッター、インタープリター。shfmt を含みます。
shellcheck — ShellCheck は、bash/sh シェルスクリプトに対する警告と提案を行う静的解析ツールです。
shellharden — シンタックスハイライターであり、ShellCheck 準拠へのスクリプトの書き換えを半自動化するツールで、主にクォートに焦点を当てています。
SwiftFormat — Swift コードを再フォーマットするためのライブラリおよびコマンドラインフォーマットツール。
SwiftLint — Swift のスタイルと規約を強制するツール。
Tailor ⚠️ — Apple の Swift プログラミング言語で書かれたソースコード向けの静的解析およびリントツール。
Frink — Tcl のフォーマットおよび静的チェックプログラム (プログラムを整形、最小化、難読化、または単に健全性チェックできます)。
Nagelfar — Tcl 向けの静的構文チェッカー。
tclchecker — 静的構文解析モジュール (TDK の一部として)。
Angular ESLint — Angular プロジェクト向けのリンター
Codelyzer ⚠️ — Angular 2 TypeScript プロジェクトの静的コード分析のための tslint ルールセット。
ENRE-ts ⚠️ — ENRE (ENtity Relationship Extractor) は、ソースコードからコードエンティティの依存関係や関係を抽出するためのツールです。ENRE-ts は @babel/parser に基づく ECMAScript および TypeScript 向けの ENtity Relationship Extractor です。
fta — TypeScript プロジェクト向けの Rust ベースの静的解析
stc ⚠️ — Rust で書かれた高速な TypeScript 型チェッカー
tslint ⚠️ — TSLint は 2019 年をもって非推奨となりました。詳細はこちらの issueをご覧ください。TypeScript のリンティングには typescript-eslint が現在最良の選択肢です。
TSLint は、TypeScript コードの可読性、保守性、機能的なエラーをチェックする拡張可能な静的解析ツールです。最新のエディターやビルドシステムで広くサポートされており、独自の lint ルール、設定、フォーマッターでカスタマイズできます。
tslint-clean-code ⚠️ — Clean Code ハンドブックに触発された TSLint ルールセット。
tslint-microsoft-contrib ⚠️ — Microsoft が保守する TypeScript プロジェクトの静的コード分析のための tslint ルールセット。
TypeScript Call Graph — TypeScript ファイルから関数と呼び出しのインタラクティブなグラフを生成する CLI
TypeScript ESLint — eslint 向けの TypeScript 言語拡張。
zod — 静的型推論を備えた TypeScript ファーストのスキーマバリデーション。目標は重複する型宣言を排除することです。Zod では、バリデーターを一度宣言するだけで、Zod が静的 TypeScript 型を自動的に推論します。より単純な型を複雑なデータ構造に構成するのも簡単です。
Icarus Verilog ⚠️ — IEEE-1364 Verilog で書かれたソースコードを何らかのターゲット形式にコンパイルして動作する Verilog シミュレーションおよび合成ツール
svls — Verilog および SystemVerilog 向けの Language Server Protocol 実装で、lint 機能を含みます。
verible-linter-action ⚠️ — Verible の助けを借りた github actions での自動 SystemVerilog リンティング。Verilog および SystemVerilog ソースファイルをリントし、Pull Request 内の誤ったコード行に自動的にコメントを付けます。
Verilator — Verilog を C++ または SystemC のサイクル精度の動作モデルに変換するツール。lint コード品質チェックを実行します。
vscode-verilog-hdl-support — VS Code 向けの Verilog HDL/SystemVerilog/Bluespec SystemVerilog サポート。Icarus Verilog、Vivado Logical Simulation、Modelsim、Verilator からのシンタックスハイライトとリンティングサポートを提供します。
Twiggy — バイナリのコールグラフを分析してコードサイズをプロファイリングします。目標は wasm バイナリサイズを削減することです。
wasm-language-tools — WebAssembly Language Tools は、WebAssembly Text Format の編集体験を提供および改善することを目指しています。また、WebAssembly Text Format 向けのすぐに使えるフォーマッター (別名 pretty printer) も提供します。
ale — 多くの言語をサポートする Vim および NeoVim 向けの非同期 Lint Engine。
Android Studio — IntelliJ IDEA をベースにしており、Android Lint を含む Android 向けのツールがバンドルされています。
AppChecker ©️ — C/C++/C#、PHP、Java 向けの静的解析。
Application Inspector ©️ — 脆弱性を検証するためのエクスプロイトを生成する商用静的コード分析。
ApplicationInspector — 機能検出 (例: アプリでの暗号化やバージョン管理の使用) のための 400 以上のルールパターンのレポートを作成します。
ArchUnit — Java または Kotlin アーキテクチャを単体テストします。
AST Metrics — 多言語の保守性アナライザー。循環的複雑度と認知的複雑度、Halstead ボリューム、求心/遠心結合度、保守性指数を計算し、依存関係グラフ内のコミュニティを検出し、探索可能な HTML レポートと JSON、Markdown、SARIF、OpenMetrics 出力を生成します。ランタイム依存のない単一の高速バイナリで、AI エージェントがリファクタリング前にコードベース構造をクエリできる組み込み MCP サーバーを備えています。
ast-grep — ast-grep は、抽象構文木 (AST) を使用して大規模にコードを管理するために設計された強力なツールです。grep、eslint、codemod のハイブリッドと考えてください。プレーンテキストではなく構造に基づいてコードを検索、リント、書き換える機能を備えています。 複数の言語をサポートし、カスタム言語を登録できるように拡張可能に設計されています。
Atom-Beautify ⚠️ — Atom エディターで HTML、CSS、JavaScript、PHP、Python、Ruby、Java、C、C++、C#、Objective-C、CoffeeScript、TypeScript、Coldfusion、SQL などを整形します。
autocorrect — CJK (中国語、日本語、韓国語) 間のコピーライティング、スペース、単語、句読点を改善するためのリンターおよびフォーマッター。
Axivion Bauhaus Suite ©️ — C/C++、C#/.NET、Java、Ada 83/Ada 95 のエラーが発生しやすいコード箇所、スタイル違反、クローンまたはデッドコード、循環依存などを追跡します。
Bearer — 機密データの露出 (PII、PHI、PD) につながるセキュリティリスクと脆弱性を発見、フィルタリング、優先順位付けするオープンソースの静的コード分析ツール。高度に設定可能で簡単に拡張でき、セキュリティチームとエンジニアリングチームのために構築されています。
Better Code Hub ©️ — Better Code Hub は、ソフトウェア品質の権威である Software Improvement Group が考案した 10 のエンジニアリングガイドラインに対して GitHub コードベースをチェックします。
Betterscan CE ⚠️ — コードとインフラ (さまざまな Git リポジトリ、クラウドスタック、CLI、Web インターフェースプラットフォーム、利用可能な統合をサポート) のセキュリティと品質の問題をチェックします。多くのツール/スキャナーを使用したコードスキャン/SAST/リンティングを One Report で重複排除します (AI はオプション)。
biome — Web プロジェクト向けのツールチェーンで、それらを維持するための機能を提供することを目指しています。Biome はコードを一瞬でフォーマットおよびリントします。Rome の後継です。最終的に Babel、ESLint、webpack、Prettier、Jest などを置き換えるように設計されています。
BlockWatch — コード、ドキュメント、設定を同期させ、厳格なフォーマットと検証ルールを強制する言語非依存のリンター。
BugProve ⚠️ ©️ — BugProve は、バイナリコード内のメモリ破壊、コマンドインジェクション、その他のクラスまたは一般的な弱点を発見するための静的および動的解析技術を備えたファームウェア解析プラットフォームです。脆弱な依存関係、弱い暗号パラメーター、設定ミスなども検出します。
callGraph ⚠️ — コールグラフ画像を静的に生成し、画面に表示します。
CAST Highlight ©️ — ローカルで実行されますが、結果をプレゼンテーション用にクラウドにアップロードする商用静的コード分析。
Checkmarx CxSAST ©️ — 事前コンパイルを必要としない商用静的コード分析。
ClassGraph — クラスメタデータやクラス関連性をクエリまたは可視化するためのクラスパスおよびモジュールパススキャナー。
Clayton ©️ — Salesforce 向けの AI 搭載コードレビュー。開発を安全にし、ベストプラクティスを強制し、技術的負債をリアルタイムで管理します。
coala ⚠️ — コード分析を作成するための言語非依存フレームワーク - デフォルトで 60 以上の言語をサポートします。
Cobra ©️ — NASA のジェット推進研究所による構造的ソースコードアナライザー。
Codacy ©️ — より良いコードをより速く出荷するためのコード分析。
Code Intelligence ©️ — バグの発見とコードカバレッジの可視化のための業界をリードするファジングエンジンを組み合わせた CI/CD 非依存の DevSecOps プラットフォーム
Code Pathfinder — セキュリティチーム向けのオープンソース静的コード分析で、ファイル間データフローのテイント解析を備えています。脆弱性の発見、高度な構造検索、インサイトの導出のために構築され、MCP サーバーをサポートします。
Code-Graph-RAG — Tree-sitter AST 解析を使用して多言語コードベースからナレッジグラフを構築し、Memgraph に保存します。統一されたグラフスキーマで 11 のプログラミング言語をサポートし、コード構造と関係の自然言語クエリと編集を可能にします。AI アシスタント統合のための MCP サーバーとして機能します。
Codeac ©️ — GitHub、Bitbucket、GitLab (セルフホストも可) と統合する自動コードレビューツール。JavaScript、TypeScript、Python、Ruby、Go、PHP、Java、Docker などで利用可能。(オープンソースは無料)
codeburner — 発見した問題を並べ替えて対処するための統一インターフェースを提供します。
CodeFactor ©️ — GitHub または BitBucket 上のリポジトリ向けの自動コード分析。
CodeFlow ©️ — 技術的負債に対処するための自動コード分析ツール。Bitbucket および Gitlab と統合。(オープンソースプロジェクトは無料)
Codemodder ⚠️ — Codemodder は、表現力豊かな codemod を構築するためのプラグ可能なフレームワークです。リンターやコードフォーマットツール以上のものが必要な場合に Codemodder を使用してください。自明でないセキュリティ問題やその他のコード品質問題を修正するために使用します。
codeql — 深いコード分析 - いくつかの言語向けのセマンティッククエリとデータフロー、VSCode プラグインサポート付き。
CodeQue — JavaScript および TypeScript コードの構造的マッチングのためのエコシステム。コード構造を理解する検索ツールを提供します。CLI ツールおよび Visual Studio Code 拡張機能として利用可能。コードをより速くより正確に検索し、ワークフローをより効果的にするのに役立ちます。まもなく、コードベースの品質を保証するのに役立つ独自のルールを数分で作成できる ESLint プラグインを提供する予定です。
CodeRush ©️ — Visual Studio 2015 以降で Roslyn エンジンを使用するコード作成、デバッグ、ナビゲーション、リファクタリング、分析、可視化ツール。
CodeScan ©️ — Salesforce 開発者向けのコード品質とセキュリティ。Salesforce プラットフォーム専用に作られた CodeScan のコード分析ソリューションは、コードの健全性を完全に可視化します。
CodeScene ©️ — CodeScene はソフトウェア向けの品質可視化ツールです。技術的負債を優先順位付けし、デリバリーリスクを検出し、組織的側面を測定します。完全に自動化されています。
CodeSee ©️ — CodeSee はアプリのサービス、ディレクトリ、ファイル依存関係、コード変更をマッピングおよび自動化します。Google Map のようなものですが、コード用です。
CodeSonar from GrammaTech ©️ — C、C++、Java、C# の高度な全プログラム、深いパス、静的解析で、わかりやすい説明とコードおよびパスの可視化を備えています。
Codety ⚠️ ©️ — Codety Scanner は、5000 以上の静的コード分析ルールを組み込んだ包括的なソースコードスキャナーで、20 以上のプログラミング言語と IaC ツールのコード問題を検出することを目指しています。
Codiga ©️ — 12 以上の言語をサポートする自動コードレビューおよび技術的負債管理プラットフォーム。
Corgea ©️ — Corgea は、開発者が安全でないコードを見つけて修正するのを支援する AI 搭載の SAST スキャナーです。ビジネスロジックの欠陥、壊れた認証、API の脆弱性などをほとんど誤検知なしで発見します。さらに、承認のためにセキュリティ修正を自動的に作成します。Corgea は GitHub、GitLab、Azure DevOps、IDE、CLI と統合されています。無料で試せます。
Corrode ⚠️ — C から Rust への半自動翻訳。Rust コンパイラの警告とエラーを表示することで、元の実装のバグを明らかにする可能性があります。C2Rust に取って代わられました。
Coverity ©️ — Synopsys Coverity は 20 の言語と 70 以上のフレームワークをサポートしており、Ruby on rails、Scala、PHP、Python、JavaScript、TypeScript、Java、Fortran、C、C++、C#、VB.NET を含みます。
cpp-linter-action — clang-tidy と clang-format を統合して C/C++ コードをリントする Github Action で、スレッドコメントやアノテーションの形で提供されるフィードバックを収集します。
cqc ⚠️ — js、jsx、vue、css、less、scss、sass、styl ファイルのコード品質をチェックします。
DeepCode ⚠️ ©️ — DeepCode は Snyk に買収され、現在は Snyk Code となっています。
DeepSource ©️ — バグリスク、セキュリティ、アンチパターン、パフォーマンス、ドキュメント、スタイルの分野で問題を見つけるための詳細な静的解析。GitHub、GitLab、Bitbucket とのネイティブ統合。誤検知は 5% 未満。
deleaker ©️ — Deleaker は C++、.NET、Delphi 向けのメモリリーク検出ツールで、Visual Studio、Qt Creator、RAD Studio と統合するか、スタンドアロンアプリケーションとして実行できます。開発者がメモリ、GDI、ハンドルのリークを効率的に見つけて修正するのに役立ちます。
Depends — Java、C/C++、Ruby のコード要素の包括的な依存関係を分析します。
DerScanner ©️ — ハードコードされたシークレット、弱い暗号、バックドア、SQL インジェクション、安全でない設定など、重大な脆弱性を検出する多言語静的アプリケーションセキュリティテスト (SAST) プラットフォーム。
DevSkim — Visual Studio、VS Code、Sublime Text 向けの正規表現ベースの静的解析ツール - C/C++、C#、PHP、ASP、Python、Ruby、Java など。
diesel-guard — Diesel および SQLx における危険な Postgres マイグレーションパターン向けのリンター。安全でないスキーマ変更によるダウンタイムを防ぎます。
dotnet-format — .NET 向けのコードフォーマッター。.editorconfig ファイルが存在する場合はそこから設定が読み込まれ、そうでない場合はデフォルトの設定セットが使用されます。現時点で dotnet-format は、サポートされている .editorconfig オプションのサブセットで C# および Visual Basic プロジェクトをフォーマットできます。
Embold ©️ — 設計上の問題、コードの問題、重複、メトリクスを特定するインテリジェントなソフトウェア分析プラットフォーム。Java、C、C++、C#、JavaScript、TypeScript、Python、Go、Kotlin などをサポートします。
emerge — Emerge はソースコードおよび依存関係の可視化ツールで、ソフトウェアプロジェクトのソースコード構造、メトリクス、依存関係、複雑さに関するインサイトを収集するために使用できます。プロジェクトのソースコードをスキャンした後、グラフ構造を使用してプロジェクトを探索および分析するためのインタラクティブな Web インターフェースを提供します。
Enforster AI ©️ — Enforster AI はコンテキスト対応のコードセキュリティ SAST を実行し、LLM と人工知能を活用してロジックの欠陥、シークレット、データ漏洩、サプライチェーン、技術的脆弱性の検出を削減および強化します。- ESLint — ECMAScript標準に準拠した、拡張可能なJS用リンター。
ezno — Rustで書かれたJavaScriptコンパイラ兼TypeScriptチェッカーで、静的解析と実行時パフォーマンスに重点を置いています。Eznoの型チェッカーはゼロから構築されています。このチェッカーはTypeScriptの型注釈と完全に互換性があり、型注釈がまったくなくても動作します。
Fallow — JavaScriptとTypeScript向けのRustネイティブな静的解析ツール。リポジトリを単一の依存関係グラフとしてマッピングし、ファイル境界を越えて未使用コードや構造的な問題を検出します。CLIまたはGitHub Actionsから実行でき、VS Code、LSP、MCP、Node APIとの統合も備えています。
Find Security Bugs — Java WebアプリケーションおよびAndroidアプリケーションのセキュリティ監査向けSpotBugsプラグイン。(Kotlin、Groovy、Scalaプロジェクトでも動作します)
Fortify ©️ — C/C++、C#、VB.NET、VB6、ABAP/BSP、ActionScript、Apex、ASP.NET、Classic ASP、VB Script、Cobol、ColdFusion、HTML、Java、JS、JSP、MXML/Flex、Objective-C、PHP、PL/SQL、T-SQL、Python (2.6, 2.7)、Ruby (1.9.3)、Swift、Scala、VB、XMLのスキャンをサポートする商用静的解析プラットフォーム。
Freeplane Code Explorer — FreeplaneのCode Explorerモードは、JVMクラスファイルにコンパイルされたコードの構造と依存関係を分析するために設計されています。また、Freeplaneが実行中で、テスト中にArchUnitがルール違反を検出した場合、ArchUnitのテスト結果をFreeplane内に直接表示することもできます。
Goodcheck — 正規表現ベースのカスタマイズ可能なリンター。
goone ⚠️ — goコード内のN+1クエリ(forループ内のSQL呼び出し)を検出します
graudit — Grep rough audit - ソースコード監査ツール。
HCL AppScan Source ©️ — 商用静的コード解析。
Hopper ⚠️ — JVM上で動作する言語向けにScalaで書かれた静的解析ツール。
Hound CI — GitHubのプルリクエストでスタイル違反にコメントします。Coffeescript、Go、HAML、JavaScript、Ruby、SCSS、Swiftをサポート。
imhotep ⚠️ — リポジトリに取り込まれるコミットにコメントし、構文エラーや一般的なlint警告をチェックします。
include-gardener ⚠️ — C/C++/Obj-C/Python/Ruby向けのマルチ言語静的解析ツールで、指定されたファイル群のすべての#include関係を示すグラフ(dotまたはgraphml形式)を作成します。
Infer — Java、C、Objective-C向けの静的解析ツール
Inkog — AIエージェントのセキュリティスキャナー。LangChain、CrewAI、pydantic-aiを含む11のフレームワークアダプターにわたって、行動上の脆弱性(プロンプトインジェクション、無限ループ、トークンボミング、LLM経由のSQLインジェクション)を検出します。MCPサーバーを監査します。検出結果をEU AI Act、OWASP LLM Top 10、NIST AI RMFにマッピングします。
Joern — Joernは、ソースコード、バイトコード、バイナリ実行ファイルを分析するためのプラットフォームです。クロス言語のコード解析のために、コードのグラフ表現であるコードプロパティグラフ(CPG)を生成します。コードプロパティグラフはカスタムグラフデータベースに保存されます。これにより、Scalaベースのドメイン固有クエリ言語で記述された検索クエリを使用してコードをマイニングできます。Joernは、静的プログラム解析における脆弱性の発見と研究に役立つツールを提供することを目標に開発されています。
jQAssistant — jQAssistantは、プラグインベースのソフトウェア分析プラットフォームで、リポジトリからコード構造とメタデータをスキャンしてNeo4jグラフデータベースに取り込むことができます。収集されたデータは、クエリによるアドホックな探索、可視化、または継続的なアーキテクチャ検証のためのルール定義に使用できます。
jscpd — プログラミングソースコードのコピー/ペースト検出ツール。トークンベースの検出を使用して、JavaScript、TypeScript、Python、Java、C#、C/C++、Go、Rust、PHP、Rubyなど200以上のファイル形式で重複ブロックを検出します。設定可能なしきい値と無視パターン、git blame統合、コンソール、HTML、JSON、Markdown、SARIF、バッジ用のレポーターをサポート。CLI、CIパイプライン、またはライブラリとして実行でき、MegaLinterとCodacyにバンドルされています。