@@ -301,7 +301,7 @@ export class ChatSessionContentBuilder {
301301 delta : AssistantDelta ,
302302 choice : Choice ,
303303 pullRequest : PullRequestModel ,
304- responseParts : Array < vscode . ChatResponseMarkdownPart | vscode . ChatToolInvocationPart | vscode . ChatResponseMultiDiffPart > ,
304+ responseParts : Array < vscode . ChatResponseMarkdownPart | vscode . ChatToolInvocationPart | vscode . ChatResponseMultiDiffPart | vscode . ChatResponseThinkingProgressPart > ,
305305 currentResponseContent : string ,
306306 ) : string {
307307 if ( delta . role === 'assistant' ) {
@@ -369,7 +369,7 @@ export class ChatSessionContentBuilder {
369369 return currentResponseContent ;
370370 }
371371
372- private createToolInvocationPart ( pullRequest : PullRequestModel , toolCall : ToolCall , deltaContent : string = '' ) : vscode . ChatToolInvocationPart | undefined {
372+ private createToolInvocationPart ( pullRequest : PullRequestModel , toolCall : ToolCall , deltaContent : string = '' ) : vscode . ChatToolInvocationPart | vscode . ChatResponseThinkingProgressPart | undefined {
373373 if ( ! toolCall . function ?. name || ! toolCall . id ) {
374374 return undefined ;
375375 }
@@ -388,6 +388,10 @@ export class ChatSessionContentBuilder {
388388 const toolDetails = parseToolCallDetails ( toolCall , deltaContent ) ;
389389 toolPart . toolName = toolDetails . toolName ;
390390
391+ if ( toolPart . toolName === 'think' ) {
392+ return new vscode . ChatResponseThinkingProgressPart ( toolDetails . invocationMessage ) ;
393+ }
394+
391395 if ( toolCall . function . name === 'bash' ) {
392396 toolPart . invocationMessage = new vscode . MarkdownString ( `\`\`\`bash\n${ toolDetails . invocationMessage } \n\`\`\`` ) ;
393397 } else {
0 commit comments