MCPcopy Index your code
hub / github.com/CodebuffAI/codebuff / convertToolMessage

Function convertToolMessage

common/src/util/messages.ts:166–201  ·  view source on GitHub ↗
(message: Message)

Source from the content-addressed store, hash-verified

164}
165
166function convertToolMessage(message: Message): ModelMessageWithAuxiliaryData[] {
167 if (message.role === 'system') {
168 return [
169 {
170 ...message,
171 content: message.content.map(({ text }) => text).join('\n\n'),
172 },
173 ]
174 }
175 if (message.role === 'user') {
176 return [cloneDeep(message)]
177 }
178 if (message.role === 'assistant') {
179 if (typeof message.content === 'string') {
180 return [
181 cloneDeep({
182 ...message,
183 content: [{ type: 'text' as const, text: message.content }],
184 }),
185 ]
186 }
187 return message.content.map((c) => {
188 return assistantToCodebuffMessage({
189 ...message,
190 content: c,
191 })
192 })
193 }
194 if (message.role === 'tool') {
195 return convertToolResultMessage(message)
196 }
197 message satisfies never
198 throw new Error(
199 `Invalid message role: ${(message as { role: unknown }).role}`,
200 )
201}
202
203function convertToolMessages(
204 messages: Message[],

Callers 1

convertToolMessagesFunction · 0.85

Calls 2

convertToolResultMessageFunction · 0.85

Tested by

no test coverage detected