生成 AI による検出結果レビュー
AMWScan は、選択した検出結果のコンテキストを AI プロバイダーに送信し、補助的なセカンドオピニオンを取得できます。プロバイダーは検出結果を malware、false_positive、uncertain のいずれかに分類します。AI レビューはデフォルトで無効です。
動作
- AMWScan は通常のシグネチャや各種チェックで検出します。
- 検出後、最大
--ai-max-findings件を送信します。 - リクエストには一致したルール、メタデータ、検出行の前後にある制限付きコードが含まれます。サイズは
--ai-context-linesで指定します。 - 検証済みの応答は、判定、信頼度、プロバイダー状態、モデル、スキーマバージョンとともに CLI 出力と構造化レポートへ追加されます。
AI の結果が検出状態を変更することはなく、自動的にクリーンアップ、削除、隔離、ホワイトリスト登録、ファイル変更を行うこともありません。最終判断ではなく、トリアージの材料として利用してください。
プロバイダーとプライバシー
openai、anthropic、gemini の API と、インストール済みの claude-code-cli、codex-cli、copilot-cli、opencode-cli を利用できます。API キーは OPENAI_API_KEY、ANTHROPIC_API_KEY、GEMINI_API_KEY から読み込み、AMWSCAN_AI_API_KEY で上書きできます。キーをコマンド引数に渡さないでください。
CLI は隔離された一時ディレクトリで動作しますが、通常はコード断片をリモートのモデルサービスへ送信します。インストール済みでもローカル推論とは限りません。
安全な開始方法
まず変更を行わないスキャンを実行します。
GEMINI_API_KEY=your-key php scanner /var/www/example \
--report-only --report-format=json \
--ai-provider=gemini --ai-context-lines=5 --ai-max-findings=20
コード断片の送信がプロジェクトの要件に適合することを確認してください。機密データではコンテキストと件数を減らします。対応する前に、元ファイル、ルール、周辺コード、プロバイダーの応答を確認してください。--ai-timeout で各リクエストを制限できます。プロバイダーの失敗が通常の検出を妨げることはありません。
WordPress 7.0 以降では WordPress AI / 設定済みコネクターを使用でき、認証情報と承認は 設定 → コネクターで管理されます。全オプションは CLI コマンドリファレンスを参照してください。