Skip to content

[FEATURE]:Allow reasoning summaries to be manually expandable per message (not just global toggle) #31825

Closed

Description

@yale-Liyao

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

name: Feature Request
description: Allow reasoning summaries to be manually expandable per message
title: "[FEATURE]: Allow reasoning summaries to be manually expandable per message (not just global toggle)"
labels: [enhancement]
body:

  • type: textarea
    id: description
    attributes:
    label: Description
    description: A clear and concise description of what you want to happen.
    value: |
    Problem
    Currently, the OpenCode desktop UI has a single global setting: "Show reasoning summary" (on/off) that controls whether all reasoning summaries are displayed or hidden. There is no way to see reasoning for individual messages without toggling the global setting, which then shows all reasoning summaries at once.

    **Desired Behavior**
    Allow reasoning summaries to be set to "collapsed" by default (via the existing toggle), but make each summary **manually expandable by clicking** on it — similar to how the shell/CLI version works, where you can choose to expand a specific reasoning block per message.
    
    **Use Case**
    - I want to keep the conversation clean (reasoning hidden by default)
    - But occasionally I want to peek at the reasoning for a *specific* response without having to toggle the global setting on/off
    
    **Suggestion**
    Change the behavior so that when "Show reasoning summary" is OFF, each reasoning block is rendered as a collapsible element (e.g., a small "Show reasoning" toggle per message), and clicking it expands only that one block. This gives per-message granularity while preserving a clean default view.
    

    validations:
    required: true

  • type: textarea
    id: alternatives
    attributes:
    label: Alternatives
    description: A clear and concise description of any alternative solutions or features you've considered.
    value: |
    1. Keep the global toggle but add a third state: "Hidden / Collapsible / Always visible"
    2. Add a keyboard shortcut to expand/collapse reasoning for the last message
    3. No change — use shell version instead (which already supports this behavior)

  • type: textarea
    id: context
    attributes:
    label: Additional context
    value: |
    - The shell/CLI version of OpenCode already supports per-message expandable reasoning — this request is about bringing parity to the desktop UI
    - OS: Windows
    - OpenCode version: latest

Activity

  1. yale-Liyao commented on Jul 1, 2026

    @yale-Liyao
    Author

    Not just reasoning summaries, but also shell, should be foldable too

  2. baschny commented on Aug 5, 2026

    @baschny

    I mean this is the "industry standard", all harnesses do it this way, this is my main pain point in using opencode now. Apart from the reasoning not being "collapsible" its very difficult to differentiate the reasoning from the actual resulting output, because its just a slightly smaller font size.

    I liked opencode, but the UI is the main reason I am now trying out alterantives (Reasonix - first impression is a clean UI and thinking collapsible like I expect), even in two hierarchies:

    First grouping together one whole loop of activities in one:

    Image

    And then neatly expandable / collapsable activities so I can choose to what I want to dig into:

    Image

    Very intuitive and clean.

  3. neriousy commented on Oct 1, 2026

    @neriousy
    Member

    In the OpenCode v2 TUI, reasoning can be expanded per message. With thinking hidden (toggle it with the "Expand/Collapse thinking" command), each reasoning block shows as a "Thought · N steps" row; click it to expand only that block.

    Added in #36901; the expanded state is kept since #48489.

    Closing as completed. If something doesn't work on v2, please open a new issue.

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