What problem does it solve? Static scanners flood you with false positives when hunting SQL Injection in Java web applications, especially when MyBatis ${} interpolation looks identical to safe #{} binding. This Skill finds SQLi candidates across both modern Spring Boot and legacy JSP/Servlet stacks, then verifies each finding against actual code context so only confirmed vulnerabilities reach your report. ## Core Features & Use Cases - Stack-aware scanning: Automatically detects spring-modern vs jsp-legacy project layouts and applies the matching Semgrep ruleset, with a grep fallback when Semgrep is not installed. - AI context verification: Distinguishes dangerous MyBatis ${param} string substitution from safe #{param} binding, traces user input sources, and checks ORDER BY allowlist validation before confirming a finding. - Standardized 4-element reports: Every confirmed vulnerability documents what is vulnerable, why, how it is exploited (concept PoC), and the fix, sorted by severity. - Use Case: Before releasing a Spring Boot board application, run the scan to catch a JdbcTemplate.query("... '" + name + "'") concatenation and receive a ready-made fix using ? placeholders. ## Quick Start Ask the AI to check the project at a given source path for SQL Injection vulnerabilities and produce a severity-ranked report.