From e26e773ba41ba05ab78ab9299cc17c7877194501 Mon Sep 17 00:00:00 2001 From: YeonGyu-Kim Date: Fri, 26 Dec 2025 16:11:21 +0900 Subject: [PATCH] fix: include output tokens in context window usage calculation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Include output tokens from last response in getContextWindowUsage calculation. Output tokens become part of next request's input (conversation history), so they must be counted to avoid overestimating remainingTokens. This aligns with preemptive-compaction's calculation which already includes output tokens correctly. 🤖 GENERATED WITH ASSISTANCE OF [OhMyOpenCode](https://github.com/code-yeongyu/oh-my-opencode) --- src/shared/dynamic-truncator.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/shared/dynamic-truncator.ts b/src/shared/dynamic-truncator.ts index a5eefa683..5288f1859 100644 --- a/src/shared/dynamic-truncator.ts +++ b/src/shared/dynamic-truncator.ts @@ -112,7 +112,10 @@ export async function getContextWindowUsage( const lastAssistant = assistantMessages[assistantMessages.length - 1] const lastTokens = lastAssistant.tokens - const usedTokens = (lastTokens?.input ?? 0) + (lastTokens?.cache?.read ?? 0) + const usedTokens = + (lastTokens?.input ?? 0) + + (lastTokens?.cache?.read ?? 0) + + (lastTokens?.output ?? 0) const remainingTokens = ANTHROPIC_ACTUAL_LIMIT - usedTokens return {