---
id: SCR-PFM-LLM-001
title: Jazz AI page
route: '/console/{tenantId}/agent'
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: Find and organize Jazz AI conversations and continue them in the full-page chat.
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 existing navigation entry or its recorded planned placement.
  - SCR-PFM-LLM-002 (expanding the panel's conversation)
exits_to:
  - The scoped query or directory and its history.
  - 'SCR-PFM-LLM-002 (the header panel, from any other page)'
displays:
  - field: 'Project folders, names and active-history counts'
    source: listAgentProjects (GET /api/agent/projects)
  - field: 'Filtered conversation summaries, previews and recent activity'
    source: listAgentConversations (GET /api/agent/conversations)
  - field: 'Selected title, project, scope and message history'
    source: 'getAgentConversation (GET /api/agent/conversations/{id})'
actions:
  - label: New Conversation
    operation_id: 'none: clears the chat; the conversation is created by the first send'
    permission: none
    confirm: false
  - label: Send (general question)
    operation_id: 'postAgentConversationMessages (POST /api/agent/conversations/{id}/messages)'
    permission: none
    confirm: false
  - label: New Project / Edit Project
    operation_id: 'createAgentProject (POST /api/agent/projects) / updateAgentProject (PATCH /api/agent/projects/{id})'
    permission: none
    confirm: false
  - label: Delete Project
    operation_id: 'deleteAgentProject (DELETE /api/agent/projects/{id})'
    permission: none
    confirm: true
  - label: Rename Conversation / Move to Project
    operation_id: 'updateAgentConversation (PATCH /api/agent/conversations/{id})'
    permission: none
    confirm: false
  - label: Archive / Restore
    operation_id: 'updateAgentConversation (PATCH /api/agent/conversations/{id})'
    permission: none
    confirm: false
  - label: Delete Conversation
    operation_id: 'deleteAgentConversation (DELETE /api/agent/conversations/{id})'
    permission: none
    confirm: true
  - label: Open Query / Open Directory (scoped conversation away from its work)
    operation_id: 'none: navigates to the scope address'
    permission: none
    confirm: false
states:
  - 'empty: suggestions appear before a conversation is selected'
  - 'loading: selected history and lists are being fetched'
  - 'error: failed mutation or reply produces a toast and restores input'
  - 'pending: the submitted question is shown while reply is awaited'
  - 'read-only: detached scoped history links back to its page'
  - 'no matches: the selected search returned no history'
validation:
  - BR-CAP-PFM-LLM-019-04
  - BR-CAP-PFM-LLM-019-05
  - BR-CAP-PFM-LLM-019-06
  - BR-CAP-PFM-LLM-019-08
  - BR-CAP-PFM-LLM-019-09
  - BR-CAP-PFM-LLM-019-10
  - BR-CAP-PFM-LLM-019-11
  - BR-CAP-PFM-LLM-020-06
patterns:
  - Full layout (side browser and centred chat column)
  - Design-system AlertDialog for destructive confirmation
  - Name dialog for project and conversation naming
  - Toasts for outcomes
  - Shared AgentChat component (also used by the header panel)
component: >-
  components/agent/agent-full-view.tsx, components/agent/conversation-browser.tsx,
  components/console/agent-chat.tsx
evidence:
  - >-
    react-console at baf6dae: app/(console)/console/[tenantId]/agent/page.tsx;
    components/agent/agent-full-view.tsx, conversation-browser.tsx, name-dialog.tsx, agent-provider.tsx;
    components/console/agent-chat.tsx; lib/agent/client.ts; components/console/nav-config.ts (unlisted
    destination).
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-MON-002, 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]
---

# Jazz AI page

## What the Screen Is For

Staff use the full page to browse project folders, find older exchanges and give a conversation more space. It describes the implemented prototype without approving its customer storage boundary.

## What It Shows and Lets People Do

The browser groups active histories by project and unfiled status, offers archive browsing and searches the selected list’s titles and messages. The shared chat supports general replies. People can name, file, archive, restore and remove history; deleting a project retains its conversations. Detached scoped histories link to their originating work rather than accepting general replies.

## States and Errors

The initial view offers suggestions. Pending sends show the submitted question and block another local send. Failed sends restore composer text and show a toast. Destructive actions require confirmation. Process restart replaces authored history with sample data.

## Patterns It Must Respect

AgentFullView uses a custom full-width frame with the browser hidden on small screens and a centred AgentChat column. Naming dialogs, destructive confirmation and toasts follow its existing component behavior.
