Skip to content

[FEATURE]: per-tool output visibility #17250

Closed as not planned
Closed as not planned

Description

@graelo

Feature hasn't been suggested before.

  • I have verified this feature I'm about to request hasn't been suggested before.

Describe the enhancement you want to request

Hi!

Problem

The TUI has a global toggle (ctrl+e) for showing/hiding tool output. This is all-or-nothing: either every tool's output is expanded, or none is. In practice, users keep it off because most tool outputs (file reads, shell commands) are noise. But some tools — especially plugins — produce rich, formatted output that's the whole point of running them.

Proposal

Add a show_tool_output array to tui.json that lists tool names whose output should always be visible, regardless of the global toggle:

{
  "show_tool_output": ["project_status", "todo_read", "todo_write"]
}

Tools in this list:

  • Show their output block even when the global toggle is off
  • Start expanded by default (instead of collapsed)

Tools not in the list behave exactly as they do today.

Motivation

Consider a project_status plugin that renders a project health dashboard:

📊 Git
┌──────────────┬────┬──────────────────────────┐
│ Branch       │ 🔀 │ feat/per-tool-output      │
│ Uncommitted  │ ✅ │ clean                     │
│ Ahead/Behind │ 📡 │ +1 -0                     │
└──────────────┴────┴──────────────────────────┘

📝 Recent Commits
┌───┬─────────┬──────────────────────────────────┐
│ 1 │ d4ae8ec │ feat(tui): add per-tool output... │
│ 2 │ d8fbe0a │ chore: update nix hashes          │
│ 3 │ b76ead3 │ refactor(desktop): rework default..│
└───┴─────────┴──────────────────────────────────┘

📄 Project Docs
┌───────────┬────┐
│ README    │ ✅ │
│ LICENSE   │ ✅ │
│ CHANGELOG │ 🔲 │
│ CI config │ ✅ │
└───────────┴────┘

Without per-tool visibility, this dashboard is hidden behind the global toggle, mixed in with every other tool's output. With it, users get the rich output they care about while keeping the rest compact.

Implementation

This is a 6-line change across 2 files:

  • tui-schema.ts: add show_tool_output as an optional string[] to TuiOptions
  • session/index.tsx: in GenericTool, check if props.tool is in the list to (1) default expanded to true and (2) show the output block even when the global toggle is off

I can easily open a PR (I've been testing this locally, it's as straightforward as mentioned above).

Cheers!

Activity

  1. added
    discussionUsed for feature requests, proposals, ideas, etc. Open discussion
    on Mar 12, 2026
  2. added
    coreAnything pertaining to core functionality of the application (opencode server stuff)
    on Mar 12, 2026
  3. github-actions commented on Mar 12, 2026

    @github-actions
    Contributor

    This issue might be a duplicate of existing issues. Please check:

  4. graelo commented on Mar 12, 2026

    @graelo
    Author

    @github-actions, thanks my dear bot, this is somewhat related, but my feature request is neither related to MCP nor to a clickable action. It's quite the opposite because I'm asking for a per-tool config setting.

  5. graelo commented on Mar 27, 2026

    @graelo
    Author

    Hi, can I open a PR for this? I think it has 2 stages:

    • the implementation (very short, I've been using it for the past 2 weeks)
    • the docs if you agree with the PR
  6. removed
    discussionUsed for feature requests, proposals, ideas, etc. Open discussion
    coreAnything pertaining to core functionality of the application (opencode server stuff)
    on May 3, 2026
  7. github-actions commented on Jul 3, 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