From 7c24f657e71dd675e9c674fc1c8ef3e834737a44 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 a5eefa6..5288f18 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 {