mrkeyoor.com_
Fri 14 Aug 16:48 UTC
Dev Toolsevaluationupdated 14 Aug 2026

deepsec

Deepsec is a source-code vulnerability scanner that combines fast pattern matching with coding agents that investigate suspicious code across files. It is meant to find authorization mistakes, injection paths, and other flaws that simpler rules can miss, while keeping scan state and reports inside a project workspace.

Verdict

Deepsec is compelling when traditional rules have reached their limit and one missed authorization flaw costs more than an expensive model run. Its resumable workflow, project-specific matchers, and candid cost controls make the experiment practical, but broad agent access and a young, unreleased codebase rule out casual deployment. Trial it on an isolated copy of a trusted repository, cap the first run, and keep conventional static analysis beside it.

Setup3/5Easy guided start, followed by model, state, and isolation work
Docs5/5Detailed guides cover costs, models, CI, matchers, and trust
Community4/5Rapid pushes and active issue and pull-request discussion
Maturity2/5No tagged release and key safety and retry gaps remain open

Who it’s for

Security and platform teams reviewing large, trusted codebases where cross-file reasoning is worth paying for.
Developers who want an incremental scanner that can resume expensive model work after interruptions or spending limits.
Teams already using Codex, Claude, or Vercel AI Gateway and willing to inspect findings before acting.
Organizations that can isolate the scanner and budget model costs separately from ordinary CI checks.

Who it’s NOT for

Teams that need predictable, low-cost scanning on every commit: the README says large scans can cost thousands or tens of thousands of dollars, and even its FAQ estimates hundreds of dollars for many normal repositories.
Anyone who cannot give a coding agent broad access to the scanned environment: the README says to treat Deepsec as having full shell access, while an open request asks for a fail-closed read-only profile.
Projects expecting equal first-class rules across every language and framework: the support guide labels dedicated matchers for several Python, Rust, JVM, .NET, and PHP ecosystems as roadmap work.
Security programs that require a stable tagged release before adoption: the repository has active development but no GitHub release yet.
Teams that need every model response handled within one run: an open issue reports malformed agent output can fail a batch without an automatic retry.

Setup reality

The guided start is genuinely simple for a tool with this scope: Node.js 22 or newer, npx deepsec init, a model choice, and either a local agent login, direct provider key, or Vercel AI Gateway. The command creates a separate .deepsec workspace, installs dependencies, studies the repository, scans candidates, and starts paid processing. Real adoption takes more work than that command suggests. You should review the generated threat context and matchers, choose what state belongs in version control, estimate cost with a limited run, arrange persistent state in CI, and isolate the scanner because source snippets reach the selected model provider and some backends can use a shell. Large distributed runs also add Vercel project and Sandbox operations.

A security scanner built around investigation

Deepsec is not trying to replace a regular expression with a language model and call the result security research. Its pipeline maps the repository, detects technologies, and runs local matchers to identify candidate locations. A coding agent then reads surrounding files, traces control flow, and decides whether a candidate is a credible vulnerability.

That design targets the gap between fast static checks and a human audit. A rule can find a route handler or an unsafe API, but it often cannot tell whether middleware protects the route, whether tenant data crosses an authorization boundary, or whether a value is attacker-controlled several functions earlier. Deepsec gives the model repository tools and project context to investigate those questions.

The scanner supports more than JavaScript. Its technology guide documents coverage across TypeScript, Python, PHP, Ruby, Go, infrastructure files, and other ecosystems. Coverage is uneven. Next.js, common Python web frameworks, Rails, and several Go frameworks receive specific treatment, while dedicated matchers for many other detected stacks are still roadmap work. The agent can read any text source, but thinner rules mean less precise candidate selection.

The quick start hides an expensive second half

Running npx deepsec init is a polished entry point. It creates an isolated .deepsec workspace, asks which model and payment route to use, writes project context, scans the code, and begins investigation. You can use Vercel AI Gateway, a direct OpenAI or Anthropic key, or an existing local Codex or Claude login. Node.js 22 or newer is required.

