I think building it , will be better. Custom solution can have any memory you dream of integrations, it can recommend skills with some nesting or not the call can combine all instructions or not if you want or structure it in custom objects.
Also if you go custom it can be part of your release process. Usually i'm pro libraries, but in this case hard to imagine going with such tool. Connecting it properly to self learning loops might be a challenge too.