Environment
- mxcli:
v0.24.0 (2026-09-24T05:44:35Z), Windows (Git Bash)
- Mendix: 11.14.0, blank project from
mx create-project (MPR v2)
Summary
Two traps for tools and agents that generate -c batches (for example, one mxcli -c "describe …; describe …" call instead of 100 processes).
-c "" opens the REPL. When a generator produces an empty statement list, mxcli -p App.mpr -c "" prints the mdl> prompt and waits on stdin. From a non-interactive caller this is a hang (ours waited 10 minutes). With stdin at /dev/null it prints mdl> / Goodbye! and exits 0.
- A failing statement stops the batch, with a misleading error.
describe entity of a non-entity name ends the batch, and the error text talks about creating objects:
$ mxcli -p Repro.mpr -c "describe entity System.User; describe entity String; describe entity System.FileDocument"
create or modify persistent entity System.User (
...
Error: module name is required: objects must be created within a module (use ModuleName.ObjectName syntax)
System.FileDocument is never described.
Expected
-c "" (an empty or whitespace-only command) is a no-op or an error, never interactive. An explicit --repl or the absence of -c should be the only way to start the REPL.
- In a
-c batch, a failing read-only statement (describe, show) reports its error and the batch continues. Alternatively, a flag such as --continue-on-error does this.
- The error for an unqualified name in
describe says "String is not a qualified entity name" rather than talking about object creation.
Actual
- An empty
-c hangs a non-interactive caller.
- Later statements are skipped, with an error that doesn't point at the real cause.
Minor, but both cost real time when mxcli is driven by a generator.
Environment
v0.24.0 (2026-09-24T05:44:35Z), Windows (Git Bash)mx create-project(MPR v2)Summary
Two traps for tools and agents that generate
-cbatches (for example, onemxcli -c "describe …; describe …"call instead of 100 processes).-c ""opens the REPL. When a generator produces an empty statement list,mxcli -p App.mpr -c ""prints themdl>prompt and waits on stdin. From a non-interactive caller this is a hang (ours waited 10 minutes). Withstdinat/dev/nullit printsmdl>/Goodbye!and exits 0.describe entityof a non-entity name ends the batch, and the error text talks about creating objects:System.FileDocumentis never described.Expected
-c ""(an empty or whitespace-only command) is a no-op or an error, never interactive. An explicit--replor the absence of-cshould be the only way to start the REPL.-cbatch, a failing read-only statement (describe,show) reports its error and the batch continues. Alternatively, a flag such as--continue-on-errordoes this.describesays "Stringis not a qualified entity name" rather than talking about object creation.Actual
-changs a non-interactive caller.Minor, but both cost real time when mxcli is driven by a generator.