@nanmicoder/dsh-agent-teams 0.1.20 → 0.1.22-rc.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/README.md +36 -15
- package/README_ZH.md +36 -15
- package/assets/readme/workspace.png +0 -0
- package/compatibility.json +22 -2
- package/lib/capabilities.js +3 -1
- package/lib/client/ActivityPanel.js +80 -51
- package/lib/client/AgentTeamsCard.js +14 -5
- package/lib/client/TeamChatEntry.js +22 -0
- package/lib/client/WorkspaceActivity.js +100 -0
- package/lib/client/activity-model.js +73 -8
- package/lib/client/activity-monitor.js +11 -4
- package/lib/client/agent-teams-card-definition.js +11 -1
- package/lib/client/icons.js +18 -0
- package/lib/client/index.js +35 -4
- package/lib/client/locales.js +44 -0
- package/lib/client/session-navigation.js +13 -1
- package/lib/client/workspace-state.js +43 -0
- package/lib/client.js +832 -210
- package/lib/client.js.map +1 -1
- package/lib/git-artifact-stamp.json +5 -0
- package/lib/harness-compat.js +20 -3
- package/lib/index.js +1 -1
- package/lib/mailbox.js +23 -3
- package/lib/members.js +3 -3
- package/lib/quality-gates.js +54 -0
- package/lib/scheduler.js +8 -2
- package/lib/snapshot.js +1 -0
- package/lib/state.js +15 -3
- package/lib/tools.js +71 -22
- package/lib/types/capabilities.d.ts +0 -1
- package/lib/types/client/ActivityPanel.d.ts +18 -1
- package/lib/types/client/AgentTeamsCard.d.ts +14 -2
- package/lib/types/client/TeamChatEntry.d.ts +4 -0
- package/lib/types/client/WorkspaceActivity.d.ts +22 -0
- package/lib/types/client/activity-model.d.ts +37 -1
- package/lib/types/client/activity-monitor.d.ts +4 -0
- package/lib/types/client/agent-teams-card-definition.d.ts +8 -0
- package/lib/types/client/icons.d.ts +5 -0
- package/lib/types/client/locales.d.ts +44 -0
- package/lib/types/client/session-navigation.d.ts +13 -2
- package/lib/types/client/workspace-state.d.ts +19 -0
- package/lib/types/harness-compat.d.ts +14 -1
- package/lib/types/mailbox.d.ts +4 -0
- package/lib/types/quality-gates.d.ts +7 -1
- package/lib/types/scheduler.d.ts +1 -0
- package/lib/types/snapshot.d.ts +2 -0
- package/lib/types/types.d.ts +16 -0
- package/package.json +61 -54
- package/pnpm-workspace.yaml +288 -0
- package/release-notes/v0.1.21-rc.1.md +14 -0
- package/release-notes/v0.1.21.md +23 -0
- package/release-notes/v0.1.22-rc.1.md +24 -0
- package/scripts/compatibility.mjs +26 -4
- package/scripts/doctor.mjs +7 -2
|
@@ -0,0 +1,288 @@
|
|
|
1
|
+
{
|
|
2
|
+
"packages": [
|
|
3
|
+
"."
|
|
4
|
+
],
|
|
5
|
+
"overrides": {
|
|
6
|
+
"@deepseek-ai/dsh": "0.1.7-rc.2",
|
|
7
|
+
"@deepseek-ai/dsh-hmr": "0.1.7-rc.2",
|
|
8
|
+
"@deepseek-ai/dsh-base": "0.1.7-rc.2",
|
|
9
|
+
"@deepseek-ai/dsh-goal": "0.1.7-rc.2",
|
|
10
|
+
"@deepseek-ai/dsh-skill": "0.1.7-rc.2",
|
|
11
|
+
"@deepseek-ai/dsh-acp-app": "0.1.7-rc.2",
|
|
12
|
+
"@deepseek-ai/dsh-cmdline": "0.1.7-rc.2",
|
|
13
|
+
"@deepseek-ai/dsh-persona": "0.1.7-rc.2",
|
|
14
|
+
"@deepseek-ai/dsh-sdk-app": "0.1.7-rc.2",
|
|
15
|
+
"@deepseek-ai/dsh-tool-fs": "0.1.7-rc.2",
|
|
16
|
+
"@deepseek-ai/dsh-web-app": "0.1.7-rc.2",
|
|
17
|
+
"@deepseek-ai/dsh-webhook": "0.1.7-rc.2",
|
|
18
|
+
"@deepseek-ai/dsh-app-boot": "0.1.7-rc.2",
|
|
19
|
+
"@deepseek-ai/dsh-fs-local": "0.1.7-rc.2",
|
|
20
|
+
"@deepseek-ai/dsh-headless": "0.1.7-rc.2",
|
|
21
|
+
"@deepseek-ai/dsh-schedule": "0.1.7-rc.2",
|
|
22
|
+
"@deepseek-ai/dsh-terminal": "0.1.7-rc.2",
|
|
23
|
+
"@deepseek-ai/dsh-tool-web": "0.1.7-rc.2",
|
|
24
|
+
"@deepseek-ai/dsh-plan-mode": "0.1.7-rc.2",
|
|
25
|
+
"@deepseek-ai/dsh-tool-bash": "0.1.7-rc.2",
|
|
26
|
+
"@deepseek-ai/dsh-tool-goal": "0.1.7-rc.2",
|
|
27
|
+
"@deepseek-ai/dsh-tool-jobs": "0.1.7-rc.2",
|
|
28
|
+
"@deepseek-ai/dsh-tool-pwsh": "0.1.7-rc.2",
|
|
29
|
+
"@deepseek-ai/dsh-tool-todo": "0.1.7-rc.2",
|
|
30
|
+
"@deepseek-ai/dsh-home-paths": "0.1.7-rc.2",
|
|
31
|
+
"@deepseek-ai/dsh-http-proxy": "0.1.7-rc.2",
|
|
32
|
+
"@deepseek-ai/dsh-jobs-local": "0.1.7-rc.2",
|
|
33
|
+
"@deepseek-ai/dsh-mcp-client": "0.1.7-rc.2",
|
|
34
|
+
"@deepseek-ai/dsh-pwsh-local": "0.1.7-rc.2",
|
|
35
|
+
"@deepseek-ai/dsh-tool-ralph": "0.1.7-rc.2",
|
|
36
|
+
"@deepseek-ai/dsh-tool-skill": "0.1.7-rc.2",
|
|
37
|
+
"@deepseek-ai/dsh-hooks-codex": "0.1.7-rc.2",
|
|
38
|
+
"@deepseek-ai/dsh-sdk-minimal": "0.1.7-rc.2",
|
|
39
|
+
"@deepseek-ai/dsh-token-meter": "0.1.7-rc.2",
|
|
40
|
+
"@deepseek-ai/dsh-tool-cordis": "0.1.7-rc.2",
|
|
41
|
+
"@deepseek-ai/dsh-agent-preset": "0.1.7-rc.2",
|
|
42
|
+
"@deepseek-ai/dsh-atomic-write": "0.1.7-rc.2",
|
|
43
|
+
"@deepseek-ai/dsh-command-goal": "0.1.7-rc.2",
|
|
44
|
+
"@deepseek-ai/dsh-pwsh-sandbox": "0.1.7-rc.2",
|
|
45
|
+
"@deepseek-ai/dsh-skill-office": "0.1.7-rc.2",
|
|
46
|
+
"@deepseek-ai/dsh-time-context": "0.1.7-rc.2",
|
|
47
|
+
"@deepseek-ai/dsh-tmux-context": "0.1.7-rc.2",
|
|
48
|
+
"@deepseek-ai/dsh-tool-present": "0.1.7-rc.2",
|
|
49
|
+
"@deepseek-ai/dsh-workflow-ptc": "0.1.7-rc.2",
|
|
50
|
+
"@deepseek-ai/dsh-mcp-resources": "0.1.7-rc.2",
|
|
51
|
+
"@deepseek-ai/dsh-terminal-bash": "0.1.7-rc.2",
|
|
52
|
+
"@deepseek-ai/dsh-tool-ask-user": "0.1.7-rc.2",
|
|
53
|
+
"@deepseek-ai/dsh-tool-subagent": "0.1.7-rc.2",
|
|
54
|
+
"@deepseek-ai/dsh-tool-workflow": "0.1.7-rc.2",
|
|
55
|
+
"@deepseek-ai/dsh-plugin-manager": "0.1.7-rc.2",
|
|
56
|
+
"@deepseek-ai/dsh-tool-fs-search": "0.1.7-rc.2",
|
|
57
|
+
"@deepseek-ai/dsh-webhook-github": "0.1.7-rc.2",
|
|
58
|
+
"@deepseek-ai/dsh-command-compact": "0.1.7-rc.2",
|
|
59
|
+
"@deepseek-ai/dsh-client-ui-cordis": "0.1.7-rc.2",
|
|
60
|
+
"@deepseek-ai/dsh-compaction-basic": "0.1.7-rc.2",
|
|
61
|
+
"@deepseek-ai/dsh-skill-filesystem": "0.1.7-rc.2",
|
|
62
|
+
"@deepseek-ai/dsh-goal-round-driver": "0.1.7-rc.2",
|
|
63
|
+
"@deepseek-ai/dsh-hooks-claude-code": "0.1.7-rc.2",
|
|
64
|
+
"@deepseek-ai/dsh-session-reference": "0.1.7-rc.2",
|
|
65
|
+
"@deepseek-ai/dsh-agent-instructions": "0.1.7-rc.2",
|
|
66
|
+
"@deepseek-ai/dsh-launch-environment": "0.1.7-rc.2",
|
|
67
|
+
"@deepseek-ai/dsh-session-projection": "0.1.7-rc.2",
|
|
68
|
+
"@deepseek-ai/dsh-cordis-client-runner": "0.1.7-rc.2",
|
|
69
|
+
"@deepseek-ai/dsh-tool-bash-persistent": "0.1.7-rc.2",
|
|
70
|
+
"@deepseek-ai/dsh-tool-pwsh-persistent": "0.1.7-rc.2",
|
|
71
|
+
"@deepseek-ai/dsh-tool-subagent-control": "0.1.7-rc.2",
|
|
72
|
+
"@deepseek-ai/dsh-client-ui-agent-preset": "0.1.7-rc.2",
|
|
73
|
+
"@deepseek-ai/dsh-agent-tool-presentation": "0.1.7-rc.2",
|
|
74
|
+
"@deepseek-ai/dsh-tool-str-replace-editor": "0.1.7-rc.2",
|
|
75
|
+
"@deepseek-ai/dsh-experimental-auto-review": "0.1.7-rc.2",
|
|
76
|
+
"@deepseek-ai/dsh-tool-workspace-dependencies": "0.1.7-rc.2",
|
|
77
|
+
"@deepseek-ai/dsh-compaction-tool-result-pruner": "0.1.7-rc.2",
|
|
78
|
+
"@deepseek-ai/dsh-experimental-agent-team-profile": "0.1.7-rc.2",
|
|
79
|
+
"@deepseek-ai/dsh-experimental-voice-input-bundle": "0.1.7-rc.2",
|
|
80
|
+
"@deepseek-ai/dsh-llm": "0.1.7-rc.2",
|
|
81
|
+
"@deepseek-ai/dsh-web": "0.1.7-rc.2",
|
|
82
|
+
"@deepseek-ai/dsh-agent": "0.1.7-rc.2",
|
|
83
|
+
"@deepseek-ai/dsh-tools": "0.1.7-rc.2",
|
|
84
|
+
"@deepseek-ai/dsh-session": "0.1.7-rc.2",
|
|
85
|
+
"@deepseek-ai/dsh-storage": "0.1.7-rc.2",
|
|
86
|
+
"@deepseek-ai/dsh-commands": "0.1.7-rc.2",
|
|
87
|
+
"@deepseek-ai/dsh-settings": "0.1.7-rc.2",
|
|
88
|
+
"@deepseek-ai/dsh-subagent": "0.1.7-rc.2",
|
|
89
|
+
"@deepseek-ai/dsh-llm-pi-ai": "0.1.7-rc.2",
|
|
90
|
+
"@deepseek-ai/dsh-llm-retry": "0.1.7-rc.2",
|
|
91
|
+
"@deepseek-ai/dsh-shell-env": "0.1.7-rc.2",
|
|
92
|
+
"@deepseek-ai/dsh-agent-loop": "0.1.7-rc.2",
|
|
93
|
+
"@deepseek-ai/dsh-fs-sandbox": "0.1.7-rc.2",
|
|
94
|
+
"@deepseek-ai/dsh-api-gateway": "0.1.7-rc.2",
|
|
95
|
+
"@deepseek-ai/dsh-skill-badge": "0.1.7-rc.2",
|
|
96
|
+
"@deepseek-ai/dsh-spill-local": "0.1.7-rc.2",
|
|
97
|
+
"@deepseek-ai/dsh-bash-sandbox": "0.1.7-rc.2",
|
|
98
|
+
"@deepseek-ai/dsh-spill-policy": "0.1.7-rc.2",
|
|
99
|
+
"@deepseek-ai/dsh-storage-json": "0.1.7-rc.2",
|
|
100
|
+
"@deepseek-ai/dsh-authorization": "0.1.7-rc.2",
|
|
101
|
+
"@deepseek-ai/dsh-config-editor": "0.1.7-rc.2",
|
|
102
|
+
"@deepseek-ai/dsh-sandbox-local": "0.1.7-rc.2",
|
|
103
|
+
"@deepseek-ai/dsh-session-title": "0.1.7-rc.2",
|
|
104
|
+
"@deepseek-ai/dsh-system-prompt": "0.1.7-rc.2",
|
|
105
|
+
"@deepseek-ai/dsh-typert-loader": "0.1.7-rc.2",
|
|
106
|
+
"@deepseek-ai/dsh-user-approval": "0.1.7-rc.2",
|
|
107
|
+
"@deepseek-ai/dsh-sandbox-policy": "0.1.7-rc.2",
|
|
108
|
+
"@deepseek-ai/dsh-storage-domain": "0.1.7-rc.2",
|
|
109
|
+
"@deepseek-ai/dsh-user-questions": "0.1.7-rc.2",
|
|
110
|
+
"@deepseek-ai/dsh-web-fetch-http": "0.1.7-rc.2",
|
|
111
|
+
"@deepseek-ai/dsh-typert-registry": "0.1.7-rc.2",
|
|
112
|
+
"@deepseek-ai/dsh-attachment-local": "0.1.7-rc.2",
|
|
113
|
+
"@deepseek-ai/dsh-command-feedback": "0.1.7-rc.2",
|
|
114
|
+
"@deepseek-ai/dsh-ptc-runtime-node": "0.1.7-rc.2",
|
|
115
|
+
"@deepseek-ai/dsh-subprocess-local": "0.1.7-rc.2",
|
|
116
|
+
"@deepseek-ai/dsh-credentials-local": "0.1.7-rc.2",
|
|
117
|
+
"@deepseek-ai/dsh-permission-presets": "0.1.7-rc.2",
|
|
118
|
+
"@deepseek-ai/dsh-agent-default-model": "0.1.7-rc.2",
|
|
119
|
+
"@deepseek-ai/dsh-web-search-deepseek": "0.1.7-rc.2",
|
|
120
|
+
"@deepseek-ai/dsh-llm-deepseek-account": "0.1.7-rc.2",
|
|
121
|
+
"@deepseek-ai/dsh-llm-deepseek-api-key": "0.1.7-rc.2",
|
|
122
|
+
"@deepseek-ai/dsh-repeat-tool-reminder": "0.1.7-rc.2",
|
|
123
|
+
"@deepseek-ai/dsh-session-log-deepseek": "0.1.7-rc.2",
|
|
124
|
+
"@deepseek-ai/dsh-session-query-sqlite": "0.1.7-rc.2",
|
|
125
|
+
"@deepseek-ai/dsh-fs-observation-policy": "0.1.7-rc.2",
|
|
126
|
+
"@deepseek-ai/dsh-session-telemetry-otel": "0.1.7-rc.2",
|
|
127
|
+
"@deepseek-ai/dsh-compaction-image-offload": "0.1.7-rc.2",
|
|
128
|
+
"@deepseek-ai/dsh-session-projection-cache": "0.1.7-rc.2",
|
|
129
|
+
"@deepseek-ai/dsh-subagent-fork-in-process": "0.1.7-rc.2",
|
|
130
|
+
"@deepseek-ai/dsh-tool-call-timeout-policy": "0.1.7-rc.2",
|
|
131
|
+
"@deepseek-ai/dsh-deepseek-account-platform": "0.1.7-rc.2",
|
|
132
|
+
"@deepseek-ai/dsh-session-checkpoint-policy": "0.1.7-rc.2",
|
|
133
|
+
"@deepseek-ai/dsh-session-persistence-jsonl": "0.1.7-rc.2",
|
|
134
|
+
"@deepseek-ai/dsh-subagent-spawn-in-process": "0.1.7-rc.2",
|
|
135
|
+
"@deepseek-ai/dsh-deepseek-llm-api-extensions": "0.1.7-rc.2",
|
|
136
|
+
"@deepseek-ai/dsh-session-title-first-prompt-llm": "0.1.7-rc.2",
|
|
137
|
+
"@deepseek-ai/dsh-plugin-package-inventory-deepseek": "0.1.7-rc.2",
|
|
138
|
+
"@deepseek-ai/dsh-brand": "0.1.7-rc.2",
|
|
139
|
+
"@deepseek-ai/dsh-scope": "0.1.7-rc.2",
|
|
140
|
+
"@deepseek-ai/dsh-invariants": "0.1.7-rc.2",
|
|
141
|
+
"@deepseek-ai/dsh-typert-protocol": "0.1.7-rc.2",
|
|
142
|
+
"@deepseek-ai/dsh-util-values": "0.1.7-rc.2",
|
|
143
|
+
"@deepseek-ai/dsh-acp": "0.1.7-rc.2",
|
|
144
|
+
"@deepseek-ai/dsh-sdk-jsonrpc-server": "0.1.7-rc.2",
|
|
145
|
+
"@deepseek-ai/dsh-util-code-language": "0.1.7-rc.2",
|
|
146
|
+
"@deepseek-ai/dsh-fs": "0.1.7-rc.2",
|
|
147
|
+
"@deepseek-ai/dsh-sandbox": "0.1.7-rc.2",
|
|
148
|
+
"@deepseek-ai/dsh-attachment": "0.1.7-rc.2",
|
|
149
|
+
"@deepseek-ai/dsh-workspace": "0.1.7-rc.2",
|
|
150
|
+
"@deepseek-ai/dsh-client-hmr": "0.1.7-rc.2",
|
|
151
|
+
"@deepseek-ai/dsh-subprocess": "0.1.7-rc.2",
|
|
152
|
+
"@deepseek-ai/dsh-api-remotes": "0.1.7-rc.2",
|
|
153
|
+
"@deepseek-ai/dsh-web-frontend": "0.1.7-rc.2",
|
|
154
|
+
"@deepseek-ai/dsh-client-locale": "0.1.7-rc.2",
|
|
155
|
+
"@deepseek-ai/dsh-office-to-pdf": "0.1.7-rc.2",
|
|
156
|
+
"@deepseek-ai/dsh-session-stats": "0.1.7-rc.2",
|
|
157
|
+
"@deepseek-ai/dsh-client-modules": "0.1.7-rc.2",
|
|
158
|
+
"@deepseek-ai/dsh-client-ui-chat": "0.1.7-rc.2",
|
|
159
|
+
"@deepseek-ai/dsh-client-ui-goal": "0.1.7-rc.2",
|
|
160
|
+
"@deepseek-ai/dsh-client-ui-jobs": "0.1.7-rc.2",
|
|
161
|
+
"@deepseek-ai/dsh-client-ui-plan": "0.1.7-rc.2",
|
|
162
|
+
"@deepseek-ai/dsh-client-ui-tool": "0.1.7-rc.2",
|
|
163
|
+
"@deepseek-ai/dsh-file-reference": "0.1.7-rc.2",
|
|
164
|
+
"@deepseek-ai/dsh-host-webserver": "0.1.7-rc.2",
|
|
165
|
+
"@deepseek-ai/dsh-client-ui-skill": "0.1.7-rc.2",
|
|
166
|
+
"@deepseek-ai/dsh-client-ui-theme": "0.1.7-rc.2",
|
|
167
|
+
"@deepseek-ai/dsh-client-resources": "0.1.7-rc.2",
|
|
168
|
+
"@deepseek-ai/dsh-client-shortcuts": "0.1.7-rc.2",
|
|
169
|
+
"@deepseek-ai/dsh-client-ui-layout": "0.1.7-rc.2",
|
|
170
|
+
"@deepseek-ai/dsh-host-open-in-app": "0.1.7-rc.2",
|
|
171
|
+
"@deepseek-ai/dsh-message-feedback": "0.1.7-rc.2",
|
|
172
|
+
"@deepseek-ai/dsh-client-connection": "0.1.7-rc.2",
|
|
173
|
+
"@deepseek-ai/dsh-client-ui-session": "0.1.7-rc.2",
|
|
174
|
+
"@deepseek-ai/dsh-client-ui-sidebar": "0.1.7-rc.2",
|
|
175
|
+
"@deepseek-ai/dsh-workspace-changes": "0.1.7-rc.2",
|
|
176
|
+
"@deepseek-ai/dsh-api-job-controller": "0.1.7-rc.2",
|
|
177
|
+
"@deepseek-ai/dsh-client-file-upload": "0.1.7-rc.2",
|
|
178
|
+
"@deepseek-ai/dsh-client-ui-approval": "0.1.7-rc.2",
|
|
179
|
+
"@deepseek-ai/dsh-client-ui-commands": "0.1.7-rc.2",
|
|
180
|
+
"@deepseek-ai/dsh-client-ui-renderer": "0.1.7-rc.2",
|
|
181
|
+
"@deepseek-ai/dsh-client-ui-schedule": "0.1.7-rc.2",
|
|
182
|
+
"@deepseek-ai/dsh-client-ui-settings": "0.1.7-rc.2",
|
|
183
|
+
"@deepseek-ai/dsh-client-ui-subagent": "0.1.7-rc.2",
|
|
184
|
+
"@deepseek-ai/dsh-cordis-host-runner": "0.1.7-rc.2",
|
|
185
|
+
"@deepseek-ai/dsh-session-log-export": "0.1.7-rc.2",
|
|
186
|
+
"@deepseek-ai/dsh-api-workspace-files": "0.1.7-rc.2",
|
|
187
|
+
"@deepseek-ai/dsh-client-ui-reference": "0.1.7-rc.2",
|
|
188
|
+
"@deepseek-ai/dsh-client-ui-shortcuts": "0.1.7-rc.2",
|
|
189
|
+
"@deepseek-ai/dsh-client-ui-workspace": "0.1.7-rc.2",
|
|
190
|
+
"@deepseek-ai/dsh-client-ui-attachment": "0.1.7-rc.2",
|
|
191
|
+
"@deepseek-ai/dsh-client-ui-trajectory": "0.1.7-rc.2",
|
|
192
|
+
"@deepseek-ai/dsh-file-reference-local": "0.1.7-rc.2",
|
|
193
|
+
"@deepseek-ai/dsh-host-frontend-static": "0.1.7-rc.2",
|
|
194
|
+
"@deepseek-ai/dsh-session-turn-outline": "0.1.7-rc.2",
|
|
195
|
+
"@deepseek-ai/dsh-agent-preset-registry": "0.1.7-rc.2",
|
|
196
|
+
"@deepseek-ai/dsh-client-ui-open-in-app": "0.1.7-rc.2",
|
|
197
|
+
"@deepseek-ai/dsh-host-plugin-inventory": "0.1.7-rc.2",
|
|
198
|
+
"@deepseek-ai/dsh-api-account-controller": "0.1.7-rc.2",
|
|
199
|
+
"@deepseek-ai/dsh-api-session-controller": "0.1.7-rc.2",
|
|
200
|
+
"@deepseek-ai/dsh-client-ui-conversation": "0.1.7-rc.2",
|
|
201
|
+
"@deepseek-ai/dsh-client-ui-deliverables": "0.1.7-rc.2",
|
|
202
|
+
"@deepseek-ai/dsh-client-ui-workflow-run": "0.1.7-rc.2",
|
|
203
|
+
"@deepseek-ai/dsh-api-settings-controller": "0.1.7-rc.2",
|
|
204
|
+
"@deepseek-ai/dsh-api-terminal-controller": "0.1.7-rc.2",
|
|
205
|
+
"@deepseek-ai/dsh-client-ui-input-trigger": "0.1.7-rc.2",
|
|
206
|
+
"@deepseek-ai/dsh-client-ui-sidebar-files": "0.1.7-rc.2",
|
|
207
|
+
"@deepseek-ai/dsh-client-ui-sidebar-right": "0.1.7-rc.2",
|
|
208
|
+
"@deepseek-ai/dsh-api-workspace-controller": "0.1.7-rc.2",
|
|
209
|
+
"@deepseek-ai/dsh-client-ui-brand-official": "0.1.7-rc.2",
|
|
210
|
+
"@deepseek-ai/dsh-client-ui-plugin-manager": "0.1.7-rc.2",
|
|
211
|
+
"@deepseek-ai/dsh-client-ui-settings-shell": "0.1.7-rc.2",
|
|
212
|
+
"@deepseek-ai/dsh-client-ui-user-questions": "0.1.7-rc.2",
|
|
213
|
+
"@deepseek-ai/dsh-client-ui-model-selection": "0.1.7-rc.2",
|
|
214
|
+
"@deepseek-ai/dsh-client-ui-settings-models": "0.1.7-rc.2",
|
|
215
|
+
"@deepseek-ai/dsh-client-ui-sidebar-browser": "0.1.7-rc.2",
|
|
216
|
+
"@deepseek-ai/dsh-client-ui-message-feedback": "0.1.7-rc.2",
|
|
217
|
+
"@deepseek-ai/dsh-client-ui-settings-account": "0.1.7-rc.2",
|
|
218
|
+
"@deepseek-ai/dsh-client-ui-settings-general": "0.1.7-rc.2",
|
|
219
|
+
"@deepseek-ai/dsh-client-ui-settings-plugins": "0.1.7-rc.2",
|
|
220
|
+
"@deepseek-ai/dsh-client-ui-sidebar-terminal": "0.1.7-rc.2",
|
|
221
|
+
"@deepseek-ai/dsh-host-directory-picker-auto": "0.1.7-rc.2",
|
|
222
|
+
"@deepseek-ai/dsh-client-ui-settings-subagent": "0.1.7-rc.2",
|
|
223
|
+
"@deepseek-ai/dsh-client-ui-permission-presets": "0.1.7-rc.2",
|
|
224
|
+
"@deepseek-ai/dsh-host-directory-picker-browse": "0.1.7-rc.2",
|
|
225
|
+
"@deepseek-ai/dsh-host-directory-picker-native": "0.1.7-rc.2",
|
|
226
|
+
"@deepseek-ai/dsh-client-ui-settings-agent-loop": "0.1.7-rc.2",
|
|
227
|
+
"@deepseek-ai/dsh-client-ui-settings-web-search": "0.1.7-rc.2",
|
|
228
|
+
"@deepseek-ai/dsh-client-ui-directory-picker-browse": "0.1.7-rc.2",
|
|
229
|
+
"@deepseek-ai/dsh-client-ui-directory-picker-native": "0.1.7-rc.2",
|
|
230
|
+
"@deepseek-ai/dsh-client-ui-sidebar-documentpreview": "0.1.7-rc.2",
|
|
231
|
+
"@deepseek-ai/dsh-client-ui-settings-plugin-inventory": "0.1.7-rc.2",
|
|
232
|
+
"@deepseek-ai/dsh-package-manifest": "0.1.7-rc.2",
|
|
233
|
+
"@deepseek-ai/dsh-session-query": "0.1.7-rc.2",
|
|
234
|
+
"@deepseek-ai/dsh-session-persistence": "0.1.7-rc.2",
|
|
235
|
+
"@deepseek-ai/dsh-jobs": "0.1.7-rc.2",
|
|
236
|
+
"@deepseek-ai/dsh-shell": "0.1.7-rc.2",
|
|
237
|
+
"@deepseek-ai/dsh-output-retention": "0.1.7-rc.2",
|
|
238
|
+
"@deepseek-ai/dsh-timeout": "0.1.7-rc.2",
|
|
239
|
+
"@deepseek-ai/dsh-workflow": "0.1.7-rc.2",
|
|
240
|
+
"@deepseek-ai/dsh-hook-protocol": "0.1.7-rc.2",
|
|
241
|
+
"@deepseek-ai/dsh-compaction": "0.1.7-rc.2",
|
|
242
|
+
"@deepseek-ai/dsh-ptc-runtime": "0.1.7-rc.2",
|
|
243
|
+
"@deepseek-ai/dsh-lazy-require": "0.1.7-rc.2",
|
|
244
|
+
"@deepseek-ai/dsh-spill": "0.1.7-rc.2",
|
|
245
|
+
"@deepseek-ai/dsh-credentials": "0.1.7-rc.2",
|
|
246
|
+
"@deepseek-ai/dsh-experimental-agent-team": "0.1.7-rc.2",
|
|
247
|
+
"@deepseek-ai/dsh-experimental-tool-agent-team": "0.1.7-rc.2",
|
|
248
|
+
"@deepseek-ai/dsh-experimental-client-ui-agent-team": "0.1.7-rc.2",
|
|
249
|
+
"@deepseek-ai/dsh-experimental-speech-to-text": "0.1.7-rc.2",
|
|
250
|
+
"@deepseek-ai/dsh-experimental-api-speech-to-text": "0.1.7-rc.2",
|
|
251
|
+
"@deepseek-ai/dsh-experimental-client-ui-voice-input": "0.1.7-rc.2",
|
|
252
|
+
"@deepseek-ai/dsh-experimental-speech-to-text-sensevoice": "0.1.7-rc.2",
|
|
253
|
+
"@deepseek-ai/dsh-util-crypto": "0.1.7-rc.2",
|
|
254
|
+
"@deepseek-ai/dsh-chunked-list": "0.1.7-rc.2",
|
|
255
|
+
"@deepseek-ai/dsh-util-time": "0.1.7-rc.2",
|
|
256
|
+
"@deepseek-ai/dsh-deque": "0.1.7-rc.2",
|
|
257
|
+
"@deepseek-ai/dsh-bash-local": "0.1.7-rc.2",
|
|
258
|
+
"@deepseek-ai/dsh-sandbox-windows-acl": "0.1.7-rc.2",
|
|
259
|
+
"@deepseek-ai/dsh-anonymous-user-id": "0.1.7-rc.2",
|
|
260
|
+
"@deepseek-ai/dsh-win32-process": "0.1.7-rc.2",
|
|
261
|
+
"@deepseek-ai/dsh-llm-deepseek": "0.1.7-rc.2",
|
|
262
|
+
"@deepseek-ai/dsh-deepseek-account": "0.1.7-rc.2",
|
|
263
|
+
"@deepseek-ai/dsh-session-telemetry": "0.1.7-rc.2",
|
|
264
|
+
"@deepseek-ai/dsh-subagent-in-process-driver": "0.1.7-rc.2",
|
|
265
|
+
"@deepseek-ai/dsh-session-format": "0.1.7-rc.2",
|
|
266
|
+
"@deepseek-ai/dsh-session-format-catalog": "0.1.7-rc.2",
|
|
267
|
+
"@deepseek-ai/dsh-session-format-v3-to-v4": "0.1.7-rc.2",
|
|
268
|
+
"@deepseek-ai/dsh-session-title-llm": "0.1.7-rc.2",
|
|
269
|
+
"@deepseek-ai/dsh-sdk-protocol": "0.1.7-rc.2",
|
|
270
|
+
"@deepseek-ai/dsh-native-command": "0.1.7-rc.2",
|
|
271
|
+
"@deepseek-ai/dsh-util-workspace-path": "0.1.7-rc.2",
|
|
272
|
+
"@deepseek-ai/dsh-host-directory-picker": "0.1.7-rc.2",
|
|
273
|
+
"@deepseek-ai/dsh-client-ui-slots": "0.1.7-rc.2",
|
|
274
|
+
"@deepseek-ai/dsh-client-ui-primitives": "0.1.7-rc.2",
|
|
275
|
+
"@deepseek-ai/dsh-client-store": "0.1.7-rc.2",
|
|
276
|
+
"@deepseek-ai/dsh-session-format-v0-to-v1": "0.1.7-rc.2",
|
|
277
|
+
"@deepseek-ai/dsh-session-format-v1-to-v2": "0.1.7-rc.2",
|
|
278
|
+
"@deepseek-ai/dsh-session-format-v2-to-v3": "0.1.7-rc.2"
|
|
279
|
+
},
|
|
280
|
+
"autoInstallPeers": true,
|
|
281
|
+
"allowBuilds": {
|
|
282
|
+
"@deepseek-ai/dsh-subprocess-local": false,
|
|
283
|
+
"@google/genai": false,
|
|
284
|
+
"koffi": false,
|
|
285
|
+
"node-pty": false,
|
|
286
|
+
"protobufjs": false
|
|
287
|
+
}
|
|
288
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# AgentTeams v0.1.21-rc.1
|
|
2
|
+
|
|
3
|
+
Local compatibility candidate; not published. Intended first publication channel: `next`.
|
|
4
|
+
|
|
5
|
+
- Adapt member initialization to the awaited `agent/created` lifecycle while retaining the older `agent/session-start` boundary. Initialization failures veto modern startup.
|
|
6
|
+
- Follow retained `mainView` sessions and the workspace navigation API so the activity panel and member transcript links work on current Harness.
|
|
7
|
+
- Own the five small panel icons rather than importing renamed host artwork exports.
|
|
8
|
+
- Declare the AgentTeams message producer and recognize both nested legacy and V4 tool-result errors.
|
|
9
|
+
- Align the development cohort to Harness `0.1.7-rc.2`, Cordis `4.0.4`, and Schemastery `3.18.4`; extend the exact host matrix with `0.1.5-rc.2/rc.3`.
|
|
10
|
+
- Retain main’s #159 fixes: reject stale task reports, deduplicate repeated reports, append terminal evidence without reopening work, and expose automatic repair/review follow-ups.
|
|
11
|
+
- Retain #193: collapse finished members and order them by completion time.
|
|
12
|
+
- Sync upstream maintenance skills to commit `eeff1cdcffe4013e094d94c8d9b8651a65fbc79a` without local changes to vendored files.
|
|
13
|
+
|
|
14
|
+
See the [compatibility audit](../docs/harness-0.1.7-rc.2-audit-2026-09-25/README.md) for evidence, verification scope, and remaining release gates. An exact support entry is not a promise for later releases. Harness V4 session migration is not reversible simply by reinstalling an older CLI.
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# AgentTeams v0.1.21
|
|
2
|
+
|
|
3
|
+
Stable plugin release on npm `latest`. Recommended host: DeepSeek Harness `0.1.7-rc.2`, currently on its separate `next` channel. Installing AgentTeams does not upgrade the host.
|
|
4
|
+
|
|
5
|
+
- Open Team collaboration as a native workspace tab from the owning chat header or reply card. Keep member icons and conversation navigation; remove the unrelated entry from the workspace start page.
|
|
6
|
+
- Show task dependencies, member assignments and progress with a compact header. Fix intermediate-width column placement and use a single column in narrow panes.
|
|
7
|
+
- Keep team monitoring alive when its tab closes, retain completed archives, and avoid replacing file or terminal tabs. Older supported hosts retain the activity panel.
|
|
8
|
+
- Adapt awaited member initialization, session navigation, message producers and V4 tool-result errors to Harness `0.1.7-rc.2`. Align the development cohort and add exact `0.1.5-rc.2/rc.3` support.
|
|
9
|
+
- Preserve stale-report protection, report deduplication and terminal evidence without reopening work (#159), plus completion ordering and folding (#193).
|
|
10
|
+
|
|
11
|
+
## Upgrade
|
|
12
|
+
|
|
13
|
+
```sh
|
|
14
|
+
dsh plugin --profile web add --save-exact @nanmicoder/dsh-agent-teams@0.1.21
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Use your active profile, restart its Harness process, and refresh the browser. Source installations must rebuild after pulling.
|
|
18
|
+
|
|
19
|
+
## Verification
|
|
20
|
+
|
|
21
|
+
Real DeepSeek model runs in isolated `/tmp` projects covered normal completion, dependency scheduling, stopping and deliberate failure. Browser checks covered chat entry points, closing/reopening, staged plans and responsive widths from 360 to 1440 pixels. See the [workspace evidence](../docs/workspace-181-verification/README.md) and [host compatibility audit](../docs/harness-0.1.7-rc.2-audit-2026-09-25/README.md) for exact scope and artifact versions.
|
|
22
|
+
|
|
23
|
+
GitHub Actions runs the complete verification suite and seven-host compatibility matrix before publishing its verified tarball. The exact supported versions are recorded in [compatibility.json](../compatibility.json); later host releases are not implicitly supported.
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# AgentTeams v0.1.22-rc.1
|
|
2
|
+
|
|
3
|
+
Preview release on npm `next`, preparing for the upcoming Harness desktop 0.2.0 release. The recommended published host remains `0.1.7-rc.2`.
|
|
4
|
+
|
|
5
|
+
- Ship prebuilt host and client entries in Git so desktop GitHub installation can activate without lifecycle build scripts.
|
|
6
|
+
- Move dependency overrides to pnpm-workspace.yaml for pnpm 10 and the desktop bundled pnpm 11.
|
|
7
|
+
- Add exact 0.2.0 peer compatibility, based on official Harness master commit `21638c56315ae6a2b552d6091945d3144c9af32e`. This is source preview evidence, not acceptance of the as-yet-unreleased desktop binary.
|
|
8
|
+
- Add checked-in build artifact integrity checks and an isolated source-host runtime verifier.
|
|
9
|
+
|
|
10
|
+
## Install
|
|
11
|
+
|
|
12
|
+
In the desktop Add Plugin field, enter `@nanmicoder/dsh-agent-teams@0.1.22-rc.1`. An npm website URL is not a package specification.
|
|
13
|
+
|
|
14
|
+
```sh
|
|
15
|
+
dsh plugin --profile web add --save-exact @nanmicoder/dsh-agent-teams@0.1.22-rc.1
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
Restart the active Harness profile and refresh its Web UI. This preview does not change npm latest.
|
|
19
|
+
|
|
20
|
+
## Validation
|
|
21
|
+
|
|
22
|
+
The pre-adaptation candidate passed ten real CLI scenarios with deterministic model fixtures on the pinned official source checkout, plus Web UI Git installation and activation under pnpm 11. The release pipeline requires Ubuntu and Windows static verification and all seven published host runtime targets against one immutable tarball before publishing.
|
|
23
|
+
|
|
24
|
+
See [the source audit and UI evidence](../docs/harness-0.2.0-pre-adaptation/README.md). Final official 0.2.0 packages and the packaged Electron application still require release-specific acceptance.
|
|
@@ -2,6 +2,8 @@ import { readFileSync } from 'node:fs'
|
|
|
2
2
|
import { pathToFileURL } from 'node:url'
|
|
3
3
|
|
|
4
4
|
export const policy = JSON.parse(readFileSync(new URL('../compatibility.json', import.meta.url), 'utf8'))
|
|
5
|
+
// JSON is valid YAML and keeps this shipped diagnostic dependency-free.
|
|
6
|
+
export const workspacePolicy = JSON.parse(readFileSync(new URL('../pnpm-workspace.yaml', import.meta.url), 'utf8'))
|
|
5
7
|
|
|
6
8
|
// Contract consumed by the published server entry and client module table.
|
|
7
9
|
// Keeping this independent from package.json catches accidentally deleted peers.
|
|
@@ -40,11 +42,30 @@ export function validatePolicy(input) {
|
|
|
40
42
|
const recommended = hosts.filter(host => host.track === 'recommended')
|
|
41
43
|
if (recommended.length !== 1 || recommended[0].version !== input.recommendedHost) throw new Error('Exactly one recommended host is required')
|
|
42
44
|
if (/-(alpha|beta)\./.test(input.recommendedHost)) throw new Error('Alpha/beta hosts cannot be the ordinary-user recommendation')
|
|
45
|
+
const candidates = input.sourceCandidates ?? []
|
|
46
|
+
if (!Array.isArray(candidates)) throw new Error('sourceCandidates must be an array')
|
|
47
|
+
for (const candidate of candidates) {
|
|
48
|
+
if (typeof candidate.version !== 'string' || candidate.version.trim() !== candidate.version
|
|
49
|
+
|| !/^\d+\.\d+\.\d+(?:-(?:alpha|beta|rc)\.\d+)?$/.test(candidate.version)
|
|
50
|
+
|| versions.has(candidate.version)
|
|
51
|
+
|| candidate.repository !== 'https://github.com/deepseek-ai/deepseek-harness'
|
|
52
|
+
|| typeof candidate.commit !== 'string' || candidate.commit.length !== 40 || !/^[a-f0-9]{40}$/.test(candidate.commit)
|
|
53
|
+
|| typeof candidate.evidence !== 'string' || !candidate.evidence.startsWith('docs/')) {
|
|
54
|
+
throw new Error('Source candidates require a unique exact version, official repository, commit and evidence')
|
|
55
|
+
}
|
|
56
|
+
versions.add(candidate.version)
|
|
57
|
+
}
|
|
58
|
+
// Only published targets enter the npm download/CI matrix.
|
|
43
59
|
return hosts.map(host => host.version)
|
|
44
60
|
}
|
|
45
61
|
|
|
46
|
-
export function
|
|
62
|
+
export function declaredHostVersions(input = policy) {
|
|
63
|
+
return [...validatePolicy(input), ...(input.sourceCandidates ?? []).map(candidate => candidate.version)]
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
export function validatePackageCompatibility(pkg, input = policy, workspace = workspacePolicy) {
|
|
47
67
|
const versions = validatePolicy(input)
|
|
68
|
+
const declaredVersions = declaredHostVersions(input)
|
|
48
69
|
for (const name of requiredHostPeers) {
|
|
49
70
|
if (typeof pkg.peerDependencies?.[name] !== 'string' || pkg.peerDependencies[name].trim() === '') {
|
|
50
71
|
throw new Error(`Missing required host peer declaration: ${name}`)
|
|
@@ -57,7 +78,8 @@ export function validatePackageCompatibility(pkg, input = policy) {
|
|
|
57
78
|
if (version !== baseline) throw new Error(`${name} must match the exact development host ${baseline}`)
|
|
58
79
|
}
|
|
59
80
|
}
|
|
60
|
-
|
|
81
|
+
if (pkg.pnpm?.overrides) throw new Error('Move pnpm.overrides to pnpm-workspace.yaml for pnpm 11')
|
|
82
|
+
const overrides = workspace.overrides ?? {}
|
|
61
83
|
const dshNames = Object.keys(pkg.devDependencies ?? {}).filter(name => name === '@deepseek-ai/dsh' || name.startsWith('@deepseek-ai/dsh-'))
|
|
62
84
|
for (const name of dshNames) {
|
|
63
85
|
if (overrides[name] !== baseline) throw new Error(`${name} requires an exact pnpm override to ${baseline}`)
|
|
@@ -73,8 +95,8 @@ export function validatePackageCompatibility(pkg, input = policy) {
|
|
|
73
95
|
for (const [name, range] of Object.entries(pkg.peerDependencies ?? {})) {
|
|
74
96
|
if (name === '@deepseek-ai/dsh' || name.startsWith('@deepseek-ai/dsh-')) {
|
|
75
97
|
const declared = range.split('||').map(value => value.trim())
|
|
76
|
-
if (declared.length !==
|
|
77
|
-
throw new Error(`${name} peer range must enumerate the supported host targets`)
|
|
98
|
+
if (declared.length !== declaredVersions.length || declaredVersions.some(version => !declared.includes(version))) {
|
|
99
|
+
throw new Error(`${name} peer range must enumerate the supported host targets and source candidates`)
|
|
78
100
|
}
|
|
79
101
|
}
|
|
80
102
|
}
|
package/scripts/doctor.mjs
CHANGED
|
@@ -68,11 +68,12 @@ export function inspectInstallation(hostRoot, profileRoot) {
|
|
|
68
68
|
}
|
|
69
69
|
const mixed = packages.filter(pkg => pkg.version !== host.version)
|
|
70
70
|
const problems = []
|
|
71
|
+
const sourceCandidate = policy.sourceCandidates?.find(candidate => candidate.version === host.version)
|
|
71
72
|
const policyPackage = manifest(new URL('../package.json', import.meta.url))
|
|
72
73
|
if (plugin && plugin.version !== policyPackage.version) {
|
|
73
74
|
problems.push(`Installed plugin ${plugin.version} differs from this policy's plugin ${policyPackage.version}; verify its own host compatibility`)
|
|
74
75
|
}
|
|
75
|
-
if (!allowed.includes(host.version)) problems.push(`Unsupported host ${host.version}; recommended target is ${policy.recommendedHost}`)
|
|
76
|
+
if (!allowed.includes(host.version) && !sourceCandidate) problems.push(`Unsupported host ${host.version}; recommended target is ${policy.recommendedHost}`)
|
|
76
77
|
if (mixed.length) problems.push(`${mixed.length} resolved DSH packages differ from host ${host.version}`)
|
|
77
78
|
if (missing.length) problems.push(`Missing packages: ${[...new Set(missing)].join(', ')}`)
|
|
78
79
|
const identities = new Map()
|
|
@@ -88,8 +89,12 @@ export function inspectInstallation(hostRoot, profileRoot) {
|
|
|
88
89
|
host: { version: host.version, path: dirname(hostPath) },
|
|
89
90
|
...(plugin ? { plugin } : {}),
|
|
90
91
|
checkedPackages: packages.length, supportedHosts: allowed,
|
|
92
|
+
validation: sourceCandidate ? { kind: 'source-preview', ...sourceCandidate, sourceCommitVerified: false } : { kind: allowed.includes(host.version) ? 'published-matrix' : 'unsupported' },
|
|
91
93
|
problems, packages,
|
|
92
|
-
limits: [
|
|
94
|
+
limits: [
|
|
95
|
+
'Checks files resolved from the supplied roots; does not identify the running process or prove plugin behavior.',
|
|
96
|
+
...(sourceCandidate ? [`Host ${host.version} is pre-adapted against source ${sourceCandidate.commit}; this inspection does not verify that the installed release matches that source.`] : []),
|
|
97
|
+
],
|
|
93
98
|
}
|
|
94
99
|
}
|
|
95
100
|
|