---
title: Your first session
description: How a Lampson session reads — the steps, the diffs, the commands that start with a slash, and running things yourself with an exclamation mark.
---
# Your first session

## What you see

Every tool call is one line: what it did, and the outcome.

```
✓ grep "password" src/                 3 files
✓ read src/components/LoginForm.tsx    88 lines
✓ edit src/components/LoginForm.tsx    +6 −1
? bash npm test                        allow? ❯ yes  no
✓ bash npm test                        14 passed
─── 5 steps · 12k tokens · 38s
```

- `✓` the step ran; `✗` it failed (the error goes back to the model, which usually fixes it).
- `edit` and `write` print a small diff — red lines removed, green lines added, with line numbers.
- Long outputs are folded to 15 lines. `/out` shows the last one in full, `/out 2` the one before, `/verbose` shows everything from now on.
- While the model thinks or a slow command runs, a status line shows what is happening and how long it has been.

## Slash commands

Type `/` and a menu appears with every command, most recent first; keep typing to filter, `Tab` completes the command and its arguments. The ones you will use most:

| command | what it does |
|---|---|
| `/model` | change provider, model or key — arrow keys, the model list comes from the API |
| `/agent plan` | switch profile — `plan` is read-only, `build` edits (default), `review` runs tests and never edits |
| `/ask` `/yolo` `/strict` | how much it asks — see [Permissions](/en/docs/permissions) |
| `/sessions` `/resume <id>` | previous conversations |
| `/files` | the project tree the agent sees |
| `/procs` `/logs <name>` `/stop <name>` | the servers it started |
| `/plugins on <name>` | turn a [plugin](/en/docs/plugins) on |
| `/memory` | the notes it keeps about this project |
| `/trace` | the readable log of this session |
| `/help` | everything else |

## Run something yourself: `!`

Start a line with `!` and it runs in a real terminal — prompts, passwords and interactive tools work — and the output lands in the agent's context, so it knows what you saw:

```
❯ !npm run dev
```

The agent will also suggest `!` when a command needs you (a login, an interactive installer).

## Multi-line messages and images

`Alt+Enter` inserts a new line. `/image path/to/screenshot.png` attaches a file; `/paste` attaches whatever image is on the clipboard. They go with your next message (`📎1 ❯`). In the web UI just paste or drop the image into the box.

## Ending and coming back

`/exit` (or Ctrl-D). Servers the agent started stop with it. Next time, `lampson` starts a fresh session in the same project — its [memory](/en/docs/memory) carries over; `/resume` brings back a specific conversation.
