| Trait | Description | 
|---|---|
| AsyncController | @author Jeff Brown | 
| Controller | Classes that implement the Controller trait are automatically treated as web controllers in a Grails application | 
| DomainClass | A trait implemented by all domain classes | 
| Interceptor | An interceptor can be used to intercept requests to controllers and URIs | 
| Service | A trait implemented by all services | 
| TagLibrary | A trait that makes a class into a GSP tag library | 
| Annotation Type | Description | 
|---|---|
| ApiDelegate | Similar to Groovy's @Delegate AST transform but instead assumes the first argument to every method is 'this'. | 
| Artefact | Used to define the artefact type for classes declared outside of Grails' usual conventions. | 
| Enhanced | An annotation for classes that are compile-time enhanced. | 
| Enhances | Can be applied to any Trait to indicate to Grails that the trait should be automatically added to the given artefact types |