Skip to content
| Marketplace
Sign in
Visual Studio Code>Linters>Deva SecurityNew to Visual Studio Code? Get it now.
Deva Security

Deva Security

DevSecCode Inc

|
1 install
| (2) | Free
In-editor security scanning, AI-assisted fixes, and compliance framework mapping (NIST, ISO 27001, HIPAA, SOC2, FedRAMP, CIS, OWASP).
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Deva Security

In-editor security scanning, AI-assisted fixes, and compliance framework mapping for VS Code, Cursor, Windsurf, and any VS Code-API-compatible IDE.

What it does

  • Scan — OpenGrep-powered SAST across 185+ rulepacks. Findings appear as native VS Code diagnostics with CWE links and remediation hints.
  • Map — Every finding maps to compliance controls across NIST 800-53, ISO 27001, HIPAA, SOC 2, FedRAMP, CIS Top 18, OWASP Top 10, PCI DSS, and more.
  • Fix — Click the lightbulb on any finding to generate a fix with an LLM. Streaming preview, side-by-side diff, apply with one click.
  • Export — SARIF, JUnit, and agent-json formats for CI consumption.

Screenshots

Findings and live scan Native VS Code diagnostics with CWE links, severity-grouped Findings tree, and a live scan progress toast.

Sidebar overview Severity tally, top compliance coverage, quick actions, findings, and posture across 17 frameworks — all in one panel.

LLM modes

Deva works fully offline by default. You pick where AI features run:

  • local-deva (default) — Fine-tuned Deva models via local Ollama. Free. Private.
  • local-ollama — Any model in your local Ollama.
  • byok — Your own Anthropic / OpenAI / Gemini key. The provider bills you.
  • cloud-frontier — Frontier models on a Deva subscription with team management.

Switch any time via Deva: Switch LLM Mode in the Command Palette.

Supported platforms

This release ships engine binaries for:

  • macOS (Apple Silicon) — darwin-arm64
  • Linux (x86_64) — linux-x64
  • Windows (x86_64) — win32-x64

Intel Mac (darwin-x64) and Linux ARM (linux-arm64) are not yet supported — the extension will install but scans will fail with a "platform not yet supported" error.

First-run network access

On first activation, Deva downloads its scanning engine and the OpenGrep binary (~65–90 MB total, depending on platform) from the public Deva CDN:

  • https://pub-55d597d59a86409c96832aa5da1ec422.r2.dev/engine/...

If you're behind a corporate proxy or firewall, allowlist that host. After the engine is cached in VS Code's globalStorage, scanning works offline.

Privacy & data handling

Deva is offline-first. What leaves your machine depends on the LLM mode you pick:

Mode Source code leaves your machine? Where it goes
local-deva (default) No Local Ollama only
local-ollama No Local Ollama only
byok Yes, on AI-fix actions Direct to Anthropic / OpenAI / Gemini using your key
cloud-frontier Yes, on AI-fix actions Deva proxy → upstream provider
  • BYOK API keys are stored in VS Code SecretStorage and never written to settings or disk.
  • Static scanning (the default workflow) is local in every mode — only AI-fix and AI-validation calls send code, and only in the modes shown above.
  • Deva does not collect telemetry from this extension. Authentication for cloud-frontier uses Firebase OAuth and only stores an account ID + token in SecretStorage.

Repository layout

.
├── package.json              Extension manifest
├── src/                      TypeScript extension code
│   ├── extension.ts          Activation entry
│   ├── auth/                 Firebase OAuth provider
│   ├── backend/              Engine lifecycle + HTTP client + installer
│   ├── codeActions/          AI-fix code actions
│   ├── commands/             Command palette entries
│   ├── diagnostics/          Findings → vscode.Diagnostic
│   ├── llm/                  Mode router, proxy client, BYOK clients
│   ├── output/               SARIF / JUnit / agent-json export
│   ├── types/                Wire types (mirrors Pydantic models)
│   ├── views/                Findings tree, compliance tree, status bar
│   └── webviews/             Compliance posture matrix
├── engine/                   Python scanning engine (ports to PyInstaller)
│   ├── backend/              FastAPI server (slimmed to 7 routers)
│   ├── compliance_seeds/     Framework data
│   ├── rulepacks/            OpenGrep rules
│   ├── scripts/              Build + verify scripts
│   ├── src/dsc/              Scanner library
│   ├── tests/                Compliance-correctness tests
│   └── vendor/               OpenGrep + reference compliance data
├── resources/
│   ├── icons/                Activity bar icon
│   ├── sample-vulns/         Bundled vulnerable code samples
│   └── walkthroughs/         Onboarding markdown
└── test/                     Extension-host integration tests

Development

# One-time
npm install

# Build
npm run build

# Watch (rebuild on change)
npm run watch

# Run the extension in a fresh Extension Host
# (Use the "Run Extension" debug config in VS Code)

# Run the engine locally for development
bash engine/scripts/dev-engine.sh

CI

The compliance test suite is the engine-correctness gate; it must pass on every PR:

bash engine/scripts/test-compliance.sh

CI must install OpenGrep before running the gate. The release workflow's engine/vendor/opengrep/setup.sh script handles this automatically when a job needs to scan during build.

Releasing

Two independent version axes (extension VSIX vs. engine bundle). Read RELEASING.md before bumping versions or pushing tags. The short version: if your PR touches engine/, the engine version bumps and gets a new engine-vX.Y.Z tag after merge; if it's TS-only, no bump needed.

License

MIT — see LICENSE.txt.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft