dsh-team-rooms 1.0.4 → 1.0.6

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/LICENSE CHANGED
@@ -186,7 +186,7 @@
186
186
  same "printed page" as the copyright notice for easier
187
187
  identification within third-party archives.
188
188
 
189
- Copyright 2026 dsh-background-agents contributors
189
+ Copyright 2026 PerryLink
190
190
 
191
191
  Licensed under the Apache License, Version 2.0 (the "License");
192
192
  you may not use this file except in compliance with the License.
package/README-es.md CHANGED
@@ -35,7 +35,7 @@ El host `0.1.2-alpha.2` y posteriores fallan cerrado ante el vocabulario de even
35
35
 
36
36
  | Superficie | Estado |
37
37
  |---|---|
38
- | Harness | DeepSeek Harness `dsh-v0.1.7-rc.2` (verificado el 2026-09-25; dev y runtime fijan `0.1.7-rc.2`, peers `>=0.1.2-rc.1 <0.2.0 \|\| >=0.1.5-alpha.1 <0.2.0 \|\| >=0.1.6-0 <0.2.0 \|\| >=0.1.7-0 <0.2.0`) |
38
+ | Harness | DeepSeek Harness `dsh-v0.2.1-alpha.1` (verificado el 2026-09-25; dev y runtime fijan `0.1.7-rc.2`, peers `>=0.1.2-rc.1 <0.2.0 \|\| >=0.1.5-alpha.1 <0.2.0 \|\| >=0.1.6-0 <0.2.0 \|\| >=0.1.7-0 <0.2.0`) |
39
39
  | Node | `^22.19.0 \|\| >=24.0.0` |
40
40
  | Plataformas | Todas (herramientas de host; la página de ajustes necesita la mitad cliente Web y la capacidad de dominio de almacenamiento) |
41
41
  | Modelo | Cualquiera (las salas no llevan ruta de modelo — los miembros son sesiones ordinarias) |
package/README-hi.md CHANGED
@@ -35,7 +35,7 @@
35
35
 
36
36
  | सतह | स्थिति |
37
37
  |---|---|
38
- | Harness | DeepSeek Harness `dsh-v0.1.7-rc.2` (2026-09-25 को सत्यापित; dev और रनटाइम पिन `0.1.7-rc.2`, peers `>=0.1.2-rc.1 <0.2.0 \|\| >=0.1.5-alpha.1 <0.2.0 \|\| >=0.1.6-0 <0.2.0 \|\| >=0.1.7-0 <0.2.0`) |
38
+ | Harness | DeepSeek Harness `dsh-v0.2.1-alpha.1` (2026-09-25 को सत्यापित; dev और रनटाइम पिन `0.1.7-rc.2`, peers `>=0.1.2-rc.1 <0.2.0 \|\| >=0.1.5-alpha.1 <0.2.0 \|\| >=0.1.6-0 <0.2.0 \|\| >=0.1.7-0 <0.2.0`) |
39
39
  | Node | `^22.19.0 \|\| >=24.0.0` |
40
40
  | प्लेटफ़ॉर्म | सभी (होस्ट टूल; सेटिंग्स पेज के लिए Web क्लाइंट आधा और स्टोरेज-डोमेन क्षमता चाहिए) |
41
41
  | मॉडल | कोई भी (रूम कोई मॉडल रूट नहीं रखते — सदस्य साधारण सेशन हैं) |
package/README-pt.md CHANGED
@@ -35,7 +35,7 @@ O host `0.1.2-alpha.2` e posteriores falham fechado no vocabulário de eventos d
35
35
 
36
36
  | Superfície | Estado |
37
37
  |---|---|
38
- | Harness | DeepSeek Harness `dsh-v0.1.7-rc.2` (verificado em 2026-09-25; dev e runtime fixam `0.1.7-rc.2`, peers `>=0.1.2-rc.1 <0.2.0 \|\| >=0.1.5-alpha.1 <0.2.0 \|\| >=0.1.6-0 <0.2.0 \|\| >=0.1.7-0 <0.2.0`) |
38
+ | Harness | DeepSeek Harness `dsh-v0.2.1-alpha.1` (verificado em 2026-09-25; dev e runtime fixam `0.1.7-rc.2`, peers `>=0.1.2-rc.1 <0.2.0 \|\| >=0.1.5-alpha.1 <0.2.0 \|\| >=0.1.6-0 <0.2.0 \|\| >=0.1.7-0 <0.2.0`) |
39
39
  | Node | `^22.19.0 \|\| >=24.0.0` |
