MCPcopy Index your code
hub / github.com/codeaashu/claude-code / processAssistantMessage

Function processAssistantMessage

src/utils/analyzeContext.ts:782–803  ·  view source on GitHub ↗
(
  msg: AssistantMessage | NormalizedAssistantMessage,
  breakdown: MessageBreakdown,
)

Source from the content-addressed store, hash-verified

780}
781
782function processAssistantMessage(
783 msg: AssistantMessage | NormalizedAssistantMessage,
784 breakdown: MessageBreakdown,
785): void {
786 // Process each content block individually
787 for (const block of msg.message.content) {
788 const blockStr = jsonStringify(block)
789 const blockTokens = roughTokenCountEstimation(blockStr)
790
791 if ('type' in block && block.type === 'tool_use') {
792 breakdown.toolCallTokens += blockTokens
793 const toolName = ('name' in block ? block.name : undefined) || 'unknown'
794 breakdown.toolCallsByType.set(
795 toolName,
796 (breakdown.toolCallsByType.get(toolName) || 0) + blockTokens,
797 )
798 } else {
799 // Text blocks or other non-tool content
800 breakdown.assistantMessageTokens += blockTokens
801 }
802 }
803}
804
805function processUserMessage(
806 msg: UserMessage | NormalizedUserMessage,

Callers 1

approximateMessageTokensFunction · 0.85

Calls 4

jsonStringifyFunction · 0.85
getMethod · 0.65
setMethod · 0.45

Tested by

no test coverage detected