Skip to content

fix(tui): /review creates empty user bubble (input hidden in UI) #29685

Closed as not planned

Description

@XingYu-Zhong

Description

Summary
In TUI, messages sent with /review sometimes appear as empty user entries. The underlying input is actually present, but the message UI renders nothing for that user turn.

Steps to Reproduce
Open TUI and enter any normal text command such as /review.
Submit it with prompt content (e.g., /review check this file).
Observe session log/message list.

Actual Result
The user message bubble is empty / missing in TUI user display.
Subsequent assistant output may still proceed.

Expected Result
User input should be visible in the user message, e.g. check this file for /review.

Impact
Appears as if message content was lost.
Reduces trust and makes troubleshooting history harder.

Root Cause (from code investigation)
/review route is handled via command() and isSubtask branch in prompt construction, which creates a message part of type subtask without a normal text part.

packages/opencode/src/session/prompt.ts (subtask branch around resolvePromptParts for isSubtask)
TUI UserMessage renderer only concatenates and renders text parts and ignores subtask parts.
packages/opencode/src/cli/cmd/tui/routes/session/index.tsx (user message text extraction + Show when={text()})
Therefore, the message exists but is not renderable in the current UI path.

Suggested Fix
In TUI UserMessage, add fallback rendering for non-empty subtask.prompt when no normal text parts exist.
Optional: fallback to subtask.description if prompt is empty.

Environment
Repo: local issue observed while using anomalyco/opencode
Repro command: /review
Date observed: 2026-05-28

Plugins

No response

OpenCode version

1.15.11

Steps to reproduce

  • Open the TUI and start a normal session.
  • In the input box, type: /review (or with args, e.g. /review fix this).
  • Press Enter to submit.
  • Then type any normal text message like abc and press Enter.
  • Check the session message list:
    • The /review user message is usually displayed as empty.
    • The message content appears to have disappeared, even though the command still proceeds.
  • (Optional) Repeat with /review test or /review some text; this tends to reproduce consistently.
Image

Screenshot and/or share link

Image

Operating System

No response

Terminal

No response

Activity

  1. github-actions commented on Jul 28, 2026

    @github-actions
    Contributor

    To stay organized issues are automatically closed after 60 days of no activity. If the issue is still relevant please open a new one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions