---
id: SCR-PFM-LLM-002
title: Ask Jazz AI panel
route: (every console page) header Ask Jazz AI button and side panel
surface: console
product_area: platform
module: llm
revision: 1
status: draft
design_intent: proposed
implementation_evidence: observed
inference:
  - IOP-PFM-LLM-001
  - IOP-PFM-LLM-002
source_sha:
  react-console: baf6dae382d6f41dce976c7f848667ccc37e076f
purpose: Ask general questions or change registered query and directory work beside the current page.
supports:
  - JNY-PFM-LLM-005
  - CAP-PFM-LLM-019
  - CAP-PFM-LLM-020
permission: >-
  none: any signed-in console user; no AI permission or organization AI switch is checked (an open product
  question)
entry_from:
  - The shared header assistant entry.
  - The originating query or directory.
exits_to:
  - SCR-PFM-LLM-001 (the full page)
  - The scoped query or directory and its history.
displays:
  - field: Conversation messages with project and scope context
    source: 'getAgentConversation (GET /api/agent/conversations/{id})'
  - field: Page-provided scope introduction and suggestions
    source: the registering page (query workspace or record directory)
  - field: Applied-change indicators and the latest available undo
    source: the conversation's messages and the registering page's undo stack
actions:
  - label: Send (general question)
    operation_id: 'postAgentConversationMessages (POST /api/agent/conversations/{id}/messages)'
    permission: none
    confirm: false
  - label: Send (refine the registered query)
    operation_id: 'Describe With AI generation (Queries), then postAgentConversationMessages to append the exchange'
    permission: the query dataset's own permissions
    confirm: false
  - label: Send (filter the registered directory)
    operation_id: 'none: local interpretation by the directory, then postAgentConversationMessages to append the exchange'
    permission: the directory's own permissions
    confirm: false
  - label: Undo
    operation_id: >-
      none: the registering page restores its previous state; then postAgentConversationMessages appends a
      note
    permission: none
    confirm: false
states:
  - 'closed: only the header entry remains'
  - 'empty: general or scoped suggestions precede messages'
  - 'pending: general reply or registered page update is in progress'
  - 'error: a failed handler or history write produces a toast'
  - 'read-only: detached scoped history cannot invoke its page handler'
validation:
  - BR-CAP-PFM-LLM-019-01
  - BR-CAP-PFM-LLM-019-04
  - BR-CAP-PFM-LLM-020-01
  - BR-CAP-PFM-LLM-020-02
  - BR-CAP-PFM-LLM-020-03
  - BR-CAP-PFM-LLM-020-06
  - BR-CAP-PFM-LLM-020-08
patterns:
  - Console side panel opened from the site header
  - Shared AgentChat component
  - Page scope registration (a page registers what Jazz AI may change and how to undo it)
  - Toasts for outcomes
component: >-
  components/console/agent-panel.tsx, components/console/agent-chat.tsx, components/agent/agent-provider.tsx,
  components/console/site-header.tsx
evidence:
  - >-
    react-console at baf6dae: components/console/site-header.tsx; components/console/agent-panel.tsx,
    agent-chat.tsx; components/agent/agent-provider.tsx; components/queries/query-workspace.tsx (refine,
    openRefine, useAgentScope); components/record-explorer/use-explorer-assistant.ts; lib/queries/client.ts.
controls: [TC-AI-001, TC-AI-002, TC-AI-003, TC-AI-004, TC-AI-005, TC-AI-006, TC-AI-007, TC-AVL-001, TC-AVL-004, TC-AVL-005, TC-AZ-001, TC-AZ-002, TC-AZ-003, TC-AZ-004, TC-AZ-006, TC-CRY-001, TC-CRY-002, TC-CRY-003, TC-CRY-004, TC-DAT-001, TC-DAT-002, TC-DAT-003, TC-DAT-004, TC-DAT-006, TC-IAM-001, TC-IAM-002, TC-IAM-004, TC-IAM-005, TC-LOG-001, TC-LOG-002, TC-LOG-003, TC-LOG-004, TC-LOG-005, TC-MON-001, TC-PI-001, TC-PI-002, TC-PI-003, TC-PI-004, TC-PI-005, TC-PRV-001, TC-PRV-002, TC-TEN-001, TC-TEN-002, TC-TEN-003, TC-VEN-001, TC-VEN-002, TC-VEN-003]
---

# Ask Jazz AI panel

## What the Screen Is For

The header panel keeps assistance beside the page. A registered scope supplies its own change and undo behavior; ordinary pages use general chat.

## What It Shows and Lets People Do

The panel presents the active scope, suggestions and conversation. Query descriptions consume metered generation, while directory descriptions use local interpretation. Successful changes apply to the visible unsaved work before their exchanges are recorded. Undo restores page state before appending its note. Detached history offers navigation back to its work.

## States and Errors

Pending states distinguish general replies, query updates and filter updates. A refusal becomes the reply without altering work. A later history-write error can preserve an already applied change while restoring submitted text for another attempt.

## Patterns It Must Respect

The existing side panel hosts AgentChat. Pages register their handlers through the agent provider rather than granting chat direct control of page state.
