dsh-chat-tune · 对话区界面设置 + 会话菜单
DeepSeek Harness 插件:在 设置 → 通用设置 里调节会话区的字体 / 行距 / 段距 / 显示宽度,可选 滚动钉住本轮用户消息;并在会话行「⋯」菜单末尾追加 复制会话 ID / 导出 Markdown / 永久删除。官方置顶 / 重命名 / 分叉 / 归档保持宿主原生,不重复实现。
字号由官方 设置 → 字号(FontSizeRow / --dsh-content-font-size,12–17px)管理;本插件只跟随该变量排版。
设置 → 通用设置 → 对话区界面设置
原 dsh-session-actions 的置顶已废弃(请用官方置顶);复制 ID / 导出 / 永久删除已合并到本插件。请卸载 dsh-session-actions,以免菜单重复。
安装
前置:本机已能运行 dsh web。
dsh plugin --profile web add github:xingyingyuzhui/dsh-chat-tune
Desktop:在 App 托盘「打开终端」里执行(不要用 Homebrew 的 --profile desktop):
dsh plugin add github:xingyingyuzhui/dsh-chat-tune
装完重启对应 UI(Desktop 需完全退出再开)。
本地开发:
# Web
dsh plugin --profile web add link:/abs/path/to/dsh-chat-tune
# Desktop(新版 DeepSeek Harness.app / 0.1.6+)
# 禁止 link:/file:/github: —— package.json 依赖必须是精确 semver(如 0.5.0),
# 且 node_modules 里不能是符号链接。本地开发请 npm pack 后用 Desktop 内置 CLI 装 exact。
dsh.client.platform 保持 "web"(Desktop 也是 web client)。
能力
| 项 | 说明 |
|---|
| 字号 | 由官方「字号」设置控制(12–17px);本插件跟随 --dsh-content-font-size |
| 字体 | 系统默认 / 无衬线 / 衬线 / 等宽 / JetBrains Mono Nerd Font / 苹方 / 思源黑体 |
| 笔画加粗 | 轻微描边加粗(类似 Ghostty font-thicken;默认关闭) |
| 字体全局生效 | 打开后所选字体写入 --dsw-font-family,侧栏/设置等宿主 UI 一并跟随(默认仅会话区) |
| 行间距 | 紧凑 1.4 / 适中 1.6 / 标准 1.75 / 宽松 2.0 / 很松 2.4 / 自定义(1.0–3.0) |
| 段落间距 | 紧凑 8 / 偏紧 12 / 标准 16 / 宽松 24 / 很松 32 / 自定义(0–80px) |
| 显示宽度 | 窄 640 / 标准 748 / 宽 900 / 超宽 1100 / 自定义(480–2000px) |
| 代码块跟随 | 打开时代码块改用所选字体(默认保持等宽) |
| 输入框跟随 | 打开时底部输入框宽度同步内容宽度(默认开启) |
| 输入框边缘调宽 | 开启后,宽度拖拽把手仅在底部输入框两侧生效(默认开启) |
| 滚动钉住本轮用户消息 | sticky 本轮用户行;时间/复制进蓝气泡内(默认开启) |
| 复制会话 ID | 会话「⋯」菜单:把 session-… 写进剪贴板 |
| 导出 Markdown | 会话「⋯」菜单:导出结构化记录(思考、工具调用、用户/助手正文) |
| 永久删除会话 | 会话「⋯」菜单:确认后永久删除该会话目录(不是归档) |
原理
- 正文字号:跟随官方
--dsh-content-font-size
- 会话菜单:在官方「重命名 / 分叉 / 归档」下方追加三项;Host
POST /dsh-chat-tune/{catalog,export,delete}(X-DSH-Chat-Tune: 1 + loopback Origin)
- 选择器挂在
body[data-dsh-chat-tune] 下
- 偏好存
localStorage(dsh-chat-tune:prefs)
卸载
dsh plugin --profile web remove dsh-chat-tune
开发
npm run build # 生成 client.js(改 chat-tune-*.mjs 后)
npm test
License
MIT