1. A computer implemented method, comprising: at a client device: storing a generic profile, the generic profile including a plurality of profile payloads and a plurality of profile predicates, wherein: each profile payload specifies different configuration settings for the client device, and each profile predicate defines at least one condition that, when satisfied based on changes in a system state of the client device, causes at least one of the plurality of profile payloads to be applied to the client device; identifying a change in the system state of the client device; transmitting, to a manager server, information associated with the change in the system state; and in response to transmitting: receiving, from the manager server, an update to the generic profile, wherein the update includes a customized profile payload and a customized profile predicate that are each customized based on the information about the change in the system state, dynamically determining the change in the system state satisfies conditions defined by the customized profile predicate, and automatically, and without user intervention: updating, via an executable included in the identified customized profile payload, a configuration of the client device based on the configuration settings specified by the customized profile payload, wherein the configuration settings are implicitly specified in the executable, and the updating is based on an Application Programming Interface (API) call including parameters for the system state.