From 1bfc793aafd53efd316006bae59f1e22838a094e Mon Sep 17 00:00:00 2001 From: Jason Lernerman Date: Thu, 15 Oct 2026 18:46:58 -0400 Subject: [PATCH] simulate: run text mode when no subcommand is given #968 made a bare `lk agent simulate` print help and exit 0. The dashboard's empty state, its Add to CI workflow, and scripts written before the text subcommand existed all run the bare form, so they silently did nothing (and passed in CI). A bare simulate runs text mode again; text and audio stay as explicit subcommands. --- cmd/lk/simulate.go | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/cmd/lk/simulate.go b/cmd/lk/simulate.go index 37e52cbea..0166b7a6d 100644 --- a/cmd/lk/simulate.go +++ b/cmd/lk/simulate.go @@ -67,8 +67,16 @@ var simulateCommand = &cli.Command{ // Hide the implicit `help` subcommand so shell completion falls back to // native filename completion for the entrypoint arg (see startCommand). HideHelpCommand: true, + ArgsUsage: "[entrypoint]", + // A bare `lk agent simulate` is text mode: the dashboard, CI templates and + // scripts written before the text subcommand existed all invoke it this way. + // The project loads here rather than in a Before, which subcommands would + // inherit (see loadSimulateProject). Action: func(ctx context.Context, cmd *cli.Command) error { - return cli.ShowSubcommandHelp(cmd) + if _, err := loadSimulateProject(ctx, cmd); err != nil { + return err + } + return runSimulate(ctx, cmd, livekit.SimulationMode_SIMULATION_MODE_TEXT) }, Commands: []*cli.Command{ simulateTextCommand, simulateAudioCommand, simulateListCommand, simulateViewCommand, simulateExportCommand,