Technical Specifications
Once the AsyncAdmin loader is installed in your game, you can modify its settings and add commands. The AsyncAdmin loader subsequently fetches a Custom Bridge. This is a module that I can modify without needing access to your studio. It's used for things like custom commands and features, and has the same access as AsyncAdminCore modules. The Custom Bridge then loads AsyncAdminCore, which includes a few default commands. AsyncAdminCore contains the primary script for AsyncAdmin, and it initiates AsyncAdmin in your game.
There are very few endpoints in which the client can instruct the server to execute the command, meaning AsyncAdmin is completely safe.
Here's a rundown of all endpoints AsyncAdmin uses (without custom bridges).
ServerEndpoint - Remote Function
(Client->Server) To check the clients rank.
(Client->Server) To execute a command.
(Server -> Client) To give clients access to the "DeInit" event (when AsyncAdmin is being unloaded).
ClientCommand - Remote Event
(Client -> Server) When a command needs to be executed on the client.
GUIPrompt - Remote Event
(Server -> Client) When the server needs to display a GUI / Alert on the client.