Described embodiments enable generation of user interface (UI) extensions to a UI of a separate application. For example, a method may include receiving system notifications from the operating system indicating UI events associated with a UI state of the operating system. Responsive to a system notification for a target UI object or application, the method includes generating or updating a UI sub-state for the target application including target UI objects based on graphical properties of the target UI object as defined in the system notification. The method further includes generating a UI extension for a target UI object of the target application based on the graphical properties of the target UI object in the updated UI sub-state. The UI extension can be an overlay controlled by a separate process from the target application, and thus can be arbitrarily attached to the UI of the target application.