This will allow more flexibility when using agents, especially agents other than ChatClient agents.
However, since AIAgent doesn't support the full AIContext as input, we may need to consider a cut down version of AIContextProviders, e.g. MessageProvider, which doesn't support providing tools and instructions.