anomalyco / anomalyco/opencode

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

Open
#45,872 1 comment 0 reactions 1 assignee View on GitHub

@simonklee is already working on this.

Since Aug 28, 2026.

2.0
Dominant language
TypeScript
Stars
209k
Forks
27.5k
PR merge metrics
PR metrics pending

Description

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

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.