@@ -83,7 +83,7 @@ const scrubPlanTagsInBlocks = (blocks: ContentBlock[]): ContentBlock[] => {
8383/**
8484 * Auto-collapse thinking blocks to reduce UI clutter.
8585 * Tracks which thinking blocks have been collapsed to avoid duplicate collapses.
86- *
86+ *
8787 * @param messageId - ID of the message containing the thinking block
8888 * @param agentId - Optional agent ID for nested agent thinking blocks
8989 * @param autoCollapsedThinkingIdsRef - Ref tracking which thinking IDs have been auto-collapsed
@@ -228,6 +228,7 @@ interface UseSendMessageOptions {
228228 setHasReceivedPlanResponse : ( value : boolean ) => void
229229 lastMessageMode : AgentMode | null
230230 setLastMessageMode : ( mode : AgentMode | null ) => void
231+ addSessionCredits : ( credits : number ) => void
231232}
232233
233234export const useSendMessage = ( {
@@ -258,6 +259,7 @@ export const useSendMessage = ({
258259 setHasReceivedPlanResponse,
259260 lastMessageMode,
260261 setLastMessageMode,
262+ addSessionCredits,
261263} : UseSendMessageOptions ) : {
262264 sendMessage : SendMessageFn
263265 clearMessages : ( ) => void
@@ -966,12 +968,12 @@ export const useSendMessage = ({
966968 return
967969 }
968970
969- if ( event . type === 'finish' && event . totalCost !== undefined ) {
970- actualCredits = event . totalCost
971- }
972-
973- if ( 'totalCost' in event && event . totalCost !== undefined ) {
971+ if (
972+ event . type === 'finish' &&
973+ typeof event . totalCost === 'number'
974+ ) {
974975 actualCredits = event . totalCost
976+ addSessionCredits ( event . totalCost )
975977 }
976978
977979 if ( event . type === 'subagent_start' ) {
@@ -1474,11 +1476,15 @@ export const useSendMessage = ({
14741476 content,
14751477 }
14761478 // Determine status based on whether there's an error
1477- const hasError = has ( result . value , 'errorMessage' ) && result . value . errorMessage
1479+ const hasError =
1480+ has ( result . value , 'errorMessage' ) &&
1481+ result . value . errorMessage
14781482 return {
14791483 ...block ,
14801484 blocks : [ resultTextBlock ] ,
1481- status : hasError ? ( 'failed' as const ) : ( 'complete' as const ) ,
1485+ status : hasError
1486+ ? ( 'failed' as const )
1487+ : ( 'complete' as const ) ,
14821488 }
14831489 }
14841490 }
@@ -1658,6 +1664,7 @@ export const useSendMessage = ({
16581664 setHasReceivedPlanResponse ,
16591665 lastMessageMode ,
16601666 setLastMessageMode ,
1667+ addSessionCredits ,
16611668 ] ,
16621669 )
16631670
0 commit comments