@nimoxie/dsh-ui-tweaks 0.1.7 → 0.1.8

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 NimoXie
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 NimoXie
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.md CHANGED
@@ -1,137 +1,150 @@
1
- # dsh-ui-tweaks
2
-
3
- 给 DSH(DeepSeek Harness)的 Web UI 的一批界面微调:装上即生效,无需配置。
4
-
5
- 官方界面上有几处用得难受的地方:宽表格会撑出对话区右沿、滚动条贴在屏幕最右端要横跨半屏去够、Windows 关闭「动画效果」时前端动画被系统设置一并关掉、插件版本更新只能去插件管理页挨个看。这个插件把它们一次性修掉,另附一项桌面客户端的窗口记忆。
6
-
7
- ## 功能
8
-
9
- **宽表格越界修复**
10
- - 宽表格(≥4 列)不再撑出对话区,收敛回正文列并支持横向滚动,观察沿裁掉的问题消失。
11
-
12
- **对话区左侧滚动条**
13
- - 在右侧宽度调整条的左边放一条自绘滚动条:拖拽、点轨道翻页、滚轮转动手感与原生一致,主题跟随明暗。
14
- - 只在会话页出现,切到插件页等非会话页自动移除。
15
-
16
- **动画修复**
17
- - Windows 关闭「动画效果」时 Chromium 会向网页报告 `prefers-reduced-motion: reduce`,本插件清除因此失效的前端动画规则,让动画恢复;web 与桌面客户端都生效。
18
-
19
- **插件更新检查**
20
- - 插件管理页「已安装」标题那一行的右侧多两枚按钮:「检查更新」比对已装插件与 npm registry 的版本,有新版本可点上就地更新,支持全部更新与中途取消(不检查 dsh 本体与官方 `@deepseek-ai` 插件——它们的更新走 dsh 本体流程)。
21
- - 新版本还没过 pnpm 的发布时长窗口(默认 24 小时)时,该行标 **「冷静期中」** 并给出可更新时间,到点自动变回可更新;确需立刻安装,可在详情里走「强制更新」,它会先检查这次安装会不会被别的包连累拦下。
22
- - 新版声明了更高的 DSH 最低版本时,该行标 **「DSH 不符」**(鼠标悬停显示「需要 DSH ≥ x」),不给点——省得装上去起不来。
23
- - 更新成功后,面板顶部常驻一条「重启客户端后生效」提示;旁边的「**立即重启**」会先读一遍会话状态再弹确认:**有会话在跑**就列出来、说明会被中断;**没有会话**则说明不会打断任何任务。**任何情况都要你点一下「重启 dsh」才会执行**(旁边有「取消」)。弹窗里会写明桌面端的两步 —— dsh 先退出,再由客户端弹出官方的「应用无法启动或已意外停止」对话框,**在对话框里点「重启」才会真正拉起来**(也可以手动退出后重开)。两个面板都**不可拖动**,位置只有一个来源:贴在触发它的那枚按钮旁边;下方空间不够时自动翻到按钮上方,滚动或改窗口大小也跟着走。点了「重启 dsh」之后**整页会被蒙住**(只留这个弹窗)—— 因为那一刻客户端已经不可用,界面上的其它东西不该还能点;万一 20 秒内 dsh 没退成,蒙皮会自动撤掉并提示你刷新页面或手动重启。
24
- - 安装落地后会自动清理 profile 里会让后续所有安装都失败的豁免表冗余(后台静默完成,无需你操作)。
25
-
26
- **窗口记忆(仅桌面客户端)**
27
- - 官方客户端每次启动都是固定的 1280×820 居中小窗,本插件让它记住上次的窗口大小、位置和最大化状态,下次启动自动还原。
28
- - 不修改官方客户端任何文件,卸载即完全还原官方行为;浏览器版不动作。
29
- - 状态存在 profile 的 `ui-tweaks/window-state.json`,删掉即重置记忆。
30
-
31
- ## 安装
32
-
33
- 浏览器版(`web`):
34
-
35
- ```sh
36
- dsh plugin --profile web add @nimoxie/dsh-ui-tweaks
37
- ```
38
-
39
- 装完重启服务(关掉再 `dsh web`)。
40
-
41
- 桌面客户端:桌面 profile 由客户端独占管理,CLI 装不了(会被拒),请在客户端「插件管理」页添加包名 `@nimoxie/dsh-ui-tweaks`,重启客户端生效。
42
-
43
- 卸载(CLI 可管理的 `web` 环境):
44
-
45
- ```sh
46
- dsh plugin --profile web remove @nimoxie/dsh-ui-tweaks
47
- ```
48
-
49
- 别人也可以从 GitHub 或本地目录装(开发用):
50
-
51
- ```sh
52
- dsh plugin --profile web add github:NimoXie15/dsh-ui-tweaks
53
- dsh plugin --profile web add link:/absolute/path/to/dsh-ui-tweaks
54
- ```
55
-
56
- > **要求**:dsh `>= 0.2.0-rc.1`(需要 `remote.pluginManager` / `remote.pluginInventory` 接口)。
57
- >
58
- > 升级插件后如果界面没变化,按 **Ctrl+Shift+R** 强刷一次(浏览器可能还在用缓存的旧版本)。
59
-
60
- ## 已知限制
61
-
62
- - 非 npm 来源的插件没有可比的 registry 版本,直接跳过比对:`link:` / `file:` 本地路径标「本地链接」,`git:` / `github:` / `http` 直装标「Git 直装」(例:`github:Fisfzy/dsh-ego-browser` 装的是仓库源码,与 npm 上的同名包不是一回事)。
63
- - 发布未满 24 小时的插件版本不会被安装,面板把它标成「冷静期中」而不是失败;满了之后自动变回「有新版本」,不用守着。
64
- - 更新失败的行会直接给出原因(pnpm 输出与日志位置),点它可重试;取消只作用于你点的那一项,后续排队的会接着装。
65
- - 面板比对走 npm 官方 registry,安装走你本机 pnpm 配置的源(如 npmmirror 镜像);镜像尚未同步的新版本会出现「面板说有新版、装时报找不到版本」,稍后重试即可。
66
- - 如果你的会话正在用「**Auto review**」访问模式,更新面板顶部会出现一条琥珀色提醒:在这个模式下装/更新插件有时会失败(并让助手侧开始报错),要重启客户端才能恢复。按提醒把该会话切成「工作区内修改」、装完再切回即可。本插件**只提示,不改动你的权限设置**。
67
- - 「DSH 不符」只在能确认版本时生效:本机 DSH 版本读不到、或新版写的是 `^`/`~` 这类无法判定的范围,就不拦(宁可漏拦,不误伤正常更新)。
68
- - 与启动器 dsh-web-shell 的分工:界面增强已由本插件接管;dsh-web-shell 的「检查更新」按钮只负责 **dsh 本体**的比对与升级提示。
69
- - 窗口记忆的归位发生在窗口显示后约 0.2~1 秒内,会有一帧跳变(官方客户端在插件加载之前就把窗口显示出来了,没法再早);窗口最小化不会中断记忆。
70
- - 个别插件(如社区插件管理页扩展)自带单独的「检查更新」入口,与本插件的检查互不关联,结果可能不同。
71
-
72
- ## 本人常用插件(可选)
73
-
74
- > 本插件不会自动安装任何其他插件,插件也不属于必装项——不装同样能正常使用上述全部功能。
75
-
76
- 浏览器端操作:
77
-
78
- ```sh
79
- # 安装
80
- dsh plugin --profile web add <PluginName>
81
-
82
- # 卸载
83
- dsh plugin --profile web remove <PluginName>
84
-
85
- # 查看
86
- dsh --profile web --dump-config | findstr /i <PluginName子串>
87
- ```
88
-
89
- 桌面客户端对指令安装有限制,请直接在客户端「插件管理」中进行安装、卸载和查看。
90
-
91
- 常用插件(web 与桌面端都能用):
92
-
93
- ```sh
94
- # @changfenhuang/dsh-genui:生成式消息回复
95
- dsh plugin --profile web add @changfenhuang/dsh-genui
96
-
97
- # @linxin666/dsh-session-archive:会话归档与批量清理
98
- dsh plugin --profile web add @linxin666/dsh-session-archive
99
-
100
- # @liustack/modsearch:联网搜索
101
- dsh plugin --profile web add @liustack/modsearch
102
-
103
- # @michengai/dsh-skills-manager:技能加载与管理
104
- dsh plugin --profile web add @michengai/dsh-skills-manager
105
-
106
- # @nimoxie/dsh-model-organizer:模型显示管理
107
- dsh plugin --profile web add @nimoxie/dsh-model-organizer
108
-
109
- # @nimoxie/dsh-ui-tweaks:界面优化调整
110
- dsh plugin --profile web add @nimoxie/dsh-ui-tweaks
111
-
112
- # cc-safety-net:危险命令与密钥防护
113
- dsh plugin --profile web add cc-safety-net
114
-
115
- # dsh-context:上下文管理
116
- dsh plugin --profile web add dsh-context
117
-
118
- # dsh-cost-meter:会话费用统计
119
- dsh plugin --profile web add dsh-cost-meter
120
-
121
- # dsh-ego-browser:模拟浏览器点击
122
- dsh plugin --profile web add dsh-ego-browser
123
-
124
- # dsh-file-review:文件改动审查
125
- dsh plugin --profile web add dsh-file-review
126
-
127
- # dsh-whale-widget:右下角小鲸鱼挂件
128
- dsh plugin --profile web add dsh-whale-widget
129
- ```
130
-
131
- ## 许可
132
-
133
- MIT
134
-
135
- ---
136
-
137
- 想自己改这个插件、或者想了解它在内部怎么实现的,见 [DEVELOPMENT.md](./DEVELOPMENT.md)。
1
+ # dsh-ui-tweaks
2
+
3
+ 给 DSH(DeepSeek Harness)的 Web UI 的一批界面微调:装上即生效,无需配置。
4
+
5
+ 官方界面上有几处用得难受的地方:宽表格会撑出对话区右沿、滚动条贴在屏幕最右端要横跨半屏去够、Windows 关闭「动画效果」时前端动画被系统设置一并关掉、插件版本更新只能去插件管理页挨个看。这个插件把它们一次性修掉,另附一项桌面客户端的窗口记忆。
6
+
7
+ ## 功能
8
+
9
+ **宽表格越界修复**
10
+ - 宽表格(≥4 列)不再撑出对话区,收敛回正文列并支持横向滚动,观察沿裁掉的问题消失。
11
+
12
+ **对话区左侧滚动条**
13
+ - 在右侧宽度调整条的左边放一条自绘滚动条:拖拽、点轨道翻页、滚轮转动手感与原生一致,主题跟随明暗。
14
+ - 只在会话页出现,切到插件页等非会话页自动移除。
15
+
16
+ **动画修复**
17
+ - Windows 关闭「动画效果」时 Chromium 会向网页报告 `prefers-reduced-motion: reduce`,本插件清除因此失效的前端动画规则,让动画恢复;web 与桌面客户端都生效。
18
+
19
+ **插件更新检查**
20
+ - 插件管理页「已安装」标题那一行的右侧多两枚按钮:「检查更新」比对已装插件与 npm registry 的版本,有新版本可点上就地更新,支持全部更新与中途取消(不检查 dsh 本体与官方 `@deepseek-ai` 插件——它们的更新走 dsh 本体流程)。
21
+ - 新版本还没过 pnpm 的发布时长窗口(默认 24 小时)时,该行标 **「冷静期中」** 并给出可更新时间,到点自动变回可更新;确需立刻安装,可在详情里走「强制更新」,它会先检查这次安装会不会被别的包连累拦下。
22
+ - 新版声明了更高的 DSH 最低版本时,该行标 **「DSH 不符」**(鼠标悬停显示「需要 DSH ≥ x」),不给点——省得装上去起不来。
23
+ - 更新成功后,面板顶部常驻一条「重启客户端后生效」提示;旁边的「**立即重启**」会先读一遍会话状态再弹确认:**有会话在跑**就列出来、说明会被中断;**没有会话**则说明不会打断任何任务。**任何情况都要你点一下「重启 dsh」才会执行**(旁边有「取消」)。弹窗里会写明桌面端的两步 —— dsh 先退出,再由客户端弹出官方的「应用无法启动或已意外停止」对话框,**在对话框里点「重启」才会真正拉起来**(也可以手动退出后重开)。两个面板都**不可拖动**,位置只有一个来源:贴在触发它的那枚按钮旁边;下方空间不够时自动翻到按钮上方,滚动或改窗口大小也跟着走。点了「重启 dsh」之后**整页会被蒙住**(只留这个弹窗)—— 因为那一刻客户端已经不可用,界面上的其它东西不该还能点;万一 20 秒内 dsh 没退成,蒙皮会自动撤掉并提示你刷新页面或手动重启。
24
+ - 安装落地后会自动清理 profile 里会让后续所有安装都失败的豁免表冗余(后台静默完成,无需你操作)。
25
+
26
+ **窗口记忆(仅桌面客户端)**
27
+ - 官方客户端每次启动都是固定的 1280×820 居中小窗,本插件让它记住上次的窗口大小、位置和最大化状态,下次启动自动还原。
28
+ - 不修改官方客户端任何文件,卸载即完全还原官方行为;浏览器版不动作。
29
+ - 状态存在 profile 的 `ui-tweaks/window-state.json`,删掉即重置记忆。
30
+
31
+ ## 安装
32
+
33
+ 浏览器版(`web`):
34
+
35
+ ```sh
36
+ dsh plugin --profile web add @nimoxie/dsh-ui-tweaks
37
+ ```
38
+
39
+ 装完重启服务(关掉再 `dsh web`)。
40
+
41
+ 桌面客户端:桌面 profile **保留给客户端**,PATH 上那个 `dsh`(npm 全局装的)会被拒。但客户端**自带的那份 CLI 可以** —— 它就在安装目录里,和「插件管理」页走的是同一套实现:
42
+
43
+ ```sh
44
+ # Windows 桌面端;<安装目录> 形如 E:\tools\DeepSeek Harness
45
+ "<安装目录>\resources\runtime\cli\bin\dsh.cmd" plugin --profile desktop add @nimoxie/dsh-ui-tweaks
46
+ ```
47
+
48
+ 不想敲命令,也可以照旧在客户端「插件管理」页添加包名 `@nimoxie/dsh-ui-tweaks`,重启客户端生效。
49
+
50
+ 卸载(CLI 可管理的 `web` 环境):
51
+
52
+ ```sh
53
+ dsh plugin --profile web remove @nimoxie/dsh-ui-tweaks
54
+ ```
55
+
56
+ 别人也可以从 GitHub 或本地目录装(开发用):
57
+
58
+ ```sh
59
+ dsh plugin --profile web add github:NimoXie15/dsh-ui-tweaks
60
+ dsh plugin --profile web add link:/absolute/path/to/dsh-ui-tweaks
61
+ ```
62
+
63
+ > **要求**:dsh `>= 0.2.0-rc.1`(需要 `remote.pluginManager` / `remote.pluginInventory` 接口)。
64
+ >
65
+ > 升级插件后如果界面没变化,按 **Ctrl+Shift+R** 强刷一次(浏览器可能还在用缓存的旧版本)。
66
+
67
+ ## 已知限制
68
+
69
+ - 非 npm 来源的插件没有可比的 registry 版本,直接跳过比对:`link:` / `file:` 本地路径标「本地链接」,`git:` / `github:` / `http` 直装标「Git 直装」(例:`github:Fisfzy/dsh-ego-browser` 装的是仓库源码,与 npm 上的同名包不是一回事)。
70
+ - 发布未满 24 小时的插件版本不会被安装,面板把它标成「冷静期中」而不是失败;满了之后自动变回「有新版本」,不用守着。
71
+ - 更新失败的行会直接给出原因(pnpm 输出与日志位置),点它可重试;取消只作用于你点的那一项,后续排队的会接着装。
72
+ - 面板比对走 npm 官方 registry,安装走你本机 pnpm 配置的源(如 npmmirror 镜像);镜像尚未同步的新版本会出现「面板说有新版、装时报找不到版本」,稍后重试即可。
73
+ - 如果你的会话正在用「**Auto review**」访问模式,更新面板顶部会出现一条琥珀色提醒:在这个模式下装/更新插件有时会失败(并让助手侧开始报错),要重启客户端才能恢复。按提醒把该会话切成「工作区内修改」、装完再切回即可。本插件**只提示,不改动你的权限设置**。
74
+ - 「DSH 不符」只在能确认版本时生效:本机 DSH 版本读不到、或新版写的是 `^`/`~` 这类无法判定的范围,就不拦(宁可漏拦,不误伤正常更新)。
75
+ - 与启动器 dsh-web-shell 的分工:界面增强已由本插件接管;dsh-web-shell 的「检查更新」按钮只负责 **dsh 本体**的比对与升级提示。
76
+ - 窗口记忆的归位发生在窗口显示后约 0.2~1 秒内,会有一帧跳变(官方客户端在插件加载之前就把窗口显示出来了,没法再早);窗口最小化不会中断记忆。
77
+ - 个别插件(如社区插件管理页扩展)自带单独的「检查更新」入口,与本插件的检查互不关联,结果可能不同。
78
+
79
+ ## 本人常用插件(可选)
80
+
81
+ > 本插件不会自动安装任何其他插件,插件也不属于必装项——不装同样能正常使用上述全部功能。
82
+
83
+ 浏览器端操作:
84
+
85
+ ```sh
86
+ # 安装
87
+ dsh plugin --profile web add <PluginName>
88
+
89
+ # 卸载
90
+ dsh plugin --profile web remove <PluginName>
91
+
92
+ # 查看
93
+ dsh --profile web --dump-config | findstr /i <PluginName子串>
94
+ ```
95
+
96
+ 桌面客户端:PATH 上的 `dsh` 装不了(桌面 profile 被保留给客户端),但客户端自带的那份 CLI 可以 —— 把上面的 `dsh plugin --profile web` 换成:
97
+
98
+ ```sh
99
+ "<安装目录>\resources\runtime\cli\bin\dsh.cmd" plugin --profile desktop add <PluginName>
100
+ ```
101
+
102
+ 也可以直接在客户端「插件管理」中进行安装、卸载和查看。
103
+
104
+ 常用插件(web 与桌面端都能用):
105
+
106
+ ```sh
107
+ # @changfenhuang/dsh-genui:生成式消息回复
108
+ dsh plugin --profile web add @changfenhuang/dsh-genui
109
+
110
+ # @linxin666/dsh-session-archive:会话归档与批量清理
111
+ dsh plugin --profile web add @linxin666/dsh-session-archive
112
+
113
+ # @liustack/modsearch:联网搜索
114
+ dsh plugin --profile web add @liustack/modsearch
115
+
116
+ # @michengai/dsh-skills-manager:技能加载与管理
117
+ dsh plugin --profile web add @michengai/dsh-skills-manager
118
+
119
+ # @nimoxie/dsh-model-organizer:模型显示管理
120
+ dsh plugin --profile web add @nimoxie/dsh-model-organizer
121
+
122
+ # @nimoxie/dsh-ui-tweaks:界面优化调整
123
+ dsh plugin --profile web add @nimoxie/dsh-ui-tweaks
124
+
125
+ # cc-safety-net:危险命令与密钥防护
126
+ dsh plugin --profile web add cc-safety-net
127
+
128
+ # dsh-context:上下文管理
129
+ dsh plugin --profile web add dsh-context
130
+
131
+ # dsh-cost-meter:会话费用统计
132
+ dsh plugin --profile web add dsh-cost-meter
133
+
134
+ # dsh-ego-browser:模拟浏览器点击
135
+ dsh plugin --profile web add dsh-ego-browser
136
+
137
+ # dsh-ops:bash / PowerShell 7 与 Rust 高性能工具
138
+ dsh plugin --profile web add dsh-ops
139
+
140
+ # dsh-whale-widget:右下角小鲸鱼挂件
141
+ dsh plugin --profile web add dsh-whale-widget
142
+ ```
143
+
144
+ ## 许可
145
+
146
+ MIT
147
+
148
+ ---
149
+
150
+ 想自己改这个插件、或者想了解它在内部怎么实现的,见 [DEVELOPMENT.md](./DEVELOPMENT.md)。
package/cordis.patch.yml CHANGED
@@ -1,7 +1,7 @@
1
- # dsh-ui-tweaks bundle patch: one host row over the web profile.
2
- # The row name resolves from the profile's own node_modules where
3
- # `dsh plugin --profile web add <path>` installed this package.
4
- # Scoped 包名的 name 必须写全(同 @linxin666 系插件),loader 按它解析 node_modules。
5
- - insert:
6
- - id: ui-tweaks
7
- name: '@nimoxie/dsh-ui-tweaks'
1
+ # dsh-ui-tweaks bundle patch: one host row over the web profile.
2
+ # The row name resolves from the profile's own node_modules where
3
+ # `dsh plugin --profile web add <path>` installed this package.
4
+ # Scoped 包名的 name 必须写全(同 @linxin666 系插件),loader 按它解析 node_modules。
5
+ - insert:
6
+ - id: ui-tweaks
7
+ name: '@nimoxie/dsh-ui-tweaks'