dsh-collab-workbench 0.0.0-stage → 0.1.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.
Potentially problematic release.
This version of dsh-collab-workbench might be problematic. Click here for more details.
- package/LICENSE +202 -0
- package/README.md +112 -2
- package/client.js +2136 -0
- package/cordis.patch.yml +7 -0
- package/icon.svg +1 -0
- package/index.js +86 -0
- package/locale/en.json +1 -0
- package/locale/zh.json +1 -0
- package/package.json +60 -3
- package/scripts/build-approvals.mjs +15 -0
- package/scripts/check.mjs +17 -0
- package/src/client/approval-ui.js +117 -0
- package/src/client/update-ui.js +73 -0
- package/src/host/agents.js +235 -0
- package/src/host/api.js +264 -0
- package/src/host/approvals-fold.js +34 -0
- package/src/host/approvals.js +36 -0
- package/src/host/channels.js +509 -0
- package/src/host/delivery.js +95 -0
- package/src/host/execution-engine.js +417 -0
- package/src/host/execution-tools.js +65 -0
- package/src/host/execution.js +274 -0
- package/src/host/files.js +89 -0
- package/src/host/groups.js +501 -0
- package/src/host/ledger.js +177 -0
- package/src/host/memory.js +175 -0
- package/src/host/policy.js +43 -0
- package/src/host/tasks.js +117 -0
- package/src/host/tools.js +491 -0
- package/src/host/update.js +135 -0
- package/src/host/verify.js +44 -0
- package/src/host/work-item-sync.js +101 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
|
|
2
|
+
Apache License
|
|
3
|
+
Version 2.0, January 2004
|
|
4
|
+
http://www.apache.org/licenses/
|
|
5
|
+
|
|
6
|
+
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
|
7
|
+
|
|
8
|
+
1. Definitions.
|
|
9
|
+
|
|
10
|
+
"License" shall mean the terms and conditions for use, reproduction,
|
|
11
|
+
and distribution as defined by Sections 1 through 9 of this document.
|
|
12
|
+
|
|
13
|
+
"Licensor" shall mean the copyright owner or entity authorized by
|
|
14
|
+
the copyright owner that is granting the License.
|
|
15
|
+
|
|
16
|
+
"Legal Entity" shall mean the union of the acting entity and all
|
|
17
|
+
other entities that control, are controlled by, or are under common
|
|
18
|
+
control with that entity. For the purposes of this definition,
|
|
19
|
+
"control" means (i) the power, direct or indirect, to cause the
|
|
20
|
+
direction or management of such entity, whether by contract or
|
|
21
|
+
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
|
22
|
+
outstanding shares, or (iii) beneficial ownership of such entity.
|
|
23
|
+
|
|
24
|
+
"You" (or "Your") shall mean an individual or Legal Entity
|
|
25
|
+
exercising permissions granted by this License.
|
|
26
|
+
|
|
27
|
+
"Source" form shall mean the preferred form for making modifications,
|
|
28
|
+
including but not limited to software source code, documentation
|
|
29
|
+
source, and configuration files.
|
|
30
|
+
|
|
31
|
+
"Object" form shall mean any form resulting from mechanical
|
|
32
|
+
transformation or translation of a Source form, including but
|
|
33
|
+
not limited to compiled object code, generated documentation,
|
|
34
|
+
and conversions to other media types.
|
|
35
|
+
|
|
36
|
+
"Work" shall mean the work of authorship, whether in Source or
|
|
37
|
+
Object form, made available under the License, as indicated by a
|
|
38
|
+
copyright notice that is included in or attached to the work
|
|
39
|
+
(an example is provided in the Appendix below).
|
|
40
|
+
|
|
41
|
+
"Derivative Works" shall mean any work, whether in Source or Object
|
|
42
|
+
form, that is based on (or derived from) the Work and for which the
|
|
43
|
+
editorial revisions, annotations, elaborations, or other modifications
|
|
44
|
+
represent, as a whole, an original work of authorship. For the purposes
|
|
45
|
+
of this License, Derivative Works shall not include works that remain
|
|
46
|
+
separable from, or merely link (or bind by name) to the interfaces of,
|
|
47
|
+
the Work and Derivative Works thereof.
|
|
48
|
+
|
|
49
|
+
"Contribution" shall mean any work of authorship, including
|
|
50
|
+
the original version of the Work and any modifications or additions
|
|
51
|
+
to that Work or Derivative Works thereof, that is intentionally
|
|
52
|
+
submitted to Licensor for inclusion in the Work by the copyright owner
|
|
53
|
+
or by an individual or Legal Entity authorized to submit on behalf of
|
|
54
|
+
the copyright owner. For the purposes of this definition, "submitted"
|
|
55
|
+
means any form of electronic, verbal, or written communication sent
|
|
56
|
+
to the Licensor or its representatives, including but not limited to
|
|
57
|
+
communication on electronic mailing lists, source code control systems,
|
|
58
|
+
and issue tracking systems that are managed by, or on behalf of, the
|
|
59
|
+
Licensor for the purpose of discussing and improving the Work, but
|
|
60
|
+
excluding communication that is conspicuously marked or otherwise
|
|
61
|
+
designated in writing by the copyright owner as "Not a Contribution."
|
|
62
|
+
|
|
63
|
+
"Contributor" shall mean Licensor and any individual or Legal Entity
|
|
64
|
+
on behalf of whom a Contribution has been received by Licensor and
|
|
65
|
+
subsequently incorporated within the Work.
|
|
66
|
+
|
|
67
|
+
2. Grant of Copyright License. Subject to the terms and conditions of
|
|
68
|
+
this License, each Contributor hereby grants to You a perpetual,
|
|
69
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
70
|
+
copyright license to reproduce, prepare Derivative Works of,
|
|
71
|
+
publicly display, publicly perform, sublicense, and distribute the
|
|
72
|
+
Work and such Derivative Works in Source or Object form.
|
|
73
|
+
|
|
74
|
+
3. Grant of Patent License. Subject to the terms and conditions of
|
|
75
|
+
this License, each Contributor hereby grants to You a perpetual,
|
|
76
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
77
|
+
(except as stated in this section) patent license to make, have made,
|
|
78
|
+
use, offer to sell, sell, import, and otherwise transfer the Work,
|
|
79
|
+
where such license applies only to those patent claims licensable
|
|
80
|
+
by such Contributor that are necessarily infringed by their
|
|
81
|
+
Contribution(s) alone or by combination of their Contribution(s)
|
|
82
|
+
with the Work to which such Contribution(s) was submitted. If You
|
|
83
|
+
institute patent litigation against any entity (including a
|
|
84
|
+
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
|
85
|
+
or a Contribution incorporated within the Work constitutes direct
|
|
86
|
+
or contributory patent infringement, then any patent licenses
|
|
87
|
+
granted to You under this License for that Work shall terminate
|
|
88
|
+
as of the date such litigation is filed.
|
|
89
|
+
|
|
90
|
+
4. Redistribution. You may reproduce and distribute copies of the
|
|
91
|
+
Work or Derivative Works thereof in any medium, with or without
|
|
92
|
+
modifications, and in Source or Object form, provided that You
|
|
93
|
+
meet the following conditions:
|
|
94
|
+
|
|
95
|
+
(a) You must give any other recipients of the Work or
|
|
96
|
+
Derivative Works a copy of this License; and
|
|
97
|
+
|
|
98
|
+
(b) You must cause any modified files to carry prominent notices
|
|
99
|
+
stating that You changed the files; and
|
|
100
|
+
|
|
101
|
+
(c) You must retain, in the Source form of any Derivative Works
|
|
102
|
+
that You distribute, all copyright, patent, trademark, and
|
|
103
|
+
attribution notices from the Source form of the Work,
|
|
104
|
+
excluding those notices that do not pertain to any part of
|
|
105
|
+
the Derivative Works; and
|
|
106
|
+
|
|
107
|
+
(d) If the Work includes a "NOTICE" text file as part of its
|
|
108
|
+
distribution, then any Derivative Works that You distribute must
|
|
109
|
+
include a readable copy of the attribution notices contained
|
|
110
|
+
within such NOTICE file, excluding those notices that do not
|
|
111
|
+
pertain to any part of the Derivative Works, in at least one
|
|
112
|
+
of the following places: within a NOTICE text file distributed
|
|
113
|
+
as part of the Derivative Works; within the Source form or
|
|
114
|
+
documentation, if provided along with the Derivative Works; or,
|
|
115
|
+
within a display generated by the Derivative Works, if and
|
|
116
|
+
wherever such third-party notices normally appear. The contents
|
|
117
|
+
of the NOTICE file are for informational purposes only and
|
|
118
|
+
do not modify the License. You may add Your own attribution
|
|
119
|
+
notices within Derivative Works that You distribute, alongside
|
|
120
|
+
or as an addendum to the NOTICE text from the Work, provided
|
|
121
|
+
that such additional attribution notices cannot be construed
|
|
122
|
+
as modifying the License.
|
|
123
|
+
|
|
124
|
+
You may add Your own copyright statement to Your modifications and
|
|
125
|
+
may provide additional or different license terms and conditions
|
|
126
|
+
for use, reproduction, or distribution of Your modifications, or
|
|
127
|
+
for any such Derivative Works as a whole, provided Your use,
|
|
128
|
+
reproduction, and distribution of the Work otherwise complies with
|
|
129
|
+
the conditions stated in this License.
|
|
130
|
+
|
|
131
|
+
5. Submission of Contributions. Unless You explicitly state otherwise,
|
|
132
|
+
any Contribution intentionally submitted for inclusion in the Work
|
|
133
|
+
by You to the Licensor shall be under the terms and conditions of
|
|
134
|
+
this License, without any additional terms or conditions.
|
|
135
|
+
Notwithstanding the above, nothing herein shall supersede or modify
|
|
136
|
+
the terms of any separate license agreement you may have executed
|
|
137
|
+
with Licensor regarding such Contributions.
|
|
138
|
+
|
|
139
|
+
6. Trademarks. This License does not grant permission to use the trade
|
|
140
|
+
names, trademarks, service marks, or product names of the Licensor,
|
|
141
|
+
except as required for reasonable and customary use in describing the
|
|
142
|
+
origin of the Work and reproducing the content of the NOTICE file.
|
|
143
|
+
|
|
144
|
+
7. Disclaimer of Warranty. Unless required by applicable law or
|
|
145
|
+
agreed to in writing, Licensor provides the Work (and each
|
|
146
|
+
Contributor provides its Contributions) on an "AS IS" BASIS,
|
|
147
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
|
148
|
+
implied, including, without limitation, any warranties or conditions
|
|
149
|
+
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
|
150
|
+
PARTICULAR PURPOSE. You are solely responsible for determining the
|
|
151
|
+
appropriateness of using or redistributing the Work and assume any
|
|
152
|
+
risks associated with Your exercise of permissions under this License.
|
|
153
|
+
|
|
154
|
+
8. Limitation of Liability. In no event and under no legal theory,
|
|
155
|
+
whether in tort (including negligence), contract, or otherwise,
|
|
156
|
+
unless required by applicable law (such as deliberate and grossly
|
|
157
|
+
negligent acts) or agreed to in writing, shall any Contributor be
|
|
158
|
+
liable to You for damages, including any direct, indirect, special,
|
|
159
|
+
incidental, or consequential damages of any character arising as a
|
|
160
|
+
result of this License or out of the use or inability to use the
|
|
161
|
+
Work (including but not limited to damages for loss of goodwill,
|
|
162
|
+
work stoppage, computer failure or malfunction, or any and all
|
|
163
|
+
other commercial damages or losses), even if such Contributor
|
|
164
|
+
has been advised of the possibility of such damages.
|
|
165
|
+
|
|
166
|
+
9. Accepting Warranty or Additional Liability. While redistributing
|
|
167
|
+
the Work or Derivative Works thereof, You may choose to offer,
|
|
168
|
+
and charge a fee for, acceptance of support, warranty, indemnity,
|
|
169
|
+
or other liability obligations and/or rights consistent with this
|
|
170
|
+
License. However, in accepting such obligations, You may act only
|
|
171
|
+
on Your own behalf and on Your sole responsibility, not on behalf
|
|
172
|
+
of any other Contributor, and only if You agree to indemnify,
|
|
173
|
+
defend, and hold each Contributor harmless for any liability
|
|
174
|
+
incurred by, or claims asserted against, such Contributor by reason
|
|
175
|
+
of your accepting any such warranty or additional liability.
|
|
176
|
+
|
|
177
|
+
END OF TERMS AND CONDITIONS
|
|
178
|
+
|
|
179
|
+
APPENDIX: How to apply the Apache License to your work.
|
|
180
|
+
|
|
181
|
+
To apply the Apache License to your work, attach the following
|
|
182
|
+
boilerplate notice, with the fields enclosed by brackets "[]"
|
|
183
|
+
replaced with your own identifying information. (Don't include
|
|
184
|
+
the brackets!) The text should be enclosed in the appropriate
|
|
185
|
+
comment syntax for the file format. We also recommend that a
|
|
186
|
+
file or class name and description of purpose be included on the
|
|
187
|
+
same "printed page" as the copyright notice for easier
|
|
188
|
+
identification within third-party archives.
|
|
189
|
+
|
|
190
|
+
Copyright [yyyy] [name of copyright owner]
|
|
191
|
+
|
|
192
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
193
|
+
you may not use this file except in compliance with the License.
|
|
194
|
+
You may obtain a copy of the License at
|
|
195
|
+
|
|
196
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
197
|
+
|
|
198
|
+
Unless required by applicable law or agreed to in writing, software
|
|
199
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
200
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
201
|
+
See the License for the specific language governing permissions and
|
|
202
|
+
limitations under the License.
|
package/README.md
CHANGED
|
@@ -1,3 +1,113 @@
|
|
|
1
|
-
#
|
|
1
|
+
# 协作工作台 · Collaboration Workbench
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
DeepSeek Harness 的多 Agent 项目协作插件。通过自定义角色、项目群聊和任务调度,让不同职责的 Agent 在同一项目中协作,并保留执行记录与交付依据。
|
|
4
|
+
|
|
5
|
+
npm 包名:`dsh-collab-workbench`。
|
|
6
|
+
|
|
7
|
+
## 核心功能
|
|
8
|
+
|
|
9
|
+
- **人员与角色**:创建自定义人员,设置职责描述和模型,为项目组织不同分工。
|
|
10
|
+
- **项目群聊**:在群内沟通,通过 @ 指定成员;群组关联项目工作目录。
|
|
11
|
+
- **任务管理与自动调度**:指派成员、设置优先级及前置依赖,系统按可用执行额度安排任务。
|
|
12
|
+
- **执行记录与恢复**:保存输入、执行状态、结果摘要和证据;支持显式重试、停止及有界的中断恢复。
|
|
13
|
+
- **群内权限审批**:在可明确关联的请求上,展示宿主原生审批入口;无法安全关联时回到原会话处理。
|
|
14
|
+
- **交付与记忆**:支持管理员最终交付,以及个人和团队记忆。
|
|
15
|
+
- **版本更新**:关于页手动检查更新,发现新版时显示侧栏云朵提示;安装前需要用户确认。
|
|
16
|
+
|
|
17
|
+
## 安装
|
|
18
|
+
|
|
19
|
+
本包是 **DeepSeek Harness 插件**,不是可单独运行的应用。需要已安装并可正常运行的 Harness,以及可用的模型配置。
|
|
20
|
+
|
|
21
|
+
在 Harness 的插件管理功能中,以 npm 包名安装并启用:
|
|
22
|
+
|
|
23
|
+
```text
|
|
24
|
+
dsh-collab-workbench
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
也可让 Harness 中的助手协助安装,示例:
|
|
28
|
+
|
|
29
|
+
> 请从 npm registry 安装并启用 dsh-collab-workbench 插件。
|
|
30
|
+
|
|
31
|
+
安装结果若提示重启,请先重启 Harness,再刷新页面。普通的 `npm install` 只下载 npm 包,不等于已在 Harness 中启用插件。
|
|
32
|
+
|
|
33
|
+
若遇到下载失败,检查本机及 Harness profile 的 registry、作用域 registry 和网络设置;指定公共 registry 不一定覆盖本机已有的作用域配置。
|
|
34
|
+
|
|
35
|
+
## 快速开始
|
|
36
|
+
|
|
37
|
+
1. 打开侧栏中的“协作工作台”。
|
|
38
|
+
2. 创建人员,为每人填写名称、职责及模型配置。
|
|
39
|
+
3. 创建项目群,选择成员、管理员和项目工作目录。
|
|
40
|
+
4. 在群中描述目标,通过 @ 指定人员沟通;创建任务并设置指派和依赖。
|
|
41
|
+
5. 查看任务状态与成员结果,处理必要的决策或权限审批,由管理员核验并完成最终交付。
|
|
42
|
+
|
|
43
|
+
任务执行需要使用者提供适用的模型和工具权限。系统记录的“已完成”基于执行成员汇报和程序条件,不替代对代码、测试及成果的独立验收。
|
|
44
|
+
|
|
45
|
+
## 五种预设角色类型
|
|
46
|
+
|
|
47
|
+
创建人员时可选择下列模板,也可以使用自定义类型和职责:
|
|
48
|
+
|
|
49
|
+
| 类型 | 默认职责 |
|
|
50
|
+
| --- | --- |
|
|
51
|
+
| 研发负责人 | 接收需求、分解任务、协调进度、验收交付 |
|
|
52
|
+
| 架构师 | 技术方案设计、架构评审 |
|
|
53
|
+
| 高级工程师 | 代码实现、联调、自测 |
|
|
54
|
+
| 测试工程师 | 测试用例设计、质量验证 |
|
|
55
|
+
| 产品经理 | 需求澄清、验收标准定义、价值把关 |
|
|
56
|
+
|
|
57
|
+
这些是**可选模板**,安装不会自动创建五名人员。每位用户的人员、职责、模型、群组和任务由其自行配置;发布者本机的角色及工作数据不随包分发。
|
|
58
|
+
|
|
59
|
+
## 更新方式
|
|
60
|
+
|
|
61
|
+
在工作台侧栏底部打开“关于”,点击“检查更新”。
|
|
62
|
+
|
|
63
|
+
- npm registry 来源的安装可查询新版本;有更新时出现侧栏云朵和更新入口。
|
|
64
|
+
- 更新需用户点击并确认,不会自动安装。
|
|
65
|
+
- 安装成功后按提示重启 Harness,再确认当前版本。
|
|
66
|
+
- 本地 tgz 或目录安装不提供 npm 在线更新,也不会擅自切换来源。
|
|
67
|
+
- 网络或 registry 异常只影响检查;不会因此删除工作台数据。
|
|
68
|
+
|
|
69
|
+
验证升级需先从 npm 安装较早版本,例如 `dsh-collab-workbench@0.1.1`,再在发布 0.1.2 后检查更新。同版本安装不会显示“发现新版”。
|
|
70
|
+
|
|
71
|
+
## 数据与权限边界
|
|
72
|
+
|
|
73
|
+
工作台台账默认位于 `$DSH_HOME/dsh-workbench/state.json`,保存人员、群组、任务及执行状态;记忆保存在同一数据目录下。工作数据不上传到 npm。Agent 使用模型和工具时的数据处理仍由使用者的 Harness、模型服务及工具配置决定。
|
|
74
|
+
|
|
75
|
+
- 安装或更新插件不会把发布者的人员、任务或会话复制给使用者。
|
|
76
|
+
- 升级保留原数据目录;重要项目建议先备份工作台数据和项目文件。
|
|
77
|
+
- 调度不会提高 Agent 权限,工具调用仍受 Harness 的授权与文件访问规则约束。
|
|
78
|
+
- 恢复任务时应先核对已有成果;不保证任意外部操作或文件修改恰好执行一次。
|
|
79
|
+
- 同一任务的多个成员可能同时工作;插件不会自动为每人建立 Git worktree,需合理划分文件范围。
|
|
80
|
+
|
|
81
|
+
### 与 SOPAI 的关系
|
|
82
|
+
|
|
83
|
+
**不需要安装 SOPAI Skill,工作台可独立使用。**
|
|
84
|
+
|
|
85
|
+
若群组项目目录中已经存在唯一匹配的 `.sopai/runs/<工作项>/work_item.json`,插件可将工作台状态、执行摘要和证据同步到该工作项及复核首页。没有匹配工作项时跳过,不自动创建 SOPAI 项目,不要求以 SOPAI 流程启动任务。
|
|
86
|
+
|
|
87
|
+
## 版本记录
|
|
88
|
+
|
|
89
|
+
### 0.1.2
|
|
90
|
+
|
|
91
|
+
- 重写面向使用者的说明:补充安装、快速开始、角色模板、更新方式和数据权限边界。
|
|
92
|
+
- 修正公开版本说明,移除混杂在首页中的内部开发版本记录。
|
|
93
|
+
- 更新 npm 简介;本次不更改任务调度或界面运行逻辑。
|
|
94
|
+
|
|
95
|
+
### 0.1.1
|
|
96
|
+
|
|
97
|
+
首次正式公开发布,包含协作工作台及关于页版本检查、用户确认更新功能。
|
|
98
|
+
|
|
99
|
+
## 开发
|
|
100
|
+
|
|
101
|
+
以下命令用于开发工作目录;npm 安装包不包含测试目录:
|
|
102
|
+
|
|
103
|
+
```bash
|
|
104
|
+
npm run build
|
|
105
|
+
npm test
|
|
106
|
+
npm run check
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
Host 依赖由 Harness 提供。隔离测试使用宿主替身;测试通过不等于已完成使用者环境的真实模型、权限审批、明暗主题或冷启动验收。
|
|
110
|
+
|
|
111
|
+
## 许可证
|
|
112
|
+
|
|
113
|
+
Apache-2.0。原创 SVG 图标随包以同一许可证提供。
|