Chat
The chat overlay is the daily driver. Press ⌘; from anywhere on your Mac, ask a question, dismiss it, get back to what you were doing. No browser tab, no context switch.
This page covers the chat overlay, multi-window mode, sessions, and every keyboard shortcut.
Opening chat
| What you want | How |
|---|---|
| Open the chat overlay | ⌘; |
| Dismiss the overlay | ⌘; again, or Esc, or click outside |
| Open a new chat window | ⌘ N |
| Open the Management window | ⌘ ⇧ M (or Settings…, ⌘ ,, from the menu bar icon) |
The hotkey is configurable: Settings → General → Global Hotkey if ⌘; collides with another app.
Anatomy of a chat
| Element | What it does |
|---|---|
| Input bar | Type or paste your message. Enter to send, Shift + Enter for a new line. |
| Folder picker | Choose a trusted folder for scoped file, search, and git tools. Selecting one disables Sandbox for the agent. See Tasks. |
| Microphone | Click for voice input. Transcription Mode has its own configurable hotkey for typing into any app. |
| Model selector | Switch between local models, Apple Foundation, and any cloud providers you've connected. Reasoning-capable models get a Thinking control here — your choice sticks for the whole task, including tool-calling turns. |
| Agent selector | Switch the active agent. Theme, prompt, and memory swap with it. |
Get things done
When you ask the AI to do something — not just explain something — it writes a plan, calls tools to do the actual work, and shows you a verified summary at the end. You watch the to-do list tick off as it goes; it pauses to ask only when a question genuinely changes the outcome.
While it works, consecutive thinking and tool activity is grouped into a single expandable row — you see one compact "what it's doing" line, and can expand it for the step-by-step detail.
New custom agents have Sandbox execution enabled where supported. Use the input bar's trusted folder picker when the agent should work directly in a Mac folder; Osaurus disables that agent's Sandbox before granting scoped file, search, git, and shell tools. Re-enable Sandbox later from the agent's Abilities settings.
Sessions
Conversations are saved automatically. There's nothing to "save" — you'll find every chat in the sidebar.
The sidebar
Click the history icon (or use the sidebar toggle) to see your sessions, ordered by most recent.
Each session shows:
- A short title — generated by the model once the conversation has substance, so "Fix the CI flake in auth tests" instead of a truncated first message. You can turn model-generated titles off in Chat settings.
- A source badge — Chat, Plugin, API, Channel, Schedule, Watcher, Self-scheduled, or Imported — so you can see at a glance what kicked off the conversation
- Estimated token usage
The badge filter rail across the top lets you narrow by source. It hides itself when only one source is present.
The sidebar has two lenses at the top: Chats (your history) and Projects. Switch to Projects to group related chats so they share instructions, knowledge, and memory — see Projects. Right-click any chat to Move to Project.
Active conversations
History floats active conversations to the top. A row shows Running… while work is active or queued, and Needs your input when the agent is waiting on a clarification or secret prompt. Use the row's visible Stop control (or right-click → Stop) to halt that run without opening it first.
Pinning, searching, deleting
| Action | How |
|---|---|
| Pin a chat to the top | Right-click → Pin — pinned chats stay above the recency-ordered list |
| Search | Type in the search field at the top of the sidebar |
| Select several chats | ⌘-click to multi-select, then archive or delete them in one action |
| Delete a session | Right-click → Delete |
| Delete one assistant reply | Use the reply's action menu; optionally delete its paired user prompt too |
| Clear current chat | Type /clear in the input bar |
| Delete one agent's data | Open that agent's management page and choose Delete All Data |
| Wipe everything | Delete sessions from the sidebar, or Settings → General → Factory Reset (removes all app data) |
Wiping is irreversible. Use Management → Privacy → Storage → Export plaintext backup first if you want to keep them. Storage details →
Importing conversations
Use the History import action to bring existing conversations into Osaurus. Supported exports include:
- ChatGPT
conversations.json - Claude export JSON
- Grok account exports
- Gemini Takeout
MyActivity.json - Open WebUI chat exports
- Generic JSON containing
conversations[].messages[](or one top-levelmessagesarray)
Select one or more .json or .zip files. Osaurus scans recognizable JSON files inside each archive, including large ZIP64 exports.
Imported rows keep their original dates, receive an Imported badge, and briefly highlight so you can find them. Re-imports with the same stable conversation ID are skipped.
Parsing progress updates live. Multiple selections are processed independently, so usable conversations still import when another file is unreadable; a final warning summarizes anything skipped.
Resuming a session
Click any session in the sidebar to load it in the current window. Right-click → Open in New Window to keep your current chat untouched.
Offline fallback
Connectivity drives model availability automatically. If the network drops, remote models disappear from the picker and an affected chat falls back to an available on-device chat model. The agent's cloud default is not overwritten; it is restored when connectivity returns.
Multi-window
Press ⌘ N to open a new chat window. Each window is fully independent:
- Separate conversation
- Separate active agent (with its own theme)
- Separate model selection
- Separate trusted-folder / Sandbox mode
Useful patterns:
| Window 1 | Window 2 | Window 3 |
|---|---|---|
Code Assistant on ~/projects/api | Research Helper | Creative Writer |
| Sandboxed agent running build/test | Browsing the web | Drafting a post |
Pin to top
Click the pin icon in the title bar to keep a window floating above all other apps. Useful for a reference conversation while you code, or watching a long-running agent task.
Window management
| Shortcut | Action |
|---|---|
⌘ N | New window |
⌘ W | Close current window |
| Drag titlebar | Move |
| Drag corner | Resize |
Closing a window doesn't delete the session — you can reopen it from the sidebar of any window.
Voice input
Click the microphone in the input bar to dictate your next message. All transcription is on-device via FluidAudio on the Apple Neural Engine — nothing leaves your Mac.
Two related features that are not in the chat overlay:
- VAD (wake-word) — say a phrase like "Hey Osaurus" or your agent's name to open chat hands-free.
- Transcription Mode — global hotkey that types into any focused text field, anywhere on your Mac.
Markdown, code, copy
Responses are rendered with full Markdown:
- Code blocks with syntax highlighting
- Headings, lists, tables
- Inline code, bold, italics
- Clickable links
Hover over any message to reveal a copy button.
If a response is heading the wrong direction, click Stop to interrupt streaming, edit your prompt, and try again.
Generated images open in a full-screen preview when clicked.
AI-generated follow-up suggestions are on by default and appear beneath the latest completed assistant response. Select one to send it as the next user message. You can turn suggestions off in Chat settings and optionally choose a different suggestion model per agent.
Context compaction
Long conversations can use a configured Compaction Model to summarize older turns before the chat reaches its context limit. Choose it under Settings → Chat → Compaction Model; if none is configured, the first compaction asks you to pick one.
- The manual Compact conversation action appears in the Context Budget popover after 70% utilization.
- Before a send at 85% utilization, Osaurus compacts automatically.
- The two most recent user exchanges normally stay verbatim while older turns are replaced by a summary in the model's outbound context.
- The visible transcript is unchanged. An expandable Older messages summarized marker shows the boundary and the exact summary the model receives.
If the compaction model is remote, the request honors your Privacy Filter settings before it leaves the Mac.
Chat settings
Generation settings — system prompt, temperature, max tokens — live in the Management window under Chat. Per-agent overrides live in the agent's settings (Management → Agents). Agents →
Menu bar icon
The Osaurus menu bar icon stays out of your way. Click it to:
- Start/stop the server
- Open the Management window (Settings…,
⌘ ,) - See server status
- Toggle VAD listening on/off
A small dot on the icon means VAD is on:
| Dot | What it means |
|---|---|
| Blue, pulsing | VAD is listening for wake words |
| Orange | VAD is processing audio |
| None | VAD is off |
Complete keyboard shortcut reference
Global
| Shortcut | Action |
|---|---|
⌘; | Toggle chat overlay |
⌘ ⇧ M | Open Management window |
| (custom) | Transcription Mode (set in Voice settings) |
| (custom) | VAD wake phrase (set in Voice settings) |
Chat window
| Shortcut | Action |
|---|---|
⌘ N | New window |
⌘ W | Close current window |
Enter | Send message |
Shift + Enter | New line |
Esc | Dismiss the overlay |
/clear | Clear current conversation (slash command) |
/title | Generate a title for the current chat |
Management window
| Shortcut | Action |
|---|---|
⌘ , | Open application Settings |
⌘ W | Close window |
Text editing
Standard macOS shortcuts (⌘ A, ⌘ C, ⌘ V, ⌘ X, ⌘ Z, ⌘ ⇧ Z) work in every input field.
Customizing hotkeys
⌘; and the Transcription Mode hotkey are remappable. See Settings → General and Voice → Transcription.
Supported modifiers: ⌘ Command, ⌥ Option, ⌃ Control, ⇧ Shift. Combine with any letter, number, or function key.
Related:
- Tasks — what happens when you point a chat at a folder or toggle sandbox
- Agents — specialized assistants per task
- Voice Input — dictation, wake words, global transcription
- Themes — make the overlay yours