TIP
← Initiatives / Security tools

LLMSCAN / VS CODE / LOCAL STATIC ANALYSIS

Follow AI output to the code that uses it.

Check whether LLM responses or external input reach SQL, shell commands, or HTML output. Analyze Python, TypeScript, JavaScript, and PHP locally, and review input-to-operation paths in VS Code.

  • Python / TypeScript / JavaScript / PHP
  • Tree-sitter WASM
  • VS Code + CLI / SARIF
LLM Security Scanner character

LLM Security Scanner

Official LLMScan icon with a shield
LLM output / User input
           ↓
    Variables & assignments
           ↓
    SQL / Shell / HTML
LLMScan — AI Security Scanner. Analysis stays local without uploading source code.

01 /

Follow input to its destination

Review the input source, assignments, and path to a risky operation in diagnostic related information.

02 /

Include AI-specific inputs

Include LLM responses, agent tool-call arguments, and MCP tool arguments. Review places where model output is executed or rendered directly.

03 /

From editing to CI

Use inline diagnostics, hover explanations, and Quick Fix while editing, then changed-file scanning and SARIF output in CI.

01 / FEATURE TOUR

Explore what you can do.

LLM SECURITY SCANNER / 01

Treat model responses as external input.

Analyze recognized response patterns from OpenAI, Anthropic, Gemini, Ollama, LangChain, LlamaIndex, and the Vercel AI SDK. Review how values are handled before they reach SQL, eval, shell execution, or innerHTML.

Read the guide on this page ↓
// Illustrative input-to-sink path
const output = response.choices[0].message.content;
const query = output;
db.execute(query);
Illustrative code showing a path from an LLM response to SQL execution.

LLM SECURITY SCANNER / 02

Understand and address a finding in place.

Opening a supported file triggers analysis, with inline diagnostics and Problems entries. Hover for explanations, safer patterns, and CWE references. Supported findings offer Quick Fix suggestions such as textContent or yaml.safe_load.

Read the guide on this page ↓
// Avoid interpreting untrusted text as HTML
element.textContent = modelOutput;
Illustrative remediation. Confirm the intended output format and behavior after changes.

LLM SECURITY SCANNER / 03

Separate existing findings from new ones.

Configure custom sources, sinks, sanitizers, exclusions, and confidence in .llmscan.yml. Record existing findings in a baseline, and use the CLI for changed-file scans and JSON or SARIF export.

Read the guide on this page ↓
minConfidence: medium
failOn: high
baseline: .llmscan-baseline.json
exclude:
  - "**/generated/**"
Example configuration. A baseline records existing findings; it does not declare them safe.

02 / FROM INPUT TO ACTION

A path from inspection to action.

01

Open a file

Open a supported file to run local syntax analysis and input tracing within functions.

02

Review the path and evidence

Jump to the affected line from the sidebar or Problems panel, and inspect the path to the risky operation.

03

Fix and recheck

Apply a Quick Fix or edit manually. Optionally copy the AI-ready Markdown instructions, review the changes, and rescan.

03 / COVERAGE

Know the scope of your assessment.

Languages & findings

Python, TypeScript, JavaScript, and PHP. Review SQL, command and code execution, XSS, unsafe deserialization, and LLM05-related output handling.

Static analysis scope

Analysis centers on intraprocedural tracing with Tree-sitter WASM. Review findings from supported patterns and custom rules against the actual code and runtime context.

04 / GET STARTED

Get started in three steps.

01

Install the extension

Install “LLMScan - AI Security Scanner” in VS Code 1.85 or later. Analysis requires no API key or external server.

02

Open and inspect

Open a Python, TypeScript, JavaScript, or PHP file. Hover over diagnostics and review paths in Problems or the LLMScan sidebar.

03

Scan and configure

Scan the workspace from the sidebar. Configure .llmscan.yml and baselines for your team, then recheck after remediation.

START WITH YOUR PROJECT

Make review part of your everyday work.

LLM Security Scanner

How data is handled

Tree-sitter WASM runs locally without automatically sending source code or filenames externally. Copying AI-ready Markdown writes to the clipboard. Review included code and paths before sharing it with an external AI service.

EXPLORE THE APPS / TIP

Three perspectives on your software.

Choose an app to explore its features and how to use it.