// setup.go — CLI registration for `lem setup` commands. package lemcmd import ( "forge.lthn.ai/core/cli/pkg/cli" "forge.lthn.ai/lthn/lem/pkg/lem" ) func addSetupCommands(root *cli.Command) { setupGroup := cli.NewGroup("setup", "Setup commands", "Initialise LEM data and environment.") var dataCfg lem.SetupOpts dataCmd := cli.NewCommand("data", "Hydrate cold storage into DuckDB + InfluxDB", "", func(cmd *cli.Command, args []string) error { return lem.RunSetup(dataCfg) }, ) cli.StringFlag(dataCmd, &dataCfg.Root, "root", "", ".", "LEM repo root directory") cli.StringFlag(dataCmd, &dataCfg.DB, "db", "", "", "DuckDB path (defaults to LEM_DB env, then ./lem.duckdb)") cli.StringFlag(dataCmd, &dataCfg.Influx, "influx", "", "", "InfluxDB URL (default http://10.69.69.165:8181)") cli.StringFlag(dataCmd, &dataCfg.InfluxDB, "influx-db", "", "", "InfluxDB database (default training)") cli.BoolFlag(dataCmd, &dataCfg.SkipInflux, "skip-influx", "", false, "Skip InfluxDB backfill") setupGroup.AddCommand(dataCmd) root.AddCommand(setupGroup) }