Thanks, this looks great. I've been playing with Huggingface's Smolagents, which is fun to tinker with and relatively easy to read through. But it is so tightly coupled to its two agent implementations - ToolAgent and CodeAgent - that it's not trivial at all to add your own state transformations.
This framework looks really well designed, I'm going to take it for a spin.
The one thing I wish was better developed is persistence and streaming - they give sample code to stream, but it’s essentially a complete implementation of streaming that every client needs to implement.
I’m building a non trivial AI app and the validation and dependency injection is such a great addition compared to using the LLM libraries directly.
[0] https://ai.pydantic.dev/