Chat controls & modes
Every chat — and, where it makes sense, every individual turn — can be tuned. The controls live in the chat header’s menu (the model / reasoning / security / mode / memory pickers) and the composer bar (integrations and, in coding chats, the workspace device). Each control is independent of the others, and each persists per chat: change a control here and it sticks for this conversation, so you can keep a fast, autonomous scratch chat and a careful, approval-gated work chat side by side without one bleeding into the other.
Most controls have a Default option that falls back to your preferences. The new-chat defaults for model, reasoning, mode, and data classification live under Settings → Behavior; the security-mode and memory-access defaults live under Settings → Profile. Set one explicitly here and it overrides the default for this chat only.
!!! note
Message actions (regenerate, edit, …) and the / slash-command palette are documented
separately. This page covers the per-chat modes and controls.
Where the controls live
Open the chat header’s overflow menu to reach the per-chat pickers. The model button doubles as the entry point for reasoning effort (folded into the same menu to save space). The composer bar carries the Integrations picker — and, in a coding chat, the workspace device picker.
| Control | Values | Persists per chat | Applies per |
|---|---|---|---|
| Model | a specific provider:model, or auto |
yes | chat (carried each turn) |
| Reasoning effort | Default / Off / Low / Medium / High | per turn | turn |
| Mode (collaboration) | Default / Plan / Execute / Pair | yes | chat |
| Security mode | Default / Autonomous / Approve each / Judge | yes | chat |
| Memory access | Default / Full / None / Restricted | yes | chat |
| Data classification | Standard / Internal | yes | chat |
Model
Pick any model your administrator has enabled, grouped by provider, with a search box for
long lists. Or choose auto — the platform ranks the enabled models by capability
(frontier / reasoning / coding / fast / vision / cheap) and picks the best fit within this
chat’s governance limits on each turn. auto is re-evaluated per turn, so as you add
integrations (which can raise the required capability) or change the data classification, it
re-picks a compatible model.
Auto-ranking
When the model is auto, the platform ranks the enabled, governance-compatible models and
takes the best one. If a chat’s data classification requires a higher
trust tier, only models from a provider that meets that tier are eligible — auto then picks
the best compatible one. The model picker itself applies the same pre-filter: a classified
chat only lists models whose provider tier meets the requirement (plus auto, which re-picks
compatibly).
Provider-diverse fallback chains
Whatever model resolves — explicit or auto — runs behind a fallback chain. If the
primary model errors (rate-limit, 5xx, provider outage), the run quietly cascades to the next
governance-compatible model instead of failing the turn.
The chain prefers provider diversity: it fills its fallback slots from providers other than the primary’s first, then backfills with same-provider models only if slots remain. Top capability scores often cluster on a single provider account, which would make a monoculture chain — when that one account hits a rate-limit, the primary and all its fallbacks fail together. A different (even weaker) provider finishing the run beats a wholesale crash. Every pass is still best-first, so diversity never reaches past a genuinely better option on a not-yet-used provider.
!!! warning Fallbacks are always governance-compatible: a fallback never routes Internal data to a provider that isn’t cleared for it. The chain is fail-closed.
Reasoning effort
On models that support it, you can set how much the model “thinks” before answering. The effort chips sit at the top of the model menu:
| Effort | Meaning |
|---|---|
| Default | Use the model’s own default |
| Off | No extended reasoning |
| Low / Medium / High | Increasing amounts of thinking |
More effort means better results on hard problems, but slower answers and more tokens on easy ones. When an explicit effort level is set, a small “thinking” badge appears on the model button. Reasoning effort applies to the turn you send — it isn’t stored on the chat the way the other controls are, so it carries from your new-chat preferences and is the one control you re-confirm as you go.
Mode (collaboration style)
The collaboration mode shapes how the agent works with you — it’s a behaviour mask layered into the run, not a change to which tools are available.
| Mode | Behaviour |
|---|---|
| Default | Balanced — plans or acts as the task fits (no extra steering) |
| Plan | Thinks first and proposes a concrete approach before doing the work; avoids large or irreversible changes until the plan is clear |
| Execute | Biases strongly to action — carries the task end to end with minimal back-and-forth, asking only when genuinely blocked or before something destructive |
| Pair | Works like a pairing partner: small steps, thinks out loud briefly, and checks in at natural decision points |
!!! note This “mode” (collaboration style) is independent of both the security mode below and the chat mode (standard / coding / custom, covered on the Coding page). Switching collaboration mode to Default clears the stored preset for the chat.
Security mode
The security mode controls how tool calls are gated in this chat. It’s the single source of truth for tool gating — devices carry no policy of their own; their tools flow through the same guard as everything else.
| Mode | Behaviour |
|---|---|
| Default | Use your default from Settings → Profile (or the platform default) |
| Autonomous | Tools run without asking — fastest, most hands-off |
| Approve each | Every tool call waits for your explicit approval, inline in the chat |
| Judge (LLM) | A safety model classifies each call as allow / approve / deny before it runs |
In Judge mode the safety model can allow a call outright, deny it (the model gets a refusal back), or escalate it to you for approval. In Approve each, the model step is skipped and every call surfaces an approval card. Approval cards appear inline in the conversation.
!!! warning
A deterministic command policy runs before anything else and is a hard deny floor in
every mode — even Autonomous. You cannot fat-finger-approve a catastrophic command
(e.g. rm -rf /); a deny-verdict command is blocked outright. Your administrator can
layer additional rules on top of the built-in policy (see Security & privacy).
The Allow-all whitelist
On an approval card, Always allow records a standing allow-rule for that tool (and command
pattern) so the guard stops asking for matching calls — no re-nagging for the same
git status over and over. The rule is stored on the chat and is session-scoped: it
applies to this chat only and doesn’t change any other conversation’s security mode.
A few benign, side-effect-free chat-internal tools (such as renaming the chat or asking you a question) are never gated, so they don’t stack pointless approval cards.
Memory access
This controls what the assistant may read from its long-term memory in this chat.
| Access | Meaning |
|---|---|
| Default | Inherit your default from settings |
| Full | Full access to everything remembered |
| None | No access — a private chat that nothing is learned from |
| Restricted | Only the areas and sources you tick |
Restricted memory lets you pick areas — People & contacts, Work & projects, Places & devices, Notes & topics — and sources — Preferences & rules, Things you said, Agent inferences, Integration observations. An empty area or source is fail-closed: the agent sees nothing there. The picker warns you when an axis is empty so it isn’t accidental.
Data classification
Choose the data sensitivity for the chat:
| Classification | Meaning |
|---|---|
| Standard | Any enabled model may be used |
| Internal | Only models from a provider cleared for the internal (on-prem) trust tier |
Each classification maps to a minimum model trust tier: standard requires no tier,
internal requires the top tier (the internal / on-prem tier). The picker filters models by
their provider’s tier, so an Internal chat lists only tier-meeting providers (plus auto,
which re-picks compatibly).
Internal is fail-closed: there is no path - primary model, auto pick, or fallback - to a
provider that isn’t cleared for the data. Your organization may set a governance floor
(min_tier); the chat’s effective requirement is the stricter of that floor and its own
classification, so you can make a chat stricter than your org mandates but never looser.
How persistence works
The per-chat controls are saved on the chat the moment you change them (security, mode, and memory access write immediately; the model is carried with each turn). When you reopen a chat, its saved picks are restored. Starting from a new-chat draft, the picks you set up front are folded into the created chat’s configuration so they survive the second turn and reloads — a draft set to Autonomous, for example, stays autonomous instead of reverting to your default on the next message.
Because each control is independent and stored separately, mixing them is the point: an Internal, Approve-each, Plan chat for sensitive work, and a Standard, Autonomous, Execute chat for quick scratch tasks, both live alongside each other with their own settings intact.
Slash commands
Type / at the start of the composer to open the command palette. Some commands run an
action immediately; others drop a ready-made prompt into the composer for you to send.
| Command | Does |
|---|---|
/new |
Start a new conversation. |
/rename <title> |
Rename the current chat. |
/btw <question> |
A quick research aside that is not added to the conversation (see side questions). |
/goal <goal> |
The agent works toward the goal autonomously across multiple steps. |
/main <message?> |
Jump to the main chat — or, with a message, send it there without leaving. |
/summarize |
Summarize this conversation. |
/proofread |
Fix spelling and grammar. |
In a coding chat you also get workspace commands: /terminal (toggle the terminal panel),
/review (review current workspace changes), /explain <path>, /fix <what>, /tests, and
/init.
Your own commands
Define reusable shortcuts under Settings → Commands: give the command a name, a template,
an optional description, and an optional mode (limit it to standard or coding chats).
Use $ARGUMENTS (or {args}) in the template to inject whatever you type after the command.
Your custom commands appear in the same / palette alongside the built-ins.