Fix terminal display flickering on macOS #117
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
ShineTextper-character animation inWorkingIndicator.tsx— it runs a 30mssetIntervalthat triggers ~33 full Ink re-renders/second, causing visible screen flickering and jumping. Replaced with static colored<Text>. TheSpinnercomponent still provides a working indicator animation.DebugPaneltoshow={false}incli.tsx— it was enabled by default and re-renders on every log entry during agent execution, causing layout height changes that compound the flickering.Reproduction
Observed on a clean macOS install (Darwin 24.3.0) running
bun start. During agent execution the terminal output shimmers and jumps. The root cause is three overlapping animation timers (ShineText 30ms interval + Spinner + DebugPanel log subscription) each triggering full Ink redraws.Test plan
bun startand submit a query — display should be stable during thinking/tool executionSpinnerdots animation still appears in the working indicatorbun run typecheckpasses cleanly🤖 Generated with Claude Code