skillfed

ipdb

IPython-enabled pdb

ipdb v0.13.13 18.4M downloads/30d#1,085 on PyPI1,976
Permissive license BSD Active released

What it is and what it does

ipdb is a drop-in replacement for Python's built-in pdb debugger that layers IPython's interactive features on top of the standard debugging interface. It provides tab completion, syntax highlighting, and improved tracebacks while keeping the same function signatures and workflow developers already know from pdb.

You use it by importing ipdb and calling set_trace() at a breakpoint, or by wrapping code in launch_ipdb_on_exception() to catch exceptions interactively. Configuration can be set via environment variables, a .ipdb file, setup.cfg, or pyproject.toml to control how many lines of context are shown. The package also provides command-line entry points (ipdb and ipdb3) to debug scripts directly.

Use it for:

  • Debug Python scripts from the command line with enhanced introspection and tab completion instead of plain pdb.
  • Set conditional breakpoints that trigger only when a specific condition is true using the cond parameter.
  • Inspect code context with configurable line counts to see more or less surrounding code at each breakpoint.
  • Catch and debug exceptions interactively without stopping the entire application using launch_ipdb_on_exception().
  • Decorate functions to automatically launch the debugger if they raise an exception using the iex decorator.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

ipdb is an IPython-enabled debugger that replaces Python's standard pdb with tab completion, syntax highlighting, and better introspection while maintaining the same pdb interface.

Yes. ipdb is a low-friction, actively maintained tool that meaningfully improves the debugging experience by adding IPython's interactive features to pdb without changing the interface. No security vulnerabilities, permissive license, and broad Python version support make it a straightforward upgrade for any developer who debugs Python code.

Install

ipdb on PyPI

pip

pip install ipdb

uv

uv add ipdb

poetry

poetry add ipdb

Installing ipdb

Before you install

Low friction install with 5 runtime dependencies. Actively maintained as of 2026-02-27 with 1976 repository stars. No known security vulnerabilities.

License in practice

BSD permissive license allows use in most projects without significant restrictions.

Quickstart

import ipdb
ipdb.set_trace()
# or
ipdb.set_trace(context=5)
# or
from ipdb import launch_ipdb_on_exception
with launch_ipdb_on_exception():
    pass

Verify before relying

  • Whether the package's IPython dependency constraints (varying by Python version per changelog) are automatically resolved by pip or require manual specification.
  • Performance characteristics when debugging large codebases or long-running processes.

Package facts

License BSD (permissive)
Python support supports the current Python release (>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*)
Install friction low — pure-Python wheel
Runtime dependencies 5 — ipython, toml, decorator, pathlib, tomli
Maintenance actively maintained — 1,254 days since the last release
Last repo commit
First released
Downloads 18,366,954/month — #1,085 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: ipdb-0.13.13-py3-none-any.whl

Keywords: pdb, ipython

License :: OSI Approved :: BSD LicenseOperating System :: MacOS :: MacOS XOperating System :: Microsoft :: WindowsOperating System :: POSIX :: LinuxProgramming Language :: Python :: 2.7Programming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.4Programming Language :: Python :: 3.5Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Software Development :: Debuggers

Tags

ipython debuggerenhanced pdb debuggingpython debugger with syntax highlightinginteractive python debuggingpdb replacementtab completion debuggerpython breakpoint tool
debuggingrepldevelopment-tools

More Debuggers packages