@ljwei-stak/dsh-model-router 0.16.4 → 0.17.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.
@@ -1,6 +1,6 @@
1
1
  # 模型路由工作台:配置、规划与实际执行
2
2
 
3
- 适用版本:正式版 `@ljwei-stak/dsh-model-router@0.16.0`;声明兼容 DeepSeek Harness Desktop `0.2.0-rc.1 / 0.2.0-rc.2`。安装与开发见[中文 README](../README.zh.md),旧包迁移见[迁移说明](../MIGRATION.md)。
3
+ 适用版本:正式版 `@ljwei-stak/dsh-model-router@0.16.0`;声明兼容 DeepSeek Harness Desktop `0.2.0-rc.1 / 0.2.0-rc.2`。安装与开发见[中文 README](../README.zh.md),旧包迁移见[迁移说明](archive/MIGRATION.md)。
4
4
 
5
5
  0.15.0 新增四页布局、规划后直接展示路由建议、执行输入变化时丢弃旧预览,以及历史裁剪和重试后的费用累计保留。源码中的独立 UI 预览使用模拟数据,用于组件检查,不代表真实账号调用或桌面端到端验收。
6
6
 
@@ -97,14 +97,44 @@
97
97
 
98
98
  ## 官方工具:体检、安装与登录
99
99
 
100
- 当前注册表包括 Kimi、Claude、Codex、MiniMax、MiMo、Grok、Gemini 和 ZCode。点**重新体检**查看实际安装、版本、入口及账号状态;最新版查询失败时保持未知,不表示已无更新。
100
+ 当前注册表包括 Kimi、Claude、Codex、MiniMax、MiMo、Grok、Gemini、OpenCode、Step Code 和 ZCode。点**重新体检**查看实际安装、版本、入口及账号状态;最新版查询失败时保持未知,不表示已无更新。
101
101
 
102
102
  1. 未安装时可从卡片固定官方来源安装;npm 工具安装厂商 `@latest`。新厂商版本没有自动通过本项目测试。
103
103
  2. 安装中可查看日志或取消;取消后重新体检确认状态。
104
104
  3. 有更新时可更新;已安装版本比查询结果更高时不会降级。
105
- 4. 已安装但未就绪时查看入口/平台原因,使用适用的修复动作;仅检测到文件不能证明可信执行。
106
- 5. ZCode 打开官方安装窗口后,还需要手动选目录完成安装,再体检。它属于 Windows 桌面应用。
107
- 6. 按**去登录**提示,在对应 CLI/终端完成厂商授权,然后用小任务验证权限。
105
+ 4. 已安装但未就绪时点**一键修复**,用同一条固定命令重新安装一遍。
106
+ 5. 不再需要时点**一键卸载**,只删除程序本身;配置、登录信息和历史记录保留,重新安装后仍在。
107
+ 6. ZCode 打开官方安装窗口后,还需要手动选目录完成安装,再体检。它属于 Windows 桌面应用,由系统“应用”卸载。
108
+ 7. 按**去登录**提示,在对应 CLI/终端完成厂商授权,然后用小任务验证权限。
109
+
110
+ ### 统一安装设置
111
+
112
+ 卡片顶部**统一安装设置**一次设定所有工具的安装地址,改动后下一次安装、修复、卸载立即使用。插件设置页里有同样的字段。
113
+
114
+ | 设置 | 作用 | 限制 |
115
+ | --- | --- | --- |
116
+ | 统一安装目录 | 所有一键安装的目标目录 | 必须是绝对路径,不能是磁盘或共享根目录;留空=各厂商默认位置 |
117
+ | npm 源地址 | npm / pnpm 方式的下载源 | 必须 https,可填国内镜像 |
118
+ | 安装脚本源覆盖 | 按工具 ID 指定厂商安装脚本的镜像 | JSON,键是官方工具 ID,值是 https 链接 |
119
+ | 允许 curl / irm 安装脚本 | 是否允许执行厂商安装脚本 | 关闭后只剩 npm / pnpm |
120
+
121
+ 几个容易踩的点:
122
+
123
+ - **不同工具对"自定义目录"的支持不一样。** npm 与 pnpm 都接受 `--prefix`,所以一定生效。阶跃的安装脚本接受 `--install-dir`(Windows 上是 `-InstallDir`),也生效。OpenCode 的官方脚本把路径写死成 `~/.opencode/bin`,**无法**接受自定义目录——如果设置里填了目录,它的行内会明确写出将装到哪里。
124
+ - **脚本方式不是把远程内容直接交给解释器。** 插件会先下载脚本、核对它仍然是该厂商的官方安装脚本,再执行本地副本;HTML 报错页和其他厂商的脚本都会被拒绝执行。镜像可以重新托管同一个脚本,不能替换成别的程序。阶跃的脚本源覆盖还会同时改写它下载二进制与校验和的地址,所以镜像需要提供完整的发布文件。
125
+ - **每行可以单独选安装方式。** 下拉框里列出该工具声明的全部方式;当前系统不支持的方式会写明原因,而不是悄悄换成别的。选中某个工具的方式会保存成该工具的默认,`/tools` 和 Agent 工具也会照此执行。
126
+ - **命令是可见的。** 每行上方实时显示这条设置下真正会执行的完整命令,点击前就能核对。
127
+
128
+ ### 安装方式的会话与 Agent 等价物
129
+
130
+ | 工作台操作 | 会话命令 | Agent 工具 |
131
+ | --- | --- | --- |
132
+ | 一键安装 / 更新 | `/tools install <工具id> [安装方式]` | `model_router_tool_install` |
133
+ | 一键修复 | `/tools repair <工具id> [安装方式]` | `model_router_tool_repair` |
134
+ | 一键卸载 | `/tools uninstall <工具id> [安装方式]` | `model_router_tool_uninstall` |
135
+ | 查看可用方式 | `/tools method <工具id>` | `model_router_tools` 的 `installMethods` |
136
+
137
+ 安装目录与下载源只来自你自己的插件设置,不会由客户端或 Agent 传入;任何一条调用都无法把安装指向自定义包名或任意地址。安装和卸载都需要 Harness 审批。
108
138
 
