[FEATURE]: focus mode to toggle off all the decorations #3136

Open
opened 2026-02-16 17:38:48 -05:00 by yindo · 9 comments
Owner

Originally created by @ahkohd on GitHub (Nov 26, 2025).

Feature hasn't been suggested before.

  • I have verified this feature I'm about to request hasn't been suggested before.

Describe the enhancement you want to request

The user experience of opencode with large fonts isn’t great. This is partly because the decorations take up much more space than the actual content. Fortunately, you don’t need to see the decorations every time. A focus mode that only shows the input box and message area would be ideal, especially for users like me who use large fonts. This would free up valuable space.

Image

fig: opencode on Ghostty terminal at 40px font size and 75% cell height.

In the proposed focus mode, only the message area and message box should be displayed, excluding other UI decorations like the title, status bar, all areas marked with red box in the screenshot should not be visible in focus mode.

Originally created by @ahkohd on GitHub (Nov 26, 2025). ### Feature hasn't been suggested before. - [x] I have verified this feature I'm about to request hasn't been suggested before. ### Describe the enhancement you want to request The user experience of opencode with large fonts isn’t great. This is partly because the decorations take up much more space than the actual content. Fortunately, you don’t need to see the decorations every time. A focus mode that only shows the input box and message area would be ideal, especially for users like me who use large fonts. This would free up valuable space. <img width="6016" height="3384" alt="Image" src="https://github.com/user-attachments/assets/10e2c07f-5576-4659-b615-b961ce621b3e" /> fig: opencode on Ghostty terminal at 40px font size and 75% cell height. In the proposed focus mode, only the message area and message box should be displayed, excluding other UI decorations like the title, status bar, all areas marked with red box in the screenshot should not be visible in focus mode.
yindo added the discussion label 2026-02-16 17:38:48 -05:00
Author
Owner

@github-actions[bot] commented on GitHub (Nov 26, 2025):

This issue might be a duplicate of existing issues. Please check:

  • #2750: Improve UI customization/accessibility - Requests ability to hide/minimize UI decorations, hide info bars, and implement compact UI mode for better space usage with large fonts
  • #3547: Small screen compatibility - Requests graceful UI collapse for small terminal heights, hiding less important elements
  • #2641: Remove warning banner - User wants to remove UI elements taking up screen space on small terminals
  • #1107: Create more vertical space by using first line - Requests removal of blank lines at top to maximize usable vertical space

Feel free to ignore if these don't address your specific case.

@github-actions[bot] commented on GitHub (Nov 26, 2025): This issue might be a duplicate of existing issues. Please check: - #2750: Improve UI customization/accessibility - Requests ability to hide/minimize UI decorations, hide info bars, and implement compact UI mode for better space usage with large fonts - #3547: Small screen compatibility - Requests graceful UI collapse for small terminal heights, hiding less important elements - #2641: Remove warning banner - User wants to remove UI elements taking up screen space on small terminals - #1107: Create more vertical space by using first line - Requests removal of blank lines at top to maximize usable vertical space Feel free to ignore if these don't address your specific case.
Author
Owner

@rekram1-node commented on GitHub (Nov 26, 2025):

@ahkohd you should update to 1.0.114 and tell me if it is any better for you

@rekram1-node commented on GitHub (Nov 26, 2025): @ahkohd you should update to 1.0.114 and tell me if it is any better for you
Author
Owner

@rekram1-node commented on GitHub (Nov 26, 2025):

may still require your feature request but we redid the tui so maybe its better

@rekram1-node commented on GitHub (Nov 26, 2025): may still require your feature request but we redid the tui so maybe its better
Author
Owner

@ahkohd commented on GitHub (Nov 26, 2025):

@rekram1-node, thanks for the quick response, great work! It’s better but a focus mode would definitely enhance the experience.

Image
@ahkohd commented on GitHub (Nov 26, 2025): @rekram1-node, thanks for the quick response, great work! It’s better but a focus mode would definitely enhance the experience. <img width="6016" height="3384" alt="Image" src="https://github.com/user-attachments/assets/c1dd57bd-e057-49b9-9e0f-9a3b6e3f572a" />
Author
Owner

@ldelossa commented on GitHub (Nov 29, 2025):

+1 to this.

I typically work with a horizontal split, where my code editor is on top and my AI agent is on bottom. Unfortunately, opencode is all but useless in this layout.

Here are two screenshots using the same split size I enjoy. One is opencode and the other is claude code.

Image Image

