Repository navigation
Description
Description
Description
Summary
During a long, multi-step coding task, OpenCode stopped displaying the assistant's normal text and Markdown output. However, the agent continued performing tool calls and modifying the project. It eventually appeared to finish the task, but no final assistant response or implementation summary was displayed.
I cannot determine whether the final response was never generated, was returned empty by the model/provider, or was generated but not rendered by the interface.
Context
I was developing a Roblox horror game called "Último Trem: Linha Morta" using OpenCode as my coding agent and Roblox Studio MCP to inspect and modify the actual Roblox Studio project.
Two major development stages had already been completed and verified.
Stage 1 established the project's architecture, shared modules, match state machine, server/client scripts, HUD, installer, and automated tests.
Stage 2 added a playable train and abandoned station, collectible components, server-side collection and delivery, extraction, and a working flashlight. The reported validation included 24 passing pure tests and a successful Studio playtest.
OpenCode had previously been able to produce detailed plans, execute tool calls, and provide completion reports.
What happened
I started Stage 3, a substantial implementation task involving an enemy called "O Passageiro." The task included NPC AI, patrol, perception, pathfinding, chasing, combat, player incapacitation, teammate rescue, audio integration, automated tests, Roblox Studio playtesting, and documentation updates.
I provided a detailed implementation plan with explicit requirements to inspect the existing project, implement the systems incrementally, run tests, verify the installation, update the documentation, and deliver a final report.
OpenCode initially responded with a detailed implementation plan and indicated that it would proceed through the shared rules and contracts, server logic, world, client, and validation.
During the subsequent work, the normal assistant text/Markdown output stopped appearing. Despite this, tool-driven activity continued. The task eventually appeared to finish, but the usual final response describing the implementation and test results never appeared.
Expected behavior
OpenCode should display assistant text and tool activity consistently throughout a long-running task. When the task finishes, it should provide the requested final response, including what was implemented, which tests passed, any errors encountered, and remaining limitations.
If the assistant's final completion is empty, fails, or cannot be rendered, the application should provide enough diagnostic information to distinguish these cases.
Actual behavior
- Assistant text/Markdown stopped appearing during the task.
- Tool calls and project modifications apparently continued.
- The task appeared to finish without a visible final assistant response.
- I could not determine from the conversation whether the implementation was fully completed or which validation steps had actually succeeded.
Impact
This makes long-running agentic coding workflows difficult to trust and review. The agent can apparently perform substantial work without providing the requested completion summary, leaving the user uncertain about the resulting project state.
Investigation
Possible areas to investigate include streaming interruption, UI rendering, tool-call orchestration, and empty or missing final model responses. I do not yet know the root cause.
I will attach screenshots of the affected session. I can also provide the original prompt, additional environment details, and relevant logs or session data if needed.
Thank you for your work on OpenCode.
Plugins
No plugins, only Roblox Studio MCP
OpenCode version
2.1.4
Steps to reproduce
- Open an existing Roblox Studio project through OpenCode.
- Configure the Roblox Studio MCP integration so OpenCode can inspect and modify the project.
- Start a long-running, multi-step coding task involving code changes, numerous tool calls, automated tests, and integration with Roblox Studio.
- Allow the assistant to inspect the project and produce its implementation plan.
- Allow the agent to continue working through its tools.
- During the implementation, observe that the normal assistant text/Markdown output stops appearing.
- Observe that tool-driven activity and project modifications apparently continue despite the missing text.
- Wait until the task appears to finish.
- Observe that no normal final assistant response or implementation report is displayed.
In my case, the task involved implementing enemy AI, combat, incapacitation, teammate rescue, and audio systems for a Roblox horror game.
I have observed this behavior in one session so far and have not yet established a minimal reproduction.
Screenshot
As we can see from the screenshot above, only the text appears in the session compaction; the rest does not. And it also appears only in his "thinkings"
Operating System
Windows 10
Terminal
Windows Terminal (PowerShell)
Activity
opencode-agent commentedon Oct 24, 2026
Thanks for the detailed report and the screenshots.
You mention that the missing text shows up only inside the model's "thinking". We've seen this before: some models send their whole reply as reasoning and send no normal text, so OpenCode shows it only in the collapsed thinking block. To tell whether this is the same problem, could you share:
opencode-go/deepseek-v4.1-flash), and the variant/reasoning effort if you set one.opencode export <sessionID>on the affected session (or attach the relevant part of it). It would show whether the turns without visible text contain only reasoning parts or nothing at all.You can reply here with the details, or edit the issue. If you edit it, please also leave a comment saying you've updated it, so we know when you're done.
These existing issues might already cover your problem (most likely first):
opencode-go/deepseek-v4.1-flash, long tool-heavy sessions)opencode-go/deepseek-v4.1-flash, the finished answer comes back inreasoning_contentwhilecontentis emptyGui8092 commentedon Oct 24, 2026
Thanks for the follow-up!
opencode-consoledeepseek-v4.1-flash-freemaxSession export:
opencode.log
Dante-dan commentedon Oct 24, 2026
I checked the attachment: it is an application/server operations log, rather than a session export. It does not contain the assistant message parts or provider response fields needed to distinguish missing text from reasoning-only output.
At current
dev(7457861d3c), the OpenAI-compatible parser keepscontentandreasoning_contentseparate; reasoning is displayed in the Thought block. The existing parser tests (80) and reasoning-focused session-runner tests (12) pass locally. This checks the code path, but does not reproduce your provider session or establish that it returned reasoning only.Could you run
opencode export <sessionID>for the affected session? A redacted extract of the last few assistant messages, with their part types, text lengths, finish status, and errors, would help narrow this down. Please remove prompt text, tool inputs/outputs, paths, account details, and credentials before sharing. There is no need to upload another full operations log.Gui8092 commentedon Oct 24, 2026
opencode-session-redacted-extract.json
Here's what you asked for
Dante-dan commentedon Oct 24, 2026
Thanks, this extract narrows it down. The last assistant message has
finish: stop, no message error, and a normaltextpart with 7,513 characters (7,413 visible), alongside the reasoning. So the missing final report cannot be explained by a reasoning-only completion: ordinary text was saved in the session. In the preceding 11 tool-call messages, there is no visible normal text; the two one-character text parts are marked invisible in your extract.I checked current
dev(5e4aa55cda): ordinary text gets a separate transcript row, outside collapsed thinking groups. That leaves live client delivery/state versus rendering of the saved Markdown to distinguish; the length-only extract cannot identify which failed.Could you check whether closing and reopening that same session reveals the final report? Also, does setting
session.markdownto"source"in the TUI configuration make it visible? That setting keeps Markdown markers visible. Please keep the session data local; no need to upload another export or operations log. These two results will help tell whether the saved text is absent from the live view or present but failing to render.Gui8092 commentedon Oct 24, 2026
I reopened the original session, and the Stage 3 review report appeared correctly.
I then set "session.markdown" to ""source"", restarted OpenCode, and reopened the session again. The report is visible with the Markdown syntax markers, as expected.
So far, I can confirm that the saved report is displayed after reopening the session and that source mode works. However, since the report was already visible after reopening, I cannot yet determine whether Markdown rendering caused the original issue.
Please let me know if you would like me to perform any additional tests.
opencode-agent commentedon Oct 27, 2026
Closing this for now because we haven't heard back. To look into it we need to know which provider and model the session used, and ideally its export (
opencode export <sessionID>). Without them we can't tell whether this is the known problem where a model sends its whole reply as thinking (#54861) or a different bug.If it happens again, please comment here with the provider and model, plus the export if you can, and we can pick it up again. If you use
opencode-go/deepseek-v4.1-flash, #54861 is the issue to follow. Thanks for the detailed report.