Skip to content

Issue: Command Terminal Lacks Support for Persistent/Long-Running Processes #142

@sudo-eugene

Description

@sudo-eugene

The Command Terminal doesn't properly support long-running processes like npm run dev, docker-compose up, or tail -f. There's no clear way to terminate these processes, and their continuous output creates excessive noise in the message-style interface.

I checked the documentation at docs.runmaestro.ai and didn't find any guidance on running persistent processes in the Command Terminal, or how to terminate them.

Current Behavior

When running a persistent process like npm run dev:

  1. No obvious way to kill the process – Standard terminal conventions like Ctrl+C don't appear to work (or it's unclear if they do)
  2. Output treated as chat messages – Each output line or chunk appears as a new "message" in the terminal, creating visual clutter
  3. No process status indicator – There's no indication that a background process is still running
  4. Accumulating noise – File changes trigger rebuild output, and each rebuild adds more messages, making the terminal hard to follow

Example

> npm run dev

# Initial startup output appears as message 1
# File change triggers rebuild - new message 2  
# Another file change - new message 3
# ... eventually dozens of messages for a single dev session

Expected Behavior

For long-running processes, I would expect:

  1. Clear termination method – Either Ctrl+C in the terminal, a stop button, or a keyboard shortcut
  2. Streaming output in a single block – Continuous output should append to the same output area, not create new messages
  3. Process indicator – Visual indication that a process is running (and which one)
  4. Clean separation – Distinguish between "command executed" vs "process still running"

Questions / Clarification Needed

  • Is this a bug or intentional design? The message-style interface works great for discrete commands, but seems mismatched for persistent processes.
  • What's the intended way to kill a running process? If there is one, it's not discoverable.
  • Should persistent processes be run in the Command Terminal at all? Or is the expectation that users run these in an external terminal?

Workaround (Current)

Currently I'm unsure how to cleanly stop npm run dev without:

  • Closing and reopening the agent
  • Running the dev server in a separate terminal window outside Maestro

Impact

This affects common development workflows where you need:

  • Dev servers running (npm run dev, yarn start, python manage.py runserver)
  • File watchers (nodemon, cargo watch)
  • Log tailing (tail -f, docker logs -f)
  • Database CLIs with persistent connections

Metadata

Metadata

Assignees

Labels

bugSomething isn't workingenhancementNew feature or requestup nextScheduled as next major enhancement.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions