Prettify displayed message

1e076a3e4367cc228bb63cadaed3812298897308

Cohee <18619528+Cohee1207@users.noreply.github.com>

1 files changed, +7 -3Ignore whitespace
public/scripts/tool-calling.js+7 -3
@@ -342,7 +342,7 @@ export class ToolManager {
342342
343343 // Save a successful invocation
344344 if (result) {
345345 invocations.push({ id, name, resultparameters, parametersresult });
346346 }
347347 }
348348 }
@@ -383,12 +383,16 @@ export class ToolManager {
383383 * @returns {string} Formatted message with tool invocations.
384384 */
385385 static #formatMessage(invocations) {
386- const toolNames = invocations.map(i => i.name).join(', ');
386+ const tryParse = (x) => { try { return JSON.parse(x); } catch { return x; } };
387+ const data = structuredClone(invocations);
387388 const detailsElement = document.createElement('details');
388389 const summaryElement = document.createElement('summary');
389390 const preElement = document.createElement('pre');
390391 const codeElement = document.createElement('code');
391- codeElement.textContent = JSON.stringify(invocations, null, 2);
392+ codeElement.classList.add('language-json');
393+ data.forEach(i => i.parameters = tryParse(i.parameters));
394+ codeElement.textContent = JSON.stringify(data, null, 2);
395+ const toolNames = data.map(i => i.name).join(', ');
392396 summaryElement.textContent = `Performed tool calls: ${toolNames}`;
393397 preElement.append(codeElement);
394398 detailsElement.append(summaryElement, preElement);