diff --git a/packages/cli/src/services/insight/generators/DataProcessor.ts b/packages/cli/src/services/insight/generators/DataProcessor.ts index 4120561be..a3cda424e 100644 --- a/packages/cli/src/services/insight/generators/DataProcessor.ts +++ b/packages/cli/src/services/insight/generators/DataProcessor.ts @@ -284,20 +284,20 @@ export class DataProcessor { facetsOutputDir?: string, onProgress?: InsightProgressCallback, ): Promise { - if (onProgress) onProgress('Scanning chat files', 0); + if (onProgress) onProgress('Scanning chat history...', 0); const allChatFiles = await this.scanChatFiles(baseDir); - if (onProgress) onProgress('Generating metrics', 10); + if (onProgress) onProgress('Crunching the numbers', 10); const metrics = await this.generateMetrics(allChatFiles, onProgress); - if (onProgress) onProgress('Analyzing sessions', 20); + if (onProgress) onProgress('Preparing sessions...', 20); const facets = await this.generateFacets( allChatFiles, facetsOutputDir, onProgress, ); - if (onProgress) onProgress('Generating qualitative insights', 80); + if (onProgress) onProgress('Generating personalized insights...', 80); const qualitative = await this.generateQualitativeInsights(metrics, facets); // Aggregate satisfaction, friction, success and outcome data from facets @@ -309,7 +309,7 @@ export class DataProcessor { goalsAgg, } = this.aggregateFacetsData(facets); - if (onProgress) onProgress('Finalizing report', 100); + if (onProgress) onProgress('Assembling report...', 100); return { ...metrics, @@ -924,7 +924,7 @@ None captured`; const percentComplete = batchEnd / totalFiles; const overallProgress = 10 + Math.round(percentComplete * 10); onProgress( - `Generating metrics (${batchEnd}/${totalFiles})`, + `Crunching the numbers (${batchEnd}/${totalFiles})`, overallProgress, ); } diff --git a/packages/cli/src/ui/commands/insightCommand.ts b/packages/cli/src/ui/commands/insightCommand.ts index 3ed78710f..1693254bb 100644 --- a/packages/cli/src/ui/commands/insightCommand.ts +++ b/packages/cli/src/ui/commands/insightCommand.ts @@ -53,6 +53,14 @@ export const insightCommand: SlashCommand = { context.ui.setPendingItem(progressItem); }; + context.ui.addItem( + { + type: MessageType.INFO, + text: t('This may take a couple minutes. Sit tight!'), + }, + Date.now(), + ); + // Initial progress updateProgress(t('Starting insight generation...'), 0); diff --git a/packages/cli/src/ui/components/messages/InsightProgressMessage.tsx b/packages/cli/src/ui/components/messages/InsightProgressMessage.tsx index befd3ebfa..4115b3899 100644 --- a/packages/cli/src/ui/components/messages/InsightProgressMessage.tsx +++ b/packages/cli/src/ui/components/messages/InsightProgressMessage.tsx @@ -44,18 +44,16 @@ export const InsightProgressMessage: React.FC = ({ } return ( - - - - - - {stage} - - - - {bar} {Math.round(percent)}% - - + + + + + + {bar} + + {stage} + {progress.detail ? ` (${progress.detail})` : ''} + ); };