while not ideal, you can set breakpoints this way as well at the start of your main script:

import debugger
debugger.debugger.set_break(filename, lineno)
debugger.debugger.set_break(filename, lineno2)

and so on.

There is probably a way using objc to query all open editor files for breakpoints. An almost worked through way this would work: cycle through editor tabs


getting the filepath from .filePath()
checking for .editorView(), then

bps=tab.editorView().breakPoints() lines=[1+i for i,entry in enumerate(list(bps)) if entry['active'] ]

then add breakpoints as described above. This must happen after script is run, so either we pack this code into a import filebreaks, or else we can hijack pythonista_preflight the way dgelessus does in his pythonista_startup to disable global clearing.