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

# Apps & the Dock

> The Show Pages your agent builds become real apps — installed in the App Library, kept in the Dock, opened in windows.

Every [Show Page](/concepts/show-pages) your agent builds is really an app it made for you. The [Workbench](/concepts/workbench) treats it like one: install it in the **App Library**, keep the ones you use in the **Dock**, and open it in a window beside your chat. This is the [Agent OS](/concepts/agent-os) model made literal — your agent doesn't just answer, it hands you software you can keep.

## Two layers: installed and docked

Apps live in two overlapping sets:

* **Installed** — everything in the App Library's **Apps** list. The built-in apps (Files, Terminal, Editor, and the App Library itself) are always installed; a Show Page becomes installed when you add it.
* **Docked** — the subset you keep in the **Dock**, the tile strip along the bottom. Docking an app puts a tile there; undocking removes the tile but leaves the app installed.

Built-in apps can be docked or undocked freely, but never removed from the list. A Show Page can be undocked (tile gone, still installed) or removed entirely (gone from the Apps list — the page itself is untouched). The Dock can even be empty; when it is, it shows a shortcut to open the App Library, so you're never stranded.

Right-click any Dock tile for **New Window**, **Show All Windows**, **Open in New Tab**, and **Unpin from Dock**. Drag tiles to reorder them — your Dock and its order follow you across devices.

## The App Library

The **App Library** is a built-in app that manages everything. Reach it from its own Dock tile, the **App Library** entry in the sidebar, the empty-Dock shortcut, or by right-clicking the Apps launcher in the bottom-left corner. It has two tabs.

### Apps

The installed set — built-ins plus every Show Page you've added.

* **Reorder** — drag the grip handle at the front of a docked row; the order syncs with the Dock.
* **Dock / Undock** — toggle whether the app shows in the Dock. The row stays in the list either way.
* **Remove App** — on a Show-Page row (marked with an **AI** badge), takes it out of the Apps list. The page itself is untouched, and built-in apps have no Remove.
* **Click a row** to open the app.

### ShowPage

The full inventory — every Agent Session has a Show Page, so this lists them all, not just the ones you've installed. Each row shows the page's status, its visibility (private / public / offline), and its live link.

* **Add to Apps** installs the page as an app (and docks it). Once installed, the same control becomes **Remove App**.
* **Click the title or icon** — there's an open affordance on hover — to open the app in a window.
* **Expand a row** for its details panel, where you can:
  * **Rename** the page. This renames the session, so the new name shows everywhere.
  * **Upload an icon** — see [Icons](#icons) below.
  * Set **visibility** and manage the **share link** and its custom suffix.

## Windows

Opening an app — a Dock tile, a Library row, ⌘K, or a keyboard shortcut — opens a Mac-style window you can drag, resize, minimize, maximize, and close. A Show Page window shows the live page, so it keeps updating as the agent edits it.

The title bar carries two buttons on the right:

* **Open Chat** — jump back to the session that owns the page. The window minimizes so the chat is in front; its Dock tile brings it back. Watch the page change in the Dock thumbnail while you tell the agent what to do next.
* **Open in New Tab** — open the page in a full browser tab.

A public page opens the same way inside the window, through your own authenticated view; the anonymous link you hand to other people still lives at `/p/<share-id>`.

## Keyboard & windows

* **⌥1**–**⌥9** (Option / Alt) — jump to the *N*th app in the Dock.
* **⌥W** — close the focused window. Typing surfaces (text inputs, the editor, the terminal) keep ⌥W for character entry, so it only closes a window when your focus is elsewhere.
* **⌘K** — search opens apps and every Show Page (installed or not); press Enter to open a result as a window.
* Closing the browser tab while a window is open triggers the browser's own "leave site?" confirmation, so you don't drop a window by reflex.

## Icons

An app's icon comes from the page's own files, resolved in this order:

| Priority | Where the icon comes from                                              | Notes                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| -------- | ---------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| 1        | An explicit `<link rel="icon" href="…">` in the workspace `index.html` | The href must be a **relative file inside the workspace** — SVG, PNG, ICO, JPEG, or WebP, up to 2 MiB; a leading `<base href>` is honored. If the exact path doesn't exist on disk, the same path is also tried under `public/` — matching Vite's publicDir root-mapping, so `href="./icon.png"` with the file at `public/icon.png` works. Absolute paths, external URLs, `data:` URIs, and JS-injected icons don't count — the icon must exist as a file on disk. |
| 2        | A conventional favicon file                                            | `favicon.<ext>` at the workspace root, then under `public/` — trying `svg`, `ico`, `png`, `webp`, `jpg`, `jpeg` in that order.                                                                                                                                                                                                                                                                                                                                     |
| —        | None of the above                                                      | A colored letter tile drawn from the app's title.                                                                                                                                                                                                                                                                                                                                                                                                                  |

You can also **upload** an icon from a page's details panel in the App Library — it's saved as a conventional `favicon.<ext>` at the workspace root (priority 2). A usable explicit `<link rel="icon">` still wins over an uploaded file, because Avibe never edits your HTML. The default Show Page template's `<head>` includes a comment spelling these rules out, so the agent building your page knows to give it an icon — dropping a `public/favicon.svg` is enough.

## On mobile

Windows are desktop-only, but your apps still come with you. The bottom **Apps** tab — where **More** used to be — opens a drawer that mirrors your Dock: the same apps in the same order, because docking syncs across devices. Tap an app to open it full-screen; long-press to manage it. The former More items now live as chips along the drawer's footer: **Settings**, **Account**, **Appearance**, and **More…**

## You can just ask

You don't install apps by hand any more than you invoke [Show Pages](/concepts/show-pages) by hand. Ask for the outcome, let the agent build the page, and keep the ones worth keeping — the good tools your agent makes become part of how you work, right where you already operate it.
