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.