The dashboard and its keys
Run nsq with no arguments. It starts the daemon if it is not running and opens the dashboard:
- the sidebar on the left — your workspaces (the folders agents run in) and their agents, each with its status;
- the grid on the right — the agents of the selected workspace as live terminals, updating as they work. An agent that needs you shows the question on its tile.
Open any agent full screen with Enter (or a double-click): every key now goes to the agent, as if you had started it yourself. Ctrl] brings you back to the grid.
Quitting the dashboard (q) does not stop anything: the agents belong to the daemon and
keep running. Run nsq again to come back to them.
Keys
| Key | What it does |
|---|---|
| ↑ ↓ ← → or h j k l | Select an agent |
| Tab | Next agent, across all workspaces |
| Enter, double-click | Open the agent full screen; Ctrl] back to the grid |
| y / a / n | Answer the selected agent’s permission prompt: yes / always / no |
| s | Send a prompt to the selected agent |
| S | Send a prompt when its current turn is done |
| c | Start an agent: CLI, name, prompt, folder, worktree, OpenRouter, model, dangerous mode |
| m | Pick a model from OpenRouter’s catalogue |
| i | Interrupt the current turn |
| x · X | Stop the agent · remove it |
| r · R | Restart it (its session is resumed) · rename it |
| d | Dangerous mode on or off |
| v | Dictate into the agent — the text is pasted, never sent |
| [ ] | Previous / next page of tiles |
| b | Show or hide the sidebar |
| ? | Help |
| q | Quit the dashboard (agents keep running) |
The mouse works too: a click selects, a double-click opens, the wheel moves the selection. In a full-screen agent that asked for the mouse, clicks go to the agent.
Status at a glance
| Status | Meaning |
|---|---|
| working | a turn is running |
| needs you | the agent is waiting for you — a permission prompt, a question, a plan to approve — with its own text |
| finished | the turn ended; the answer is on screen |
| idle | at its prompt with nothing new |
| exited | the process is gone; restart it with r |
How nsq knows: Agents, CLIs and status.
Looks
Harness logos are drawn as real images in terminals that support inline graphics (kitty, iTerm2, sixel) and as small glyph badges elsewhere. Spinners and the “needs you” pulse animate only while the dashboard is in front, never while an agent is open full screen, and are off over SSH. To change any of this, see Configuration.
Answering without the dashboard
Everything above has a command too — nsq answer api-fix yes, nsq send api-fix "now the tests",
nsq interrupt api-fix, nsq attach api-fix (full screen in the current terminal,
Ctrl] to detach). See Commands.