Show HN: Seapie – a Python debugger where breakpoints drop into a REPL

New Python ‘pie’ gives a live pause screen — old-timers say “we’ve had this for 20 years”

TLDR: Seapie is a Python tool that pauses code and gives a live command prompt so you can tweak and continue. The crowd split: veterans say IDEs and tools like pdb already do this, while others cheer a cleaner command‑line experience and point to IPython, pudb, and Jupyter as alternative flavors.

Show HN’s newest treat, Seapie, promises a sweeter debug: when your program pauses, you get a live command prompt to poke, change, and step forward — all inside the same window. Fans called it “how breakpoints should feel,” but the comments quickly turned into a potluck of opinions. Veterans flexed: one dev said they’ve had this in their editor (an all‑in‑one coding app, or “IDE”) for 20 years, living in the debugger like a pro gamer. Another chimed in that Python’s built‑in tool, pdb, already does most of this. Cue the “new pie vs old pie” bake‑off.

Then came the remix recipes. One commenter said you can make Python’s pause open IPython with your favorite key shortcuts (hello, vim fans). Another asked how it stacks up against pudb, the popular text‑mode debugger that already drops you into different shells. And a wildcard entry landed: “I do this by launching a local Jupyter notebook on the spot,” linking to extipy. Drama level: medium‑spicy. The fight wasn’t about whether Seapie works — it’s whether it’s fresh. Seapie’s name (“Scope Escaping Arbitrary Python Injection Executor”) sparked pie puns, while skeptics rolled their eyes: “reinventing the wheel” vs “finally a friendlier command‑line version.” The vibe: IDE loyalists vs terminal tinkerers, each claiming their slice.

Key Points

  • Seapie opens a live Python REPL at breakpoint(), allowing direct inspection and modification of program state.
  • Built-in !commands provide help, source location, traceback, frame navigation, expression watch, stepping, and event/target control.
  • Execution can be stepped, jumped, or resumed from within the interpreter; help is accessible via !help and help_dump.txt.
  • Installation uses pip; packaging and publishing instructions involve building wheels and using Twine.
  • Known limitations include singleton threading and lack of remote debugging (potential future support with Python 3.14).

Hottest takes

"The REPL at breakpoints is already integrated into my IDEs ... for the last 20 years" — malux85
"This is largely what `pdb` does already, no?" — willquack
"I have a version of this, but it’s “open a Jupyter Notebook here”" — meken
Made with <3 by @siedrix and @shesho from CDMX. Powered by Forge&Hive.