diff --git a/src/core/assistant-message/NativeToolCallParser.ts b/src/core/assistant-message/NativeToolCallParser.ts index f6eac36a9c1..0c800952e75 100644 --- a/src/core/assistant-message/NativeToolCallParser.ts +++ b/src/core/assistant-message/NativeToolCallParser.ts @@ -385,7 +385,9 @@ export class NativeToolCallParser { break case "write_to_file": - if (partialArgs.path || partialArgs.content) { + // Only create nativeArgs when BOTH path and content are present + // This prevents showing undefined path (project root) in UI during streaming + if (partialArgs.path && partialArgs.content) { nativeArgs = { path: partialArgs.path, content: partialArgs.content, @@ -403,7 +405,9 @@ export class NativeToolCallParser { break case "apply_diff": - if (partialArgs.path !== undefined || partialArgs.diff !== undefined) { + // Only create nativeArgs when BOTH path and diff are present + // This prevents showing undefined path (project root) in UI during streaming + if (partialArgs.path && partialArgs.diff) { nativeArgs = { path: partialArgs.path, diff: partialArgs.diff,