Skip to content
| Marketplace
Sign in
Visual Studio Code>Debuggers>dbgjsNew to Visual Studio Code? Get it now.
dbgjs

dbgjs

Microsoft

microsoft.com
|
627 installs
| (0) | Free
JavaScript and TypeScript debugging tools for terminals and coding agents.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

dbgjs

ms-vscode.dbgjs bundles the dbgjs CLI for JavaScript and TypeScript debugging, runtime inspection, coverage, profiling, heap analysis, and source discovery. It is independent of VS Code Team Tools.

Usage

  • In a new VS Code terminal, run dbgjs --help.
  • In Copilot, use the getDbgjsPath tool and invoke the returned absolute path. The included dbgjs skill guides agents through this workflow. Terminal PATH changes do not apply to agent tool processes.
  • Set dbgjs.enabled to false to unregister the tool, hide the skill, and remove the terminal PATH contribution. It defaults to true; changes take effect without reloading VS Code. Existing terminals retain their inherited environment and may need to be recreated.

The extension uses its installed binaries directly. It does not copy executables to user storage or generate shell wrappers at runtime. Node.js must be available on PATH for dbgjs commands that use Node-based providers (or set DBGJS_NODE). Playwright is bundled as an on-disk package for browser providers; its browser downloads are not bundled.

Extension API

Other extensions can declare "extensionDependencies": ["ms-vscode.dbgjs"] in their extension manifest and obtain the CLI path from the activation API:

interface DbgjsApi {
    getDbgjsPath(): string;
}

const extension = vscode.extensions.getExtension<DbgjsApi>("ms-vscode.dbgjs");
if (!extension) {
    throw new Error("The dbgjs extension is not installed.");
}
const api = await extension.activate();
const executablePath = api.getDbgjsPath();

getDbgjsPath() returns the absolute path to the installed CLI and checks that the executable exists on every call. If it is missing, the method throws an error instructing the user to reinstall the extension for their platform. The API remains available when dbgjs.enabled is false; that setting controls only terminal PATH integration, the language model tool, and the chat skill. Consumers should obtain the path again after an extension update rather than persisting it, and invoke it directly with an argument array rather than an unquoted shell command.

Supported platforms

Windows x64 and ARM64, macOS ARM64, and Linux x64 and ARM64 (glibc). Each platform-specific VSIX contains only that platform's dbgjs, dbgjs-service, and dbgjs-tui binaries.

Development and packaging

From vscode-team-tools, build native binaries first, then the extension:

node scripts/installDbgjsBuildInputs.mjs
node scripts/buildDbgjs.mjs --platform win32-x64
$env:DBGJS_PLATFORM = "win32-x64"
pnpm --filter dbgjs build
pnpm --filter dbgjs test
node scripts/packageDbgjsExtension.mjs --platform win32-x64

The native build places binaries in .build/dbgjs/<platform>. The extension build typechecks and bundles its minimal runtime, copies only those three native binaries into dist/dbgjs/<platform>, and copies Playwright and its production dependencies into dist/node_modules. Native helpers discover Playwright by walking the executable's ancestors, so direct invocation works outside this repository without a launcher or environment-variable shim.

Build and packaging use scripts/dbgjsPlatforms.mjs for platform metadata. DBGJS_PLATFORM selects the build platform; it defaults to the host platform. The packaging script accepts --platform, --pre-release, and --no-build (package an existing, potentially signed build without overwriting it). VSIX files are written to vscode-team-tools/dist/dbgjs-<platform>.vsix. Use pnpm --filter dbgjs typecheck to run typechecking without native binaries.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft