From 2ee6d867bd93bb955429a274865320dfa5bd0f69 Mon Sep 17 00:00:00 2001 From: haoyuren <13851610112@163.com> Date: Fri, 13 Mar 2026 22:35:05 -0500 Subject: Fix embedded terminal for Claude Code: PTY env, DEC 2026, xterm.js window queries - Add missing PTY environment variables (TERM, COLORTERM, LANG, TERM_PROGRAM) - Strip DEC 2026 synchronized output sequences that cause xterm.js to buffer indefinitely when begin/end markers are split across PTY chunks - Enable xterm.js windowOptions for terminal pixel/char size queries that Claude Code sends to determine rendering capabilities - Launch Claude tab via login shell for full PATH inheritance Co-Authored-By: Claude Opus 4.6 --- src/renderer/src/components/Terminal.tsx | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'src/renderer') diff --git a/src/renderer/src/components/Terminal.tsx b/src/renderer/src/components/Terminal.tsx index 9a2e24c..72f785f 100644 --- a/src/renderer/src/components/Terminal.tsx +++ b/src/renderer/src/components/Terminal.tsx @@ -53,7 +53,13 @@ function TerminalInstance({ id, cwd, cmd, args, visible }: { fontFamily: '"SF Mono", "Fira Code", "JetBrains Mono", monospace', fontSize: 13, cursorBlink: true, - scrollback: 10000 + scrollback: 10000, + windowOptions: { + getWinSizePixels: true, + getCellSizePixels: true, + getWinSizeChars: true, + getWinPosition: true, + } }) const fitAddon = new FitAddon() @@ -149,7 +155,7 @@ export default function Terminal() { {claudeSpawned && ( - + )} ) -- cgit v1.2.3