DeepSeek Harness Hub
← 返回列表

聊天宽度调节fly-fish76/dsh-width-control

DeepSeek Harnessspec-screened在 GitHub 查看 ↗
未验证

独立调节消息文本列与输入框宽度并记忆设置

尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/8/15 · 已提供中文文档

为 DeepSeek Harness (DSH) Web UI 调整聊天文本列与输入框宽度——可折叠标签、独立滑块、重启后记住你的设置

综合分
27.5
GitHub 分
27.5
用户评分
★ Stars
1
周下载量
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add fly-fish76/dsh-width-control
该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/16(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

DSH Web 宽度调节插件 · dsh-width-control

在 DeepSeek Harness (DSH) Web 界面的输入框工具行添加一个可折叠的「宽度」控件——
独立调节消息文本列与输入框的显示宽度,并记忆上次参数,重启 DSH 后自动恢复。

✨ 特性

- 🎛️ 一个紧凑的折叠式 chip(⇔ 宽度 748px ▾)挂在输入框工具行左端,点击弹出面板(与权限选择器同款形态,锚定在 chip 正上方)
- 📐 文本列宽度与输入框宽度两个滑杆完全独立(400–1160px,步长 20)
- 🔗 「输入框跟随文本列(+32px)」联动开关,一键恢复旧版同步行为
- 📌 面板以视口固定定位打开——拖动宽度时面板纹丝不动
- 💾 localStorage 记忆上次的文本/输入框宽度与联动状态,下次打开直接恢复
- 📊 回复中的表格自动水平居中,表头与单元格文字居中显示
- 🔄 持久化注册进 DSH 的 cordis.patch.yml,每次启动自动加载,无需手动启用

🖼️ 截图

宽度调节面板

在输入框工具行点击 ⇔ 宽度 …px ▾ 展开面板,即可分别调节文本列与输入框宽度。

⚙️ 工作原理

DSH Web 的消息文本列宽度由 CSS 变量 --dsh-chat-content-width(默认 748px)控制,
输入框卡片宽度由 --dsh-composer-card-max-width(默认 calc(文本宽度 + 32px))控制,
两者都定义在对话根容器上。

本插件通过浏览器 bundle(由 DSH 的 client-modules 机制服务)在稳定的产品属性
[data-conversation-scroll] 上覆盖这两个变量,从而独立调控两块宽度——不依赖任何
打包哈希类名,产品升级也不易失效。

📦 安装

前置条件:已安装 DSH(Web 配置),Windows + PowerShell 5.1+(其他平台见下方手动安装)。

1. 克隆仓库(任意位置,比如 DSH 目录旁)
git clone https://github.com/fly-fish76/dsh-width-control.git
cd dsh-width-control

2. 一键安装(自动创建 node_modules 链接 + 写入 cordis.patch.yml)
.\install.ps1

3. 重启 dsh

重启后刷新浏览器页面,输入框工具行左端即可看到 ⇔ 宽度 748px ▾。

手动安装(非 Windows / 不想用脚本)

假设 DSH web profile 目录为 ~/.dsh/profiles/web:

1. 把插件源码放到 profile 的 plugins 目录
mkdir -p ~/.dsh/profiles/web/plugins
cp -r  ~/.dsh/profiles/web/plugins/width-control

2. 让 Node 能在 profile 的 node_modules 里解析到它
ln -s ../plugins/width-control ~/.dsh/profiles/web/node_modules/@local/width-control

3. 在 ~/.dsh/profiles/web/cordis.patch.yml 追加(保留原有内容):

- insert:
- id: width-control
name: '@local/width-control'

4. 重启 dsh

Linux/macOS 注意:软链接指向的 exports["./client"] 与 require.resolve 均在 Node
层面按真实路径解析,符号链接同样可用。

🎮 使用

1. 点击工具行的 ⇔ 宽度 …px ▾ chip,面板出现在 chip 正上方
2. 拖动文本列宽度滑杆 → 只影响消息文本列;拖动输入框宽度滑杆 → 只影响输入框
3. 勾选 输入框跟随文本列(+32px) 恢复联动(此时输入框滑杆禁用)
4. 每行的 ↺ 恢复该行默认值(748 / 780);调整即时生效并自动记忆
5. 再点 chip(或直接关闭面板)折叠

🛠️ 自定义

所有可调常量在 lib/client.js 顶部:

| 常量 | 默认 | 含义 |
| --- | --- | --- |
| DEFAULT_TEXT | 748 | 文本列默认宽度 (px) |
| DEFAULT_INPUT | 780 | 输入框默认宽度 (px) |
| MIN / MAX | 400 / 1160 | 滑杆范围 (px) |
| STEP | 20 | 滑杆步长 (px) |
| STORAGE_KEY | dsh.width-control.v1 | 记忆存储键 |

改完 lib/client.js 后强刷浏览器页面(Ctrl+Shift+R)即可生效,无需改台账。

🗑️ 卸载

.\uninstall.ps1     # 移除 node_modules 链接 + 从 cordis.patch.yml 删除注册行

或手动:删除 node_modules/@local/width-control 链接与 cordis.patch.yml 中的
- insert: 块。全部移除后重启 dsh。

📄 许可

MIT

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

💬 加入 DPharness 群聊

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

点击加入 QQ 群
DPharness 群聊二维码,手机 QQ 扫码进群
扫码进群