dsh-model-organizer 0.3.0 → 0.3.1
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/README.md +31 -8
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -20,7 +20,7 @@ DSH(DeepSeek Harness)模型整理插件。全部通过**官方座位(slot
|
|
|
20
20
|
|
|
21
21
|
```yaml
|
|
22
22
|
# settings.yaml → llm-pi-ai.providers.<provider>.models[]
|
|
23
|
-
- id:
|
|
23
|
+
- id: <你的模型 ID>
|
|
24
24
|
name: DeepSeek-V4-Pro
|
|
25
25
|
reasoningEfforts: # 键=可选等级,值=发给上游的线值;只有 off 可以留空
|
|
26
26
|
off:
|
|
@@ -74,13 +74,11 @@ dsh plugin --profile web remove dsh-model-organizer
|
|
|
74
74
|
|
|
75
75
|
## 截图
|
|
76
76
|
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-

|
|
77
|
+
> 📷 **截图占位**:待补充。上一版截图包含真实供应商 / 会话名称,已全部移除,将在脱敏环境(干净的 profile、示例供应商名)重新截图后补上。
|
|
78
|
+
>
|
|
79
|
+
> 想要的效果预览:
|
|
80
|
+
> - **模型选择菜单**:供应商分组行(可点击展开/收起,箭头旋转)→ 展开后是缩进的模型行(前置圆点、当前项打勾)→ 底部一行「推理等级」入口,点进去是等级列表。
|
|
81
|
+
> - **模型设置页浮窗**:右下角固定面板,表头一行「供应商与模型顺序 · 拖动行即可调整顺序」;展开后是供应商行(右侧显示「N 个模型」),点开某个供应商可以看到它下面的模型行;供应商行和模型行都能直接拖动排序。
|
|
84
82
|
|
|
85
83
|
## ⚠️ 开发要点(踩过的坑,改代码前务必先读)
|
|
86
84
|
|
|
@@ -160,6 +158,31 @@ dsh plugin --profile web remove dsh-model-organizer
|
|
|
160
158
|
- **座位占用只有两个**:`conversation.input.model`(single,priority -1)与 `settings.models.footer`(list,id `model-organizer-provider-order`)。与 `@linxin666/dsh-client-ui-model-capabilities` 冲突的 `settings.models.provider-card` 座位**已被本插件让出**。
|
|
161
159
|
- 只写一个全局:`window.__dshModelOrganizerBuild`(构建标记,用于判断浏览器是否在跑缓存的旧 bundle);只注入一张 `<style id="dsh-model-organizer-style">`(幂等)。
|
|
162
160
|
|
|
161
|
+
## 附:环境变量与排查
|
|
162
|
+
|
|
163
|
+
### 让 agent 浏览器不显示窗口(消除抢焦点)
|
|
164
|
+
|
|
165
|
+
`dsh-ego-browser` 驱动的那个 Chromium 是 DSH 的子进程,默认会以一个真实窗口存在,并且**每次动作工具都会 `Target.activateTarget` 把它顶到前台**(这就是"用着用着 Chrome 跳出来"的原因)。让它完全不出现窗口:
|
|
166
|
+
|
|
167
|
+
```powershell
|
|
168
|
+
# 只对当前终端会话生效(先这样试)
|
|
169
|
+
$env:EGO_LINUX_HEADLESS = 1
|
|
170
|
+
dsh web
|
|
171
|
+
|
|
172
|
+
# 永久生效(设完必须重开终端,再启动 DSH)
|
|
173
|
+
setx EGO_LINUX_HEADLESS 1
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
- 显式设置 `1/true/yes/on` 会**优先于**"有没有显示环境"的自动推断(含 Windows),所以桌面环境下也能强制无头。
|
|
177
|
+
- 浏览器是**单例常驻**进程:改完要重启 DSH(或运行 `ego-browser --stop`)才会冷启动生效。
|
|
178
|
+
- **代价**:只损失「实时观察窗」这一项;其余 `ego_*` 工具(导航/点击/输入/JS/截图/下载)全部照常。
|
|
179
|
+
- 想恢复观察窗:去掉该环境变量并重启 DSH。
|
|
180
|
+
- 不要试图用插件设置里的 `chromeArgs` 传 `--headless` —— 它被列在 `CHROME_BLOCKED` 黑名单里,会被过滤掉。
|
|
181
|
+
|
|
182
|
+
### 改了插件代码但界面没变化
|
|
183
|
+
|
|
184
|
+
DSH 把客户端 bundle 以 `Cache-Control: public, max-age=31536000, immutable` 下发,而 bundle 的 URL 不随代码变化 —— 普通刷新会一直用缓存。**必须 Ctrl+Shift+R 强刷**(或在 DevTools → Network 勾 Disable cache)。
|
|
185
|
+
|
|
163
186
|
## 已知限制
|
|
164
187
|
|
|
165
188
|
- 只处理 `llm-pi-ai` 命名空间;DeepSeek 官方供应商(`dsh-llm-deepseek`)不在其内。
|