You can see how much space is taken up by non-response information in opencode. Its great when opencode is in a full screen terminal, but it would be amazing to just have a zen or 'compact' layout, which just provides the minimal "here is a prompt box at the bottom" and everything above is just conversation.

@ldelossa commented on GitHub (Nov 29, 2025): +1 to this. I typically work with a horizontal split, where my code editor is on top and my AI agent is on bottom. Unfortunately, opencode is all but useless in this layout. Here are two screenshots using the same split size I enjoy. One is opencode and the other is claude code. <img width="1501" height="943" alt="Image" src="https://github.com/user-attachments/assets/b3317749-cb50-45ff-9a57-89134c5d85f1" /> <img width="1503" height="941" alt="Image" src="https://github.com/user-attachments/assets/d5561f6f-00ae-43fa-a30f-201e766a4437" /> You can see how much space is taken up by non-response information in opencode. Its great when opencode is in a full screen terminal, but it would be amazing to just have a zen or 'compact' layout, which just provides the minimal "here is a prompt box at the bottom" and everything above is just conversation.
Author
Owner

@avarayr commented on GitHub (Dec 4, 2025):

Should be addressed by https://github.com/sst/opencode/pull/5020
Check out the forked repo's layouts branch

@avarayr commented on GitHub (Dec 4, 2025): Should be addressed by https://github.com/sst/opencode/pull/5020 Check out the forked repo's `layouts` branch
Author
Owner

@ahkohd commented on GitHub (Dec 5, 2025):

#5020

wow! will try it out.

@ahkohd commented on GitHub (Dec 5, 2025): > #5020 wow! will try it out.
Author
Owner

@unera commented on GitHub (Feb 10, 2026):

Image

I had to abandon Cursor because it's completely unsuitable for working on a laptop, and its developers don't respond to user requests. Initially, I thought OpenCode might solve my problems since, unlike Cursor, it allows expanding the chat to full screen width. However, it turned out that OpenCode is extremely inefficient with vertical space.

Here's a screenshot of my screen. As you can see, area [1] is the title bar with menu. Then comes area [2] - tabs with session and changes. Just these two headers alone consume 1/4 of the screen. Next is the chat window, but my previous query [3] is pinned there. Together with the "show steps" button, it eats up another 1/4+ of the screen. And the bottom third [4] is used for the input field with huge padding at the bottom [5] and a significant area for showing the model name [6].

As a result, for the space where I can read the AI's response, I'm left with less than 1/4 of the screen height - an area that fits only three lines of text! And I'd be happy to pay for such a tool, but I can't use it this way.

Would it be possible to add a "compact mode" option (or similarly named) that would:

  • Hide area [2] inside area [1] as a menu or in some other way
  • In area [3], hide the bottom-left controls in a "..." menu, and make area [3] unpinned so it scrolls with the response text
  • In area [4], hide the model name line [6] in a "..." menu next to the "send message" button (currently an up arrow), and completely remove padding [5]

I think such a mode would be very useful for those who want to use your tool on laptops but currently can't due to vision limitations. I could of course set the font size to 1mm, but then I'd have to read it with a magnifying glass, which I'd prefer to avoid.

@unera commented on GitHub (Feb 10, 2026): <img width="1507" height="868" alt="Image" src="https://github.com/user-attachments/assets/55cf6d99-6f24-4bd4-a943-5e7065f5605c" /> I had to abandon Cursor because it's completely unsuitable for working on a laptop, and its developers don't respond to user requests. Initially, I thought OpenCode might solve my problems since, unlike Cursor, it allows expanding the chat to full screen width. However, it turned out that OpenCode is extremely inefficient with vertical space. Here's a screenshot of my screen. As you can see, area [1] is the title bar with menu. Then comes area [2] - tabs with session and changes. Just these two headers alone consume 1/4 of the screen. Next is the chat window, but my previous query [3] is pinned there. Together with the "show steps" button, it eats up another 1/4+ of the screen. And the bottom third [4] is used for the input field with huge padding at the bottom [5] and a significant area for showing the model name [6]. As a result, for the space where I can read the AI's response, I'm left with less than 1/4 of the screen height - an area that fits only three lines of text! And I'd be happy to pay for such a tool, but I can't use it this way. Would it be possible to add a "compact mode" option (or similarly named) that would: - Hide area [2] inside area [1] as a menu or in some other way - In area [3], hide the bottom-left controls in a "..." menu, and make area [3] unpinned so it scrolls with the response text - In area [4], hide the model name line [6] in a "..." menu next to the "send message" button (currently an up arrow), and completely remove padding [5] I think such a mode would be very useful for those who want to use your tool on laptops but currently can't due to vision limitations. I could of course set the font size to 1mm, but then I'd have to read it with a magnifying glass, which I'd prefer to avoid.
Author
Owner

