Config option to disable message panel borders #7799

Closed
opened 2026-02-16 18:08:15 -05:00 by yindo · 1 comment
Owner

Originally created by @JDRV-space on GitHub (Jan 28, 2026).

Originally assigned to: @rekram1-node on GitHub.

Feature Request

Add a config option to disable the left-side borders on message panels in the TUI.

Motivation

For users running OpenCode in terminals with custom color themes (e.g., Ghostty with Retro Legends/Dracula palettes), the bordered panels add visual noise. A borderless mode would give a cleaner, more minimal look — similar to how Claude Code streams plain text without panel borders.

Proposed Config

{
  "tui": {
    "borders": false
  }
}

Implementation

The change is small — the <box> components in packages/opencode/src/cli/cmd/tui/routes/session/index.tsx and dialog-message.tsx already support border={false}. The config toggle would just conditionally set this prop.

Affected Components

  • UserMessage box: border={["left"]}
  • BlockTool box: border={["left"]}
  • Error display box: border={["left"]}
  • Dialog message box

All use customBorderChars={SplitBorder.customBorderChars} which could be conditionally omitted.

Originally created by @JDRV-space on GitHub (Jan 28, 2026). Originally assigned to: @rekram1-node on GitHub. ## Feature Request Add a config option to disable the left-side borders on message panels in the TUI. ### Motivation For users running OpenCode in terminals with custom color themes (e.g., Ghostty with Retro Legends/Dracula palettes), the bordered panels add visual noise. A borderless mode would give a cleaner, more minimal look — similar to how Claude Code streams plain text without panel borders. ### Proposed Config ```json { "tui": { "borders": false } } ``` ### Implementation The change is small — the `<box>` components in `packages/opencode/src/cli/cmd/tui/routes/session/index.tsx` and `dialog-message.tsx` already support `border={false}`. The config toggle would just conditionally set this prop. ### Affected Components - UserMessage box: `border={["left"]}` - BlockTool box: `border={["left"]}` - Error display box: `border={["left"]}` - Dialog message box All use `customBorderChars={SplitBorder.customBorderChars}` which could be conditionally omitted.
yindo added the opentui label 2026-02-16 18:08:15 -05:00
yindo closed this issue 2026-02-16 18:08:15 -05:00
Author
Owner

@github-actions[bot] commented on GitHub (Jan 28, 2026):

This issue is related to other TUI configuration feature requests. You might want to review these similar issues for context on TUI customization options:

  • #7853: Config option to disable syntax highlighting in diffs
  • #10571: Add tui.tips configuration option to disable input placeholder hints
  • #9089: TUI option for minimal/collapsed diff display

Feel free to ignore if your use case is different, but these discussions might provide additional context or implementation insights.

@github-actions[bot] commented on GitHub (Jan 28, 2026): This issue is related to other TUI configuration feature requests. You might want to review these similar issues for context on TUI customization options: - #7853: Config option to disable syntax highlighting in diffs - #10571: Add tui.tips configuration option to disable input placeholder hints - #9089: TUI option for minimal/collapsed diff display Feel free to ignore if your use case is different, but these discussions might provide additional context or implementation insights.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: anomalyco/opencode#7799