package cmd import ( "git.db.org.ai/dborg/internal/formatter" "git.db.org.ai/dborg/internal/models" "github.com/spf13/cobra" ) var breachforumCmd = &cobra.Command{ Use: "breachforum [search]", Aliases: []string{"brf"}, Short: "Search BreachForum data", Long: `Search breachdetect index for BreachForum messages and detections`, Args: argsOrStdin(1), RunE: runBreachForumSearch, } func init() { rootCmd.AddCommand(breachforumCmd) breachforumCmd.Flags().IntP("max_hits", "m", 10, "Maximum number of hits to return") } func runBreachForumSearch(cmd *cobra.Command, args []string) error { c, err := newUnauthenticatedClient() if err != nil { return err } maxHits, _ := cmd.Flags().GetInt("max_hits") return forEachQuery(args, func(query string) error { params := &models.BreachForumSearchParams{ Search: query, MaxHits: maxHits, } response, err := c.SearchBreachForum(params) if err != nil { return err } return formatter.FormatBreachForumResults(response, IsJSONOutput()) }) }