Skip to main content

The problem we’re solving

In 2024, GitHub reported that over 40% of new code in repositories is AI-assisted. Tools like GitHub Copilot, Cursor, and Claude generate entire modules, authentication flows, and API handlers in seconds. That’s remarkable. It’s also terrifying. AI-generated code has a security blind spot. Language models are trained to produce code that works — not code that’s secure. They hallucinate outdated patterns, reproduce vulnerable boilerplate from training data, and have no concept of your production secret management strategy. The result: developers shipping fast with a false sense of safety.

What existing workflows miss

Tools like ESLint or Bandit catch obvious anti-patterns, but they don’t understand the meaning of what they’re flagging. A developer who sees no-hardcoded-credentials for the fifth time this week stops reading the output.ZenVeil surfaces findings with full context: what it is, why it matters in your specific codebase, what OWASP category it maps to, and a concrete fix — not a documentation link.
Most teams running GitLeaks or TruffleHog in CI see hundreds of false positives per week. No confidence scores. No severity triage. No remediation. Just a wall of red.ZenVeil assigns confidence scores (0.58–0.98) to every finding, separates CRITICAL from LOW with clear severity bands, and lets you record human verdicts (correct, false_positive, low_priority) to train future filtering.
npm audit tells you there’s a critical vulnerability in lodash. It doesn’t tell you which of your 47 transitive dependencies is pulling it in, whether you actually call the vulnerable code path, or what the migration path looks like.ZenVeil’s AI agent can explain every finding in plain language, generate a production-ready fix, and open a GitHub pull request — all from a single command.
A binary pass/fail security gate with no explanation is worse than no gate. Developers learn to suppress warnings or route around them.ZenVeil exits with code 1 only on CRITICAL and HIGH findings. Every other severity passes, keeping the build green while still surfacing issues in the report. And the findings that do block? They come with an AI explanation and a --auto-pr flag to fix them immediately.

The AI-generated code risk

Consider this pattern — generated verbatim by a major AI coding assistant:
// Generated by AI — looks fine, ships to production
const jwt = require('jsonwebtoken');

const token = jwt.sign(
  { userId: user.id, role: user.role },
  'my-secret-key',           // CRITICAL: predictable signing secret
  { expiresIn: '365d' }      // HIGH: 1-year token lifetime
);

localStorage.setItem('auth_token', token);  // HIGH: XSS-accessible storage
Three OWASP violations in eight lines. The AI didn’t know. The developer didn’t notice. ZenVeil catches all three — with severity, evidence, OWASP mapping, and a fix — in under two seconds.
$ zenveil scan repo .

  ╭─────────────────────────────────────────────────────────╮
  ZenVeil Security Scan 3 findings
  ╰─────────────────────────────────────────────────────────╯

  ZG-001  CRITICAL  jwt_security      Predictable JWT signing secret
  ZG-002  HIGH      session_mgmt      Long-lived session token (365d)
  ZG-003  HIGH      browser_storage   Token stored in browser storage

  Run `zenveil explain ZG-001` for AI analysis.
  Run `zenveil fix ZG-001 --auto-pr --repo owner/repo` to open a PR.

Our philosophy

Security should be a developer experience problem, not a compliance problem. Most security tooling is built for security teams to audit developers. ZenVeil is built for developers to ship confidently. That means:
  • Clarity over volume — fewer, higher-confidence findings with full context
  • Actionability — every finding tells you exactly what to change and why
  • Autonomy — AI-generated PRs let you fix without context-switching to a ticket
  • Privacy — local scans never leave your machine; we scan code, not businesses
  • Speed — a scan that blocks your pipeline must complete in seconds, not minutes

The autonomous remediation vision

Today, ZenVeil finds vulnerabilities and generates fixes. The trajectory is toward full autonomous security operations:
  1. Detect — find the vulnerability with high confidence
  2. Explain — tell the developer what it is in plain language
  3. Fix — generate a production-ready patch
  4. Ship — open a pull request with the fix, linked to the finding
  5. Learn — record human verdicts to improve future detection
We’re at steps 1–4 today. Step 5 is live in beta. The goal is a world where routine security debt is handled automatically, so security engineers can focus on architecture and threat modeling rather than grep and triage.

Why now?

Three forces converged:
  1. AI-generated code is the norm — the attack surface is growing faster than security teams
  2. LLMs are good enough to explain and fix code — Claude and Gemini can generate accurate, context-aware remediation at scale
  3. DevSecOps is mainstream — developers expect security in their workflow, not bolted on
ZenVeil sits at the intersection of all three. We’re not trying to replace security teams. We’re trying to give every developer a security engineer in their terminal.

Start your first scan

Get from zero to your first finding in under 60 seconds.