🔍 git-scan-secrets は、Gitリポジトリの履歴をスキャンし、個人情報や機密情報(パスワード・APIキー・証明書など)の漏洩を検出するCLIツールです。
- Git履歴全体または指定コミット数を対象にスキャン
- 除外したい拡張子の指定が可能
- LLM(Ollama等)を用いた高精度な判定
- Markdown/JSON/テキスト形式での出力
- Go製・クロスプラットフォーム
git clone https://github.com/emurenMRz/git-scan-secrets.git
cd git-scan-secrets
go build -o git-scan-secrets./git-scan-secrets -repo <リポジトリパス> [オプション]| オプション | 説明 | 例 |
|---|---|---|
-repo |
対象のGitリポジトリパス(デフォルト: カレント) | -repo ../myrepo |
-model |
使用するOllamaモデル名(デフォルト: llama3) | -model llama3 |
-ollama-url |
OllamaサーバのURL(デフォルト: http://localhost:11434) | -ollama-url http://myollama:11434 |
-keyword |
追加で検出したいキーワード(カンマ区切り) | -keyword TODO,SECRET |
-exclude-ext |
除外する拡張子(カンマ区切り) | -exclude-ext png,zip |
-output |
出力形式(json, markdown, text) | -output json |
-output-file |
出力先ファイルパス(省略時は標準出力) | -output-file result.md |
-commits |
スキャン対象の最大コミット数(0は全件) | -commits 100 |
-dry-run |
LLM判定せず候補のみ抽出 | -dry-run |
./git-scan-secrets -repo . -exclude-ext png,zip -output markdown-keywordオプションで任意のキーワードを含む行も検出できます- Ollama等のローカルLLMサーバーが必要です(デフォルト: http://localhost:11434)
-ollama-urlオプションでOllamaサーバのURLを指定できます-dry-runオプションでLLM判定をスキップ可能
MIT License
ご意見・不具合報告は Issues までお願いします。