vercel-labs/dev3000 is a local web debugging runtime that records a web app's server logs, browser events, errors, network activity, interactions, and screenshots in one timestamped timeline. Coding agents use it to run and inspect web applications while reproducing bugs. Its catalogue add-ons teach agents how to operate the runtime and examine its debugging evidence.
Borrowing it
Nothing to install: this file belongs to vercel-labs/dev3000. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/vercel-labs/dev3000/main/.agents/skills/deepsec/SKILL.mdgit clone --depth 1 https://github.com/vercel-labs/dev3000Wrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/vercel-labs/dev3000/deepsec)<a href="https://agentmods.dev/skills/vercel-labs/dev3000/deepsec"><img src="https://agentmods.dev/badge/skills/vercel-labs/dev3000/deepsec/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/vercel-labs/dev3000/deepsec"><img src="https://agentmods.dev/badge/skills/vercel-labs/dev3000/deepsec.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium MCP Rug Pull · line 25 npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.Fix: Pin the version: npx @scope/[email protected]
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00041 | $0.00912 |
| Opus 5.5 | $0.00016 | $0.00365 |
| Sonnet 5.5 | $0.00008 | $0.00182 |
| Haiku 4.5 | $0.00004 | $0.00091 |
Grade A, and why
deepsec scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 58 lines — stays where its author put it; the contents beside it link to each section on GitHub.
DeepSec Dev3000 Runbook
Use this skill to turn the manual DeepSec workflow into a repeatable dev3000 run against the current Vercel project checkout.
Operating Policy
- Work from the real project checkout at
/workspace/repo. - Do not write AI credentials into
.deepsec/.env.localor any tracked file. The dev3000 runtime passes AI Gateway credentials through the process environment. - Default dev3000 runs are a bounded first pass. Do not run an unbounded
processorrevalidatecommand unless the user explicitly asks for a full DeepSec scan in run-specific instructions. - Keep generated scan state in the locations DeepSec already gitignores. Commit only the durable setup/context files and human-readable findings report.
- Treat DeepSec as a coding agent with shell access. Do not run it on untrusted source inputs.
Default Flow
- Inspect the project shape:
- Read
README.mdif present. - Read
AGENTS.mdorCLAUDE.mdif present. - Skim representative files for auth, middleware, request handlers, data access, billing, webhooks, and security-sensitive boundaries.
- Read
- Initialize DeepSec if needed:
- If
.deepsec/is absent, runnpx --yes deepsec@latest init. - If
.deepsec/already exists, do not force overwrite it.
- If
- Install DeepSec workspace dependencies:
- Run
corepack pnpm installfrom.deepsec/. - Ensure the Claude Agent SDK native binary that DeepSec actually uses is available. Do not run a Claude Code postinstall; DeepSec uses
@anthropic-ai/claude-agent-sdk. - If
corepack pnpmis unavailable, runpnpm installonly after confirmingpnpmexists.
- Run
- Fill the generated project context:
- Read
.deepsec/node_modules/deepsec/SKILL.md. - Read
.deepsec/data/<id>/SETUP.md. - Replace
.deepsec/data/<id>/INFO.mdwith concise project-specific context. - Keep
INFO.mdto roughly 50-100 lines. - Use 3-5 examples per section. Name local primitives such as auth helpers, middleware, database clients, webhook handlers, and privileged APIs.
- Do not include line numbers, generic CWE lists, or broad framework summaries.
- Read
- Run the scan:
- Run
corepack pnpm deepsec scanfrom.deepsec/.
- Run
- Run bounded AI processing:
- Default command:
corepack pnpm deepsec process --limit 25 --concurrency 2 --batch-size 3. - If the candidate set is below the limit, state that all discovered candidates were processed.
- If the user explicitly requested a full run, use the requested limit/concurrency or omit
--limit. - If the process command fails, stop and report the failure. Do not generate a manual fallback report from regex candidates.
- Default command:
- Generate the findings report:
- Run
corepack pnpm deepsec export --format md-dir --out ./findings. - If there are no findings, create
.deepsec/findings/README.mdsummarizing that this bounded pass found no findings and include the exact commands that were run.
- Run
- Summarize the run:
- Include commands run, project id, limit/concurrency, and whether the report contains findings.
- Do not include a "Next Steps - Full Scan" section by default.
- Only include a follow-up scan section if DeepSec reports unprocessed candidates or the user explicitly asked about deeper coverage. Label it "Optional Deeper Follow-Up" and explain exactly how it differs from the completed run.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2mo ago First seen · 58 lines · 41 tokens per session scan A d09b74a1ca27
deepsec is a skill published in the GitHub repository vercel-labs/dev3000 (1,597 stars, last pushed 7d ago), licensed MIT. It adds 41 tokens to every session and 912 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
deepsec compared with skills from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| deepsecvercel-labs/dev3000 | Skill | 1.6k | 7d ago | MIT | A | 41 | Claude Code, Codex |
| storage-retentionget-bb/bb | Skill | 4.9k | today | MIT | A | 20 | Claude Code, Codex |
| thread-listget-bb/bb | Skill | 4.9k | today | MIT | A | 33 | Claude Code, Codex |
| memoryget-bb/bb | Skill | 4.9k | today | MIT | A | 16 | Claude Code, Codex |
| submit-a-pluginget-bb/bb | Skill | 4.9k | today | MIT | A | 23 | Claude Code, Codex |
| workflowsget-bb/bb | Skill | 4.9k | today | MIT | A | 21 | Claude Code, Codex |
| provider-retryget-bb/bb | Skill | 4.9k | today | MIT | A | 26 | Claude Code, Codex |