CLI vs Non-Interactive CLI
The following table details various common use cases and which mode of the Catalyst CLI is best suited to successfully complete them.
| Common Use Cases | Interactive CLI | Non-Interactive CLI |
|---|---|---|
| CI/CD pipelines | Bad fit. There's no one to answer "which project?" or "overwrite this file?", so the pipeline run just hangs waiting for input that never comes. | Good fit. Every answer comes from the options and defaults you supply; if something required is missing, it fails immediately with a clear message instead of hanging. |
| Local development / first-time project setup | Good fit. A person is at the terminal, so prompts and pick-lists guide you through choices you may not know yet (project, stack, framework). | Bad fit. Requires every value (project, org, stack, etc.) to be known and supplied up front, which defeats the point when you're still figuring things out. |
| Automation scripts / scheduled jobs | Bad fit. An unattended scheduled job will stall on the first prompt it hits, with no one to clear it. | Good fit. Runs start to finish without attendance, and destructive actions (like overwrite) stay safe by default unless explicitly flagged. |
| Exploratory work | Good fit. Pick-lists show you the available options (stacks, functions, versions) so you don't need to know the exact name or ID. | Bad fit. List choices must be supplied directly by name, value, or position; an unrecognized value just errors out instead of showing you what's valid. |
| Remote systems with no active session (e.g., a CI server) | Bad fit. Assumes a live terminal or browser session with someone present to respond to prompts. | Good fit. Built for exactly this: no active login session needed, given the right options and token. |
| Manual, one-off debugging | Good fit. Confirmations ("are you sure?") and step-by-step prompts suit a human working through a problem interactively. | Bad fit. Its safety rails exist for unattended runs, so forcing every value up front adds friction with no benefit when you're already there to answer prompts yourself. |
| Agent / programmatic invocation | Bad fit. An agent isn't a person choosing from a list; it has no way to answer a prompt, so the command just sits waiting on input that will never arrive. | Good fit. Removes every point where a command would otherwise stall waiting on a human, which is what makes it safely callable from code or by an agent. |
Last Updated 2026-09-02 16:47:14 +0530 IST
Yes
No
Send your feedback to us
Skip
Submit