From ea8b115fe08348aa79877a15cd6ae39596c8f023 Mon Sep 17 00:00:00 2001 From: Jye Cusch Date: Mon, 10 Nov 2025 15:00:22 +1100 Subject: [PATCH] fix(cli): provide instructions on how to create a team --- cli/pkg/app/team.go | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/cli/pkg/app/team.go b/cli/pkg/app/team.go index 5ff19bc..f774099 100644 --- a/cli/pkg/app/team.go +++ b/cli/pkg/app/team.go @@ -4,10 +4,12 @@ import ( "errors" "fmt" "sort" + "strings" "github.com/charmbracelet/huh" "github.com/charmbracelet/lipgloss" "github.com/nitrictech/suga/cli/internal/api" + "github.com/nitrictech/suga/cli/internal/config" "github.com/nitrictech/suga/cli/internal/style" "github.com/nitrictech/suga/cli/internal/style/colors" "github.com/nitrictech/suga/cli/internal/style/icons" @@ -19,6 +21,7 @@ import ( ) type TeamApp struct { + config *config.Config apiClient *api.SugaApiClient // auth uses WorkOSAuth directly because team switching requires // WorkOS-specific organization ID during token refresh @@ -27,6 +30,7 @@ type TeamApp struct { } func NewTeamApp(injector do.Injector) (*TeamApp, error) { + config := do.MustInvoke[*config.Config](injector) apiClient, err := api.NewSugaApiClient(injector) if err != nil { return nil, fmt.Errorf("failed to create API client: %w", err) @@ -38,6 +42,7 @@ func NewTeamApp(injector do.Injector) (*TeamApp, error) { styles := tui.NewAppStyles() return &TeamApp{ + config: config, apiClient: apiClient, auth: auth, styles: styles, @@ -56,7 +61,11 @@ func (t *TeamApp) SwitchTeam(teamSlug string) error { } if len(allTeams) == 0 { - fmt.Println("No teams found. Create a team first to continue.") + url := "the Suga dashboard" + if t.config != nil && strings.TrimSpace(t.config.Url) != "" { + url = t.config.Url + } + fmt.Printf("No teams found. Navigate to %s in your browser to create your first team.\n", style.Teal(url)) return nil }