@avarayr commented on GitHub (Feb 10, 2026):

Image I had to abandon Cursor because it's completely unsuitable for working on a laptop, and its developers don't respond to user requests. Initially, I thought OpenCode might solve my problems since, unlike Cursor, it allows expanding the chat to full screen width. However, it turned out that OpenCode is extremely inefficient with vertical space.

Here's a screenshot of my screen. As you can see, area [1] is the title bar with menu. Then comes area [2] - tabs with session and changes. Just these two headers alone consume 1/4 of the screen. Next is the chat window, but my previous query [3] is pinned there. Together with the "show steps" button, it eats up another 1/4+ of the screen. And the bottom third [4] is used for the input field with huge padding at the bottom [5] and a significant area for showing the model name [6].

As a result, for the space where I can read the AI's response, I'm left with less than 1/4 of the screen height - an area that fits only three lines of text! And I'd be happy to pay for such a tool, but I can't use it this way.

Would it be possible to add a "compact mode" option (or similarly named) that would:

  • Hide area [2] inside area [1] as a menu or in some other way
  • In area [3], hide the bottom-left controls in a "..." menu, and make area [3] unpinned so it scrolls with the response text
  • In area [4], hide the model name line [6] in a "..." menu next to the "send message" button (currently an up arrow), and completely remove padding [5]

I think such a mode would be very useful for those who want to use your tool on laptops but currently can't due to vision limitations. I could of course set the font size to 1mm, but then I'd have to read it with a magnifying glass, which I'd prefer to avoid.

This is unlikely to be implemented due to prioritization. I suggest forking opencode and using opencode to make the changes. Should be easy and quick to do, and you can tune it to your specific likings

@avarayr commented on GitHub (Feb 10, 2026): > <img alt="Image" width="1507" height="868" src="https://private-user-images.githubusercontent.com/538980/547964077-55cf6d99-6f24-4bd4-a943-5e7065f5605c.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzA3NjUxNzQsIm5iZiI6MTc3MDc2NDg3NCwicGF0aCI6Ii81Mzg5ODAvNTQ3OTY0MDc3LTU1Y2Y2ZDk5LTZmMjQtNGJkNC1hOTQzLTVlNzA2NWY1NjA1Yy5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjYwMjEwJTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI2MDIxMFQyMzA3NTRaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT02ZmI5Mzc0MGYyOTczZjZjMDg1OWMzZGY5NDExNjdiNjhkYmM5YjgwYjY2NGUyODFmOGIxMDFjNmUxZjQ2OGEwJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCJ9.KHLD4TxsoqKG_1Im_SgL7tZezMKTOdojLmIaedJ7UzU"> > I had to abandon Cursor because it's completely unsuitable for working on a laptop, and its developers don't respond to user requests. Initially, I thought OpenCode might solve my problems since, unlike Cursor, it allows expanding the chat to full screen width. However, it turned out that OpenCode is extremely inefficient with vertical space. > > Here's a screenshot of my screen. As you can see, area [1] is the title bar with menu. Then comes area [2] - tabs with session and changes. Just these two headers alone consume 1/4 of the screen. Next is the chat window, but my previous query [3] is pinned there. Together with the "show steps" button, it eats up another 1/4+ of the screen. And the bottom third [4] is used for the input field with huge padding at the bottom [5] and a significant area for showing the model name [6]. > > As a result, for the space where I can read the AI's response, I'm left with less than 1/4 of the screen height - an area that fits only three lines of text! And I'd be happy to pay for such a tool, but I can't use it this way. > > Would it be possible to add a "compact mode" option (or similarly named) that would: > > * Hide area [2] inside area [1] as a menu or in some other way > * In area [3], hide the bottom-left controls in a "..." menu, and make area [3] unpinned so it scrolls with the response text > * In area [4], hide the model name line [6] in a "..." menu next to the "send message" button (currently an up arrow), and completely remove padding [5] > > I think such a mode would be very useful for those who want to use your tool on laptops but currently can't due to vision limitations. I could of course set the font size to 1mm, but then I'd have to read it with a magnifying glass, which I'd prefer to avoid. This is unlikely to be implemented due to prioritization. I suggest forking opencode and using opencode to make the changes. Should be easy and quick to do, and you can tune it to your specific likings
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: anomalyco/opencode#3136