Skip to content

Refactor: introduce provider/factory model for chat clients#210

Merged
kzu merged 1 commit intomainfrom
dev/ChatProvider
Jan 15, 2026
Merged

Refactor: introduce provider/factory model for chat clients#210
kzu merged 1 commit intomainfrom
dev/ChatProvider

Conversation

@kzu
Copy link
Copy Markdown
Member

@kzu kzu commented Jan 15, 2026

Adds extensible IChatClientProvider and IChatClientFactory abstractions to support multiple AI chat providers and custom registration. Refactors ConfigurableChatClient to use the new factory, decoupling provider logic and enabling DI-based extensibility. Includes built-in providers for OpenAI, Azure OpenAI, Azure AI Inference, and Grok, with extension methods for easy registration and configuration-driven resolution. Improves documentation and maintainability.

@kzu kzu added the enhancement New feature or request label Jan 15, 2026
@kzu kzu force-pushed the dev/ChatProvider branch from faf21b7 to cf88e03 Compare January 15, 2026 22:59
@kzu kzu enabled auto-merge (rebase) January 15, 2026 22:59
@kzu
Copy link
Copy Markdown
Member Author

kzu commented Jan 15, 2026

33 passed 33 passed

🧪 Details on Ubuntu 24.04.3 LTS

from dotnet-retest v1.0.0 on .NET 10.0.2 with 💜 by @devlooped

Adds extensible IChatClientProvider and IChatClientFactory abstractions to support multiple AI chat providers and custom registration. Refactors ConfigurableChatClient to use the new factory, decoupling provider logic and enabling DI-based extensibility. Includes built-in providers for OpenAI, Azure OpenAI, Azure AI Inference, and Grok, with extension methods for easy registration and configuration-driven resolution. Improves documentation and maintainability.
@kzu kzu force-pushed the dev/ChatProvider branch from cf88e03 to c317812 Compare January 15, 2026 23:13
@kzu kzu merged commit 2c7b3a2 into main Jan 15, 2026
7 checks passed
@kzu kzu deleted the dev/ChatProvider branch January 15, 2026 23:23
@devlooped devlooped locked and limited conversation to collaborators Feb 15, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant