MCPcopy Create free account
hub / github.com/freecodexyz/free-code / stripCallerFieldFromAssistantMessage

Function stripCallerFieldFromAssistantMessage

src/utils/messages.ts:1742–1772  ·  view source on GitHub ↗
(
  message: AssistantMessage,
)

Source from the content-addressed store, hash-verified

1740 * AFTER normalizeMessagesForAPI has already run, so inputs are already normalized.
1741 */
1742export function stripCallerFieldFromAssistantMessage(
1743 message: AssistantMessage,
1744): AssistantMessage {
1745 const hasCallerField = message.message.content.some(
1746 block =>
1747 block.type === 'tool_use' && 'caller' in block && block.caller !== null,
1748 )
1749
1750 if (!hasCallerField) {
1751 return message
1752 }
1753
1754 return {
1755 ...message,
1756 message: {
1757 ...message.message,
1758 content: message.message.content.map(block => {
1759 if (block.type !== 'tool_use') {
1760 return block
1761 }
1762 // Explicitly construct with only standard API fields
1763 return {
1764 type: 'tool_use' as const,
1765 id: block.id,
1766 name: block.name,
1767 input: block.input,
1768 }
1769 }),
1770 },
1771 }
1772}
1773
1774/**
1775 * Does the content array have a tool_result block whose inner content

Callers 1

queryModelFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected