# Working with agents

Side chats, goals, the Running view, chat details, background work, and the command center.

Canonical page: https://themachine.myapps.ai/docs/code/working-with-agents

## Side chats (/btw)

Sometimes you have a quick question while an agent is busy, and you don't
want it in the main conversation. Type:

```
/btw what does the retry helper in api/client.ts do?
```

A **Side chat** panel opens next to the chat. The side chat can read the
project but not change it, and nothing you ask there is added to the main
chat. `/side` does the same thing.

![A side chat next to the main chat, answering where the opening hours live, with Send to main, Dismiss, and Open as chat](/images/docs/code/side-chat.webp)

In the panel:

| Button | What it does |
|---|---|
| **Ask follow-up** | Asks another question in the same side chat. |
| **Send to main** | Sends the side chat's answer to the main agent. |
| **Open as chat** | Turns the side chat into a full chat of its own. |
| **New side chat** | Starts over with a fresh side chat. |
| **Dismiss** | Closes the panel. |

## Goals (/goal)

A goal keeps the agent working until something is true, instead of stopping
after one turn.

```
/goal --max 3 all tests in packages/billing pass
```

The agent works, checks whether the goal is met, and keeps going if it isn't.
`--max` limits how many rounds it gets. A goal chip shows above the message
box while it's active; open it and choose **Stop goal** to end it, or type
`/goal stop`.

Goals end if Machine Code restarts.

## The Running view

Agents start things that keep going in the background: subagents, background
shells, dev servers, goals, pull-request watches. The **Running** view shows
all of them across every project.

Open it from **Running** in the sidebar, or press **Ctrl+Shift+U**. The
sidebar row shows how many things are running and how many need you.

Items are grouped by workspace. Under each one you see its chats, with the
model and how long each has been running, and under a chat whatever it
started. A few seconds after something finishes, it folds into a line like
*1 finished*; click **Clear** to remove it.

![The Running view with two chats working across the bakery site's workspaces, each showing its model and time](/images/docs/code/running-view.webp)

For each item you can:

- **Open** it to watch it work live: replies, thinking, tool calls, file
  edits, and shell output as they happen.
- **Stop** it.
- **Copy id**, for the [command line](/docs/code/cli).

Inside a chat, a card appears where background work started. It shrinks to
*finished in …* when the work is done. A *running* tray above the message box
lists what this chat still has going.

## Chat details

Each chat has a details rail on the right. Toggle it with its header button
or **Ctrl+Alt+B**.

| Card | What it shows |
|---|---|
| **Environment** | Where the chat runs: this checkout, a worktree, or another computer. |
| **Context** | How much of the model's context window the chat is using. |
| **Connectors** | The Machine connectors the agent can use. |
| **Outputs** | Files the chat created or changed. |
| **Changes** | The diff so far, with **Review with Machine** and **Create PR**. |
| **Background tasks** | What the chat started in the background. Expand one to see its status, live time, and latest step. |

## Web search

Every agent can search the web and read pages, whichever model it uses.
Searches go through Firecrawl. You get 1,000 free credits a month, with no
key needed.

To turn it off or add your own Firecrawl key for more, open **Settings ›
Providers › Web search**.

## The command center

Press **Ctrl+K** (**⌘K** on Mac) anywhere outside the code editor to open the
command center: jump to a project, a task, a file, or a setting, or run any
command by name. **Ctrl+P** jumps straight to searching files.

![The command center with workspace actions like New agent and Commit, general actions, and Machine Cloud commands](/images/docs/code/command-center.webp)

## Voice

Press **Ctrl+D** in the message box to dictate. Press it again to stop.