Resumability is one of Deepsec's best operational choices. If a connection drops, a provider quota ends, or a spending cap stops processing, running the command again skips completed work. The same state supports later incremental scans. Cost and duration limits provide a needed brake, and a scaffold-only mode lets teams inspect the generated workspace before processing begins.

The real cost sits after the free pattern pass. The README warns that large codebases can consume thousands or tens of thousands of dollars in model calls. The FAQ gives an example range of $500 to $1,200 for 2,000 files with a particular Claude setup, with revalidation costing roughly as much as processing. Those are project estimates, not guarantees, but they make the buying decision clear. This is a periodic deep audit tool, not an obvious default for every small pull request. Start with a limited sample and measure your own repository.

Access is the hardest security decision

Deepsec asks for unusual trust from a security product. Its README says to treat it like a coding agent with full shell access to the environment where it runs. Repository content and vendored code can contain hostile instructions, and relevant source snippets are sent to the configured model provider. The Codex path uses constrained repository tools, while the local Claude path has broader shell behavior. The supported backends do not currently share one enforceable security contract.

An open feature request lays out the missing piece: an explicit fail-closed, read-only profile that restricts files, network access, credentials, and arbitrary host commands. That issue does not prove an exploit, but it describes why regulated teams should not point the default local flow at a laptop full of cloud credentials. Vercel Sandbox can reduce exposure and limits worker egress during agent execution, yet distributed mode uploads a tarball of the working tree and adds another boundary to assess.

Use a disposable checkout or isolated worker, remove unrelated secrets, and decide which provider may receive code before the first run. Plugins and executable TypeScript configuration also belong inside that review. Deepsec can find security flaws, but installing it does not transfer responsibility for its own operating boundary.

Results still need a skeptical reader

The project is frank about false positives. Its FAQ reports roughly 10 to 29 percent for high-severity findings after revalidation and recommends reviewing the generated project description. That is a reason to budget for revalidation and human confirmation, not a reason to dismiss the product. A scanner looking for subtle application logic flaws will produce judgment calls.

Some open issues affect reliability. One report says malformed agent output is parsed outside the retry loop, so a batch can fail and remain for a later invocation instead of receiving an immediate second attempt. Another documents policy-refusal text being mistaken for malformed findings output. Pull requests address refusal classification, but users should monitor failed batches and status output rather than treating a completed command as complete coverage.

Exports include readable Markdown and machine-oriented data, while reporting, metrics, enrichment, and optional ownership plugins support follow-up. SARIF work is visible in open pull requests, but without a tagged release, teams should pin an exact package version and test export behavior before wiring it into a security gate.

Young, active, and worth a controlled trial

The last push was August 13, 2026, and issues and pull requests were updated the same day. GitHub showed 61 open items, consisting of 20 issues and 41 pull requests, so that number should not be read as 61 confirmed defects. The pace is strong for a repository created in April 2026, but there is no latest GitHub release to provide a stable adoption point.

Documentation is excellent for such a new project. Separate guides cover setup, supported technology, model choice, costs, configuration, plugins, architecture, state, CI, and the security model. The warnings are specific enough to make an informed decision, which matters more here than a frictionless demo.

Deepsec deserves a trial when a mature codebase may hide expensive authorization or data-flow mistakes that ordinary SAST keeps missing. Run it as a bounded audit on isolated infrastructure, compare its confirmed findings with Semgrep or CodeQL, and record the actual cost. Teams that need cheap, deterministic CI or strict local containment should wait for a stable release and an enforceable read-only profile.

Alternatives

ProjectWhat it isPick it when
SemgrepA rule-driven static analyzer with broad language support and fast local scans.pick this instead when deterministic rules, quick CI feedback, and predictable cost matter more than agent-led investigation.
CodeQLA query-based analysis engine that models code as data for deep security checks.pick this instead when you want established data-flow analysis and can invest in CodeQL queries and database builds.
OSV-ScannerA focused scanner for known vulnerable open-source dependencies and lockfiles.pick this instead when dependency vulnerability inventory is the main job, not reasoning about application logic.

What people are saying

  1. [github-trending] vercel-labs/deepsec

Sources

  1. Deepsec README
  2. Getting started guide
  3. Supported technology guide
  4. Secure read-only profile request
  5. Agent output retry issue