Skip to content

[FEATURE]: Document tool-call visibility toggles in the opencode2 (V2) TUI and add a keybind + config default for hiding tool details #45872

Closed as not planned

Description

@donrel

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

Context

This is about the opencode2 (OpenCode 2 beta) client only — the new TUI that ships as the opencode2 binary. By default, every tool call (bash, read, write, edit, webfetch, …) is rendered as a large, fully-fleshed block in the session view, which makes sessions very noisy compared to older, more compact layouts.

Current behavior (verified in the V2 TUI)

There are two runtime toggles in the V2 command palette (Ctrl+P), but none of them are discoverable from the official docs:

  1. "Hide tool details" / "Show tool details" — hides all completed tool-call detail blocks (bash output, write/edit/read blocks), leaving a compact summary. Runtime state: tool_details_visibility.
  2. "Show generic tool output" / "Hide generic tool output" — controls whether "generic" tool output (MCP / plugin tools) is expanded into a block. Runtime state: generic_tool_output_visibility. This one has a bindable keybind ID: session.toggle.generic_tool_output (default: unbound).

Problems

  • Undocumented. A site search of the official V2 docs (opencode.ai/v2) for "Hide tool details", "tool details" and "generic tool output" returns no results. The V2 CLI config page and the V2 keybinds reference do not mention these toggles at all (the keybinds reference lists session.toggle.thinking, session.toggle.scrollbar, session.toggle.exploration_grouping, but not session.toggle.generic_tool_output, and no tool-details toggle). Users who search the docs simply cannot find how to turn off the tool-output blocks.
  • "Hide tool details" cannot be bound to a key. Only session.toggle.generic_tool_output has a keybind ID. The "Hide tool details" toggle is command-palette-only; binding it explicitly in cli.json is rejected as an unknown command ID. So there is no way to quickly collapse/hide tool output with the keyboard.
  • No config-file default. Both toggles are runtime-only preferences (persisted under state/kv.json); they cannot be set as defaults in cli.json / opencode.json. This means every new environment/install starts in the noisy default state, and non-developer or quiet-mode users have to manually toggle it once via the command palette.

Requests

  1. Document both command-palette toggles in the official V2 docs (CLI config + keybind reference), including the session.toggle.generic_tool_output keybind ID.
  2. Add a bindable keybind for the "Hide tool details" toggle (mirroring session.toggle.generic_tool_output), so users can collapse/hide tool output from the keyboard.
  3. Ideally, allow setting these visibilities as defaults in cli.json (e.g. tool_details_visibility: false or a tool_details-style option) so a fresh install can default to a quieter session view.

Related (legacy client, for reference, not the subject of this issue)

Older discussions about collapsible/hideable tool output (#14511, #17250, #19074) and a docs/behavior mismatch (#16062) targeted the pre-opencode2 client and were closed. This issue is specifically about the current V2 client (opencode2) and its docs.

Environment

  • opencode2 version: v0.0.0-beta-18414 (OpenCode 2 beta)
  • OS: macOS (Darwin 27.0.0, arm64 / MacBook Pro M3)
  • Terminal: Ghostty
  • Shell: /bin/zsh
  • Plugins: opencode-supermemory@latest

Activity

  1. github-actions commented on Aug 28, 2026

    @github-actions
    Contributor

    For keybind-related issues, please also check our pinned keybinds documentation: #4997

  2. neriousy commented on Oct 22, 2026

    @neriousy
    Member

    The 'Hide tool details' and 'generic tool output' toggles were removed in ac1ddc3. Tool display is now controlled by settings in the config file: session.verbosity (low/medium/high) and session.grouping. Both can be bound to keys through the session.verbosity.cycle and session.toggle.exploration_grouping commands. If something is still missing from that setup, comment here and we'll reopen it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions