dsh-ui-tweaks 0.20.1 → 0.20.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE CHANGED
@@ -1,21 +1,21 @@
1
- MIT License
2
-
3
- Copyright (c) 2026 dsh-ui-tweaks contributors
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
1
+ MIT License
2
+
3
+ Copyright (c) 2026 dsh-ui-tweaks contributors
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.en.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # dsh-ui-tweaks
2
2
 
3
+ **English** | [中文](https://github.com/wlj521/dsh-ui-tweaks/blob/main/README.md)
4
+
3
5
  > **Dependency**: currently targets **DSH v0.2.0-rc.2**.
4
6
 
5
7
  A [DeepSeek Harness](https://deepseek-harness.github.io/deepseek-harness/) (DSH) plugin that live-tunes the conversation UI from the Settings panel.
@@ -18,10 +20,10 @@ A [DeepSeek Harness](https://deepseek-harness.github.io/deepseek-harness/) (DSH)
18
20
  ## Features
19
21
 
20
22
  - **Code font size (px)** — absolute 8–32px, default 11 (DSH's stock code-block size at a 14px body); applies to code blocks, with inline code following proportionally. The legacy percentage (`codeFontScale`) stays compatible and is overridden once a px value is set. Message text keeps DSH's stock sizing.
21
- - **Theme (single choice in Layout, stock look by default)** — choose `Default`, **Minimal`, **Neon poster** or **Spec sheet**. **Minimal** keeps DSH's stock look untouched and changes exactly one thing: markdown inline code is tinted with the Anthropic red (`#c15f3c` in light, `#d97757` in dark — the same accent the poster skin uses) in the conversation. **Neon poster** is a two-scheme poster skin — paper-white with ink-black hairlines in light mode, near-black with light hairlines in dark mode, both with lime highlights and an Anthropic-red action accent (buttons, links and selections follow the theme tokens automatically; code blocks and the composer card get hard offset shadows), and the composer's reasoning-effort label is tinted by intensity (green / amber / blue / violet, with a same-hue wash sweeping option rows on hover). **Spec sheet** is a Swiss spec-sheet skin — paper-white with 1px ink hairlines and square corners in light mode, near-black with light hairlines in dark mode, and exactly one red-orange accent (links, selections, state dots); headings tighten their tracking while fourth-level captions go small/uppercase/wide-tracked, code blocks become 1px ruled boxes with no shadow, tables become ruled spec tables (small uppercase headers + a heavier top rule), and the composer card carries a 2px accent rule along its top edge, applied live. Future skins will be added as further options the same way.
23
+ - **Theme (single choice in Layout, stock look by default)** — choose `Default`, **Minimal`, **Neon poster** or **Spec sheet**. **Minimal** keeps DSH's stock look untouched and changes exactly one thing: markdown inline code is tinted with the Anthropic red (`#c15f3c` in light, `#d97757` in dark — the same accent the poster skin uses) in the conversation. **Neon poster** is a two-scheme poster skin — paper-white with ink-black hairlines in light mode, near-black with light hairlines in dark mode, both with lime highlights and an Anthropic-red action accent (buttons, links and selections follow the theme tokens automatically; code blocks and the composer card get hard offset shadows), and the composer's reasoning-effort label is tinted by intensity (green / amber / blue / violet, with a same-hue wash sweeping option rows on hover). **Spec sheet** is a Swiss spec-sheet skin — paper-white with 1px ink hairlines and square corners in light mode, near-black with light hairlines in dark mode, and exactly one red-orange accent (links, selections, state dots); headings tighten their tracking while fourth-level captions go small/uppercase/wide-tracked, code blocks become 1px ruled boxes with no shadow, tables become ruled spec tables (small uppercase headers + a heavier top rule), and the composer card carries a 2px accent rule along its top edge, applied live; the skin covers the app frame and the plugin's own settings pages, while the host's surfaces — the settings dialog among them — keep DSH's stock palette instead of picking up the skin's paper grays. Future skins will be added as further options the same way.
22
24
  - **Timeline (single choice in Features)** — one switch, two options:
23
25
  - **Native (default)** — DSH's built-in turn rail (the row of small dots beside the messages), the stock behavior.
24
- - **Web (classic)** — the v0.11 classic right-side navigation rail, restored: vertically centered on the message area's right edge, a thin line strip when collapsed, a 240px panel on hover (message previews + current-position highlight), a per-item detail bubble with timestamp, and **click to jump** (deep history pages in automatically before landing, with a landing self-check); wheel over the rail scrubs clipped items into reach. Data comes from the server-side `dshChatTimeline` session projection (every user message, independent of the browser's loaded window); sessions with fewer than two user messages hide it. On the web option the native turn rail is hidden with one theme-independent CSS rule (matching its `--turn-natural-height` inline variable), so the two never appear together.
26
+ - **Web (classic)** — the v0.11 classic right-side navigation rail, restored: vertically centered on the message area's right edge, a thin line strip when collapsed, a 240px panel on hover (message previews + current-position highlight), a per-item detail bubble with timestamp, and **click to jump** (deep history pages in automatically before landing, with a landing self-check); wheel over the rail scrubs clipped items into reach. Data comes from the server-side `dshChatTimeline` session projection (every user message, independent of the browser's loaded window); sessions with fewer than two user messages hide it. On the web option the native turn rail is hidden with one theme-independent CSS rule (matched structurally on its `<nav>` — a direct-child `_scroller` or a descendant `_marks`, plus the legacy `--turn-natural-height` inline variable for older hosts), so the two never appear together.
25
27
  - **GitBar (toggleable, off by default)** — the standard pair for git-repo sessions: a **branch chip** in the session header, plus a **code diff** tab in the native right sidebar (next to Files, opened from the sidebar guide; uncommitted changes put a dot on the code diff tab):
26
28
  - **Branch chip** — beside the session title; shows the current branch and opens a downward branch panel (local / remote lists, `git switch` on click, new-branch field). A **pull** button sits beside the current branch in the panel header (`git pull --ff-only` — fast-forward only: a diverged branch aborts with git's own error instead of silently merging; hidden when the branch has no upstream), so what gets pulled is always the branch in the header. The panel's **Graph** entry opens the **commit graph** dialog: the latest 150 commits (`git log --date-order --all`) are laid out into lanes and rendered as a colored SVG fork/merge graph — dots are commits, curves are forks/merges, each branch line keeps its own color and merge arcs adopt the color of the lane they join; rows highlight on hover, refresh in the header.
27
29
  - **Code diff** — changed-file list + per-file diff (changed hunks only by default, "Full file" toggle at the top right). The file-list / diff / commit sections split with draggable horizontal dividers (double-click resets; the message box stretches, Shift+Enter for new lines). The **commit band stays at the foot** (Commit / Commit & push, message required). Without a git repo the page shows a note instead of hiding.
@@ -80,8 +82,8 @@ The package spec after `add` is forwarded to pnpm verbatim, so versions can be
80
82
  pinned — `@version` for the npm package, `#tag` for the GitHub source:
81
83
 
82
84
  ```bash
83
- npx -y @deepseek-ai/dsh plugin --profile desktop add dsh-ui-tweaks@0.19.2 # pin the npm version
84
- npx -y @deepseek-ai/dsh plugin --profile desktop add github:wlj521/dsh-ui-tweaks#v0.19.2 # pin a git tag
85
+ npx -y @deepseek-ai/dsh plugin --profile desktop add dsh-ui-tweaks@0.20.1 # pin the npm version
86
+ npx -y @deepseek-ai/dsh plugin --profile desktop add github:wlj521/dsh-ui-tweaks#v0.20.1 # pin a git tag
85
87
  ```
86
88
 
87
89
  ### Path three: a local directory (picked in the desktop app, no CLI)
package/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # dsh-ui-tweaks
2
2
 
3
+ [English](https://github.com/wlj521/dsh-ui-tweaks/blob/main/README.en.md) | **中文**
4
+
3
5
  > **依赖版本**:当前依赖 **DSH v0.2.0-rc.2**。
4
6
 
5
7
  [DeepSeek Harness](https://deepseek-harness.github.io/deepseek-harness/)(DSH)插件:在设置面板中实时调整对话界面——代码字号、**主题皮肤**(简约 / 荧光海报 / 规格书)、**时间线切换**(原生回合导航轨 / 经典网页时间线)、**GitBar**(会话头部的分支胶囊 + 右侧边栏里的代码差异标签页),可开关的**归档管理**(设置中的「归档管理」页面:查看、恢复或彻底删除已归档会话),可开关的**任务提醒**(会话完成或需要交互时,通过标签页标题闪烁 / 系统通知 / 提示音把你唤回来),以及**缓存命中率两位小数**(把输入框下方统计条的缓存命中百分比改写为精确值)。
@@ -18,10 +20,10 @@
18
20
  ## 功能
19
21
 
20
22
  - **代码字号(px)**:绝对值 8–32,默认 11(正文 14 时的 DSH 原生代码块字号);作用于代码块,行内代码按比例跟随——旧版的百分比配置(`codeFontScale`)仍然兼容,一旦设置新的 px 值即以其为准。消息正文保持 DSH 原生字号。
21
- - **主题(布局区单选,默认即原生外观)**:可选 `默认`、**简约**、**荧光海报** 或 **规格书**。**简约**完全保留 DSH 原生外观,只改一处——对话里的 Markdown 行内代码染成 Anthropic 红 `#c15f3c`(深色模式下 `#d97757`,与荧光海报同款强调色;代码块、表格、按钮等一律不动)。**荧光海报**是海报风双方案皮肤:浅色模式纸白底 + 黑粗线条,深色模式近黑底 + 浅色粗线条,都配荧光黄高亮 + Anthropic 红点缀(按钮、链接、选中态跟随主题变量自动变色,代码块与输入框卡片带硬阴影贴纸效果),输入框模型旁的**推理等级**按强度着色(绿 / 琥珀 / 蓝 / 紫,悬停选项行时同色底从左扫过)。**规格书**是瑞士规格书风双方案:浅色模式纸白底 + 1px 墨线细框 + 全直角,深色模式近黑底 + 浅色细线,只用一种克莱因蓝强调色(浅色 #002fa7 / 深色 #6e9bff,用于链接 / 选中态 / 状态点),标题收紧字距、四级小标题走小号大写加宽字距,代码块改 1px 直角细线框(无阴影),表格改细线规格表(表头小号大写 + 加重顶线),输入框卡片顶部一道 2px 强调色线。切换即时生效,后续皮肤会以同样方式追加为新选项。
23
+ - **主题(布局区单选,默认即原生外观)**:可选 `默认`、**简约**、**荧光海报** 或 **规格书**。**简约**完全保留 DSH 原生外观,只改一处——对话里的 Markdown 行内代码染成 Anthropic 红 `#c15f3c`(深色模式下 `#d97757`,与荧光海报同款强调色;代码块、表格、按钮等一律不动)。**荧光海报**是海报风双方案皮肤:浅色模式纸白底 + 黑粗线条,深色模式近黑底 + 浅色粗线条,都配荧光黄高亮 + Anthropic 红点缀(按钮、链接、选中态跟随主题变量自动变色,代码块与输入框卡片带硬阴影贴纸效果),输入框模型旁的**推理等级**按强度着色(绿 / 琥珀 / 蓝 / 紫,悬停选项行时同色底从左扫过)。**规格书**是瑞士规格书风双方案:浅色模式纸白底 + 1px 墨线细框 + 全直角,深色模式近黑底 + 浅色细线,只用一种克莱因蓝强调色(浅色 #002fa7 / 深色 #6e9bff,用于链接 / 选中态 / 状态点),标题收紧字距、四级小标题走小号大写加宽字距,代码块改 1px 直角细线框(无阴影),表格改细线规格表(表头小号大写 + 加重顶线),输入框卡片顶部一道 2px 强调色线。皮肤只作用于主界面与插件自己的设置页——设置弹窗的宿主部分保持 DSH 原生配色(不会被纸灰底和克莱因蓝选中态染到)。切换即时生效,后续皮肤会以同样方式追加为新选项。
22
24
  - **时间线(功能区内单选)**:一个开关两档,选一个:
23
25
  - **原生(默认)**:DSH 自带的回合导航轨(消息右侧的小圆点条),即官方默认行为。
24
- - **网页(经典)**:找回 v0.11 的经典右侧导航轨——消息区右缘垂直居中,收起时是一列细线,悬停展开为 240px 面板(消息预览 + 高亮当前位),悬停单项弹出带时间戳的详情气泡,**点击跳转**到对应消息(深历史会自动连续翻页加载后落点,带落点自校验);滚轮可在轨上直接翻阅被裁剪的条目。数据来自服务端 `dshChatTimeline` 会话投影(全量用户消息,与浏览器已加载窗口无关),少于两条用户消息的会话自动隐藏;切换到网页档时,原生回合导航轨由插件用一条主题无关的 CSS 规则(命中其 `--turn-natural-height` 内联变量)隐藏,两个不会同时出现。
26
+ - **网页(经典)**:找回 v0.11 的经典右侧导航轨——消息区右缘垂直居中,收起时是一列细线,悬停展开为 240px 面板(消息预览 + 高亮当前位),悬停单项弹出带时间戳的详情气泡,**点击跳转**到对应消息(深历史会自动连续翻页加载后落点,带落点自校验);滚轮可在轨上直接翻阅被裁剪的条目。数据来自服务端 `dshChatTimeline` 会话投影(全量用户消息,与浏览器已加载窗口无关),少于两条用户消息的会话自动隐藏;切换到网页档时,原生回合导航轨由插件用一条主题无关的 CSS 规则(按结构定位其 `<nav>`——直接子元素 `_scroller` 或后代 `_marks`,并兼容旧版携带 `--turn-natural-height` 内联变量的形态)隐藏,两个不会同时出现。
25
27
  - **GitBar(默认关闭,可在设置中开启)**:git 仓库会话的标配两件套——会话头部的**分支胶囊**,加上右侧边栏(文件旁)的**代码差异**标签页(在边栏指南里点开,有未提交改动时分支胶囊和代码差异页签上都带小黄点):
26
28
  - **分支胶囊**:位于会话标题旁;显示当前分支名(有未提交改动时在标题提示)。点击**向下**弹出分支面板——本地 / 远程分支列表(点击即 `git switch`),底部可**新建分支**(`git switch -c` 并自动切换)。**头部当前分支右侧是拉取按钮**(`git pull --ff-only`:只快进,分叉时中止并显示 git 报错而不悄悄合并;无 upstream 的分支不显示该按钮),拉的就是头部显示的那个分支。菜单里的**图谱**打开**提交图谱**对话框:最近 150 条提交(`git log --date-order --all`)按拓扑自动分 lane,渲染成彩色 SVG 分叉图——圆点是提交、曲线是 fork/merge,各分支线独立着色,合并弧线汇入目标分支并采用其颜色;行悬停高亮,右上角可刷新。
27
29
  - **代码差异**:文件列表 + 逐文件 diff(默认**只显示有差异的 hunk**,右上可切“完整文件”视图)。三段(文件列表 / diff 内容 / 提交区)之间的分隔线**可上下拖动调整高度**(双击复位;提交说明框随提交区高度拉伸,可写多行,Shift+Enter 换行)。**提交区保留在视图底部**(提交 / 提交并推送,提交说明必须自行填写)。非 git 仓库时该页显示提示而不隐藏。
@@ -82,8 +84,8 @@ npx -y @deepseek-ai/dsh plugin --profile desktop add github:wlj521/dsh-ui-tweaks
82
84
  `add` 后面的包说明会**原样转发给 pnpm**,因此可以指定版本——npm 包用 `@版本号`,GitHub 源码用 `#tag`:
83
85
 
84
86
  ```bash
85
- npx -y @deepseek-ai/dsh plugin --profile desktop add dsh-ui-tweaks@0.19.2 # 锁定 npm 版本
86
- npx -y @deepseek-ai/dsh plugin --profile desktop add github:wlj521/dsh-ui-tweaks#v0.19.2 # 锁定 git tag
87
+ npx -y @deepseek-ai/dsh plugin --profile desktop add dsh-ui-tweaks@0.20.1 # 锁定 npm 版本
88
+ npx -y @deepseek-ai/dsh plugin --profile desktop add github:wlj521/dsh-ui-tweaks#v0.20.1 # 锁定 git tag
87
89
  ```
88
90
 
89
91
  ### 方式三:本地目录(在桌面端点选,无需命令行)
package/cordis.patch.yml CHANGED
@@ -1,12 +1,12 @@
1
- # dsh-ui-tweaks bundle patch
2
- #
3
- # Declared by `dsh.bundle.patch` in package.json: when the plugin is installed
4
- # through the official CLI —
5
- #
6
- # dsh plugin --profile <name> add dsh-ui-tweaks
7
- #
8
- # — the command appends `dsh-ui-tweaks` to the profile's bundle stack and this
9
- # patch mounts the server-side plugin row.
10
- - insert:
11
- - id: ui-tweaks
12
- name: 'dsh-ui-tweaks'
1
+ # dsh-ui-tweaks bundle patch
2
+ #
3
+ # Declared by `dsh.bundle.patch` in package.json: when the plugin is installed
4
+ # through the official CLI —
5
+ #
6
+ # dsh plugin --profile <name> add dsh-ui-tweaks
7
+ #
8
+ # — the command appends `dsh-ui-tweaks` to the profile's bundle stack and this
9
+ # patch mounts the server-side plugin row.
10
+ - insert:
11
+ - id: ui-tweaks
12
+ name: 'dsh-ui-tweaks'