@yangdcm/dsh-expert-team 1.3.0 → 1.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/CHANGELOG.md +34 -0
- package/README.en.md +26 -0
- package/README.md +18 -0
- package/client.js +6 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,40 @@
|
|
|
3
3
|
本包遵循[语义化版本](https://semver.org/lang/zh-CN/)。dsh 宿主版本线的对应关系写在
|
|
4
4
|
`package.json` 的 `engines.dsh` 与 `dsh.compatibility` 里,插件市场按它判断"这个插件跟你的宿主兼不兼容"。
|
|
5
5
|
|
|
6
|
+
## 1.3.1
|
|
7
|
+
|
|
8
|
+
**只改文案与文档,不动任何功能逻辑。**
|
|
9
|
+
|
|
10
|
+
### 设置页那句"需重启"改成与事实一致
|
|
11
|
+
|
|
12
|
+
- 页面顶部原文是「改动即保存(`编制` / `门禁` 两类需重启 `dsh web` 后生效)」——这在 1.1.x 成立,
|
|
13
|
+
**1.2.0 起不再成立**:设置写入后两条路径都会在进程内重算派生值(容量上限 `resolveLimits`、
|
|
14
|
+
轮次上限 `resolveRoundLimits`、档位门 `resolveTierGate`、A 线开关 `resolveLeadToolFace`,见
|
|
15
|
+
`reapplySettingsDerived()`):
|
|
16
|
+
- **宿主路径**(宿主有 settings 服务时,也就是官方面板/浮层实际在用的那条):
|
|
17
|
+
`scope.watch()` → `onResolved` → 重算;保存回执原文即"已在进程内重算,**无需重启**";
|
|
18
|
+
- **文件回退路径**(宿主不可用、写 `settings.json`):路由里同样显式调用了重算;
|
|
19
|
+
但该路径的保存回执仍按既有契约返回 `needsRestart: true`(被 `settings.test.mjs` 钉住),
|
|
20
|
+
因此文案**不能一概而论**。
|
|
21
|
+
- 新文案如实覆盖两种形态:「改动即保存。宿主设置可用时(默认)上限与档位门在进程内即时重算,
|
|
22
|
+
无需重启;若保存提示"重启后生效",按提示操作。」(英文版同步)
|
|
23
|
+
- 没有测试断言过这句话,故无需改任何断言。
|
|
24
|
+
|
|
25
|
+
### README 新增「装上之后怎么用」
|
|
26
|
+
|
|
27
|
+
- 写实"装完**重启一次** `dsh web` 即自动就位":插件加载时把「专家团模式」预设铺到
|
|
28
|
+
`$DSH_HOME/.agent-presets/expert-team`(带版本戳、升级整目录重铺),**不需要手工创建预设**。
|
|
29
|
+
- 实测依据(2026-09-15):删掉该目录模拟全新安装 → 仅重启一次 ⇒ 目录被**自动新建**
|
|
30
|
+
(APFS birth time 落在该次启动内,比插件落盘晚 621 秒 ⇒ 排除"安装时铺")、版本戳 = 插件版本、
|
|
31
|
+
与包内逐字节一致;选择器里随即出现「专家团模式」,`会话插件` 页 12/12 角色行齐全。
|
|
32
|
+
|
|
33
|
+
### README 新增「自定义预设」
|
|
34
|
+
|
|
35
|
+
- 创建入口与机制(`设置 → Agent 预设 → 用「创造模式」创作自定义预设`,本质是"复制一份既有预设")。
|
|
36
|
+
- 陷阱写清:**不要**用 `expert-team` 这个 id 去「创建 preset」——那只会得到所选**源**的组合
|
|
37
|
+
(通常是标准模式),既不是我们的预设,还会占住该 id 让自动重铺失效;要给专家团做定制,
|
|
38
|
+
请以「专家团模式」为源、**另用一个自己的 id**,改动只写在自己的目录里(`expert-team/` 归插件所有,
|
|
39
|
+
加载/升级会整目录重铺)。
|
|
6
40
|
## 1.3.0
|
|
7
41
|
|
|
8
42
|
**设置页搬进官方「设置」菜单 + 预设在插件加载时就位 + 门禁两处修复**
|
package/README.en.md
CHANGED
|
@@ -101,6 +101,32 @@ pnpm install && dsh web
|
|
|
101
101
|
> decides whether execution tools (`bash/write/edit/grep/glob`) are taken away from the lead and given
|
|
102
102
|
> to the role subagents. Turn it off with `config.leadToolFace` or `DSH_EXPERT_TEAM_LEAD_TOOLFACE=off`.
|
|
103
103
|
|
|
104
|
+
### After installing
|
|
105
|
+
|
|
106
|
+
1. **Restart `dsh web` once**: on load the plugin lays the 「专家团模式」 preset down into
|
|
107
|
+
`$DSH_HOME/.agent-presets/expert-team` (version-stamped; upgrades re-lay the whole directory) —
|
|
108
|
+
**no manual preset creation needed**. After that restart the preset picker lists it, and all 12 role
|
|
109
|
+
subagent tools are in place (visible under `Settings → Plugins → Plugin list → Session plugins`).
|
|
110
|
+
2. Switch the session to that preset, then run `/team <one-line goal>`.
|
|
111
|
+
3. Change settings under **Settings →「专家团」** (values live in the host namespace `expert-team`, so they
|
|
112
|
+
travel with the plugin market's backup/restore).
|
|
113
|
+
|
|
114
|
+
**Troubleshooting**: a missing preset, or a same-id preset squatting on ours, is healed by **one `dsh web`
|
|
115
|
+
restart** (the plugin re-lays on load); running `/team <task>` once does the same. See the
|
|
116
|
+
[Troubleshooting](#troubleshooting) section below for the details — including the easiest trap to fall into:
|
|
117
|
+
**never** create a preset with the id `expert-team`.
|
|
118
|
+
|
|
119
|
+
### Custom presets (when you want to change expert-team's defaults)
|
|
120
|
+
|
|
121
|
+
- **Create**: `Settings → Agent presets → create a custom preset with "creation mode"` (its mechanism is
|
|
122
|
+
"copy an existing preset"; the result lands in `$DSH_HOME/.agent-presets/<id>/`).
|
|
123
|
+
- **To customise expert-team, copy 「专家团模式」 as the source under an id of your own** (e.g. `my-team`): the
|
|
124
|
+
copy already carries the 12 role tools and their skill directory, and your edits stay inside `my-team/`.
|
|
125
|
+
**Never edit files under `expert-team/`** — that copy belongs to the plugin and is re-laid wholesale on
|
|
126
|
+
load/upgrade.
|
|
127
|
+
- A newly created preset **may only appear in the picker after a `dsh web` restart** (the host reads its roster
|
|
128
|
+
at startup).
|
|
129
|
+
|
|
104
130
|
## Quick start
|
|
105
131
|
|
|
106
132
|
```
|
package/README.md
CHANGED
|
@@ -93,6 +93,24 @@ pnpm install && dsh web
|
|
|
93
93
|
> 是否把执行类工具(`bash/write/edit/grep/glob`)从 lead 手上拿走、交给角色子代理。
|
|
94
94
|
> 也可用 `config.leadToolFace` 或环境变量 `DSH_EXPERT_TEAM_LEAD_TOOLFACE=off` 关闭。
|
|
95
95
|
|
|
96
|
+
### 装上之后怎么用
|
|
97
|
+
|
|
98
|
+
1. 装完**重启一次 `dsh web`**:插件加载时会把「专家团模式」预设自动铺到 `$DSH_HOME/.agent-presets/expert-team`
|
|
99
|
+
(带版本戳,升级会整目录重铺)—— **不需要手工创建预设**。重启后预设选择器里就有「专家团模式」,
|
|
100
|
+
12 个角色化专家 subagent 工具也全部就位(可在 `设置 → 插件 → 插件列表 → 会话插件` 看到它们)。
|
|
101
|
+
2. 会话切到「专家团模式」,再 `/team <一句话目标>`。
|
|
102
|
+
3. 改设置走 **设置 →「专家团」**(值存在宿主命名空间 `expert-team`,随插件市场的备份/恢复一起走)。
|
|
103
|
+
|
|
104
|
+
**排障**:预设丢了、或被同名预设占住 —— **重启一次 `dsh web` 即自愈**(插件加载会重铺),也可跑一次 `/team <任务>`。
|
|
105
|
+
细节见下面「排障」一节,其中包含那条最容易踩的坑:**不要**用 `expert-team` 这个 id 去「创建 preset」。
|
|
106
|
+
|
|
107
|
+
### 自定义预设(想改专家团默认行为时)
|
|
108
|
+
|
|
109
|
+
- **创建**:`设置 → Agent 预设 → 用「创造模式」创作自定义预设`(其机制是"复制一份既有预设",产出落在 `$DSH_HOME/.agent-presets/<id>/`)。
|
|
110
|
+
- **要定制专家团,请以「专家团模式」为源、换一个你自己的 id**(例如 `my-team`):复制出来的目录天然带上 12 个角色工具与它的 skill 目录,
|
|
111
|
+
你的改动只写在 `my-team/` 里。**永远不要改 `expert-team/` 里的文件** —— 那份是插件所有的,加载/升级会整目录重铺覆盖。
|
|
112
|
+
- 新建的预设**可能要重启 `dsh web` 后**才出现在选择器里(宿主名册在启动时读取)。
|
|
113
|
+
|
|
96
114
|
## 快速上手
|
|
97
115
|
|
|
98
116
|
```
|
package/client.js
CHANGED
|
@@ -1145,7 +1145,12 @@ window.__ModuleLoader__.load({
|
|
|
1145
1145
|
})
|
|
1146
1146
|
})
|
|
1147
1147
|
return h('div', { className: 'exp-settings' },
|
|
1148
|
-
|
|
1148
|
+
// 这句必须按**事实**说:宿主设置可用时(默认,也就是官方面板与浮层都在写的那个真源)
|
|
1149
|
+
// 写入会经 `watch` → `reapplySettingsDerived()` 在**进程内即时重算**上限与档位门
|
|
1150
|
+
// (`lib/command.js:5476` 的保存回执原文就是"无需重启");只有**回退到 settings.json**
|
|
1151
|
+
// 时才有"重启后生效"的保守提示,且那条由每次保存的回执逐次给出(`needsRestart`)。
|
|
1152
|
+
// 所以这里既不写"两类需重启"(在默认形态下是假的),也不写"永远不用重启"(回退路径会假)。
|
|
1153
|
+
h('div', { className: 'exp-settings-head' }, esc(t('改动即保存。宿主设置可用时(默认)上限与档位门在进程内即时重算,无需重启;若保存提示"重启后生效",按提示操作。', 'Saved on change. With host settings available (the default), caps and the tier gate are recomputed in-process — no restart needed; if a save says "applies after restart", follow that.'))),
|
|
1149
1154
|
rows,
|
|
1150
1155
|
h('div', { className: 'exp-settings-msg' + (err ? ' bad' : '') }, esc(err ? '✗ ' + err : (msg || ''))))
|
|
1151
1156
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@yangdcm/dsh-expert-team",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.1",
|
|
4
4
|
"description": "dsh「专家团」bundle:一句自然语言自动组建/持久化一支 12 角色多智能体团队,共享工作区协议 + 阶段门控编排 + 结构化交接 + 质量门禁/自动调度,实现者直接改代码并产出持久工件;带 live 团队浮层(质量门禁/覆盖率/工件预览)。 · Role-based multi-agent expert team for DeepSeek Harness: one sentence in, a staged and gated team delivery out.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|