Maybe the Segger forum would be a better place to ask what they typically do, and what is configurable, etc.
In most cases you don't have to hold the device in reset, but simply wrestle control from other code on the system. Most of the programming is done via code injected into RAM and having the processor execute that normally, accessing the peripherals/memory normally. The JTAG/SWD connectivity has rather limited control/scope, changing internal states, stopping, starting, halting things, and not creating/providing some entirely different execution model.
Having the debug pod able to reset/restart after programming is quite common.
You should however watch that many newer STM32 need a power cycle, not simply a reset pulse, to restart into a normal operational state after programming.
Tips, Buy me a coffee, or three.. PayPal Venmo (See Profile) Up vote any posts that you find helpful, it shows what's working..