How can I start an IPython Kernel from a running plain Python interpreter?

Here is what i’d like to do: From a running python process, upgrade it to an IPython Jupyter kernel, which shares the local and global variables and can be accessed by other Jupyter clients.

I have found IPython.embed which upgrades the session (but does not give me a Kernel connection information afaics). I’ve also found ipykernel.ipkernel.IPythonKernel , which also appears to start an embedded ipython shell but also does not give me a jupyter kernel connection info.

Context: I want to do this from an external wrapper program which interacts with CPython via the python C api; this is why I can’t simply start an IPython kernel in the first place.

Hair extensions are a new trend that is getting popularity with time. You might have read articles where people share their experiences of how hair extensions ruined their hair. The hair extension procedures differ depending upon their techniques.