@push('scripts') @endpush

Chat Interface

Interactive conversations with your AI agents

@if(count($registeredAgents) > 0)
Session: {{ substr($sessionId, -8) }}
@else
No agents registered
@endif

Agent Details

@if($activeTab === 'agent-info' && $selectedAgent && !empty($agentInfo))

{{ $agentInfo['name'] ?? 'Unknown Agent' }}

AI Agent

@if(isset($agentInfo['tools']) && count($agentInfo['tools']) > 0)
{{ count($agentInfo['tools']) }} tools
@endif @if(isset($agentInfo['subAgents']) && count($agentInfo['subAgents']) > 0)
{{ count($agentInfo['subAgents']) }} sub-agents
@endif
@if(isset($agentInfo['error'])) Error @else Active @endif
@if(isset($agentInfo['error']))

Agent Error

{{ $agentInfo['error'] }}
@endif

Instructions

{{ $agentInfo['instructions'] ?? 'No instructions available' }}
@if(isset($agentInfo['tools']) && count($agentInfo['tools']) > 0)

Available Tools

{{ count($agentInfo['tools']) }}
@foreach($agentInfo['tools'] as $tool)
{{ $tool['name'] }}

{{ Str::limit($tool['description'], 80) }}

@endforeach
@endif @if(isset($agentInfo['subAgents']) && count($agentInfo['subAgents']) > 0)

Available Sub-Agents

{{ count($agentInfo['subAgents']) }}
@foreach($agentInfo['subAgents'] as $subAgent)
{{ $subAgent['name'] }}

{{ $subAgent['description'] }}

@endforeach
@endif
@elseif($activeTab === 'agent-info' && !$selectedAgent)

No Agent Selected

Choose an agent from the dropdown above to view its information, capabilities, and configuration details.

@elseif($activeTab === 'agent-info' && $selectedAgent && empty($agentInfo))

Loading Agent Info...

Loading agent information for {{ $selectedAgent }}

@endif @if($activeTab === 'session-memory') @if($selectedAgent)

Session Management

{{ $sessionId }}

{{ count($chatHistory) }} msgs
Active
@if(isset($contextData['error']))

Context Error

{{ $contextData['error'] }}
@endif
@if(!empty($contextStateData)) @include('vizra-adk::components.json-viewer', [ 'data' => $contextStateData, 'title' => 'Context State', 'icon' => '', 'bgColor' => 'bg-purple-900/20', 'borderColor' => 'border-purple-800/40', 'textColor' => 'text-purple-200', 'titleColor' => 'text-purple-300', 'iconColor' => 'text-purple-400', 'expandable' => true, 'startCollapsed' => false, 'copyable' => true, 'collapsible' => true ]) @else
No context state data available
@endif
@if(!empty($sessionData)) @include('vizra-adk::components.json-viewer', [ 'data' => $sessionData, 'title' => 'Session Data (Short-term)', 'icon' => '', 'bgColor' => 'bg-blue-900/20', 'borderColor' => 'border-blue-800/40', 'textColor' => 'text-blue-200', 'titleColor' => 'text-blue-300', 'iconColor' => 'text-blue-400', 'expandable' => true, 'startCollapsed' => false, 'copyable' => true, 'collapsible' => true ]) @else
No session data available
@endif
@if(!empty($longTermMemoryData)) @include('vizra-adk::components.json-viewer', [ 'data' => $longTermMemoryData, 'title' => 'Memory Data (Long-term)', 'icon' => '', 'bgColor' => 'bg-green-900/20', 'borderColor' => 'border-green-800/40', 'textColor' => 'text-green-200', 'titleColor' => 'text-green-300', 'iconColor' => 'text-green-400', 'expandable' => true, 'startCollapsed' => false, 'copyable' => true, 'collapsible' => true ]) @else
No long-term memory data available
@endif
@else

No Agent Selected

Choose an agent from the dropdown above to view session data, conversation context, and memory information.

@endif @endif @if($activeTab === 'traces')
@if(isset($traceData['error']))

Trace Error

{{ $traceData['error'] }}

@elseif(empty($traceData))

No Execution Traces

Execution traces will appear here after running the agent. Traces show the step-by-step execution flow including tool calls and responses.

@else

Execution Traces

{{ $sessionId }}

{{ count($traceData) }} spans
Available
@foreach($traceData as $rootSpan) @include('vizra-adk::partials.trace-span', ['span' => $rootSpan, 'level' => 0]) @endforeach
@endif
@endif

@if($selectedAgent) Chat with {{ $selectedAgent }} @else Chat Interface @endif

Session: {{ $sessionId }}

@if($selectedAgent && count($chatHistory) > 0) @endif
@if($selectedAgent) @if(count($chatHistory) === 0)

Start a conversation

Ready to chat with {{ $selectedAgent }}

Type a message below to begin your conversation

@else @foreach($chatHistory as $index => $chatMessage)
@if($chatMessage['role'] === 'user')

{{ $chatMessage['content'] }}

{{ $chatMessage['timestamp'] }}
@elseif($chatMessage['role'] === 'assistant')

{{ $chatMessage['content'] }}

{{ $selectedAgent }} {{ $chatMessage['timestamp'] }}
@elseif($chatMessage['role'] === 'error')

{{ $chatMessage['content'] }}

Error {{ $chatMessage['timestamp'] }}
@else @php $isSuccess = false; $displayContent = $chatMessage['content']; try { $jsonData = json_decode($chatMessage['content'], true); $isSuccess = isset($jsonData['status']) && $jsonData['status'] === 'success'; if ($isSuccess && isset($jsonData['message'])) { $displayContent = $jsonData['message']; } } catch (\Exception $e) {} @endphp
@if($isSuccess) @else @endif

{{ $displayContent }}

{{ $isSuccess ? 'Success' : 'System' }} {{ $chatMessage['timestamp'] }}
@endif
@endforeach

@if($isLoading && !$enableStreaming)
typing...
Processing your request...
@endif @endif @else

No Agent Selected

Choose an agent from the dropdown above to start chatting and exploring AI capabilities.

@endif
@if($selectedAgent)
@if($enableStreaming) Streaming enabled @endif
@if(!empty($message))
{{ strlen($message) }} / 2000 characters
@endif
@else

Select an agent to start chatting

@endif
@if($showLoadSessionModal) @endif