Back to home

HarryLi-7

dsh-tool-fold

No description

Stars
0
Language
JavaScript
Created
Aug 16, 2026
Updated
Aug 16, 2026

Introduction

dsh-tool-fold

Fold all tool-call cards and thinking blocks in the DSH conversation into a single switch. Maximum collapse: process content is completely hidden by default; one toggle in Settings → General shows/hides everything.

What it does

StateEffect
Toggle off (default)All tool-call cards ([data-chat-flow-kind="tool-call"]) and thinking blocks ([data-variant="think"]) are completely hidden — the conversation shows only user messages and assistant replies
Toggle onEverything is restored with native rendering (zero loss); process blocks are tinted with the GUI brand blue so "process" is visually distinct from "result"
PersistenceState is saved to localStorage and survives reloads

The control lives in Settings → General settings, between "Appearance" and "Enter behavior when busy" (order 15).

Why "maximum collapse"

Instead of folding each card into its own header (which leaves a vertical stack of icons), this plugin hides everything and exposes one global toggle — a much cleaner conversation view. No counts, no labels, no icons cluttering the flow.

Implementation

  • Pure client plugin (no host code).
  • State rides an attribute on <html> (data-dsh-tools-open), so newly rendered nodes (streaming, virtualization) follow automatically — no mutation observer needed for display.
  • Stable DOM anchors only (data-chat-flow-kind="tool-call", data-variant="think") — no CSS-module hashed class dependencies.
  • Reasoning blocks (assistant-step / thinking) are included in the fold, per user preference; assistant reply text is never touched.

Install

dsh plugin --profile web add /path/to/dsh-tool-fold

Restart dsh web, then refresh the page. Open Settings → General to find the toggle.

License

MIT