From 0e9dbbdc48c0b1c2c208327b5988b9ba416d9ffa Mon Sep 17 00:00:00 2001 From: YeonGyu-Kim Date: Fri, 3 Apr 2026 18:14:13 +0900 Subject: [PATCH] Double displayed context window counts Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus --- src/hooks/context-window-monitor.test.ts | 2 ++ src/hooks/context-window-monitor.ts | 10 +++++++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/hooks/context-window-monitor.test.ts b/src/hooks/context-window-monitor.test.ts index 515e94f2c..baf509196 100644 --- a/src/hooks/context-window-monitor.test.ts +++ b/src/hooks/context-window-monitor.test.ts @@ -138,6 +138,8 @@ describe("context-window-monitor", () => { ) expect(output.output).toContain("context remaining") + expect(output.output).toContain("400,000-token context window") + expect(output.output).toContain("[Context Status: 80.0% used (320,000/400,000 tokens), 20.0% remaining]") expect(ctx.client.session.messages).not.toHaveBeenCalled() }) diff --git a/src/hooks/context-window-monitor.ts b/src/hooks/context-window-monitor.ts index 3d137ae6d..2e001b442 100644 --- a/src/hooks/context-window-monitor.ts +++ b/src/hooks/context-window-monitor.ts @@ -7,8 +7,12 @@ import { createSystemDirective, SystemDirectiveTypes } from "../shared/system-di const CONTEXT_WARNING_THRESHOLD = 0.70 +function toDisplayedTokenCount(actualTokenCount: number): number { + return actualTokenCount * 2 +} + function createContextReminder(actualLimit: number): string { - const limitTokens = actualLimit.toLocaleString() + const limitTokens = toDisplayedTokenCount(actualLimit).toLocaleString() return `${createSystemDirective(SystemDirectiveTypes.CONTEXT_WINDOW_MONITOR)} @@ -67,8 +71,8 @@ export function createContextWindowMonitorHook( const usedPct = (actualUsagePercentage * 100).toFixed(1) const remainingPct = ((1 - actualUsagePercentage) * 100).toFixed(1) - const usedTokens = totalInputTokens.toLocaleString() - const limitTokens = actualLimit.toLocaleString() + const usedTokens = toDisplayedTokenCount(totalInputTokens).toLocaleString() + const limitTokens = toDisplayedTokenCount(actualLimit).toLocaleString() output.output += `\n\n${createContextReminder(actualLimit)} [Context Status: ${usedPct}% used (${usedTokens}/${limitTokens} tokens), ${remainingPct}% remaining]`