pydevd(1)

πŸ’– pydevd β€” bestie's guide to the pydevd debugger launcher πŸ’…

okay so first of all, hi. you're looking at pydevd, section 1 of the manual, and yes this is a Unix manual page but we're gonna make it make sense together. grab a strawberry πŸ“, we're doing remote debugging.


✨ NAME ✨

pydevd β€” the script that starts up the pydevd debugger, periodt. that's it, that's the vibe. πŸ¦‹


✨ SYNOPSIS ✨

pydevd --port N [--client hostname | --server] [option ...] --file executable

like literally that's the whole shape of it. port, then connect-or-listen energy, then your options, then the file at the very end. the end. no notes. πŸ‘‘


✨ DESCRIPTION ✨

so basically pydevd runs the pydevd debugger on top of another Python script β€” like, it wraps around your script and leaves it sitting there all ready to be attached to for remote debugging. that's the whole girlboss move. πŸŽ€

who's using this in the wild? literally everyone you'd expect. an IDE connecting in, things like PyDev or PyCharm. or it gets called from debugpy, which is the debugging adapter doing the work behind Spyder (by way of IPython), VSCode Python, and Visual Studio Python. so yeah, main character energy across the entire toolchain. 🌈


✨ OPTIONS ✨

no skipping, we're going through every single one because you deserve the full picture bestie. 🫢

  • --port N β€” the port to connect to (when you're the client) or listen on (when you're the server). pick your lane. πŸ”₯
  • --client hostname β€” the hostname you're connecting out to.
  • --server β€” run it in server mode instead.
  • --file executable β€” the script you're actually running. ⚠️ this one has to be last, like literally the final option, no takebacks. πŸ™ˆ
  • --ppid PPID β€” says which PPID to attach to.
  • --vm_type TYPE β€” either 'python' or 'jython'. the default is 'python', so if you say nothing you get python. ✨
  • --access-token TOKEN β€” the access token that gets you into the debug server.
  • --client-access-token TOKEN β€” the access token for the client side (which is usually your IDE, slay).
  • --DEBUG_RECORD_SOCKET_READS β€” logs the debugger's socket reads. yes it's shouty-caps, it said what it said.
  • --multiproc β€” reuses the connection. this is the one PyCharm uses. πŸ’…
  • --multiprocess β€” makes a brand new connection. this is the one PyDev uses. (yes they differ by three letters and do different things, we don't make the rules 😭)
  • --save-signatures β€” sends signature call tracewait.
  • --save-threading β€” uses the threading analyser.
  • --save-asyncio β€” uses the asyncio analyser.
  • --print-in-debugger-startup β€” prints debugger startup, with pid, over on stderr.
  • --cmd-line β€” waits for commands.
  • --module β€” set this if the file you passed is actually a module.
  • --skip-notify-stdin β€” no notification when readline() gets called.
  • --qt-support=<mode> β€” and <mode> is one of 'auto', 'none', 'pyqt5', 'pyqt4', 'pyside' or 'pyside2'. six whole options in a trench coat, iconic. 🌸
  • --json-dap β€” uses the debugpy protocol: one single JSON message in every read.
  • --json-dap-http β€” uses the DAP protocol: JSON messages over HTTP protocol.
  • --protocol-quoted-line β€” uses a custom protocol with quoted lines.
  • --protocol-http β€” uses a custom protocol with HTTP.

✨ AUTHOR ✨

pydevd was written by Fabio Zadrozny <fabiofz@gmail.com>. 🫢

and this manual page? originally written by William Grzybowski <william@grzy.org> for the Debian project β€” though fr fr anyone else is free to use it too β€” and then updated by Julian Gilbey <jdg@debian.org>. two legends, one page. πŸ‘‘


and that's the whole page bestie!! 🌟 this was pydevd-3.5.0+ds, dated 04 May 2026, and we ate. now go attach that debugger, you've got this. πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from