chat-and-conversations
Chat & Conversations
Conversations are the core interaction model in Ariadne. Every message you send to an agent — and every reply — is stored in a conversation, giving you a persistent, searchable history.
Starting a Conversation
- Click Home → Chat (or Code / Query depending on your focus)
- Select an agent from the agent picker, or use the default agent
- Type your message in the input box and press Enter or click Send
The agent's response streams in real time, token by token.
Conversation Modes
Choose the mode that matches your task:
| Mode | Description |
|---|---|
| Chat | General-purpose assistant. Good for questions, writing, research, and analysis. |
| Code | Coding assistant with direct access to files, terminals, and build tools on a connected client. See Code Mode & Remote Development Environments. |
| Query | Focused on structured data. Use this when working with databases, CSV files, or analytical tasks. |
You select the mode when creating a new conversation. The mode influences the agent's behaviour and which tools it has access to.
Code mode is more than a code-generating chat. When a Desktop app, local Console instance, or Docker Console container is connected, the agent gains real file and terminal access — it can read your codebase, run your build and test suite, and apply changes directly. See Code Mode & Remote Development Environments for the full picture.
The Side Panel — Artifacts, Canvas and Data
Every conversation has one docked panel on the right, opened with the Artifacts & canvas button in the conversation header. It has up to three tabs, and it is resizable by dragging its left edge.
Artifacts
Artifacts is what this conversation has produced, lifted out of the transcript and shown at a size worth reading: documents, rendered HTML, images, code blocks and files the agent wrote. It is derived from the messages themselves, so nothing can drift out of sync — an artifact is always something actually in the conversation.
The tab badges the number of artifacts. Select one to read it in full; the selection survives the agent streaming new tokens, so you can read a long document while it is still talking.
Text-shaped artifacts carry an Edit as canvas button. That is the bridge between the two tabs: a snippet the agent produced becomes a document the two of you co-edit, with no copy-paste round trip. A document the agent already opened as a canvas shows Open in canvas instead.
Canvas
Canvas is a document you and the agent edit at the same time. It is a real note, with tracked revisions and attribution, not a scratch buffer.
- The agent can open one by itself. When it calls
open_canvas, the panel docks on the canvas tab showing that document. That is the point of the tool — it puts a document in front of you. - Agent edits appear as they happen, without a refresh.
- Your edits are never silently overwritten. If an update arrives from the agent while you have unsaved changes, you are told rather than having your text replaced, and you choose: Discard mine & reload, or Keep mine & save.
- Your edits reach the agent as a note on its next turn — deliberately not as a new message, so tweaking a sentence while the agent is writing does not cancel what it is doing.
- History (the clock icon) lists every tracked revision with who made it and when.
- The document dropdown at the top switches between the conversation's documents, and the + button starts a new one.
Good for drafting documents, writing code you want to review as it lands, and structured output — tables, outlines and plans — that you both keep editing.
The same canvas appears on the Notes page and on a project's Canvas tab (Project Workspaces), and behaves identically in all three.
Data
In Query mode conversations only, a third Data tab shows the structured output of the conversation's data tools. It opens by itself the first time there is something to show.
Attaching Files
You can attach files to a conversation to give the agent additional context:
- Images – the agent can describe, analyse, or reason about image content
- Documents – PDFs, text files, spreadsheets; the agent can read and discuss their contents
- Large files – automatically indexed for chunk-based search when the file exceeds a size threshold
To attach a file, click the paperclip icon (📎) in the message input area, or drag-and-drop a file onto the chat window.
Voice Input (Speech Recognition)
You can speak to Ariadne instead of typing. The web UI and Desktop app both support microphone input for hands-free conversation.
In the Web UI
Click the microphone icon 🎤 in the message input bar to start recording. Speak your message, then click again to stop. The audio is transcribed and sent as your message. Transcription uses the configured speech recognition service (Whisper-based by default).
In the Desktop App
The Desktop app captures audio from your configured microphone directly. Microphone input is available throughout the conversation — click the microphone button or use the keyboard shortcut to toggle listening.
Voice Satellites
For hands-free, always-on voice interaction, Ariadne supports Wyoming-compatible voice satellites — dedicated hardware devices (such as the Home Assistant Voice PE) that listen for a wake word and stream audio to Ariadne. See Account & Organisation → Voice Accessories for setup instructions.
Voice satellite features include:
- Wake word detection — the satellite listens continuously and activates on your chosen wake word
- Barge-in — you can interrupt the agent's spoken response by starting to speak
- Text-to-speech replies — the agent's responses are read aloud via the satellite's speaker
- mDNS discovery — satellites on your local network are discovered automatically
Camera & Image Input
Ariadne can receive live images from your webcam or a screen share and send them to the agent as visual context. This enables real-time visual analysis without you needing to manually capture and upload screenshots.
Webcam Input (Web UI)
Click the camera icon 📷 in the chat input bar to activate your webcam. The browser will ask for camera permission. Once enabled:
- A live preview is shown in the input area
- Each time you send a message, the current webcam frame is captured and attached automatically
- The agent can see and describe what the camera is pointing at
This is useful for: getting help with physical objects, documents on your desk, handwritten notes, hardware problems, or anything in front of you.
Screen Share / Desktop Capture (Web UI)
Click the screen share icon 🖥️ in the chat input bar to capture your screen or a specific browser tab:
- You choose what to share (full screen, window, or tab)
- Each message you send includes a snapshot of the current state of the shared screen
- The agent can read text, describe UI elements, and help with what's visible on screen
This is useful for: getting help with software, debugging UI issues, reviewing a document visible on screen, or asking questions about anything currently on your display.
Webcam Input (Desktop App)
The Desktop app supports webcam capture using your system camera via OpenCV. The camera feed can be activated from the input controls, and frames are sent to the agent with your messages — the same visual context experience as the web UI, but natively on Windows.
Streaming Responses
Responses stream in as they are generated. You can:
- Cancel generation mid-stream by clicking the Stop button
- See tool calls as they happen — a tool icon appears with a summary of what the agent is doing
Tool Calls in the Chat
When an agent uses a tool, you'll see an inline summary below the message (e.g. "3 results for 'quantum computing'" for a web search). Click the ✓ / ✗ icon next to a tool call to open a full result view in a modal.
Rich displays are available for:
- Web search results – clickable result cards with title, URL, snippet, score, and published date
- Fetched URLs – metadata bar with URL, content type, and file size; inline content or start/end preview
- HTML rendering – tool results with raw HTML content rendered inline as a chat bubble
- All other tools – Markdown-rendered output with syntax-highlighted code blocks
Managing Conversations
Conversation Sidebar
The left sidebar lists all your conversations. Click any conversation to open it. Conversations are ordered by most recent activity.
Searching Conversations
Use the search bar at the top of the sidebar to find a conversation by content or title.
Deleting a Conversation
Open the conversation, click the ⋮ menu, and select Delete. This is permanent.
Editing a Turn
You can edit a previous user message by hovering over it and clicking the Edit icon. The conversation will re-run from that point.
Deleting a Turn
Remove a specific exchange from the history via the ⋮ menu on a message bubble.
Per-Conversation Settings
Most things you would expect to be a global setting can be decided per conversation, from the Conversation Properties panel (the ⋮ menu on the conversation header). One chat can use a different agent, a different set of tools and a different set of MCP servers from the one beside it.
The panel has tabs:
| Tab | What you can change |
|---|---|
| General | Conversation id, owner, agent, project, summary, and token usage for this conversation |
| Members | Who else is in the conversation, and sharing it with another user |
| Data Sources | Structured data this conversation can query (see below) |
| Tools | Which tools the agent may use here, individually |
| MCP | Which MCP servers this conversation may use |
| Files | Files attached to this conversation; download or remove them |
| References | Items retrieved into this conversation by semantic search, removable if one is wrong |
Agent
The Agent dropdown changes which agent the conversation belongs to — its prompt, its model and its tool collections — and the change sticks: every client that opens the conversation afterwards, and any server-side work on it, picks up the new agent. Replies already written keep the agent that wrote them.
Project
Binding a conversation to a project puts that project's charter into the agent's prompt on every turn, so the chat already knows what you are building and how you work. See Project Workspaces. This is independent of the conversation's mode and of which channel it arrived on.
Tools
Every tool available to the agent is listed with a switch, MCP-provided ones marked (MCP). Turning one
off here removes it from this conversation only. This is useful both for focus and for cost — every tool
offered to the model costs context on every single turn.
MCP servers
MCP servers are off by default in a new conversation, even when they are attached to the agent. A server is switched on when:
- you tick it in this tab, or
- your message names it ("use the Jira server…"), or
- the agent asks for it and turns it on itself with
enable_mcp_server.
The reason is cost. A server's tool schemas are the single largest line in a request, and an agent with several servers attached would otherwise spend most of its context describing capabilities the conversation is never going to touch. Nothing is paid for until something asks for it.
Servers needing a sign-in stay off until you connect them — the tab shows each server's auth state and a Connect or Set my token button where one applies. See MCP Servers.
Data Sources
You can attach structured data sources to a conversation to let the agent query them directly:
- DuckDB / SQLite – attach a database file
- RSS feeds – attach a feed URL for the agent to read
- CSV / tabular data – uploaded as blob data sources
Once attached, the agent can run queries against the data source during the conversation.
Conversation Context, Compaction & Commands
Ariadne retains the full history of every conversation. For very long conversations, older turns are automatically compressed (abridged) to keep the context window manageable, and the agent can fetch earlier turns on demand when they become relevant again.
Action Commands
You can run native commands directly in the conversation input box (across both web/desktop UIs and the Console App):
/clear— Resets the conversation's active context window. It compacts the entire history to date into a single summary, retiring accumulated tools and clearing memory buffers to give the agent a clean slate while preserving history./cd <path>— Changes the active working directory for the session. Typing/cdinstantly redirects subsequent agent file tools and terminal commands (e.g.run_bashorexec_program) to the new directory.
Smart Diagnostics & Failure Tracking
To prevent agents from getting stuck in repetitive loops or failing continuously on identical errors:
- Repeated Failure Tracker: Ariadne monitors tool executions behind the scenes. If an agent encounters consecutive, identical failures (such as a repeating compiler error, or permission denials), the tracker intercepts the cycle, blocks further automated attempts, and prompts you with actionable advice or instructions to resolve the blocker.
- Truncated Tool Fetching: If a tool output is extremely large and gets truncated to save context window space, opening the UI's tool result modal instantly triggers a background chunk-fetch to retrieve the relevant missing segments, allowing you or the agent to inspect the full data safely.
Across conversations, the agent can store and retrieve memories — key pieces of information that persist and are surfaced when relevant. See Knowledge for more detail on how to manage this explicitly.