109
139
  注册表 ID 和托管模式如下:
110
140
 
@@ -113,6 +143,7 @@
113
143
  | `claude-code`、`codex`、`mimo-code`、`grok-build` | 只读,以及经审批的可编辑执行。 |
114
144
  | `kimi-code`、`minimax-code`、`zcode` | 经审批的可编辑执行。 |
115
145
  | `gemini` | 路由无界面适配器,不进入单工具/团队托管执行器。 |
146
+ | `opencode`、`stepcode` | 尚未核验受限执行入口;插件负责安装、检测与登录体检,执行请在终端中直接进行。 |
116
147
 
117
148
  ### 交互终端
118
149
 
@@ -50,4 +50,4 @@
50
50
  | 剧情与自由对话 | 独立 GAL 管理故事、立绘、音乐、设置和存档;自由模式经宿主模型服务调用,可能计费。 |
51
51
  | 更新 | 通过官方插件管理器分别安装各自的新版本;路由正式版发布在 npm `latest`(预发布版在 `next`),推荐精确版本。 |
52
52
 
53
- 登录、厂商实际模型和账单仍由账号持有人验收。完整步骤与安装后的检查见 [INSTALLATION_GUIDE.zh.md](INSTALLATION_GUIDE.zh.md),GAL 播放器教程见[独立仓库](https://github.com/Alice-Marx/deepseek-harness-galgame#readme)。
53
+ 登录、厂商实际模型和账单仍由账号持有人验收。完整步骤与安装后的检查见 [INSTALLATION_GUIDE.zh.md](../INSTALLATION_GUIDE.zh.md),GAL 播放器教程见[独立仓库](https://github.com/Alice-Marx/deepseek-harness-galgame#readme)。
@@ -0,0 +1,21 @@
1
+ # Archived root notes
2
+
3
+ These files used to live at the repository root. They are historical reports, work logs, and task instructions. Current usage docs stay beside this folder and in the repository README.
4
+
5
+ | File | Contents |
6
+ | --- | --- |
7
+ | [MIGRATION.md](MIGRATION.md) | Split of the combined plugin into the independent router and GAL packages. The README still links here. |
8
+ | [COMPREHENSIVE_TEST_INSTRUCTION.md](COMPREHENSIVE_TEST_INSTRUCTION.md) | GAL view test-and-fix instructions. |
9
+ | [EXPERIMENT_PLUGIN_INSTRUCTION.md](EXPERIMENT_PLUGIN_INSTRUCTION.md) | Instructions for the routing-experiment plugin. |
10
+ | [FINAL_REPORT.md](FINAL_REPORT.md) | DeepSeek adaptation completion report. |
11
+ | [MULTIMODAL_ENHANCEMENT_INSTRUCTION.md](MULTIMODAL_ENHANCEMENT_INSTRUCTION.md) | Multimodal enhancement task instructions. |
12
+ | [SUMMARY.md](SUMMARY.md) | Short summary of the DeepSeek adaptation work. |
13
+ | [TASK_COMPLETION_REPORT.md](TASK_COMPLETION_REPORT.md) | ModLens integration and experiment-plugin completion report. |
14
+ | [WORK_LOG_2026-09-01.md](WORK_LOG_2026-09-01.md) | Work log for 2026-09-01. |
15
+ | [RESEARCH_PAPER_FRAMEWORK.md](RESEARCH_PAPER_FRAMEWORK.md) | Research framework for routing-optimization experiments. |
16
+
17
+ Related documents that were also moved out of the root, but not into this archive:
18
+
19
+ - Guides: [INSTALLATION_GUIDE.zh.md](../INSTALLATION_GUIDE.zh.md), [QUICK_START.zh.md](../QUICK_START.zh.md)
20
+ - Model and ModLens notes: [MODEL-file/](../../MODEL-file/)
21
+ - Dated project task reports: [PROJECT-TASK-REPORT-file/](../../PROJECT-TASK-REPORT-file/)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ljwei-stak/dsh-model-router",
3
- "version": "0.16.4",
3
+ "version": "0.17.1",
4
4
  "type": "module",
5
5
  "description": "Model Router for official DeepSeek Harness Desktop: cost-aware task routing, dependent work packages and official vendor CLI discovery, installation and execution. GAL is available separately as @ljwei-stak/dsh-galgame.",
6
6
  "repository": {
@@ -54,6 +54,7 @@
54
54
  ".dsh-plugin/shared/official-tools-remote.mjs",
55
55
  ".dsh-plugin/shared/official-tool-executor.mjs",
56
56
  ".dsh-plugin/shared/task-executors.mjs",
57
+ ".dsh-plugin/shared/tool-install-preferences.mjs",
57
58
  ".dsh-plugin/shared/vendor-minimax-adapter.mjs",
58
59
  ".dsh-plugin/shared/vendor-mimo-grok-adapter.mjs",
59
60
  ".dsh-plugin/shared/latest-versions.mjs",
@@ -86,8 +87,8 @@
86
87
  "docs/assets/desktop-official-tools-0.9.0.png",
87
88
  "docs/assets/workbench-usage.svg",
88
89
  "docs/assets/candidate-pruning.svg",
89
- "INSTALLATION_GUIDE.zh.md",
90
- "MIGRATION.md",
90
+ "docs/INSTALLATION_GUIDE.zh.md",
91
+ "docs/archive/MIGRATION.md",
91
92
  "LICENSE",
92
93
  "CHANGELOG.md",
93
94
  "docs/assets/router-only-0.12.0.png"
@@ -102,7 +103,7 @@
102
103
  "experiment:routing-summary": "node scripts/summarize-routing-search.mjs",
103
104
  "experiment:routing-adaptive": "node scripts/adaptive-routing-study.mjs",
104
105
  "audit:livebench": "node scripts/livebench-aggregate-audit.mjs",
105
- "test": "node --test tests/adaptive-*.test.mjs tests/dynamic-data.test.mjs tests/router.test.mjs tests/routing-optimizer.test.mjs tests/routing-evaluation.test.mjs tests/routing-paired-statistics.test.mjs tests/routing-selftest-tools.test.mjs tests/livebench-aggregate-audit.test.mjs tests/livebench-prior-study.test.mjs tests/routing-search-experiment.test.mjs tests/routing-regression-study.test.mjs tests/routing-search-summary.test.mjs tests/harness-*.test.mjs tests/official-tools.test.mjs tests/official-team-runtime.test.mjs tests/model-profiles.test.mjs tests/model-profile-editor.test.mjs tests/tool-install-state.test.mjs tests/vendor-adapters.test.mjs tests/desktop-compat.test.mjs tests/plugin-split.test.mjs tests/task-executors.test.mjs tests/roadmap.test.mjs tests/insights-state.test.mjs tests/billing-team-ledger.test.mjs tests/subscription-billing.test.mjs tests/subscription-host.test.mjs tests/test-pass-regressions.test.mjs tests/roadmap-gaps.test.mjs tests/cordis-inject.test.mjs tests/cli-terminal.test.mjs tests/cli-terminal-gateway.test.mjs tests/latest-versions.test.mjs",
106
+ "test": "node --test tests/adaptive-*.test.mjs tests/dynamic-data.test.mjs tests/router.test.mjs tests/routing-optimizer.test.mjs tests/routing-evaluation.test.mjs tests/routing-paired-statistics.test.mjs tests/routing-selftest-tools.test.mjs tests/livebench-aggregate-audit.test.mjs tests/livebench-prior-study.test.mjs tests/routing-search-experiment.test.mjs tests/routing-regression-study.test.mjs tests/routing-search-summary.test.mjs tests/harness-*.test.mjs tests/official-tools.test.mjs tests/official-team-runtime.test.mjs tests/model-profiles.test.mjs tests/model-profile-editor.test.mjs tests/tool-install-state.test.mjs tests/vendor-adapters.test.mjs tests/desktop-compat.test.mjs tests/plugin-split.test.mjs tests/task-executors.test.mjs tests/tool-install-preferences.test.mjs tests/roadmap.test.mjs tests/insights-state.test.mjs tests/billing-team-ledger.test.mjs tests/subscription-billing.test.mjs tests/subscription-host.test.mjs tests/test-pass-regressions.test.mjs tests/roadmap-gaps.test.mjs tests/cordis-inject.test.mjs tests/cli-terminal.test.mjs tests/cli-terminal-gateway.test.mjs tests/latest-versions.test.mjs",
106
107
  "prepack": "node scripts/prepack.mjs",
107
108
  "pack:local": "npm pack --pack-destination dist"
108
109
  },