package cmd import ( "fmt" "github.com/spf13/cobra" "go.uber.org/zap" "leafdev.top/leaf/rag/internal/providers" "os" "path/filepath" ) var logger *zap.Logger var config *providers.GlobalConfig func init() { config = providers.MustGet[providers.GlobalConfig]() logger = providers.MustGet[zap.Logger]() } var rootCmd = &cobra.Command{ Use: filepath.Base(os.Args[0]), } func Execute() { rootCmd.AddCommand(rpcCommand) rootCmd.AddCommand(workerCommand) rootCmd.AddCommand(scheduleCommand) rootCmd.AddCommand(httpCommand) if config.DebugMode.Enable { rootCmd.AddCommand(migrateCommand) rootCmd.AddCommand(dsnCommand) rootCmd.AddCommand(createGoMigrateCommand) rootCmd.AddCommand(genMigrateCommand) } if err := rootCmd.Execute(); err != nil { fmt.Println(err) os.Exit(1) } }