@@ -877,6 +877,62 @@ describe("AgentClient", () => {
877877 expect ( responses ) . toMatchSnapshot ( ) ;
878878 } ) ;
879879
880+ it ( "should handle AG-UI reasoning message events" , async ( ) => {
881+ const queue = new AsyncQueue < EventHandlerParams > ( ) ;
882+ const stream = agentClient . streamRunAgent ( queue , {
883+ messages : [ mockMessage ( "Think about this" ) ] ,
884+ tools : [ ] ,
885+ } ) ;
886+
887+ mockGenerator . pushEvent ( {
888+ type : EventType . REASONING_START ,
889+ messageId : "reasoning-1" ,
890+ } ) ;
891+
892+ mockGenerator . pushEvent ( {
893+ type : EventType . REASONING_MESSAGE_START ,
894+ messageId : "reasoning-message-1" ,
895+ role : "reasoning" ,
896+ } ) ;
897+
898+ mockGenerator . pushEvent ( {
899+ type : EventType . REASONING_MESSAGE_CONTENT ,
900+ messageId : "reasoning-message-1" ,
901+ delta : "Let me think about this..." ,
902+ } ) ;
903+
904+ mockGenerator . pushEvent ( {
905+ type : EventType . REASONING_MESSAGE_END ,
906+ messageId : "reasoning-message-1" ,
907+ } ) ;
908+
909+ mockGenerator . pushEvent ( {
910+ type : EventType . REASONING_END ,
911+ messageId : "reasoning-1" ,
912+ } ) ;
913+
914+ mockGenerator . pushEvent ( {
915+ type : EventType . RUN_FINISHED ,
916+ result : "Reasoning completed" ,
917+ } ) ;
918+
919+ const responses : AgentResponse [ ] = [ ] ;
920+ for await ( const response of stream ) {
921+ responses . push ( response ) ;
922+ }
923+
924+ mockGenerator . finish ( ) ;
925+
926+ expect ( responses ) . toHaveLength ( 4 ) ;
927+ expect ( responses [ 0 ] . message . reasoning ) . toEqual ( [ ] ) ;
928+ expect ( responses [ 1 ] . message . reasoning ) . toEqual ( [ "" ] ) ;
929+ expect ( responses [ 2 ] . message . reasoning ) . toEqual ( [
930+ "Let me think about this..." ,
931+ ] ) ;
932+ expect ( responses [ 3 ] . message . content ) . toBe ( "Reasoning completed" ) ;
933+ expect ( responses [ 3 ] . complete ) . toBe ( true ) ;
934+ } ) ;
935+
880936 it ( "should handle multiple thinking text messages" , async ( ) => {
881937 const queue = new AsyncQueue < EventHandlerParams > ( ) ;
882938 const stream = agentClient . streamRunAgent ( queue , {
0 commit comments