MCPcopy
hub / github.com/CodebuffAI/codebuff / castAssistantMessage

Function castAssistantMessage

packages/agent-runtime/src/util/messages.ts:109–135  ·  view source on GitHub ↗
(message: Message)

Source from the content-addressed store, hash-verified

107}
108
109export function castAssistantMessage(message: Message): Message | null {
110 if (message.role !== 'assistant') {
111 return message
112 }
113 if (typeof message.content === 'string') {
114 return userMessage(
115 `<previous_assistant_message>${message.content}${closeXml('previous_assistant_message')}`,
116 )
117 }
118 const content = buildArray(
119 message.content.map((m) => {
120 if (m.type === 'text') {
121 return {
122 ...m,
123 text: `<previous_assistant_message>${m.text}${closeXml('previous_assistant_message')}`,
124 }
125 }
126 return null
127 }),
128 )
129 return content
130 ? {
131 role: 'user' as const,
132 content,
133 }
134 : null
135}
136
137// Number of terminal command outputs to keep in full form before simplifying
138const numTerminalCommandsToKeep = 5

Callers 1

getRelevantFilesFunction · 0.90

Calls 3

userMessageFunction · 0.90
closeXmlFunction · 0.90
buildArrayFunction · 0.90

Tested by

no test coverage detected