Merge pull request #1295 from pikasTech/fix/1291-mcp-tool-trace-render
fix: 显示 AgentRun MCP 工具调用命令
This commit is contained in:
@@ -1695,14 +1695,22 @@ function mapAgentRunEvent(event, mapping = {}) {
|
|||||||
if (event.type === "tool_call") {
|
if (event.type === "tool_call") {
|
||||||
const commandExecution = agentRunCommandExecutionEvent(base, payload);
|
const commandExecution = agentRunCommandExecutionEvent(base, payload);
|
||||||
if (commandExecution) return commandExecution;
|
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 {
|
return {
|
||||||
...base,
|
...base,
|
||||||
type: "tool_call",
|
type: "tool_call",
|
||||||
status: String(payload.status ?? (payload.method === "item/completed" ? "completed" : "running")),
|
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,
|
itemId: payload.item?.id ?? payload.itemId ?? null,
|
||||||
toolName: payload.item?.type ?? payload.name ?? payload.method ?? "call",
|
toolName,
|
||||||
message: textPayload(payload, "tool call"),
|
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,
|
outputBytes: typeof payload.outputBytes === "number" ? payload.outputBytes : payload.summary?.outputBytes,
|
||||||
outputTruncated: payload.outputTruncated === true || payload.summary?.outputTruncated === true
|
outputTruncated: payload.outputTruncated === true || payload.summary?.outputTruncated === true
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user