Merge pull request #3622 from MoerAI/fix/truncate-tool-error-output
fix(tool-execute-after): cap excessively long tool output to prevent TUI flooding (fixes #3586)
This commit is contained in:
@@ -181,5 +181,14 @@ export function createToolExecuteAfterHandler(args: {
|
|||||||
}
|
}
|
||||||
|
|
||||||
await runToolExecuteAfterHooks()
|
await runToolExecuteAfterHooks()
|
||||||
|
|
||||||
|
// Cap excessively long error outputs that would flood the TUI with raw
|
||||||
|
// stack traces or framework internals. Normal outputs are handled by the
|
||||||
|
// tool-output-truncator hook for specific tools; this catch-all only fires
|
||||||
|
// for outputs that still exceed a safe display length after all hooks.
|
||||||
|
const MAX_ERROR_OUTPUT_CHARS = 3000
|
||||||
|
if (typeof output.output === "string" && output.output.length > MAX_ERROR_OUTPUT_CHARS) {
|
||||||
|
output.output = output.output.slice(0, MAX_ERROR_OUTPUT_CHARS) + "\n\n...(output truncated for display)"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user