summaryrefslogtreecommitdiffhomepage
path: root/packages/tui/internal/app
diff options
context:
space:
mode:
authorDax Raad <[email protected]>2025-06-05 14:59:07 -0400
committerDax Raad <[email protected]>2025-06-05 14:59:16 -0400
commitdb2bb32bcf0c3fdc8ede5530946e85a852448679 (patch)
tree31f81b89cd8ed7b642a09e25fcb0a2a4b1c0e6bb /packages/tui/internal/app
parent1384a5e3e69522001571980f147a5aa0d985f895 (diff)
downloadopencode-db2bb32bcf0c3fdc8ede5530946e85a852448679.tar.gz
opencode-db2bb32bcf0c3fdc8ede5530946e85a852448679.zip
integrate with models.dev
Diffstat (limited to 'packages/tui/internal/app')
-rw-r--r--packages/tui/internal/app/app.go28
1 files changed, 14 insertions, 14 deletions
diff --git a/packages/tui/internal/app/app.go b/packages/tui/internal/app/app.go
index d4b59c0b9..9ce5c2a66 100644
--- a/packages/tui/internal/app/app.go
+++ b/packages/tui/internal/app/app.go
@@ -43,18 +43,24 @@ func New(ctx context.Context, httpClient *client.ClientWithResponses) (*App, err
appInfoResponse, _ := httpClient.PostAppInfoWithResponse(ctx)
appInfo := appInfoResponse.JSON200
- providersResponse, _ := httpClient.PostProviderListWithResponse(ctx)
+ providersResponse, err := httpClient.PostProviderListWithResponse(ctx)
+ if err != nil {
+ return nil, err
+ }
providers := []client.ProviderInfo{}
var defaultProvider *client.ProviderInfo
var defaultModel *client.ProviderModel
- for _, provider := range *providersResponse.JSON200 {
- if provider.Id == "anthropic" {
- defaultProvider = &provider
-
- for _, model := range provider.Models {
- if model.Id == "claude-sonnet-4-20250514" {
+ for i, provider := range providersResponse.JSON200.Providers {
+ if i == 0 || provider.Id == "anthropic" {
+ defaultProvider = &providersResponse.JSON200.Providers[i]
+ if match, ok := providersResponse.JSON200.Default[provider.Id]; ok {
+ model := defaultProvider.Models[match]
+ defaultModel = &model
+ } else {
+ for _, model := range provider.Models {
defaultModel = &model
+ break
}
}
}
@@ -63,12 +69,6 @@ func New(ctx context.Context, httpClient *client.ClientWithResponses) (*App, err
if len(providers) == 0 {
return nil, fmt.Errorf("no providers found")
}
- if defaultProvider == nil {
- defaultProvider = &providers[0]
- }
- if defaultModel == nil {
- defaultModel = &defaultProvider.Models[0]
- }
appConfigPath := filepath.Join(appInfo.Path.Config, "tui.toml")
appConfig, err := config.LoadConfig(appConfigPath)
@@ -296,7 +296,7 @@ func (a *App) ListProviders(ctx context.Context) ([]client.ProviderInfo, error)
}
providers := *resp.JSON200
- return providers, nil
+ return providers.Providers, nil
}
// IsFilepickerOpen returns whether the filepicker is currently open