Repository navigation
Description
What this is
A consolidated, implementation-ready specification for the Output surface, plus an offer to build it as a PR.
It gathers the related asks that were split out of #58243 (closed by the OpenCode team, who asked for one issue per item). This issue is the "Output" one; #58653 (unresolved {env:} placeholder prompts + secrets stored outside the plaintext config) and #58654 (schema-aware MCP config editor) stay separate, as requested there.
The surface: an Output launcher beside Review / Terminal / Open file
The session side region already offers three launchers - Review, Terminal and Open file (in the v2 web UI they are the three buttons with Ctrl+Alt+R / Ctrl+Alt+T / Ctrl+Alt+P). This request adds a fourth - Output (Ctrl+Alt+O) - and gives it the data only the host can see.
The Output tab shows one collapsible section per MCP server:
| Column | Content |
|---|---|
| server | name + connection state (connected / starting / failed / needs auth) |
| tools | the tool count, expandable to that server's full tool list |
| output | that server's own recent stdout/stderr tail, filtered to that server |
| links | every http://localhost / http://127.0.0.1 URL found in that server's output, rendered as a clickable link that opens in the OS default browser |
Plus an optional links field next to a server's config, for servers that print nothing themselves.
Why this has to be core, not a plugin (recorded so it is not re-suggested)
The triage reply on the sibling split states it plainly: "Plugins can't read that output or add to the MCP manager, so a plugin can't do this today", and the reply on #58653 adds that a plugin cannot prompt before the config is loaded nor reach a protected secret store. This is a core change.
Real case
codebase-memory-mcp currently runs through a PowerShell wrapper whose only extra job is to print its panel URL, because nothing else surfaces it:
"codebase-memory-mcp": {
"type": "local",
"command": [
"powershell.exe", "-NoProfile", "-Command",
"[Console]::Error.WriteLine(' Codebase Memory UI:\n http://127.0.0.1:9749'); & codebase-memory-mcp --ui=true --port=9749"
]
}Keeping a per-server tail here also addresses the truncation raised in #50710, where a failing server's stderr is cut before the chained cause.
Offer to implement
We are happy to implement the Output surface alone as a PR against anomalyco/opencode, following CONTRIBUTING.md and the existing side-panel patterns, with tests. Two decisions we need from a maintainer before starting:
- Surface - a new
Outputlauncher in the session side region (beside Review / Terminal / Open file), or per-server output inside the existing/mcpsarea? - Ownership - do you want us to open the PR ourselves, and if so, against which branch and with which test expectations?
Related
- [FEATURE]: MCP manager - per-server output panel with clickable local panel URLs #58652 - per-server output panel with clickable local panel URLs (the original split of this ask)
- [FEATURE]: MCP config - prompt for unresolved placeholder values and store the secrets outside the config #58653 - resolved-placeholder prompts + secret storage outside the plaintext config
- [FEATURE]: MCP manager - a schema-aware MCP config editor surface #58654 - schema-aware MCP config editor
- [FEATURE]: MCP manager UX - per-server output links (web panel URLs), placeholder prompts with secure secret storage, a full config editor, and richer ask/mention inputs #58243 - the closed umbrella
- mcp: Windows service registers zero MCP servers from global config #50710 - a failing server's stderr truncated before the chained cause
Additional context
- opencode v2.1.4 / v2.2.0, Windows 11, PowerShell; CLI surface and the official MCP reference measured/read 2026-10-24, docs re-read 2026-10-29.
- The
Outputnaming and the comment style follow the repository's own conventions.
Activity
opencodejr commentedon Oct 29, 2026
Thanks for the detailed write-up and for offering to build this!
I think this is a duplicate of #58652, your own earlier split of the same ask. That issue is still open and covers the same per-server stdout/stderr tail, clickable
http://localhost/http://127.0.0.1links and optionallinksconfig field. TheOutputlauncher placement and your two questions (surface and PR ownership) fit best as a comment on #58652, so the whole discussion and any maintainer decision stays in one place.Related issues, ordered by likelihood of being the same request:
The bot will close this issue as a duplicate in 1 day unless you reply explaining how it differs from #58652.
arin8513 commentedon Oct 29, 2026
Thanks - and you are right about the overlap: the data this asks for (a per-server stdout/stderr tail, clickable
http://localhost/http://127.0.0.1links, an optionallinksfield) is exactly #58652's ask, unchanged.What is genuinely new here, and why it was opened separately, is the surface, not the data:
/mcps, and the desktop/web MCP panel). This asks for the same data as a fourth launcher in the session side region, beside Review, Terminal and Open file, namedOutput(Ctrl+Alt+O). The reasoning: those three launchers are where a user already looks while working inside a session, and a panel URL is a session-time thing, not a settings-time thing - you want it while the server is producing output, next to the terminal you are already reading.Both of those are maintainer decisions, not new data requirements - which is why your suggestion is right: the home for them is a comment on #58652, not a second issue. We are posting that comment there now and keeping #58652 as the single thread, then closing this one as a duplicate.
Related, for the record: #58243 (closed umbrella), #50710 (stderr truncated before the chained cause), and #58653 / #58654 (the sibling placeholder/secret-storage and config-editor asks) stay separate.
opencodejr commentedon Oct 30, 2026
We didn't hear back on how this differs from #58652, so I'm closing this as a duplicate of #58652. Thanks for the detailed spec and for offering to implement it!
Please bring your two questions there: whether it should be a separate
Outputlauncher beside Review / Terminal / Open file or live inside the MCP manager, and how a PR should be opened. That way maintainers can weigh in on the request in one place. If this turns out to be different from #58652 after all, reply here and it can be reopened.