Agents are applications designed to securely collect specific metrics from the apps you want Smart Scaler to manage. They upload these metrics to the SaaS, receive recommended actions from RL inference, and make these recommendations available to the cluster. Additionally, they support the definition of scheduled events and integrate with your Git/Argo management to scale applications as needed in anticipation of planned events. The agents need to be informed about which applications to manage, where to find data for those applications, and the locations of the Git repositories for applying event scaling configuration changes. In the context of Smart Scaler, an application is a set of microservices that the user chooses to group together because they effectively have related scaling properties. For example, a Smart Scaler application could be delivered by the scalable replicas of a service on a single pod, a set of scalable microservice pods that together make up a single user visible service, or multiple sets of scalable microservice pods that each make up individual services. In all cases, they are grouped into an application because, when under load, they tend to scale up or down together. (Smart Scaler will identify the interdependencies between the microservices that make up the application, determine the appropriate scaling ratios between those services, and manage their scaling properties as load demands. The section describes the agent configuration to scale applications.)