fix(tools): run synchronous session tools in a worker thread (#399)