Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Selected text is unreadable (black on black) on light themes

Open Beginner friendly
#58,181 1 comment 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
65/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Active
Tech stack
typescript
Domain
frontend

Research direction

Start by tracing how selection colors are applied to session transcript text in assistant markdown, code blocks, and user messages, then check the built-in opencode light theme in the test renderer. Compare selected text contrast in light and dark themes and reproduce the black selection bar in Ghostty if available. Done means selected text remains readable in all three transcript areas on light themes while dark theme selection still works.

Written by the indexing model from the issue text.

Description

pending close triaging
Description

Selecting text in the session transcript on a light theme is unreadable: the selection paints black text on a black background. This happens in assistant markdown, code blocks and user messages. The dark theme is fine.

Selected text has no background of its own (the surrounding block's color is transparent for the text cells), so OpenTUI's default inverse selection turns the foreground black on the ink color. In a test renderer on the built-in opencode light theme (no custom theme), selected text in a user message and in assistant markdown has a contrast ratio of 1.21:1 (dark theme: 18.1:1).

Also seen live in Ghostty with a custom light theme: dragging over text shows a solid black bar and the text cannot be read.

Plugins

none

OpenCode version

dev (6a5973d263)

Steps to reproduce
  1. Use a light theme (theme.mode: "light").
  2. Open a session with at least one user message and one assistant reply.
  3. Drag over text in either one.
Screenshot

I can attach a recording if useful.

Operating System

macOS

Terminal

Ghostty

Dominant language
TypeScript
Stars
215k
Forks
28.9k
Avg merge
4h 21m
Merged PRs (30d)
476

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from anomalyco/opencode

All issues in anomalyco/opencode

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.