# Running a session

Start an agent on a task, watch it work, steer it, and review what it changed — all from the project workspace.

Canonical page: https://app.teachervoiceai.com/docs/guides/running-a-session

A **session** is one agent run in its own disposable sandbox. You describe a
task, the agent works on a private branch, and you keep the result through
review. This is the loop you'll use every day.

## Start a session

### Describe the task

Open a project and use the composer on the project home to describe what you
want — the same way you'd brief a teammate. Be specific about the goal and any
constraints; you can keep talking to the agent once it starts.

Press send and Machine boots a fresh sandbox for this session. The first boot
takes a few seconds; you'll land in the session view as soon as it's running.

### Pick a model (optional)

The model selector in the session header lets you choose which Claude model runs
the agent — a faster one for quick edits, a more capable one for harder work.
The default is a sensible balance; switch any time.

## Work with the agent

The session view is a conversation. The agent narrates what it's doing, and you
can **reply at any point** — answer a question, redirect it, add detail, or tell
it to try something else. You don't have to wait for it to finish.

Alongside the conversation you have:

- **Files** — browse the sandbox's working copy as the agent edits it.
- **Terminal** — see the commands it runs and their output.
- **Diff** — review the exact changes it's proposing, file by file. A badge
  shows when there are pending changes to look at.

> **Info**
> The agent works in a **private, disposable copy** of your project on its own
> branch. Nothing touches your real project until you review and merge — so let
> it run, experiment, and even make mistakes safely.

## Steer the run

A few controls shape how the agent works:

- **Context** — add code context, knowledge files, or a system prompt for this
  session, so the agent has what it needs without you pasting it into chat.
- **Session settings** — choose which agents, skills, and tools are available
  for the run.

These live in the session's settings; set them up front for a big task, or
adjust mid-run.

## Keep, share, or revisit

When the agent finishes a piece of work it **opens a change request** — a summary
plus the exact diff. That's your review gate; see
[Reviewing changes](/docs/guides/reviewing-changes) to merge it.

From the session's actions you can also:

- **Pin** a session you'll come back to.
- **Rename** it so it's easy to find later.
- **Share** a read-only replay link so a teammate can see exactly what happened —
  no edits, no account juggling.
- **Export the transcript** to download the conversation and changes.

> **Warn**
> The sandbox is thrown away when the session stops or goes idle. Only work the
> agent **committed and pushed** to its branch survives — and only a **merged
> change request** makes it part of your project. If in doubt, merge.

---

**Next:** [Reviewing changes](/docs/guides/reviewing-changes) to land the work ·
[Sessions concept](/docs/concepts/sessions) for the model behind it.
