Hi Sly! Google brought me here and then I realized it was your site. Below is the jsom port of the custom action addition. Thanks for sharing
var ctx = new SP.ClientContext();
var site = ctx.get_site();
var actions = site.get_userCustomActions();
var newAction = actions.add();
newAction.set_location(‘ScriptLink’);
newAction.set_scriptSrc(‘~sitecollection/_catalogs/masterpage/s/init.js’);
newAction.set_sequence(10010);
newAction.set_title(‘init’);
newAction.set_description(‘init’);
newAction.update();
ctx.executeQueryAsync();
Regards
M.