Concepts
Concepts
Section titled “Concepts”Chat is a conversational AI assistant that can act, not just answer. Four ideas explain everything it does: the conversation, tools, the approval gate, and the suite wiring.
The conversation
Section titled “The conversation”You send messages; Chat streams a reply back token by token. A conversation is an ordered list of messages with roles (user, assistant).
Conversations and their messages are stored server-side, in your workspace and under your user. That is why your history follows you: sign in from a different browser or a different machine and the same threads are there. You can list, rename, and delete conversations, and older messages load a page at a time (30 per page) as you scroll up.
Attachments
Section titled “Attachments”You can attach files to a message — either picked from your Drive library or uploaded straight from the composer (up to 50 MiB per file). Attachments replay across turns: once a file is attached to a conversation, later turns in that same conversation still know about it, so you don’t have to re-attach it every time you ask a follow-up question.
How Chat uses a file depends on its type:
- Plain text, JSON, and XML have their contents extracted and folded into the conversation as authoritative context.
- Images, video, audio, and PDFs get a presence block instead — name, MIME type, Drive file ID, and a short-lived download link. The agent knows the file is there, can talk about it, and can pass it to a tool that accepts a file or a URL, but the raw bytes are never inlined as text.
Either way the file is announced, never silently dropped.
Tools — how Chat acts
Section titled “Tools — how Chat acts”Chat runs an agentic loop: when your request matches something a tool can do, the model issues a tool call, Chat runs it, feeds the result back to the model, and the model continues — up to a bounded number of rounds — until it has a final answer for you. You see each step as it happens: the tool being called, its result, then the assistant’s words.
The registry is large — 47 tools when every capability is wired — and it is not fixed: each family appears only if the matching product or connection is available to your workspace. If a capability isn’t wired, the model simply never sees that tool, so it won’t promise something it can’t do.
| Family | What it covers | Powered by |
|---|---|---|
| Image generation | Generate an image from a prompt | Image generation |
| Voice | Synthesize narration; list and use ElevenLabs voices | Text-to-Speech and your connected ElevenLabs |
| Search, read, and draft Gmail | Your connected Gmail via Connect | |
| GitHub | List repos, read files, search code, read issues and PR diffs, draft issues and comments | Your connected GitHub via Connect |
| Slack | List channels, read a channel, draft a message | Your connected Slack via Connect |
| Linear | Search and read issues, draft creates and updates | Your connected Linear via Connect |
| Drive | List files, read a file, mint a download link | Drive |
| Build status | Snap branch listings and status, code-review status | Snap and Review |
| List and read customer conversations | Your connected WhatsApp via Connect | |
| Promo and video production | Capture a running app, compose and render a promo, or produce one end to end | The suite’s content pipeline |
| Connect bridge | Discover connected apps, make read or write calls against them, and ask you to connect one | Connect |
| Connect action catalog | Browse and run Connect’s typed, permission-aware actions | Connect |
See the reference for the exact tool names and which ones ask for approval.
The approval gate
Section titled “The approval gate”Some actions change the world outside Chat: sending an email, sending a Slack message, opening or commenting on a GitHub issue, creating or updating a Linear issue, or any write call through Connect. For those, Chat does not act on its own. Instead it:
- Drafts the action and pauses.
- Shows you the exact payload — recipients, subject, body, issue title — in an editable card.
- Waits for you to approve (optionally after editing the fields) or cancel.
Only after you approve does the action actually run, and the conversation resumes with the result. This is why Chat phrases these as “I’ve drafted…” rather than “I’ve sent…”.
A pending approval is durable — it is stored, not held in the memory of whichever process served your request — so the card survives a page reload or a service restart. It is single-use, and it expires after 30 minutes; if it lapses, the card shows as expired and nothing was sent.
The session-activity panel
Section titled “The session-activity panel”The reply text tells you what the agent said. The session-activity panel, opened from the conversation header, tells you what it did: the tools it called in this session and how each one turned out.
It is derived from the stored turns rather than from the live stream, which is the point — reload the page, come back tomorrow, or open the conversation on another machine, and the activity list is still there.
How Chat fits the suite
Section titled “How Chat fits the suite”Chat is a peer product, governed by the same rules as the rest of Destesi:
- One login, one workspace. You reach Chat through the shared launcher; your single sign-on session and active workspace come along. See Accounts & SSO and Workspaces.
- Connect owns external credentials. Chat never stores your GitHub token or Gmail OAuth. It fetches them at call time from Connect, scoped to your workspace, only when a tool needs them. Connect once; every product benefits.
- Drive is the sink. Images, voiceovers, and videos Chat creates are registered in Drive — not in a Chat-only silo.
- Other products do the heavy lifting. Chat is the conductor. The actual image rendering, speech synthesis, and video production happen in Image generation, Text-to-Speech, and Studio. Chat orchestrates them so you don’t have to switch products.
Access to Chat itself is governed by your workspace entitlements, just like every other product.