We developed ALICE and AIML (https://en.wikipedia.org/wiki/Artificial_Intelligence_Markup...) as a way to program bots (some of my work included adding scripting and a learning mechanism), at the time it was open sourced but AOL literally threw it into it's AIM service at certain points. There were plenty of "connectors" for different services, but the real ironic bit was that there was a central Graphmaster class which was extremely memory intensive. This was all before AWS and Cloud.
I made a private fork of ALICE back in the day and maintained my own response ruleset to give it a bespoke personality. I extended the main ALICE codebase with a TCP-based API server, and wrote another service that connects ALICE to IRC channels. I also made a GTK-based UI for starting, stopping, reloading and monitoring ALICE and to ease writing rule files. This gave me an IRC buddy that joined me in chatrooms.
If I remember correctly, I also modified the Graphmaster to add support for rule priorities, so that I can better manage rules beyond the tree-based matching approach.
One of the first things people would do, upon discovering that she's a bot, is trying to break her responses.
All of this was for private use, nothing was open sourced. Unfortunately I think I forgot to copy it over from an old hard drive during a computer hardware migration, so it's gone now.
I remember Richard Wallace writing something along the lines of "if I were to build an artificial intelligence, I wouldn't use flesh and bones, that's just a bad choice" (not a verbatim quote) in defense of people accusing AIML for being a too simple/dumb of an approach, with those people favoring more complex approaches. In the age of LLM, that statement aged both well and badly.
AIML was great. I once took a stab[1] at creating an AI Paul Graham using AIML. It more more of an amusement than anything serious, but still, messing around with AIML was cool.