dsh-auto-model-routing 0.5.0 → 0.5.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 +10 -0
- package/README.md +15 -17
- package/README.zh.md +14 -17
- package/docs/SCREENSHOTS.md +2 -2
- package/docs/auto-routing.gif +0 -0
- package/docs/settings.gif +0 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.5.2
|
|
4
|
+
|
|
5
|
+
- README follows the standard plugin layout: demos side by side, then the architecture diagram, then the introduction; a closing section links the ohmydsh source, the MIT license and the issue tracker.
|
|
6
|
+
- The release workflow now also creates the GitHub Release for each version and attaches the exact npm tarball. No runtime behavior changes.
|
|
7
|
+
|
|
8
|
+
## 0.5.1
|
|
9
|
+
|
|
10
|
+
- Replace both retired four-tier GIFs with high-resolution recordings of the current AUTO interaction, applied decision distribution and settings/strategy UI, using isolated mock services and synthetic tasks.
|
|
11
|
+
- Show both demos side by side at the top of the English and Chinese READMEs; remove the obsolete demo disclaimer and folded settings recording. No runtime behavior changes.
|
|
12
|
+
|
|
3
13
|
## 0.5.0
|
|
4
14
|
|
|
5
15
|
- **Breaking — one AUTO strategy.** The opt-in legacy four-tier chain is removed: the tier router and its rubric, the per-family `mainEfforts` / `childRoutes` mappings and their settings tabs, the reply-bar tier menu and `label` parameter, `judgements.jsonl` writes, `scripts/label-report.mjs` and the `eval/run.mjs` baseline. Default AUTO behavior (main effort, child capability routing, exact-child binding, Magpie transports, caps, allowlists, fork refusal) is unchanged.
|
package/README.md
CHANGED
|
@@ -2,11 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
English · [简体中文](README.zh.md)
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
<p align="center">
|
|
6
|
+
<img src="docs/auto-routing.gif" alt="AUTO: switch modes, apply effort and inspect the decision distribution" width="49%">
|
|
7
|
+
<img src="docs/settings.gif" alt="Settings: decision service, connection test, defaults and strategy details" width="49%">
|
|
8
|
+
</p>
|
|
6
9
|
|
|
7
|
-
*
|
|
10
|
+
*Left: AUTO interaction and applied decision. Right: current settings and strategy details. Recorded from an isolated DSH host with local mock Jev/model responses and synthetic tasks.*
|
|
8
11
|
|
|
9
|
-
[
|
|
12
|
+

|
|
10
13
|
|
|
11
14
|
<!-- problem -->
|
|
12
15
|
**Add AUTO mode to DSH: automatic effort for the main agent, automatic model + effort for sub-agents.** Stop adjusting reasoning investment every turn or choosing a model for every delegated task.
|
|
@@ -90,23 +93,14 @@ AUTO applies the selected effort to the current main request and awaits official
|
|
|
90
93
|
- **Local state:** configuration is under `$DSH_HOME/plugins/dsh-auto-model-routing/`; mode, child routes and feedback are under `$DSH_HOME/state/auto-model-routing/`. Feedback stores resource metadata, IDs, the strategy family, returned distributions and timestamps—not task/reply text. Request event IDs allow later usage correlation; costs are not fabricated when unavailable. See [feedback and evaluation](docs/feedback-evaluation.md).
|
|
91
94
|
- **No automatic learning.** Human allocation feedback is observational. It does not change routing or prove quality/cost benefits. Old messages without decision bindings are not backfilled; old records with missing evaluation fields remain unknown.
|
|
92
95
|
- **Upgrade to 0.5.0:** there is one AUTO strategy and no version setting. Existing sessions keep their stored mode; new chats still default to MANUAL unless configured otherwise. Retired `policy` / `mainEfforts` / `childRoutes` keys in the plugin configuration are ignored, shown as no longer effective in Settings, and removed on the next save. Child decisions and feedback recorded by 0.4.x stay readable. To go back, pin the published `dsh-auto-model-routing@0.4.2` (see [CHANGELOG](CHANGELOG.md) for the data boundary).
|
|
96
|
+
|
|
93
97
|
## Architecture
|
|
94
98
|
<!-- section: architecture -->
|
|
95
99
|
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
Main failures disable AUTO; child failures stop dispatch. Explicit model/effort constraints are preserved. The diagram shows the AUTO paths; MANUAL makes no new judgments and fork is unsupported. Feedback does not automatically alter routing.
|
|
100
|
+
The diagram at the top shows the AUTO paths. Main failures disable AUTO; child failures stop dispatch. Explicit model/effort constraints are preserved. MANUAL makes no new judgments and fork is unsupported. Feedback does not automatically alter routing.
|
|
99
101
|
|
|
100
102
|
Entry: [index.ts](src/index.ts). Enforcement: [policy-host.ts](src/policy-host.ts). Actual rubric: [rubric.json](src/rubric.json). Family strategies (supported models, transports, effort starting points, capability slots): [strategies](src/strategies/index.ts); routing: [routing.ts](src/routing.ts). UI: [client](src/client/index.ts). Coverage and limitations (historical records): [development verification](docs/policy-v2-development.md), [real Magpie acceptance](docs/magpie-live-acceptance.md).
|
|
101
103
|
|
|
102
|
-
<details>
|
|
103
|
-
<summary>Earlier four-tier UI demos (removed in 0.5.0)</summary>
|
|
104
|
-
|
|
105
|
-
These isolated-host recordings use mock Jev/model responses and show a UI that no longer exists.
|
|
106
|
-
|
|
107
|
-

|
|
108
|
-
|
|
109
|
-
</details>
|
|
110
104
|
## Development
|
|
111
105
|
|
|
112
106
|
```sh
|
|
@@ -117,9 +111,7 @@ npm run build
|
|
|
117
111
|
|
|
118
112
|
Tests use the official AgentLoop with fake LLM streams and mock/loopback Jev responses, not paid model calls. To observe AUTO decisions and their actual token usage, ask the agent to use the `auto-model-routing-report` skill (on demand only; it runs the read-only `lib/usage-report.js`). It is observational, not a savings measurement. Evaluation schema and deduplication rules are in [feedback-evaluation.md](docs/feedback-evaluation.md).
|
|
119
113
|
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
The [current specification](https://github.com/prgrmrwy/ohmydsh/blob/main/openspec/specs/auto-model-routing/spec.md) lives in the source monorepo. The bundled [delegation skill](skills/subagent-model-routing/SKILL.md) supplies guidance; enforcement belongs to the official host hooks, not the prompt. No measured task-quality or token-savings claim is made.
|
|
114
|
+
The package builds and loads independently using its declared dependencies, bundled skill and official DSH services; no monorepo checkout or monorepo instruction file is required. External design references are optional background, not runtime inputs. The bundled [delegation skill](skills/subagent-model-routing/SKILL.md) supplies guidance; enforcement belongs to the official host hooks, not the prompt. No measured task-quality or token-savings claim is made.
|
|
123
115
|
|
|
124
116
|
## Removal
|
|
125
117
|
<!-- section: removal -->
|
|
@@ -129,3 +121,9 @@ dsh plugin --profile web remove dsh-auto-model-routing
|
|
|
129
121
|
```
|
|
130
122
|
|
|
131
123
|
Restart DSH and refresh the page. The plugin's skill/tools and request hooks disappear; settings and logs remain. Without the plugin, child replay is no longer enforced and host restoration uses the original creation configuration. In [ohmydsh](https://github.com/prgrmrwy/ohmydsh), disable the local entry and rebuild instead.
|
|
124
|
+
|
|
125
|
+
## Source, license and contributing
|
|
126
|
+
|
|
127
|
+
This plugin is developed in [ohmydsh](https://github.com/prgrmrwy/ohmydsh) (`packages/auto-model-routing`); [this repository](https://github.com/prgrmrwy/dsh-auto-model-routing) is its release mirror, published automatically to [npm](https://www.npmjs.com/package/dsh-auto-model-routing) and [GitHub Releases](https://github.com/prgrmrwy/dsh-auto-model-routing/releases). The [current specification](https://github.com/prgrmrwy/ohmydsh/blob/main/openspec/specs/auto-model-routing/spec.md) lives there too.
|
|
128
|
+
|
|
129
|
+
[MIT](LICENSE). Issues and pull requests are welcome at [prgrmrwy/dsh-auto-model-routing](https://github.com/prgrmrwy/dsh-auto-model-routing/issues) — including support for model families beyond Claude and GPT.
|
package/README.zh.md
CHANGED
|
@@ -2,11 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
[English](README.md) · 简体中文
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
<p align="center">
|
|
6
|
+
<img src="docs/auto-routing.gif" alt="AUTO:切换模式、应用推理投入并查看决策分布" width="49%">
|
|
7
|
+
<img src="docs/settings.gif" alt="设置:决策服务、连接测试、默认值与策略说明" width="49%">
|
|
8
|
+
</p>
|
|
6
9
|
|
|
7
|
-
|
|
10
|
+
*左:AUTO 交互与已应用的决策;右:当前设置页与策略说明。录制来自隔离 DSH 宿主,使用本地模拟 Jev/模型响应与合成任务。*
|
|
8
11
|
|
|
9
|
-
[
|
|
12
|
+

|
|
10
13
|
|
|
11
14
|
<!-- problem -->
|
|
12
15
|
**为 DSH 增加 AUTO 模式:主 Agent 自动调 effort,子 Agent 自动选 model + effort。** 不必每轮手动选择推理投入,也不必为每个子任务手动挑模型。
|
|
@@ -94,20 +97,10 @@ AUTO 将选定 effort 应用于本次主请求;effort 改变时,等待官方
|
|
|
94
97
|
## 架构
|
|
95
98
|
<!-- section: architecture -->
|
|
96
99
|
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
主判断失败停用 AUTO,子失败停止派发;保留显式 model/effort。图示为 AUTO 路径,MANUAL 不做新判断,fork 暂不支持。反馈不会自动改变路由。
|
|
100
|
+
顶部的架构图为 AUTO 路径。主判断失败停用 AUTO,子失败停止派发;保留显式 model/effort。MANUAL 不做新判断,fork 暂不支持。反馈不会自动改变路由。
|
|
100
101
|
|
|
101
102
|
入口:[index.ts](src/index.ts)。执行接入:[policy-host.ts](src/policy-host.ts)。实际判据:[rubric.json](src/rubric.json)。家族策略(支持的模型、transport、effort 起点、能力槽):[strategies](src/strategies/index.ts);路由计算:[routing.ts](src/routing.ts)。界面:[client](src/client/index.ts)。覆盖边界(历史记录):[开发验证](docs/policy-v2-development.md)、[真实 Magpie 验收](docs/magpie-live-acceptance.md)。
|
|
102
103
|
|
|
103
|
-
<details>
|
|
104
|
-
<summary>早期四档界面演示(已于 0.5.0 删除)</summary>
|
|
105
|
-
|
|
106
|
-
下列隔离宿主录屏使用模拟 Jev/模型响应,展示的界面已不存在。
|
|
107
|
-
|
|
108
|
-

|
|
109
|
-
|
|
110
|
-
</details>
|
|
111
104
|
## 开发验证
|
|
112
105
|
|
|
113
106
|
```sh
|
|
@@ -118,9 +111,7 @@ npm run build
|
|
|
118
111
|
|
|
119
112
|
测试使用官方 AgentLoop、假 LLM 流和 mock/回环 Jev,不产生真实模型费用。如需观察 AUTO 决策及实际 token 用量,请明确让 agent 使用 `auto-model-routing-report` skill(仅按需调用,运行只读的 `lib/usage-report.js`);它是观察统计,不衡量节省;新数据结构与去重口径见[feedback-evaluation.md](docs/feedback-evaluation.md)。
|
|
120
113
|
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
[当前规范](https://github.com/prgrmrwy/ohmydsh/blob/main/openspec/specs/auto-model-routing/spec.md)在源码 monorepo 中维护。包内[委派 skill](skills/subagent-model-routing/SKILL.md)提供指引,执行保障来自官方宿主钩子,而不是提示词。暂无完整任务质量或 token 节省的量化结论。
|
|
114
|
+
插件使用自身声明的依赖、包内 skill 和官方 DSH 服务即可独立构建与加载,不要求检出主仓,也不要求安装主仓环境指令。外部设计链接仅供背景阅读,不是运行输入。包内[委派 skill](skills/subagent-model-routing/SKILL.md)提供指引,执行保障来自官方宿主钩子,而不是提示词。暂无完整任务质量或 token 节省的量化结论。
|
|
124
115
|
|
|
125
116
|
## 移除
|
|
126
117
|
<!-- section: removal -->
|
|
@@ -130,3 +121,9 @@ dsh plugin --profile web remove dsh-auto-model-routing
|
|
|
130
121
|
```
|
|
131
122
|
|
|
132
123
|
重启 DSH 并刷新页面。插件的 skill、工具和请求钩子撤销,配置与日志保留。关闭插件后不再执行子路由恢复,宿主使用原始创建配置。在 [ohmydsh](https://github.com/prgrmrwy/ohmydsh) 中则禁用 local 条目并重新构建。
|
|
124
|
+
|
|
125
|
+
## 来源、许可与参与
|
|
126
|
+
|
|
127
|
+
本插件在 [ohmydsh](https://github.com/prgrmrwy/ohmydsh)(`packages/auto-model-routing`)中持续开发,[本仓库](https://github.com/prgrmrwy/dsh-auto-model-routing)是发布镜像,自动发布到 [npm](https://www.npmjs.com/package/dsh-auto-model-routing) 与 [GitHub Releases](https://github.com/prgrmrwy/dsh-auto-model-routing/releases)。[当前规范](https://github.com/prgrmrwy/ohmydsh/blob/main/openspec/specs/auto-model-routing/spec.md)也在主仓维护。
|
|
128
|
+
|
|
129
|
+
采用 [MIT](LICENSE) 许可。欢迎到 [prgrmrwy/dsh-auto-model-routing](https://github.com/prgrmrwy/dsh-auto-model-routing/issues) 提 issue 和 PR,包括支持 Claude、GPT 以外的模型家族。
|
package/docs/SCREENSHOTS.md
CHANGED
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
|
|
3
3
|
| file | kind | source | date | reviewer | verdict | note |
|
|
4
4
|
| --- | --- | --- | --- | --- | --- | --- |
|
|
5
|
-
| auto-routing.gif | screenshot | isolated DSH_HOME
|
|
6
|
-
| settings.gif | screenshot | same isolated
|
|
5
|
+
| auto-routing.gif | screenshot | isolated DSH_HOME under /tmp, port 3199; current plugin UI with local loopback mock Jev and model streaming responses; Playwright/CDP lossless 2x screenshots, global-palette GIF | 2026-10-28 | lead | pass (reviewed source frames: synthetic task/reply, complete conversation and decision panel; no real credentials or user data) | 1840x1600, 207702 bytes; MANUAL → AUTO, same-model medium → high, applied decision with returned distribution, back to MANUAL |
|
|
6
|
+
| settings.gif | screenshot | same isolated host; lossless 2x screenshots box-filtered to 1137x1070 | 2026-10-28 | lead | pass (reviewed source frames: full settings dialog, empty key input, synthetic loopback endpoint; no real credentials) | 385416 bytes; decision service menu, successful mock connection test, default mode, effort cap, save and expand current strategy details; replaces the retired four-tier demo |
|
package/docs/auto-routing.gif
CHANGED
|
Binary file
|
package/docs/settings.gif
CHANGED
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dsh-auto-model-routing",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.2",
|
|
4
4
|
"description": "DeepSeek Harness plugin: independent Jev capability and effort decisions, enforced fresh-child routes, decision visibility and allocation feedback",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "prgrmrwy",
|