cradle plugin framework