@@ -182,6 +182,14 @@ class ScrollPosition extends Modifier<ScrollPositionSignature> {
182
182
183
183
export default class AiAssistantMessage extends Component <Signature > {
184
184
@service private declare cardService: CardService ;
185
+ get isReasoningExpandedByDefault() {
186
+ return (
187
+ this .args .formattedReasoningContent &&
188
+ this .args .formattedReasoningContent .toString ().trim () !== ' Thinking...' &&
189
+ this .args .isStreaming &&
190
+ ! this .args .formattedMessage
191
+ );
192
+ }
185
193
186
194
<template >
187
195
<div
@@ -230,13 +238,15 @@ export default class AiAssistantMessage extends Component<Signature> {
230
238
</div >
231
239
{{/if }}
232
240
233
- {{#if @ formattedReasoningContent }}
234
- <div class =' reasoning-content' >
235
- {{@ formattedReasoningContent }}
236
- </div >
237
- {{/if }}
238
-
239
241
<div class =' content' data-test-ai-message-content >
242
+ {{#if @ formattedReasoningContent }}
243
+ <div class =' reasoning-content' >
244
+ <details open ={{this .isReasoningExpandedByDefault }} >
245
+ <summary >Thinking...</summary >
246
+ {{@ formattedReasoningContent }}
247
+ </details >
248
+ </div >
249
+ {{/if }}
240
250
{{#if ( and @ isFromAssistant @ isStreaming) }}
241
251
<FormattedMessage
242
252
@ renderCodeBlocks ={{ false }}
@@ -415,9 +425,8 @@ export default class AiAssistantMessage extends Component<Signature> {
415
425
}
416
426
417
427
.reasoning-content {
418
- font-size : var (--boxel-font-xs );
419
- letter-spacing : var (--boxel-lsp-xs );
420
- color : var (--boxel-450 );
428
+ color : var (--boxel-300 );
429
+ font-style : italic ;
421
430
}
422
431
423
432
.error-container {
0 commit comments