Skip to main content

QuickRun

Run detected scripts and ad-hoc commands in a managed QuickRun panel.

Updated
Reviewed

QuickRun

QuickRun is a collapsible panel at the bottom of the project sidebar, just below the worktree list. It's the fast way to fire off a terminal command or start a long-running process without setting up a full Recipe. The panel header reads "Run on {worktree-name}", reflecting whichever worktree is currently selected.

Running a Command

The input bar shows a $ prompt on the left. Type a command and press Enter to run it. The input clears, and the command is saved to your history.

While the suggestion dropdown is open, Arrow Down and Arrow Up move through suggestions, and Escape closes it.

Note
QuickRun needs a worktree selected. With no worktree active, the input is replaced by placeholder text asking you to pick one.

Output Location

A toggle button next to the input controls where the terminal panel appears:

  • Grid (default): opens in the main panel grid as an interactive terminal.
  • Dock: runs in the dock, the minimized strip for background terminals, as a background task.

The button's tooltip shows the current mode, so you always know where the next command will land.

Command Suggestions

Focusing the input, or typing into it, opens a suggestion dropdown with three kinds of entry:

  • Pinned commands: saved commands, shown with a green pin icon and a bold label. Hover to reveal the unpin button.
  • Detected scripts: commands pulled from package.json and similar files, shown with a terminal icon.
  • History: your last 10 commands, most recent first, with a clock icon. Duplicates are filtered out.

Filtering is plain substring matching as you type.

Pinning Commands

Hover over any suggestion and click the pin icon to save it. At pin time, the current auto-restart toggle state and output location are captured as the command's preferred settings.

Run a pinned command, and those saved preferences override the current toggle states. Both toggle buttons update to reflect the pinned command's settings.

Note
Running a pinned command can change the toggle states in the input bar. That's intentional. Each pinned command carries its own auto-restart and output location preferences.

Auto-Restart

The auto-restart toggle is the circular arrow button in the input bar. When it's on, it lights up in accent green with the tooltip "Auto-restart: On". The setting persists per-project, so you can leave it on for projects where you always want dev servers to come back after a crash.

If the toggle is on at the moment you launch a command, the spawned terminal restarts whenever its process exits. Here's the sequence:

  1. The process exits, and Daintree checks the exit code and panel state.
  2. An exponential backoff delay kicks in: 250ms to start, doubling each attempt (500ms, 1s, 2s, 4s), capped at 5 seconds.
  3. During the delay, a green spinner banner reading "Auto-restarting…" appears inside the terminal.
  4. Once the delay passes, the command restarts. The usual "Session exited" banner is suppressed.

If the process ran for more than 10 seconds before exiting, the backoff resets to zero. A stable run followed by a crash counts as a fresh event, not the continuation of a crash loop.

Tip
Auto-restart is built for dev servers and file watchers like npm run dev or npm run test:watch. Pressing Ctrl+C (exit code 130) won't trigger a restart, so stopping a process on purpose always works.
Note
If a process keeps crashing quickly, the backoff compounds up to the 5-second cap. Close or trash the terminal panel to stop the restart cycle for good.

Active Tasks

Above the input bar, a task list shows up to 5 QuickRun-spawned panels for the active worktree. Each row shows a status indicator, the command (truncated to 28 characters), and elapsed time for running processes.

  • Running: pulsing green dot. Hover for stop and focus actions.
  • Restarting: pulsing amber dot, shown during the auto-restart backoff delay.
  • Success: green dot. The row dismisses itself after 3 seconds.
  • Failed: red dot with a left border accent. Hover for restart (hidden when auto-restart is active), dismiss, and focus actions.

Click any row to focus that terminal panel. Past 5 tasks, a "+ N more" label appears below the list.