PMG Repository
View the PMG source code and contribute on GitHub
PMG requires no configuration - just install and use it as you normally
would with your package managers.
Installation
Using Homebrew (macOS and Linux)
Using Go Install
Download Binary
Download the latest release from our GitHub releases page and add it to your PATH.Windows
Use Windows 10 or 11. Downloadpmg_Windows_x86_64.zip from a v0.29.0 or later release, extract pmg.exe, and add its directory to your PATH. The release is x86-64 only. ARM64 runs it under emulation. 32-bit Windows is not supported.
Windows support requires PMG v0.29.0 or later.
For Node.js installed by its MSI, winget, or Chocolatey, use the Windows system install. These installers put Node on the machine PATH, ahead of every per-user shim. Until system install is complete, invoke pmg npm explicitly.
Quick Setup
Automated Setup (Recommended)
Run PMG’s automated setup:- macOS and Linux
- Windows
Setup creates package-manager PATH shims and the
~/.pmg.rc alias layer for bash, zsh, and fish. Restart your terminal or source your shell’s config file to activate it.Manual Usage (Alternative)
To invoke PMG explicitly:Supported Package Managers
PMG supports these tools from the PMG README:The aube tools (
aube, aubx, and aubr) are not part of the initial Windows support. See the Windows support reference.Troubleshooting
If PMG isn’t working after setup
- Restart your terminal
- On macOS or Linux, run
type npmto check for a PMG alias or shim. If it resolves to the real manager, runpmg setup installagain and restart the terminal. - On Windows, run
Get-Command npmin PowerShell. It should resolve under%LOCALAPPDATA%\safedep\pmg\binfor a per-user setup, or%ProgramFiles%\safedep\pmg\binfor system install. - Run
pmg setup doctorto check PATH, shims, and config, andpmg versionto check the installed version.
Windows coverage
Use PowerShell orcmd.exe for automatic interception. In Git Bash, invoke pmg npm or pmg pip explicitly. Run pmg setup doctor to diagnose setup problems.
See the Windows support reference for PATH behavior, supported shells, WSL, and platform limitations.
If packages are incorrectly blocked
- Run with
--verboseto see detection details - Check the SafeDep community for known issues
- Report false positives on GitHub Issues
Next Steps
- Learn what PMG is and how it works
- See the PMG repository for complete documentation and examples
- Join our Discord community for support
- Check out other SafeDep tools like Vet and SafeDep Cloud

