Skip to content

projectdiscovery/pdtm

Repository files navigation


ProjectDiscovery's Open Source Tool Manager

FeaturesInstallationUsageRunning pdtmJoin Discord

pdtm is a simple and easy-to-use golang based tool for managing open source projects from ProjectDiscovery.

Installation

pdtm requires go1.24.3 to install successfully. Run the following command to install the latest version:

  1. Install using go install -
go install -v github.com/projectdiscovery/pdtm/cmd/pdtm@latest
  1. Install by downloading binary from https://github.com/projectdiscovery/pdtm/releases

Notes:

  • Currently, projects are installed by downloading the released project binary. This means that projects can only be installed on the platforms for which binaries have been published.
  • The path $HOME/.pdtm/go/bin is added to the $PATH variable by default

Usage:

pdtm is a simple and easy-to-use golang based tool for managing open source projects from ProjectDiscovery

Usage:
  ./pdtm [flags]

Flags:
CONFIG:
   -config string            cli flag configuration file (default "$HOME/.config/pdtm/config.yaml")
   -bp, -binary-path string  custom location to download project binary (default "$HOME/.pdtm/go/bin")

INSTALL:
   -i, -install string[]   install single or multiple project by name (comma separated)
   -ia, -install-all       install all the projects
   -ip, -install-path      append path to PATH environment variables
   -igp, -install-go-path  append GOBIN/GOPATH to PATH environment variables

UPDATE:
   -u, -update string[]         update single or multiple project by name (comma separated)
   -ua, -update-all             update all the projects
   -up, -self-update            update pdtm to latest version
   -duc, -disable-update-check  disable automatic pdtm update check

REMOVE:
   -r, -remove string[]  remove single or multiple project by name (comma separated)
   -ra, -remove-all      remove all the projects
   -rp, -remove-path     remove path from PATH environment variables

DEBUG:
   -sp, -show-path          show the current binary path then exit
   -version                 show version of the project
   -v, -verbose             show verbose output
   -nc, -no-color           disable output content coloring (ANSI escape codes)
   -disable-changelog, -dc  disable release changelog in output

Running pdtm

$ pdtm -install-all
                ____
     ____  ____/ / /_____ ___
    / __ \/ __  / __/ __ __  \
   / /_/ / /_/ / /_/ / / / / /
  / .___/\__,_/\__/_/ /_/ /_/
 /_/                          v0.0.1

      projectdiscovery.io

[INF] Installed httpx v1.1.1
[INF] Installed nuclei v2.6.3
[INF] Installed naabu v2.6.3
[INF] Installed dnsx v2.6.3

Todo

  • support for go setup + project install from source
  • support for installing from source as fallback option

pdtm is made with ❤️ by the projectdiscovery team and distributed under MIT License.

Join Discord

About

ProjectDiscovery's Open Source Tool Manager

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

No packages published

Contributors 11

Languages