diff --git a/tavern/internal/www/src/pages/shellv2/components/PtyTerminal.tsx b/tavern/internal/www/src/pages/shellv2/components/PtyTerminal.tsx index 46ec03adf..efdca92e2 100644 --- a/tavern/internal/www/src/pages/shellv2/components/PtyTerminal.tsx +++ b/tavern/internal/www/src/pages/shellv2/components/PtyTerminal.tsx @@ -37,6 +37,10 @@ const PtyTerminal: React.FC = ({ portalId, pivotId, shellId, o fitAddon.fit(); termInstance.current = term; + // Focus the terminal after mount; deferred so HeadlessUI menu + // finishes restoring focus to its trigger button first. + setTimeout(() => term.focus(), 0); + // Handle Resize const resizeObserver = new ResizeObserver(() => { fitAddon.fit();