You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
experimental.text.complete hook output not reflected in TUI display #7287
TUI should display the text modified by experimental.text.complete hook.
Actual Behavior
TUI displays the original streamed text, not the hook-modified text.
Analysis
Looking at packages/opencode/src/session/processor.ts:
case"text-end":
if(currentText){currentText.text=currentText.text.trimEnd()consttextOutput=awaitPlugin.trigger("experimental.text.complete",{...},{text: currentText.text},)currentText.text=textOutput.text// ✅ Result assignedawaitSession.updatePart(currentText)// ✅ Saved}
The hook result is saved to the session, but the TUI may be:
Caching the streamed text-delta updates
Not re-rendering when the final text is saved after hook completion
Possible Root Cause
During streaming, text-delta events update the TUI in real-time. When text-end triggers the hook and saves the modified text, the TUI might not refresh to show the updated content.
I've searched through existing issues and did not find any clear duplicates of this issue. The problem appears to be specific to the experimental.text.complete hook not reflecting modifications in the TUI display despite the changes being saved to the session.
This is a distinct issue, though #196 is tangentially related in that it also deals with streamed message display behavior in the TUI.
Activity
github-actions commentedon Jan 8, 2026
I've searched through existing issues and did not find any clear duplicates of this issue. The problem appears to be specific to the
experimental.text.completehook not reflecting modifications in the TUI display despite the changes being saved to the session.This is a distinct issue, though #196 is tangentially related in that it also deals with streamed message display behavior in the TUI.