The chat surface is where most work happens. Open the app, you land on /chat and a fresh conversation is waiting. Type and press Enter to send.
The composer is a single box: your message sits at the top, with every control along the bottom edge. On the left are the add (+) menu and the web search toggle; on the right are the model picker, the dictation mic, and the send button (a blue circle). Files you attach stack as chips at the top of the same box, above your text.
Starting a new conversation
The sidebar's New Chat button (top-left) starts a fresh conversation. Until you send the first message, no conversation row appears in history; it's a draft. The moment you send, the conversation gets saved and an auto-generated title appears in the header.
Picking a model
The model picker sits on the bottom-right of the composer. The list shows every model your organisation has enabled, and each entry carries a one-line description so you can tell them apart: either a short summary the platform admin set on the model, or a fallback line built from its maker, size, and context window (for example Alibaba · 235B · 128K context). There's usually a fast everyday model marked as default plus heavier options for harder work. Models in maintenance are greyed out with the maintenance note in place of the description.
Your last choice is remembered per device. If a model gets pulled or goes into maintenance, the app falls back to the default automatically, so you won't get stuck on a model that can't answer.
Reasoning (thinking) toggle
Some models support extended reasoning: they spend extra tokens working through the problem before replying. Open the add menu (the + button on the bottom-left of the composer) to switch Thinking on or off.
- Thinking on: the assistant streams a collapsed "thinking" trace before the final answer. Expand it to see the model's working. Useful for code, analysis, multi-step problems.
- Thinking off: model replies directly. Faster, cheaper, fine for short questions.
Models that don't support thinking show the toggle as disabled. Your preference is remembered per-model, so a heavyweight model can stay in thinking mode while a fast model stays direct.
How the thinking trace renders
While the model is reasoning, the fold shows an animated "Thinking" indicator with a running timer. The moment reasoning ends (when the model starts writing its answer, reaches for a tool, or finishes the step), the fold settles into a static "Thought for _N_s" summary (for example, "Thought for 12s" or "Thought for 1m 5s"), and the final answer streams in beneath it, separate from the reasoning. The answer is never shown collapsed inside the thinking trace, and a finished thinking section stops animating instead of spinning until the whole reply lands.
If the model thinks again later in the same reply (for example, reasoning, calling a tool, then reasoning once more about the result), the indicator picks the reasoning back up: it settles to the static summary when a thinking step ends and shows the spinner again while the model is actively reasoning.
If a thinking trace is open, the Expand Thinking option in the same menu auto-expands new traces as they arrive instead of leaving them collapsed.
Web search
If your organisation has web search enabled, the composer shows a globe button on the bottom-left, next to the add menu. Click it for a question that needs current information (news, prices, anything time-sensitive) and the assistant fetches and cites web results in its reply.
When web search is on, the globe expands into a tinted Web Search pill so you can see at a glance that the next turn will hit the web. Click it again to turn it back off.
Web search is opt-in per turn: it stays off by default and won't fire unless you've enabled it.
Code execution
If your organisation has code execution enabled, the assistant can write and run code in an isolated sandbox to complete a task: crunch a spreadsheet, render a chart, transform a document. You don't manage the sandbox; it's created for the conversation and cleaned up afterwards.
The sandbox has fixed, fairly small resource limits, and the assistant knows them. Ask for something clearly over budget (generating tens of gigabytes of files, say) and it refuses up front and tells you, or breaks the work into smaller chunks that fit. If a running job does blow past a limit, that sandbox session is terminated and the files and variables it held are lost. Trust the refusal: scope the job to fit rather than pushing past it.
Attaching files
You can attach files three ways:
- Add files from the add menu (the
+button on the bottom-left of the composer). - Drag and drop files onto the chat. The input lights up with a drop zone.
- Paste an image or large text block directly into the composer.
Supported types include PDFs, Word, PowerPoint, plain text, CSV/Excel, JSON, code files, and common image formats. Files are processed depending on type. See Files and sources for what happens to each.
Each attachment shows up as a compact chip at the top of the composer, inside the box and above your text. The chip carries the filename and a type badge (PDF, DOCX, JPEG, and so on), with a progress bar while it uploads. A file the platform can't take turns red and reads Failed; click the ✕ on a chip to drop it before you send.
When you send, those chips move with the message: the same chip card now sits above your message bubble in the conversation, so a file reads as attached to the message you sent it with rather than floating loose in the composer. The chips stay there when you reload or reopen the conversation, and each message carries only the files you attached to that turn. Attaching a file still adds it to the conversation's sources, so the assistant can keep querying it on later turns. See Files and sources.
A large text paste (more than a few thousand characters) is auto-converted into a .txt source and attached, rather than dumping the full blob into the message. Small pastes appear as a chip at the top of the box. Click it to view or edit the pasted text.
Mentioning connectors with @
Type @ in the composer to open the mentions popover. It lists the connectors in your library: MCP servers and REST APIs. Pick one to attach it to this conversation.
Navigation inside the popover:
- ↑ ↓ move between connectors
- Enter attaches the selected connector
- Esc closes without attaching
Once a connector is attached, the assistant can query it on every turn. Use the Connectors panel (right side of the chat) to toggle individual connectors on or off without removing them.
Voice input
The composer has a microphone button for dictation on the bottom-right, just left of the send button. Speak, it transcribes into the input, and you review before sending. When the input is empty the blue button is a voice mode button instead of send; it turns the chat into a full hands-free conversation where the assistant speaks the reply back. Press Esc to leave voice mode.
Dictation and voice mode use your browser's microphone permission. If nothing happens when you press the mic, check the site permission.
Ephemeral chats
The sidebar has an Ephemeral mode toggle directly under New Chat. Turn it on and any conversation you start is marked ephemeral:
- All messages, attachments, vector collections, and any shell containers are permanently deleted when your session ends (sign out, token expiry, or session loss).
- Connectors you added from your library are unlinked but not deleted from the library.
- A violet ring around your avatar and a banner in the header tell you ephemeral mode is on.
Use this for sensitive material you don't want kept around. It's the closest thing to incognito browsing the chat has.
Previewing what the assistant builds
When the assistant writes something self-contained (a small web page or app, a chart, a diagram, a generated document), it shows up as an artifact card in the reply instead of a wall of code. Click View on the card and it opens in the artifact panel on the right.
Most of what the assistant produces now previews right there in the panel, no download step:
- Web pages and apps: an HTML file runs live in the panel, scripts and all, in a sandbox. The card reads Website.
- Charts and graphics: SVG and image files (PNG, JPG, GIF, WEBP, and friends) render as the picture itself.
- Documents and notes: Markdown renders formatted; PDFs open in the built-in viewer.
- Office files: Word (
.docx) and Excel (.xlsx) render in the panel with their formatting and tables intact; PowerPoint (.pptx) shows the slide text. - Data: CSV files render as a table.
- Code and text: source files and plain text show syntax-highlighted, with a one-click copy.
This works whether the assistant just produced the file in the conversation or you've reopened an older chat: reopen the chat, hit View, and the preview comes back.
A file the panel can't render in-browser still shows a Download card with a download button, exactly as before. Nothing is lost, it just isn't previewed.
Stopping a response
While the assistant is generating, the send button becomes a stop button. Click it to halt generation. The partial response is saved to the conversation; you can edit your prompt and try again, or keep going from where it stopped.
Regenerating a response
Not happy with an answer? Hover the most recent assistant reply and click the ↻ Regenerate button. It opens a short menu: regenerate with the same model, or pick a different one to take another run at the same question. The fresh answer replaces the old one in place; the previous answer isn't lost, it's kept as a version you can switch back to (see Switching between answers). Regenerate is offered on the latest assistant reply; while it re-streams, the send button becomes Stop.
Editing a message
Sent the wrong thing, or want to rephrase? Hover your own message, click the ✏️ pencil, edit the text, and choose Save & Regenerate. The assistant re-answers from that message using the model currently selected in the picker, and the replies that came after it are replaced by the new one. Your original message and its answer are kept as a separate branch you can return to.
Switching between answers
Every regenerate or edit keeps the previous version instead of discarding it. When a message has more than one version, a small 2 / 3-style indicator with previous/next arrows appears on it. Step through with the arrows to compare versions. It shows on both your edited messages and the assistant's regenerated replies.
Where next
- Files and sources: what happens to documents you attach
- Conversation history: rename, archive, share, export past chats
- Projects: pin a set of sources to every new conversation
- Cloud agents: hand a prompt off to run in the background