-
Notifications
You must be signed in to change notification settings - Fork 11.4k
Description
Summary
When using OpenCode via ACP in JetBrains Rider (confirmed with GLM5 plugin, possibly other plugins), assistant output is often not streamed fully in real time. Part of the response appears to be missing/truncated, and the missing content is only flushed/displayed when the next prompt is submitted.
Expected Behavior
Assistant output should stream continuously and completely during a single response, without requiring a follow-up prompt to reveal missing chunks.
Actual Behavior
- Initial response appears truncated or incomplete.
- Remaining output appears right before (or as part of UI handling for) the next prompt submission.
- This creates the perception that streaming stopped early.
Environment
- IDE: JetBrains Rider
- Integration: OpenCode ACP agent plugin
- Model/plugin: GLM5 plugin (possibly reproducible with others)
- Transport: ACP session streaming/events
Notes / Suspected Cause
This may be related to client handling of incremental events (e.g., message.part.delta vs message.part.updated) or buffering/flush behavior in plugin-side rendering. It appears some chunks are received but not rendered until a subsequent interaction triggers UI flush.
Impact
- Confusing UX (looks like model stopped early).
- Hard to trust completeness of responses.
- Slower workflow due to manual “poke” (next prompt) required to reveal missing text.
Request
Please investigate ACP event/chunk handling in JetBrains plugin integrations and ensure incremental chunks are flushed/rendered immediately, including fallback behavior when only updated events are emitted.
Plugins
OpenCode ACP agent integration in JetBrains Rider
OpenCode version
1.2.15
Steps to reproduce
- Start OpenCode ACP agent integration in JetBrains Rider.
- Use GLM5 plugin (or another plugin) for a response that streams multiple chunks.
- Observe that output appears incomplete at end of generation.
- Send a new prompt.
- Notice previously missing output appears before the new request is actually sent upstream.
Screenshot and/or share link
Operating System
OpenSUSE Tumbleweed
Terminal
No response