dsh-archify-projects 0.1.0 → 0.2.0
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 +42 -2
- package/dist/client.js +276 -15
- package/dist/client.js.map +1 -1
- package/docs/DESIGN.md +81 -0
- package/docs/HANDOVER.md +117 -4
- package/lib/host/context.js.map +1 -1
- package/lib/host/index.js +4 -2
- package/lib/host/index.js.map +1 -1
- package/lib/host/models.js +137 -0
- package/lib/host/models.js.map +1 -0
- package/lib/host/routes.js +43 -0
- package/lib/host/routes.js.map +1 -1
- package/lib/host/runner.js +140 -16
- package/lib/host/runner.js.map +1 -1
- package/lib/host/settings.js +83 -0
- package/lib/host/settings.js.map +1 -0
- package/lib/shared/model-key.js +12 -0
- package/lib/shared/model-key.js.map +1 -0
- package/lib/shared/protocol.js +2 -0
- package/lib/shared/protocol.js.map +1 -1
- package/package.json +1 -1
package/docs/DESIGN.md
CHANGED
|
@@ -903,3 +903,84 @@ DiagramState {
|
|
|
903
903
|
|
|
904
904
|
OpenDesign 原型同步更新到 v0.7:`docs/design/workbench-v07.html`
|
|
905
905
|
(项目 `archify-workbench-v07`),截图 `docs/design/v07-prototype.png`,条高与实现一致(35px)。
|
|
906
|
+
|
|
907
|
+
---
|
|
908
|
+
|
|
909
|
+
## 18. v0.2.0:子代理会话 + 设置(模型)
|
|
910
|
+
|
|
911
|
+
### 18.1 一个决定:会话归谁所有
|
|
912
|
+
|
|
913
|
+
| 方案 | 会话形态 | 能不能按次指定模型 | 结论 |
|
|
914
|
+
| -------------------------------------------------------------------- | -------------------------------- | -------------------------------- | ----------------------------------------------------------------- |
|
|
915
|
+
| `sessionController.create()`(v0.1) | 普通会话,进左侧会话列表 | 只能 `selectModel`(改全局默认) | 淘汰 |
|
|
916
|
+
| `ctx.agents.create()` + `agentPresets.mount()`(v0.2,本插件自己建) | `origin: 'subagent'`,被侧栏过滤 | `agentOptions` 只作用于这条会话 | **采用** |
|
|
917
|
+
| `ctx.subagents.startActivation()` | 真子代理 | 支持 | 不可用:`request.parent` 必须是**活着的父 agent**,插件没有父会话 |
|
|
918
|
+
|
|
919
|
+
第三条是原本最「正确」的答案,但 DSH 的子代理接口要求一个活着的父 Agent
|
|
920
|
+
(父会话用于目录归属与结果投递),而插件的分析是路由触发的,没有父会话。
|
|
921
|
+
插件自己建一个 `origin: 'subagent'` 的会话能达到同样的可见性效果(侧栏按
|
|
922
|
+
origin 过滤),并且绕开「父会话必须存在」这个前提。
|
|
923
|
+
|
|
924
|
+
代价与边界:
|
|
925
|
+
|
|
926
|
+
- 这条会话没有 `parentSession`,所以它不会出现在任何父会话的子代理目录里 ——
|
|
927
|
+
用户看不见它的对话。插件用 todos / usage / qa 三个投影把它「翻译」到自己的
|
|
928
|
+
页面上,这是刻意的取舍;
|
|
929
|
+
- 通用会话接口(`sessionController.prompt` / `observe`)会拒绝驱动它
|
|
930
|
+
(`session/agent-busy`),所以提示词只能走 `agent.followup()`;
|
|
931
|
+
- 宿主缺 `agents.create` / `agentPresets` 时退回 v0.1 的路,功能不消失。
|
|
932
|
+
|
|
933
|
+
### 18.2 设置为什么只有一个字段
|
|
934
|
+
|
|
935
|
+
用户的原话是「弹窗仅展示模型」。所以设置里**只有**一项:分析模型。没有开关、
|
|
936
|
+
没有超时、没有并发 —— 其它可调项都留在 `cordis.patch.yml` / 插件配置里,
|
|
937
|
+
那是部署者的领域,不是页面上随手能改的东西。
|
|
938
|
+
|
|
939
|
+
模型列表不复用「宿主设置页」的 UI,只复用它的**数据源**:
|
|
940
|
+
`sessionController.modelCatalog()`。理由:插件页面是独立 bundle,拿不到 DSH
|
|
941
|
+
设置页的组件;而 catalog 是宿主公开的 Host API,返回的就是「当前真能路由」的
|
|
942
|
+
模型集合,正好是用户要的「复用 DSH 配好的模型」。
|
|
943
|
+
|
|
944
|
+
三层校验:
|
|
945
|
+
|
|
946
|
+
1. 页面:下拉里只有目录里的项 + 「跟随宿主默认」;
|
|
947
|
+
2. 路由:形状不对 → 400;目录非空且路由不在目录里 → 400;
|
|
948
|
+
3. 运行期:`agentOptions` 交给宿主,路由不可用时宿主自己报错,插件把失败记进
|
|
949
|
+
`runs[]` 的 error,不吞。
|
|
950
|
+
|
|
951
|
+
### 18.3 一个 UI 取舍:原生 `<select>` 而不是自制下拉
|
|
952
|
+
|
|
953
|
+
模型可能有几十个(多 provider × 多模型),自绘下拉要处理键盘、滚动、遮挡、
|
|
954
|
+
可访问性;原生 `<select>` 全都有,而且跟随宿主主题。代价是样式受限(只有
|
|
955
|
+
`.dap-select` 一层壳),但设置面板本来就是低频入口,不值得为它写一个组件。
|
|
956
|
+
|
|
957
|
+
---
|
|
958
|
+
|
|
959
|
+
## 19. v0.8 原型:设置入口(OpenDesign 同步)
|
|
960
|
+
|
|
961
|
+

|
|
962
|
+
|
|
963
|
+
实现落地(`src/host/settings.ts` / `routes.ts` / `runner.ts`)之后,原型同步到 **v0.8**:
|
|
964
|
+
|
|
965
|
+
| 项 | 内容 |
|
|
966
|
+
| -------------- | -------------------------------------------------------------------------------------------------------- |
|
|
967
|
+
| 原型文件 | [`docs/design/workbench-v08.html`](./design/workbench-v08.html)(v0.7 + 齿轮 + 设置弹窗) |
|
|
968
|
+
| OpenDesign | 项目 **`archify-workbench-v08`**(`index.html` 与上面那份逐字节一致) |
|
|
969
|
+
| 截图(浅色) | [`design/v08-settings.png`](./design/v08-settings.png)、[`design/v08-atlas.png`](./design/v08-atlas.png) |
|
|
970
|
+
| 截图(深色) | [`design/v08-settings-dark.png`](./design/v08-settings-dark.png) |
|
|
971
|
+
| 入口位置 | 总览头部「全部更新」左侧、工作台头部「更新图册」左侧,33px(工作台 30px)方形图标按钮 |
|
|
972
|
+
| 弹窗里有什么 | **只有一**:分析模型下拉(原生 `<select>`)+ 「会话形态 = 子代理会话」一行说明 |
|
|
973
|
+
| 底部原型切换条 | 「总览 / 工作区 / 新建图 / **设置** / 深色」 |
|
|
974
|
+
|
|
975
|
+
### 19.1 为什么原型里要画「会话形态」
|
|
976
|
+
|
|
977
|
+
用户能看见的唯一区别就是**左侧会话列表里不再多出一条**。原型里把它写死在弹窗底部
|
|
978
|
+
(`子代理会话 · 不占用左侧会话列表`),是提醒后来改 UI 的人:这一行不是装饰,
|
|
979
|
+
它对应 `runner.ts` 里 `meta.origin = 'subagent'` 这个事实。
|
|
980
|
+
|
|
981
|
+
### 19.2 生成方式
|
|
982
|
+
|
|
983
|
+
原型是「v0.7 + 三处增量」手改出来的(不是让模型重新设计):CSS 加 `.iconbtn` /
|
|
984
|
+
`.select`、两个头部各插一个齿轮、弹窗与 JS 照抄新建图弹窗的开关模式。
|
|
985
|
+
截图用 `google-chrome-stable --headless=new --window-size=1440,900 --screenshot` 出,
|
|
986
|
+
深色那张是把 `<html data-theme="dark">` 打开后再截一次 —— 和 v0.4–v0.7 的做法一致。
|
package/docs/HANDOVER.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> 面向接手的 agent。读完这一份就能改代码、跑验证、装/卸插件、看懂当初为什么这么写。
|
|
4
4
|
> 面向使用者的上手说明在 [README](../README.md),设计取舍在 [DESIGN.md](./DESIGN.md)。
|
|
5
5
|
|
|
6
|
-
最后更新:2026-11-
|
|
6
|
+
最后更新:2026-11-09(v0.2.0:子代理会话 + 设置/模型选择,见 §13)
|
|
7
7
|
|
|
8
8
|
---
|
|
9
9
|
|
|
@@ -22,7 +22,7 @@ DSH 的左栏插件「架构建模」:把一个代码库登记进台账,用*
|
|
|
22
22
|
| 方面 | 状态 |
|
|
23
23
|
| ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
24
24
|
| 功能 | 新增/删除项目、Git 探测(分支/commit/上游/脏)、首次生成、更新(切分支+快进+重跑)、重新生成单图、运行记录、深/浅色、非 Git 目录、iframe 内嵌预览、新窗口打开 |
|
|
25
|
-
| 测试 |
|
|
25
|
+
| 测试 | 206 个用例 / 15 个文件,`vitest` 全绿(约 1 s;`NODE_ENV` 不能是 production,见 §13.5) |
|
|
26
26
|
| 静态门 | `tsc`(两份 tsconfig)、`eslint`、`prettier --check`、`dependency-cruiser`、`artifact:check`(51.5 KB / 220 KB 预算)全绿 |
|
|
27
27
|
| 真机 | 在 `127.0.0.1:3080` 的真实宿主里跑通过「Git 项目」与「非 Git 目录」两条路径,深浅色都验过;截图见 [`docs/verify/`](./verify) |
|
|
28
28
|
| 产物 | `~/.dsh/dsh-archify-projects/` 下 1 个项目(`dsh-word-learn`),两张图 ready |
|
|
@@ -78,8 +78,9 @@ pnpm verify # build → artifact:check → typecheck/lint/format/deps →
|
|
|
78
78
|
└─ POST /dsh-archify-projects/projects/:id/update src/host/routes.ts
|
|
79
79
|
├─ git.ts 切回记录的分支 → fetch → FF 到最新 → 重新探测快照
|
|
80
80
|
├─ store.ts 台账里记一条 run(running),两张图置 queued
|
|
81
|
-
└─ runner.ts
|
|
82
|
-
├─
|
|
81
|
+
└─ runner.ts 起受限会话(v0.2:子代理会话,见 §13)
|
|
82
|
+
├─ agents.create({ meta.origin:'subagent', agentOptions:{provider,model},
|
|
83
|
+
│ setup: agentPresets.mount(preset) }) ← 旧路:sessionController.create
|
|
83
84
|
├─ policy.ts agent.ctx 上装 tools.restrict(allow) + tools.guard(fn)
|
|
84
85
|
├─ prompt.ts 拼 prompt(代码库路径、分支/commit、上次产物、产物标记约定)
|
|
85
86
|
├─ 投 prompt → whenIdle(或 runTimeoutMs 超时)
|
|
@@ -389,3 +390,115 @@ cacheWriteTokens`)写 `RunRecord.usage`、`QaEntry.usage`,并累加 `Project
|
|
|
389
390
|
不再有额外 iframe),「新建图」是条尾的虚线按钮。
|
|
390
391
|
查看器宽度从 ≈566px 增到 784px(1440 窗口)。组件测试里断言了「没有 `.dap-rail__group`」,
|
|
391
392
|
别把左栏加回来。
|
|
393
|
+
|
|
394
|
+
**内嵌查看器隐藏成品页头**:archify 成品 HTML 顶部有一行
|
|
395
|
+
`<项目名> · <图名>` 大字 + `pulse-dot`,而插件自己的查看器标题栏和帧头已经写了图名、
|
|
396
|
+
分支与时间。`page.tsx` 的 `hideArtifactHeader()` 在 iframe `onLoad` 时往同源文档 head
|
|
397
|
+
注入一条 `.header{display:none!important}`,只影响嵌入视图;点「新窗口」仍是成品原样。
|
|
398
|
+
同源被沙箱挡住就静默跳过,不影响看图。
|
|
399
|
+
|
|
400
|
+
---
|
|
401
|
+
|
|
402
|
+
## 13. v0.2.0:分析跑在子代理会话里 + 设置(模型选择)
|
|
403
|
+
|
|
404
|
+
> 本节描述 2026-11-09 之后的形态。两个改动是同一条线索的两半:**要能给每次运行
|
|
405
|
+
> 单独指定模型,就不能再用「新建一个普通会话」那条路**。
|
|
406
|
+
|
|
407
|
+
### 13.1 为什么「用子代理执行」
|
|
408
|
+
|
|
409
|
+
原来 `runner.openSession` 走 `sessionController.create()` —— 那是「开一个新对话」的
|
|
410
|
+
接口,后果有两个:分析会话会出现在用户的左侧会话列表里;而要给会话换模型只能用
|
|
411
|
+
`sessionController.selectModel()`,它的契约是**顺手把选择存成宿主的全局默认**(会把
|
|
412
|
+
用户自己的默认模型改掉)。
|
|
413
|
+
|
|
414
|
+
改成自己建 agent(`ctx.agents.create`):
|
|
415
|
+
|
|
416
|
+
```ts
|
|
417
|
+
const handle = await agents.create({
|
|
418
|
+
sessionId: `session-${randomUUID()}`,
|
|
419
|
+
meta: {
|
|
420
|
+
cwd: workspaceDir, // 插件工作区,提示词约定产物落这里
|
|
421
|
+
agentPreset: preset.id, // 与 cordis.patch.yml 里的受限 preset 同一个
|
|
422
|
+
origin: 'subagent', // DSH 侧边栏 sessionVisible() 直接过滤掉
|
|
423
|
+
delegationDepth: 1, // 本插件不再往下派子代理
|
|
424
|
+
},
|
|
425
|
+
agentOptions: { provider, model }, // ← 设置里选的模型,只影响这条会话
|
|
426
|
+
setup: async (agentCtx) => {
|
|
427
|
+
await presets.mount(agentCtx, preset.id)
|
|
428
|
+
},
|
|
429
|
+
})
|
|
430
|
+
agent.followup({ id, role: 'user', content, source: { kind: 'user' } })
|
|
431
|
+
```
|
|
432
|
+
|
|
433
|
+
要点(改这段前务必知道):
|
|
434
|
+
|
|
435
|
+
1. **`mount()` 必须在 `setup` 里调**:preset 的工具面 / persona / skill 目录都是
|
|
436
|
+
在 agent 的 scoped ctx 里注册的,`setup` 是唯一能装上去的时机。
|
|
437
|
+
2. **`origin: 'subagent'` 的会话不能被通用会话接口驱动**:`sessionController.prompt`
|
|
438
|
+
会以 `session/agent-busy`("subagent Sessions require their durable parent address")
|
|
439
|
+
拒绝。所以提示词用 `agent.followup()`,不要混着用。
|
|
440
|
+
3. **不要给这种会话调 `selectModel`**:既被 (2) 拒,也会改全局默认。
|
|
441
|
+
4. 召回/收尾完全没变:`agents.get(sessionId)` 仍然拿得到 agent,`whenIdle`、`todos`、
|
|
442
|
+
`tokenUsage` 三个 projection 都照旧。
|
|
443
|
+
5. 兜底顺序:`agents.create` 建失败 → 记一条 warn → 退回 `sessionController.create` +(如果 agent 暴露了 `agent.model.select`)直接改这条会话的路由。功能不会因为
|
|
444
|
+
宿主版本变化而消失,只是会话回到「普通会话 + 宿主默认模型」。
|
|
445
|
+
|
|
446
|
+
### 13.2 设置:只有一个字段
|
|
447
|
+
|
|
448
|
+
| 位置 | 内容 |
|
|
449
|
+
| ----------------------------------------------- | --------------------------------------------------------- |
|
|
450
|
+
| `src/host/settings.ts` | `settings.json` 读写(原子 rename)、形状校验、坏文件回落 |
|
|
451
|
+
| `src/host/models.ts` | `controller.modelCatalog()` 的防御式收纳(分组 → 扁平) |
|
|
452
|
+
| `GET/PUT /dsh-archify-projects/settings` | 页面拿/存设置;PUT 在目录非空时校验路由真的存在 |
|
|
453
|
+
| `src/client/components.tsx` 的 `SettingsDialog` | 齿轮弹窗:**只有一个模型下拉**,没有第二个可输入控件 |
|
|
454
|
+
|
|
455
|
+
`ModelRef = { provider, model, reasoningEffort? }`,字段名与 DSH 的 `ModelSelection`
|
|
456
|
+
一致,宿主侧可以原样塞进 `agentOptions`,不做翻译。
|
|
457
|
+
|
|
458
|
+
**模型不在插件里定义**:选项全部来自 `sessionController.modelCatalog()`
|
|
459
|
+
(`{ default, groups: [{ id, name, models: [{ id, name }] }], failures }`),
|
|
460
|
+
也就是用户在 DSH 里配好、当前真能路由到的那些。目录拿不到时页面只说
|
|
461
|
+
「跟随宿主默认」,不显示空下拉假装能选。
|
|
462
|
+
|
|
463
|
+
### 13.3 真机验证(2026-11-09,dsh-dev 容器 127.0.0.1:3080)
|
|
464
|
+
|
|
465
|
+
| 步骤 | 结果 |
|
|
466
|
+
| ------------------------- | ------------------------------------------------------------------------------------------------------------- |
|
|
467
|
+
| `GET /settings`(升级前) | `not-found 未知路由:GET /settings`(确认是新代码才有) |
|
|
468
|
+
| `GET /settings`(重启后) | 200,目录里是容器真配的两个路由:`self::…flash`、`zifei::…flash`,`fallback=zifei/deepseek-v4.1-flash` |
|
|
469
|
+
| `PUT /settings` | 200,`<dataDir>/settings.json` 落盘 `{ model: { provider, model } }` |
|
|
470
|
+
| 提问一次(只读会话) | 45 s 返回带文件行的回答;会话头 `"origin":"subagent","delegationDepth":1`,`config.provider=zifei` |
|
|
471
|
+
| 重画一张图(出图会话) | `ready` + 产物路径 + usage(160k in / 90k out);会话头同样 `origin:subagent`,`agentPreset=archify-projects` |
|
|
472
|
+
| 会话日志里的工具名 | `read / write / edit / glob / grep / skill / bash / todo_write` —— 白名单原样生效,没有 `web_search`/`task` |
|
|
473
|
+
|
|
474
|
+
结论:`mount()` 在真机的两个 preset 上都装对了(工具面、persona、archify skill 全在),
|
|
475
|
+
`agentOptions` 也真的生效;`/settings` 的探测在请求期(而不是插件 apply 期)才准,
|
|
476
|
+
所以 `RouteState.subagentSessions` 是**惰性函数**,别改回布尔快照 —— apply 时宿主
|
|
477
|
+
还没装好 `sessionController`,快照会永远显示「宿主不支持」。
|
|
478
|
+
|
|
479
|
+
### 13.4 原型同步(OpenDesign)
|
|
480
|
+
|
|
481
|
+
实现改完必须把**原型**也改掉,否则会出现「页面上有齿轮、原型里没有」的错位:
|
|
482
|
+
|
|
483
|
+
- `docs/design/workbench-v08.html` = v0.7 + 齿轮按钮 + 设置弹窗(CSS `.iconbtn`/`.select`,
|
|
484
|
+
两个头部各插一个,弹窗开关照抄「新建图」的模式);
|
|
485
|
+
- OpenDesign 项目 **`archify-workbench-v08`**(`index.html` 与上面那份相同);
|
|
486
|
+
- 截图:`docs/design/v08-settings.png`(浅色)、`v08-settings-dark.png`(深色)、
|
|
487
|
+
`v08-atlas.png`(齿轮在头部的位置);
|
|
488
|
+
- 出图方式:`google-chrome-stable --headless=new --window-size=1440,900 --screenshot`,
|
|
489
|
+
深色把 `<html data-theme="dark">` 打开后再截一次。
|
|
490
|
+
|
|
491
|
+
### 13.5 测试与两个坑
|
|
492
|
+
|
|
493
|
+
新增:`tests/unit/settings.test.ts`(9)、`tests/unit/models.test.ts`(6)、
|
|
494
|
+
`tests/unit/routes.test.ts` 的「设置(分析模型)」(7)、
|
|
495
|
+
`tests/integration/subagent.test.ts`(6,含「建会话失败要退回普通会话」)、
|
|
496
|
+
`tests/component/page.test.tsx` 的「设置入口」(3)。基线:**206 passed / 15 files**。
|
|
497
|
+
|
|
498
|
+
- **坑 1:`NODE_ENV=production` 会让组件测试全红**(`React.act is not a function`,
|
|
499
|
+
9 个用例全挂在 `render()` 上)。React 19 的 `act` 只在 development 构建里导出,
|
|
500
|
+
vitest 又是按 `NODE_ENV` 选包的。跑 verify 前确认 `NODE_ENV` 不是 `production`
|
|
501
|
+
(`NODE_ENV=test pnpm verify`)。这不是本插件的 bug,但看起来一模一样。
|
|
502
|
+
- **坑 2:组件测试的 fetch 桩是按「METHOD url」精确匹配的**,未命中就回
|
|
503
|
+
`not-found`。`StudioPage` 现在挂载时会 `GET /settings`,所以设置拉取**必须静默
|
|
504
|
+
失败**(`try/catch` 里什么都不做),否则每条老用例都会多出一条错误提示。
|
package/lib/host/context.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/host/context.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/host/context.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAuPH,oCAAoC;AACpC,MAAM,UAAU,SAAS,CAAI,GAAgB,EAAE,IAAY;IACzD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAC5B,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,MAAW,CAAA;IACjE,CAAC;IAAC,MAAM,CAAC;QACP,6BAA6B;IAC/B,CAAC;IACD,kDAAkD;IAClD,mEAAmE;IACnE,IAAI,CAAC;QACH,MAAM,MAAM,GAAI,GAA0C,CAAC,IAAI,CAAC,CAAA;QAChE,OAAQ,MAAwB,IAAI,SAAS,CAAA;IAC/C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAA;IAClB,CAAC;AACH,CAAC"}
|
package/lib/host/index.js
CHANGED
|
@@ -16,11 +16,11 @@ import { ledgerPath, resolveConfig, workspaceRoot } from './config.js';
|
|
|
16
16
|
import { serviceOf } from './context.js';
|
|
17
17
|
import { makeFence } from './http.js';
|
|
18
18
|
import { createDispatcher } from './routes.js';
|
|
19
|
-
import { reconcileArtifacts, Runner } from './runner.js';
|
|
19
|
+
import { canCreateSubagentSessions, reconcileArtifacts, Runner } from './runner.js';
|
|
20
20
|
import { ProjectStore } from './store.js';
|
|
21
21
|
import { ensureWorkspace } from './workspace.js';
|
|
22
22
|
/** 与 package.json 的 version 保持一致(有单测守着)。 */
|
|
23
|
-
export const VERSION = '0.
|
|
23
|
+
export const VERSION = '0.2.0';
|
|
24
24
|
/** 插件入口。 */
|
|
25
25
|
export function apply(ctx, rawConfig) {
|
|
26
26
|
const warnings = [];
|
|
@@ -47,6 +47,8 @@ export function apply(ctx, rawConfig) {
|
|
|
47
47
|
skillDir,
|
|
48
48
|
version: VERSION,
|
|
49
49
|
hasSessionService,
|
|
50
|
+
// 惰性探测:此刻宿主服务可能还没装好(见 RouteState 的注释)
|
|
51
|
+
subagentSessions: () => canCreateSubagentSessions(ctx),
|
|
50
52
|
});
|
|
51
53
|
// 路由必须挂在 inject 出来的子 ctx 上:cordis 的 proxy 在没 inject 时读
|
|
52
54
|
// `ctx.webServer` 会直接抛,注册就会被静默跳过(页面表现为「HTTP 404」)。
|
package/lib/host/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/host/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAC3D,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,EAAwB,MAAM,aAAa,CAAA;AAC5F,OAAO,EAAE,SAAS,EAAoB,MAAM,cAAc,CAAA;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/host/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 宿主模型目录:把「DSH 里配好的模型」搬进本插件的设置弹窗。
|
|
3
|
+
*
|
|
4
|
+
* **插件不定义任何模型**。选项全部来自 `sessionController.modelCatalog()`——
|
|
5
|
+
* 也就是用户在 DSH 设置里配过凭据、当前真的能路由到的那些 provider/model。
|
|
6
|
+
* 这里只做两件事:
|
|
7
|
+
* 1. 把宿主的分组结构**收成扁平**(页面只有一个下拉,不需要分组头);
|
|
8
|
+
* 2. 形状不对/宿主没有这个能力时,明确返回 `source: 'unavailable'`,
|
|
9
|
+
* 让页面退化成「跟随宿主默认」,而不是显示一个空下拉假装能选。
|
|
10
|
+
*
|
|
11
|
+
* 为什么需要防御式解析:宿主版本会变,`modelCatalog()` 的返回是宿主生成的
|
|
12
|
+
* 结构。这里逐字段读、读不到就跳过,永远不因为一个字段缺失把整个设置面板打挂。
|
|
13
|
+
*/
|
|
14
|
+
import { modelKey } from '../shared/model-key.js';
|
|
15
|
+
import { serviceOf } from './context.js';
|
|
16
|
+
/** 宿主没有模型目录能力时回这个(页面据此显示「跟随宿主默认」)。 */
|
|
17
|
+
export const NO_CATALOG = {
|
|
18
|
+
options: [],
|
|
19
|
+
fallback: null,
|
|
20
|
+
failures: [],
|
|
21
|
+
source: 'unavailable',
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* 读一次宿主模型目录。
|
|
25
|
+
*
|
|
26
|
+
* 不抛错:缺服务、宿主版本没有这个方法、provider 集体超时,都变成
|
|
27
|
+
* `source: 'unavailable'` 或一条 `failures`。调用方(路由)只关心结果形状。
|
|
28
|
+
*/
|
|
29
|
+
export async function readModelCatalog(ctx) {
|
|
30
|
+
const controller = serviceOf(ctx, 'sessionController');
|
|
31
|
+
if (controller === undefined || typeof controller.modelCatalog !== 'function') {
|
|
32
|
+
return NO_CATALOG;
|
|
33
|
+
}
|
|
34
|
+
let raw;
|
|
35
|
+
try {
|
|
36
|
+
raw = await controller.modelCatalog();
|
|
37
|
+
}
|
|
38
|
+
catch (err) {
|
|
39
|
+
return {
|
|
40
|
+
options: [],
|
|
41
|
+
fallback: null,
|
|
42
|
+
failures: [
|
|
43
|
+
{
|
|
44
|
+
provider: '*',
|
|
45
|
+
providerName: 'DSH',
|
|
46
|
+
message: err instanceof Error ? err.message : String(err),
|
|
47
|
+
},
|
|
48
|
+
],
|
|
49
|
+
source: 'host',
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
return normalizeCatalog(raw);
|
|
53
|
+
}
|
|
54
|
+
/** 把宿主的 `ModelCatalog` 收成插件的扁平形状。纯函数,单测直接打。 */
|
|
55
|
+
export function normalizeCatalog(raw) {
|
|
56
|
+
if (typeof raw !== 'object' || raw === null)
|
|
57
|
+
return { ...NO_CATALOG, source: 'host' };
|
|
58
|
+
const source = raw;
|
|
59
|
+
const options = [];
|
|
60
|
+
const seen = new Set();
|
|
61
|
+
const groups = Array.isArray(source.groups) ? source.groups : [];
|
|
62
|
+
for (const group of groups) {
|
|
63
|
+
if (typeof group !== 'object' || group === null)
|
|
64
|
+
continue;
|
|
65
|
+
const g = group;
|
|
66
|
+
const provider = text(g.id);
|
|
67
|
+
if (provider === null)
|
|
68
|
+
continue;
|
|
69
|
+
const providerName = text(g.name) ?? provider;
|
|
70
|
+
const models = Array.isArray(g.models) ? g.models : [];
|
|
71
|
+
for (const model of models) {
|
|
72
|
+
if (typeof model !== 'object' || model === null)
|
|
73
|
+
continue;
|
|
74
|
+
const m = model;
|
|
75
|
+
const id = text(m.id);
|
|
76
|
+
if (id === null)
|
|
77
|
+
continue;
|
|
78
|
+
const key = modelKey({ provider, model: id });
|
|
79
|
+
if (seen.has(key))
|
|
80
|
+
continue;
|
|
81
|
+
seen.add(key);
|
|
82
|
+
options.push({
|
|
83
|
+
key,
|
|
84
|
+
provider,
|
|
85
|
+
providerName,
|
|
86
|
+
model: id,
|
|
87
|
+
name: text(m.name) ?? id,
|
|
88
|
+
description: text(m.description),
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
const failures = [];
|
|
93
|
+
const rawFailures = Array.isArray(source.failures) ? source.failures : [];
|
|
94
|
+
for (const failure of rawFailures) {
|
|
95
|
+
if (typeof failure !== 'object' || failure === null)
|
|
96
|
+
continue;
|
|
97
|
+
const f = failure;
|
|
98
|
+
const provider = text(f.id);
|
|
99
|
+
if (provider === null)
|
|
100
|
+
continue;
|
|
101
|
+
failures.push({
|
|
102
|
+
provider,
|
|
103
|
+
providerName: text(f.name) ?? provider,
|
|
104
|
+
message: text(f.message) ?? '列不出模型',
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
return {
|
|
108
|
+
options,
|
|
109
|
+
fallback: readModelRef(source.default),
|
|
110
|
+
failures,
|
|
111
|
+
source: 'host',
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
/** 只接受 `{ provider, model, reasoningEffort? }` 形状;其余一律 null。 */
|
|
115
|
+
export function readModelRef(value) {
|
|
116
|
+
if (typeof value !== 'object' || value === null)
|
|
117
|
+
return null;
|
|
118
|
+
const raw = value;
|
|
119
|
+
const provider = text(raw.provider);
|
|
120
|
+
const model = text(raw.model);
|
|
121
|
+
if (provider === null || model === null)
|
|
122
|
+
return null;
|
|
123
|
+
const effort = text(raw.reasoningEffort);
|
|
124
|
+
return effort === null ? { provider, model } : { provider, model, reasoningEffort: effort };
|
|
125
|
+
}
|
|
126
|
+
/** 这个路由在目录里存在吗(PUT /settings 的校验)。 */
|
|
127
|
+
export function catalogHas(catalog, ref) {
|
|
128
|
+
const key = modelKey(ref);
|
|
129
|
+
return catalog.options.some((option) => option.key === key);
|
|
130
|
+
}
|
|
131
|
+
function text(value) {
|
|
132
|
+
if (typeof value !== 'string')
|
|
133
|
+
return null;
|
|
134
|
+
const trimmed = value.trim();
|
|
135
|
+
return trimmed.length === 0 ? null : trimmed;
|
|
136
|
+
}
|
|
137
|
+
//# sourceMappingURL=models.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/host/models.ts"],"names":[],"mappings":"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"}
|
package/lib/host/routes.js
CHANGED
|
@@ -12,7 +12,9 @@ import { allDiagrams, createProject, defaultProjectName, findDiagram, runnableDi
|
|
|
12
12
|
import { projectDir, workspaceRoot } from './config.js';
|
|
13
13
|
import { probeGit, syncToLatest } from './git.js';
|
|
14
14
|
import { BadRequest, matchPath, methodOf, pathOf, readJsonObject, sendError, sendOk, } from './http.js';
|
|
15
|
+
import { catalogHas, readModelCatalog } from './models.js';
|
|
15
16
|
import { RunnerBusy, RunnerUnavailable } from './runner.js';
|
|
17
|
+
import { readSettings, sanitizeModelRef, writeSettings } from './settings.js';
|
|
16
18
|
import { confineToRoot, isDirectory } from './workspace.js';
|
|
17
19
|
/** 生成项目 id。 */
|
|
18
20
|
export function newProjectId(now = new Date()) {
|
|
@@ -52,6 +54,10 @@ async function route(state, req, res, rest) {
|
|
|
52
54
|
const method = methodOf(req);
|
|
53
55
|
if (rest === '/health' && method === 'GET')
|
|
54
56
|
return handleHealth(state, res);
|
|
57
|
+
if (rest === '/settings' && method === 'GET')
|
|
58
|
+
return handleGetSettings(state, res);
|
|
59
|
+
if (rest === '/settings' && method === 'PUT')
|
|
60
|
+
return handlePutSettings(state, req, res);
|
|
55
61
|
if (rest === '/projects' && method === 'GET')
|
|
56
62
|
return handleList(state, res);
|
|
57
63
|
if (rest === '/projects' && method === 'POST')
|
|
@@ -131,6 +137,43 @@ function handleHealth(state, res) {
|
|
|
131
137
|
sendOk(res, value);
|
|
132
138
|
});
|
|
133
139
|
}
|
|
140
|
+
async function handleGetSettings(state, res) {
|
|
141
|
+
const value = await settingsValueOf(state);
|
|
142
|
+
sendOk(res, value);
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* 改设置(目前只有一个字段:分析用哪个模型)。
|
|
146
|
+
*
|
|
147
|
+
* 校验分两层:形状(`{provider, model}` 非空)与**可用性**(必须在宿主当前
|
|
148
|
+
* 模型目录里)。第二层只在宿主确实列得出模型时生效 —— 宿主没这个能力时,
|
|
149
|
+
* 不该因为「目录为空」就把用户手动写进来的路由判死。
|
|
150
|
+
*/
|
|
151
|
+
async function handlePutSettings(state, req, res) {
|
|
152
|
+
const body = (await readJsonObject(req));
|
|
153
|
+
const clearing = body.model === undefined || body.model === null;
|
|
154
|
+
const requested = clearing ? null : sanitizeModelRef(body.model);
|
|
155
|
+
if (!clearing && requested === null) {
|
|
156
|
+
throw new BadRequest('model 必须是 { provider, model }', 'bad-request');
|
|
157
|
+
}
|
|
158
|
+
const catalog = await readModelCatalog(state.ctx);
|
|
159
|
+
if (requested !== null && catalog.options.length > 0 && !catalogHas(catalog, requested)) {
|
|
160
|
+
throw new BadRequest(`宿主的模型目录里没有 ${requested.provider}/${requested.model}`, 'bad-request');
|
|
161
|
+
}
|
|
162
|
+
const saved = await writeSettings(state.config, { model: requested });
|
|
163
|
+
const value = {
|
|
164
|
+
model: saved.model,
|
|
165
|
+
catalog,
|
|
166
|
+
subagentSessions: state.subagentSessions(),
|
|
167
|
+
};
|
|
168
|
+
sendOk(res, value);
|
|
169
|
+
}
|
|
170
|
+
async function settingsValueOf(state) {
|
|
171
|
+
const [settings, catalog] = await Promise.all([
|
|
172
|
+
readSettings(state.config),
|
|
173
|
+
readModelCatalog(state.ctx),
|
|
174
|
+
]);
|
|
175
|
+
return { model: settings.model, catalog, subagentSessions: state.subagentSessions() };
|
|
176
|
+
}
|
|
134
177
|
async function handleList(state, res) {
|
|
135
178
|
const projects = await state.store.list();
|
|
136
179
|
const value = {
|
package/lib/host/routes.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routes.js","sourceRoot":"","sources":["../../src/host/routes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"routes.js","sourceRoot":"","sources":["../../src/host/routes.ts"],"names":[],"mappings":"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"}
|