Local-first code scanner for Windows

Your code has problems.
Here they are.

Eleven analyzers. One honest report. Zero uploads. Blunt Code runs Ruff, Biome, Semgrep and SonarQube — plus gitleaks, Trivy, OSV, Checkov, license, secrets and TODO checks — on your machine, and tells you exactly what's wrong, to your face.

free · MIT · no admin · Windows 10/11 · 726 automated tests

bluntcode scan . --profile deep
516 findings 11 analyzers 0 bytes uploaded
sonarqube · computing metrics…87% · 0 uploaded

How it scans

QuickRuff + Biome · seconds, pre-commit friendly
Standard+ Semgrep + SonarQube · the default sweep
Deepall eleven + extended rule sets · the full interrogation

Every analyzer runs sandboxed under %LOCALAPPDATA%\BluntCode\tools — your PATH is never touched, and nothing is ever uploaded.

Every finding, weighed

Criticalcommitted secrets · unsafe deserializationweight ×10
Highinjection paths · wildcard postMessageweight ×5
Mediumcode smells · complexity · dead varsweight ×2
LowTODOs · FIXMEs · style nitsweight ×1

weighted score → one letter grade per workspace, tracked over time trend arrows on the dashboard show whether you're fixing things or breaking them

Coverage wall

Deep scans: Python · JavaScript · TypeScript. Secrets & TODO: all 39 classified languages — .env files, Dockerfiles, even committed PEM keys.

What you get

/01 Nothing leaves

Loopback-only server. SQLite, reports and logs stay in %LOCALAPPDATA%. No account, no telemetry, works offline after first run.

/02 Ignore at source

Suppress a finding where it lives, with a reason. Or fingerprint-suppress, or commit a .bluntcodeignore — your team's calls, in the repo.

/03 Baseline CI gates

Exit codes your pipeline understands: 0 clean, 1 gate tripped, 2 usage, 130 Ctrl+C. --format github writes PR annotations.

/04 Self-healing

Stale rulepacks, interrupted tool downloads, locked data dir — doctor diagnoses and fixes them before you file an issue.

/05 Reports that ship

Every export honors your active filters. --save-baseline snapshots this scan, so the next one flags only what's new — not what you already know.

/06 Keyboard fast

Navigate, add workspaces, search findings, open the command palette — without touching the mouse.

Install in 30 seconds

powershell
PS> irm https://github.com/sanketpatel32/Blunt-code/releases/latest/download/install-latest.ps1 | iex
cmd
C:\> curl -fsSL -o "%TEMP%\install-bluntcode.cmd" https://github.com/sanketpatel32/Blunt-code/releases/latest/download/install.cmd && "%TEMP%\install-bluntcode.cmd"
SHA-256 verified No admin Start-menu shortcut Rerun = in-place upgrade Uninstaller included Portable ZIP + checksum →

Installs to %LOCALAPPDATA%\Programs\BluntCode. The app opens http://127.0.0.1:<port> automatically — add a folder, hit scan.

The blunt CLI

quick scanbluntcode scan . --profile quick
ci gatebluntcode scan . --fail-on high+ --baseline last.sarif
pr annotationsbluntcode scan . --format github
sarif outbluntcode scan . --format sarif --save-baseline base.sarif
self-healbluntcode doctor --fix
for ai agentsbluntcode agent scan . --profile quick # forces --json --quiet

exit 0 clean · 1 gate tripped · 2 usage error · 130 ctrl+c — plus llm.txt and bluntcode agent helpers, so your AI pair can read findings without a browser.

Why not a cloud scanner

Scan everything.
Send nothing.

Get Blunt Code — free ↓

MIT · Windows 10/11 · v0.16.21 · your code never leaves the machine