dsh-media-lens 0.2.0 → 0.2.2
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/CHANGELOG.md +8 -0
- package/README.md +10 -1
- package/dsh.plugin.json +2 -2
- package/package.json +16 -8
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
0.2.2: host enumeration addendum for DSH 0.2.1-rc.3 (declaration-only bump; contract plane zero diff).
|
|
4
|
+
|
|
3
5
|
## 0.1.0 (2026-10-06)
|
|
4
6
|
|
|
5
7
|
首版:透镜线(A)+ 路由线(B)单计划双线落地。
|
|
@@ -80,3 +82,9 @@ vision-bridge 发布版:选择器可见的透镜包装 + 配置热生效根因
|
|
|
80
82
|
- 宿主 service 全部 `ctx.get()` 软读优雅降级(C2);运行时依赖仅 schemastery。
|
|
81
83
|
- 131 vitest 用例全绿(含 `tests/inject.test.ts` 26 例覆盖 vision-bridge 与 volatile 取直);`check:line` 门禁保证 lib/ 与 src/ 逐字节对齐(C3)。
|
|
82
84
|
- 宿主线钉三线全 rc:`0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-rc.1 || 0.2.1-rc.2`(engines.dsh / peerDependencies / dsh.plugin.json / README 四写点由 sync-hosts 单源下发;publishConfig.tag = dsh-0.2.0)。
|
|
85
|
+
|
|
86
|
+
## 0.2.1 (2026-10-23)
|
|
87
|
+
|
|
88
|
+
### Changed
|
|
89
|
+
- **声明配合姊妹插件**:将两个配合插件加入 `peerDependencies` 并标 `optional`(`dsh-thinking-levels >=4.4.4`、`dsh-llm-openai-completions >=0.4.4`)——多模态模型注册/认证与音视频直传靠它们接管(thinking-levels 管模型配置录入/接管登记,openai-completions 做 OpenAI-compatible 传输接管将 file 块序列化成 video_url/input_audio)。二者均为 optional peer,不装则相应能力自动降级不报错,不触发 npm 强制拉装、不与宿主版本闸门冲突(两包 latest engines.dsh 均已含 0.2.1-rc.2)。README 新增「配合插件」小节。
|
|
90
|
+
|
package/README.md
CHANGED
|
@@ -11,7 +11,7 @@ media_read_video / media_read_audio / media_read_image
|
|
|
11
11
|
```
|
|
12
12
|
|
|
13
13
|
<!-- host-compat:begin — generated by scripts/sync-hosts.mjs from scripts/hosts.mjs; DO NOT EDIT -->
|
|
14
|
-
- **Supported DSH hosts:** `0.1.7-rc.1` `0.1.7-rc.2` `0.2.0-rc.1` `0.2.0-rc.2` `0.2.1-rc.1` `0.2.1-rc.2` (
|
|
14
|
+
- **Supported DSH hosts:** `0.1.7-rc.1` `0.1.7-rc.2` `0.2.0-rc.1` `0.2.0-rc.2` `0.2.1-rc.1` `0.2.1-rc.2` `0.2.1-rc.3` (7 rc across lines 0.1.7 / 0.2.0 / 0.2.1)
|
|
15
15
|
- **Runtime-verified:** `0.1.7-rc.2`, `0.2.0-rc.2`, `0.2.1-rc.1` — evidence in `.compat-results/`
|
|
16
16
|
<!-- host-compat:end -->
|
|
17
17
|
|
|
@@ -135,6 +135,15 @@ pnpm add ./dsh-media-lens --ignore-workspace-root-check # 或 npm pack 后装
|
|
|
135
135
|
- ffmpeg / ffprobe 在 PATH 上可用时启用抽帧/重编码/时长探测;缺失时元数据降级(记录在 attempts)。
|
|
136
136
|
- Node 原生 fetch(≥22.19)。
|
|
137
137
|
|
|
138
|
+
## 配合插件(可选 peer,非硬依赖)
|
|
139
|
+
|
|
140
|
+
media-lens 本身提供「工具处理多模态对象」(media_read_video/audio/image)。要把**多模态模型注册/认证进宿主**并让**音视频直传**真正内联(而非只看到文件 handle 文本),需两个姊妹插件配合——二者声明为 `optional` peer,不装则相应能力自动降级,不报错:
|
|
141
|
+
|
|
142
|
+
- **dsh-thinking-levels**:模型配置录入 / 认证与 reasoning_effort 管理面——音视频直传链路的模型由此登记。
|
|
143
|
+
- **dsh-llm-openai-completions**:OpenAI-compatible 传输接管(takeover)——把 file 块序列化成 video_url / input_audio 真正上送,未接管线路宿主只投影 handle 文本,插件检测到即落抽帧/ASR 兜底。
|
|
144
|
+
|
|
145
|
+
装机走宿主 profile(autoInstallPeers:false + hoisted),姊妹插件由 bundles 各自注册,optional peer 不触发 npm 拉装、不与宿主版本闸门冲突。
|
|
146
|
+
|
|
138
147
|
## 家族节与 tab 权重(bundle + 家族子 tab)
|
|
139
148
|
|
|
140
149
|
本插件为 host+client 双半 bundle(`dsh.plugin.json.client.main` 载 client 半身)。客户端半身把设置卡贡献进 `dsh-family` 家族节(顶级节 order 40、label「起子插件设置」,与本插件无关、由家族所有者统一渲染):
|
package/dsh.plugin.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"id": "dsh-external/dsh-media-lens",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.2",
|
|
4
4
|
"main": "./lib/index.js",
|
|
5
5
|
"description": "Media evidence lens + provider router for DeepSeek Harness (media_read_video / media_read_audio / media_read_image).",
|
|
6
6
|
"engines": {
|
|
7
|
-
"dsh": "0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-rc.1 || 0.2.1-rc.2"
|
|
7
|
+
"dsh": "0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-rc.1 || 0.2.1-rc.2 || 0.2.1-rc.3"
|
|
8
8
|
},
|
|
9
9
|
"contributes": {
|
|
10
10
|
"tools": [],
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dsh-media-lens",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.2",
|
|
4
4
|
"description": "Media evidence lens + provider router for DeepSeek Harness: media_read_video / media_read_audio / media_read_image turn local media into structured evidence (timeline / transcript / regions) via host-registered multimodal models first, configured OpenAI-compatible endpoints second, and local ffmpeg/CLI fallbacks last. Every fallback is recorded in meta.attempts — a fallback is never silent.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -62,12 +62,14 @@
|
|
|
62
62
|
},
|
|
63
63
|
"peerDependencies": {
|
|
64
64
|
"@deepseek-ai/cordis": "^4.0.2",
|
|
65
|
-
"@deepseek-ai/dsh-attachment": "0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-rc.1 || 0.2.1-rc.2",
|
|
66
|
-
"@deepseek-ai/dsh-client-locale": "0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-rc.1 || 0.2.1-rc.2",
|
|
67
|
-
"@deepseek-ai/dsh-client-ui-settings": "0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-rc.1 || 0.2.1-rc.2",
|
|
68
|
-
"@deepseek-ai/dsh-client-ui-slots": "0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-rc.1 || 0.2.1-rc.2",
|
|
69
|
-
"@deepseek-ai/dsh-llm": "0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-rc.1 || 0.2.1-rc.2",
|
|
70
|
-
"@deepseek-ai/dsh-tools": "0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-rc.1 || 0.2.1-rc.2",
|
|
65
|
+
"@deepseek-ai/dsh-attachment": "0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-rc.1 || 0.2.1-rc.2 || 0.2.1-rc.3",
|
|
66
|
+
"@deepseek-ai/dsh-client-locale": "0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-rc.1 || 0.2.1-rc.2 || 0.2.1-rc.3",
|
|
67
|
+
"@deepseek-ai/dsh-client-ui-settings": "0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-rc.1 || 0.2.1-rc.2 || 0.2.1-rc.3",
|
|
68
|
+
"@deepseek-ai/dsh-client-ui-slots": "0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-rc.1 || 0.2.1-rc.2 || 0.2.1-rc.3",
|
|
69
|
+
"@deepseek-ai/dsh-llm": "0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-rc.1 || 0.2.1-rc.2 || 0.2.1-rc.3",
|
|
70
|
+
"@deepseek-ai/dsh-tools": "0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-rc.1 || 0.2.1-rc.2 || 0.2.1-rc.3",
|
|
71
|
+
"dsh-llm-openai-completions": ">=0.4.4",
|
|
72
|
+
"dsh-thinking-levels": ">=4.4.4",
|
|
71
73
|
"react": ">=18 <19"
|
|
72
74
|
},
|
|
73
75
|
"peerDependenciesMeta": {
|
|
@@ -79,6 +81,12 @@
|
|
|
79
81
|
},
|
|
80
82
|
"@deepseek-ai/dsh-client-ui-slots": {
|
|
81
83
|
"optional": true
|
|
84
|
+
},
|
|
85
|
+
"dsh-llm-openai-completions": {
|
|
86
|
+
"optional": true
|
|
87
|
+
},
|
|
88
|
+
"dsh-thinking-levels": {
|
|
89
|
+
"optional": true
|
|
82
90
|
}
|
|
83
91
|
},
|
|
84
92
|
"devDependencies": {
|
|
@@ -99,7 +107,7 @@
|
|
|
99
107
|
},
|
|
100
108
|
"engines": {
|
|
101
109
|
"node": "^22.19.0 || >=24.0.0",
|
|
102
|
-
"dsh": "0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-rc.1 || 0.2.1-rc.2"
|
|
110
|
+
"dsh": "0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-rc.1 || 0.2.1-rc.2 || 0.2.1-rc.3"
|
|
103
111
|
},
|
|
104
112
|
"keywords": [
|
|
105
113
|
"deepseek-harness",
|