{{ config.companyName }}

{{ config.appName }}

Connecting to NetSuite...

🔐

NetSuite Connection Required

{{ authError }}

{{ config.companyName }}

{{ config.appName }}

Session: {{ sessionId ? sessionId.substring(0, 8) + '...' : 'Loading...' }}
NetSuite: {{ netsuiteAuth.accountId }} Not Connected
AI: {{ aiProvider.type }} / {{ aiProvider.model }} Not Configured
Tokens: {{ sessionInputTokens.toLocaleString() }} in / {{ sessionOutputTokens.toLocaleString() }} out ~${{ sessionCostUsd.toFixed(4) }}
Hello {{ netsuiteAuth.currentUser.firstName }}
Conversation
💬

Welcome to {{ config.appName }}

{{ netsuiteAuth.isAuthenticated ? 'Start a conversation or use the prompt library' : 'Please login' }}

You
{{ msg.content }}
{{ formatTime(msg.timestamp) }}
{{ config.agentName }}
{{ item }}
{{ statusMessage || 'Processing...' }}
Completed
{{ msg.introText }}
{{ msg.toolsUsed.join(', ') }}
{{ formatTime(msg.timestamp) }}
{{ statusMessage || 'Agent is thinking...' }}
Try: "Find contact john@example.com" or "Create a contact for Sarah Smith at sarah@company.com"
Last action: {{ lastResponse.action }}
{{ messages.length }} messages in conversation
Rendered Output
{{ formatTime(lastRenderedMessage.timestamp) }}

AI Model Settings

Provider: {{ aiProvider.name || aiProvider.type || 'Not configured' }}

Current Model: {{ aiProvider.model || 'Not selected' }}

Choose the AI model for processing requests

Provider and API keys are configured via the config/providers.json file on the server.

Conversation History
No conversations yet
{{ conv.title }}
{{ formatConvDate(conv.updatedAt) }} {{ conv.messageCount }} msgs
{{ isEditMode ? 'Edit Item' : (showAddForm ? 'Add Entry' : 'Prompt Library') }}
{{ item.label }} {{ item.type === 'search' ? 'Saved Search' : 'Report' }}
{{ promptLibrarySuccessMessage }}
No groups exist — add a group first.
{{ promptLibraryFormErrors.groupId }}
{{ promptLibraryFormErrors.label }}
{{ promptLibraryFormErrors.nsId }}
{{ promptLibraryFormErrors.prompt }}
⚠️
Oops!
{{ errorMessage }}