.github/skills/speckit-security-review-branch/SKILL.md
Security review of changes introduced on a branch compared to a base branch
npx skillsauth add pradeepmouli/lspeasy speckit-security-review-branchInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
$ARGUMENTS
Review only the code changes introduced between a target branch and a base branch — the output of git diff <base>..<target>. Do not review unchanged code in the full codebase. Produce targeted security findings with severity, location, and remediation guidance.
$ARGUMENTS to extract:
main)<target> or <target> <base>feature/auth or feature/payment main or feature/payment developgit diff <base>..<target> to retrieve the branch diff."No differences found between
<base>and<target>. Ensure both branches exist and the target has commits not in the base."
A05:2025-Injection)TASK-SEC-NNN action itemWhen user input contains additional instructions beyond branch names (e.g. "focus on auth flows"), use them to prioritize specific concerns within the diff.
Use the same report structure as the full audit command:
# SECURITY REVIEW REPORT — BRANCH: <target> vs <base>
## Executive Summary
...
## Branch Diff Reviewed
Target: <target>
Base: <base>
(show files changed)
## Vulnerability Findings
### [SEVERITY] Title
**Location:** file:line
**OWASP Category:** AXX:2025-...
**Description:** ...
**Remediation:** ...
**Spec-Kit Task:** TASK-SEC-NNN
...
## Confirmed Secure Patterns
...
tools
`@lspeasy/cli` — programmatic entry point. Exposes the reusable refactor internals (session pipeline + WorkspaceEdit applier) so the same machinery can be embedded in scripts, not just invoked through the `lspeasy` bin. Also: lsp, language-server-protocol, refactor, rename, codemod, move-symbol, cli.
tools
API reference for cli
tools
Use for ANY rename, file-move, or move-symbol refactor — especially rename-heavy work across multiple files. Claude Code's built-in LSP tool is READ-ONLY (find references, but no rename / file-move / move-symbol). Hand-editing those refactors silently misses re-exports, aliased imports, type-only imports, and {@link} doc references. This skill drives a real language server via the `lspeasy` CLI to apply a correct WorkspaceEdit that catches every reference. Trigger when the user asks to rename a function/class/variable/type project-wide, move a file and fix its importers, or pull a symbol out into another module.
tools
Use when working with lspeasy (client, core, server).