diff --git a/src/renderer/components/chat/ContextBadge.tsx b/src/renderer/components/chat/ContextBadge.tsx index ba62943c..2b4d5991 100644 --- a/src/renderer/components/chat/ContextBadge.tsx +++ b/src/renderer/components/chat/ContextBadge.tsx @@ -215,6 +215,17 @@ export const ContextBadge = ({ [newTaskCoordinationInjections] ); + // Compute actual item counts (not injection-object counts) for accurate badge display + const toolOutputCount = useMemo( + () => newToolOutputInjections.reduce((sum, inj) => sum + inj.toolCount, 0), + [newToolOutputInjections] + ); + + const taskCoordinationCount = useMemo( + () => newTaskCoordinationInjections.reduce((sum, inj) => sum + inj.breakdown.length, 0), + [newTaskCoordinationInjections] + ); + const userMessageTokens = useMemo( () => newUserMessageInjections.reduce((sum, inj) => sum + inj.estimatedTokens, 0), [newUserMessageInjections] @@ -478,10 +489,7 @@ export const ContextBadge = ({ {newToolOutputInjections.length > 0 && ( sum + inj.toolBreakdown.length, - 0 - )} + count={toolOutputCount} tokenCount={toolOutputTokens} > {newToolOutputInjections.map((injection) => @@ -504,10 +512,7 @@ export const ContextBadge = ({ {newTaskCoordinationInjections.length > 0 && ( sum + inj.breakdown.length, - 0 - )} + count={taskCoordinationCount} tokenCount={taskCoordinationTokens} > {newTaskCoordinationInjections.map((injection) =>