diff options
| author | Kujtim Hoxha <[email protected]> | 2025-05-01 14:17:33 +0200 |
|---|---|---|
| committer | adamdottv <[email protected]> | 2025-05-01 11:08:26 -0500 |
| commit | a61b2026eb97a1974a23aa3e5b154b1b0864edf3 (patch) | |
| tree | b767be32072e9cd3eca295d3f11d2fe0e33b9c39 /internal/config | |
| parent | 69ade34c2ccdadb44fdaac4434f2ec8a36e430a5 (diff) | |
| download | opencode-a61b2026eb97a1974a23aa3e5b154b1b0864edf3.tar.gz opencode-a61b2026eb97a1974a23aa3e5b154b1b0864edf3.zip | |
add xai support (#135)
Diffstat (limited to 'internal/config')
| -rw-r--r-- | internal/config/config.go | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/internal/config/config.go b/internal/config/config.go index 51ac0ddd8..c46f80f95 100644 --- a/internal/config/config.go +++ b/internal/config/config.go @@ -243,6 +243,13 @@ func setProviderDefaults() { if apiKey := os.Getenv("OPENROUTER_API_KEY"); apiKey != "" { viper.SetDefault("providers.openrouter.apiKey", apiKey) } + if apiKey := os.Getenv("XAI_API_KEY"); apiKey != "" { + viper.SetDefault("providers.xai.apiKey", apiKey) + } + if apiKey := os.Getenv("AZURE_OPENAI_ENDPOINT"); apiKey != "" { + // api-key may be empty when using Entra ID credentials – that's okay + viper.SetDefault("providers.azure.apiKey", os.Getenv("AZURE_OPENAI_API_KEY")) + } // Use this order to set the default models // 1. Anthropic @@ -293,6 +300,13 @@ func setProviderDefaults() { return } + if viper.Get("providers.xai.apiKey") != "" { + viper.SetDefault("agents.coder.model", models.XAIGrok3Beta) + viper.SetDefault("agents.task.model", models.XAIGrok3Beta) + viper.SetDefault("agents.title.model", models.XAiGrok3MiniFastBeta) + return + } + // AWS Bedrock configuration if hasAWSCredentials() { viper.SetDefault("agents.coder.model", models.BedrockClaude37Sonnet) @@ -302,8 +316,6 @@ func setProviderDefaults() { } if os.Getenv("AZURE_OPENAI_ENDPOINT") != "" { - // api-key may be empty when using Entra ID credentials – that's okay - viper.SetDefault("providers.azure.apiKey", os.Getenv("AZURE_OPENAI_API_KEY")) viper.SetDefault("agents.coder.model", models.AzureGPT41) viper.SetDefault("agents.task.model", models.AzureGPT41Mini) viper.SetDefault("agents.title.model", models.AzureGPT41Mini) |
