There is no APIs for loading or unloading addons in game yet, but I am wondering if that something to be eventually implemented. On that track, we can check if an addon exists using _G or Inspect.Addon.List.
A few answers here:For quite some time now I've wanted to rig things up so the addon manager is usable without logging out. It was originally designed to work this way, I just haven't had time to implement it. However, changing addons will result in a reloadui.Loading extra addons at runtime isn't too conceptually difficult, and will probably show up eventually, along with the hooks needed to make an "addon manager addon". Likely it'll also be associated with features that give addons a bit more control over their environment, possibly (no guarantees, as always) things like "load this file out of my addon directory". Which should make database addons much more efficient and easier to design.Unloading addons at runtime is a royal knot. This will be an addon-by-addon thing - if an author wants to write that feature and provide buttons to use it, they're welcome to, but we won't be providing much assistance.