fix: preserve agentrun mcp tool trace commands

This commit is contained in:
lyon
2026-06-16 00:15:57 +08:00
parent 56bb02bbb6
commit 5d2ebee000
+11 -3
View File
@@ -1695,14 +1695,22 @@ function mapAgentRunEvent(event, mapping = {}) {
if (event.type === "tool_call") {
const commandExecution = agentRunCommandExecutionEvent(base, payload);
if (commandExecution) return commandExecution;
const toolName = firstNonEmpty(payload.toolName, payload.name, payload.item?.type, payload.type, payload.method, "call");
const command = firstNonEmpty(payload.command, payload.commandLine, payload.item?.command, payload.item?.commandLine);
const output = firstNonEmpty(payload.outputSummary, payload.stdoutSummary, payload.summary?.text, payload.itemPreview);
return {
...base,
type: "tool_call",
status: String(payload.status ?? (payload.method === "item/completed" ? "completed" : "running")),
label: `agentrun:tool:${String(payload.name ?? payload.method ?? "call")}`,
label: `agentrun:tool:${String(toolName)}`,
itemId: payload.item?.id ?? payload.itemId ?? null,
toolName: payload.item?.type ?? payload.name ?? payload.method ?? "call",
message: textPayload(payload, "tool call"),
toolName,
command,
exitCode: Number.isInteger(payload.item?.exitCode) ? payload.item.exitCode : Number.isInteger(payload.exitCode) ? payload.exitCode : undefined,
durationMs: typeof payload.item?.durationMs === "number" ? payload.item.durationMs : typeof payload.durationMs === "number" ? payload.durationMs : undefined,
stdoutSummary: output,
outputSummary: output,
message: output || command || textPayload(payload, "tool call"),
outputBytes: typeof payload.outputBytes === "number" ? payload.outputBytes : payload.summary?.outputBytes,
outputTruncated: payload.outputTruncated === true || payload.summary?.outputTruncated === true
};