---
title: Sub-agents
description: The agent can split work across parallel workers, or send a job to the background and keep talking to you; each worker has its own live log.
---
# Sub-agents

For a big job the agent can **delegate**: hand parts of it to sub-agents that run at the same time, each with its own context and a smaller toolbox, and gather their reports.

You do not have to ask for this; the agent decides when it helps. You can also suggest it: "explore the three services in parallel and tell me how they talk to each other".

## Two ways

- **Batch** — several tasks run in parallel (up to 4 at a time); the parent waits and gets one consolidated report.
- **Background** — the parent gets the ids back at once and keeps working with you; when a worker finishes, its report lands in the parent's inbox and the parent picks it up on its next step.

## Profiles

A sub-agent runs one of the profiles: `explore` (read-only, fast), `plan`, `review` (runs tests, never edits), `build`, or `worker` (a scoped implementation task). A sub-agent cannot delegate further.

## What you see

`/agents` lists them; every worker has a live log (`~/lampson/.lampson/ws/<name>/.lampson/agents/<id>.log`), and the web UI shows them in the right panel with their steps as they happen. You can `steer` a running worker with a message or `stop` it — the agent has the same controls.

## Permissions

A sub-agent never asks you: it runs `strict` (risky → denied, and it says so in its report), or `yolo` if you started Lampson with `--yolo`. Reports are self-reports, so the parent is instructed to verify — read the file, run the test — before claiming success.
