For a bare command with no options, i.e. scriptcs, the presence of a script name determines whether to enter the REPL (with the -repl option forcing exit to REPL even when there is a script name).
However, as soon as any other option is provided, e.g. -modules "mono" or -debug, the -repl option must be provided otherwise invalid usage is assumed and the usage is shown in the console. IMO this is nasty UX. It bites me every single time I try to run the REPL with the mono engine 😫.