There are a couple of issue: * The reactor is already running and kernel.client tries to start it. * The sync code in kernel.client has to be run in a different thread from the main reactor. When you use kernel.client in IPython, it actually starts the twisted reactor in a thread. The make the client work in the engine, we need to run the users code (where the client will be used) in a different thread from the reactor. * To do this, parts of the engine have to be made threadsafe. I haven't though about using the asyncclient though in the engine. It may work, but as you guess, there may be complications. Cheers, Brian On Fri, Apr 24, 2009 at 11:35 AM, Vishal Vatsa