@lemoncat7/dsh-partner 2.23.55 → 2.24.0-rc.9

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.
Files changed (194) hide show
  1. package/README.md +5 -0
  2. package/docs/compatibility-0.2.2-rc.1.md +7 -0
  3. package/docs/releases/2.24.0-rc.2.md +9 -0
  4. package/docs/releases/2.24.0-rc.3.md +6 -0
  5. package/docs/releases/2.24.0-rc.4.md +11 -0
  6. package/docs/releases/2.24.0-rc.5.md +11 -0
  7. package/docs/releases/2.24.0-rc.6.md +12 -0
  8. package/docs/releases/2.24.0-rc.9.md +5 -0
  9. package/lib/agent-runtime.d.ts +1 -0
  10. package/lib/agent-runtime.d.ts.map +1 -1
  11. package/lib/agent-runtime.js +54 -5
  12. package/lib/agent-runtime.js.map +1 -1
  13. package/lib/api.d.ts +1 -0
  14. package/lib/api.d.ts.map +1 -1
  15. package/lib/api.js +68 -1
  16. package/lib/api.js.map +1 -1
  17. package/lib/channels/activity-defaults.d.ts.map +1 -1
  18. package/lib/channels/activity-defaults.js +2 -0
  19. package/lib/channels/activity-defaults.js.map +1 -1
  20. package/lib/channels/bilibili/activity-provider.d.ts +3 -0
  21. package/lib/channels/bilibili/activity-provider.d.ts.map +1 -0
  22. package/lib/channels/bilibili/activity-provider.js +8 -0
  23. package/lib/channels/bilibili/activity-provider.js.map +1 -0
  24. package/lib/channels/bilibili/catalog.d.ts +23 -0
  25. package/lib/channels/bilibili/catalog.d.ts.map +1 -0
  26. package/lib/channels/bilibili/catalog.js +45 -0
  27. package/lib/channels/bilibili/catalog.js.map +1 -0
  28. package/lib/channels/bilibili/media.d.ts +9 -0
  29. package/lib/channels/bilibili/media.d.ts.map +1 -0
  30. package/lib/channels/bilibili/media.js +67 -0
  31. package/lib/channels/bilibili/media.js.map +1 -0
  32. package/lib/channels/bilibili/service.d.ts +37 -0
  33. package/lib/channels/bilibili/service.d.ts.map +1 -0
  34. package/lib/channels/bilibili/service.js +138 -0
  35. package/lib/channels/bilibili/service.js.map +1 -0
  36. package/lib/channels/bilibili/tools.d.ts +6 -0
  37. package/lib/channels/bilibili/tools.d.ts.map +1 -0
  38. package/lib/channels/bilibili/tools.js +48 -0
  39. package/lib/channels/bilibili/tools.js.map +1 -0
  40. package/lib/channels/direct/message-format.js +298 -206
  41. package/lib/channels/direct/message-format.js.map +4 -4
  42. package/lib/channels/manager.d.ts.map +1 -1
  43. package/lib/channels/manager.js +8 -2
  44. package/lib/channels/manager.js.map +1 -1
  45. package/lib/channels/qq/authority.d.ts +1 -1
  46. package/lib/channels/qq/authority.d.ts.map +1 -1
  47. package/lib/channels/qq/authority.js +2 -2
  48. package/lib/channels/qq/authority.js.map +1 -1
  49. package/lib/channels/weixin/connect.d.ts +3 -1
  50. package/lib/channels/weixin/connect.d.ts.map +1 -1
  51. package/lib/character/affection-tool.js +2 -2
  52. package/lib/character/affection-tool.js.map +1 -1
  53. package/lib/character/affection.d.ts +6 -42
  54. package/lib/character/affection.d.ts.map +1 -1
  55. package/lib/character/affection.js +4 -13
  56. package/lib/character/affection.js.map +1 -1
  57. package/lib/character/conversation-behavior.js +2 -2
  58. package/lib/character/conversation-behavior.js.map +1 -1
  59. package/lib/character/habit-tool.d.ts +4 -0
  60. package/lib/character/habit-tool.d.ts.map +1 -0
  61. package/lib/character/habit-tool.js +31 -0
  62. package/lib/character/habit-tool.js.map +1 -0
  63. package/lib/character/habits.d.ts +38 -0
  64. package/lib/character/habits.d.ts.map +1 -0
  65. package/lib/character/habits.js +92 -0
  66. package/lib/character/habits.js.map +1 -0
  67. package/lib/character/idle-contact.d.ts +2 -0
  68. package/lib/character/idle-contact.d.ts.map +1 -1
  69. package/lib/character/idle-contact.js +5 -1
  70. package/lib/character/idle-contact.js.map +1 -1
  71. package/lib/character/interaction-review.d.ts +10 -0
  72. package/lib/character/interaction-review.d.ts.map +1 -1
  73. package/lib/character/interaction-review.js +51 -31
  74. package/lib/character/interaction-review.js.map +1 -1
  75. package/lib/chat/live-speech.d.ts +5 -2
  76. package/lib/chat/live-speech.d.ts.map +1 -1
  77. package/lib/chat/live-speech.js +37 -9
  78. package/lib/chat/live-speech.js.map +1 -1
  79. package/lib/chat/persona-delivery.d.ts +29 -0
  80. package/lib/chat/persona-delivery.d.ts.map +1 -0
  81. package/lib/chat/persona-delivery.js +129 -0
  82. package/lib/chat/persona-delivery.js.map +1 -0
  83. package/lib/chat/reply-continuity.d.ts.map +1 -1
  84. package/lib/chat/reply-continuity.js +12 -0
  85. package/lib/chat/reply-continuity.js.map +1 -1
  86. package/lib/chat/tools.d.ts.map +1 -1
  87. package/lib/chat/tools.js +22 -10
  88. package/lib/chat/tools.js.map +1 -1
  89. package/lib/chat/work-expression.d.ts +36 -0
  90. package/lib/chat/work-expression.d.ts.map +1 -1
  91. package/lib/chat/work-expression.js +80 -17
  92. package/lib/chat/work-expression.js.map +1 -1
  93. package/lib/client-api.d.ts +10 -1
  94. package/lib/client-api.d.ts.map +1 -1
  95. package/lib/client-api.js.map +1 -1
  96. package/lib/client.d.ts.map +1 -1
  97. package/lib/client.js +4186 -3842
  98. package/lib/client.js.map +4 -4
  99. package/lib/collaboration/composition.d.ts.map +1 -1
  100. package/lib/collaboration/composition.js +2 -0
  101. package/lib/collaboration/composition.js.map +1 -1
  102. package/lib/collaboration/tool-discovery.d.ts.map +1 -1
  103. package/lib/collaboration/tool-discovery.js +5 -4
  104. package/lib/collaboration/tool-discovery.js.map +1 -1
  105. package/lib/companions/identity-tool.d.ts +1 -1
  106. package/lib/companions/identity-tool.d.ts.map +1 -1
  107. package/lib/companions/identity-tool.js +3 -4
  108. package/lib/companions/identity-tool.js.map +1 -1
  109. package/lib/companions/identity.js +4 -4
  110. package/lib/companions/identity.js.map +1 -1
  111. package/lib/companions/persona-refinement.d.ts.map +1 -1
  112. package/lib/companions/persona-refinement.js +1 -45
  113. package/lib/companions/persona-refinement.js.map +1 -1
  114. package/lib/compat/native-presentation.d.ts +4 -0
  115. package/lib/compat/native-presentation.d.ts.map +1 -0
  116. package/lib/compat/native-presentation.js +40 -0
  117. package/lib/compat/native-presentation.js.map +1 -0
  118. package/lib/compat/ptc-events.d.ts +2 -0
  119. package/lib/compat/ptc-events.d.ts.map +1 -0
  120. package/lib/compat/ptc-events.js +2 -0
  121. package/lib/compat/ptc-events.js.map +1 -0
  122. package/lib/compat/tool-dispatch.d.ts +4 -0
  123. package/lib/compat/tool-dispatch.d.ts.map +1 -0
  124. package/lib/compat/tool-dispatch.js +14 -0
  125. package/lib/compat/tool-dispatch.js.map +1 -0
  126. package/lib/concern-tool.d.ts.map +1 -1
  127. package/lib/concern-tool.js +5 -3
  128. package/lib/concern-tool.js.map +1 -1
  129. package/lib/domain.d.ts +10 -1
  130. package/lib/domain.d.ts.map +1 -1
  131. package/lib/domain.js.map +1 -1
  132. package/lib/execution/operation-tool-access.d.ts.map +1 -1
  133. package/lib/execution/operation-tool-access.js +2 -6
  134. package/lib/execution/operation-tool-access.js.map +1 -1
  135. package/lib/execution/service.d.ts +2 -0
  136. package/lib/execution/service.d.ts.map +1 -1
  137. package/lib/execution/service.js +7 -1
  138. package/lib/execution/service.js.map +1 -1
  139. package/lib/execution/task-preamble.js +2 -2
  140. package/lib/execution/task-preamble.js.map +1 -1
  141. package/lib/execution/work-progress-card.d.ts +10 -0
  142. package/lib/execution/work-progress-card.d.ts.map +1 -0
  143. package/lib/execution/work-progress-card.js +45 -0
  144. package/lib/execution/work-progress-card.js.map +1 -0
  145. package/lib/execution/work-progress-state.d.ts +32 -0
  146. package/lib/execution/work-progress-state.d.ts.map +1 -0
  147. package/lib/execution/work-progress-state.js +19 -0
  148. package/lib/execution/work-progress-state.js.map +1 -0
  149. package/lib/execution/work-progress.d.ts +16 -0
  150. package/lib/execution/work-progress.d.ts.map +1 -0
  151. package/lib/execution/work-progress.js +76 -0
  152. package/lib/execution/work-progress.js.map +1 -0
  153. package/lib/execution/work-tool.d.ts.map +1 -1
  154. package/lib/execution/work-tool.js +62 -51
  155. package/lib/execution/work-tool.js.map +1 -1
  156. package/lib/index.d.ts.map +1 -1
  157. package/lib/index.js +5 -2
  158. package/lib/index.js.map +1 -1
  159. package/lib/memory-store.d.ts +1 -1
  160. package/lib/observation-loop.d.ts.map +1 -1
  161. package/lib/observation-loop.js +17 -3
  162. package/lib/observation-loop.js.map +1 -1
  163. package/lib/store.d.ts.map +1 -1
  164. package/lib/store.js +9 -0
  165. package/lib/store.js.map +1 -1
  166. package/lib/ui/affection-panel.js +1 -1
  167. package/lib/ui/affection-panel.js.map +1 -1
  168. package/lib/ui/bilibili-settings.d.ts +12 -0
  169. package/lib/ui/bilibili-settings.d.ts.map +1 -0
  170. package/lib/ui/bilibili-settings.js +77 -0
  171. package/lib/ui/bilibili-settings.js.map +1 -0
  172. package/lib/ui/channels-panel.d.ts.map +1 -1
  173. package/lib/ui/channels-panel.js +4 -3
  174. package/lib/ui/channels-panel.js.map +1 -1
  175. package/lib/ui/companion-vitals.js +1 -1
  176. package/lib/ui/companion-vitals.js.map +1 -1
  177. package/lib/ui/habits-panel.d.ts +4 -0
  178. package/lib/ui/habits-panel.d.ts.map +1 -0
  179. package/lib/ui/habits-panel.js +30 -0
  180. package/lib/ui/habits-panel.js.map +1 -0
  181. package/lib/ui/identity-editor.js +1 -8
  182. package/lib/ui/identity-editor.js.map +1 -1
  183. package/lib/ui/idle-contact-editor.d.ts.map +1 -1
  184. package/lib/ui/idle-contact-editor.js +2 -1
  185. package/lib/ui/idle-contact-editor.js.map +1 -1
  186. package/lib/ui/push-draft.d.ts +2 -2
  187. package/lib/ui/workspace-navigation.d.ts +16 -16
  188. package/package.json +62 -48
  189. package/resources/bilibili/Dockerfile +7 -0
  190. package/resources/bilibili/media.py +245 -0
  191. package/resources/bilibili/requirements.txt +3 -0
  192. package/resources/bilibili/server.py +300 -0
  193. package/resources/bilibili/test_bridge.py +115 -0
  194. package/resources/bilibili/test_media.py +110 -0
