diff options
| author | Taylor Mullen <[email protected]> | 2025-05-26 14:17:56 -0700 |
|---|---|---|
| committer | N. Taylor Mullen <[email protected]> | 2025-05-26 14:20:28 -0700 |
| commit | 480549e02ed4ae01c7df2abbd98bb0eb5b23bdd5 (patch) | |
| tree | 9eae14b1d3e498a78b5809154189bfcc93de6274 /packages/server/src/utils/nextSpeakerChecker.ts | |
| parent | 02503a3248d377e13dda5cf8ad5fc39cce365811 (diff) | |
Refactor(chat): Introduce custom Chat class for future modifications
- Copied the `Chat` class from `@google/genai` into `packages/server/src/core/geminiChat.ts`.
- This change is in preparation for future modifications to the chat handling logic.
- Updated relevant files to use the new `GeminiChat` class.
Part of https://github.com/google-gemini/gemini-cli/issues/551
Diffstat (limited to 'packages/server/src/utils/nextSpeakerChecker.ts')
| -rw-r--r-- | packages/server/src/utils/nextSpeakerChecker.ts | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/packages/server/src/utils/nextSpeakerChecker.ts b/packages/server/src/utils/nextSpeakerChecker.ts index 5eb0c512..3fe813db 100644 --- a/packages/server/src/utils/nextSpeakerChecker.ts +++ b/packages/server/src/utils/nextSpeakerChecker.ts @@ -4,8 +4,9 @@ * SPDX-License-Identifier: Apache-2.0 */ -import { Chat, Content, SchemaUnion, Type } from '@google/genai'; +import { Content, SchemaUnion, Type } from '@google/genai'; import { GeminiClient } from '../core/client.js'; +import { GeminiChat } from '../core/geminiChat.js'; const CHECK_PROMPT = `Analyze *only* the content and structure of your immediately preceding response (your last turn in the conversation history). Based *strictly* on that response, determine who should logically speak next: the 'user' or the 'model' (you). **Decision Rules (apply in order):** @@ -57,7 +58,7 @@ export interface NextSpeakerResponse { } export async function checkNextSpeaker( - chat: Chat, + chat: GeminiChat, geminiClient: GeminiClient, ): Promise<NextSpeakerResponse | null> { // We need to capture the curated history because there are many moments when the model will return invalid turns |
