Skip to Content
PlatformCatalogAI assistant

AI assistant

The catalog ships with a built-in AI assistant — a chat panel that can read your catalog, answer questions, and take actions on your behalf with explicit approval. It’s the fastest way to do things you’d struggle to phrase as a series of clicks.

Where to find it

The chat panel docks to the right side of the catalog UI. Toggle it with the sparkle icon in the top bar, or via Spotlight (⌘K) → “AI assistant”.

What it knows

The assistant has live context on where you are:

  • Active workspace (org)
  • Currently-open collection (if any)
  • Active show (if a detail modal is open)
  • Whether you can mutate the current collection

This means “add this show” or “what’s in this collection” Just Works without explanation.

How a conversation flows

  1. Type a question or instruction in the input. Press Enter to send.
  2. The assistant streams a response.
  3. If it wants to take an action (add shows to a collection, create a collection, etc.), it surfaces an ActionCard above the message — a pending request for your approval.
  4. Click Approve to run the tool, Decline to dismiss it. Approved actions stream their result back into the conversation; completed cards offer a View result link where one applies.

This approval-gated tool-use is the assistant’s safety net: even an over-eager response can’t mutate the catalog without your explicit OK.

Auto-approved (read-only) tools

Three read-only tools run without a confirmation step — the chat shows a brief indicator (“Analyzing the catalog…”, “Listing collections…”, “Reading collection…”) and inlines the result:

ToolWhat it does
queryCatalogSearches and analyzes shows in the current workspace.
listCollectionsLists the collections you can see.
readCollectionReads the contents of one collection.

Mutating tools (always confirmed)

ToolWhat it does
createCollectionCreates a new (org or personal) collection.
renameCollectionRenames an existing collection.
deleteCollectionDeletes a collection.
addShowsToCollectionAdds one or more shows to a target collection.
removeShowsFromCollectionRemoves shows from a collection.

All five go through ActionCard approval. The assistant tells you what it’s about to do and waits — deleteCollection in particular never runs without your explicit OK. Show edits and vetting handoffs are not assistant tools; those happen in the grid and the collection action menu respectively.

Conversation history

Every conversation is persisted in the database. The history panel (a sidebar inside the chat) lists past conversations with auto-derived titles, sorted most-recent-first.

From the history list, you can:

  • Resume a past conversation
  • Rename it (titles are auto-generated from the first message; rename to anything memorable)
  • Delete it
  • Start a fresh one (the ”+” button at the top)

The current conversation ID is stored in localStorage so a page refresh drops you back into the same chat.

Suggested prompts

Below the input, the assistant shows suggestion chips — context-relevant starter prompts based on where you are. Examples:

  • On a collection: “Summarize this collection”, “What demographics does this collection skew?”, “Add 5 more comedy shows like these”
  • On the shows grid: “Find shows similar to <show name>”, “Group these by network”
  • With no active collection: “Help me build a pitch list for an outdoor brand”

Clicking a chip pre-fills the input — you can edit before sending.

Scope banner

If you have access to more than one org, the assistant shows a small scope banner at the top of the conversation with the active org name. It’s a reminder that “the catalog I’m talking about” is scoped to that workspace.

Switching orgs mid-conversation is supported; the banner updates and the assistant’s tools re-scope automatically.

Streaming

Responses stream token-by-token. The thinking indicator (an animated bar) replaces the placeholder until the first token arrives. You can:

  • Read along as the answer streams in.
  • Hit Stop to cancel mid-stream (the partial response is kept).
  • Wait for tool calls — when the model pauses to call a tool, you’ll see a “thinking…” or “running…” indicator until the tool finishes.

Permissions & access control

The assistant respects every permission you have in the UI. It can’t see shows you can’t see; it can’t write to a collection you can’t edit. RLS on the database is the source of truth — the AI is just a more efficient way to issue queries through it.

A view-only share recipient can chat about the collection but can’t approve any mutating actions on it.

Edge cases & gotchas

  • Long responses — for very long answers the chat panel scrolls; the input stays pinned to the bottom.
  • Failed tool execution — if an approved tool fails (e.g. the collection was deleted between approval and execution), the chat surfaces the error inline and the assistant explains what to do next.
  • Conversation gone — if you delete a conversation while it’s the current one, the chat resets to a fresh conversation.
  • Multiple browser tabs — each tab can have a different conversation open; conversation state is per-tab but the database list is shared. A deletion in tab A is reflected in tab B on next refresh.
  • AI hallucinations — the assistant is grounded by tool-use, but it can still misremember show names. When in doubt, click the show’s name in the chat to verify (the assistant inlines show links where possible).
  • Cost / latency — complex queries that involve searching many shows can take several seconds. The thinking indicator is your hint that it’s working, not stalled.

Choosing a model

The assistant routes through Frequency’s AI gateway, and you can pick which model answers. The model picker in the chat header offers:

  • Default — the platform-configured default.
  • Balanced · Claude Sonnet — best all-round quality.
  • Balanced · Gemini Flash — fast and cost-efficient.
  • Smart · Claude Opus — deepest reasoning; admins only.

Each finished response is stamped with the model that produced it, shown in small type under the message — useful when comparing answers. The picker is disabled mid-stream and hidden on small screens.

Last updated on