> ## Documentation Index
> Fetch the complete documentation index at: https://ai-development-environment.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Sessions

> Managed provider Sessions that run against a worktree.

<Frame>
  <img className="block dark:hidden" src="https://mintcdn.com/ai-development-environment/XmuMCFv09SOCZYoa/images/light/sessions.png?fit=max&auto=format&n=XmuMCFv09SOCZYoa&q=85&s=fa7103c4ae246aeb301d3e57e6e2e7bb" alt="Sessions page in light theme" width="3840" height="2160" data-path="images/light/sessions.png" />

  <img className="hidden dark:block" src="https://mintcdn.com/ai-development-environment/aldo79nFpNgOg3HT/images/dark/sessions.png?fit=max&auto=format&n=aldo79nFpNgOg3HT&q=85&s=5e1b508468b7dc898c7bb8a7088ff8b0" alt="Sessions page in dark theme" width="3840" height="2160" data-path="images/dark/sessions.png" />
</Frame>

The **Sessions** page at `/sessions` lists implementation runs. A Session drives an AI tool against one worktree with write access and no approval prompts. Managed Sessions join that worktree's durable FIFO Session lane before they start. It is the half of the pairing that changes code — the surveying half is a [Plan](/ai/plans).

<Warning>
  Sessions run without approval prompts and with unrestricted access. Point one at a worktree you are willing to have rewritten, not at your main checkout. Raising or removing the concurrency limit allows multiple Sessions to write to it at once.
</Warning>

## The worktree queue

An active managed Session no longer causes a second otherwise eligible Session to be refused. The new Session starts immediately when its lane has capacity or remains **Queued** with the phase **Waiting for worktree**.

* Sessions default to one active run per worktree.
* Workflow steps and GraphQL clients can set a limit from `1` through `32`, or `0` for unlimited concurrency.
* Plans use a separate lane, so they can survey while a Session runs unless an exclusive workflow reserves the whole worktree.
* A paused Session keeps its admission slot. A terminal Session releases it and promotes the next queued entry.

Starting a resumed follow-up from a **paused** Session cancels the parent and atomically transfers its admission slot to the child. This keeps newer queued Sessions from starting between the two.

## The run list

Rows are grouped by creation day, with queued and active runs pulled into a leading **Active** group.

| Column              | What it shows                                                                                                                   |
| ------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| ID                  | `#1234`, the Session's display number                                                                                           |
| Status              | **Queued**, **In progress**, **Paused**, **Completed**, **Cancelled**, or **Failed**, plus a phase badge when the phase differs |
| Repository / branch | Links to the worktree while it exists                                                                                           |
| Ticket              | Jira issue key, opening the ticket drawer in place                                                                              |
| Plan                | The source Plan this Session was played from, if any                                                                            |
| Prompt              | The initial prompt, clamped to two lines                                                                                        |
| Cost                | Estimated cost for the run                                                                                                      |
| Model / effort      | Tool icon, model name, effort icon, and start time                                                                              |
| Actions             | Archive or restore, delete                                                                                                      |

The **Plan** column is the one structural difference from the Plans list — it links back to the Plan that produced this Session, or shows the plain number when that Plan has since been deleted.

## Filtering

| Control | Options                                            |
| ------- | -------------------------------------------------- |
| Search  | Matches across the run's text                      |
| Archive | **Active**, **Archived**, **All**                  |
| Tool    | **All tools**, **Codex**, **Claude**, **OpenCode** |
| Origin  | **All origins**, **Managed**, **Imported**         |

Filter choices persist in a cookie scoped to Sessions, separately from the Plans list. The table loads 200 rows at a time and extends as you scroll, and an `agentRunsChanged` subscription keeps statuses and costs current without a reload.

<Note>
  **Imported** Sessions are ones the agent discovered on disk rather than started here. They cannot be paused, steered, or cancelled. If an imported Session is active in a worktree a managed Session already leases, its detail page carries an **Imported worktree conflict** warning — the app cannot apply concurrency control to a run it does not own.
</Note>

## Bulk edits

**Edit** adds checkboxes, a header select-all, and a per-day select-all, then archive, restore, and delete act on the whole selection at once.

<Warning>
  Deleting removes the AI tool's own native session history before the local record. This cannot be undone.
</Warning>

## Notes

* A Session started by playing a Plan carries that Plan's proposal as its context and stamps the Plan as run — a Plan can be played only once.
* Cancelling a Session releases its admission slot; the worktree is left in whatever state the run reached, and the Git checkpoints on the detail page show what changed.

## Related pages

<Columns cols={2}>
  <Card title="Session details" icon="terminal" href="/ai/session-detail">
    Live transcript, steering, questions, checkpoints, and cost.
  </Card>

  <Card title="New run" icon="plus" href="/ai/run-new">
    Pick a worktree, model, effort, and tools, then start.
  </Card>

  <Card title="Plans" icon="clipboard-list" href="/ai/plans">
    Read-only surveys that propose the work a Session carries out.
  </Card>

  <Card title="Worktrees" icon="git-branch" href="/worktrees/worktrees">
    The checkouts Sessions queue against and modify.
  </Card>
</Columns>
