pydevd
PyDev.Debugger (used in PyDev, PyCharm and VSCode Python)
What it is and what it does
pydevd is the debugger backend used internally by PyDev (Eclipse), PyCharm, VSCode Python extensions, and other IDEs. It provides interactive debugging capabilities including breakpoints, stepping, and variable inspection. The package is typically bundled by these IDEs, but it's also available on PyPI for standalone installation to enable remote debugging scenarios—where you install it on a remote machine and connect it back to a debugger UI running in your local IDE.
The debugger supports Python 3.8 onwards on CPython and PyPy, with recent versions including Cython-based speedup modules and optimized tracing via sys.monitoring on Python 3.12. It's mature, actively maintained, and has no known security vulnerabilities. Most developers encounter it indirectly through their IDE; direct installation is primarily useful for remote debugging workflows where manual setup is required.
Use it for:
- Debug Python code running on a remote server by installing pydevd there and connecting to your local IDE.
- Set up interactive debugging in containerized or cloud environments where the debugger backend must be installed separately.
- Debug long-running processes or background jobs that cannot easily be run locally.
- Integrate debugging into custom Python applications or scripts that need IDE-level debugging without bundling a full IDE.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
pydevd is a Python debugger backend that attaches to running processes for interactive debugging, with support for remote debugging across machines and optimized tracing on Python 3.12 via sys.monitoring.
Yes, if you need remote debugging or are building a custom debugging setup. No, if you're using PyCharm, VSCode, or PyDev—these IDEs bundle pydevd already. Install only when you explicitly need the debugger backend on a machine separate from your IDE, or when setting up remote debugging infrastructure.
Install
pydevd on PyPI
pip
pip install pydevduv
uv add pydevdpoetry
poetry add pydevdInstalling pydevd
Before you install
Medium install friction due to compiled wheels for multiple Python versions and platforms. The project is actively maintained with recent commits and no known vulnerabilities, though it's typically bundled by IDEs rather than installed standalone.
License in practice
Licensed under EPL (Eclipse Public License 1.0), a copyleft license. Users can use and modify the code freely, but modifications and derivative works must be distributed under the same license terms.
Quickstart
pip install pydevd
import pydevd
pydevd.settrace(host="10.1.1.1") # Connect to remote debugger
# or for VSCode DAP protocol:
pydevd.settrace(host="10.1.1.1", protocol="dap")
Requires Python 3.8 or later; for Python 3.3–3.7 use pydevd 2.10.0; for Python 2 use pydevd 2.8.0.
Verify before relying
- Whether sys.monitoring on Python 3.12 provides measurably faster tracing compared to earlier versions in real-world debugging scenarios.
- Exact performance characteristics and overhead when used with PyPy versus CPython.
- Whether the package can be used standalone for local debugging or is primarily intended for remote scenarios.
Package facts
| License | EPL (copyleft) |
| Python support | not specified |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | none |
| Maintenance | actively maintained — 134 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,351,965/month — #4,013 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: pydevd-3.5.0-cp310-cp310-macosx_14_0_universal2.whl; pydevd-3.5.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; pydevd-3.5.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; pydevd-3.5.0-cp310-cp310-musllinux_1_2_aarch64.whl; pydevd-3.5.0-cp310-cp310-musllinux_1_2_x86_64.whl; pydevd-3.5.0-cp310-cp310-win_amd64.whl; pydevd-3.5.0-cp311-cp311-macosx_14_0_universal2.whl; pydevd-3.5.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; pydevd-3.5.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; pydevd-3.5.0-cp311-cp311-musllinux_1_2_aarch64.whl; pydevd-3.5.0-cp311-cp311-musllinux_1_2_x86_64.whl; pydevd-3.5.0-cp311-cp311-win_amd64.whl; pydevd-3.5.0-cp312-cp312-macosx_14_0_universal2.whl; pydevd-3.5.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; pydevd-3.5.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; pydevd-3.5.0-cp312-cp312-musllinux_1_2_aarch64.whl; pydevd-3.5.0-cp312-cp312-musllinux_1_2_x86_64.whl; pydevd-3.5.0-cp312-cp312-win_amd64.whl; pydevd-3.5.0-cp313-cp313-macosx_14_0_universal2.whl; pydevd-3.5.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Keywords: pydev, pydevd, pydev.debugger
Tags
More Debuggers packages
Extracts and displays stack frame and traceback…
permissive · top 1,000 on PyPI
debugpydebugpy is a Debug Adapter Protocol…
permissive · top 1,000 on PyPI
pylintPylint is a static code analyzer that checks…
copyleft · top 1,000 on PyPI
yamllintyamllint checks YAML files for syntax errors,…
copyleft · top 1,000 on PyPI
ipdbipdb is an IPython-enabled debugger that…
permissive · top 5,000 on PyPI
memrayMemray is a memory profiler for Python that…
permissive · top 5,000 on PyPI
pydevd-pycharmPyCharm's debugger backend for remote debugging…
permissive · top 15,000 on PyPI
doppler-envInjects Doppler secrets as environment…
permissive · top 15,000 on PyPI
pdb-attachAttaches a Python debugger (pdb) to…
permissive · top 15,000 on PyPI
spsdk-pyocdIntegrates PyOCD as a debugger probe interface…
permissive · top 15,000 on PyPI
web-pdbWeb-PDB provides a web browser interface for…
permissive · top 15,000 on PyPI
google-python-cloud-debuggerAttaches a snapshot debugger agent to Python…
permissive · top 15,000 on PyPI
pudbPuDB is a full-screen console-based visual…
permissive · top 5,000 on PyPI
mozdebugProvides utilities for launching and managing…
copyleft · top 15,000 on PyPI
PySnooperPySnooper is a decorator-based debugging tool…
permissive · top 15,000 on PyPI