dsh-ui-tweaks 0.16.1 → 0.16.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,6 +1,6 @@
1
1
  # dsh-ui-tweaks
2
2
 
3
- > **Dependency**: currently targets **DSH v0.1.5-alpha.1**.
3
+ > **Dependency**: currently targets **DSH v0.1.5-rc.1**.
4
4
 
5
5
  A [DeepSeek Harness](https://deepseek-harness.github.io/deepseek-harness/) (DSH) web plugin that live-tunes the conversation UI from the Settings panel.
6
6
 
@@ -8,19 +8,17 @@ A [DeepSeek Harness](https://deepseek-harness.github.io/deepseek-harness/) (DSH)
8
8
 
9
9
  | | |
10
10
  |---|---|
11
- | ![Settings panel](assets/settings.png) | ![GitBar](assets/git.png) |
12
- | **Settings panel**: code font size / theme skin / GitBar toggles | **GitBar**: the branch chip in the session header (branch management) plus **terminal** / **code diff** tabs in the native right sidebar, with commit & push from the code diff page (uncommitted changes dot the branch chip and its tab) |
13
- | ![Branch panel](assets/branch.png) | ![Diff panel](assets/gitdiff.png) |
14
- | **Branch panel**: pops up from the branch chip — local / remote branch lists, click to switch, delete, pull & push to remote, new-branch field at the bottom, plus a **commit graph** dialog (colored SVG fork/merge lanes) | **Code diff**: file list + per-file diff (changed hunks only by default) with a commit area (commit / commit & push) at the bottom |
15
- | ![Terminal panel](assets/terminal.png) | ![Archive manager](assets/archive.png) |
16
- | **Terminal**: a real PTY terminal in the sidebar (xterm.js over WebSocket) — full interactivity | **Archive manager**: an Archive page in the Settings dialog listing archived sessions (title / workspace / relative time) with Restore and Delete actions |
17
- | ![MCP manager](assets/mcp.png) | |
18
- | **MCP manager**: an MCP page in the Settings dialog listing configured MCP servers with live status and full management (Add / Edit / Enable / Disable / Delete / Restart) | |
11
+ | ![Settings panel](assets/settings.png) | ![Branch panel](assets/git.png) |
12
+ | **Settings panel**: code font size / neon-poster theme / two-decimal cache hit / web search / timeline / GitBar toggles, with dedicated **Archive**, **MCP** and **Search** pages in the left nav | **Branch panel**: pops down from the branch chip in the session header — local / remote branch lists, click to switch; pull button (fast-forward only) in the header, new-branch field at the bottom, plus a **commit graph** dialog (colored SVG fork/merge lanes) and **Tag** management |
13
+ | ![Diff panel](assets/gitdiff.png) | ![Terminal panel](assets/terminal.png) |
14
+ | **Code diff**: the code-diff tab in the right sidebar — file list (per-file checkboxes for partial commits) + per-file diff (changed hunks only by default, "Full file" toggle at the top right), with a commit area at the bottom for the message, an optional Tag, and Commit / Commit & push | **Terminal**: a real PTY terminal in the sidebar (xterm.js over WebSocket) — full interactivity |
15
+ | ![Archive manager](assets/archive.png) | ![MCP manager](assets/mcp.png) |
16
+ | **Archive manager**: an Archive page in the Settings dialog listing archived sessions (title / workspace / relative time) with per-row Restore / Delete and batch Restore all / Delete all | **MCP manager**: an MCP page in the Settings dialog listing configured MCP servers with live status and tool counts, plus full management (Add / Edit / Enable / Disable / Delete / Restart) |
19
17
 
20
18
  ## Features
21
19
 
22
20
  - **Code font size (px)** — absolute 8–32px, default 13 (DSH's stock code-block size at a 16px 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.
23
- - **Theme (single choice in Layout, stock look by default)** — choose `Default` or **Neon poster**: 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), applied live. Future skins will be added as further options the same way.
21
+ - **Theme (single choice in Layout, stock look by default)** — choose `Default` or **Neon poster**: 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), applied live. Future skins will be added as further options the same way.
24
22
  - **Timeline (single choice in Features)** — one switch, two options:
25
23
  - **Native (default)** — DSH's built-in turn rail (the row of small dots beside the messages), the stock behavior.
26
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.
@@ -63,7 +61,7 @@ Settings entry: **Settings → UI Tweaks**.
63
61
  # from npm (recommended, prebuilt)
64
62
  npx -y @deepseek-ai/dsh plugin --profile web add dsh-ui-tweaks
65
63
 
66
- # from GitHub (source; runs the self-contained prepare build)
64
+ # from GitHub (source with prebuilt artifacts; no local build needed)
67
65
  npx -y @deepseek-ai/dsh plugin --profile web add github:wlj521/dsh-ui-tweaks
68
66
  ```
69
67
 
@@ -75,15 +73,7 @@ npx -y @deepseek-ai/dsh plugin --profile web add dsh-ui-tweaks@0.12.0
75
73
  npx -y @deepseek-ai/dsh plugin --profile web add github:wlj521/dsh-ui-tweaks#v0.12.0 # pin a git tag
76
74
  ```
77
75
 
78
- For GitHub installs, pnpm may ask you to approve the package's build script —
79
- add the exact key it prints to the profile's `pnpm-workspace.yaml`:
80
-
81
- ```yaml
82
- allowBuilds:
83
- dsh-ui-tweaks: true
84
- ```
85
-
86
- …then run `add` again. Restart DSH web once after installing (bundle plugins
76
+ Restart DSH web once after installing (bundle plugins
87
77
  are scanned at process start).
88
78
 
89
79
  > If pnpm reports symlink/hoist errors, set `nodeLinker: hoisted` in the
package/README.md CHANGED
@@ -1,26 +1,24 @@
1
1
  # dsh-ui-tweaks
2
2
 
3
- > **依赖版本**:当前依赖 **DSH v0.1.5-alpha.1**。
3
+ > **依赖版本**:当前依赖 **DSH v0.1.5-rc.1**。
4
4
 
5
- [DeepSeek Harness](https://deepseek-harness.github.io/deepseek-harness/)(DSH)Web UI 插件:在设置面板中实时调整对话界面——代码字号、**主题皮肤**(荧光海报风)、**时间线切换**(原生回合导航轨 / 经典网页时间线)、**GitBar**(输入框工具行内的 git 状态胶囊:分支在权限旁、差异在模型前),可开关的**归档管理**(设置中的「归档」页面:查看、恢复或彻底删除已归档会话),可开关的**任务提醒**(会话完成或需要交互时,通过标签页标题闪烁 / 系统通知 / 提示音把你唤回来),以及**缓存命中率两位小数**(把输入框下方统计条的缓存命中百分比改写为精确值)。
5
+ [DeepSeek Harness](https://deepseek-harness.github.io/deepseek-harness/)(DSH)Web UI 插件:在设置面板中实时调整对话界面——代码字号、**主题皮肤**(荧光海报风)、**时间线切换**(原生回合导航轨 / 经典网页时间线)、**GitBar**(会话头部的分支胶囊 + 右侧边栏里的终端 / 代码差异标签页),可开关的**归档管理**(设置中的「归档」页面:查看、恢复或彻底删除已归档会话),可开关的**任务提醒**(会话完成或需要交互时,通过标签页标题闪烁 / 系统通知 / 提示音把你唤回来),以及**缓存命中率两位小数**(把输入框下方统计条的缓存命中百分比改写为精确值)。
6
6
 
7
7
  ## 预览
8
8
 
9
9
  | | |
10
10
  |---|---|
11
- | ![设置面板](assets/settings.png) | ![GitBar](assets/git.png) |
12
- | **设置面板**:代码字号 / 主题皮肤 / Git 状态栏等功能开关 | **GitBar**:会话头部的分支胶囊(分支管理)+ 右侧边栏里的**终端** / **代码差异**标签页,代码差异页内可直接提交 |
13
- | ![分支面板](assets/branch.png) | ![差异面板](assets/gitdiff.png) |
14
- | **分支面板**:点击分支胶囊向下弹出——本地 / 远程分支列表,点击即切换,支持删除、拉取、推送远程,底部可新建分支,菜单里可打开**提交图谱**(彩色 SVG 分叉图) | **代码差异**:文件列表 + 逐文件 diff(默认只显示有差异的 hunk),底部提交区可提交 / 提交并推送 |
15
- | ![终端面板](assets/terminal.png) | ![归档管理](assets/archive.png) |
16
- | **终端**:边栏里的真 PTY 终端(xterm.js + WebSocket),完整终端交互 | **归档管理**:设置中的「归档」页面,列出所有已归档会话(标题 / 工作区 / 相对时间),支持恢复与彻底删除 |
17
- | ![MCP 管理](assets/mcp.png) | |
18
- | **MCP 管理**:设置中的「MCP 管理」页面,列出所有配置的 MCP 服务器及其运行状态,支持添加 / 编辑 / 启用停用 / 删除 / 重启 | |
11
+ | ![设置面板](assets/settings.png) | ![分支面板](assets/git.png) |
12
+ | **设置面板**:代码字号 / 荧光海报主题 / 缓存两位小数 / 网络搜索 / 时间线 / Git 状态栏等功能开关,左侧另有「归档」「MCP 管理」「搜索」页面 | **分支面板**:点击会话头部的分支胶囊向下弹出——本地 / 远程分支列表,点击即切换;头部右侧是拉取按钮(只快进),底部可新建分支,菜单里可打开**提交图谱**(彩色 SVG 分叉图)与 **Tag** 管理 |
13
+ | ![差异面板](assets/gitdiff.png) | ![终端面板](assets/terminal.png) |
14
+ | **代码差异**:右侧边栏里的代码差异标签页——文件列表(逐文件勾选,可部分提交)+ 逐文件 diff(默认只显示有差异的 hunk,右上可切“完整文件”),底部提交区可写提交说明、打 Tag,提交 / 提交并推送 | **终端**:边栏里的真 PTY 终端(xterm.js + WebSocket),完整终端交互 |
15
+ | ![归档管理](assets/archive.png) | ![MCP 管理](assets/mcp.png) |
16
+ | **归档管理**:设置中的「归档」页面,列出所有已归档会话(标题 / 工作区 / 相对时间),支持恢复与彻底删除,顶部可全部恢复 / 全部删除 | **MCP 管理**:设置中的「MCP 管理」页面,列出所有配置的 MCP 服务器及其运行状态与工具数,支持添加 / 编辑 / 启用停用 / 删除 / 重启 |
19
17
 
20
18
  ## 功能
21
19
 
22
20
  - **代码字号(px)**:绝对值 8–32,默认 13(正文 16 时的 DSH 原生代码块字号);作用于代码块,行内代码按比例跟随——旧版的百分比配置(`codeFontScale`)仍然兼容,一旦设置新的 px 值即以其为准。消息正文保持 DSH 原生字号。
23
- - **主题(布局区单选,默认即原生外观)**:可选 `默认` 或 **荧光海报**——海报风双方案皮肤:浅色模式纸白底 + 黑粗线条,深色模式近黑底 + 浅色粗线条,都配荧光黄高亮 + Anthropic 红点缀(按钮、链接、选中态跟随主题变量自动变色,代码块与输入框卡片带硬阴影贴纸效果),切换即时生效。后续皮肤会以同样方式追加为新选项。
21
+ - **主题(布局区单选,默认即原生外观)**:可选 `默认` 或 **荧光海报**——海报风双方案皮肤:浅色模式纸白底 + 黑粗线条,深色模式近黑底 + 浅色粗线条,都配荧光黄高亮 + Anthropic 红点缀(按钮、链接、选中态跟随主题变量自动变色,代码块与输入框卡片带硬阴影贴纸效果),输入框模型旁的**推理等级**按强度着色(绿 / 琥珀 / 蓝 / 紫,悬停选项行时同色底从左扫过),切换即时生效。后续皮肤会以同样方式追加为新选项。
24
22
  - **时间线(功能区内单选)**:一个开关两档,选一个:
25
23
  - **原生(默认)**:DSH 自带的回合导航轨(消息右侧的小圆点条),即官方默认行为。
26
24
  - **网页(经典)**:找回 v0.11 的经典右侧导航轨——消息区右缘垂直居中,收起时是一列细线,悬停展开为 240px 面板(消息预览 + 高亮当前位),悬停单项弹出带时间戳的详情气泡,**点击跳转**到对应消息(深历史会自动连续翻页加载后落点,带落点自校验);滚轮可在轨上直接翻阅被裁剪的条目。数据来自服务端 `dshChatTimeline` 会话投影(全量用户消息,与浏览器已加载窗口无关),少于两条用户消息的会话自动隐藏;切换到网页档时,原生回合导航轨由插件用一条主题无关的 CSS 规则(命中其 `--turn-natural-height` 内联变量)隐藏,两个不会同时出现。
@@ -66,7 +64,7 @@ ui-tweaks:
66
64
  # 方式一:从 npm 安装(推荐,预构建产物,一条命令装好)
67
65
  npx -y @deepseek-ai/dsh plugin --profile web add dsh-ui-tweaks
68
66
 
69
- # 方式二:从 GitHub 仓库安装(源码,会运行自包含的 prepare 构建)
67
+ # 方式二:从 GitHub 仓库安装(源码 + 预构建产物,无需本地构建)
70
68
  npx -y @deepseek-ai/dsh plugin --profile web add github:wlj521/dsh-ui-tweaks
71
69
  ```
72
70
 
@@ -77,14 +75,7 @@ npx -y @deepseek-ai/dsh plugin --profile web add dsh-ui-tweaks@0.12.0
77
75
  npx -y @deepseek-ai/dsh plugin --profile web add github:wlj521/dsh-ui-tweaks#v0.12.0 # 锁定 git tag
78
76
  ```
79
77
 
80
- 从 GitHub 安装时,pnpm 可能要求批准该包的构建脚本——把提示的包键加进该 profile 的 `pnpm-workspace.yaml`:
81
-
82
- ```yaml
83
- allowBuilds:
84
- dsh-ui-tweaks: true
85
- ```
86
-
87
- 然后重新执行 `add`。安装完成后**重启一次 `dsh web`**(bundle 插件在进程启动时扫描)。
78
+ 安装完成后**重启一次 `dsh web`**(bundle 插件在进程启动时扫描)。
88
79
 
89
80
  > 若 pnpm 报符号链接/hoist 相关错误,可在 profile 的 `pnpm-workspace.yaml` 中设置 `nodeLinker: hoisted`。
90
81
 
Binary file
package/assets/git.png CHANGED
Binary file
Binary file
package/assets/mcp.png CHANGED
Binary file
Binary file
Binary file
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'