@lemoncat7/dsh-partner 2.8.3 → 2.8.4
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 +27 -406
- package/docs/bark-notifications.md +27 -0
- package/docs/concern-workflow.md +39 -0
- package/docs/releases/1.12.0.md +16 -0
- package/docs/releases/1.14.2.md +8 -0
- package/docs/releases/1.15.0.md +15 -0
- package/docs/releases/1.16.0.md +15 -0
- package/docs/releases/1.16.1.md +12 -0
- package/docs/releases/1.16.2.md +12 -0
- package/docs/releases/2.0.0.md +19 -0
- package/docs/releases/2.1.0.md +8 -0
- package/docs/releases/2.2.0.md +8 -0
- package/docs/releases/2.3.0.md +8 -0
- package/docs/releases/2.4.0.md +8 -0
- package/docs/releases/2.5.0.md +8 -0
- package/docs/releases/2.8.0.md +6 -0
- package/docs/releases/2.8.4.md +35 -0
- package/docs/releases/README.md +14 -0
- package/lib/agent-runtime.d.ts +1 -0
- package/lib/agent-runtime.d.ts.map +1 -1
- package/lib/agent-runtime.js +14 -5
- package/lib/agent-runtime.js.map +1 -1
- package/lib/api/features/push-api.d.ts +4 -0
- package/lib/api/features/push-api.d.ts.map +1 -0
- package/lib/api/features/push-api.js +47 -0
- package/lib/api/features/push-api.js.map +1 -0
- package/lib/api.d.ts +2 -0
- package/lib/api.d.ts.map +1 -1
- package/lib/api.js +5 -1
- package/lib/api.js.map +1 -1
- package/lib/autonomy.d.ts.map +1 -1
- package/lib/autonomy.js +5 -4
- package/lib/autonomy.js.map +1 -1
- package/lib/client-api.d.ts +1 -0
- package/lib/client-api.d.ts.map +1 -1
- package/lib/client-api.js.map +1 -1
- package/lib/client.d.ts.map +1 -1
- package/lib/client.js +1157 -638
- package/lib/client.js.map +4 -4
- package/lib/collaboration/composition.d.ts.map +1 -1
- package/lib/collaboration/composition.js +1 -0
- package/lib/collaboration/composition.js.map +1 -1
- package/lib/collaboration/ssh-task-access.d.ts +33 -0
- package/lib/collaboration/ssh-task-access.d.ts.map +1 -0
- package/lib/collaboration/ssh-task-access.js +26 -0
- package/lib/collaboration/ssh-task-access.js.map +1 -0
- package/lib/companions/removal.d.ts.map +1 -1
- package/lib/companions/removal.js +4 -0
- package/lib/companions/removal.js.map +1 -1
- package/lib/concern-domain.d.ts +2 -0
- package/lib/concern-domain.d.ts.map +1 -1
- package/lib/concern-domain.js.map +1 -1
- package/lib/concern-execution-notes.d.ts +2 -0
- package/lib/concern-execution-notes.d.ts.map +1 -1
- package/lib/concern-execution-notes.js +9 -2
- package/lib/concern-execution-notes.js.map +1 -1
- package/lib/concern-execution-receipt.d.ts.map +1 -1
- package/lib/concern-execution-receipt.js +3 -2
- package/lib/concern-execution-receipt.js.map +1 -1
- package/lib/concern-execution.d.ts.map +1 -1
- package/lib/concern-execution.js +1 -0
- package/lib/concern-execution.js.map +1 -1
- package/lib/concern-knowledge-source.d.ts +23 -0
- package/lib/concern-knowledge-source.d.ts.map +1 -0
- package/lib/concern-knowledge-source.js +30 -0
- package/lib/concern-knowledge-source.js.map +1 -0
- package/lib/concern-note-source.d.ts +2 -1
- package/lib/concern-note-source.d.ts.map +1 -1
- package/lib/concern-note-source.js +6 -2
- package/lib/concern-note-source.js.map +1 -1
- package/lib/concern-store.d.ts.map +1 -1
- package/lib/concern-store.js +5 -0
- package/lib/concern-store.js.map +1 -1
- package/lib/domain.d.ts +2 -0
- package/lib/domain.d.ts.map +1 -1
- package/lib/domain.js.map +1 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +18 -1
- package/lib/index.js.map +1 -1
- package/lib/notifications/bark-adapter.d.ts +9 -0
- package/lib/notifications/bark-adapter.d.ts.map +1 -0
- package/lib/notifications/bark-adapter.js +69 -0
- package/lib/notifications/bark-adapter.js.map +1 -0
- package/lib/notifications/push-config.d.ts +10 -0
- package/lib/notifications/push-config.d.ts.map +1 -0
- package/lib/notifications/push-config.js +79 -0
- package/lib/notifications/push-config.js.map +1 -0
- package/lib/notifications/push-credentials.d.ts +9 -0
- package/lib/notifications/push-credentials.d.ts.map +1 -0
- package/lib/notifications/push-credentials.js +16 -0
- package/lib/notifications/push-credentials.js.map +1 -0
- package/lib/notifications/push-domain.d.ts +66 -0
- package/lib/notifications/push-domain.d.ts.map +1 -0
- package/lib/notifications/push-domain.js +6 -0
- package/lib/notifications/push-domain.js.map +1 -0
- package/lib/notifications/push-observer.d.ts +19 -0
- package/lib/notifications/push-observer.d.ts.map +1 -0
- package/lib/notifications/push-observer.js +96 -0
- package/lib/notifications/push-observer.js.map +1 -0
- package/lib/notifications/push-service.d.ts +33 -0
- package/lib/notifications/push-service.d.ts.map +1 -0
- package/lib/notifications/push-service.js +228 -0
- package/lib/notifications/push-service.js.map +1 -0
- package/lib/notifications/push-state.d.ts +3 -0
- package/lib/notifications/push-state.d.ts.map +1 -0
- package/lib/notifications/push-state.js +23 -0
- package/lib/notifications/push-state.js.map +1 -0
- package/lib/observation-budget.d.ts +3 -2
- package/lib/observation-budget.d.ts.map +1 -1
- package/lib/observation-budget.js +5 -3
- package/lib/observation-budget.js.map +1 -1
- package/lib/observation-loop.d.ts +1 -0
- package/lib/observation-loop.d.ts.map +1 -1
- package/lib/observation-loop.js +129 -21
- package/lib/observation-loop.js.map +1 -1
- package/lib/observation-model-retry.d.ts +20 -0
- package/lib/observation-model-retry.d.ts.map +1 -0
- package/lib/observation-model-retry.js +48 -0
- package/lib/observation-model-retry.js.map +1 -0
- package/lib/observation-progress.d.ts +1 -0
- package/lib/observation-progress.d.ts.map +1 -1
- package/lib/observation-progress.js +24 -4
- package/lib/observation-progress.js.map +1 -1
- package/lib/observation-workflow.d.ts +40 -0
- package/lib/observation-workflow.d.ts.map +1 -0
- package/lib/observation-workflow.js +154 -0
- package/lib/observation-workflow.js.map +1 -0
- package/lib/recording-snapshot.d.ts.map +1 -1
- package/lib/recording-snapshot.js +12 -2
- package/lib/recording-snapshot.js.map +1 -1
- package/lib/storage/migrate-layout.d.ts.map +1 -1
- package/lib/storage/migrate-layout.js +2 -0
- package/lib/storage/migrate-layout.js.map +1 -1
- package/lib/storage/split-state.js +2 -2
- package/lib/storage/split-state.js.map +1 -1
- package/lib/store.d.ts.map +1 -1
- package/lib/store.js +2 -0
- package/lib/store.js.map +1 -1
- package/lib/ui/capability-editor.d.ts.map +1 -1
- package/lib/ui/capability-editor.js +3 -5
- package/lib/ui/capability-editor.js.map +1 -1
- package/lib/ui/channels-panel.d.ts.map +1 -1
- package/lib/ui/channels-panel.js +7 -1
- package/lib/ui/channels-panel.js.map +1 -1
- package/lib/ui/push-channels.d.ts +11 -0
- package/lib/ui/push-channels.d.ts.map +1 -0
- package/lib/ui/push-channels.js +28 -0
- package/lib/ui/push-channels.js.map +1 -0
- package/lib/ui/push-draft.d.ts +30 -0
- package/lib/ui/push-draft.d.ts.map +1 -0
- package/lib/ui/push-draft.js +13 -0
- package/lib/ui/push-draft.js.map +1 -0
- package/lib/ui/push-editor.d.ts +10 -0
- package/lib/ui/push-editor.d.ts.map +1 -0
- package/lib/ui/push-editor.js +99 -0
- package/lib/ui/push-editor.js.map +1 -0
- package/lib/ui/runtime-settings.d.ts +18 -0
- package/lib/ui/runtime-settings.d.ts.map +1 -0
- package/lib/ui/runtime-settings.js +25 -0
- package/lib/ui/runtime-settings.js.map +1 -0
- package/lib/ui/workspace-components.d.ts +7 -1
- package/lib/ui/workspace-components.d.ts.map +1 -1
- package/lib/ui/workspace-components.js +8 -4
- package/lib/ui/workspace-components.js.map +1 -1
- package/package.json +4 -1
package/README.md
CHANGED
|
@@ -1,423 +1,44 @@
|
|
|
1
1
|
# DSH Partner
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
面向 DeepSeek Harness 的长期 AI 伙伴与多渠道协作插件。每个伙伴有独立身份、预设、模型和能力授权,可按需启用记忆、持续关注与任务协作。
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
[](https://www.npmjs.com/package/@lemoncat7/dsh-partner)
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
## 功能
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
Matrix / Mattermost 私聊支持图片、文件、音频和视频收发;单条入站消息最多 8 个附件、合计 64 MB。音视频先作为文件保存或交付,不自动转写;Matrix 加密房间仍不支持。详见 [渠道说明](docs/direct-channels.md)。
|
|
18
|
-
|
|
19
|
-
## 2.5.0:长任务续接与看板等待协调
|
|
20
|
-
|
|
21
|
-
正式版,已验证宿主 **DSH 0.1.5-rc.1**,Node.js **^22.19.0 或 >=24.0.0**。长时间外部任务支持持久化一次性预约;绑定看板后等待期间不重复派发、不提前送验收,到期只检查外部结果,由看板恢复后续步骤。修复恢复会话首次工具装配时序,内置可选续接技能。详见 [2.5.0 发布说明](docs/releases/2.5.0.md)。
|
|
22
|
-
|
|
23
|
-
## 2.4.0:伙伴 MCP、能力管理与验收恢复
|
|
24
|
-
|
|
25
|
-
正式版,已验证宿主 **DSH 0.1.5-rc.1**。新增 MCP 服务与伙伴授权,能力修改自动保存,资源管理改为自适应弹窗;修复验收分配、自动验收恢复及凭据键随机保存失败。详见 [2.4.0 发布说明](docs/releases/2.4.0.md)。
|
|
26
|
-
|
|
27
|
-
## 2.3.0:统一记忆、用户概述与 Matrix 恢复
|
|
28
|
-
|
|
29
|
-
正式版,已验证宿主 **DSH 0.1.5-rc.1**。统一记忆列表与可纠正的用户概述,修复共享会话记忆和弹窗定位;Matrix 消息缺口支持分页补拉及网络自动重连。详见 [2.3.0 发布说明](docs/releases/2.3.0.md)。
|
|
30
|
-
|
|
31
|
-
## 2.2.0:渠道附件与合并接收
|
|
32
|
-
|
|
33
|
-
正式版,已验证宿主 **DSH 0.1.5-rc.1**。Matrix / Mattermost 支持附件收发,并合并紧邻的文字和附件,下载完成后再交给伙伴。详见 [2.2.0 发布说明](docs/releases/2.2.0.md)。
|
|
34
|
-
|
|
35
|
-
## 2.1.0:提问来源与渠道头像
|
|
36
|
-
|
|
37
|
-
正式版,已验证宿主 **DSH 0.1.5-rc.1**。提问按实际发起端返回;伙伴默认可修改自身 Matrix / Mattermost 渠道账号头像,无需能力开关。详见 [2.1.0 发布说明](docs/releases/2.1.0.md)。
|
|
38
|
-
|
|
39
|
-
## 2.0.0 大版本:规范存储与安全迁移
|
|
40
|
-
|
|
41
|
-
正式版,已验证宿主 **DSH 0.1.5-rc.1**;要求 Node.js **^22.19.0 或 >=24.0.0**。
|
|
42
|
-
旧宿主兼容分支保留,但未重新完成旧宿主端到端验证。
|
|
43
|
-
|
|
44
|
-
- 导航分为「功能 / 设置」,卡片设置归入设置。
|
|
45
|
-
- 伙伴私有配置、记忆、关注、通知与交付记录统一进入各自 `.partner/`;公共数据独立整理。
|
|
46
|
-
- 设置 → 基本设置 → 升级迁移:按存储版本顺序执行,先完整备份、校验,再切换版本并清理已核验的旧路径。
|
|
47
|
-
- 历史 `memory-backup-*`、`memory_back` 等原样归档;清理失败保留原文件,可单独重试。
|
|
48
|
-
- 卡片提示待迁移版本,点击进入设置;迁移期间断连自动重查状态,不重复提交。
|
|
49
|
-
|
|
50
|
-
**安装不会自动迁移。迁移后不可直接降级到不支持新版存储的插件,恢复前需备份新旧数据。**
|
|
51
|
-
429 项自动化测试通过;已完成浏览器恢复检查及生产迁移数据核验。
|
|
52
|
-
详见 [2.0.0 发布说明](docs/releases/2.0.0.md) 与 [存储迁移说明](docs/storage-migration.md)。
|
|
53
|
-
|
|
54
|
-
## 1.16.2 更新:渠道回复进度与卡片 Markdown
|
|
55
|
-
|
|
56
|
-
正式版,已验证宿主 **DSH 0.1.5-rc.1**;要求 Node.js **^22.19.0 或 >=24.0.0**。
|
|
57
|
-
|
|
58
|
-
Matrix / Mattermost 支持正在输入和可更新的回复进度消息,完成后更新为正式回复;悬浮卡片消息详情支持 Markdown,适配窄屏和深浅色。395 项自动化测试通过,并完成浏览器与部署检查。
|
|
59
|
-
|
|
60
|
-
详见 [1.16.2 发布说明](docs/releases/1.16.2.md) 与 [回复进度设计](docs/channel-reply-progress.md)。
|
|
61
|
-
|
|
62
|
-
## 1.16.1 更新:Matrix / Mattermost Markdown 适配
|
|
63
|
-
|
|
64
|
-
正式版,已验证宿主 **DSH 0.1.5-rc.1**;要求 Node.js **^22.19.0 或 >=24.0.0**。
|
|
65
|
-
|
|
66
|
-
Matrix 增加安全 HTML 富文本与文本兜底;Mattermost 保留原生 Markdown。长消息按块分段,超长代码补齐围栏、表格重复表头,普通回复与主动通知复用同一适配器。385 项测试通过,已部署验证。
|
|
67
|
-
|
|
68
|
-
详见 [1.16.1 发布说明](docs/releases/1.16.1.md) 与 [渠道消息格式](docs/channel-message-format.md)。
|
|
69
|
-
|
|
70
|
-
## 1.16.0 更新:多目标通知与 Matrix 加密提示
|
|
71
|
-
|
|
72
|
-
插件正式版,已验证宿主为 **DSH 0.1.5-rc.1**,需要 Node.js **^22.19.0 或 >=24.0.0**。
|
|
73
|
-
|
|
74
|
-
- 通知配置改为「通知 → 多选渠道 → 选择各渠道接收人」,可回到最近联系渠道与用户模式;普通回复仍回来源渠道。
|
|
75
|
-
- 多目标独立投递,重试跳过已确认成功的正文和附件部分,进度支持重启恢复。
|
|
76
|
-
- Matrix 检测到加密会话时直接在渠道卡片提示;仅未加密双人会话可配对,其他正常会话不受影响。
|
|
77
|
-
- 统一身份与渠道表单样式,改善手机布局和错误反馈。
|
|
78
|
-
|
|
79
|
-
详见 [1.16.0 发布说明](docs/releases/1.16.0.md) 与 [通知投递说明](docs/notification-delivery.md)。
|
|
80
|
-
|
|
81
|
-
## 1.15.0 更新:多渠道与共用主对话
|
|
82
|
-
|
|
83
|
-
插件正式版,运行验证环境为 **DSH 0.1.5-rc.1**,Node.js **^22.19.0 或 >=24.0.0**。DSH 宿主自身仍是 RC;旧版兼容分支保留,未重新完成全部旧宿主端到端验证。
|
|
84
|
-
|
|
85
|
-
- Matrix / Mattermost 账号密码或 Token 登录,房间 ID 可选,通过私聊配对并审批。
|
|
86
|
-
- 同一伙伴本地与所有渠道复用主对话,通知可指定目标或跟随最近渠道。
|
|
87
|
-
- 连接状态、配对请求自动刷新;复用统一配置弹窗,修复重复登录触发限流及错误提示。
|
|
88
|
-
- 单项关注受阻不再阻塞其他关注。
|
|
89
|
-
|
|
90
|
-
升级前备份数据;共享上下文是本版行为变化。详见 [1.15.0 发布说明](docs/releases/1.15.0.md) 与 [渠道使用说明](docs/direct-channels.md)。
|
|
91
|
-
|
|
92
|
-
## 1.14.2 更新:新版宿主适配与身份页统一
|
|
93
|
-
|
|
94
|
-
插件正式版,已在 DSH `0.1.5-rc.1` 验证新版主面板导航,保留旧版回退。身份页采用伙伴统一卡片与限定作用域的表单样式;不修改记忆、持续关注或工具授权。详见 [更新说明](docs/releases/1.14.2.md)。
|
|
95
|
-
|
|
96
|
-
## 1.13.0 更新:Skill 包导入与看板分工
|
|
97
|
-
|
|
98
|
-
正式版,适配 DSH **0.1.2-rc.1**,需要 Node.js **^22.19.0 或 >=24.0.0**。
|
|
99
|
-
|
|
100
|
-
- Skill 市场支持 ZIP 和目录导入,保留 scripts、references、assets 等配套文件;使用已有弹窗与表单样式,安装后仍需单独为伙伴启用。
|
|
101
|
-
- 校验路径、文件数量、解压大小和 CRC,拒绝链接、损坏包及重复路径;不运行安装脚本,不覆盖已有技能。
|
|
102
|
-
- 修复可信 inline Skill 的 run 错误创建临时会话的问题,保留当前伙伴的工具上下文;fork Skill 继续隔离运行。
|
|
103
|
-
- 内置任务分解 Skill 升级为 1.6.0,明确临时子 Agent 不能替代看板委派,调研、验证和设计按实际交付进入原需求。不新增前置 Skill 或全局工具门禁。
|
|
104
|
-
- 314 项自动化测试及桌面、手机、平板导入验证通过;已有内置 Skill 在启动时升级,保留启用绑定,本地自定义 Skill 不被覆盖。
|
|
105
|
-
|
|
106
|
-
## 1.12.0 更新:记忆质量与工作区
|
|
107
|
-
|
|
108
|
-
正式版,适配 DSH **0.1.2-rc.1**,需要 Node.js **^22.19.0 或 >=24.0.0**。
|
|
109
|
-
|
|
110
|
-
- 「持续关注」成为独立标签页;记忆页按画像、记忆和回顾组织,设置使用统一弹窗,支持手机、平板与桌面。
|
|
111
|
-
- 记忆候选验证用户原话依据,区分明确事实、稳定偏好、一次性过程和持续关注,召回仅保留相关内容。
|
|
112
|
-
- 提炼任务持久化、后台执行、失败退避重试;已保存提炼结果复用,不因后续写入或通知失败重新调用模型。
|
|
113
|
-
- 提供场景摘要、对话历史、处理状态与经验审核;经验仅审核后导出,不自动安装 Skill 或扩大权限。
|
|
114
|
-
- 保留已有数据与权限,不自动清理旧记忆。当前仍按有效对话逐轮提炼,未增加 token 用量统计或短消息合批。
|
|
115
|
-
|
|
116
|
-
详见 [发布说明](docs/releases/1.12.0.md) 和 [记忆设计与边界](docs/memory-quality.md)。
|
|
117
|
-
|
|
118
|
-
## 1.11.2 更新
|
|
119
|
-
|
|
120
|
-
适配 DSH **0.1.2-rc.1**。
|
|
121
|
-
|
|
122
|
-
- 明确要求关注可直接保存到「在意的事」,返回保存结果及关注 ID;支持逐项提交多个事项,隐式关注继续使用筛选策略。
|
|
123
|
-
- 区分变化驱动的关注与按时执行、周期性交付的定时任务;记忆关闭时不以定时任务替代关注。
|
|
124
|
-
- 保留记忆权限和已有任务,不自动迁移或删除现有定时任务。
|
|
125
|
-
|
|
126
|
-
## 1.11.1 更新
|
|
127
|
-
|
|
128
|
-
适配 DSH **0.1.2-rc.1**。修复自定义绳纹在拖动时滑动穿帮:采用固定分段的材质坐标,纹理跟随绳子移动、弯曲和拉伸;保留帧率上限与静止休眠。
|
|
129
|
-
|
|
130
|
-
## 1.11.0 更新:挂卡自定义
|
|
131
|
-
|
|
132
|
-
适配 DSH **0.1.2-rc.1**。本版同时包含下述整份计划与逐项验收改进。
|
|
133
|
-
|
|
134
|
-
- 「卡片设置」支持绳长 60%–160%、自定义绳子纹理和正面图案;纹理附着在绳子上,随移动、弯曲和拉伸变化,保留边缘与编织细节。
|
|
135
|
-
- 图片在本机等比例处理,不上传服务器;支持最大 5 MB 的 PNG/JPEG/WebP。正面图片最长边保留至 1536 像素,绳纹至 256 像素;优先无损保存,复杂图片使用有大小上限的压缩。
|
|
136
|
-
- 清晰度滑块在 0%–100% 间调整卡片绘制精度,保留原有高光、帧率上限和静止休眠。旧版已压缩图片建议重新上传,高清不能恢复原图缺失的细节。
|
|
137
|
-
- 保存后生效,仅保存到当前浏览器;旧配置自动补全默认值。
|
|
138
|
-
|
|
139
|
-
## 1.11.0 更新:整份计划与逐项验收
|
|
140
|
-
|
|
141
|
-
分工策略仍由“任务拆解与看板推进” Skill 定义;没有额外前置 Skill,也不强制所有问题都拆解。
|
|
142
|
-
|
|
143
|
-
- `partner_requirements · submit_plan` 一次保存并提交整组任务:依赖、授权或参数任一不合法,整份不保存。网络重试使用同一 `submissionKey` 和同一载荷,不重复创建。
|
|
144
|
-
- 任务可选填写验收清单,执行者提供证据,验收者逐项核验;打回缺项进入下一次执行上下文。这里的“核验通过”是伙伴/人工判断,不是程序自动证明。
|
|
145
|
-
- 相同资源声明在看板内互斥,独立任务保持并发;列表显示具体等待原因,详情查看证据。旧任务和逐项创建方式继续兼容。
|
|
146
|
-
|
|
147
|
-
工具调用示例(伙伴 ID 替换为授权目录中的真实 ID):
|
|
148
|
-
|
|
149
|
-
```json
|
|
150
|
-
{
|
|
151
|
-
"action": "submit_plan",
|
|
152
|
-
"submissionKey": "research-delivery-01",
|
|
153
|
-
"title": "整理调研并交付结论",
|
|
154
|
-
"autoRun": true,
|
|
155
|
-
"completeScope": true,
|
|
156
|
-
"tasks": [
|
|
157
|
-
{ "key": "research", "title": "整理来源", "assigneeCompanionId": "researcher-id", "acceptanceCriteria": ["文档保留原始来源链接"] },
|
|
158
|
-
{ "key": "summary", "title": "汇总结论", "assigneeCompanionId": "writer-id", "dependsOn": ["research"], "acceptanceCriteria": ["结论可追溯至已验收资料"] }
|
|
159
|
-
]
|
|
160
|
-
}
|
|
161
|
-
```
|
|
162
|
-
|
|
163
|
-
验收伙伴省略时默认创建伙伴。`autoRun` 默认 true;仅规划设 false。`completeScope` 默认 false,只在整个目标范围都已安排时设 true;阶段工作不等于整个需求完成。续做原需求使用 `requirementId/expectedRevision`,必要时先由负责人 `reopen`,不要另建同名需求。
|
|
164
|
-
|
|
165
|
-
回执返回 `replayed=true`、`execution=unchanged` 表示取回现有任务而非重启;`removed` 表示旧工作已删除。资源键如 `repo:team/api` 仅约束本看板内一致的声明,不是操作系统锁或额外权限。详见 [架构说明](docs/architecture.md)。
|
|
166
|
-
|
|
167
|
-
## 兼容性
|
|
168
|
-
|
|
169
|
-
正式版 `1.16.1` 已在 DeepSeek Harness `0.1.5-rc.1` 镜像验证,适配新版主面板导航,并保留 `0.1.2-rc.1` 接口回退。需要 Node.js `^22.19.0` 或 `>=24.0.0`。插件的正式发布不表示 DSH 宿主已结束 RC 阶段。
|
|
170
|
-
|
|
171
|
-
### 1.10.6:明确附件交付与角度高光
|
|
172
|
-
|
|
173
|
-
- 新增 `partner_send_attachment`,伙伴明确指定图片或文档路径,会话提供原生图片内容/下载链接,绑定渠道时发送真实文件;失败按交付 ID 重试,已确认成功的不重复发送。
|
|
174
|
-
- 普通 Markdown 引用不再隐式发送附件;内部看板与验收不逐项通知渠道。仅支持当前会话目录内真实文件,远端文件需先下载,单件上限 64 MB。
|
|
175
|
-
- 挂卡高光跟随真实倾角,不再循环扫光;保留图片原色、图片自适应及静止休眠。
|
|
176
|
-
|
|
177
|
-
详见 [1.10.6 发布说明](docs/releases/1.10.6.md)。
|
|
178
|
-
|
|
179
|
-
### 1.10.3 修复:看板需求版本冲突
|
|
180
|
-
|
|
181
|
-
- 拆开需求范围/控制版本与完整进度版本,新增子任务、执行进度和评论不再使普通需求操作立即失效。
|
|
182
|
-
- 真正修改范围、分配或删除任务仍需核对新版本;最终归档和任务验收保持严格校验,过时汇总不会投递渠道。
|
|
183
|
-
- 冲突返回当前需求内容、状态、版本和处理建议;创建子任务同时返回所属需求版本,减少反复查询。
|
|
184
|
-
- 保持现有界面和数据,兼容旧记录及服务重启。构建及 241 项回归测试通过。
|
|
185
|
-
|
|
186
|
-
详见 [1.10.3 发布说明](docs/releases/1.10.3.md)。
|
|
187
|
-
|
|
188
|
-
### 1.10.0 更新:需求看板与统一交付
|
|
189
|
-
|
|
190
|
-
- 看板以需求组织子任务,区分进行中和已归档;完成分工后提交规划,全部子任务验收通过后由负责人汇总、归档并向需求来源渠道统一通知,不逐任务播报。
|
|
191
|
-
- 需求详情集中展示目标、进度、最终结论和交付记录;支持人工收尾、调整负责人及重试。任务阶段按需展开,空阶段不占位,复用现有字体、材质与弹窗,适配手机及平板横屏。
|
|
192
|
-
- 删除任务幂等处理,取消关联执行并忽略迟到结果;依赖者暂停,重新确认需求范围。归档结果保留交付快照,旧任务不自动猜测归属或清空。
|
|
193
|
-
- 汇总及投递失败持久化退避重试,重启继续;通知失败不会重新生成已保存的总结。人工从看板创建的需求不误发到其他渠道。
|
|
194
|
-
- 内置任务规划 Skill 升级至 `1.4.0`,明确需求归属及整体收尾;强调专业分工,区分伙伴技能与原生技能加载,不增加前置 Skill 或执行路由门禁。
|
|
195
|
-
- 包含渠道只提取最终答复、生成文件真实路径解析及挂卡数字位置优化。220 项测试和 60 个任务的六组响应式/主题交互验证通过。
|
|
196
|
-
|
|
197
|
-
操作说明及兼容边界见 [1.10.0 发布说明](docs/releases/1.10.0.md)。
|
|
198
|
-
|
|
199
|
-
### 1.9.2 修复:中断后的待验收任务恢复
|
|
200
|
-
|
|
201
|
-
- 执行伙伴提前标记待验收、但尚未提交结果时,服务重启或暂时网络故障后可继续恢复交付,不再误取消执行。
|
|
202
|
-
- 对已被旧调度器误取消的记录,校验停止记录、负责人、当前授权和是否有更新的执行后定向恢复;有结果、已验收、正常取消或已结束的任务不会因此重跑。
|
|
203
|
-
- 启动时先注册结果通知再启动恢复队列,避免快速完成的恢复任务漏发通知;恢复前仍检查依赖和并发限制。
|
|
204
|
-
- 渠道只保留创建后的分工确认与验收通过后的最终交付;核验、重试、accept 等内部回调静默,自动目标续轮也不能绕过过滤。真正受阻时仍可请求用户介入,用户主动询问进度仍正常回答。
|
|
205
|
-
- 已保存的最终结果先投递渠道,再创建内部进度回调,二者错误独立记录。搭配知识库 `2.6.0` 的持久化回写队列,会话结束只等待快照入队,不等待知识提取或写入完成;回写失败在原回答下单独重试,不重发渠道消息。
|
|
206
|
-
|
|
207
|
-
### 1.9.1 更新:伙伴删除与目录清理
|
|
208
|
-
|
|
209
|
-
- 删除确认绑定当前伙伴,切换伙伴时重置;删除中防止重复操作,成功返回总览,不再把下一位伙伴置于删除确认状态。
|
|
210
|
-
- 页面明确确认后,移除伙伴专属 `partners/<id>` 目录及文件、工作区注册和关联配置;共享目录、链接根目录与挂载点拒绝自动清理,不扫描历史遗留目录。
|
|
211
|
-
- 删除期间阻止新会话、后台任务与执行队列重新占用目录;运行中的伙伴、已绑定渠道与最后一个伙伴受到保护,清理失败保留身份供重试。
|
|
212
|
-
- DSH 当前公开接口不支持永久清理全局原始会话日志,因此这些日志仍保留;目录删除不是跨存储事务,文件删除失败时可能已有部分文件被移除。
|
|
213
|
-
- 180 项自动化测试及手机、横屏、桌面深浅色共 6 组隔离交互验证通过。
|
|
214
|
-
|
|
215
|
-
### 1.9.0 更新:主动任务拆解与执行
|
|
216
|
-
|
|
217
|
-
- 匹配已启用的拆解 Skill 和授权伙伴专长时,主动拆分真实交付物、安排负责人及依赖,不要求用户反复说“使用 Skill”或逐个 @;简单问答和明确只规划的请求不自动执行。
|
|
218
|
-
- 工具创建任务并指定负责人后默认提交执行;前置任务验收通过后,后续任务自动接续。支持 `autoRun=false` 仅规划;已有历史任务不会因为升级突然启动。
|
|
219
|
-
- 执行队列持久化、重复提交去重、启动前复核授权,最多三个任务执行并发;提交后先返回分工摘要,不阻塞等待所有结果。
|
|
220
|
-
- 看板改为阶段内横向卡片排列、按需展开与整页滚动,移动端使用紧凑筛选栏,保留现有配色。
|
|
221
|
-
- 169 项自动化测试通过;60 条任务的隔离浏览器检查覆盖手机、横屏与桌面、深浅色共 6 组场景,包括筛选、展开、详情和提交模式。
|
|
222
|
-
|
|
223
|
-
### 1.8.3 更新
|
|
224
|
-
|
|
225
|
-
- 伙伴身份、能力、Skill 和协作配置保存后,在下一轮执行前统一注册到会话;覆盖已有浏览器会话和历史会话恢复,不在正在执行的轮次中重组工具,也不唤醒闲置会话。高权限管理工具继续在调用时检查当前授权。
|
|
226
|
-
- 「应用能力组合」增加保存中、成功和失败反馈,成功显示「已保存,下一轮生效」;防止重复提交,失败保留草稿,区分保存失败与保存后刷新失败。
|
|
227
|
-
- 新消息轻摆转向文字面,仅在文字面扫光两次;结束及阅读后不自动恢复图案面,不锁定用户手动翻面。
|
|
228
|
-
- 挂点旁增加小数字未读标记,超过 99 显示 99+,全部已读后隐藏;支持深浅色与减少动态效果,不增加常驻动画或渲染循环。
|
|
229
|
-
- 保留自定义图案、现有卡片材质、24/30/60 FPS 与休眠策略,不改 DSH 源码或伙伴数据。162 项自动化测试及隔离浏览器交互回归通过。
|
|
230
|
-
|
|
231
|
-
### 1.8.2 更新
|
|
232
|
-
|
|
233
|
-
- 修复保存伙伴权限后,已有会话未立即刷新管理工具的问题;仅重组已活动的空闲会话,执行中拒绝修改,不唤醒其他历史会话。
|
|
234
|
-
- 修复桌面覆盖层有偏移时挂点、SVG 绳子和 WebGL 卡片脱节:重新布局时测量固定定位层原点,统一坐标换算;挂点拖动和键盘移动使用容器本地坐标。
|
|
235
|
-
- 不改变绳子物理、卡片材质和帧率设置,不在逐帧渲染中测量布局。已覆盖偏移容器、拖拽、窗口尺寸变化、移动端与完整挂饰回归。
|
|
236
|
-
- 伙伴管理(高权限)仍默认关闭,仅用户可授予或撤回;知识库挂载管理需配合 `dsh-knowledge 2.4.0+`。
|
|
237
|
-
|
|
238
|
-
### 1.7.1 更新
|
|
239
|
-
|
|
240
|
-
- 减弱伙伴挂卡的照明与大面积泛白反射,保留清亮覆膜高光和图案对比度。
|
|
241
|
-
- 正反卡面共用材质配置;不改变自定义图片、拖拽回弹、翻面、消息提醒和帧率设置,不增加离屏折射渲染。
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
### 1.7.0 更新
|
|
245
|
-
|
|
246
|
-
- 主界面新增可拖拽、拉伸回弹和翻面的伙伴挂饰;拖动顶部挂点调整位置,适配窄屏并保留位置。
|
|
247
|
-
- 伙伴回复、看板与定时任务的终态消息汇入持久化消息收件箱。消息显示在卡片内侧,点击阅读并跳转来源;新消息轻摆转正、短暂闪光,不自动弹窗遮挡对话。
|
|
248
|
-
- 伙伴面板「定时任务」下方新增「卡片设置」:挂饰开关、三种绳子材质、自定义颜色、正面图片及 24/30/60 FPS(默认 30)。点击「保存设置」生效,仅保存在当前浏览器,不跨设备共享。
|
|
249
|
-
- 图片在本机裁切压缩,不上传服务器;支持 PNG/JPEG/WebP,最大 5 MB。绳子小样、预览和实际挂饰共用视觉逻辑。
|
|
250
|
-
- 绘制与固定步长物理计算分离;静止或拉住稳定后休眠,后台停止渲染和轮询,关闭时释放画布与物理场景。设备性能不足时实际帧率可能低于设定值;无 WebGL 时保留普通消息入口。
|
|
251
|
-
- 渲染依赖打入独立同源资源,无需另装 Three.js 或 Rapier;第三方许可见 [THIRD_PARTY_LICENSES.md](docs/THIRD_PARTY_LICENSES.md)。
|
|
252
|
-
|
|
253
|
-
### 1.6.1 更新
|
|
254
|
-
|
|
255
|
-
- 统一伙伴工作区的分层材质,保留透明工作区底层。
|
|
256
|
-
- 重新整理手机上栏:伙伴切换、新建和工作区导航采用紧凑的两排布局;修复重复箭头、横屏挤压及桌面误显示手机控件。
|
|
257
|
-
- 伙伴切换菜单使用插件自有样式和不透明底色,避免主题覆盖后正文透入;支持键盘导航、选中反馈、长列表滚动及退出焦点恢复。
|
|
258
|
-
- 通过 112 项测试,并覆盖深浅色、7 种宽度和实际 DSH 页面检查。
|
|
259
|
-
|
|
260
|
-
## 当前能力
|
|
261
|
-
|
|
262
|
-
- 伙伴创建、编辑与删除
|
|
263
|
-
- 新伙伴只建立身份和本地会话;能力、长期记忆、每日回顾、心跳、渠道与伙伴间授权默认全部关闭
|
|
264
|
-
- Agent scoped 身份提示,仅影响该伙伴创建的 Agent
|
|
265
|
-
- 为伙伴选择 Agent Preset、提供方与模型
|
|
266
|
-
- 微信 iLink Bot 扫码连接
|
|
267
|
-
- `bot_token` 只保存到 DSH Credential Store,管理 API 和浏览器均不返回
|
|
268
|
-
- 微信渠道启用、停用、断线退避与运行状态
|
|
269
|
-
- 私聊首次联系配对审批
|
|
270
|
-
- `微信机器人 + 联系人` 独立 Session 路由
|
|
271
|
-
- DSH Agent 完整回复后回发微信,并保留 iLink `context_token`
|
|
272
|
-
- 微信图片与文档双向收发:图片进入 DSH 原生附件上下文,文档安全保存到伙伴独立工作目录
|
|
273
|
-
- 伙伴可把工作目录内生成的图片、PDF、Office 文档及常用文本文件回发微信
|
|
274
|
-
- DSH 运行中发起选择题或自由提问时同步到微信;联系人回复序号、选项文字或自定义答案后,原 Agent 继续执行
|
|
275
|
-
- 微信在伙伴忙碌时遵循 DSH 全局 `ui-conversation.busyEnter`:`steer` 插入当前轮,`queue` 排入下一轮
|
|
276
|
-
- 按伙伴和微信联系人双重隔离的完整对话归档、每日回顾与结构化长期记忆
|
|
277
|
-
- 逐轮记忆提炼使用有界的专用上下文,只发送当前轮、相关记忆的精简视图与最近证据;每日终审保留当天每轮的双向代表片段,未进入提示的旧数据仍由存储层完整保留
|
|
278
|
-
- 从明确对话中形成可审计的联系人画像;可靠画像作为会话理解基线,偏好、任务、事件、关系与短期情绪信号继续按当前话题召回
|
|
279
|
-
- 人物画像按联系人隔离,使用固定长期槽位和证据阈值;用户可查看来源、手动修正或删除,已确认内容不会再被自动提炼覆盖
|
|
280
|
-
- 每日终审只保存有证据的记忆关系;强关系可把一跳关联记忆补入当前话题召回,并在关系审计中解释召回依据
|
|
281
|
-
- 冲突关系不会被合并成用户事实;仅在当前话题相关时提示伙伴指出差异并请求确认,所有关系仍严格按联系人隔离
|
|
282
|
-
- 对话提炼与每日终审会识别尚未闭环、反复不满意、采用临时方案或正在等待外部结果的「伙伴挂念」;长期记忆只提供理解背景,不直接生成巡检任务
|
|
283
|
-
- 伙伴会话额外提供一个紧凑的 `partner_concern_suggest` 候选工具;它只在伙伴自己的会话且长期记忆开启时可见,不会增加普通 DSH 会话的工具提示开销
|
|
284
|
-
- 工具候选和轮后提炼共用确定性准入策略:必须引用当前用户原话,满足优先级、置信度和综合分数门槛;每批最多新增两条,同主题只更新不重复创建
|
|
285
|
-
- 用户也可以自然地交代一件需要留意的事,并通过「继续留意、提高关注、已经解决、别管这个」控制它的生命周期;明确说出目标的“停止关注”会确定性更新状态,不依赖模型事后猜测
|
|
286
|
-
- 伙伴从记忆提炼或每日终审中自动新建关注后,会在当前伙伴会话中发出一次创建通知,并同步到对应的微信渠道,方便及时检查或移除
|
|
287
|
-
- 心跳只查询到期挂念,使用独立内存推理作用域观察上次检查后的变化;无到期事项时不会调用模型
|
|
288
|
-
- 心跳根据挂念选择当前可用的安全来源,并在来源内部逐层缩小范围:知识库按“找库→库内搜索→读取条目”,本地按“确定范围→定位文件/内容→读取证据”;发现阶段有独立软截止、单工具超时和整轮安全上限
|
|
289
|
-
- 关注可使用来源会话已有的 bash 工具完成文档要求的多步检查,保留 DSH 原有审批,不另行实现命令执行或自动授权。
|
|
290
|
-
- `@文件` 仅作为只读依据;记录写权限只覆盖用户在“需要记录的地方”手动选择的现存文件或笔记,不能创建其他文件或触碰伙伴私有存储
|
|
291
|
-
- 发现结果先保存为 Observation,经过去重、相关性、新鲜度、可行动性和近期打扰历史的确定性评分,再决定静默记下、下次顺手一提、进入伙伴动态或主动通知
|
|
292
|
-
- 心跳硬性排除伙伴记忆、挂念数据库、会话归档及其备份,不向无关主题扩散
|
|
293
|
-
- 未送达的重要提醒会保留并安全补发;普通对话开始时只召回与当前消息相关的延迟提及
|
|
294
|
-
- 每次实际巡察结束后在原伙伴会话写入一条可折叠的活动说明,便于核验工具、结果摘要、最终判断和通知状态,不生成伙伴回复气泡
|
|
295
|
-
- 可配置静默时段、检查间隔、每日通知上限、失败退避和手动检查;失败后不会早于正常检查间隔重试
|
|
296
|
-
- 修改伙伴身份或能力时清理该伙伴的渠道 Session,防止新旧人格串联
|
|
297
|
-
- Windows、macOS、Linux 兼容的原子状态写入
|
|
298
|
-
- 兼容 `SKILL.md` 的伙伴 Skill:安装与伙伴启用关系分离,支持在管理台创建本地 Skill、`inline` / `fork` 上下文、`allowed-tools` 权限收缩、校验和审计
|
|
299
|
-
- Skill 市场的“已安装 → 导入 Skill”支持本机 ZIP 和目录选择,完整保留脚本、参考资料与二进制资源。每次导入一个包含 `SKILL.md` 的技能,支持外层包装目录;最多 512 个文件、32 MiB 总量、单文件 8 MiB,`SKILL.md` 为 512 KiB。其他压缩格式请先解压。拒绝越界路径、链接、冲突文件及损坏压缩包;不会执行安装脚本或自动为伙伴启用,也不覆盖已有 Skill。
|
|
300
|
-
- 可信 `inline` Skill 的 `run` 会返回当前会话应应用的指令及资源目录,不再错误创建缺少伙伴工具的临时会话;只有 `fork` 使用隔离执行。内置分解 Skill 1.6.0 明确区分原生子 Agent 与持久化看板委派:重新设计、调研与可行性验证按真实产出进入同一需求,不能以临时并行研究替代看板分工。仍不新增前置 Skill 或全局工具门禁。
|
|
301
|
-
- 内置精选 Skill,以及与 nomifun 当前一致的 ClawHub、LoopHub、SkillHub 三个公开 Skill 榜单;支持统一 HTTP 代理、连接测试、受限 ZIP 安装与兼容 JSON 索引的团队源,非可信市场强制使用隔离临时会话
|
|
302
|
-
- 人与伙伴共享的任务看板:收集箱、待开始、进行中、待验收、受阻、已完成六个状态,带优先级、负责人、乐观并发 revision 与有界活动记录
|
|
303
|
-
- 有向伙伴授权和真实委派:在 A 的能力页勾选 B 后,A 才能查看 B 的公开能力并通过 `@B` 委派;用户本人可从全局看板直接指派任意伙伴,只共享任务信封、公开能力和结果摘要
|
|
304
|
-
- 伙伴会话内提供 `partner_skill`、`partner_task_board`、`partner_collaborate`、`partner_schedule`,以及按能力显式授权的 `partner_companions` 作用域工具,不污染普通 DSH 会话的工具表;“创建伙伴”工具只填写身份,新伙伴默认没有能力,后续由用户或已获高权限管理授权的伙伴配置
|
|
305
|
-
- 可单独授权 `partner_companion_manage`,管理其他伙伴的身份、能力、Agent Preset/模型、Skill、单向协作关系及知识库挂载;默认关闭,不能修改自己或转授本管理权限
|
|
306
|
-
- 伙伴定时任务支持间隔与每日时间、跳过或排队重叠、手动执行和重启恢复;每次使用新临时会话,完成后默认销毁,也可选择保留以便审计
|
|
307
|
-
- Skill fork、伙伴委派和定时任务共用同一个有界临时执行器,统一处理模型/预设组合、并发上限、超时、工具权限、运行记录与会话回收
|
|
308
|
-
|
|
309
|
-
心跳默认关闭,升级后不会突然主动发送消息。群聊策略和多渠道适配尚未开放。
|
|
310
|
-
|
|
311
|
-
## 伙伴管理(高权限)
|
|
312
|
-
|
|
313
|
-
在目标管理者的「能力 → 高权限管理」中开启「伙伴管理(高权限)」。仅授予可信伙伴;普通协作勾选不等于管理授权。本能力可以配置其他伙伴,但不开放其私有会话、记忆、渠道或凭据,也不能授予或撤回 `administration` 本身。
|
|
314
|
-
|
|
315
|
-
开启后可直接交代:“把研究员的身份改成资料核验助手,使用研究预设,启用研究 Skill,允许访问核验员,并挂载项目知识库。”模型通过作用域工具 `partner_companion_manage` 执行:
|
|
316
|
-
|
|
317
|
-
- `catalog → inspect → update`:选择现有预设、模型、已安装 Skill 和伙伴,先读取 `revision`,再提交所需字段。未提供的字段不变;能力、Skill 和协作数组会替换对应列表,空数组清空。工具组合沿用 DSH Agent Preset,不直接修改全局工具权限。
|
|
318
|
-
- `knowledge_catalog → knowledge_inspect → knowledge_configure`:一次配置一个库,覆盖该伙伴默认项目及已有会话,让默认目录中的新会话也能继承。挂载设置是完整配置,省略项默认为开启召回、审核回写、空标签和空提取规则;停用使用 `enabled: false`,不删除知识内容。
|
|
319
|
-
|
|
320
|
-
知识库挂载要求同时安装包含 `dshKnowledgeMountManagement` 接口的知识库插件;旧版或未安装时会明确提示,身份、能力等管理仍可用。挂载通过知识库当前选中的本地或远程后端执行,远程只读令牌不能修改挂载,不会绕过认证或退回本地写入。
|
|
321
|
-
|
|
322
|
-
目标伙伴执行中拒绝管理工具修改,配置过期须重新读取。配置保存成功后,身份、能力、Skill 与协作关系在下一轮执行前注册,无需为了注入工具重开会话;Preset 和模型作为会话默认配置,不覆盖已有会话的选择。此权限不自动开启任何伙伴的记忆、心跳或渠道。
|
|
9
|
+
- 伙伴身份、Agent Preset、模型与能力管理。
|
|
10
|
+
- 微信 iLink Bot、Matrix、Mattermost 私聊,支持附件与交互提问。
|
|
11
|
+
- Bark 单向结果通知,支持多个服务器及设备、持久投递队列和重试。
|
|
12
|
+
- 长期记忆、人物画像、每日回顾和持续关注,可查看依据、状态与失败原因。
|
|
13
|
+
- 任务看板、伙伴委派、定时任务与长任务续接。
|
|
14
|
+
- Skill 市场、导入与按伙伴启用,以及 HTTP / stdio MCP 服务授权。
|
|
15
|
+
- 伙伴挂饰、消息收件箱、通知与交付重试。
|
|
323
16
|
|
|
324
17
|
## 安装
|
|
325
18
|
|
|
326
|
-
|
|
327
|
-
dsh plugin --profile web add @lemoncat7/dsh-partner
|
|
328
|
-
```
|
|
329
|
-
|
|
330
|
-
本地压缩包:
|
|
331
|
-
|
|
332
|
-
```bash
|
|
333
|
-
dsh plugin --profile web add ./lemoncat7-dsh-partner-<version>.tgz
|
|
334
|
-
```
|
|
335
|
-
|
|
336
|
-
重启对应 DSH profile 后,左侧「空间」上方会出现「伙伴」。打开伙伴面板,创建或选择伙伴,再进入「微信」扫码。
|
|
337
|
-
|
|
338
|
-
## 默认配置
|
|
339
|
-
|
|
340
|
-
```yaml
|
|
341
|
-
- insert:
|
|
342
|
-
- id: partner
|
|
343
|
-
name: '@lemoncat7/dsh-partner'
|
|
344
|
-
config:
|
|
345
|
-
statePath: !!js dshHomePath('partner/state.json')
|
|
346
|
-
exposeWeb: true
|
|
347
|
-
apiPrefix: /partner-local/v1
|
|
348
|
-
defaultCwd: ''
|
|
349
|
-
autoStartChannels: true
|
|
350
|
-
```
|
|
351
|
-
|
|
352
|
-
`defaultCwd` 为空时使用 DSH 进程当前工作目录,以兼容桌面端和 Docker。可按部署情况显式设为真实存在的绝对路径。
|
|
353
|
-
|
|
354
|
-
## 微信流程
|
|
355
|
-
|
|
356
|
-
1. 插件请求 `/ilink/bot/get_bot_qrcode?bot_type=3`。
|
|
357
|
-
2. 页面每两秒检查二维码状态,确认后凭据直接进入 Credential Store。
|
|
358
|
-
3. 后台通过 `/ilink/bot/getupdates` 长轮询接收消息。
|
|
359
|
-
4. 未授权联系人只会创建配对请求。
|
|
360
|
-
5. 批准后,为该联系人创建或恢复独立 DSH Agent。
|
|
361
|
-
6. 收到图片时,插件通过微信 CDN 下载并解密媒体,保存到伙伴工作目录,同时作为 DSH 原生图片附件交给 Agent;文档保存后以安全路径交给 Agent。
|
|
362
|
-
7. Agent 使用伙伴身份和所选 Preset 运行,最终文本通过 `/ilink/bot/sendmessage` 返回微信;回复中明确引用的工作目录文件会加密上传并作为微信附件发送。
|
|
363
|
-
|
|
364
|
-
渠道身份只决定消息归属,不授予任何工具权限。SSH、知识库和未来 Git 插件仍执行各自的挂载、授权和审批规则。
|
|
365
|
-
|
|
366
|
-
## 数据与安全
|
|
367
|
-
|
|
368
|
-
- 普通状态:`statePath` 指向的 JSON 文件。
|
|
369
|
-
- 伙伴记忆:`<defaultCwd>/partners/<伙伴 ID>/memory/`,按联系人隔离保存每日完整对话归档、人物画像、每日回顾、结构化长期记忆和有证据的记忆关系;画像按版本进入联系人会话,其他记忆按当前话题与一跳强关系召回,默认永久保留。
|
|
370
|
-
- 伙伴挂念:`<defaultCwd>/partners/<伙伴 ID>/concerns/concerns.sqlite`,保存挂念生命周期、变化观察、去重指纹、候选审计和打扰决策;候选审计保留 90 天,SQLite 使用 WAL、索引和串行事务写入。
|
|
371
|
-
- Skill 内容:`<defaultCwd>/partner-system/skills/<Skill ID>/SKILL.md`;普通状态文件只保存来源、版本、路径、校验和及伙伴启用关系,不复制 Skill 正文。
|
|
372
|
-
- 看板、调度、委派和临时运行索引:保存在 `statePath` 的原子状态文件中,并对任务数、活动历史、计划数和运行记录设置硬上限,防止长期使用后无限膨胀。
|
|
373
|
-
- 敏感凭据:DSH Credential Store,scope 为 `dsh-partner-weixin`。
|
|
374
|
-
- 管理 API:默认 `/partner-local/v1`,仅接受同源请求;写操作还要求 `X-DSH-Partner-Request: 1`。
|
|
375
|
-
- 微信机器人只能绑定一个伙伴;联系人上下文不会跨机器人、伙伴或其他联系人共享。
|
|
376
|
-
- 入站附件上限为 64 MB,保存在 `<伙伴 cwd>/inbound/`,目录权限为 `0700`、文件权限为 `0600`。
|
|
377
|
-
- 出站附件最多 8 个,只允许伙伴工作目录内的真实文件;会解析真实路径并拒绝符号链接越界、未知格式和超限文件。
|
|
378
|
-
|
|
379
|
-
## 开发
|
|
19
|
+
适配 DeepSeek Harness **0.2.0-rc.2**(宿主仍为 RC),需要 Node.js **^22.19.0 或 >=24.0.0**。其他宿主版本请先查阅[兼容说明](docs/dsh-020-compatibility.md)和对应版本的发布说明。
|
|
380
20
|
|
|
381
21
|
```bash
|
|
382
|
-
|
|
383
|
-
npm test
|
|
384
|
-
npm pack --dry-run
|
|
385
|
-
```
|
|
386
|
-
|
|
387
|
-
要求 Node.js `^22.19.0 || >=24.0.0`,与当前 DSH 运行时一致。
|
|
388
|
-
|
|
389
|
-
新模块的依赖方向、隐私边界和持久化约束见 [`docs/architecture.md`](docs/architecture.md)。
|
|
390
|
-
|
|
391
|
-
## Skill 市场索引
|
|
392
|
-
|
|
393
|
-
ClawHub、LoopHub、SkillHub 是内置公共来源,默认启用且不能删除。公共压缩包只会在内存中读取最浅层的 `SKILL.md`,不会把归档路径直接解压到磁盘;安装后按非可信 Skill 在隔离临时会话中运行。
|
|
394
|
-
|
|
395
|
-
自定义市场源返回 JSON 数组,或返回带 `skills` 数组的对象:
|
|
396
|
-
|
|
397
|
-
```json
|
|
398
|
-
{
|
|
399
|
-
"skills": [
|
|
400
|
-
{
|
|
401
|
-
"id": "team-release-audit",
|
|
402
|
-
"name": "团队发布审计",
|
|
403
|
-
"description": "执行团队约定的发布前检查。",
|
|
404
|
-
"version": "1.0.0",
|
|
405
|
-
"tags": ["release", "audit"],
|
|
406
|
-
"skillUrl": "./team-release-audit/SKILL.md",
|
|
407
|
-
"checksum": "sha256:可选的64位十六进制摘要"
|
|
408
|
-
}
|
|
409
|
-
]
|
|
410
|
-
}
|
|
22
|
+
dsh plugin --profile web add @lemoncat7/dsh-partner@latest
|
|
411
23
|
```
|
|
412
24
|
|
|
413
|
-
|
|
25
|
+
安装或升级后重启对应的 DSH Profile;`web` 请按实际使用的 Profile 调整。
|
|
414
26
|
|
|
415
|
-
|
|
27
|
+
打开侧栏「伙伴」,创建伙伴并选择预设和模型,再按需开启能力、记忆与渠道。连接渠道后先完成联系人配对审批;MCP 和 Skill 也需按伙伴授权。
|
|
416
28
|
|
|
417
|
-
##
|
|
29
|
+
## 使用边界
|
|
418
30
|
|
|
419
|
-
|
|
31
|
+
新伙伴的能力、长期记忆、心跳、渠道和协作授权默认关闭。同一伙伴的本地与渠道共用主对话,已授权联系人共享上下文,不适合多人隐私隔离场景。渠道身份不授予工具权限,SSH、知识库等仍执行各自授权。存储迁移需手动确认并先备份,不能直接降级。
|
|
420
32
|
|
|
421
|
-
|
|
33
|
+
## 文档
|
|
422
34
|
|
|
423
|
-
|
|
35
|
+
- [使用与配置](docs/usage.md)
|
|
36
|
+
- [渠道与附件](docs/direct-channels.md)
|
|
37
|
+
- [Bark 单向通知](docs/bark-notifications.md)
|
|
38
|
+
- [持续关注检查与执行流程](docs/concern-workflow.md)
|
|
39
|
+
- [MCP 服务](docs/mcp.md)
|
|
40
|
+
- [存储迁移](docs/storage-migration.md)
|
|
41
|
+
- [任务生命周期与交付](docs/lifecycle-recovery.md)
|
|
42
|
+
- [架构与隐私边界](docs/architecture.md)
|
|
43
|
+
- [版本与发布说明](https://github.com/lemoncat7/dsh-partner/releases)
|
|
44
|
+
- [发布维护约定](docs/releases/README.md)
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# Bark 单向通知
|
|
2
|
+
|
|
3
|
+
在伙伴的「渠道」中配置 Bark,或通过「添加渠道 → Bark」添加更多服务器。每个服务器可配置多个设备,保存启用后对之后的最终结果自动推送,不需要微信配对,也不依赖「通知与交付」的联系人选择。
|
|
4
|
+
|
|
5
|
+
服务器地址填写根地址或反向代理前缀,插件会追加 `/push`,使用 POST JSON。每个目标填写 Device Key;也可以在 Key 输入框粘贴 `https://服务器/设备Key` 自动拆分。保存后 Key 不回显,编辑时留空表示保留。
|
|
6
|
+
|
|
7
|
+
服务器必须能从 **DSH 所在服务端** 访问,而不是只从浏览器或手机访问。Docker 内的 `127.0.0.1` 指容器自身;同一网络里的自建 Bark 可填写 `http://bark-server:8080`(以实际服务名和端口为准)。支持内网地址,不跳过 HTTPS 证书校验,不跟随重定向。HTTP 会明文传输凭据,只适合可信网络。
|
|
8
|
+
|
|
9
|
+
## 发送范围
|
|
10
|
+
|
|
11
|
+
- 普通会话的最终答复、需求最终完成总结、独立长任务最终结果、普通定时任务结束结果。
|
|
12
|
+
- 不逐条推送工具过程、子任务、验收过程和被动心跳检查。
|
|
13
|
+
- 默认只通知完成;高级选项可开启最终失败、需处理的需求受阻通知。
|
|
14
|
+
- 默认标题加最多 500 字符的简短摘要,不额外调用模型;可改为仅标题。附件仍由原渠道交付,Bark 不重复上传附件。
|
|
15
|
+
- 保存不会补发历史对话。修改/停用渠道会取消旧配置中尚未发送的记录;已提交到网络的请求无法撤回。
|
|
16
|
+
|
|
17
|
+
## 队列与重试
|
|
18
|
+
|
|
19
|
+
通知异步持久化,不阻塞伙伴回答。每个设备独立记录状态;已经收到 Bark 成功响应的目标不因其他目标失败而重发。服务启动后恢复未确认的记录。网络错误、408、429 和服务端错误自动退避,最多尝试 5 次;超出 24 小时停止自动补发。其他拒绝响应直接标记失败,可在「发送记录」手动重试,手动重试重新开启 24 小时窗口。
|
|
20
|
+
|
|
21
|
+
「服务端已接受」只表示 Bark API 返回成功,**不是手机已收到的回执**。若 Bark 已发送但 HTTP 回执丢失,重试仍可能产生重复通知,不能保证端到端恰好一次。
|
|
22
|
+
|
|
23
|
+
配置存在伙伴私有存储中;Key 单独交给 DSH 凭据服务保存。记录包含简短通知正文,可用「清理已结束记录」删除已接受/取消的记录。最多保留 1,000 条投递记录,满额时先清理超过 7 天的成功/取消记录;不能清理时停止接收新通知并记录告警。清理后不再保留那些事件的去重凭据。
|
|
24
|
+
|
|
25
|
+
## 扩展边界
|
|
26
|
+
|
|
27
|
+
`notifications/push-domain.ts` 定义单向通知事件和适配器契约;`push-service.ts` 负责凭据配置、持久队列、扇出、重试;`push-observer.ts` 只将业务终态转成通知事件;`bark-adapter.ts` 只实现 Bark 协议。后续第三方通知可增加适配器和对应配置解析,无需混入双向聊天配对流程。
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# 持续关注的依据与步骤流程
|
|
2
|
+
|
|
3
|
+
持续关注不创建看板。检查器负责判断变化和执行资格;开启后续执行时,把核实结果、文档步骤和绑定依赖交给伙伴原会话。
|
|
4
|
+
|
|
5
|
+
## 读取 → 识别 → 核验 → 交接
|
|
6
|
+
|
|
7
|
+
1. 笔记通过 `heartbeat_read_note_source`,知识文档通过 `heartbeat_read_knowledge_source` 定向分页读取。知识标题保持原样,不删词做模糊召回;读取仍受当前会话挂载、标签限制。明确绑定到单份文档时,宿主只为这一份依据提供跨项目只读访问;仅绑定整个库不授予跨项目访问,普通知识搜索/读取保持项目限制。关注停止、删除、依据变更时撤销定向访问。本地依据使用原会话文件读取权限。
|
|
8
|
+
2. 模型从正文、编号步骤、表格和段落识别检查与执行步骤,使用 `heartbeat_check_workflow` 保存每步来源、方法/前置条件、完成标准。不硬编码站点、代理或发布平台。
|
|
9
|
+
3. 检查步骤完成或受阻时更新证据,可用 `update.updates` 批量登记,也可在最终观察的 `workflowChecks` 数组一次提交 `{stepId,status,evidence}`,包括最后的无工具收尾轮。批量校验全部通过才更新,不允许完成执行步骤、重复步骤或空证据;无需为了登记每条状态额外调用模型。待执行的成稿/生成/发布步骤不能算检查失败;明确要求在检查中核验的条件也不能被移到执行阶段绕过。
|
|
10
|
+
4. 检查成功须有完整依据和完成的检查步骤。未满足时给予有界纠正机会,仍未完成则受阻,不派发执行。模型的语义理解仍需真实来源证据支持,流程校验不等于外部事实自动证明。
|
|
11
|
+
5. 完成的观察携带步骤交接,沿用稳定执行键去重并直接注入伙伴会话;不新增看板、定时任务或通知授权。未开启执行时,文档不能自行授予执行权限。
|
|
12
|
+
|
|
13
|
+
## 续跑与版本
|
|
14
|
+
|
|
15
|
+
脱敏工具摘要和步骤清单持久化到已有关注存储。重启后重新读取当前依据、识别流程,旧证据仅供参考;不能把上次成功当作当前时效数据。分页期间依据 revision 改变会撤销旧清单,要求从头读新版本。失效或撤销的授权不会被恢复记录绕过。
|
|
16
|
+
|
|
17
|
+
检查产物的记录同步仍是独立持久任务。`heartbeat_record_checkpoint` 按字段区分未知关注、未选记录位置、核验不完整、data 类型/长度、instructions 类型/长度错误;同步失败不应伪装为来源检查失败。
|
|
18
|
+
|
|
19
|
+
部署不会自动重放旧发布任务,避免重复草稿或公开发布。用户请求复测时从现有关注入口触发,先核对已有交付;旧观察无步骤清单仍可读取,后续新检查使用新流程。多候选关注每轮优先闭环一个事项,除非明确要求全量核验,不让无关候选阻断已核实事项。
|
|
20
|
+
|
|
21
|
+
JSON 工具结果逐字段脱敏,避免凭据行吞掉后续证据;网址在中文标点、Markdown 代码边界和换行前截止,保留其后的正文。续跑摘要仍有长度上限,截断部分必须重读。
|
|
22
|
+
|
|
23
|
+
检查器拥有独立的临时 Agent 标识,但保留原会话对象和继承的权限作用域。它不会以原聊天 Agent 的身份注册后台作业;官方 bash 工具在没有可注册作业的会话所有者时回退到有界前台执行。检查命令最长 50 秒,检查结束后不再通过作业完成通知唤醒主聊天。正式后续执行仍在原会话正常运行,不受此限制。
|
|
24
|
+
|
|
25
|
+
每项检查保留 12 轮实质核验,纯依据读取、记录基线读取、步骤登记和检查点保存最多另外占用 8 轮;只有整轮这些工具均成功才计入准备额度。混合调查、工具失败、无工具纠正轮仍消耗核验额度,总共最多 20 轮工具交互加 1 轮收尾。独立记录同步维持原来的 12 轮上限。
|
|
26
|
+
|
|
27
|
+
## 模型连接异常
|
|
28
|
+
|
|
29
|
+
单轮模型请求遇到临时 500/502/503/504、连接重置、TLS EOF 或 HTTP/2 协议中断,分别退避 1 秒和 3 秒,最多补试两次。所有尝试共享原有 180 秒时限,不重置超时。失败流中的部分文本和工具调用丢弃,已执行工具的结果保留;工具执行不在重试边界内,所以不会重放生成、记录或发布操作。
|
|
30
|
+
|
|
31
|
+
认证、参数、证书和取消错误不短间隔重试,429 交给现有调度策略处理。心跳记录显示退避次数;重试耗尽仍如实报告失败,不能保证不可用的上游服务恢复。
|
|
32
|
+
|
|
33
|
+
## 验证与维护边界
|
|
34
|
+
|
|
35
|
+
- 已验证从绑定依据读取、检查、记录同步到原会话草稿执行的链路;恢复前核对已有文件、外部素材和操作记录,复用已有产物,不重复提交。
|
|
36
|
+
- 区分“事实已记录”与“交付物已完成”,每项关注使用自己的执行条件,不套用其他关注的选题门槛。来源、未知事实和测试范围仍须如实说明。
|
|
37
|
+
- 读取依据返回 `sourceKey`;步骤 `source` 格式错误时指出步骤 ID 和当前关注的可选值,不跨关注暴露来源,不部分保存无效清单。
|
|
38
|
+
- 回执识别忽略宿主标注的自动压缩检查点,仍拒绝中断、无最终答复及被真实新用户请求隔开的结果。仅核对结果模式不重放外部操作。
|
|
39
|
+
- 外部接口成功和内容回读不等于手机端视觉验收,更不等于已公开发布。具体用户内容、草稿与操作编号不属于公开插件文档。
|
package/docs/releases/1.12.0.md
CHANGED
|
@@ -23,3 +23,19 @@
|
|
|
23
23
|
开启学习后仍按有效对话逐轮提炼;每日整理按联系人和待整理日期执行。尚未增加 token 用量统计、短消息跳过或合批策略,本版不宣称整体模型费用下降。
|
|
24
24
|
|
|
25
25
|
验证:308 项自动化测试、构建与 TypeScript 未使用导入检查通过;浏览器验证覆盖手机、平板横屏、桌面及深浅主题,检查联系人切换、筛选、按需读取和保存防重。此前本地部署已核对构建产物与 11 个记忆数据库完整性;未以真实渠道发送作为发布测试。
|
|
26
|
+
|
|
27
|
+
## 从 README 迁入的历史说明
|
|
28
|
+
|
|
29
|
+
以下为该版本当时的介绍,适用范围以该版为准,不作为当前使用指南。
|
|
30
|
+
|
|
31
|
+
## 1.12.0 更新:记忆质量与工作区
|
|
32
|
+
|
|
33
|
+
正式版,适配 DSH **0.1.2-rc.1**,需要 Node.js **^22.19.0 或 >=24.0.0**。
|
|
34
|
+
|
|
35
|
+
- 「持续关注」成为独立标签页;记忆页按画像、记忆和回顾组织,设置使用统一弹窗,支持手机、平板与桌面。
|
|
36
|
+
- 记忆候选验证用户原话依据,区分明确事实、稳定偏好、一次性过程和持续关注,召回仅保留相关内容。
|
|
37
|
+
- 提炼任务持久化、后台执行、失败退避重试;已保存提炼结果复用,不因后续写入或通知失败重新调用模型。
|
|
38
|
+
- 提供场景摘要、对话历史、处理状态与经验审核;经验仅审核后导出,不自动安装 Skill 或扩大权限。
|
|
39
|
+
- 保留已有数据与权限,不自动清理旧记忆。当前仍按有效对话逐轮提炼,未增加 token 用量统计或短消息合批。
|
|
40
|
+
|
|
41
|
+
详见 [发布说明](../../docs/releases/1.12.0.md) 和 [记忆设计与边界](../../docs/memory-quality.md)。
|
package/docs/releases/1.14.2.md
CHANGED
|
@@ -8,3 +8,11 @@
|
|
|
8
8
|
- 不修改伙伴身份内容、工具权限、记忆提炼、持续关注与通知规则,无新增数据迁移。
|
|
9
9
|
|
|
10
10
|
验证:346 项自动化测试通过;身份控件主题覆盖、焦点及工作区浏览器检查通过。
|
|
11
|
+
|
|
12
|
+
## 从 README 迁入的历史说明
|
|
13
|
+
|
|
14
|
+
以下为该版本当时的介绍,适用范围以该版为准,不作为当前使用指南。
|
|
15
|
+
|
|
16
|
+
## 1.14.2 更新:新版宿主适配与身份页统一
|
|
17
|
+
|
|
18
|
+
插件正式版,已在 DSH `0.1.5-rc.1` 验证新版主面板导航,保留旧版回退。身份页采用伙伴统一卡片与限定作用域的表单样式;不修改记忆、持续关注或工具授权。详见 [更新说明](../../docs/releases/1.14.2.md)。
|
package/docs/releases/1.15.0.md
CHANGED
|
@@ -18,3 +18,18 @@
|
|
|
18
18
|
升级前备份状态与凭据;配置新渠道后不要直接降级到仅识别微信的版本。
|
|
19
19
|
|
|
20
20
|
验证:372 项自动化测试通过;生产浏览器检查通过(状态轮询、配置入口、登录方式切换、弹窗及手机布局)。真实外部账号所有收发场景尚未完成端到端验收;Mattermost 使用约 10 秒 REST 轮询。
|
|
21
|
+
|
|
22
|
+
## 从 README 迁入的历史说明
|
|
23
|
+
|
|
24
|
+
以下为该版本当时的介绍,适用范围以该版为准,不作为当前使用指南。
|
|
25
|
+
|
|
26
|
+
## 1.15.0 更新:多渠道与共用主对话
|
|
27
|
+
|
|
28
|
+
插件正式版,运行验证环境为 **DSH 0.1.5-rc.1**,Node.js **^22.19.0 或 >=24.0.0**。DSH 宿主自身仍是 RC;旧版兼容分支保留,未重新完成全部旧宿主端到端验证。
|
|
29
|
+
|
|
30
|
+
- Matrix / Mattermost 账号密码或 Token 登录,房间 ID 可选,通过私聊配对并审批。
|
|
31
|
+
- 同一伙伴本地与所有渠道复用主对话,通知可指定目标或跟随最近渠道。
|
|
32
|
+
- 连接状态、配对请求自动刷新;复用统一配置弹窗,修复重复登录触发限流及错误提示。
|
|
33
|
+
- 单项关注受阻不再阻塞其他关注。
|
|
34
|
+
|
|
35
|
+
升级前备份数据;共享上下文是本版行为变化。详见 [1.15.0 发布说明](../../docs/releases/1.15.0.md) 与 [渠道使用说明](../../docs/direct-channels.md)。
|
package/docs/releases/1.16.0.md
CHANGED
|
@@ -20,3 +20,18 @@
|
|
|
20
20
|
## 验证
|
|
21
21
|
|
|
22
22
|
380 项自动化测试通过。浏览器验证包括 375/1024 宽度、浅深色、通知多选、失败重试、键盘关闭及渠道卡片提示。线上服务与 API 健康,已确认真实 Matrix 加密提示显示在配置弹窗外;未发送测试通知或改动用户接收人配置。
|
|
23
|
+
|
|
24
|
+
## 从 README 迁入的历史说明
|
|
25
|
+
|
|
26
|
+
以下为该版本当时的介绍,适用范围以该版为准,不作为当前使用指南。
|
|
27
|
+
|
|
28
|
+
## 1.16.0 更新:多目标通知与 Matrix 加密提示
|
|
29
|
+
|
|
30
|
+
插件正式版,已验证宿主为 **DSH 0.1.5-rc.1**,需要 Node.js **^22.19.0 或 >=24.0.0**。
|
|
31
|
+
|
|
32
|
+
- 通知配置改为「通知 → 多选渠道 → 选择各渠道接收人」,可回到最近联系渠道与用户模式;普通回复仍回来源渠道。
|
|
33
|
+
- 多目标独立投递,重试跳过已确认成功的正文和附件部分,进度支持重启恢复。
|
|
34
|
+
- Matrix 检测到加密会话时直接在渠道卡片提示;仅未加密双人会话可配对,其他正常会话不受影响。
|
|
35
|
+
- 统一身份与渠道表单样式,改善手机布局和错误反馈。
|
|
36
|
+
|
|
37
|
+
详见 [1.16.0 发布说明](../../docs/releases/1.16.0.md) 与 [通知投递说明](../../docs/notification-delivery.md)。
|