Show extended thinking in CLI output (collapsed by default, toggle to expand)

Open 💬 6 comments Opened Mar 19, 2026 by RaggedR

Summary

DeepSeek-R1 and Qwen expose their chain-of-thought reasoning (<think> blocks) directly in user-facing output. Claude's extended thinking is equally rich but invisible in Claude Code — the thinking tokens are discarded before rendering.

It would be great to have a way to see Claude's thinking process in the CLI, collapsed or truncated by default (e.g. first 2-3 lines with a "thinking..." indicator), with a keybinding like Ctrl-O to expand/collapse the full thinking block.

Motivation

  • Trust & transparency — seeing the reasoning helps users catch errors in logic before they propagate into code changes
  • Educational value — watching Claude reason through a problem is genuinely useful for learning
  • Competitive parity — DeepSeek and Qwen make thinking visible by default; Claude's thinking is arguably better but users can't see it in the CLI
  • Debugging — when Claude makes a surprising decision, being able to peek at the reasoning would save a lot of "why did you do that?" back-and-forth

Proposed UX

  1. Default (collapsed): Show a brief indicator when thinking occurred, e.g.:

``
⟐ Thinking (1.2s, 340 tokens) [Ctrl-O to expand]
``

  1. Expanded (Ctrl-O toggle): Render the full thinking block inline, perhaps dimmed or in a distinct color to visually separate it from the response
  2. Config option: A setting like "showThinking": "collapsed" | "expanded" | "hidden" in settings.json to control the default behavior

Prior art

  • DeepSeek-R1 — shows <think> blocks by default in all interfaces
  • Qwen (QwQ, QwQ-32B) — similarly exposes chain-of-thought reasoning in output
  • Both have found that visible thinking significantly increases user trust and engagement

View original on GitHub ↗

This issue has 6 comments on GitHub. Read the full discussion on GitHub ↗