40
40
  | Plataformas | Todas (ferramentas de host; a página de configurações precisa da metade cliente Web e da capacidade de domínio de armazenamento) |
41
41
  | Modelo | Qualquer (salas não carregam rota de modelo — membros são sessões comuns) |
package/README-zh.md CHANGED
@@ -35,7 +35,7 @@
35
35
 
36
36
  | 界面 | 状态 |
37
37
  |---|---|
38
- | Harness | DeepSeek Harness `dsh-v0.1.7-rc.2`(2026-09-24 验证;dev 与运行时钉 `0.1.7-rc.2`,peer 为 `>=0.1.2-rc.1 <0.2.0 \|\| >=0.1.5-alpha.1 <0.2.0 \|\| >=0.1.6-0 <0.2.0 \|\| >=0.1.7-0 <0.2.0`) |
38
+ | Harness | DeepSeek Harness `dsh-v0.2.1-alpha.1`(2026-09-24 验证;dev 与运行时钉 `0.1.7-rc.2`,peer 为 `>=0.1.2-rc.1 <0.2.0 \|\| >=0.1.5-alpha.1 <0.2.0 \|\| >=0.1.6-0 <0.2.0 \|\| >=0.1.7-0 <0.2.0`) |
39
39
  | Node | `^22.19.0 \|\| >=24.0.0` |
40
40
  | 平台 | 全平台(宿主工具;设置页需要 Web 客户端半部与存储域能力) |
41
41
  | 模型 | 任意(房间不携带模型路由 —— 成员就是普通会话) |
package/README.md CHANGED
@@ -36,7 +36,7 @@ Host `0.1.2-alpha.2` and later fails closed on the session event vocabulary, so
36
36
 
37
37
  | Surface | Status |
38
38
  |---|---|
39
- | Harness | DeepSeek Harness `dsh-v0.1.7-rc.2` (verified 2026-09-25; dev and runtime pins `0.1.7-rc.2`, peers `>=0.1.2-rc.1 <0.2.0 \|\| >=0.1.5-alpha.1 <0.2.0 \|\| >=0.1.6-0 <0.2.0 \|\| >=0.1.7-0 <0.2.0`) |
39
+ | Harness | DeepSeek Harness `dsh-v0.2.1-alpha.1` (verified 2026-09-25; dev and runtime pins `0.1.7-rc.2`, peers `>=0.1.2-rc.1 <0.2.0 \|\| >=0.1.5-alpha.1 <0.2.0 \|\| >=0.1.6-0 <0.2.0 \|\| >=0.1.7-0 <0.2.0`) |
40
40
  | Node | `^22.19.0 \|\| >=24.0.0` |
41
41
  | Platforms | All (host tools; the settings page needs the Web client half and the storage-domain capability) |
42
42
  | Model | Any (rooms carry no model route — members are ordinary sessions) |
@@ -82,7 +82,7 @@ Paste the printed room id into another session and `/room join <roomId>` — tha
82
82
  - **npm channel** (published releases): `dsh plugin --profile web add dsh-team-rooms`.
83
83
  - **tarball channel**: `pnpm pack` in this repo, then `dsh plugin --profile web add ./dsh-team-rooms-<version>.tgz`.
84
84
  - **uninstall**: `dsh plugin --profile web remove dsh-team-rooms` (or remove the row from the profile patch). Your rooms stay in the `team_rooms` storage domain and come back if you reinstall.
85
- - ⚠️ **Do not mount this and `dsh-background-agents` at the same time.** While the deprecation window is open both packages are published, and both register the same eight `room_*` tools, the same `settings.section` slot id (`team-rooms`) and the same `team_rooms` storage domain — so the two room halves collide. If you already run `dsh-background-agents`, remove it first (`dsh plugin --profile web remove dsh-background-agents`). Your rooms survive either way: they live in the storage domain, not in the plugin.
85
+ - ✅ **Safe to mount together with `dsh-background-agents` (≥ 0.9.14).** While the deprecation window was open both packages shipped the same room half — the same eight `room_*` tools, the same `settings.section` slot id (`team-rooms`) and the same `team_rooms` storage domain — and `dsh-background-agents` ≤ 0.9.13 additionally registered the same `roomHub` service key, which Cordis permits exactly once per isolate scope. Since **`dsh-background-agents` 0.9.14** that package carries a first-provider-wins coexistence guard: it checks whether `roomHub` is already provided and, if so, stands its own room half down while its background-agent core keeps running. Either package may therefore be mounted first, and the room half is owned by exactly one of them. **If you run `dsh-background-agents` ≤ 0.9.13, mount only one of the two** — upgrade that package, or remove it (`dsh plugin --profile web remove dsh-background-agents`). Your rooms survive either way: they live in the `team_rooms` storage domain, not in the plugin.
86
86
 
