@@ -10,7 +10,7 @@ import {
1010 useState ,
1111} from 'react'
1212import { cn , TabStrip , type TabStripItem , toast } from '@sim/emcn'
13- import { Loader , TerminalWindow } from '@sim/emcn/icons'
13+ import { TerminalWindow } from '@sim/emcn/icons'
1414import { createLogger } from '@sim/logger'
1515import { FitAddon } from '@xterm/addon-fit'
1616import { Unicode11Addon } from '@xterm/addon-unicode11'
@@ -525,10 +525,12 @@ export function TerminalSession() {
525525 }
526526 } , [ tabs . length , removeResource ] )
527527
528- // The spinner means "transient work in progress", which is why a full-screen
529- // program does not get one: an editor or coding agent owns the terminal until
530- // it is quit, and spinning for the hour it is open would say the wrong thing.
531- // It is the only sign that something is running in a tab nobody is looking at.
528+ // Every tab carries the same glyph. A spinner would have to mean "transient
529+ // work", and nothing here can tell that from a coding agent sitting open for
530+ // an hour: the alternate screen is the only signal available, and the tools
531+ // people leave running — Claude Code, Codex — draw inline without it. A
532+ // spinner that is wrong for the longest-lived tabs is worse than none, and
533+ // the tab already says what it is running.
532534 const items = useMemo < TabStripItem [ ] > (
533535 ( ) =>
534536 tabs . map ( ( tab ) => {
@@ -540,12 +542,7 @@ export function TerminalSession() {
540542 // is not naming yet, so hovering gives the whole picture: where the
541543 // shell is, and what it is doing there.
542544 tooltip : terminalTooltip ( tab ) ,
543- icon :
544- naming && ! tab . interactive ? (
545- < Loader className = 'size-[12px] shrink-0 animate-spin text-[var(--text-icon)]' />
546- ) : (
547- < TerminalWindow className = 'size-[12px] shrink-0 text-[var(--text-icon)]' />
548- ) ,
545+ icon : < TerminalWindow className = 'size-[12px] shrink-0 text-[var(--text-icon)]' /> ,
549546 active : tab . terminalId === activeTerminalId ,
550547 }
551548 } ) ,
0 commit comments