Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.wittify.ai/llms.txt

Use this file to discover all available pages before exploring further.

Chats is the conversation list inside a project. Each row is a session that remembers its own message history, the knowledge bases attached to it, and the SQL sources attached to it. Three sub-views: Chats (active, the default), Archived conversations, and Deleted conversations.

Reaching this page

The Chats entry sits in the Chat with Your Documents sidebar between SQL Sources and Project Settings. It is a chevron-toggle parent: clicking the Chats label opens the active list, the chevron expands two collapsible children (Archived and Deleted) which start collapsed and auto-expand only when you are already on the matching sub-route. The topbar breadcrumb on every sub-view reads Chat with Your Documents / {project name} / Chats.

What happens when you click Chats

The active list does not present a picker. The page auto-creates a fresh conversation the moment it loads, attaches every knowledge base in the project to it, attaches every SQL source in the project to it, and routes you straight into the Chat Canvas at /chat-with-docs/{project}/chats/{new session id}. While the new session is being created the body shows a centered loading spinner so the previous session list does not flash first. This mirrors the “click logo, fresh chat” pattern in ChatGPT and Claude. To narrow the scope of the new conversation, use the Scope filter inside the chat composer once you are on the canvas. To go back to the conversation list itself, click any of the three sub-tabs (Chats, Archived, Deleted) again, or click any session row in the sidebar. If the auto-create fails, the page shows the manual Start a conversation dialog instead and surfaces a toast with the server message or the fallback Couldn’t start the conversation. Try again.
ElementWhat you see
TitleChats, Archived conversations, or Deleted conversations depending on the sub-view.
Subtitle (active)Every conversation your team has with this project.
Subtitle (archived)Archived conversations.
Subtitle (deleted)Deleted conversations.
+ New conversation buttonBrand-gradient pill on the end edge. Visible only on the active sub-view, and only when the project already has at least one session. Opens the manual Start a conversation dialog.
When the page is in its loading state, three pulsing placeholder cards render in place of the list.

Active list

The active list shows every live (un-archived, un-deleted) conversation in this project.

Search and count row

Above the rows:
ElementWhat it does
Search conversations fieldFilters the list by title and last-message text. Sanitizes input as you type, capped at 120 characters. Search is case-insensitive.
Count caption conversations. Updates live as you filter.

Session row

Each row is a card with a left-side body and a hover overflow menu on the end edge.
ElementWhat it shows
TitleThe conversation’s title, or Untitled conversation if none. Long titles truncate.
Preview lineThe last message in the conversation, truncated to one line.
Knowledge base chipA small book icon and the count of attached knowledge bases (only shown when greater than zero).
SQL source chipA small database icon and the count of attached SQL sources (only shown when greater than zero).
DateA short month-and-day label (e.g. Apr 12) on the end edge of the meta row.
ClickOpens the Chat Canvas for that session.
Hover overflow buttonA three-dot button on the end edge. Tooltip Conversation options. Hidden until you hover the row.

Per-row overflow menu

The dropdown’s contents change based on the sub-view:
Sub-viewMenu items
ActiveArchive, Delete.
ArchivedRestore.
DeletedRestore, Delete forever.
Archive moves the session to the Archived conversations list. Toast on success: Archive. Toast on failure: Couldn’t load the conversation. Delete opens the soft-delete confirmation. The session is moved to the trash where it can still be restored. Restore moves the session back to the active list (no confirmation prompt). Delete forever opens the typed-keyword permanent-delete confirmation.

Empty states

Each sub-view has its own empty card.
Sub-viewTitleHintButton
ActiveNo conversations yetConversations you start with this project will appear here.Start a conversation (brand-gradient).
ArchivedNothing archived(no hint)(no button)
DeletedNothing in the trash(no hint)(no button)
The active empty state’s button opens the same Start a conversation dialog as the page-header + New conversation button.

Manual Start a conversation dialog

