> ## Documentation Index
> Fetch the complete documentation index at: https://continuum-three-olive.vercel.app/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Code

> The agentic-coding workbench — managed project sidebar, agent thread, and review panes.

Code is Continuum's primary surface. Everything else in the product exists to feed it or report on it: Usage tells you what your agents are burning, Settings tells them where to run. Code is where you actually work.

It is a three-pane workbench — a managed project sidebar on the left, the agent thread and composer in the center, and a tabbed review pane on the right.

<Note>
  The Code tab is not Mac-only. The same workbench ships in the Windows and Linux desktop apps and in the web app at [continuumcode.ai/app](https://continuumcode.ai/app) — they render the same code. This page describes the Mac app, which is the reference implementation; see [Desktop](/docs/surfaces/desktop) and [Web](/docs/surfaces/web) for what differs. On iPhone and Android, Code is a session list plus a workbench detail view rather than a three-pane layout — see [Mobile](/docs/surfaces/mobile).
</Note>

## Layout

```
┌─────────────┬──────────────────────┬─────────────┐
│  Sidebar    │  Thread + Composer   │  Review     │
│  (resizable)│  (flexible)          │  (resizable)│
└─────────────┴──────────────────────┴─────────────┘
```

The three columns are a custom stack with draggable resize handles rather than a split view, which would column-fold and hide chrome at narrow widths. Sidebar and review widths persist across launches. The sidebar clamps between 180 and 420 pt, the review pane between 280 and 900 pt (380 pt default), and the center thread never shrinks below 300 pt.

<Note>
  The review pane is **off by default**. Open it with **Cmd+B**, the right-edge gutter, or the toolbar toggle. When the window is too narrow to seat all three columns side by side, the review pane doesn't disappear — it floats as an overlay above the center thread, so it stays reachable at any window size. A spawn grid or a standalone document opened in the center takes the full width and keeps the review pane collapsed while it's foregrounded.
</Note>

## Sidebar

This is a **managed-only** sidebar: it shows the projects and sessions Continuum itself spawned. There is no "Active outside Continuum," "History," "Discover parallel sessions," or per-transcript "Recent" discovered-rows surface — those were removed when Code became an agentic-coding IDE.

From top to bottom the sidebar stacks:

<Steps>
  <Step title="Search">
    A `Search…` field filters across visible rows (repo names, session titles, and transcript-body matches). **Cmd+Shift+F** focuses it from anywhere.
  </Step>

  <Step title="Spawn">
    The **Spawn** row, shown when you enable it in Settings → Spawn. Clicking the row body opens your default grid of interactive agent CLI terminals; the trailing **+** opens the config tray to pick a tile count and agent mix; the hover gear jumps to Settings → Spawn. See [Spawn mode](#spawn-mode).
  </Step>

  <Step title="Spawns">
    Open spawn groups list here, above Projects, with a `4 Claude · 2 Codex`-style subtitle and a tile count. Click a group to bring its grid into the center pane. Right-click for **Rename…** or **Close spawn**. Groups are ephemeral — they die with the app.
  </Step>

  <Step title="Documents">
    Standalone Markdown and document files opened from disk. Only renders when at least one document is open.
  </Step>

  <Step title="Projects">
    Your managed repos, each expanding to its worktree (branch) rows. The header carries a filter funnel and an **Add project** menu.
  </Step>
</Steps>

### Project order

Projects use a **stable order**, not a most-recent-activity sort. The default is **oldest-first by first use** — the earliest session creation date in that repo — so starting a new session never floats its repo to the top, and a brand-new repo lands at the bottom.

Drag a project header to reorder; the order persists per Mac. A **Move up / Move down** context-menu fallback covers the same action.

### Project rows

Each project expands two levels only: repo → branch. A worktree (branch) is one leaf row; the agent sessions running on it — a Claude → Codex handoff, for example — appear as **tabs** in the workspace, not a third sidebar tier. Each branch row shows:

* A live data-stream cable that lights while any of the branch's sessions has a streaming turn.
* A `+N −M` diff badge against the default branch, when there's a diff.
* A session-count badge when more than one session runs on the branch.

Clicking a branch row opens its workspace at the most-recently-active session. The per-project **+** spawns a fresh worktree in that repo.

### Add project

The Projects header **Add project** menu mirrors Continuum's onboarding:

* **Open project** — pick a local folder via the open panel.
* **Open GitHub project** — clone a repo from GitHub.
* **Quick start** — scaffold a fresh project.

### Filter, group, and sort

The funnel menu next to Add project controls how managed sessions display. Any non-default selection tints the funnel terra-cotta so you can tell the sidebar is filtered without opening the menu:

* **Status** — All (default), Active, In Review, Done, Archived. Archived is the only way to reveal archived rows.
* **Group by** — Repo (default, the project → branch tree), Date, Status, Agent, Device, None. The non-Repo modes flatten managed sessions into a single grouped list.
* **Sort by** — Recency (default), Created, Name. Within a project, branch rows stay in stable creation order so agent turns never reshuffle them.
* **Projects → Refresh repo list** re-scans, and a **Reset filters** row appears once anything is off-default.

Right-clicking a session or branch row gives you Archive / Unarchive, Mute, Snooze, Color Tag…, **Pop out**, **Compare with Open Session**, Copy session ID, Reveal transcript in Finder, and Open Pull Request when the session has one.

## Center pane — thread and composer

The thread renders agent turns. Completed turns fold to a prompt, a summary capsule, and the answer; consecutive tool-use and tool-result messages collapse into expandable tool-run groups so a long agent turn stays scannable.

The whole transcript renders eagerly rather than windowed, so the scrollbar is exact and stable. Auto-scroll follows new turns only while the bottom anchor is visible; when you scroll up to read history, scrolling stops and a **Jump to latest** button appears.

The [Composer](/docs/features/composer) lives at the bottom: slash commands, @ mentions, attachments, voice dictation, the worktree-mode badge, and the live cost ticker.

## Review pane tabs

Five tabs, left to right. **To-dos** is the default and the left-most.

<AccordionGroup>
  <Accordion title="To-dos">
    The agent's own task list for the current turn, with a `To-dos · 3/7` completion count in the header. Empty until the agent writes one.
  </Accordion>

  <Accordion title="Plan">
    Step timeline derived from the plan text and numbered assistant turns. Auto-completes heuristically; tap to toggle steps manually. It carries an **Approve & run** button that mirrors the composer's plan tray — the same shared approval path, so the two can't disagree. The plan card rendered inline in the transcript is read-only; approval and **Comment** live in the composer. See [Plan mode](/docs/features/plan-mode).
  </Accordion>

  <Accordion title="Diff">
    Two modes behind a **Review / Git** toggle. Review is the reading view of what changed; Git is the live `git diff HEAD` with per-hunk Stage and Revert actions and a Commit sheet, auto-refreshing on writes to the repo index. See [Diffs and PRs](/docs/features/diffs-and-prs).
  </Accordion>

  <Accordion title="Preview">
    An in-app browser with navigation chrome, for local dev servers and GitHub. Its toolbar carries two mutually exclusive modes: **Comment**, where clicking an element stages an annotation, and **Edit**, a Figma-style in-page text edit. Either one attaches a structured block to your next prompt — selector, URL, accessibility label, nearby text, computed style, bounding box, an optional element screenshot, and for an edit the original and proposed text. The transcript renders it as a compact chip rather than dumping the raw block into the conversation.
  </Accordion>

  <Accordion title="Terminal">
    A live shell in the session's working directory — your plain `$SHELL`, multi-pane, with a path bar. This is a real terminal next to the agent, not the agent's own process and not an echo of its bash calls. New terminal tab on **Cmd+Shift+T**.
  </Accordion>
</AccordionGroup>

<Note>
  The Sources and PR tabs were folded out of the review pane; a saved selection pointing at either one falls back to To-dos. PR state now lives in the Code titlebar PR control, backed by a live `gh pr list` poll — see [Diffs and PRs](/docs/features/diffs-and-prs).
</Note>

## Pop-out sessions

Right-click a session in the sidebar (or its workspace tab) and choose **Pop out** to open it in its own window. The pin button in that window keeps it floating above other apps.

## Keyboard

* **Cmd+N** — new workspace.
* **Cmd+T** — new chat tab on the current worktree.
* **Cmd+Shift+T** — new workspace terminal tab.
* **Cmd+Shift+F** — focus the sidebar search.
* **Cmd+B** — toggle the review pane.
* **Cmd+Opt+1…9** — jump to the Nth visible session. (The plain **Cmd+1 / 2 / 3** digits belong to the top-level Code / Usage / Settings tabs.)

See [Reference: Shortcuts](/docs/reference/shortcuts) for the full list.

## Spawn mode

Spawn opens a grid of interactive agent CLI terminals — Claude, Codex, Gemini, OpenCode, Cursor, Grok — all working in your active project. It's for the case where you want several agents in front of you at once and intend to type into them directly, rather than driving them through the composer.

Pick a total of **1, 2, 4, 6, or 8** tiles and an agent mix in the config tray; the grid lays out 4 as 2×2, 6 as 3×2, and 8 as 4×2. Clicking the Spawn row body skips the tray and uses your Settings → Spawn defaults. Tiles expand to fill the pane and compact back without tearing down the terminal, and a CLI you haven't installed gets a guided Install affordance instead of a dead tile.

Spawn needs a selected project — the tiles inherit its working directory. Spawn groups are ephemeral: they die with the app and are never paired to your phone.

The Spawn row is hidden until you turn it on in **Settings → Spawn**, which is also where you set the default tile count and agent.

## Related

* [Sessions](/docs/features/sessions) — spawn options, worktrees, city names, archive.
* [Composer](/docs/features/composer) — slash commands, mentions, attachments, voice, cost ticker.
* [Diffs and PRs](/docs/features/diffs-and-prs) — diff panel, PR status, create and merge.
* [Desktop](/docs/surfaces/desktop) and [Web](/docs/surfaces/web) — the same workbench on Windows, Linux, and the browser.
* [Reference: Shortcuts](/docs/reference/shortcuts) — full keyboard shortcut list.
