Question: I am a little bit confused, we call CDI bean to the beans which we inject them using `@Inject` annotation or the beans which we use `@Inject` inside them ?

Answer: 
`CDI bean` is a bean managed by `CDI container` (Weld for example).

* If it is `@injected` - it is bean
* If it is may `@injects` something - it is bean too.
CDI **does not introduce** a new bean type called a *CDI Bean* with its
own unique component model.

CDI **provides a set** of services that can be *consumed by managed beans and EJBs* that are defined by their existing component models.

So, **CDI is just a Bean** (EJB or Managed Bean) handling CDI lifecycle with scope for *Context* and other old feature *DI* .