I was using Kilo CLI v7.0.33 and something felt off. I could scroll fine — but there was no scrollbar indicator. No sense of where I was in a long session. Other CLIs had it. Mine didn't.
My immediate take: the scrollbar is broken.
So I went digging.
The GitHub Rabbit Hole
I went through OpenCode issues, Kilo issues, anything mentioning scroll + Warp + iTerm. Left a couple of comments piecing together what I thought was happening:
scrollbars missing
#2500
I can't seem to scroll up to read what opencode is outputting. I don't have this problem with gemini-cli and any other cli so its not terminal related. The opencode scrollbar is just a sold bar for some reason
--
Cannot scroll on opencode when using iterm
#6209
When trying to scroll the opencode TUI on iterm, it scrolls the input box but not the output of the previous command
1.0.203
- Install iTerm2
- opencode
- !ls # to see basic output - should be long enough to overflow from view
- scroll
https://github.com/user-attachments/assets/eea1ae7e-6401-4ef8-b30d-d5265fee28ca
26.2
iTerm2
The threads were noisy but a pattern emerged — people were actually describing two different problems and conflating them:
Problem 1 — Mouse scroll not working at all (terminal layer)
Warp and iTerm need Mouse Reporting enabled before they'll forward scroll events to a full-screen TUI. Without it, your scroll wheel just doesn't reach the app. Fix is in terminal settings.
Problem 2 — Scrollbar not visible (app layer)
Completely separate. Scroll events arriving fine, but the indicator is just... off.
I had Problem 2. But the GitHub threads mostly discussed Problem 1.
Here’s what it looked like in my terminal — no visible scrollbar, long output, no sense of position and it was consistent in all the themes!
At this point, I was convinced it was broken.
Wait, What Am I Even Running?
Before assuming anything, I needed to understand the actual architecture. Kilo isn't just OpenCode — it's a fork:
So I went to the source.
Buried in the session route, I found it. The scrollbar wasn’t missing at all — it was disabled by default. A KV-backed feature flag, persistent across sessions, but initialized to false.
I was one tab away from opening an enhancement issue.
Inside:
opencode/packages/opencode/src/cli/cmd/tui/routes/session/index.tsx
const [showScrollbar, setShowScrollbar] = kv.signal("scrollbar_visible", false)
And later:
verticalScrollbarOptions={{
visible: showScrollbar(),
}}
That was the moment everything clicked.
- The scrollbar existed.
- It was toggleable.
- And by default — it was off.
Then I Pressed Ctrl+P
Command Palette. I typed "scroll."
Toggle session scrollbar
I pressed it. The scrollbar appeared.
It had been there the whole time.
What This Actually Was
Not a bug. Not a missing feature. A discoverability gap.
The scrollbar is implemented, toggleable, persistent — just hidden behind a keybind nobody thinks to try when they're confused about scroll behavior. That's a UX conversation worth having with maintainers, not a bug report.
After piecing everything together, I went back to the GitHub threads.
Instead of filing a new issue, I left a couple of comments clarifying what I’d found — separating the terminal mouse-reporting problem from the scrollbar visibility toggle. A small thing, but hopefully useful signal in a noisy thread.
--
Sometimes contributing isn’t about opening something new.
It’s about tightening what already exists.
The Real Takeaways
Separate layers before blaming. Terminal config and app state are different things. Conflating them sends you in circles.
Read source before filing. That false default was right there. Five minutes of reading saved a maintainer from triaging noise.
Forks are their own thing. Upstream behavior isn't a reliable guide. Check what the fork actually exposes.
Discoverability is a real problem. If multiple users independently can't find a feature, that's signal — even if the feature works perfectly.
Quick Fix if You're Here for the Answer
- Scroll not working at all → enable Mouse Reporting in your terminal settings
- Scroll works but no scrollbar →
Ctrl+P→ search "scrollbar" → toggle on
It'll persist across sessions once set.



Top comments (0)