dsh-fluid-chat-width
IdentifiedFluid conversation width for the DSH web UI: the chat column follows the window minus a 64px margin, capped at 1560px and floored at 640px, while the built-in drag handles still override it.
dsh-fluid-chat-width
Fluid conversation width for the DeepSeek Harness web GUI.
The chat column stops being pinned to a fixed reading measure and follows the window instead: column width − 64px, capped at 1560px, floored at 640px. No settings page, no button — resize the window and the column tracks it.
What it does
The DSH web client sizes its conversation column from a fixed measure and lets
the built-in drag handles override it with an inline
--dsh-chat-user-width on the conversation root. This plugin publishes that
same custom property from a ResizeObserver on the column, so:
- Fluid by default — the column is
min(columnWidth − 64, 1560)on every resize, never narrower than the app's own 640px floor. - Drag handles still win — a handle writes a deeper inline declaration, which legitimately overrides the published value. Dragging is unaffected; the value you drag to is what you get.
- Stale preferences are cleared once per boot — the client persists a fixed
width in
localStorage["dsh.conversation.contentWidth"]. On startup this plugin removes that key and strips any inline echo already published, so a leftover pinned width from an earlier drag cannot silently defeat it.
Embedded conversations are left alone: they define their own content width and
ignore --dsh-chat-user-width. Only the main chat region is targeted
([data-conversation-region="chat"] > [data-conversation-scroll]).
Tuning
The three constants live at the top of apply() in client.js:
const MARGIN = 64; // total side breathing room (px)
const CAP = 1560; // max content width (px)
const MIN = 640; // floor, matches the app's own CONTENT_MIN
They are compile-time constants rather than settings on purpose: this plugin has no host half, no settings namespace, and nothing to persist. Edit and reload.
Install
dsh plugin add dsh-fluid-chat-width
Or from a checkout:
dsh plugin add github:helloworld010234/dsh-fluid-chat-width
Restart the client afterwards.
Uninstall
dsh plugin remove dsh-fluid-chat-width
If you had dragged a handle before installing, the preference key was cleared on boot. Nothing else is left behind — the plugin writes no files, registers no routes, and touches no storage except removing that one key.
How it is built
Two faces, no build step, no runtime dependencies:
| File | Face | Role |
|---|---|---|
index.js | host (Node) | Deliberately empty. Satisfies the plugin shape so the bundle patch can mount the package into the web roster. |
client.js | browser | The whole plugin: one ResizeObserver, one custom property. A hand-written window.__ModuleLoader__.load closure factory. |
cordis.patch.yml | bundle patch | Inserts the dsh.client row into the profile's layer stack. |
There is no bundler and no transpiler — client.js ships as written, which is
why the source you read here is the source that runs.
License
MIT
Comments
Loading…
Similar plugins
Session-header button that cycles the conversation width (748-1600px), widening the chat column, composer, and user bubbles together.
★ 0
dsh plugin --profile web add dsh-chat-width-customizerby yunxiyang
DSH web client plugin: pins the conversation column to a configurable percentage of its width (default full width) instead of the built-in 680-920px reading measure.
★ 0
MIT
JavaScript
Sep 29, 2026
dsh plugin --profile web add dsh-wide-conversationby 764475881
Drag-to-resize chat content width for the DeepSeek Harness web UI (748px -> 1040px, draggable handle). · DSH 网页聊天宽度可拖拽调节插件
★ 4
↓ 41/wk
MIT
JavaScript
Sep 28, 2026
dsh plugin --profile web add dsh-chat-widthBelow 1024px the sidebar leaves the shell frame entirely and is opened as an overlay drawer from a header button, so the conversation gets the full viewport width; wider layouts are untouched.
★ 0
MIT
JavaScript
dsh plugin --profile web add dsh-mobile-sidebarby djs326
All-in-one UI plugin for DSH Desktop (Windows): conversation-width slider with fullscreen preview and follow-window mode, thinking-block enhancements (forced Chinese, expand/collapse, Markdown renderi
★ 3
↓ 212/wk
MIT
TypeScript
Sep 26, 2026
dsh plugin --profile web add dsh-plugin-width-sliderby AnakinCao
DSH Web GUI plugin: adaptive chat content width — the middle area expands with screen resolution (1080p/2K/4K) when side panels are collapsed (injects CSS overriding --dsh-chat-content-width)
★ 0
MIT
JavaScript
Aug 31, 2026
dsh plugin --profile web add dsh-chat-width