package/README.md CHANGED
@@ -53,3 +53,8 @@ QQ 接入说明见 [QQ 渠道(SnowLuma / OneBot v11)](docs/qq-channel.md):
53
53
  ### 2.23.38(本地验证版)
54
54
 
55
55
  短句接话在中途发言、工具前告知与最终答复共用篇幅提醒;每阶段每次输入最多提醒一次,明确要求详细/原文可展开,不截断正文。人物口吻继续来自角色配置,不内置年龄、称呼或口头禅。详见 [版本说明](docs/releases/2.23.38.md)。
56
+
57
+
58
+ ## DSH 0.2.2-rc.1
59
+
60
+ 2.24.0-rc.9 支持 DSH 0.2.2-rc.1,要求 Node.js >=24.9.0。[兼容说明](docs/compatibility-0.2.2-rc.1.md)。
@@ -0,0 +1,7 @@
1
+ # DSH 0.2.2-rc.1 兼容性
2
+
3
+ 插件版本:2.24.0-rc.9。目标宿主:官方 @deepseek-ai/dsh@0.2.2-rc.1;Node.js >=24.9.0。
4
+
5
+ 迁移工具执行流水线、按作用域选择执行器与提示词组装接口;伙伴工具收拢仅针对伙伴自身,外部插件继续使用各自入口。配置在会话空闲边界准备,角色与会话历史不因兼容迁移改写。
6
+
7
+ 此版本面向0.2.2-rc.1;回退宿主时请同时恢复升级前插件包和数据快照,不让旧宿主写入新宿主迁移后的数据。验证结果见部署仓库 COMPATIBILITY-022-RC1-20261105.md。
@@ -0,0 +1,9 @@
1
+ # 2.24.0-rc.2 · B 站视频链接、投稿与渠道设置
2
+
3
+ - B 站设置采用与 QQ 一致的账号概览和分层导航:公开能力、私有能力、自主活动、执行记录。
4
+ - 私有能力总开关与自主活动独立,保留旧开关的有效授权;关闭自主活动仍可按明确请求执行已授权操作。
5
+ - 新增 video_stream,只返回临时视频播放直链、必要请求头及音视频分离信息;不下载、不合并、不抽帧。是否读取与如何处理由模型自身能力或可用工具决定,拿到链接不代表已经看过。
6
+ - 新增 upload_categories / upload_draft / upload_status / publish_video。当前会话内视频与封面可上传为本服务待投稿草稿;不是创作中心云草稿。正式提交单独授权,返回 BV 号仍需 B 站审核。
7
+ - 上传进度持久化;服务重启不重放投稿,结果不明不自动重发。素材只读当前会话目录,视频最多 512 MB,封面最多 8 MB,桥接暂存定期清理。
8
+ - QQ 非归属账号仅能调用 B 站公开接口,私有接口实时核验。
9
+ - 继承 rc.1 的扫码 Set-Cookie 凭证修复、后台登录确认和字幕 cid 修复。
@@ -0,0 +1,6 @@
1
+ # 2.24.0-rc.3
2
+
3
+ - 好感度改为既定关系基线上的长期相处变化:保留原分数与历史,移除固定关系等级和未接入调度的概率倍率。人物、关系和短期情绪分开解释,不按分数重定义身份、语气、权限或任务完成标准。
4
+ - 前台、工具与后台评估统一语义;后台同时参考当前关系设定。面板显示最近变化和原因,修正失效的每日配额说明。
5
+ - 已交付报告后按人格回应最相关的结果或发现,不复述完整报告;仍简短说明影响判断的失败和不确定性,不机械截断。
6
+ - 不重写角色设定、不重置好感、不更改既有工具权限或自主活动时机。
@@ -0,0 +1,11 @@
1
+ # 2.24.0-rc.4(测试部署)
2
+
3
+ 任务前、中途接话和结果答复可共用只读表达入口:提交回应意图,并用当前轮真实工具调用 ID 引用结果。表达入口读取当前角色、关系设置及近期双方实际聊天,不继承完整工具目录,不执行工作、不写记忆、不改显示历史。人格内容仍全部来自可编辑设定。
4
+
5
+ - 保留直接文字回复;普通闲聊、指定原文、表达失败时均可直接成稿,不强制二次生成。
6
+ - 人格独占提示模式也支持表达入口;中途回复与最终回复使用同一套表达逻辑。
7
+ - 原有前置回应的送达等待、去重、待执行动作检查保持生效。已经送出的中途话不再重复投递。
8
+ - 引用拒绝跨轮、伪造和发言回执;发送前重新检查输入、人物、对象和授权。失败不结束当前回合,交回模型直接答复;不重跑任务。
9
+ - 明确无法继续的任务仍需通过 taskDisposition/taskEvidence 和直接 messages 说明原因,保留原有失败证据检查。
10
+
11
+ 限制:表达入口是可选的一次额外模型调用,25 秒超时;本次隔离测试通常耗时约 4~5 秒。数字与链接有校验,但不是完整语义事实证明。32 次隔离对比未出现表达错误,语气改善有限,仍需实际对话观察,不宣称已解决所有人格偏移。
@@ -0,0 +1,11 @@
1
+ # 2.24.0-rc.5
2
+
3
+ 独立工作增加实时进度卡,解决主会话长时间只显示一个 partner_work_execute、无法判断内部是否仍在推进的问题。
4
+
5
+ - 展示等待启动、等待模型继续、正在调用的工具、已结束操作数量、目录查询数、失败数及最近五次操作;不显示思考、参数、结果正文或私密查询。
6
+ - 显示累计耗时;超过30秒没有状态变化时显示距上次变化的时间,不把“仍在等待”误报为卡死,也不使用虚假完成百分比。
7
+ - 完成、部分完成、失败、取消和超时有不同状态;工作结束不代表聊天或附件已经交付。
8
+ - 同一调用只更新一张卡片;支持历史恢复、窄屏和键盘展开最近操作。回合已关闭时停止旧卡片的运行状态。
9
+ - 使用 DSH 官方 appendPluginRecord 写入 ignorable 展示记录,不添加模型消息,不改变滚动上下文、已有聊天历史或任务执行权限;展示故障不阻断工作。
10
+
11
+ 本版只改善执行可见性,不改变任务15分钟时限、自动重试策略或任务执行速度。旧任务没有进度记录,无法补造其过程。
@@ -0,0 +1,12 @@
1
+ # 2.24.0-rc.6(测试部署)
2
+
3
+ 此前可选的表达入口经常未被主模型使用,B站评论也未接入。本版在现有聊天投递工具和B站评论调用中自动进行一次只读人格表达,不再依赖模型主动选择 expression。
4
+
5
+ - partner_chat_say 的普通文字和任务前接话、partner_chat_reply 的文字、partner_bilibili 的 comment 正文均接入;已有 expression/workReply 不重复生成。
6
+ - 表达读取有效人物正文;聊天使用当前真实用户发言和最近双方对话。运行时上下文快照不能冒充用户新消息。公开评论不传私聊关系、私聊消息或私聊历史,并固定原视频/评论线程。
7
+ - 回执记录实际发送的文字,后续模型据此接话。指定且可核对的原文、代码、详细正文和纯表情/附件交付保持原路径。
8
+ - 保持文字和表情顺序;输入、人物、休息状态、回复对象或授权变化会阻止旧文字发送。
9
+ - 表达失败或超时保留原稿,不重做任务、不发送生成错误提示;显式表达已经失败时不再尝试第二次表达。
10
+ - B站写入去重绑定改写前的原始请求,防止同一评论重试时仅因措辞变化重复提交。没有增加任何互动权限。
11
+
12
+ 此步骤通常增加几秒模型耗时,18秒超时。数字、链接及格式有程序检查,但语义与语气仍依赖模型,不能承诺每次完全符合人物。长任务权限、工作超时和上下文滚动机制未改变。普通最终文本及语音等未通过上述投递入口的路径不在本次自动处理范围。
@@ -0,0 +1,5 @@
1
+ # 2.24.0-rc.9
2
+
3
+ 适配 DSH 0.2.2-rc.1。迁移工具执行流水线、按作用域选择执行器与提示词组装接口;伙伴工具收拢仅针对伙伴自身,外部插件继续使用各自入口。配置在会话空闲边界准备,角色与会话历史不因兼容迁移改写。
4
+
5
+ 包含此前2.24.0-rc.8的B站发布修复与自主习惯设置。
@@ -99,6 +99,7 @@ export declare class PartnerAgentRuntime {
99
99
  private readonly disposeToolAuthority;
100
100
  private readonly disposeAssemblyListener;
101
101
  private readonly disposeRollingContext;
102
+ private readonly disposePreparation;
102
103
  private readonly autonomousAssemblyContexts;
103
104
  private readonly rebuildingAssemblies;
104
105
  private readonly configurations;
@@ -1 +1 @@
1
- {"version":3,"file":"agent-runtime.d.ts","sourceRoot":"","sources":["../src/agent-runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-runtime.d.ts","sourceRoot":"","sources":["../src/agent-runtime.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,7 @@
1
+ import { nativePresentation } from './compat/native-presentation.js';
2
+ import { renderHabits, habitScope } from './character/habits.js';
3
+ import { renderPersonaDelivery } from './chat/persona-delivery.js';
4
+ import { composeConversationExpression } from './chat/work-expression.js';
1
5
  import { collectActivityJournal, mergeActivityJournal, activityJournalRecall, renderActivityJournal } from './character/activity-journal.js';
2
6
  import { createChannelActivities } from './channels/activity-defaults.js';
3
7
  import { installIntermediateDelivery } from './chat/intermediate-delivery.js';
@@ -107,6 +111,7 @@ export class PartnerAgentRuntime {
107
111
  disposeToolAuthority;
108
112
  disposeAssemblyListener;
109
113
  disposeRollingContext;
114
+ disposePreparation;
110
115
  autonomousAssemblyContexts = new WeakSet();
111
116
  rebuildingAssemblies = new WeakSet();
112
117
  configurations;
@@ -127,6 +132,34 @@ export class PartnerAgentRuntime {
127
132
  this.composer = composer;
128
133
  this.channelActivities = channelActivities;
129
134
  this.configurations = new SessionConfigurationIndex(store);
135
+ const preparations = [];
136
+ const refreshIdle = (agent) => {
137
+ if (this.closed || agent.status !== 'idle' || typeof agent.runMaintenance !== 'function')
138
+ return;
139
+ const installed = this.restoredCompositions.get(agent.session.id), configuration = this.configurations.forSession(agent.session.id);
140
+ if (!configuration || installed?.revision === configuration.revision)
141
+ return;
142
+ try {
143
+ void agent.runMaintenance(signal => this.prepareAgentAssembly(agent, signal)).catch(error => this.ctx.logger.warn('伙伴配置准备失败:' + String(error)));
144
+ }
145
+ catch { /* Another maintenance owner will release the next idle boundary. */ }
146
+ };
147
+ if (typeof this.ctx.on === 'function' && typeof this.ctx.tools?.resolve === 'function') {
148
+ preparations.push(this.ctx.on('agent/created', async ({ agent }) => { await this.prepareAgentAssembly(agent, AbortSignal.timeout(60000)); }));
149
+ preparations.push(this.ctx.on('agent/status', ({ agent, status }) => { if (status === 'idle')
150
+ refreshIdle(agent); }));
151
+ const claimedTurns = new WeakMap();
152
+ preparations.push(this.ctx.on('agent/inbox/claimed', ({ agent, message, turn }) => {
153
+ const current = claimedTurns.get(agent) === turn ? this.admittedInputs.get(agent) ?? [] : [];
154
+ claimedTurns.set(agent, turn);
155
+ this.admittedInputs.set(agent, [...current, message]);
156
+ }));
157
+ }
158
+ if (typeof store.subscribe === 'function' && typeof this.ctx.tools?.resolve === 'function')
159
+ preparations.push(store.subscribe(() => { for (const { agent } of this.restoredCompositions.values())
160
+ refreshIdle(agent); }, () => { }));
161
+ this.disposePreparation = () => { for (const dispose of preparations.reverse())
162
+ dispose(); };
130
163
  this.disposeRollingContext = typeof this.ctx.on === 'function' ? this.ctx.on('agent/pre-step', async ({ agent, signal }, next) => {
131
164
  signal.throwIfAborted();
132
165
  const memory = this.configurations.forSession(agent.session.id)?.companion.automation.memory;
@@ -150,7 +183,8 @@ export class PartnerAgentRuntime {
150
183
  const rollingMemory = this.configurations.forSession(context.agent.session.id)?.companion.automation.memory;
151
184
  if (rollingMemory?.rollingContextEnabled)
152
185
  rollConversationContext(context.agent.session, rollingMemory);
153
- const enforce = (assembly) => {
186
+ const enforce = (presentation) => {
187
+ const assembly = { ...presentation, tools: 'tools' in presentation ? presentation.tools : context.agent.ctx.tools.schemas(context.agent, context.toolSet) };
154
188
  const configuration = this.configurations.forSession(context.agent.session.id);
155
189
  const project = (value) => configuration ? projectConversationPrompt(projectAgreements(value, this.store.snapshot(), configuration.companion.id, context.agent.session.id, this.inputEvents(context.agent)), context.agent, {
156
190
  roleEnabled: configuration.companion.characterCard?.enabled === true,
@@ -613,6 +647,7 @@ export class PartnerAgentRuntime {
613
647
  const agent = await this.ensureAgent(companion, route);
614
648
  if (!this.store.snapshot().sessions.some(s => s.id === route.id && s.sessionId === wake.originSessionId) || this.isArchived(route))
615
649
  throw new Error('原续接会话已变更');
650
+ await this.prepareAgentAssembly(agent, signal);
616
651
  const preflight = assembleContextFor(agent, signal);
617
652
  this.autonomousAssemblyContexts.add(preflight);
618
653
  try {
@@ -1087,8 +1122,16 @@ export class PartnerAgentRuntime {
1087
1122
  const access = resolveToolAccess({ agent, state: this.store.snapshot(), ...(this.admittedInputs.get(agent)?.length ? { events: this.inputEvents(agent) } : {}) });
1088
1123
  let presentationChanged = false;
1089
1124
  const stableNative = configuration.companion.toolDiscovery || !!access.allowedTools;
1090
- if (stableNative && !this.replyPresentations.has(agent) && typeof agent.ctx.tools?.presentAs === 'function') {
1091
- this.replyPresentations.set(agent, agent.ctx.tools.presentAs('native'));
1125
+ if (stableNative && !this.replyPresentations.has(agent) && (typeof agent.ctx.tools?.setExecutor === 'function' || typeof agent.ctx.tools?.presentAs === 'function')) {
1126
+ this.replyPresentations.set(agent, nativePresentation(agent.ctx, tools => {
1127
+ const current = this.configurations.forSession(agent.session.id);
1128
+ const access = resolveToolAccess({ agent, state: this.store.snapshot(), ...(this.admittedInputs.get(agent)?.length ? { events: this.inputEvents(agent) } : {}) });
1129
+ return tools.filter(tool => {
1130
+ if (current?.companion.toolDiscovery && !PARTNER_TOOL_ENTRIES.some(name => name === tool.name) && isPartnerDiscoveryTool(this.store, current.companion.id, tool.name))
1131
+ return false;
1132
+ return ['partner_tools', 'partner_channel_access', 'partner_memory_recall'].includes(tool.name) || access.sendTools && (!access.allowedTools || access.allowedTools.includes(tool.name));
1133
+ });
1134
+ }));
1092
1135
  presentationChanged = true;
1093
1136
  }
1094
1137
  else if (!stableNative && this.replyPresentations.has(agent)) {
@@ -1097,6 +1140,8 @@ export class PartnerAgentRuntime {
1097
1140
  presentationChanged = true;
1098
1141
  }
1099
1142
  const installed = this.restoredCompositions.get(agent.session.id);
1143
+ if (installed?.agent === agent && installed.revision !== configuration.revision && agent.status !== 'idle' && typeof agent.runMaintenance === 'function' && typeof agent.ctx.tools?.resolve === 'function')
1144
+ return presentationChanged;
1100
1145
  if (installed?.agent !== agent || installed.revision !== configuration.revision) {
1101
1146
  const job = (async () => {
1102
1147
  signal.throwIfAborted();
@@ -1156,7 +1201,9 @@ export class PartnerAgentRuntime {
1156
1201
  const affectionAudience = currentAffectionAudience(state, companion.id, agent.session.id, events);
1157
1202
  const access = resolveToolAccess({ agent, state, events });
1158
1203
  const replyContinuity = renderReplyContinuity(agent.session.id, events, state.sessions);
1159
- const revision = `${createHash('sha256').update(replyContinuity).digest('hex')}:${JSON.stringify(access)}:${JSON.stringify(identityRelation)}:${config.revision}:${last?.id ?? ''}:${autonomous && origin?.type === 'user/message' ? origin.data.id : ''}:${JSON.stringify([companion.sleepState?.episode, companion.sleepState?.reception, Math.round(fatigueValue(companion))])}:${companion.sleepState?.dreams?.at(-1)?.id ?? ''}:${affectionAudience}:${companion.affection?.updatedAt ?? 0}`;
1204
+ const habitOrigin = questionOrigin(agent.session.id, events, state.sessions) ?? state.sessions.find(r => r.kind === 'local' && r.sessionId === agent.session.id && r.companionId === companion.id);
1205
+ const habitContext = renderHabits(companion, habitOrigin ? habitScope(habitOrigin) : undefined);
1206
+ const revision = `${habitContext}:${createHash('sha256').update(replyContinuity).digest('hex')}:${JSON.stringify(access)}:${JSON.stringify(identityRelation)}:${config.revision}:${last?.id ?? ''}:${autonomous && origin?.type === 'user/message' ? origin.data.id : ''}:${JSON.stringify([companion.sleepState?.episode, companion.sleepState?.reception, Math.round(fatigueValue(companion))])}:${companion.sleepState?.dreams?.at(-1)?.id ?? ''}:${affectionAudience}:${companion.affection?.updatedAt ?? 0}`;
1160
1207
  if (this.contextRevisions.get(agent) === revision)
1161
1208
  return false;
1162
1209
  const scope = conversationMemoryScope(route, this.store.snapshot().sessions);
@@ -1175,6 +1222,7 @@ export class PartnerAgentRuntime {
1175
1222
  const text = [origin?.type === 'user/message' && origin.data.source.kind === 'user' && access.sendTools && (!access.allowedTools || access.allowedTools.includes('partner_identity')) && personaReferenceRequested(query) ? renderPersonaReference() : '', access.allowedTools || !access.sendTools ? access.denialReason + ' 回复能力通过 partner_tools 查询和调用(未开启统一入口时使用原工具);语音、真正群 @ 提及和已开启的戳一戳使用 partner_qq_reply(voices/voice/mention/poke);不能代办操作,不承诺使用私有能力。' : '',
1176
1223
  renderIdentityRelationship(companion, identityRelation ? { channel: 'qq', matched: identityRelation.matched } : { channel: 'default' }),
1177
1224
  renderAffection(companion, affectionAudience),
1225
+ habitContext,
1178
1226
  renderActivityJournal(activityJournalRecall(state.companions?.find(c => c.id === companion.id) ?? companion, agent.session.id, affectionAudience && !questionOrigin(agent.session.id, events, state.sessions)?.userId.startsWith('group:'), agent.session.snapshotEvents?.() ?? [], 3)),
1179
1227
  renderCharacterContext(companion.characterCard, query, relationshipAllowed ? story : undefined),
1180
1228
  recalled ? renderMemory(recalled.relevant, recalled.connections, recalled.scenes, recalled.history) : '',
@@ -1317,6 +1365,7 @@ export class PartnerAgentRuntime {
1317
1365
  async close() {
1318
1366
  this.closed = true;
1319
1367
  this.disposeConfigurationListener();
1368
+ this.disposePreparation();
1320
1369
  this.disposeAssemblyListener();
1321
1370
  this.disposeRollingContext();
1322
1371
  this.disposeToolAuthority();
@@ -1395,7 +1444,7 @@ export class PartnerAgentRuntime {
1395
1444
  await progress.sendChat(parts, routeId, receipt);
1396
1445
  }) : undefined;
1397
1446
  const detachPreamble = progress?.acknowledge ? installTaskPreamble(agent, progress.acknowledge, () => questionOrigin(agent.session.id, agent.session.snapshotEvents(), this.store.snapshot().sessions)?.id === session.id, () => usesShortDeliveryPolicy(this.store.snapshot().companions.find(c => c.id === companion.id)?.characterCard), true) : undefined;
1398
- const detachSpeech = progress?.acknowledge ? installLiveSpeech(agent, progress.acknowledge, () => questionOrigin(agent.session.id, agent.session.snapshotEvents(), this.store.snapshot().sessions)?.id === session.id ? session.id : undefined, () => { const card = this.store.snapshot().companions.find(c => c.id === companion.id)?.characterCard; return !!card?.enabled && !!card.segmentedReplies; }, () => usesShortDeliveryPolicy(this.store.snapshot().companions.find(c => c.id === companion.id)?.characterCard)) : undefined;
1447
+ const detachSpeech = progress?.acknowledge ? installLiveSpeech(agent, progress.acknowledge, () => questionOrigin(agent.session.id, agent.session.snapshotEvents(), this.store.snapshot().sessions)?.id === session.id ? session.id : undefined, () => { const card = this.store.snapshot().companions.find(c => c.id === companion.id)?.characterCard; return !!card?.enabled && !!card.segmentedReplies; }, () => usesShortDeliveryPolicy(this.store.snapshot().companions.find(c => c.id === companion.id)?.characterCard), (selection, exec, beforeTools) => composeConversationExpression(this.ctx, companion.id, this.store, exec, [], selection, { beforeTools, single: true }), (text, exec, beforeTools, preserveText, inlineDetails) => renderPersonaDelivery(this.ctx, companion.id, this.store, exec, [{ text }], { beforeTools, preserveText, inlineDetails, single: true })) : undefined;
1399
1448
  const completion = new ReplyCompletionGuard(agent, () => questionOrigin(agent.session.id, agent.session.snapshotEvents(), this.store.snapshot().sessions)?.id === session.id);
1400
1449
  const detachCompletion = this.ctx.on('agent/turn-stopping', completion.stop);
1401
1450
  const detachCompletionTools = agent.ctx.on('tools/pre-execute', async (exec, next) => {