The conversation menu
The header of a conversation tells you which conversation you are in and how it
is doing. The ⋯ menu at its right holds everything you do to the conversation
or to the relay that is not part of writing a message. This page lists both,
one row per item, with the labels exactly as the app shows them.
The header #
From left to right:
| Item | What it shows |
|---|---|
| ☰ | Opens and closes the conversation list. On a phone the list slides in over the conversation and this is the way to open it. While the list is closed, the bars carry the relay's colour (see the status dot); on a larger screen they stay plain. |
| Title | The conversation's title. Before you open one it reads Select or start a conversation. Change it with ✍️ Edit conversation title in the menu. |
| 👁 before the title | Shown while at least one person has the conversation's shared link open. Hover it for the number of watchers. See Watchers. |
| via agent · "title" | Shown when an agent in another conversation on this relay started this one. It opens that conversation while it is still in your list; otherwise it is plain text. See Agent sessions. |
| 👁 watching N sessions | A chip shown while this conversation has subscriptions to other sessions; it reads watching all sessions for a subscription to all of them. Click it for the list. See Watching sessions. |
| Working folder | The folder the conversation works in, on every provider except Claude Cloud. On a Claude Cloud chat the line names the repository and branch instead, written like ☁ example-. Hidden when there is nothing to show. |
| Session usage | A GitHub Copilot line such as Session: 0., joined with · to the share of the monthly plan and the premium requests when they are known. Other providers have none. Hidden when there is nothing to report. See GitHub Copilot. |
| 📍 | Pinned messages. Shown only once the conversation has pins, with their count. See Pinned messages. |
| 🙈 | Added in 0.9.11 Messages hidden from shared viewers. Shown only while the conversation hides some, with their count. See The 🙈 list. |
| 🔍 | Search messages: searches the text of messages in all conversations. See Search. |
| 🧠 | Check current context: opens a Context usage window for this conversation. Without an open conversation the window only tells you to open one. |
| ⋯ | The menu, below. |
| ⛶ | Toggles fullscreen. Shown on a phone-sized screen only, and not in the installed app. |
Added in 0.9.17 On a phone (a window up to 680 px wide) the header has two rows. ☰, the title and the buttons share the first, so the title gets the width the buttons leave. The via agent line, the chips (watching, watched, scheduled), the working folder and the session usage sit side by side on the second row, across the whole header, and a chip no longer breaks inside its text. A header with nothing for the second row stays one row. The desktop header is unchanged.
The model and the reasoning effort are not in the header. They are chosen in the composer; see Models and reasoning.
The status dot #
The relay's status dot sits at the top of the conversation list, next to + New Chat. Hover it for a sentence that says more than the colour.
| Colour | Meaning |
|---|---|
| Grey | The browser cannot reach the web relay. Tooltip: Web relay unreachable. |
| Green | The relay answers. Tooltip: Web relay reachable. It adds how many session workers are processing, degraded or waiting on a question, or CLI offline when no worker is connected. |
| Amber | The relay answers and is also reachable over a connected Cloudflare Tunnel. Tooltip: Web relay reachable via Cloudflare Tunnel. |
A tunnel that is set up but not connected leaves the dot green and says so in the tooltip, for example Web relay reachable; Cloudflare tunnel disconnected.
The ⋯ menu #
The menu is in the same order everywhere. Some entries need an open conversation and are left out, not greyed, when none is open; the others are there whenever you are signed in, so ⚙️ Settings is reachable on a fresh install. The first two lines are information; only 🚮 Empty queue in the second is a control.
This is not the row menu
Right-clicking a row in the conversation list opens a different, shorter menu. See The conversation list.
| Entry | Shown | What it does |
|---|---|---|
| PWA shell version | Always | Names the version of the app shell your browser has loaded, for example v0.. |
| Queue, 🚮 Empty queue | Always | The queue counts as pending=. 🚮 Empty queue asks Drop all queue rows in pending, processing, and parked states?, then drops every pending, processing and parked message of all conversations. It cannot be undone. See Turns and the queue. |
| ✍️ Edit conversation title | A conversation is open | Turns the title into a field (up to 120 characters) with Save and Cancel. The menu button is locked while you edit. See The title. |
| ☀️ Day mode / 🌙 Night mode | Always; in the shared read-only view it is the only entry | Switches between the light and dark theme. The label names the mode you switch to. It sets the same value as Theme in Settings → General. Added in 0.9.11 Back for signed-in users, with or without a conversation open; in 0.9.10 it showed only in the shared view. |
| 📊 Check Usage | Always | Opens a Plan usage window with one tab and card per provider, starting on the tab of the provider you are working with. See Claude Cloud for its card. |
| ➡️ Share conversation | A conversation is open | Creates the public read-only link and copies it. See Sharing. |
| ⛔ Stop sharing | The open conversation has a link | Added in 0.9.11 Ends the link after a confirmation, and deletes its access log. See Your shared links. |
| 🔍 Preview as shared | A conversation is open | Added in 0.9.11 Shows the conversation as its link would, with replaced paths in green and what still looks like a path in amber. Creates no link. See Preview as shared. |
| 🗄 Archive conversation | A conversation is open | Archives the conversation. It asks first only when the conversation's worker is still running or a turn is working; an offline conversation is archived at once. On an archived conversation the entry reads 📂 Unarchive conversation. See Archive and unarchive. |
| 🧩 Session group… | A conversation is open | Added in 0.9.11 Opens the group picker for the conversation: add it to a group, make a new one, move it or take it out. See Session groups. |
| 🖥️ Inspect tmux console | A conversation is open | Opens the tmux console, a read-only view of the conversation's worker. It needs tmux, and only some conversations have a screen to show. |
| 🤗 Select Models | Always | Chooses which discovered models appear in the pickers. Saved for the whole relay. See Select Models. |
| 🗂️ Change CWD | A conversation is open, and it is not a Claude Cloud chat | Sets the folder for the next launch, or relaunches the agent in a new folder. See Changing it later. |
| 🌿 Git changes | A conversation is open | Opens a window with the branch and the changed files of the git repository in the conversation's working folder, a diff for each file and a ⬇ Pull button. See Git changes. |
| ☁️ Open on claude.ai | A Claude Cloud chat whose cloud session exists | Opens the session on claude.ai. See Claude Cloud. |
| ⚙️ Settings | Always | Opens the settings dialog, with or without a conversation. See Settings. |
| ℹ️ About OAR · version | Always, but not in the shared view | Added in 0.9.11 Opens what this relay is and has done. See About OAR. |
| 🌄 Restart web relay | Always | Queues a relay restart. While one is queued the label reads 🌄 Restart pending…. See below. |
| 💤 Suspend host | Unless switched off in Settings | Puts the relay's machine to sleep once the agents are done. While one is queued the label reads 💤 Suspend pending…. See below. |
| ☠️ Kill session | A conversation is open; greyed out while it has no worker session | Stops the conversation's worker. See below. |
Two actions that older versions had, 🗜️ Compact and 🔄️ Refresh history,
are no longer in the menu. Compacting is the / command in the composer;
see Compacting.
In the shared view only the Day or Night entry is left, and the menu button stays usable even when the shared conversation could not be loaded.
About OAR Added in 0.9.11 #
ℹ️ About OAR names the relay's version in the menu, for example
ℹ️ About OAR · 0., and opens a window with what this relay is and has
done:
- the version, the commit (for a git checkout) and when the relay started;
- each provider that is switched on, with its CLI and SDK version and whether it is online. DeepSeek is not in this list, even when it is switched on;
- conversations, turns and messages since the first conversation, turns per provider, and the usage the providers report: Copilot premium requests, Cursor and Grok tokens and cost, Claude Cloud cost. DeepSeek turns are counted, but their spend is on the DeepSeek usage card, not here;
- uptime, the size of the database and the workers that run.
With Check for updates automatically on, it names the latest version; with the check off it says where to turn it on. It sends nothing to oar.sh itself. Viewers of a shared link do not get the entry.
The window reads GET /, which needs the access token. The relay
counts a large database in small steps and keeps the totals for a minute, so
reopening the window at once shows the same numbers.
The tmux console #
🖥️ Inspect tmux console opens a window titled tmux Console Inspector (read-only) with the session id and a status line. It is a view, not a terminal: you cannot type into it, and it has no refresh button. Closing it, or clicking outside it, ends the view and the worker is unaffected. A conversation that has no session yet answers with the notice Select a conversation with a bound SDK session first.
What you see depends on the conversation's agent:
| Conversation | The window shows |
|---|---|
| GitHub Copilot on the extension engine | The live Copilot terminal screen. The status line reads Read-only stream attached. |
| GitHub Copilot and OpenAI on the SDK engine, Claude, Claude Cloud, Cursor, Grok, DeepSeek | No screen. These agents are headless processes; their output goes to a log file on the relay host, not to the tmux pane, so the window attaches but stays empty. The Copilot setting says the same: "no tmux inspector for those sessions". |
The view follows the worker live. If that live stream ends while the worker is still running, the window switches to a snapshot of the screen taken about every 0.7 seconds. If it cannot load its terminal display from the internet, it falls back to plain text and the status line says so.
The inspector needs the conversation's worker to run in a tmux session, which
happens on Linux and macOS with tmux installed. On Windows, and on a host
without tmux, the entry is still in the menu and the status line shows
tmux is unavailable on this relay host. It also refuses when the worker is
not running: Session worker not found, or Session worker is not active
followed by its state. See
Restarts and resuming for how
workers are run.
Restart web relay #
🌄 Restart web relay asks first, then queues a restart of the relay. The restart waits until no turn is running, so it never interrupts one; a banner on every device shows the wait. The relay comes back within moments and the open page reconnects. How long it waits, what survives and what is lost is on Restarts and resuming.
Added in 0.9.13 The window lists first which sessions' turns the restart would wait for, how many messages it would hold and which background tasks keep running. 🌄 Restart when idle queues the restart; Restart now does not wait. The banner names the sessions as links, shows how long it has waited and has Restart now and Cancel restart. After Ask after a queued relay restart has waited (30 minutes by default) it asks whether to restart now, keep waiting or cancel. Choosing the menu entry while a restart is queued shows the same choices.
Any signed-in browser can queue the restart: it needs the access token and
nothing else. Added in 0.9.11 Before 0.9.11 the relay refused it over the local
network and from a proxy on another machine, yet the page reported success.
When the relay refuses the request now, the page shows the relay's reason, and
a request that got no answer says so. From a terminal on the relay's machine,
oar restart does the same.
Suspend host #
💤 Suspend host (see also Suspend host) opens a window titled Suspend host that lists what is still running (turns, background agents, open CI runs). With nothing running it asks Put this PC to sleep? and the machine sleeps 30 seconds after you confirm, with a countdown banner on every device that has a Cancel button. With agents still active it offers 💤 Suspend when idle: the machine sleeps once they have finished and everything has been quiet for 2 minutes. Reopen the entry (now 💤 Suspend pending…) or use the banner to cancel.
It works only when the relay runs on Windows. On another system the window says Host suspend is only available when the relay runs on Windows. The entry is shown by default on every system. Show Suspend host action in Settings → General shows or hides it in your browser; see Settings.
Kill session #
☠️ Kill session asks for confirmation, then stops the conversation's worker and the processes it started. A turn that was running ends and needs a retry or a new message; the conversation, its history and queued messages stay, and the next message starts a fresh worker that resumes the provider's session. Use it when a conversation is stuck, when Stop does not work, or when the agent should start again to pick up new tools or settings. The entry is greyed out while the conversation has no worker session. Details are on Restarts and resuming.