87
87
  ## Configuration
88
88
 
@@ -138,7 +138,7 @@ Hosts whose `Session.append` predates the `ignorable` marker (every released rc
138
138
  |---|---|---|
139
139
  | [titanwings/dsh-automation](https://github.com/titanwings/dsh-automation) | Scheduled coding tasks in fresh agent sessions | It owns **when** tasks run (scheduling). This plugin owns the **shared object** several sessions work on — no scheduler seam, no cron. |
140
140
  | [YYTbit/dsh-plugin-agent-dashboard](https://github.com/YYTbit/dsh-plugin-agent-dashboard) | Multi-agent dashboard skill | Display-oriented and read-mostly. This plugin's rooms are **writable coordination state**: a bus, a board, and approval-gated handoffs, persisted in the harness's own storage. |
141
- | `dsh-background-agents` | Background agents plus (previously) team rooms | That package's `bg_*` half is superseded by DSH's native continuable subagents; its room half is this package. Do not mount both room halves at once. |
141
+ | `dsh-background-agents` | Background agents plus (previously) team rooms | That package's `bg_*` half is superseded by DSH's native continuable subagents; its room half is this package. Since `dsh-background-agents` 0.9.14 the two are safe to mount together — that package stands its room half down when `roomHub` is already provided. On ≤ 0.9.13 mount only one room half. |
142
142
 
143
143
  ## Permissions & data
144
144
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dsh-team-rooms",
3
- "version": "1.0.4",
3
+ "version": "1.0.6",
4
4
  "packageManager": "pnpm@11.7.0",
5
5
  "description": "Persistent multi-agent team rooms for DeepSeek Harness: cross-session rooms with a message bus, a shared task board, approval-gated handoffs and a shared timeline that survive DSH restarts. Extracted from dsh-background-agents 0.9.6, whose background-agent half is superseded by native DSH continuable subagents.",
6
6
  "repository": {
@@ -41,6 +41,66 @@
41
41
  "THIRD_PARTY_NOTICES.md",
42
42
  "LICENSE"
43
43
  ],
44
+ "dsh-plugin-doctor": {
45
+ "crossPlugin": {
46
+ "exempt": [
47
+ {
48
+ "kind": "service",
49
+ "name": "roomHub",
50
+ "peer": "dsh-background-agents",
51
+ "guard": "0.9.14"
52
+ },
53
+ {
54
+ "kind": "tool",
55
+ "name": "room_list_rooms",
56
+ "peer": "dsh-background-agents",
57
+ "guard": "0.9.14"
58
+ },
59
+ {
60
+ "kind": "tool",
61
+ "name": "room_post",
62
+ "peer": "dsh-background-agents",
63
+ "guard": "0.9.14"
64
+ },
65
+ {
66
+ "kind": "tool",
67
+ "name": "room_read",
68
+ "peer": "dsh-background-agents",
69
+ "guard": "0.9.14"
70
+ },
71
+ {
72
+ "kind": "tool",
73
+ "name": "room_list_tasks",
74
+ "peer": "dsh-background-agents",
75
+ "guard": "0.9.14"
76
+ },
77
+ {
78
+ "kind": "tool",
79
+ "name": "room_create_task",
80
+ "peer": "dsh-background-agents",
81
+ "guard": "0.9.14"
82
+ },
83
+ {
84
+ "kind": "tool",
85
+ "name": "room_claim_task",
86
+ "peer": "dsh-background-agents",
87
+ "guard": "0.9.14"
88
+ },
89
+ {
90
+ "kind": "tool",
91
+ "name": "room_transfer_task",
92
+ "peer": "dsh-background-agents",
93
+ "guard": "0.9.14"
94
+ },
95
+ {
96
+ "kind": "tool",
97
+ "name": "room_complete_task",
98
+ "peer": "dsh-background-agents",
99
+ "guard": "0.9.14"
100
+ }
101
+ ]
102
+ }
103
+ },
44
104
  "dsh": {
45
105
  "manifestVersion": 1,
46
106
  "bundle": {
@@ -84,7 +144,8 @@
84
144
  "0.1.5-rc.2",
85
145
  "0.1.7-alpha.2",
86
146
  "0.1.7-rc.1",
87
- "0.1.7-rc.2"
147
+ "0.1.7-rc.2",
148
+ "0.2.1-alpha.1"
88
149
  ]
89
150
  },
90
151
  "capability": {
@@ -113,41 +174,41 @@
113
174
  ],
114
175
  "engines": {
115
176
  "node": "^22.19.0 || >=24.0.0",
116
- "dsh": ">=0.1.2-rc.1 <0.2.0 || >=0.1.5-alpha.1 <0.2.0 || >=0.1.6-0 <0.2.0 || >=0.1.7-0 <0.2.0"
177
+ "dsh": ">=0.1.2-rc.1 <0.2.0 || >=0.1.5-alpha.1 <0.2.0 || >=0.1.6-0 <0.2.0 || >=0.1.7-0 <0.2.0 || >=0.2.0-0 <0.3.0 || >=0.2.1-0 <0.3.0"
117
178
  },
118
179
  "peerDependencies": {
119
- "@deepseek-ai/cordis": "^4.0.4",
120
- "@deepseek-ai/dsh-commands": ">=0.1.2-rc.1 <0.2.0 || >=0.1.5-alpha.1 <0.2.0 || >=0.1.6-0 <0.2.0 || >=0.1.7-0 <0.2.0",
121
- "@deepseek-ai/dsh-llm": ">=0.1.2-rc.1 <0.2.0 || >=0.1.5-alpha.1 <0.2.0 || >=0.1.6-0 <0.2.0 || >=0.1.7-0 <0.2.0",
122
- "@deepseek-ai/dsh-session": ">=0.1.2-rc.1 <0.2.0 || >=0.1.5-alpha.1 <0.2.0 || >=0.1.6-0 <0.2.0 || >=0.1.7-0 <0.2.0",
123
- "@deepseek-ai/dsh-session-projection": ">=0.1.2-rc.1 <0.2.0 || >=0.1.5-alpha.1 <0.2.0 || >=0.1.6-0 <0.2.0 || >=0.1.7-0 <0.2.0",
124
- "@deepseek-ai/dsh-storage": ">=0.1.2-rc.1 <0.2.0 || >=0.1.5-alpha.1 <0.2.0 || >=0.1.6-0 <0.2.0 || >=0.1.7-0 <0.2.0",
125
- "@deepseek-ai/dsh-storage-domain": ">=0.1.2-rc.1 <0.2.0 || >=0.1.5-alpha.1 <0.2.0 || >=0.1.6-0 <0.2.0 || >=0.1.7-0 <0.2.0",
126
- "@deepseek-ai/dsh-storage-json": ">=0.1.2-rc.1 <0.2.0 || >=0.1.5-alpha.1 <0.2.0 || >=0.1.6-0 <0.2.0 || >=0.1.7-0 <0.2.0",
127
- "@deepseek-ai/dsh-tools": ">=0.1.2-rc.1 <0.2.0 || >=0.1.5-alpha.1 <0.2.0 || >=0.1.6-0 <0.2.0 || >=0.1.7-0 <0.2.0",
128
- "@deepseek-ai/schemastery": "^3.18.2"
180
+ "@deepseek-ai/cordis": "^4.0.5-alpha.1",
181
+ "@deepseek-ai/dsh-commands": ">=0.1.2-rc.1 <0.2.0 || >=0.1.5-alpha.1 <0.2.0 || >=0.1.6-0 <0.2.0 || >=0.1.7-0 <0.2.0 || >=0.2.0-0 <0.3.0 || >=0.2.1-0 <0.3.0",
182
+ "@deepseek-ai/dsh-llm": ">=0.1.2-rc.1 <0.2.0 || >=0.1.5-alpha.1 <0.2.0 || >=0.1.6-0 <0.2.0 || >=0.1.7-0 <0.2.0 || >=0.2.0-0 <0.3.0 || >=0.2.1-0 <0.3.0",
183
+ "@deepseek-ai/dsh-session": ">=0.1.2-rc.1 <0.2.0 || >=0.1.5-alpha.1 <0.2.0 || >=0.1.6-0 <0.2.0 || >=0.1.7-0 <0.2.0 || >=0.2.0-0 <0.3.0 || >=0.2.1-0 <0.3.0",
184
+ "@deepseek-ai/dsh-session-projection": ">=0.1.2-rc.1 <0.2.0 || >=0.1.5-alpha.1 <0.2.0 || >=0.1.6-0 <0.2.0 || >=0.1.7-0 <0.2.0 || >=0.2.0-0 <0.3.0 || >=0.2.1-0 <0.3.0",
185
+ "@deepseek-ai/dsh-storage": ">=0.1.2-rc.1 <0.2.0 || >=0.1.5-alpha.1 <0.2.0 || >=0.1.6-0 <0.2.0 || >=0.1.7-0 <0.2.0 || >=0.2.0-0 <0.3.0 || >=0.2.1-0 <0.3.0",
186
+ "@deepseek-ai/dsh-storage-domain": ">=0.1.2-rc.1 <0.2.0 || >=0.1.5-alpha.1 <0.2.0 || >=0.1.6-0 <0.2.0 || >=0.1.7-0 <0.2.0 || >=0.2.0-0 <0.3.0 || >=0.2.1-0 <0.3.0",
187
+ "@deepseek-ai/dsh-storage-json": ">=0.1.2-rc.1 <0.2.0 || >=0.1.5-alpha.1 <0.2.0 || >=0.1.6-0 <0.2.0 || >=0.1.7-0 <0.2.0 || >=0.2.0-0 <0.3.0 || >=0.2.1-0 <0.3.0",
188
+ "@deepseek-ai/dsh-tools": ">=0.1.2-rc.1 <0.2.0 || >=0.1.5-alpha.1 <0.2.0 || >=0.1.6-0 <0.2.0 || >=0.1.7-0 <0.2.0 || >=0.2.0-0 <0.3.0 || >=0.2.1-0 <0.3.0",
189
+ "@deepseek-ai/schemastery": "^3.18.5-alpha.1"
129
190
  },
130
191
  "dependencies": {
131
192
  "zod": "^3.24.0"
132
193
  },
133
194
  "devDependencies": {
134
- "@deepseek-ai/cordis-plugin-include": "^1.0.7",
135
- "@deepseek-ai/cordis-plugin-loader": "^1.0.3",
136
- "@deepseek-ai/dsh-agent": "0.1.7-rc.2",
137
- "@deepseek-ai/dsh-agent-loop": "0.1.7-rc.2",
138
- "@deepseek-ai/dsh-agent-loop-testkit": "0.1.7-rc.2",
139
- "@deepseek-ai/dsh-attachment": "0.1.7-rc.2",
140
- "@deepseek-ai/dsh-commands": "0.1.7-rc.2",
141
- "@deepseek-ai/dsh-llm": "0.1.7-rc.2",
142
- "@deepseek-ai/dsh-session": "0.1.7-rc.2",
143
- "@deepseek-ai/dsh-session-persistence-jsonl": "0.1.7-rc.2",
144
- "@deepseek-ai/dsh-session-projection": "0.1.7-rc.2",
145
- "@deepseek-ai/dsh-storage": "0.1.7-rc.2",
146
- "@deepseek-ai/dsh-storage-domain": "0.1.7-rc.2",
147
- "@deepseek-ai/dsh-storage-json": "0.1.7-rc.2",
148
- "@deepseek-ai/dsh-tools": "0.1.7-rc.2",
149
- "@deepseek-ai/dsh-typert-protocol": "0.1.7-rc.2",
150
- "@deepseek-ai/dsh-util-values": "0.1.7-rc.2",
195
+ "@deepseek-ai/cordis-plugin-include": "^1.0.10-alpha.1",
196
+ "@deepseek-ai/cordis-plugin-loader": "^1.0.6-alpha.1",
197
+ "@deepseek-ai/dsh-agent": "0.2.1-alpha.1",
198
+ "@deepseek-ai/dsh-agent-loop": "0.2.1-alpha.1",
199
+ "@deepseek-ai/dsh-agent-loop-testkit": "0.2.1-alpha.1",
200
+ "@deepseek-ai/dsh-attachment": "0.2.1-alpha.1",
201
+ "@deepseek-ai/dsh-commands": "0.2.1-alpha.1",
202
+ "@deepseek-ai/dsh-llm": "0.2.1-alpha.1",
203
+ "@deepseek-ai/dsh-session": "0.2.1-alpha.1",
204
+ "@deepseek-ai/dsh-session-persistence-jsonl": "0.2.1-alpha.1",
205
+ "@deepseek-ai/dsh-session-projection": "0.2.1-alpha.1",
206
+ "@deepseek-ai/dsh-storage": "0.2.1-alpha.1",
207
+ "@deepseek-ai/dsh-storage-domain": "0.2.1-alpha.1",
208
+ "@deepseek-ai/dsh-storage-json": "0.2.1-alpha.1",
209
+ "@deepseek-ai/dsh-tools": "0.2.1-alpha.1",
210
+ "@deepseek-ai/dsh-typert-protocol": "0.2.1-alpha.1",
211
+ "@deepseek-ai/dsh-util-values": "0.2.1-alpha.1",
151
212
  "@types/node": "^22.19.0",
152
213
  "@types/react": "^19.0.0",
153
214
  "@types/react-dom": "^19.0.0",