It's now possible to express, through template properties, requirements that must be met before the template is executed. By default, the possibility to express a requirement on the context action is supported but any extension can provide its own requirements types. See Template Module for more details.