> ## Documentation Index
> Fetch the complete documentation index at: https://docs.alpha.new/llms.txt
> Use this file to discover all available pages before exploring further.

# The workspace

> The panel beside the chat that shows your session's machine: its app, files, terminal, database and services.

The workspace is the panel to the right of the chat. It shows your session's machine: the app the agent is running, the files it wrote, a terminal, the database and the services you've switched on. Each of those is a tab in one strip across the top, and new tabs appear only when there's something to put in them. To look at your app, go straight to [Preview your app](https://docs.alpha.new/workspace/preview.md). To find a file, see [Files and uploads](https://docs.alpha.new/workspace/files.md).

![The Harbor bookings session, with the sidebar collapsed to a menu button at the top left, then the title Harbor bookings and the Codex mark. The chat takes the left quarter. It ends with the agent's message that three choices will shape the plan, a card titled The agent has questions with a green check, listing three questions each answered Left to the agent — it went with In app only, Until class starts and Current browser, and a Proposed plan card titled Automatic class waitlist with a copy button and a chevron. The composer below shows the placeholder Describe what to plan…, then the + button, the model chip reading gpt-6.… · high and the plan chip reading p… · on on the left, and the microphone and a dimmed round send button on the right. The workspace fills the rest. Its tab strip reads Plan, Preview (in front), Shell, Database, Secrets, README.md and server.js, then the round + button, and at the right end the GitHub button, Share, the Publish pill and the files button. Under it, the Preview toolbar shows the Desktop, Tablet and Mobile icons, Back, Forward, Reload, the port pill reading node · 3000 and Logs, with Draw, Select and Open in new tab at the right. The frame shows the Harbor Sailing School app: the headline Good days start on the water., a sailboat photo with a round LESS LAND MORE SEA badge, This week's classes with a count of 3 and the date pill Oct 26 – Nov 1, 2026 · This week, the filters All classes, Beginner, Intermediate and All levels, and three class cards: Beginner Dinghy, Wednesday, Oct 28, 09:00 – 12:00, with Maya Chen; Intermediate Keelboat, Friday, Oct 30, 13:00 – 16:00, with Oliver Brooks; and Sunset Sail, Saturday, Oct 31, 16:30 – 18:30, with Sophie Laurent.](https://mintcdn.com/lyzr-15a99e0f/ObBpayiae_4aNgzN/images/workspace/workspace-overview.png?fit=max\&auto=format\&n=ObBpayiae_4aNgzN\&q=85\&s=2c43e9da205314bf5f5e135eb3757d6f)

The chat sits on the left and the workspace on the right, with the Preview in front.

## What each tab shows

Most tabs arrive by themselves when the agent starts using something. The rest you open from the **+** menu.

| Tab | What it shows | How it appears | Viewers see it? |
| - | - | - | - |
| **[Plan](https://docs.alpha.new/chat/plan-mode.md)** | The plan the agent proposed in plan mode | By itself when the agent proposes a plan | Yes |
| **[Preview](https://docs.alpha.new/workspace/preview.md)** | Your running app | By itself when something in the machine listens on a port. It comes to the front once there's a page to show. | Yes, without **Select** and **Draw** |
| **[Shell](https://docs.alpha.new/workspace/shell.md)** | A terminal on the machine | **+** → **Shell**. The agent never opens it for you. | No |
| **[Agent](https://docs.alpha.new/agents/agent-tab.md)** | The flow of the AI agent you're building, and the tools each step uses | By itself when the agent publishes an AI agent | Yes |
| **[Evals](https://docs.alpha.new/evals/set-up.md)** | That AI agent's test cases, runs and results | By itself when the agent publishes its evals | Yes |
| **[Database](https://docs.alpha.new/workspace/database.md)** | The session's PostgreSQL, and your published apps' production databases | By itself when the agent starts the database, or **+** → **Database** | No |
| **[Auth](https://docs.alpha.new/workspace/app-sign-in.md)** | Your app's sign-in settings and its users | By itself when the agent adds sign-in, or **+** → **Sign-in** | No |
| **[Routines](https://docs.alpha.new/routines.md)** | Work that runs on a timetable | By itself once a routine is saved in the session | No |
| **[Publish](https://docs.alpha.new/publish/publish-your-app.md)** | The session's published apps and their versions | **+** → **Publish**, or by itself when a publish starts | No |
| **[Production Logs](https://docs.alpha.new/publish/monitor.md)**, **Production Metrics** | A live app's log and its traffic | **+** once an app is live, or by itself when the agent reads them | No |
| **[Secrets](https://docs.alpha.new/secrets.md)** | This session's tools key and secrets | **+** → **Secrets**, or by itself when the agent saves a secret for the session | No |
| **[GitHub](https://docs.alpha.new/github/branches-and-prs.md)** | Branches, changes, commits and pull requests | The **GitHub** button at the right of the strip, or **+** → **GitHub** | No |
| [File tabs](https://docs.alpha.new/workspace/file-viewers.md) | One file each, in the viewer that fits it | Click a file in the files panel or a file link in the chat. Some files you asked for open themselves. | Yes, read-only |

Every file in the workspace is the agent's, so every file tab is read-only. To change a file, ask the agent, or [point at the part you mean](https://docs.alpha.new/workspace/point-and-draw.md).

[People you share the session with](https://docs.alpha.new/sharing.md) get the tabs marked Yes, and never the **+** menu.

## Why is there no workspace yet?

Alpha switches nothing on until the work needs it, so a new session has no workspace panel and the chat takes its place. The **+** button, GitHub, Share and the files button sit in the chat header instead. A pulsing dot on **+** means a service is starting.

![A new session a few seconds after its first message, with the sidebar collapsed. The header shows the title Harbor Sailing Classes and a pill with the Codex mark reading codex, and at its right the round +, GitHub and Share buttons and the lit files button. There is no workspace panel. The files panel is open along the right edge, headed /workspace with Refresh and Hide buttons, and reads workspace is empty. At the top of the chat, the prompt asking for a class-booking web app for Harbor Sailing School sits in a bubble. Below it, the agent's first message reads I'll build the weekly class list and booking form, keep availability in server memory, and check that a booking reduces the seat count. I'm using the design-system and landing-page-design skills for the interface. Under it, a folded row with two small round icons reads 3 commands, and a three-by-three pixel loader sits beside Striking while hot… and a 4s counter. The composer at the bottom shows the placeholder Add a follow-up, the + button, the model chip reading gpt-6.1-sol · high, the plan chip, the microphone and a round Stop button with a dark square.](https://mintcdn.com/lyzr-15a99e0f/ObBpayiae_4aNgzN/images/workspace/workspace-fresh-session.png?fit=max\&auto=format\&n=ObBpayiae_4aNgzN\&q=85\&s=1b1a8eeca8b475bc1e5c784a64d4fc0e)

A new session: the chat and the files panel, with + in the header and no workspace yet.

The panel slides in the first time there's something to show: usually the Preview, once the agent starts your app.

## Turn on a service

The agent switches services on when the work calls for them, such as the database when your app needs one. Each new tab folds into the strip and comes to the front. The **Shell** is the exception: only you can open it.

To switch one on yourself, click **+** at the end of the tab strip (tooltip "Open a tab, or turn on a service"). The menu lists any tabs you closed first, then the services that aren't on yet.

![A close crop of the workspace's tab strip with the + menu open below the + button, which follows the server.js tab and comes before the GitHub, Share, Publish and files buttons. The menu lists, each with its icon: Sign-in, Publish and GitHub. Behind it, the top of the Preview shows.](https://mintcdn.com/lyzr-15a99e0f/ObBpayiae_4aNgzN/images/workspace/workspace-plus-menu.png?fit=max\&auto=format\&n=ObBpayiae_4aNgzN\&q=85\&s=9b0b7a8edc3eb45b4985931f694300ab)

With Shell, Database and Secrets already open as tabs, the + menu offers only the services that aren't.

| Menu item | What happens |
| - | - |
| **Shell**, **Publish**, **Secrets**, **GitHub** | The tab opens at once. |
| **Database** | PostgreSQL starts inside the machine. Until it's ready, the tab shows dimmed, and hovering it shows "Starting PostgreSQL in this session's machine…". |
| **Sign-in** | Alpha registers your app for sign-in. Until it's done, an **Auth** tab shows dimmed, and hovering it shows "Registering the app for sign-in…". |
| **Production Logs**, **Production Metrics** | The tab opens on your live app. Offered only once an app from this session is live. |

![A close crop of the workspace tab strip. It reads Preview, then Shell in front with its ×, then Database, dimmed while it starts, and the round + button at the end.](https://mintcdn.com/lyzr-15a99e0f/jO8NjleZP1qSnMRA/images/workspace/workspace-tab-starting.png?fit=max\&auto=format\&n=jO8NjleZP1qSnMRA\&q=85\&s=0d3234e9967b699c89d48087dea38366)

A service the machine has to start shows as a dimmed tab until it's ready.

If a service can't start, Alpha shows the error and the starting tab goes away. The Preview is in the menu only after you close it: to get one, ask the agent to run your app.

> [!NOTE]
>
> If you don't see **Publish** in the **+** menu or the workspace header, publishing isn't turned on for your Alpha.

## Close a tab or switch a service off

The **×** on most tabs only hides the tab, and the service keeps running. Only the Shell's **×** ends something. The tooltip on each **×** says what it does, such as "Close the Database tab (the database keeps running)".

| Tab | What **×** does | Afterwards |
| - | - | - |
| **Preview** | Hides the tab | The app keeps running. The tab comes back the next time you load the page. |
| **Database** | Hides the tab | The agent and your app still use the database. |
| **Auth** | Hides the tab | Your app's users can still sign in. |
| **Plan**, **Agent**, **Evals**, **GitHub** | Hides the tab | Nothing changes. |
| **Shell** | Switches the Shell off | The terminal, its scrollback and anything running in it end. Typing `exit` does the same. The next **Shell** starts fresh. |
| **Publish** | Removes the tab | Your apps stay live, and the tab comes back with the next publish. While a publish runs, the tab stays: "publishing is in progress — the tab stays until it is done". |
| **Secrets** | Removes the tab | Your secrets are kept and still reach the session. |
| **Production Logs**, **Production Metrics** | Removes the tab | Your live app is unaffected. The tab comes back when the agent reads them again. |
| **Routines** | Has no **×** | |

To bring back a hidden tab, pick it from the top of the **+** menu. A new plan brings **Plan** back by itself, and the agent publishing its AI agent or evals again brings back **Agent** or **Evals**.

Close a file tab with its **×** or by middle-clicking it. If you close every tab, the workspace folds away, and **Show workspace** in the chat header brings your closed tabs back.

## Arrange the workspace

| To | Do this |
| - | - |
| Resize the chat and the workspace | Drag the divider between them. Double-click it to return to the default split. |
| Give the workspace the whole window | Press <kbd>⌘</kbd><kbd>⇧</kbd><kbd>B</kbd>, or drag the divider past the chat's narrowest width. Press the shortcut again, or click **Show chat · ⌘⇧B**, to bring the chat back. |
| Give the chat the whole window | Drag the divider all the way to the right. Click **Show workspace** in the chat header to bring it back. |
| Show or hide the files | Click the folder button at the top right ("Show files"). The files panel opens along the right edge. |
| Reach tabs that don't fit | Scroll the strip with the mouse wheel, or click the arrow on the side with hidden tabs. |

Use Ctrl instead of ⌘ on Windows and Linux. Every shortcut is listed in [Keyboard shortcuts](https://docs.alpha.new/reference/keyboard-shortcuts.md).

Alpha remembers each session's tabs in this browser: the open files, the tab in front and the tabs you closed. Switch sessions or reload and they return as you left them, except a closed Preview, which comes back on reload. What a tab shows inside, such as the Preview's port, isn't kept. Another browser or device opens the session on its Preview, or on its first tab when it has no Preview.

## What do the tabs show while the machine wakes?

A session's machine sleeps once you've been away for about 30 minutes and nothing is running. When you open the session again, tabs that read from the machine show grey placeholder bars for a few seconds, then fill in by themselves, with nothing to retry. **Plan**, **Auth**, **Routines** and **Secrets** don't read from the machine and show at once. See [Sleep, wake and reset](https://docs.alpha.new/sessions/machines.md) for what keeps a machine awake, and [Limits](https://docs.alpha.new/reference/limits.md) for the idle time.

## Next steps

> **[Preview your app](https://docs.alpha.new/workspace/preview.md)**
>
> Switch device sizes, read the app's console and open it in its own tab.

> **[Point at and draw on your app](https://docs.alpha.new/workspace/point-and-draw.md)**
>
> Pick an element or mark up the page, and send it with your next message.

> **[Files and uploads](https://docs.alpha.new/workspace/files.md)**
>
> Search the machine's files, download a folder and attach your own.

> **[Your session's database](https://docs.alpha.new/workspace/database.md)**
>
> Browse tables, edit rows and run SQL without leaving the session.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.