DeepSeek Harness plugin

dsh-left-sidebar-collapse

Auto-collapse / fully-collapse the DSH left sidebar on session select, as a standalone installable plugin. General-settings toggles plus a single floating expand button.

Jump to install

Source facts

Repository
condaThinker/dsh-left-sidebar-collapse
Latest update
Aug 15, 2026
Category
Memory
GitHub stars
2
Format
plugin
Catalog evidence
Upstream dsh.bundle evidence
Evidence path
package.json#dsh.bundle
Checked against
0.1.0-rc.8
Upstream check date
2026-08-20

This evidence comes from the upstream catalog. This site has not installed, run, or security-reviewed the plugin.

Install

Start with a prompt that asks an agent to review the GitHub repository and source. Switch to the command if you want to install it yourself.

Copy this prompt into DSH, Codex, or another agent and ask it to review the GitHub repository and source first.

Do not install or run any commands yet. Read this plugin's GitHub repository, README, and relevant source code. Then answer the questions below clearly and directly so I can decide whether it fits my needs:

1. What is this plugin, and what problem does it solve?
2. Who is it for, and what are its typical use cases?
3. How is it used after installation? Include one minimal example.
4. What known limitations or privacy, security, compatibility, or maintenance risks does it have?
5. Give a clear recommendation: recommend, conditionally recommend, or do not recommend, with reasons.

Distinguish statements documented by the repository, inferences from source code, and unknowns. If evidence is insufficient, say so explicitly. Do not guess or simply repeat the README.

GitHub: https://github.com/condaThinker/dsh-left-sidebar-collapse
Plugin: dsh-left-sidebar-collapse
Author: condaThinker

Check the source files

Read the README and other files from this plugin directory before installing.

File explorer3 files
README.mdSource · read only
README language

dsh-left-sidebar-collapse

English | 中文

Auto-collapse / fully-collapse the DSH left sidebar when you select a conversation. A standalone, installable DSH plugin (pure client, no ui-layout framework changes).

Two independent preferences appear in Settings → General:

1. Auto-collapse sidebar — after you select a conversation, the left sidebar collapses to its 56px rail. Deterministic: a plugin-internal state machine drives ctx.layout and reads the stable data-sidebar-collapsed frame signal, holding against the layout's own feedback so it never double-toggles. 2. Fully collapse — when the sidebar is collapsed, tuck it completely away (the rail is removed, the grid's first track collapses to 0) and show a single floating expand button in the top-left. Clicking it restores the full sidebar. The conversation pane stays at full width — nothing else is disturbed.

The preferences are persisted in localStorage (process-local browser preference), so the toggles are always writable and survive reloads.

Install

Requires DSH (DeepSeek Harness) dsh CLI.

dsh plugin --profile web add git+https://github.com/condaThinker/dsh-left-sidebar-collapse

Then restart the profile:

dsh --profile web
# or whatever your run command is for the profile you installed into

After install, open Settings → General and toggle Auto-collapse sidebar (and optionally Fully collapse).

Git install and the prepare build

This plugin ships a self-contained prepare build script (tsdown), per the DSH plugin distribution convention. When installed by git, pnpm runs that script to build lib/ in the profile, so it needs network access to resolve the DSH peer/dev dependencies and the profile must allow the build script: add dsh-left-sidebar-collapse to the profile's allowBuilds (see pnpm ≥10 allowBuilds/strictDepBuilds), then re-run the dsh plugin add. For a zero-build alternative, a maintainer may instead commit a freshly built lib/ into the repo and drop prepare — but the recommended path is prepare.

Build

pnpm install
pnpm build
pnpm test

How it works

  • Auto-collapse: a listener on ctx.sessions.list notices when the

current session moves to a different real session; the [AutoCollapseMachine](src/client/collapse-machine.ts) then collapses the sidebar via ctx.layout.toggleSidebar() only while the frame renders it expanded (reading data-sidebar-collapsed), and suppresses further flips until the frame confirms the collapse — no double-toggle, no flip-back.

  • Fully collapse: a shell.overlay occupant (FullCollapseButton)

reactively watches data-sidebar-collapsed; when collapsed and "fully collapse" is on it injects a tiny grid-template-columns: 0 minmax(0,1fr) 0 !important override (so the sidebar track → 0 and the center reclaims the width) and shows the single expand button.

The client bundle respects DSH's module-table purity: only platform modules (ui-primitives, the documented dsh-client-runtime exemption) are value-imported; everything else is a type-only contract pull.

Model Experience

None, as the plugin only moves the browser layout column and never enters the append-only Session log, the model context, or telemetry.

#### KV Cache effect

None; the collapse gesture does not touch the history tail.

Known Limitations and Deferred Work

  • dsh-better-sidebar coexistence — both plugins manage sidebar state

independently; if the toggle looks like it fires without the flag on, check whether another sidebar plugin (e.g. dsh-better-sidebar) is also collapsing. This plugin is strictly off when its toggle is off.

  • The collapse gesture is a toggle, not a store write — because

ctx.layout exposes only toggleSidebar(), the plugin keeps the state machine above to avoid double-toggling, but it cannot move the layout store directly.