The dialog is shown when the auto-create flow fails or when you click + New conversation on a populated active list.
ElementWhat it shows
TitleStart a conversation
DescriptionPick the databases this conversation can draw from. All knowledge bases in this project attach automatically; narrow per-turn from the chat filter.
Knowledge base summary stripA small book icon plus a hint. When the project has at least one KB: {count} knowledge bases in this project will be available. Narrow per-turn from the chat filter. When it has none: No knowledge bases in this project yet. Add one to let the chat answer from documents.
SQL sources pickerA scrollable list of SQL sources with a checkbox per row. Every source is checked by default each time the dialog opens. Empty state: No SQL sources yet.
Inline error lineThe dialog surfaces backend error messages directly under the picker if anything fails.
Cancel buttonOutline style, end edge. Disabled while the request is in flight.
Start submit buttonBrand-gradient pill. While submitting, label is Starting with a spinner.
The dialog auto-binds every knowledge base in the project even when you submit with zero SQL sources selected. Per-turn narrowing happens later in the chat composer’s Scope panel. On success, the dialog closes, the new session appears in the sidebar list immediately, and you are routed to the Chat Canvas at /chat-with-docs/{project}/chats/{new session id}.

Soft-delete confirmation

Triggered by Delete in the per-row menu (active or archived sub-view).
ElementWhat it says
TitleDelete this conversation?
BodyThis moves the conversation to the deleted bin. You can restore it from there.
Targeted nameThe conversation’s title (or Untitled conversation) shown in bold below the body.
Cancel buttonCloses without deleting. Disabled while a delete is in flight.
Delete buttonDestructive (red background, white text) per the global rule. Spinner while in flight.
Toast on success: Delete. Toast on failure: Couldn’t load the conversation.

Permanent-delete confirmation

Triggered by Delete forever in the per-row menu of the deleted sub-view.
ElementWhat it says
TitleDelete this conversation forever?
BodyThis removes the conversation, its messages, and every citation attached to it. It cannot be restored after.
Targeted nameThe conversation’s title (or Untitled conversation) shown in bold below the body.
Type DELETE to confirm inputType the keyword DELETE to confirm. The placeholder reads DELETE.
Cancel buttonCloses without deleting. Disabled while a delete is in flight.
Delete forever buttonRed destructive button. Disabled until the input matches DELETE exactly (case-sensitive). Label changes to Deleting with a spinner while running.
Toast on success: Conversation deleted. Toast on failure: Couldn’t delete the conversation. Try again.

Permissions

The Chats list respects your role inside the workspace.
ActionOwnerAdminAnalystViewer
View the list and open sessionsYesYesYesYes
Start a new conversationYesYesYesNo
ArchiveYesYesYesNo
RestoreYesYesYesNo
Delete (soft)YesYesYesNo
Delete foreverYesYesNoNo
If a control is hidden the backend still re-checks the action, so a forged request from a viewer’s browser will be rejected.

Common questions

That is the active sub-view’s intended behavior, it auto-creates a fresh chat each time you click the parent Chats entry, the same as ChatGPT or Claude. To see your past conversations, click the chevron next to Chats in the sidebar to expand the children, then click Archived or Deleted, or pick any past session from the sidebar list directly.
That is intentional. The three-dot button shows on hover and on keyboard focus so the row body stays uncluttered. Tab to the row to reveal it without using the mouse.
Archive keeps the conversation searchable inside the Archived conversations sub-tab. Delete moves it to the trash, where it can either be restored or removed permanently. Archiving is the right choice when you want to keep a record but clear the active list.
The input is case-sensitive and rejects spaces, tabs, and newlines. Type DELETE in capital letters with nothing before or after.
Citations resolve against the source document, not the conversation. Deleting the conversation does not delete the source, so citations from other chats keep working. If they don’t, the source itself was removed (a knowledge base was deleted, or the document was removed). Check the source’s knowledge base.
The buttons do the same thing. The empty state uses Start a conversation because there is nothing else on the page to anchor the call to action; the populated list uses + New conversation in the page header because the rows already imply existing chats.
Search runs over the conversation’s title and over the last message text only. It does not full-text search every message in every chat. Open the conversation and use the canvas’s history if you need a more targeted search.
The auto-create flow surfaces backend errors verbatim. The most common cause is a transient network blip; click Start a conversation in the manual dialog and try again. If the dialog also fails, check Project Settings to confirm the project still exists and your role still has create permission.

Where to go next

Chat Canvas

The single-session view, where you actually chat.

Knowledge Bases

Add documents your conversation can draw on.

SQL Sources

Connect a database for live SQL answers.

Share Links

Publish a chat or session to a public URL.