Output and Display

Your output is captured with full color support, clickable URLs, and real-time stats, all in a scrollable, searchable buffer.

Output Buffer

Command Book captures all output from your commands in a configurable ring buffer.

Buffer Size by Edition

Edition Default Options
Personal 25,000 lines 10K or 25k
Full 100,000 lines 10K, 25k, 50K, 100K, or 500K

The full edition lets you configure the buffer size in Settings → General. Larger buffers use more memory. With multiple active processes, expect ~100-300 MB total memory usage depending on your buffer size settings.

The buffer is what you scroll through in the window, and it lives in memory. Output is also saved to disk, which is what survives a restart — see Output History below.

Output History

Command Book saves the output of every command it runs to disk, so it outlives the process that printed it — and the app that ran it.

You read saved output from your terminal, with commandbook logs <slug>. That works for a command still running, one that finished an hour ago, and one you ran here in the app. The window itself shows the live buffer described above; the saved history is what the CLI reads.

commandbook logs talk-python-dev              # the last 200 lines
commandbook logs talk-python-dev --follow     # stream it as it arrives
commandbook logs talk-python-dev --grep ERROR # just the bad news
commandbook logs talk-python-dev --run 2      # the run before this one

By default Command Book keeps the last 5 runs of each command. That count is configurable in Settings → General → Output History (anywhere from 1 to 20 runs), and the same section has the switch that turns saving off entirely. With it off, output lives only in the in-memory buffer above and is gone when the process is removed. Each individual run is also capped at 100,000 lines on a rolling basis — that ceiling is fixed, not a setting.

It works in the other direction too: a command started from the terminal with commandbook start <slug> appears in the app on its usual row, with its output streaming into the detail pane.

See the CLI documentation for the full set of options.

Searching Output

Press ⌘F to open the search bar for the selected command's output.

Search Features

  • Case-sensitive or case-insensitive matching
  • Regular expression support for advanced pattern matching
  • Navigate matches with ⌘G (next) and ⌘⇧G (previous)
  • Match count display showing current position

Search is per-command, not across all commands simultaneously.

Copying and Clearing

Copying Text

  • Select and copy: Select text with your mouse, then ⌘C
  • Right-click menu: Right-click and choose Copy
  • Copy all: Right-click and select Copy All to copy the entire output buffer

Clearing Output

Right-click in the output area and select Clear. This clears the visible buffer but doesn't affect the running process.

ANSI Color Support

Command Book supports full ANSI color output:

  • Standard 8 colors (black, red, green, yellow, blue, magenta, cyan, white)
  • Bright 8 colors (bright variants of the standard colors)
  • 256-color palette (extended terminal colors)
  • 24-bit true color (16 million colors)
  • Text styling: bold, dim, italic, underline, strikethrough

Forcing Color Output

Some command-line tools disable colors when they detect they're not running in a real terminal. Command Book sets these environment variables to encourage color output:

  • FORCE_COLOR=1
  • CLICOLOR_FORCE=1
  • COLORTERM=truecolor

Not all tools respect these. Check your tool's documentation for forcing color output.

Full-Screen Programs

Some programs use cursor positioning for full-screen interfaces (like htop, vim, or less). These work best in a terminal, while Command Book excels at streaming output, server logs, build output, and process monitoring.

These more advanced apps can be managed in Command Book and run via "Run in [Default Terminal]". It may also be better to just run them in your regular, full terminal.

Clickable URLs

Command Book automatically detects URLs in output:

  • Supported protocols: http://, https://, file://
  • Click to open: URLs open in your default browser
  • Visual indicator: Hover shows a pointing hand cursor

URL Collection

Detected URLs are also collected at the top of each command window (up to 5 most recent). This lets you easily access them even after the output containing the URLs has scrolled past.

For applications with significant output, this is a major convienence. Often times, we need to launch a browser to connect to this app. But the port/link has scroll 1,000 lines up. Ugh. That's why Command Book captures and shows these links in a dedicated UI at the top of the command output window. Connecting to your app is always in reach.

Memory Usage Display

Each command displays real-time statistics at the bottom of the command window:

  • Memory usage: Updated every 2 seconds via proc_pid_rusage
  • Duration: How long the process has been running (formatted as H:MM:SS or MM:SS)
  • Start time: When the process started

The sidebar header also shows total memory usage across all running processes ("X proc, Y GB").

Note: If memory shows 0 bytes, the first reading may not have occurred yet (updates every 2 seconds). If it persists, the process may have already exited.