deepsec README

The project's README from github.com/vercel-labs/deepsec. As one markdown file: README.md.

deepsec

deepsec is an agent-powered vulnerability scanner that you can run in your own infrastructure, optimized to perform on-demand review of all code in existing large-scale repos.

deepsec is designed to surface hard-to-find issues that have been lurking in applications for a long time. It is configured to use the best models at maximum thinking levels (tunable via --thinking-level, see models), meaning scans can cost thousands or even tens-of-thousands of dollars for large codebases. Our customers have found the cost worth it for how quickly they were able to patch vulnerabilities that would have otherwise gone unfixed.

For large codebases, work fans out across worker machines in parallel. If a run is interrupted or errors out partway through, just re-run the same command — deepsec picks up where it left off, skipping files it already analyzed and only investigating the rest.

Get started

From the root of the repository you want to scan:

npx deepsec init

The command guides you through everything. It asks you to pick an AI model (with benchmark scores and prices to compare) and how to pay for model usage — your own OpenAI/Anthropic API key, or Vercel AI Gateway — and then works unattended: it studies your codebase, scans it, and runs the AI review. The only thing it adds to your repository is a .deepsec/ folder where all of its state and findings live.

If the run is interrupted for any reason — Ctrl-C, lost connection, a spending limit — run npx deepsec init again and it continues where it left off. To cap what a run may spend or how long it may take:

npx deepsec init --max-cost-usd 100 --max-duration 2h

When the scan finishes, get a readable report:

cd .deepsec
pnpm deepsec export --format md-dir --out ./findings

For later scans, work from inside .deepsec/:

pnpm deepsec scan        # fast pattern scan, free
pnpm deepsec process     # AI review of new candidates
pnpm deepsec revalidate  # optional, cuts false-positive rate
pnpm deepsec export --format md-dir --out ./findings

The getting started guide covers all of this in more detail, including using your own OpenAI or Anthropic API key and running from CI or a coding agent.

Docs

After initialization, agents can read the exact documentation matching the installed CLI at .deepsec/node_modules/deepsec/SKILL.md and .deepsec/node_modules/deepsec/dist/docs/. Setup errors expose these as absolute machine-readable paths.

AI provider

By default, deepsec routes model calls through Vercel AI Gateway, which gives access to every major model without provider-specific keys. You can instead bring your own key — OpenAI, Anthropic, or a custom HTTPS provider — by passing --model-auth direct with --ai-provider and --ai-api-key-env to init; no Vercel account is needed in that mode. Deepsec only ever stores the name of the environment variable holding your key, never the key itself. See project link and credentials for the full reference.

If a process or revalidate run halts because the upstream credential ran out of quota or credits, deepsec stops gracefully and tells you where to top up. Re-run the same command afterward and it picks up where it left off.

Distributed execution (optional)

Large monorepos can fan work across Vercel Sandbox microVMs:

pnpm deepsec sandbox process --project-id my-app --sandboxes 10 --concurrency 4

Setup already verified the Vercel connection, so this needs no extra onboarding. The local working tree is tarballed and uploaded; .git is excluded. Model credentials remain host-side and are injected only at the selected egress host.

Security model of deepsec itself

Treat deepsec like a coding agent with full shell access on the enviroment that it is running on. It is designed to run on trusted inputs (your source code) but you may still be concerned about prompt injection due to external dependencies or vendored code.

Running on a sandbox (see above) does limit the potential exposure substantially:

Workflow reference

Command What it does
scan Find candidate sites with regex matchers (fast, no AI)
process AI investigation; emits findings + recommendation
process --diff PR-mode: scan + investigate only files changed in a diff
triage Lightweight P0/P1/P2 classification (cheaper model)
revalidate Re-check existing findings; checks git history for fixes
enrich Add git committer info + (with a plugin) ownership data
report Markdown + JSON summary for one project
export Per-finding JSON or directory of markdown files
metrics Cross-project counts: severities, vulns by type, TPs
status Snapshot of the project mirror
sandbox <cmd> Run any of the above on Vercel Sandbox microVMs

License

Apache 2.0. See LICENSE and NOTICE.

deepsec (vercel-labs/deepsec)

Searching Database…

8.2K ·GitHub
Что это такое?Deepsec — это сканер уязвимостей на основе ИИ-агентов, который вы запускаете в собственной инфраструктуре, чтобы по запросу проверить безопасность всей большой кодовой базы. Он находит трудно обнаруживаемые проблемы, которые долго остаются незамеченными.
Это библиотека, которую я импортирую, или инструмент командной строки, который я запускаю?Это инструмент командной строки, который запускается через npx, а не библиотека для импорта в код. Все его состояние и результаты записываются в папку .deepsec/ в вашем репозитории.
Как запустить первое сканирование?Из корневой папки репозитория, который хотите просканировать, выполните 'npx deepsec init'. Команда проведёт вас через выбор ИИ-модели и способа оплаты, после чего сканирование пойдёт без участия пользователя, а всё его состояние хранится в папке .deepsec/.
Нужен ли мне собственный ключ API OpenAI или Anthropic?Не обязательно: по умолчанию deepsec направляет запросы к моделям через Vercel AI Gateway, что даёт доступ ко всем основным моделям без ключей конкретных провайдеров. Можно также использовать собственный ключ OpenAI, Anthropic или произвольный HTTPS-ключ, указав --model-auth direct.
Насколько дорогим может быть сканирование?Deepsec настроен на использование лучших моделей с максимальным уровнем «размышлений», поэтому полное сканирование большой кодовой базы может стоить тысячи, а то и десятки тысяч долларов только за использование моделей.
Для кого это создано?Это создано для инженерных команд и команд безопасности, которым нужно проверять большие существующие кодовые базы на давно существующие уязвимости и которые готовы платить за интенсивное использование ИИ-моделей ради их поиска.
Может ли вредоносный код, который сканирует deepsec, украсть мои ключи API через промпт-инъекцию?Deepsec работает с полным доступом к командной строке, как ИИ-агент для написания кода, поэтому сторонний код, включённый в репозиторий, или внешний код может попытаться провести промпт-инъекцию. Но запуск в песочнице ограничивает риски: ключи API для ИИ-агентов для написания кода подставляются за пределами песочницы, а рабочие песочницы могут обращаться по сети только к серверам таких агентов.
Что происходит, если сканирование прерывается?Если запуск останавливается из-за Ctrl-C, потери соединения или лимита расходов, повторный запуск той же команды возобновит его: уже проанализированные файлы пропускаются, а остальные исследуются.
Как deepsec справляется с очень большими монорепозиториями?Работа распределяется между рабочими машинами, при необходимости на микровиртуальных машинах Vercel Sandbox. Локальное рабочее дерево (без .git) упаковывается в tar-архив и загружается, чтобы анализ шёл параллельно.
Из каких команд состоит рабочий процесс deepsec?Помимо scan (быстрое сопоставление по регулярным выражениям) и process (исследование с помощью ИИ), есть triage для дешёвой классификации серьёзности, revalidate для повторной проверки старых находок по истории git, enrich для данных о владельцах кода, а также report, export и metrics для сводки результатов.
Size
1.7 MB
Stars
8.2K
Updated
CommitSep 29
Age
5mo
Commits · 90 Days