@@ -163,18 +163,19 @@ class PromptBuilder {
163163 */
164164 constructor ( userMessage : InitialUserMessage | CLIUserMessage , codebolt ?: CodeboltAPI ) {
165165 // Handle both InitialUserMessage and CLIUserMessage types
166- if ( 'content' in userMessage ) {
167- // This is a CLIUserMessage
168- this . message = userMessage . content || userMessage . text || "" ;
169- this . mentionedFiles = [ ] ;
170- this . mentionedMCPs = [ ] ;
171- this . mentionedAgents = [ ] ;
166+ if ( 'message' in userMessage && typeof userMessage . message === 'object' ) {
167+ // This is a CLIUserMessage with nested message structure
168+ this . message = userMessage . message . userMessage || userMessage . data ?. text || "" ;
169+ this . mentionedFiles = userMessage . message . mentionedFiles || [ ] ;
170+ // Convert string array to MCPTool array for CLIUserMessage
171+ this . mentionedMCPs = ( userMessage . message . mentionedMCPs || [ ] ) . map ( ( name : string ) => ( { name } ) ) ;
172+ this . mentionedAgents = userMessage . message . mentionedAgents || [ ] ;
172173 } else {
173174 // This is an InitialUserMessage
174- this . message = userMessage . messageText || userMessage . userMessage || "" ;
175- this . mentionedFiles = userMessage . mentionedFiles || [ ] ;
176- this . mentionedMCPs = userMessage . mentionedMCPs || [ ] ;
177- this . mentionedAgents = userMessage . mentionedAgents || [ ] ;
175+ this . message = ( userMessage as InitialUserMessage ) . messageText || ( userMessage as InitialUserMessage ) . userMessage || "" ;
176+ this . mentionedFiles = ( userMessage as InitialUserMessage ) . mentionedFiles || [ ] ;
177+ this . mentionedMCPs = ( userMessage as InitialUserMessage ) . mentionedMCPs || [ ] ;
178+ this . mentionedAgents = ( userMessage as InitialUserMessage ) . mentionedAgents || [ ] ;
178179 }
179180
180181 this . promptParts = [ this . message ] ;
0 commit comments