diff options
Diffstat (limited to 'packages/cli/src')
| -rw-r--r-- | packages/cli/src/ui/hooks/useGeminiStream.ts | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/packages/cli/src/ui/hooks/useGeminiStream.ts b/packages/cli/src/ui/hooks/useGeminiStream.ts index 7d0fe375..4d6bbcba 100644 --- a/packages/cli/src/ui/hooks/useGeminiStream.ts +++ b/packages/cli/src/ui/hooks/useGeminiStream.ts @@ -395,22 +395,46 @@ export const useGeminiStream = ( break; case ServerGeminiEventType.ToolCallRequest: toolCallRequests.push(event.value); + await logger?.logMessage( + MessageSenderType.TOOL_REQUEST, + JSON.stringify(event.value.args), + ); break; case ServerGeminiEventType.UserCancelled: handleUserCancelledEvent(userMessageTimestamp); break; case ServerGeminiEventType.Error: handleErrorEvent(event.value, userMessageTimestamp); + await logger?.logMessage( + MessageSenderType.SERVER_ERROR, + JSON.stringify(event.value), + ); break; case ServerGeminiEventType.ChatCompressed: handleChatCompressionEvent(); + await logger?.logMessage( + MessageSenderType.SYSTEM, + 'Compressing Chat', + ); break; case ServerGeminiEventType.UsageMetadata: addUsage(event.value); + await logger?.logMessage( + MessageSenderType.SYSTEM, + 'Usage Metadata: ' + JSON.stringify(event.value), + ); break; case ServerGeminiEventType.ToolCallConfirmation: + await logger?.logMessage( + MessageSenderType.SYSTEM, + JSON.stringify(event.value), + ); + break; case ServerGeminiEventType.ToolCallResponse: - // do nothing + await logger?.logMessage( + MessageSenderType.SYSTEM, + JSON.stringify(event.value), + ); break; default: { // enforces exhaustive switch-case @@ -419,6 +443,7 @@ export const useGeminiStream = ( } } } + await logger?.logMessage(MessageSenderType.SYSTEM, geminiMessageBuffer); if (toolCallRequests.length > 0) { scheduleToolCalls(toolCallRequests, signal); } @@ -431,6 +456,7 @@ export const useGeminiStream = ( scheduleToolCalls, handleChatCompressionEvent, addUsage, + logger, ], ); |
