dsh-lead-mode 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/README.md +46 -15
- package/README.zh-CN.md +46 -15
- package/cordis.patch.yml +7 -4
- package/lib/index.js +10 -3
- package/package.json +7 -2
- package/skills/lead-mode/SKILL.md +2 -2
package/README.md
CHANGED
|
@@ -2,21 +2,30 @@
|
|
|
2
2
|
|
|
3
3
|
English | [中文](README.zh-CN.md)
|
|
4
4
|
|
|
5
|
-
Adds a Lead mode to DSH. One preset,
|
|
5
|
+
Adds a Lead mode to DSH. One preset, two skills, one self-check command, two reminders.
|
|
6
|
+
|
|
7
|
+
The official Team runtime ships tools: `spawn_teammate`, `send_message`, `team_task_*`. When to delegate, whom to delegate to, how to wait for a result, how to write the closing message, how to merge several members' output: none of that is in the tools. This plugin adds that layer. It does not replace the official Team mode; it sits on top of it.
|
|
6
8
|
|
|
7
9
|
Once installed, the model works the way a Lead does: split the work, delegate it, accept the result. It delegates hands-on work instead of doing everything alone.
|
|
8
10
|
|
|
9
11
|
## What you get
|
|
10
12
|
|
|
11
|
-
|
|
13
|
+
Five things. None of them touch dsh itself.
|
|
12
14
|
|
|
13
15
|
| Capability | Entry point | What you do |
|
|
14
16
|
|---|---|---|
|
|
15
17
|
| Lead mode preset | "Lead 模式" in the preset list | Switch to it |
|
|
16
18
|
| Lead working method skill | `/skill lead-mode`; the model also loads it on its own | Nothing |
|
|
19
|
+
| Team digest skill | `/skill team-digest`; the model decides at wrap-up whether to write one | Nothing |
|
|
17
20
|
| Dependency self-check | `/lead-mode` | Run it when dependencies look wrong |
|
|
18
21
|
| Two upfront reminders | Automatic | Nothing |
|
|
19
22
|
|
|
23
|
+
Additive only. `cordis.patch.yml` holds exactly two `insert` rows: this plugin, and a new `lead-mode` preset. The official `standard` preset is untouched; the new one copies 21 of its rows field for field and swaps only the persona.
|
|
24
|
+
|
|
25
|
+
It registers no tools, listens to no agent lifecycle events, and intercepts no requests. `lib/index.js` writes to two registries only: `skills` (two entries) and `commands` (one), plus a single warn at startup. Uninstall the plugin and those entries are gone; official behaviour goes back to what it was.
|
|
26
|
+
|
|
27
|
+
The one place it can collide is a skill or command with the same name. If you already have `lead-mode` or `team-digest`, the host takes the first one it sees, warns, and ignores ours; a collision means we step aside.
|
|
28
|
+
|
|
20
29
|
### 1. The Lead mode preset
|
|
21
30
|
|
|
22
31
|
Switch to it and the session's model becomes a Lead.
|
|
@@ -47,7 +56,20 @@ So the skill's default is: finish your turn after delegating and let the notific
|
|
|
47
56
|
|
|
48
57
|
Tell the teammate to put the **deliverable in its closing message** — that message is what comes back to you with the notification.
|
|
49
58
|
|
|
50
|
-
### 3. The
|
|
59
|
+
### 3. The team digest skill
|
|
60
|
+
|
|
61
|
+
At wrap-up the team's output sits in N closing messages and N worklogs, with nothing merging them. This skill writes it into one `reports/<YYYY-MM-DD>-<effort>.md`.
|
|
62
|
+
|
|
63
|
+
| Item | Rule |
|
|
64
|
+
|---|---|
|
|
65
|
+
| When | Before the final answer, when the effort had 2 or more members, or ran 2 or more rounds |
|
|
66
|
+
| Where | `reports/<YYYY-MM-DD>-<effort>.md`, one path, written once at wrap-up |
|
|
67
|
+
| Six blocks | 结论 / 谁干了什么 / 验收证据 / 偏离与未验证 / 死路与决策 / 未决与下一步 (conclusion, who did what, acceptance evidence, deviations and unverified, dead ends and decisions, open items and next steps) |
|
|
68
|
+
| Source layers | Closing messages build the skeleton, worklogs add process detail, session logs as the fallback |
|
|
69
|
+
|
|
70
|
+
The six headings are fixed Chinese strings; an empty block says 无. Take the layers in order and stop at the first one that is enough. Details are in the `team-digest` skill.
|
|
71
|
+
|
|
72
|
+
### 4. The dependency self-check command
|
|
51
73
|
|
|
52
74
|
`/lead-mode` reports the current dependency state.
|
|
53
75
|
|
|
@@ -59,9 +81,9 @@ Tell the teammate to put the **deliverable in its closing message** — that mes
|
|
|
59
81
|
|
|
60
82
|
Everything in place returns success. Anything missing returns error. Nothing is skipped silently.
|
|
61
83
|
|
|
62
|
-
###
|
|
84
|
+
### 5. Two upfront reminders
|
|
63
85
|
|
|
64
|
-
|
|
86
|
+
**When the session has no Team tools, it tells you to enable the official Agent Teams instead of letting the model work alone.**
|
|
65
87
|
|
|
66
88
|
Two channels:
|
|
67
89
|
|
|
@@ -79,10 +101,10 @@ The model will not pretend it can delegate, and it will not pass `subagent` off
|
|
|
79
101
|
Lead mode delegates through `spawn_teammate`, `send_message`, and `team_task_*`. Those come from the official dsh Team runtime, which this plugin does not ship.
|
|
80
102
|
|
|
81
103
|
```bash
|
|
82
|
-
dsh plugin --profile <your profile name> add @deepseek-ai/dsh-experimental-agent-team-profile@0.2.1-rc.
|
|
104
|
+
dsh plugin --profile <your profile name> add @deepseek-ai/dsh-experimental-agent-team-profile@0.2.1-rc.5
|
|
83
105
|
```
|
|
84
106
|
|
|
85
|
-
**The version pin is required.** Without it npm resolves `latest`, which is 0.1.5-alpha.2 — built for 0.1.x hosts and it will not mount on a 0.2.1 host. `next` points at 0.2.1-rc.
|
|
107
|
+
**The version pin is required.** Without it npm resolves `latest`, which is 0.1.5-alpha.2 — built for 0.1.x hosts and it will not mount on a 0.2.1 host. `next` points at 0.2.1-rc.5, which is the correct one. The pin also has to equal your host version (`dsh --version`): the team packages pin exact `dsh-*` peers, so an older rc installs a peer set the newer host does not satisfy. Restart dsh afterwards.
|
|
86
108
|
|
|
87
109
|
Not sure whether it is installed? Run `/lead-mode` in dsh; it reports dependency state.
|
|
88
110
|
|
|
@@ -114,6 +136,14 @@ Three steps.
|
|
|
114
136
|
|
|
115
137
|
**3. Let the model work.** With the delegation tools in place, the model splits the work, delegates to teammates, and waits for all of them before wrapping up. Without them, its first move is to tell you to enable the Team runtime.
|
|
116
138
|
|
|
139
|
+
## Using the skills without switching presets
|
|
140
|
+
|
|
141
|
+
You do not have to touch your preset. Install the plugin, keep `standard` or whatever you already use, and run `/skill lead-mode` in any session to load the method; the model also loads it when it judges the task needs it.
|
|
142
|
+
|
|
143
|
+
One thing is missing: the upfront reminder lives in the persona, so it appears only under the `lead-mode` preset. Run `/lead-mode` once before you start to check the dependencies; it prints the version-pinned install command when the Team runtime is absent.
|
|
144
|
+
|
|
145
|
+
`team-digest` works the same way. It is not tied to a preset, any session can use it, and the model decides at wrap-up whether a digest is worth writing.
|
|
146
|
+
|
|
117
147
|
## Friendly link: dsh-context
|
|
118
148
|
|
|
119
149
|
This plugin only does Lead mode. Visualising Team state and comms is **dsh-context**'s job, and that is a separate project:
|
|
@@ -151,7 +181,7 @@ This plugin ships none of the packages below. The host or an official bundle pro
|
|
|
151
181
|
|
|
152
182
|
| Package | Requirement | Provided by | When missing |
|
|
153
183
|
|---|---|---|---|
|
|
154
|
-
| `@deepseek-ai/dsh-experimental-agent-team-profile` | `0.2.1-rc.
|
|
184
|
+
| `@deepseek-ai/dsh-experimental-agent-team-profile` | `0.2.1-rc.5` | You install it explicitly | Cannot delegate; `/lead-mode` returns error; startup warn |
|
|
155
185
|
| `@deepseek-ai/dsh` | `>=0.2.1-rc.2` | Host | Will not install |
|
|
156
186
|
| `@deepseek-ai/cordis` | `^4.0.5` | Host | Will not install |
|
|
157
187
|
| `@deepseek-ai/schemastery` | `^3.18.5` | Host | Will not install |
|
|
@@ -159,7 +189,7 @@ This plugin ships none of the packages below. The host or an official bundle pro
|
|
|
159
189
|
| `@deepseek-ai/dsh-skill` | `>=0.2.1-rc.2` | Host | Skill not registered; startup warn |
|
|
160
190
|
| `@deepseek-ai/dsh-commands` | `>=0.2.1-rc.2` | Host | `/lead-mode` not registered; startup warn |
|
|
161
191
|
|
|
162
|
-
The target host version is `dshTarget` in `package.json`: `0.2.1-rc.
|
|
192
|
+
The target host version is `dshTarget` in `package.json`: `0.2.1-rc.5`.
|
|
163
193
|
|
|
164
194
|
## Why the install command pins a version
|
|
165
195
|
|
|
@@ -168,8 +198,8 @@ The target host version is `dshTarget` in `package.json`: `0.2.1-rc.3`.
|
|
|
168
198
|
| dist-tag | Version | Host it fits |
|
|
169
199
|
|---|---|---|
|
|
170
200
|
| `latest` | 0.1.5-alpha.2 | 0.1.x |
|
|
171
|
-
| `alpha` | 0.2.
|
|
172
|
-
| `next` | 0.2.1-rc.
|
|
201
|
+
| `alpha` | 0.2.2-alpha.2 | the 0.2.2 line — do not mix it with a 0.2.1 host |
|
|
202
|
+
| `next` | 0.2.1-rc.5 | 0.2.1 |
|
|
173
203
|
|
|
174
204
|
Bare package name resolves `latest`, which installs 0.1.5-alpha.2. That build targets 0.1.x hosts and does not mount on a 0.2.1 host. After installing it, no Team tools appear in dsh and `/lead-mode` still reports "not mounted".
|
|
175
205
|
|
|
@@ -180,9 +210,9 @@ $ npm view @deepseek-ai/dsh-experimental-agent-team-profile version
|
|
|
180
210
|
0.1.5-alpha.2
|
|
181
211
|
```
|
|
182
212
|
|
|
183
|
-
So every install command in this plugin carries `@0.2.1-rc.
|
|
213
|
+
So every install command in this plugin carries `@0.2.1-rc.5`: the persona prefix, the `/lead-mode` output, the startup warn, and SKILL.md. `test/preset.test.mjs` and `test/smoke.test.mjs` both assert that string, so a future edit cannot quietly drop back to the bare name.
|
|
184
214
|
|
|
185
|
-
|
|
215
|
+
`alpha` now points at `0.2.2-alpha.2`, which belongs to the 0.2.2 line; on a 0.2.1 host keep using the pinned rc.5 build.
|
|
186
216
|
|
|
187
217
|
## Difference from the official standard preset
|
|
188
218
|
|
|
@@ -199,15 +229,16 @@ The four classic subagent rows (`tool-subagent-control`, `tool-subagent-list-age
|
|
|
199
229
|
|
|
200
230
|
`apply()` in `@deepseek-ai/dsh-experimental-tool-agent-team` listens on the global `agent/created` event and installs Team tools on every agent. It is a host-plane plugin; putting it in a preset would leak it into every session.
|
|
201
231
|
|
|
202
|
-
So this plugin stays at: preset,
|
|
232
|
+
So this plugin stays at: preset, two skills, reminder. Whether the Team runtime is on is decided by the user through the official profile package.
|
|
203
233
|
|
|
204
234
|
## Layout
|
|
205
235
|
|
|
206
236
|
```
|
|
207
237
|
package.json package metadata; dsh.bundle.patch points at cordis.patch.yml
|
|
208
238
|
cordis.patch.yml two insert rows: this plugin and the lead-mode preset
|
|
209
|
-
lib/index.js host half: register
|
|
239
|
+
lib/index.js host half: scan skills/, register each one, register the command, startup check
|
|
210
240
|
skills/lead-mode/ the Lead working method
|
|
241
|
+
skills/team-digest/ the team digest method
|
|
211
242
|
dsh-plugin.naming.json naming manifest
|
|
212
243
|
test/ behaviour assertions, zero dependencies
|
|
213
244
|
```
|
package/README.zh-CN.md
CHANGED
|
@@ -2,21 +2,30 @@
|
|
|
2
2
|
|
|
3
3
|
中文 | [English](README.md)
|
|
4
4
|
|
|
5
|
-
给 DSH 加一个 Lead
|
|
5
|
+
给 DSH 加一个 Lead 模式。一个预设、两个 skill、一个自检命令、两条前置提醒。
|
|
6
|
+
|
|
7
|
+
官方 Team 运行时只给工具:`spawn_teammate`、`send_message`、`team_task_*`。什么时候派活、派给谁、怎么等结果、收尾怎么写、多成员的产出怎么合并,这些方法它不管。本插件补的就是这一层。它不替代官方 Team 模式,是配套。
|
|
6
8
|
|
|
7
9
|
装好后模型能按 Lead 的方式干活:拆活、派活、验收。动手的活尽量派出去。
|
|
8
10
|
|
|
9
11
|
## 提供的能力
|
|
10
12
|
|
|
11
|
-
|
|
13
|
+
五样东西,都不碰 dsh 本体。
|
|
12
14
|
|
|
13
15
|
| 能力 | 入口 | 你要做什么 |
|
|
14
16
|
|---|---|---|
|
|
15
17
|
| Lead 模式预设 | 预设下拉里的「Lead 模式」 | 切过去 |
|
|
16
18
|
| Lead 工作法 skill | `/skill lead-mode`,模型也会自己加载 | 不用管 |
|
|
19
|
+
| 团队汇总 skill | `/skill team-digest`,模型收尾前自己判断写不写 | 不用管 |
|
|
17
20
|
| 依赖自检 | `/lead-mode` | 依赖不对时敲一下 |
|
|
18
21
|
| 两层前置提醒 | 自动 | 不用管 |
|
|
19
22
|
|
|
23
|
+
只新增,不修改。`cordis.patch.yml` 全文只有两行 `insert`:一行本插件,一行新建的 `lead-mode` 预设。官方 `standard` 预设一个字没动,新预设的 21 行逐字段照抄它,只换 persona。
|
|
24
|
+
|
|
25
|
+
不注册任何工具,不监听 agent 生命周期,不拦截任何请求。`lib/index.js` 只往两个注册表写:`skills`(两个 skill)与 `commands`(一个命令);启动时另打一条 warn。卸载后这些条目全部消失,官方行为回到原样。
|
|
26
|
+
|
|
27
|
+
唯一可能撞的地方是同名 skill 或命令。你已经装了 `lead-mode` 或 `team-digest` 时,宿主按先到先得处理,打一条 warn,忽略本插件那条;撞了也只是我们让位。
|
|
28
|
+
|
|
20
29
|
### 一、Lead 模式预设
|
|
21
30
|
|
|
22
31
|
切过去,这个会话的模型就换成 Lead 人设。
|
|
@@ -47,7 +56,20 @@
|
|
|
47
56
|
|
|
48
57
|
派活 prompt 里要要求 teammate **把交付物写进收尾那条消息**——那条消息会随通知回到你手上。
|
|
49
58
|
|
|
50
|
-
###
|
|
59
|
+
### 三、团队汇总 skill
|
|
60
|
+
|
|
61
|
+
收尾时全队产出散在 N 条收尾消息和 N 份工作日志里,没人合并,过一周想回看就得重新查一遍。这个 skill 把它们合成一份 `reports/<YYYY-MM-DD>-<effort>.md`。
|
|
62
|
+
|
|
63
|
+
| 项 | 规则 |
|
|
64
|
+
|---|---|
|
|
65
|
+
| 什么时候写 | 给最终答复前,本 effort 有 2 个以上成员,或跨 2 轮以上 |
|
|
66
|
+
| 写到哪 | `reports/<YYYY-MM-DD>-<effort>.md`,单一路径,收尾一次成型 |
|
|
67
|
+
| 六块骨架 | 结论 / 谁干了什么 / 验收证据 / 偏离与未验证 / 死路与决策 / 未决与下一步 |
|
|
68
|
+
| 原料分层 | 收尾消息做骨架,工作日志补过程细节,会话日志兜底 |
|
|
69
|
+
|
|
70
|
+
六块标题写死,某块没内容就写「无」。原料按顺序取,上层够用就不下钻。细节看 `team-digest` skill。
|
|
71
|
+
|
|
72
|
+
### 四、依赖自检命令
|
|
51
73
|
|
|
52
74
|
`/lead-mode` 报告当前依赖状态。
|
|
53
75
|
|
|
@@ -59,9 +81,9 @@
|
|
|
59
81
|
|
|
60
82
|
依赖齐全返回 success,缺东西返回 error。不会静默跳过。
|
|
61
83
|
|
|
62
|
-
###
|
|
84
|
+
### 五、两层前置提醒
|
|
63
85
|
|
|
64
|
-
|
|
86
|
+
**本会话没有 Team 工具时,提醒你去开官方 Agent Teams,而不是让模型硬干。**
|
|
65
87
|
|
|
66
88
|
走两条路:
|
|
67
89
|
|
|
@@ -79,10 +101,10 @@
|
|
|
79
101
|
Lead 模式靠 `spawn_teammate`、`send_message`、`team_task_*` 这些工具派活。它们由 dsh 官方的 Team 运行时提供,本插件不带。
|
|
80
102
|
|
|
81
103
|
```bash
|
|
82
|
-
dsh plugin --profile <你的 profile 名> add @deepseek-ai/dsh-experimental-agent-team-profile@0.2.1-rc.
|
|
104
|
+
dsh plugin --profile <你的 profile 名> add @deepseek-ai/dsh-experimental-agent-team-profile@0.2.1-rc.5
|
|
83
105
|
```
|
|
84
106
|
|
|
85
|
-
**必须带版本号。** 不带会装到 `latest` 上的 0.1.5-alpha.2,那是给 0.1.x 宿主用的,在 0.2.1 宿主上挂不上。`next` 指向的 0.2.1-rc.
|
|
107
|
+
**必须带版本号。** 不带会装到 `latest` 上的 0.1.5-alpha.2,那是给 0.1.x 宿主用的,在 0.2.1 宿主上挂不上。`next` 指向的 0.2.1-rc.5 才对。版本号还要等于你的宿主版本(`dsh --version`):团队包把 `dsh-*` 的 peer 钉死到具体版本,老 rc 装到新宿主上,peer 对不上。装完重启 dsh。
|
|
86
108
|
|
|
87
109
|
不确定装没装?进 dsh 敲 `/lead-mode`,它会报依赖状态。
|
|
88
110
|
|
|
@@ -114,6 +136,14 @@ dsh plugin --profile <你的 profile 名> add https://github.com/xiebaiyuan/dsh-
|
|
|
114
136
|
|
|
115
137
|
**3. 让模型干活。** 派活工具齐了,模型会自己拆活、派给 teammate、等齐再收尾。工具不齐,它第一句就是让你去开 Team 运行时。
|
|
116
138
|
|
|
139
|
+
## 只用 skill,不换预设
|
|
140
|
+
|
|
141
|
+
预设不动也能用。插件装好,预设保持 `standard` 或你自己的,任何会话敲 `/skill lead-mode` 就加载那套方法;模型判断任务需要时也会自己加载。
|
|
142
|
+
|
|
143
|
+
少了一样东西:persona 里那段前置提醒只在 `lead-mode` 预设里,不切过去就看不到。所以第一次先敲 `/lead-mode` 看依赖,缺 Team 运行时会给出带版本号的安装命令。
|
|
144
|
+
|
|
145
|
+
`team-digest` 同理。它不绑预设,任何会话可用,收尾时模型自己判断要不要写汇总。
|
|
146
|
+
|
|
117
147
|
## 友链:dsh-context
|
|
118
148
|
|
|
119
149
|
本插件只做 Lead 模式。团队状态与通信的可视化是 **dsh-context** 的活,那是另一个项目:
|
|
@@ -151,7 +181,7 @@ Lead 模式 skill 里也写了这个入口,所以派活时模型会直接让
|
|
|
151
181
|
|
|
152
182
|
| 包 | 版本要求 | 谁提供 | 缺了会怎样 |
|
|
153
183
|
|---|---|---|---|
|
|
154
|
-
| `@deepseek-ai/dsh-experimental-agent-team-profile` | `0.2.1-rc.
|
|
184
|
+
| `@deepseek-ai/dsh-experimental-agent-team-profile` | `0.2.1-rc.5` | 用户显式安装 | 派不了活,`/lead-mode` 报 error,启动 warn |
|
|
155
185
|
| `@deepseek-ai/dsh` | `>=0.2.1-rc.2` | 宿主 | 装不上 |
|
|
156
186
|
| `@deepseek-ai/cordis` | `^4.0.5` | 宿主 | 装不上 |
|
|
157
187
|
| `@deepseek-ai/schemastery` | `^3.18.5` | 宿主 | 装不上 |
|
|
@@ -159,7 +189,7 @@ Lead 模式 skill 里也写了这个入口,所以派活时模型会直接让
|
|
|
159
189
|
| `@deepseek-ai/dsh-skill` | `>=0.2.1-rc.2` | 宿主 | skill 不注册,启动 warn |
|
|
160
190
|
| `@deepseek-ai/dsh-commands` | `>=0.2.1-rc.2` | 宿主 | `/lead-mode` 不注册,启动 warn |
|
|
161
191
|
|
|
162
|
-
目标宿主版本写在 `package.json` 的 `dshTarget` 字段:`0.2.1-rc.
|
|
192
|
+
目标宿主版本写在 `package.json` 的 `dshTarget` 字段:`0.2.1-rc.5`。
|
|
163
193
|
|
|
164
194
|
## 为什么安装命令要带版本号
|
|
165
195
|
|
|
@@ -168,8 +198,8 @@ Lead 模式 skill 里也写了这个入口,所以派活时模型会直接让
|
|
|
168
198
|
| dist-tag | 版本 | 配哪个宿主 |
|
|
169
199
|
|---|---|---|
|
|
170
200
|
| `latest` | 0.1.5-alpha.2 | 0.1.x |
|
|
171
|
-
| `alpha` | 0.2.
|
|
172
|
-
| `next` | 0.2.1-rc.
|
|
201
|
+
| `alpha` | 0.2.2-alpha.2 | 0.2.2 线,别和 0.2.1 宿主混用 |
|
|
202
|
+
| `next` | 0.2.1-rc.5 | 0.2.1 |
|
|
173
203
|
|
|
174
204
|
裸写包名,npm 解析 `latest`,装到 0.1.5-alpha.2。这个版本是给 0.1.x 宿主用的,在 0.2.1 宿主上挂不上。装完 dsh 里看不到 Team 工具,`/lead-mode` 还是报「未挂载」。
|
|
175
205
|
|
|
@@ -180,9 +210,9 @@ $ npm view @deepseek-ai/dsh-experimental-agent-team-profile version
|
|
|
180
210
|
0.1.5-alpha.2
|
|
181
211
|
```
|
|
182
212
|
|
|
183
|
-
所以本插件里所有出现安装命令的地方都带 `@0.2.1-rc.
|
|
213
|
+
所以本插件里所有出现安装命令的地方都带 `@0.2.1-rc.5`:persona prefix、`/lead-mode` 输出、启动 warn、SKILL.md。`test/preset.test.mjs` 与 `test/smoke.test.mjs` 都断言这个字符串在,防止以后被改回裸包名。
|
|
184
214
|
|
|
185
|
-
|
|
215
|
+
`alpha` 现在指向 `0.2.2-alpha.2`,属于 0.2.2 线;0.2.1 宿主继续用钉死的 rc.5 版本。
|
|
186
216
|
|
|
187
217
|
## 与官方 standard 预设的差异
|
|
188
218
|
|
|
@@ -199,15 +229,16 @@ classic subagent 四行(`tool-subagent-control`、`tool-subagent-list-agents`
|
|
|
199
229
|
|
|
200
230
|
`@deepseek-ai/dsh-experimental-tool-agent-team` 的 `apply()` 监听全局 `agent/created`,给每一个 agent 装 Team 工具。它是 host 平面的插件,放进预设会漏到所有会话。
|
|
201
231
|
|
|
202
|
-
所以本插件的定位是:预设 + skill + 提醒。开不开 Team 运行时,用户用官方 profile 包决定。
|
|
232
|
+
所以本插件的定位是:预设 + 两个 skill + 提醒。开不开 Team 运行时,用户用官方 profile 包决定。
|
|
203
233
|
|
|
204
234
|
## 目录
|
|
205
235
|
|
|
206
236
|
```
|
|
207
237
|
package.json 包元数据,dsh.bundle.patch 指向 cordis.patch.yml
|
|
208
238
|
cordis.patch.yml 两行 insert:本插件 + lead-mode 预设
|
|
209
|
-
lib/index.js host
|
|
239
|
+
lib/index.js host 半边:扫 skills/ 逐个注册、注册命令、启动自检
|
|
210
240
|
skills/lead-mode/ Lead 工作法正文
|
|
241
|
+
skills/team-digest/ 团队汇总正文
|
|
211
242
|
dsh-plugin.naming.json 命名清单
|
|
212
243
|
test/ 行为断言,零依赖
|
|
213
244
|
```
|
package/cordis.patch.yml
CHANGED
|
@@ -16,10 +16,13 @@
|
|
|
16
16
|
# agent, so it belongs to the host plane, not to a preset row. Users turn it on
|
|
17
17
|
# with the official profile package:
|
|
18
18
|
#
|
|
19
|
-
# dsh plugin --profile <name> add @deepseek-ai/dsh-experimental-agent-team-profile@0.2.1-rc.
|
|
19
|
+
# dsh plugin --profile <name> add @deepseek-ai/dsh-experimental-agent-team-profile@0.2.1-rc.5
|
|
20
20
|
#
|
|
21
21
|
# The version pin matters: bare `npm i` resolves `latest`, which is 0.1.5-alpha.2
|
|
22
|
-
# and does not mount on a 0.2.1 host. `next` points at 0.2.1-rc.
|
|
22
|
+
# and does not mount on a 0.2.1 host. `next` points at 0.2.1-rc.5. The pin must
|
|
23
|
+
# equal the host version (`dsh --version`): the team packages pin exact `dsh-*`
|
|
24
|
+
# peers, so a profile built for an older rc installs peers this host does not
|
|
25
|
+
# satisfy.
|
|
23
26
|
- insert:
|
|
24
27
|
- id: dsh-lead-mode
|
|
25
28
|
name: 'dsh-lead-mode'
|
|
@@ -41,9 +44,9 @@
|
|
|
41
44
|
|
|
42
45
|
没有的话,停下。只做一件事:告诉用户去开 dsh 官方的 Agent Teams,命令是
|
|
43
46
|
|
|
44
|
-
dsh plugin --profile <你的 profile 名> add @deepseek-ai/dsh-experimental-agent-team-profile@0.2.1-rc.
|
|
47
|
+
dsh plugin --profile <你的 profile 名> add @deepseek-ai/dsh-experimental-agent-team-profile@0.2.1-rc.5
|
|
45
48
|
|
|
46
|
-
不带版本号会装到 0.1.5-alpha.2,和 0.2.1
|
|
49
|
+
不带版本号会装到 0.1.5-alpha.2,和 0.2.1 宿主对不上。版本号要跟 `dsh --version` 的输出一致。装完重启 dsh。
|
|
47
50
|
|
|
48
51
|
这是本插件存在的主要理由。没有这些工具,你派不了活。不要自己硬干,不要假装能派活,也不要拿 subagent 凑数顶替 teammate。
|
|
49
52
|
|
package/lib/index.js
CHANGED
|
@@ -20,14 +20,21 @@ import { fileURLToPath } from 'node:url'
|
|
|
20
20
|
/** Cordis plugin name. */
|
|
21
21
|
export const name = 'lead-mode'
|
|
22
22
|
|
|
23
|
-
/**
|
|
24
|
-
|
|
23
|
+
/**
|
|
24
|
+
* Profile package that provides the Team runtime.
|
|
25
|
+
*
|
|
26
|
+
* The pin has to match the host version line: the team packages declare exact
|
|
27
|
+
* `@deepseek-ai/dsh-*` peers, so an older profile on a newer host installs an
|
|
28
|
+
* unsatisfied peer set. Bump this constant together with `engines.dsh` and
|
|
29
|
+
* `dshTarget` whenever the target host line moves.
|
|
30
|
+
*/
|
|
31
|
+
const TEAM_PROFILE_PACKAGE = '@deepseek-ai/dsh-experimental-agent-team-profile@0.2.1-rc.5'
|
|
25
32
|
|
|
26
33
|
/** Install command shown in every reminder. */
|
|
27
34
|
const ENABLE_COMMAND = `dsh plugin --profile <你的 profile 名> add ${TEAM_PROFILE_PACKAGE}`
|
|
28
35
|
|
|
29
36
|
/** Why the version pin matters, repeated wherever the command appears. */
|
|
30
|
-
const VERSION_NOTE = '不带版本号会装到 0.1.5-alpha.2,和 0.2.1
|
|
37
|
+
const VERSION_NOTE = '不带版本号会装到 0.1.5-alpha.2,和 0.2.1 宿主对不上。版本号要跟 `dsh --version` 的输出一致。'
|
|
31
38
|
|
|
32
39
|
/** Directory holding one subdirectory per bundled skill; the directory name is the skill name. */
|
|
33
40
|
const SKILLS_DIR = new URL('../skills/', import.meta.url)
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dsh-lead-mode",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.2",
|
|
4
4
|
"description": "Lead mode for DSH: an agent preset, a working-method skill, a dependency self-check, and two reminders that tell you to enable the official Agent Teams. | 给 DSH 加 Lead 模式:预设、skill、依赖自检、两条前置提醒。",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "lib/index.js",
|
|
@@ -16,11 +16,16 @@
|
|
|
16
16
|
"README.zh-CN.md",
|
|
17
17
|
"LICENSE"
|
|
18
18
|
],
|
|
19
|
+
"scripts": {
|
|
20
|
+
"test": "node --test test/*.test.mjs",
|
|
21
|
+
"check": "node --check lib/index.js && node scripts/validate-names.mjs --manifest ./dsh-plugin.naming.json && node scripts/check-patch.mjs",
|
|
22
|
+
"pack:dry": "npm pack --dry-run"
|
|
23
|
+
},
|
|
19
24
|
"engines": {
|
|
20
25
|
"node": ">=20",
|
|
21
26
|
"dsh": ">=0.2.1-rc.2"
|
|
22
27
|
},
|
|
23
|
-
"dshTarget": "0.2.1-rc.
|
|
28
|
+
"dshTarget": "0.2.1-rc.5",
|
|
24
29
|
"dsh": {
|
|
25
30
|
"bundle": {
|
|
26
31
|
"patch": "./cordis.patch.yml"
|
|
@@ -14,10 +14,10 @@ description: Lead 工作法。当你要拆活、派活给 teammate、用共享
|
|
|
14
14
|
没有就停下。只做一件事:让用户去开 dsh 官方 Agent Teams,命令是
|
|
15
15
|
|
|
16
16
|
```
|
|
17
|
-
dsh plugin --profile <你的 profile 名> add @deepseek-ai/dsh-experimental-agent-team-profile@0.2.1-rc.
|
|
17
|
+
dsh plugin --profile <你的 profile 名> add @deepseek-ai/dsh-experimental-agent-team-profile@0.2.1-rc.5
|
|
18
18
|
```
|
|
19
19
|
|
|
20
|
-
不带版本号会装到 0.1.5-alpha.2,和 0.2.1
|
|
20
|
+
不带版本号会装到 0.1.5-alpha.2,和 0.2.1 宿主对不上。版本号要跟 `dsh --version` 的输出一致。
|
|
21
21
|
|
|
22
22
|
不要自己硬干,也不要假装能派活。
|
|
23
23
|
|