What you see
Every command streams into a terminal card in the thought bubble: the$ prompt with the command, live stdout and stderr, the working directory, and the exit status. You watch it run, exactly as if you’d typed it.
How it behaves
- A real shell. Pipes, redirects, globs,
&&,cd, environment variables — everything works. - Never hangs the conversation. A command gets up to 60 seconds in the foreground; if it’s still going, it keeps running in the background and BOR checks back on it, showing you a countdown card while it waits.
- Dev servers stay up. Long-runners like
npm run devare started in the background — BOR grabs the startup output (including thelocalhostURL), leaves the server running, and can open it in the browser to verify. - Long output is paged. Output is captured and BOR pages through it rather than dumping walls of text at you.
Safety
Commands pass a validator before running: catastrophic patterns (rm -rf /, fork bombs, piping the network to a shell, writing to raw disks) and commands that would kill BOR itself are refused outright. Everything that runs is recorded in the audit log.
What to say
- “Install and run my project.”
- “Run the tests and fix whatever fails.”
- “Convert every PNG in this folder to WebP.”
- “What’s using port 3000? Kill it.”
- “Set up a Python virtualenv and install the requirements.”