From d22deabe797481e9918b413f9c1ea51fa8a8226f Mon Sep 17 00:00:00 2001 From: Kacper Date: Fri, 16 Jan 2026 20:27:53 +0100 Subject: [PATCH] fix: improve process termination handling for Windows Updated the process termination logic in ClaudeUsageService to handle Windows environments correctly. The code now checks the operating system and calls the appropriate kill method, ensuring consistent behavior across platforms. --- apps/server/src/services/claude-usage-service.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/apps/server/src/services/claude-usage-service.ts b/apps/server/src/services/claude-usage-service.ts index 64dceb6a..59f22f20 100644 --- a/apps/server/src/services/claude-usage-service.ts +++ b/apps/server/src/services/claude-usage-service.ts @@ -277,9 +277,14 @@ export class ClaudeUsageService { ptyProcess.write('\x1b'); // Send escape key // Fallback: if ESC doesn't exit (Linux), use SIGTERM after 2s + // Windows doesn't support signals, so just call kill() without args setTimeout(() => { if (!settled && ptyProcess && !ptyProcess.killed) { - ptyProcess.kill('SIGTERM'); + if (this.isWindows) { + ptyProcess.kill(); + } else { + ptyProcess.kill('SIGTERM'); + } } }, 2000); }