Problem
The CLI has no consistent, framework-level way to accept multiple values for a single flag. The command framework rejects a repeated flag (src/lib/command-framework/apify-command.ts), and there is no built-in comma-separated handling. This blocks flags that mirror API filters typed as string[], for example apify runs ls --status, where the API accepts several statuses.
Goal
Add a framework-wide, opt-in way to declare a flag as multi-value (in the spirit of enableJsonFlag), so commands accept several values consistently.
Convention to decide
Pick one, or support both as gh does:
- Comma-separated:
--status a,b
- Repeated flag:
--status a --status b
Notes
- Only a couple of flags need this today; the first consumer is
apify runs ls --status. The API also supports startedAfter and startedBefore, so runs ls could reach parity.
- Existing single-value flags must keep working unchanged.
Problem
The CLI has no consistent, framework-level way to accept multiple values for a single flag. The command framework rejects a repeated flag (
src/lib/command-framework/apify-command.ts), and there is no built-in comma-separated handling. This blocks flags that mirror API filters typed asstring[], for exampleapify runs ls --status, where the API accepts several statuses.Goal
Add a framework-wide, opt-in way to declare a flag as multi-value (in the spirit of
enableJsonFlag), so commands accept several values consistently.Convention to decide
Pick one, or support both as
ghdoes:--status a,b--status a --status bNotes
apify runs ls --status. The API also supportsstartedAfterandstartedBefore, soruns lscould reach parity.