Files
SenMeshNet/components/ai/toolArtifacts/formatVaultToolTooltip.ts
zhaolei 2f9f8da48e
Some checks failed
AI automation / Route event (push) Has been cancelled
AI automation / Hand reopened issue to maintainers (push) Has been cancelled
AI automation / Clean source issue state (push) Has been cancelled
AI automation / Reconcile handoffs (push) Has been cancelled
AI automation / Classify issue (push) Has been cancelled
AI automation / Claude Code smoke (push) Has been cancelled
AI automation / Review issue follow-up (push) Has been cancelled
AI automation / Publish issue follow-up (push) Has been cancelled
AI automation / Implement with Claude Code (push) Has been cancelled
AI automation / Publish implement PR (push) Has been cancelled
AI automation / Continue queued issue comments (push) Has been cancelled
AI automation / Codex review loop (push) Has been cancelled
AI automation / Publish Codex fix (push) Has been cancelled
AI automation / Clear Codex dispatch marker (push) Has been cancelled
AI automation / Own PR re-request Codex (push) Has been cancelled
AI automation / External PR re-request Codex (push) Has been cancelled
AI automation / Poll Codex reaction / retry (push) Has been cancelled
Initial commit: NetMesh smart ops platform with 3D topology, inspection reports, RCA and AI ops assistant
2026-10-15 13:53:04 +08:00

38 lines
906 B
TypeScript

function stringifyToolPayload(value: unknown): string {
if (value == null) return '';
if (typeof value === 'string') {
try {
const parsed = JSON.parse(value) as unknown;
if (parsed && typeof parsed === 'object') {
return JSON.stringify(parsed, null, 2);
}
} catch {
return value;
}
return value;
}
if (typeof value === 'object') {
return JSON.stringify(value, null, 2);
}
return String(value);
}
export function formatVaultToolTooltip(
toolName: string,
args?: Record<string, unknown>,
result?: unknown,
isError?: boolean,
): string {
const lines: string[] = [toolName];
if (args && Object.keys(args).length > 0) {
lines.push('', 'Arguments:', stringifyToolPayload(args));
}
if (result !== undefined) {
lines.push('', isError ? 'Error:' : 'Result:', stringifyToolPayload(result));
}
return lines.join('\n');
}