Is your feature request related to a problem?
The tool is currently coupled to a single AI provider (e.g., OpenAI). Users may have access to or prefer other models, such as Google Gemini or Anthropic Claude, for reasons of cost, performance, or availability.
Describe the solution you'd like
Refactor the LLM interaction layer to support multiple providers. This would likely involve:
- Creating a generic
LLMProvider interface or base class.
- Implementing specific provider classes (e.g.,
OpenAIProvider, GeminiProvider) that adhere to the interface.
- Allowing the user to select the provider and model via the command line or a configuration file.
This would make the tool more flexible and accessible to a wider range of users.
Describe alternatives you've considered
- Sticking with a single provider (limits user choice).
- Creating separate versions of the tool for each provider (difficult to maintain).
Additional context
This is from the New Ideas Backlog.
Is your feature request related to a problem?
The tool is currently coupled to a single AI provider (e.g., OpenAI). Users may have access to or prefer other models, such as Google Gemini or Anthropic Claude, for reasons of cost, performance, or availability.
Describe the solution you'd like
Refactor the LLM interaction layer to support multiple providers. This would likely involve:
LLMProviderinterface or base class.OpenAIProvider,GeminiProvider) that adhere to the interface.This would make the tool more flexible and accessible to a wider range of users.
Describe alternatives you've considered
Additional context
This is from the New Ideas Backlog.