deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
INSTALL REFERENCE
dsh plugin --profile web add github:aaronlei/dsh-width-tiers
该命令指向仓库当前默认分支;尚无绑定当前 commit 的完整验证结果。
PROJECT README
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).
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:
| Tier | Content width | Sidebar |
|---|---|---|
| standard 标准 | 748px (app default) | untouched |
| medium 中等 | 960px | untouched |
| wide 宽 | 1280px | untouched |
| ultra 超宽 | 1400px | untouched |
| 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.
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'snode_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 restartdsh weband hard-refresh.
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.standard leaves everything to the app.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.
--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.ctx.layout), never by
simulating clicks.full tier; returning to
standard restores it only if this plugin collapsed it.ctx.locale.register / bind) and re-rendered through its change
subscription, so the copy always matches the app's active language.full (which also collapses the
sidebar) for the maximum.web
profile).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.
MIT — see LICENSE. Copyright (c) 2026 aaronlei.
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。