From 237f7ce9153ada86779d11fd125d4da6c6411312 Mon Sep 17 00:00:00 2001 From: Sweaterdog Date: Sat, 7 Jun 2025 17:01:34 -0700 Subject: [PATCH] Update claude.js Fixed some logging --- src/models/claude.js | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/src/models/claude.js b/src/models/claude.js index 50e5627..5e19d15 100644 --- a/src/models/claude.js +++ b/src/models/claude.js @@ -100,7 +100,22 @@ export class Claude { if (typeof res === 'string') { res = res.replace(//g, '').replace(/<\/thinking>/g, ''); } - log(JSON.stringify(logMessagesForClaude), res); + + if (imageData) { // If imageData was part of this sendRequest call + let visionPromptText = ""; // Attempt to find the text prompt associated with the image + if (turns.length > 0) { + const lastTurn = messages[messages.length - 1]; // `messages` is strictFormat(turns) + if (lastTurn.role === 'user' && Array.isArray(lastTurn.content)) { + const textPart = lastTurn.content.find(part => part.type === 'text'); + if (textPart) visionPromptText = textPart.text; + } else if (lastTurn.role === 'user' && typeof lastTurn.content === 'string') { + visionPromptText = lastTurn.content; + } + } + logVision(logMessagesForClaude, imageData, res, visionPromptText); + } else { + log(JSON.stringify(logMessagesForClaude), res); + } return res; } @@ -121,7 +136,7 @@ export class Claude { const res = await this.sendRequest(turnsForAPIRequest, systemMessage); if (imageBuffer && res) { - logVision(turns, imageBuffer, res, systemMessage); + logVision([{ role: "system", content: systemMessage }].concat(turns), imageBuffer, res, systemMessage); } return res; }