aaronlei / dsh-width-tiers

已收录

A client plugin for the DeepSeek Harness Web GUI that adds chat content width tiers with a floating picker button (bottom-right, above the composer): 标准 / 中等 / 宽 / 超宽 / 全宽 (standard / medium / wide / ultra / full).

main工具 查看源代码

安装

npx -y @deepseek-ai/dsh plugin --profile web add github:aaronlei/dsh-width-tiers

此安装命令根据 GitHub 仓库地址生成,是未经验证的安装起点。

README

维护者编写的文档快照。

在 GitHub 查看 ↗
提交版本 88f339e同步于 2026年8月18日

dsh-width-tiers

License: MIT

A client plugin for the DeepSeek Harness Web GUI that adds chat content width tiers with a floating picker button (bottom-right, above the composer): 标准 / 中等 / 宽 / 超宽 / 全宽 (standard / medium / wide / ultra / full).

Why

The DSH Web app hard-codes a readable content width on the conversation root (--dsh-chat-content-width: 748px). That caps the message column — and every table inside it — at 748px no matter how wide your window or panels are, so wide tables always need horizontal scrolling.

This plugin overrides that variable per tier:

TierContent widthSidebar
standard 标准748px (app default)untouched
medium 中等960pxuntouched
wide 宽1280pxuntouched
ultra 超宽1400pxuntouched
full 全宽100% (fills the window)collapsed to the icon rail

The choice persists in localStorage and is restored on the next visit; the menu highlights the current tier, and the button's five level-bars show it at a glance.

Install

dsh plugin --profile web add dsh-width-tiers

Then register it as a loader entry in ~/.dsh/profiles/web/cordis.patch.yml:

- insert:
    - id: dsh-width-tiers
      name: dsh-width-tiers

Restart dsh web (the plugin loads at boot) and hard-refresh the page (Ctrl+Shift+R). A round button with five bars appears at the bottom-right.

Installing from a local checkout: dsh plugin --profile web add file:/path/to/dsh-width-tiers. Local-development gotcha: file: dependencies are copied into the profile's node_modules (pnpm does not symlink them). After editing the plugin source, re-sync the copy (e.g. rsync -a --delete --exclude .git /path/to/dsh-width-tiers/ ~/.dsh/profiles/web/node_modules/dsh-width-tiers/) or re-install after removing it, then restart dsh web and hard-refresh.

Usage

  • Click the round button → pick a tier; the current one is highlighted.
  • full collapses the sidebar to the icon rail through the app's own toggle — it is never force-hidden or locked: click a rail icon any time to expand it, and it stays expanded.
  • Non-standard tiers also close the details panel (re-closed automatically if reopened); standard leaves everything to the app.

Language

All picker copy (tier labels, button aria-label and title) follows the app's Settings → Language (中文 / English), through the app's own locale service. Switching the language re-renders the button and menu immediately; when no explicit language is chosen the app falls back to the browser's language, and Chinese is the last resort. No plugin-side setting needed.

How it works

  • The element that defines --dsh-chat-content-width is located at runtime (the first element whose computed value is non-empty) and the tier is applied as an inline override — no hashed class names, so it survives bundle upgrades.
  • Panels are driven through the layout service (ctx.layout), never by simulating clicks.
  • The sidebar is only ever collapsed by the full tier; returning to standard restores it only if this plugin collapsed it.
  • Dictionaries are registered with the app's locale service (ctx.locale.register / bind) and re-rendered through its change subscription, so the copy always matches the app's active language.

Limitations

  • Content width cannot exceed the window: on a narrow window, wider tiers are capped by the available column. Use full (which also collapses the sidebar) for the maximum.
  • Requires the DSH Web client plugin system (dsh ≥ 0.1.0-rc.x with a web profile).

Uninstall

dsh plugin --profile web remove dsh-width-tiers

Remove the dsh-width-tiers row from ~/.dsh/profiles/web/cordis.patch.yml, then restart dsh web.

License

MIT — see LICENSE. Copyright (c) 2026 aaronlei.

项目文件与信号

以下项目是目录快照中检测到的公开仓库信号。

测试已检测

仓库信息

开发语言
JavaScript
许可证
MIT
最新发布
v1.0.2
最后更新
2026年8月17日 17:09

谨慎安装

请检查源代码、权限、生命周期脚本、依赖与网络访问;不受信任的插件应先在隔离环境中测试。