Hi, I don't have any solution about that. However, We can use another callback mechanism. Why don't you try to plugplugInterface like below? 1. Remove your evalScripts 2nd argument(callback function). 2. Add below event listener and new callback function. //Javascript (HTML) csi.addEventListener("getCallback", getReturnValue); function getReturnValue(response) { // bypass for performance console.timeEnd("pollAi"); // performance measurement (NodeJs) console.log('response = ' + response.data); // other business logic AiSupport.inPoll = false; } 3. Replace last line(return result;) of your aiGetSelectionType function to below code. //Extendscript var xLib = new ExternalObject("lib:\PlugPlugExternalObject"); } catch (e) { alert(e); } var eventObj = new CSXSEvent(); eventObj.type = "getCallback"; eventObj.data = result; //result must be String if (app.activeDocument.selection.length>0){ eventObj.data = app.activeDocument.selection[0].reflect.properties.length.toString(); } xLib.unload(); eventObj.dispatch(); You can reference below project. https://github.com/ten-A/CreativeSuiteSDK_Experimentals/tree/master/net.sytes.chuwa.callbacktest
... View more