Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>MurkvanNew to Visual Studio Code? Get it now.
Murkvan

Murkvan

pagyew

|
25 installs
| (0) | Free
Watching package.json and installing dependencies if changed
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info
Murkvan — project illustration

Murkvan

Keep installed npm packages in step with your workspace.

VS Code: 1.96+ npm: dependency sync license: MIT

Install · Features · Commands · Releases

English · Русский


A VS Code extension that watches a project's lockfile, compares declared dependencies with installed packages, and offers to install the changes it detects. Works with npm, yarn, pnpm and bun, and with more than one project open at once.

Install

code --install-extension pagyew.murkvan

Or search for Murkvan in the VS Code Extensions panel.

Requirements

  • VS Code 1.96 or newer.
  • A project with package.json, one supported lockfile (package-lock.json, yarn.lock, pnpm-lock.yaml, bun.lock/bun.lockb), and an existing node_modules directory.
  • The matching package manager available on PATH.

Features

  • Watches your lockfile. The moment package-lock.json, yarn.lock, pnpm-lock.yaml, or bun.lock/bun.lockb changes — most often right after git checkout — Murkvan checks whether what's installed still matches what's declared.
  • One-click sync. Found drift? A notification offers Install packages (just the changes) or Reinstall everything (a full, npm ci-style reinstall for when the drift runs deeper than a top-level diff can see). yarn and pnpm only offer the full reinstall, since their add command always rewrites package.json.
  • Branch-aware. Murkvan remembers what it last synced per Git branch, so switching back to a branch you've already synced is a no-op — not another round of checks.
  • npm, yarn, pnpm, and bun — detected automatically, no configuration needed.
  • Multi-root and monorepo aware. Every lockfile in your workspace is tracked as its own project, workspace members included.
  • Pending changes view. A tree view in the Explorer sidebar shows exactly what's out of sync — installed version, declared range, and an install action per package, or for everything at once.
  • Automation, entirely opt-in. Auto-install everything (murkvan.autoInstall), trust individual projects to auto-install ("Always install for this project"), or run a command after every sync (murkvan.postSyncCommand) — handy for prisma generate or similar.
  • Arc support. If Arc is installed, Murkvan also watches its staging area, since Arc doesn't notify ordinary file watchers.

One status bar entry summarizes every project at once, and progress, detected changes, and logs are all available through the Murkvan output channel.

Commands

Command ID Purpose
murkvan.showOutputChannel Open the extension's log
murkvan.installPackages Install the pending package changes (asks which project when more than one is open)
murkvan.checkPackages Compare packages now for every open project, without a lockfile change
murkvan.reinstallAll Reinstall a project's whole tree from its lockfile (asks which project when more than one is open)
murkvan.stopAutoInstalling Revert an earlier "Always install for this project" choice (asks which project when more than one is open)
murkvan.installAllPending Install everything shown in the Pending changes view

Settings

Setting Default Purpose
murkvan.logLevel info How much is written to the output channel (off/info/debug)
murkvan.showOutputOnError false Reveal the output channel whenever an error is logged
murkvan.includeDevDependencies true Compare devDependencies as well as dependencies
murkvan.autoInstall false Install detected changes immediately instead of asking first
murkvan.postSyncCommand "" Shell command to run in the project directory after every successful sync

Troubleshooting

Check that the workspace root contains the manifest and lockfile, that dependencies have been installed once, and that npm is on PATH. Run Murkvan: Check packages to compare on demand, then open the Murkvan output channel and inspect the recorded paths and errors.

Development

git clone https://github.com/pagyew/vscode-murkvan.git
cd vscode-murkvan
npm ci
npm run compile

Use the checked-in .vscode/launch.json to start an Extension Development Host.

Command Purpose
npm run watch Rebuild and type-check on changes
npm run check-types Type-check
npm run lint Lint source files
npm test Run the unit and integration suites
npm run test:unit Run the unit suite only (no VS Code download)
npm run package Build the production extension bundle

Unit tests in src/test/unit cover the modules that do not import vscode and run under plain Mocha. Integration tests in src/test/integration run inside a VS Code instance downloaded by @vscode/test-cli.

Roadmap

Planned work is tracked in ROADMAP.md.

License

MIT. See the license file for the original copyright notice.

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