@xrkseek/harness 0.5.10 → 0.5.12

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 (220) hide show
  1. package/node_modules/@xrkseek/core-agent-loop/dist/index.d.ts +4 -3
  2. package/node_modules/@xrkseek/core-agent-loop/dist/index.d.ts.map +1 -1
  3. package/node_modules/@xrkseek/core-agent-loop/dist/index.js +27 -50
  4. package/node_modules/@xrkseek/core-agent-loop/dist/index.js.map +1 -1
  5. package/node_modules/@xrkseek/core-agent-loop/dist/settle-batch.d.ts +11 -3
  6. package/node_modules/@xrkseek/core-agent-loop/dist/settle-batch.d.ts.map +1 -1
  7. package/node_modules/@xrkseek/core-agent-loop/dist/settle-batch.js +23 -8
  8. package/node_modules/@xrkseek/core-agent-loop/dist/settle-batch.js.map +1 -1
  9. package/node_modules/@xrkseek/core-session/dist/sqlite-store.d.ts.map +1 -1
  10. package/node_modules/@xrkseek/core-session/dist/sqlite-store.js +27 -1
  11. package/node_modules/@xrkseek/core-session/dist/sqlite-store.js.map +1 -1
  12. package/node_modules/@xrkseek/core-tools/dist/index.d.ts +1 -1
  13. package/node_modules/@xrkseek/core-tools/dist/index.d.ts.map +1 -1
  14. package/node_modules/@xrkseek/core-tools/dist/index.js +1 -1
  15. package/node_modules/@xrkseek/core-tools/dist/index.js.map +1 -1
  16. package/node_modules/@xrkseek/core-tools/dist/subagent-prompt.d.ts +9 -0
  17. package/node_modules/@xrkseek/core-tools/dist/subagent-prompt.d.ts.map +1 -1
  18. package/node_modules/@xrkseek/core-tools/dist/subagent-prompt.js +47 -18
  19. package/node_modules/@xrkseek/core-tools/dist/subagent-prompt.js.map +1 -1
  20. package/node_modules/@xrkseek/exec-fs/dist/index.d.ts +9 -1
  21. package/node_modules/@xrkseek/exec-fs/dist/index.d.ts.map +1 -1
  22. package/node_modules/@xrkseek/exec-fs/dist/index.js +18 -13
  23. package/node_modules/@xrkseek/exec-fs/dist/index.js.map +1 -1
  24. package/node_modules/@xrkseek/exec-fs/dist/paths.d.ts +11 -0
  25. package/node_modules/@xrkseek/exec-fs/dist/paths.d.ts.map +1 -1
  26. package/node_modules/@xrkseek/exec-fs/dist/paths.js +40 -0
  27. package/node_modules/@xrkseek/exec-fs/dist/paths.js.map +1 -1
  28. package/node_modules/@xrkseek/exec-memory/dist/index.d.ts +2 -2
  29. package/node_modules/@xrkseek/exec-memory/dist/index.d.ts.map +1 -1
  30. package/node_modules/@xrkseek/exec-memory/dist/index.js +2 -2
  31. package/node_modules/@xrkseek/exec-memory/dist/index.js.map +1 -1
  32. package/node_modules/@xrkseek/exec-memory/dist/store.d.ts +18 -0
  33. package/node_modules/@xrkseek/exec-memory/dist/store.d.ts.map +1 -1
  34. package/node_modules/@xrkseek/exec-memory/dist/store.js +108 -7
  35. package/node_modules/@xrkseek/exec-memory/dist/store.js.map +1 -1
  36. package/node_modules/@xrkseek/exec-memory/dist/tools.d.ts.map +1 -1
  37. package/node_modules/@xrkseek/exec-memory/dist/tools.js +17 -1
  38. package/node_modules/@xrkseek/exec-memory/dist/tools.js.map +1 -1
  39. package/node_modules/@xrkseek/exec-memory/dist/write-path.d.ts +2 -0
  40. package/node_modules/@xrkseek/exec-memory/dist/write-path.d.ts.map +1 -1
  41. package/node_modules/@xrkseek/exec-memory/dist/write-path.js +28 -3
  42. package/node_modules/@xrkseek/exec-memory/dist/write-path.js.map +1 -1
  43. package/node_modules/@xrkseek/exec-sandbox/dist/resolve.d.ts +7 -4
  44. package/node_modules/@xrkseek/exec-sandbox/dist/resolve.d.ts.map +1 -1
  45. package/node_modules/@xrkseek/exec-sandbox/dist/resolve.js +4 -0
  46. package/node_modules/@xrkseek/exec-sandbox/dist/resolve.js.map +1 -1
  47. package/node_modules/@xrkseek/exec-sandbox/dist/service.d.ts +7 -0
  48. package/node_modules/@xrkseek/exec-sandbox/dist/service.d.ts.map +1 -1
  49. package/node_modules/@xrkseek/exec-sandbox/dist/service.js +18 -8
  50. package/node_modules/@xrkseek/exec-sandbox/dist/service.js.map +1 -1
  51. package/node_modules/@xrkseek/preset-harness/dist/preset.d.ts +16 -0
  52. package/node_modules/@xrkseek/preset-harness/dist/preset.d.ts.map +1 -1
  53. package/node_modules/@xrkseek/preset-harness/dist/preset.js +13 -2
  54. package/node_modules/@xrkseek/preset-harness/dist/preset.js.map +1 -1
  55. package/node_modules/@xrkseek/preset-harness/dist/tsconfig.tsbuildinfo +1 -1
  56. package/node_modules/@xrkseek/preset-minimal/dist/tsconfig.tsbuildinfo +1 -1
  57. package/node_modules/@xrkseek/preset-server/dist/preset.d.ts.map +1 -1
  58. package/node_modules/@xrkseek/preset-server/dist/preset.js +7 -1
  59. package/node_modules/@xrkseek/preset-server/dist/preset.js.map +1 -1
  60. package/node_modules/@xrkseek/preset-server/dist/tsconfig.tsbuildinfo +1 -1
  61. package/node_modules/@xrkseek/server-face/dist/adapt/history-paginate.d.ts +6 -0
  62. package/node_modules/@xrkseek/server-face/dist/adapt/history-paginate.d.ts.map +1 -1
  63. package/node_modules/@xrkseek/server-face/dist/adapt/history-paginate.js +28 -1
  64. package/node_modules/@xrkseek/server-face/dist/adapt/history-paginate.js.map +1 -1
  65. package/node_modules/@xrkseek/server-face/dist/adapt/index.d.ts +1 -1
  66. package/node_modules/@xrkseek/server-face/dist/adapt/index.d.ts.map +1 -1
  67. package/node_modules/@xrkseek/server-face/dist/adapt/index.js +1 -1
  68. package/node_modules/@xrkseek/server-face/dist/adapt/index.js.map +1 -1
  69. package/node_modules/@xrkseek/server-face/dist/adapt/model-route.d.ts +5 -0
  70. package/node_modules/@xrkseek/server-face/dist/adapt/model-route.d.ts.map +1 -1
  71. package/node_modules/@xrkseek/server-face/dist/adapt/model-route.js +16 -0
  72. package/node_modules/@xrkseek/server-face/dist/adapt/model-route.js.map +1 -1
  73. package/node_modules/@xrkseek/server-face/dist/adapt/subagent-notice.d.ts +32 -0
  74. package/node_modules/@xrkseek/server-face/dist/adapt/subagent-notice.d.ts.map +1 -1
  75. package/node_modules/@xrkseek/server-face/dist/adapt/subagent-notice.js +87 -0
  76. package/node_modules/@xrkseek/server-face/dist/adapt/subagent-notice.js.map +1 -1
  77. package/node_modules/@xrkseek/server-face/dist/adapt/wire-ids.d.ts +11 -0
  78. package/node_modules/@xrkseek/server-face/dist/adapt/wire-ids.d.ts.map +1 -1
  79. package/node_modules/@xrkseek/server-face/dist/adapt/wire-ids.js +19 -0
  80. package/node_modules/@xrkseek/server-face/dist/adapt/wire-ids.js.map +1 -1
  81. package/node_modules/@xrkseek/server-face/dist/agent-roster-store.d.ts +138 -0
  82. package/node_modules/@xrkseek/server-face/dist/agent-roster-store.d.ts.map +1 -0
  83. package/node_modules/@xrkseek/server-face/dist/agent-roster-store.js +636 -0
  84. package/node_modules/@xrkseek/server-face/dist/agent-roster-store.js.map +1 -0
  85. package/node_modules/@xrkseek/server-face/dist/agent-roster-tools.d.ts +12 -0
  86. package/node_modules/@xrkseek/server-face/dist/agent-roster-tools.d.ts.map +1 -0
  87. package/node_modules/@xrkseek/server-face/dist/agent-roster-tools.js +152 -0
  88. package/node_modules/@xrkseek/server-face/dist/agent-roster-tools.js.map +1 -0
  89. package/node_modules/@xrkseek/server-face/dist/agent-team-roles.d.ts +6 -0
  90. package/node_modules/@xrkseek/server-face/dist/agent-team-roles.d.ts.map +1 -1
  91. package/node_modules/@xrkseek/server-face/dist/agent-team-roles.js +61 -0
  92. package/node_modules/@xrkseek/server-face/dist/agent-team-roles.js.map +1 -1
  93. package/node_modules/@xrkseek/server-face/dist/capture-member-playbook.d.ts +6 -0
  94. package/node_modules/@xrkseek/server-face/dist/capture-member-playbook.d.ts.map +1 -0
  95. package/node_modules/@xrkseek/server-face/dist/capture-member-playbook.js +43 -0
  96. package/node_modules/@xrkseek/server-face/dist/capture-member-playbook.js.map +1 -0
  97. package/node_modules/@xrkseek/server-face/dist/collab-board.d.ts +41 -0
  98. package/node_modules/@xrkseek/server-face/dist/collab-board.d.ts.map +1 -0
  99. package/node_modules/@xrkseek/server-face/dist/collab-board.js +79 -0
  100. package/node_modules/@xrkseek/server-face/dist/collab-board.js.map +1 -0
  101. package/node_modules/@xrkseek/server-face/dist/context.d.ts +4 -0
  102. package/node_modules/@xrkseek/server-face/dist/context.d.ts.map +1 -1
  103. package/node_modules/@xrkseek/server-face/dist/dispatch.d.ts.map +1 -1
  104. package/node_modules/@xrkseek/server-face/dist/dispatch.js +19 -0
  105. package/node_modules/@xrkseek/server-face/dist/dispatch.js.map +1 -1
  106. package/node_modules/@xrkseek/server-face/dist/fork-cut.d.ts +3 -2
  107. package/node_modules/@xrkseek/server-face/dist/fork-cut.d.ts.map +1 -1
  108. package/node_modules/@xrkseek/server-face/dist/fork-cut.js +58 -20
  109. package/node_modules/@xrkseek/server-face/dist/fork-cut.js.map +1 -1
  110. package/node_modules/@xrkseek/server-face/dist/handlers/session.d.ts.map +1 -1
  111. package/node_modules/@xrkseek/server-face/dist/handlers/session.js +56 -20
  112. package/node_modules/@xrkseek/server-face/dist/handlers/session.js.map +1 -1
  113. package/node_modules/@xrkseek/server-face/dist/handlers/subagent.d.ts.map +1 -1
  114. package/node_modules/@xrkseek/server-face/dist/handlers/subagent.js +5 -0
  115. package/node_modules/@xrkseek/server-face/dist/handlers/subagent.js.map +1 -1
  116. package/node_modules/@xrkseek/server-face/dist/handlers/team.d.ts +11 -0
  117. package/node_modules/@xrkseek/server-face/dist/handlers/team.d.ts.map +1 -0
  118. package/node_modules/@xrkseek/server-face/dist/handlers/team.js +280 -0
  119. package/node_modules/@xrkseek/server-face/dist/handlers/team.js.map +1 -0
  120. package/node_modules/@xrkseek/server-face/dist/index.d.ts +6 -0
  121. package/node_modules/@xrkseek/server-face/dist/index.d.ts.map +1 -1
  122. package/node_modules/@xrkseek/server-face/dist/index.js +6 -0
  123. package/node_modules/@xrkseek/server-face/dist/index.js.map +1 -1
  124. package/node_modules/@xrkseek/server-face/dist/model-catalog.d.ts +11 -1
  125. package/node_modules/@xrkseek/server-face/dist/model-catalog.d.ts.map +1 -1
  126. package/node_modules/@xrkseek/server-face/dist/model-catalog.js +27 -1
  127. package/node_modules/@xrkseek/server-face/dist/model-catalog.js.map +1 -1
  128. package/node_modules/@xrkseek/server-face/dist/presence-dressing.d.ts +26 -0
  129. package/node_modules/@xrkseek/server-face/dist/presence-dressing.d.ts.map +1 -0
  130. package/node_modules/@xrkseek/server-face/dist/presence-dressing.js +84 -0
  131. package/node_modules/@xrkseek/server-face/dist/presence-dressing.js.map +1 -0
  132. package/node_modules/@xrkseek/server-face/dist/presence-tools.d.ts.map +1 -1
  133. package/node_modules/@xrkseek/server-face/dist/presence-tools.js +19 -6
  134. package/node_modules/@xrkseek/server-face/dist/presence-tools.js.map +1 -1
  135. package/node_modules/@xrkseek/server-face/dist/presets-catalog.d.ts +16 -0
  136. package/node_modules/@xrkseek/server-face/dist/presets-catalog.d.ts.map +1 -1
  137. package/node_modules/@xrkseek/server-face/dist/presets-catalog.js +5 -0
  138. package/node_modules/@xrkseek/server-face/dist/presets-catalog.js.map +1 -1
  139. package/node_modules/@xrkseek/server-face/dist/projections/index.d.ts +1 -1
  140. package/node_modules/@xrkseek/server-face/dist/projections/index.d.ts.map +1 -1
  141. package/node_modules/@xrkseek/server-face/dist/projections/index.js +1 -1
  142. package/node_modules/@xrkseek/server-face/dist/projections/index.js.map +1 -1
  143. package/node_modules/@xrkseek/server-face/dist/projections/registry.d.ts +2 -2
  144. package/node_modules/@xrkseek/server-face/dist/projections/units/turn-outline.d.ts +23 -5
  145. package/node_modules/@xrkseek/server-face/dist/projections/units/turn-outline.d.ts.map +1 -1
  146. package/node_modules/@xrkseek/server-face/dist/projections/units/turn-outline.js +36 -18
  147. package/node_modules/@xrkseek/server-face/dist/projections/units/turn-outline.js.map +1 -1
  148. package/node_modules/@xrkseek/server-face/dist/runtime.d.ts.map +1 -1
  149. package/node_modules/@xrkseek/server-face/dist/runtime.js +21 -0
  150. package/node_modules/@xrkseek/server-face/dist/runtime.js.map +1 -1
  151. package/node_modules/@xrkseek/server-face/dist/session-model-store.d.ts +2 -0
  152. package/node_modules/@xrkseek/server-face/dist/session-model-store.d.ts.map +1 -1
  153. package/node_modules/@xrkseek/server-face/dist/session-model-store.js +14 -0
  154. package/node_modules/@xrkseek/server-face/dist/session-model-store.js.map +1 -1
  155. package/node_modules/@xrkseek/server-face/dist/session-status.d.ts +50 -0
  156. package/node_modules/@xrkseek/server-face/dist/session-status.d.ts.map +1 -1
  157. package/node_modules/@xrkseek/server-face/dist/session-status.js +71 -8
  158. package/node_modules/@xrkseek/server-face/dist/session-status.js.map +1 -1
  159. package/node_modules/@xrkseek/server-face/dist/session-thread-message.d.ts +17 -0
  160. package/node_modules/@xrkseek/server-face/dist/session-thread-message.d.ts.map +1 -0
  161. package/node_modules/@xrkseek/server-face/dist/session-thread-message.js +34 -0
  162. package/node_modules/@xrkseek/server-face/dist/session-thread-message.js.map +1 -0
  163. package/node_modules/@xrkseek/server-face/dist/session-thread-publish.d.ts +17 -0
  164. package/node_modules/@xrkseek/server-face/dist/session-thread-publish.d.ts.map +1 -0
  165. package/node_modules/@xrkseek/server-face/dist/session-thread-publish.js +34 -0
  166. package/node_modules/@xrkseek/server-face/dist/session-thread-publish.js.map +1 -0
  167. package/node_modules/@xrkseek/server-face/dist/session-thread-store.d.ts +40 -0
  168. package/node_modules/@xrkseek/server-face/dist/session-thread-store.d.ts.map +1 -0
  169. package/node_modules/@xrkseek/server-face/dist/session-thread-store.js +217 -0
  170. package/node_modules/@xrkseek/server-face/dist/session-thread-store.js.map +1 -0
  171. package/node_modules/@xrkseek/server-face/dist/session-thread-tools.d.ts +27 -0
  172. package/node_modules/@xrkseek/server-face/dist/session-thread-tools.d.ts.map +1 -0
  173. package/node_modules/@xrkseek/server-face/dist/session-thread-tools.js +375 -0
  174. package/node_modules/@xrkseek/server-face/dist/session-thread-tools.js.map +1 -0
  175. package/node_modules/@xrkseek/server-face/dist/settings-document.d.ts.map +1 -1
  176. package/node_modules/@xrkseek/server-face/dist/settings-document.js +45 -11
  177. package/node_modules/@xrkseek/server-face/dist/settings-document.js.map +1 -1
  178. package/node_modules/@xrkseek/server-face/dist/settings-schemas.d.ts.map +1 -1
  179. package/node_modules/@xrkseek/server-face/dist/settings-schemas.js +23 -10
  180. package/node_modules/@xrkseek/server-face/dist/settings-schemas.js.map +1 -1
  181. package/node_modules/@xrkseek/server-face/dist/subagent-registry.d.ts +25 -0
  182. package/node_modules/@xrkseek/server-face/dist/subagent-registry.d.ts.map +1 -1
  183. package/node_modules/@xrkseek/server-face/dist/subagent-registry.js +65 -13
  184. package/node_modules/@xrkseek/server-face/dist/subagent-registry.js.map +1 -1
  185. package/node_modules/@xrkseek/server-face/dist/subagent-tools.d.ts +21 -0
  186. package/node_modules/@xrkseek/server-face/dist/subagent-tools.d.ts.map +1 -1
  187. package/node_modules/@xrkseek/server-face/dist/subagent-tools.js +149 -37
  188. package/node_modules/@xrkseek/server-face/dist/subagent-tools.js.map +1 -1
  189. package/node_modules/@xrkseek/server-face/dist/types.d.ts +9 -0
  190. package/node_modules/@xrkseek/server-face/dist/types.d.ts.map +1 -1
  191. package/node_modules/@xrkseek/server-face/dist/wire/paths.d.ts.map +1 -1
  192. package/node_modules/@xrkseek/server-face/dist/wire/paths.js +2 -0
  193. package/node_modules/@xrkseek/server-face/dist/wire/paths.js.map +1 -1
  194. package/node_modules/@xrkseek/server-face/dist/workspace-face.d.ts.map +1 -1
  195. package/node_modules/@xrkseek/server-face/dist/workspace-face.js +7 -0
  196. package/node_modules/@xrkseek/server-face/dist/workspace-face.js.map +1 -1
  197. package/node_modules/@xrkseek/server-host/dist/agent-cache.d.ts +5 -1
  198. package/node_modules/@xrkseek/server-host/dist/agent-cache.d.ts.map +1 -1
  199. package/node_modules/@xrkseek/server-host/dist/agent-cache.js +29 -3
  200. package/node_modules/@xrkseek/server-host/dist/agent-cache.js.map +1 -1
  201. package/node_modules/@xrkseek/server-host/dist/index.d.ts +27 -0
  202. package/node_modules/@xrkseek/server-host/dist/index.d.ts.map +1 -1
  203. package/node_modules/@xrkseek/server-host/dist/index.js +112 -8
  204. package/node_modules/@xrkseek/server-host/dist/index.js.map +1 -1
  205. package/node_modules/@xrkseek/server-http/dist/static.d.ts.map +1 -1
  206. package/node_modules/@xrkseek/server-http/dist/static.js +45 -5
  207. package/node_modules/@xrkseek/server-http/dist/static.js.map +1 -1
  208. package/node_modules/@xrkseek/workspace/dist/ecosystem-instructions.d.ts +8 -0
  209. package/node_modules/@xrkseek/workspace/dist/ecosystem-instructions.d.ts.map +1 -1
  210. package/node_modules/@xrkseek/workspace/dist/ecosystem-instructions.js +6 -2
  211. package/node_modules/@xrkseek/workspace/dist/ecosystem-instructions.js.map +1 -1
  212. package/node_modules/@xrkseek/workspace/dist/index.d.ts +16 -0
  213. package/node_modules/@xrkseek/workspace/dist/index.d.ts.map +1 -1
  214. package/node_modules/@xrkseek/workspace/dist/index.js +17 -8
  215. package/node_modules/@xrkseek/workspace/dist/index.js.map +1 -1
  216. package/node_modules/@xrkseek/workspace/dist/skills.d.ts +1 -1
  217. package/node_modules/@xrkseek/workspace/dist/skills.d.ts.map +1 -1
  218. package/node_modules/@xrkseek/workspace/dist/skills.js +1 -1
  219. package/node_modules/@xrkseek/workspace/dist/skills.js.map +1 -1
  220. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"session-status.js","sourceRoot":"","sources":["../src/session-status.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-status.js","sourceRoot":"","sources":["../src/session-status.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Parent↔parent 主线 collab: eligibility + the text Face injects on the peer.
3
+ * Children stay on send_message / followup_task.
4
+ */
5
+ export declare function peerThreadMessageProblem(input: {
6
+ readonly selfId: string;
7
+ readonly targetId: string;
8
+ readonly selfBound: boolean;
9
+ readonly targetBound: boolean;
10
+ readonly targetIsChild: boolean;
11
+ }): string | undefined;
12
+ export declare function formatPeerCollabPrompt(input: {
13
+ readonly fromSessionId: string;
14
+ readonly fromThreadTitle?: string;
15
+ readonly message: string;
16
+ }): string;
17
+ //# sourceMappingURL=session-thread-message.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-thread-message.d.ts","sourceRoot":"","sources":["../src/session-thread-message.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE;IAC9C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;CACjC,GAAG,MAAM,GAAG,SAAS,CAerB;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,GAAG,MAAM,CAUT"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Parent↔parent 主线 collab: eligibility + the text Face injects on the peer.
3
+ * Children stay on send_message / followup_task.
4
+ */
5
+ export function peerThreadMessageProblem(input) {
6
+ const selfId = input.selfId.trim();
7
+ const targetId = input.targetId.trim();
8
+ if (!targetId)
9
+ return "thread_message requires session_id";
10
+ if (targetId === selfId)
11
+ return "thread_message: cannot message this session";
12
+ if (!input.selfBound) {
13
+ return "thread_message: this session has no 主线 — thread_upsert first";
14
+ }
15
+ if (input.targetIsChild) {
16
+ return "thread_message: target is a subagent — use send_message / followup_task";
17
+ }
18
+ if (!input.targetBound) {
19
+ return "thread_message: target is not a 主线 parent in this workspace";
20
+ }
21
+ return undefined;
22
+ }
23
+ export function formatPeerCollabPrompt(input) {
24
+ const pin = input.fromThreadTitle?.trim()
25
+ ? ` (主线 「${input.fromThreadTitle.trim()}」)`
26
+ : "";
27
+ return [
28
+ `[主线协作] From parent session ${input.fromSessionId}${pin}.`,
29
+ "Your next assistant message is the reply they wait for. Do not spawn a subagent for this unless they asked you to.",
30
+ "",
31
+ input.message.trim(),
32
+ ].join("\n");
33
+ }
34
+ //# sourceMappingURL=session-thread-message.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-thread-message.js","sourceRoot":"","sources":["../src/session-thread-message.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,UAAU,wBAAwB,CAAC,KAMxC;IACC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IACnC,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IACvC,IAAI,CAAC,QAAQ;QAAE,OAAO,oCAAoC,CAAC;IAC3D,IAAI,QAAQ,KAAK,MAAM;QAAE,OAAO,6CAA6C,CAAC;IAC9E,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QACrB,OAAO,8DAA8D,CAAC;IACxE,CAAC;IACD,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;QACxB,OAAO,yEAAyE,CAAC;IACnF,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QACvB,OAAO,6DAA6D,CAAC;IACvE,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,KAItC;IACC,MAAM,GAAG,GAAG,KAAK,CAAC,eAAe,EAAE,IAAI,EAAE;QACvC,CAAC,CAAC,SAAS,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI;QAC3C,CAAC,CAAC,EAAE,CAAC;IACP,OAAO;QACL,8BAA8B,KAAK,CAAC,aAAa,GAAG,GAAG,GAAG;QAC1D,oHAAoH;QACpH,EAAE;QACF,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE;KACrB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Push 主线 / 支线 chrome to the shell after thread_* mutations.
3
+ * session.list already carries these fields; without a live frame the sidebar
4
+ * keeps the first-message title until the next full list refresh.
5
+ */
6
+ import type { FaceRuntime } from "./context.js";
7
+ import type { HostFrame } from "./types.js";
8
+ export declare function sessionThreadFrame(runtime: FaceRuntime, workspaceId: string, sessionId: string): Extract<HostFrame, {
9
+ type: "host/session-thread";
10
+ }>;
11
+ /** Publish chrome for one session. */
12
+ export declare function publishSessionThread(runtime: FaceRuntime, workspaceId: string, sessionId: string): void;
13
+ /** Publish chrome for every listed session (e.g. after a 主线 title revise). */
14
+ export declare function publishSessionThreads(runtime: FaceRuntime, workspaceId: string, sessionIds: readonly string[]): void;
15
+ /** Sessions currently attached to a 主线 in this workspace. */
16
+ export declare function sessionIdsOnThread(runtime: FaceRuntime, workspaceId: string, threadId: string): string[];
17
+ //# sourceMappingURL=session-thread-publish.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-thread-publish.d.ts","sourceRoot":"","sources":["../src/session-thread-publish.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,WAAW,EACpB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,SAAS,EAAE;IAAE,IAAI,EAAE,qBAAqB,CAAA;CAAE,CAAC,CAerD;AAED,sCAAsC;AACtC,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,WAAW,EACpB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GAChB,IAAI,CAEN;AAED,8EAA8E;AAC9E,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,WAAW,EACpB,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,SAAS,MAAM,EAAE,GAC5B,IAAI,CAIN;AAED,6DAA6D;AAC7D,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,WAAW,EACpB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,GACf,MAAM,EAAE,CAKV"}
@@ -0,0 +1,34 @@
1
+ export function sessionThreadFrame(runtime, workspaceId, sessionId) {
2
+ const bind = runtime.sessionThreads.bindOf(workspaceId, sessionId);
3
+ const thread = bind
4
+ ? runtime.sessionThreads.get(workspaceId, bind.threadId)
5
+ : undefined;
6
+ const sideline = bind?.sideline ?? runtime.presence.get(sessionId)?.tips;
7
+ return {
8
+ type: "host/session-thread",
9
+ sessionId,
10
+ bound: thread !== undefined,
11
+ ...(thread
12
+ ? { mainline: thread.title, mainlineId: thread.id }
13
+ : {}),
14
+ ...(sideline ? { sideline } : {}),
15
+ };
16
+ }
17
+ /** Publish chrome for one session. */
18
+ export function publishSessionThread(runtime, workspaceId, sessionId) {
19
+ runtime.bus.publishHost(sessionThreadFrame(runtime, workspaceId, sessionId));
20
+ }
21
+ /** Publish chrome for every listed session (e.g. after a 主线 title revise). */
22
+ export function publishSessionThreads(runtime, workspaceId, sessionIds) {
23
+ for (const sessionId of sessionIds) {
24
+ publishSessionThread(runtime, workspaceId, sessionId);
25
+ }
26
+ }
27
+ /** Sessions currently attached to a 主线 in this workspace. */
28
+ export function sessionIdsOnThread(runtime, workspaceId, threadId) {
29
+ return runtime.sessionThreads
30
+ .listBinds(workspaceId)
31
+ .filter((row) => row.threadId === threadId)
32
+ .map((row) => row.sessionId);
33
+ }
34
+ //# sourceMappingURL=session-thread-publish.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-thread-publish.js","sourceRoot":"","sources":["../src/session-thread-publish.ts"],"names":[],"mappings":"AAQA,MAAM,UAAU,kBAAkB,CAChC,OAAoB,EACpB,WAAmB,EACnB,SAAiB;IAEjB,MAAM,IAAI,GAAG,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IACnE,MAAM,MAAM,GAAG,IAAI;QACjB,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC;QACxD,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC;IACzE,OAAO;QACL,IAAI,EAAE,qBAAqB;QAC3B,SAAS;QACT,KAAK,EAAE,MAAM,KAAK,SAAS;QAC3B,GAAG,CAAC,MAAM;YACR,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,EAAE;YACnD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClC,CAAC;AACJ,CAAC;AAED,sCAAsC;AACtC,MAAM,UAAU,oBAAoB,CAClC,OAAoB,EACpB,WAAmB,EACnB,SAAiB;IAEjB,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,kBAAkB,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,qBAAqB,CACnC,OAAoB,EACpB,WAAmB,EACnB,UAA6B;IAE7B,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,oBAAoB,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;IACxD,CAAC;AACH,CAAC;AAED,6DAA6D;AAC7D,MAAM,UAAU,kBAAkB,CAChC,OAAoB,EACpB,WAAmB,EACnB,QAAgB;IAEhB,OAAO,OAAO,CAAC,cAAc;SAC1B,SAAS,CAAC,WAAW,CAAC;SACtB,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC;SAC1C,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AACjC,CAAC"}
@@ -0,0 +1,40 @@
1
+ export declare const THREAD_TITLE_MAX = 80;
2
+ export declare const THREAD_BRIEF_MAX = 4000;
3
+ export declare const SIDELINE_MAX = 200;
4
+ export interface WorkspaceThread {
5
+ readonly id: string;
6
+ readonly title: string;
7
+ readonly brief: string;
8
+ readonly updatedAt: number;
9
+ }
10
+ export interface SessionThreadBind {
11
+ readonly threadId: string;
12
+ readonly sideline?: string;
13
+ }
14
+ export declare function threadsRoot(productHome?: string): string;
15
+ export declare class FaceSessionThreadStore {
16
+ private readonly productHome;
17
+ private readonly cache;
18
+ constructor(productHome?: string);
19
+ private load;
20
+ private save;
21
+ list(workspaceId: string): readonly WorkspaceThread[];
22
+ get(workspaceId: string, threadId: string): WorkspaceThread | undefined;
23
+ bindOf(workspaceId: string, sessionId: string): SessionThreadBind | undefined;
24
+ /** Every session currently attached to a 主线 in this workspace. */
25
+ listBinds(workspaceId: string): ReadonlyArray<{
26
+ readonly sessionId: string;
27
+ } & SessionThreadBind>;
28
+ upsert(workspaceId: string, input: {
29
+ readonly id?: string;
30
+ readonly title: string;
31
+ readonly brief?: string;
32
+ }): WorkspaceThread | undefined;
33
+ switchTo(workspaceId: string, sessionId: string, threadId: string): SessionThreadBind | undefined;
34
+ /** Child sessions stay off the 主线 catalog. */
35
+ unbind(workspaceId: string, sessionId: string): boolean;
36
+ /** Drop a 主线 and every session bind pointing at it. */
37
+ remove(workspaceId: string, threadId: string): boolean;
38
+ setSideline(workspaceId: string, sessionId: string, sideline: string): SessionThreadBind | undefined;
39
+ }
40
+ //# sourceMappingURL=session-thread-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-thread-store.d.ts","sourceRoot":"","sources":["../src/session-thread-store.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,gBAAgB,KAAK,CAAC;AACnC,eAAO,MAAM,gBAAgB,OAAQ,CAAC;AACtC,eAAO,MAAM,YAAY,MAAM,CAAC;AAEhC,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAUD,wBAAgB,WAAW,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAExD;AAoDD,qBAAa,sBAAsB;IACjC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqB;IACjD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAmC;gBAE7C,WAAW,CAAC,EAAE,MAAM;IAIhC,OAAO,CAAC,IAAI;IAmCZ,OAAO,CAAC,IAAI;IAOZ,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,eAAe,EAAE;IAIrD,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAIvE,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAI7E,kEAAkE;IAClE,SAAS,CACP,WAAW,EAAE,MAAM,GAClB,aAAa,CAAC;QAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,iBAAiB,CAAC;IAOpE,MAAM,CACJ,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE;QAAE,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAC/E,eAAe,GAAG,SAAS;IAiC9B,QAAQ,CACN,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GACf,iBAAiB,GAAG,SAAS;IAehC,8CAA8C;IAC9C,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO;IASvD,uDAAuD;IACvD,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO;IAYtD,WAAW,CACT,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GACf,iBAAiB,GAAG,SAAS;CAcjC"}
@@ -0,0 +1,217 @@
1
+ /**
2
+ * Workspace-scoped conversation 主线 catalog. Sessions attach to one thread
3
+ * and keep a short 支线 (current work). Survives session create/delete.
4
+ */
5
+ import { existsSync, mkdirSync, readFileSync } from "node:fs";
6
+ import { randomUUID } from "node:crypto";
7
+ import path from "node:path";
8
+ import { resolveXrkHome } from "@xrkseek/server-config";
9
+ import { tryWriteJsonSidecar } from "./json-sidecar.js";
10
+ export const THREAD_TITLE_MAX = 80;
11
+ export const THREAD_BRIEF_MAX = 4_000;
12
+ export const SIDELINE_MAX = 200;
13
+ const ID_RE = /^th_[a-zA-Z0-9][a-zA-Z0-9._-]{0,63}$/;
14
+ export function threadsRoot(productHome) {
15
+ return path.join(path.resolve(productHome ?? resolveXrkHome()), "session-threads");
16
+ }
17
+ function sanitizeWorkspaceId(workspaceId) {
18
+ const trimmed = workspaceId.trim();
19
+ if (!trimmed || trimmed.includes("..") || trimmed.includes("/") || trimmed.includes("\\")) {
20
+ throw new Error(`invalid workspaceId: ${workspaceId}`);
21
+ }
22
+ return trimmed;
23
+ }
24
+ function filePath(workspaceId, productHome) {
25
+ return path.join(threadsRoot(productHome), `${sanitizeWorkspaceId(workspaceId)}.json`);
26
+ }
27
+ function mintId() {
28
+ return `th_${randomUUID().replaceAll("-", "").slice(0, 16)}`;
29
+ }
30
+ function clip(value, max) {
31
+ return value.replace(/\s+/g, " ").trim().slice(0, max);
32
+ }
33
+ function parseBind(raw) {
34
+ if (!raw || typeof raw !== "object" || Array.isArray(raw))
35
+ return undefined;
36
+ const o = raw;
37
+ if (typeof o.threadId !== "string" || !ID_RE.test(o.threadId))
38
+ return undefined;
39
+ const sideline = typeof o.sideline === "string" ? clip(o.sideline, SIDELINE_MAX) : "";
40
+ return sideline
41
+ ? { threadId: o.threadId, sideline }
42
+ : { threadId: o.threadId };
43
+ }
44
+ function parseThread(raw) {
45
+ if (!raw || typeof raw !== "object" || Array.isArray(raw))
46
+ return undefined;
47
+ const o = raw;
48
+ if (typeof o.id !== "string" || !ID_RE.test(o.id))
49
+ return undefined;
50
+ if (typeof o.title !== "string")
51
+ return undefined;
52
+ const title = clip(o.title, THREAD_TITLE_MAX);
53
+ if (!title)
54
+ return undefined;
55
+ const brief = typeof o.brief === "string" ? clip(o.brief, THREAD_BRIEF_MAX) : "";
56
+ const updatedAt = typeof o.updatedAt === "number" && Number.isFinite(o.updatedAt)
57
+ ? o.updatedAt
58
+ : 0;
59
+ return { id: o.id, title, brief, updatedAt };
60
+ }
61
+ function emptyDoc() {
62
+ return { version: 1, threads: [], sessions: {} };
63
+ }
64
+ export class FaceSessionThreadStore {
65
+ productHome;
66
+ cache = new Map();
67
+ constructor(productHome) {
68
+ this.productHome = productHome;
69
+ }
70
+ load(workspaceId) {
71
+ const cached = this.cache.get(workspaceId);
72
+ if (cached)
73
+ return cached;
74
+ const file = filePath(workspaceId, this.productHome);
75
+ if (!existsSync(file)) {
76
+ const doc = emptyDoc();
77
+ this.cache.set(workspaceId, doc);
78
+ return doc;
79
+ }
80
+ try {
81
+ const parsed = JSON.parse(readFileSync(file, "utf8"));
82
+ const o = parsed && typeof parsed === "object" ? parsed : emptyDoc();
83
+ const threads = Array.isArray(o.threads)
84
+ ? o.threads.flatMap((row) => {
85
+ const thread = parseThread(row);
86
+ return thread ? [thread] : [];
87
+ })
88
+ : [];
89
+ const sessions = {};
90
+ if (o.sessions && typeof o.sessions === "object") {
91
+ for (const [sessionId, bind] of Object.entries(o.sessions)) {
92
+ const next = parseBind(bind);
93
+ if (next)
94
+ sessions[sessionId] = next;
95
+ }
96
+ }
97
+ const doc = { version: 1, threads, sessions };
98
+ this.cache.set(workspaceId, doc);
99
+ return doc;
100
+ }
101
+ catch {
102
+ const doc = emptyDoc();
103
+ this.cache.set(workspaceId, doc);
104
+ return doc;
105
+ }
106
+ }
107
+ save(workspaceId, doc) {
108
+ this.cache.set(workspaceId, doc);
109
+ const dir = threadsRoot(this.productHome);
110
+ mkdirSync(dir, { recursive: true });
111
+ tryWriteJsonSidecar(filePath(workspaceId, this.productHome), doc);
112
+ }
113
+ list(workspaceId) {
114
+ return this.load(workspaceId).threads;
115
+ }
116
+ get(workspaceId, threadId) {
117
+ return this.load(workspaceId).threads.find((row) => row.id === threadId);
118
+ }
119
+ bindOf(workspaceId, sessionId) {
120
+ return this.load(workspaceId).sessions[sessionId];
121
+ }
122
+ /** Every session currently attached to a 主线 in this workspace. */
123
+ listBinds(workspaceId) {
124
+ return Object.entries(this.load(workspaceId).sessions).map(([sessionId, bind]) => ({
125
+ sessionId,
126
+ ...bind,
127
+ }));
128
+ }
129
+ upsert(workspaceId, input) {
130
+ const title = clip(input.title, THREAD_TITLE_MAX);
131
+ if (!title)
132
+ return undefined;
133
+ const brief = clip(input.brief ?? "", THREAD_BRIEF_MAX);
134
+ const doc = this.load(workspaceId);
135
+ const id = input.id?.trim();
136
+ const now = Date.now();
137
+ if (id) {
138
+ if (!ID_RE.test(id))
139
+ return undefined;
140
+ const index = doc.threads.findIndex((row) => row.id === id);
141
+ const next = {
142
+ id,
143
+ title,
144
+ brief,
145
+ updatedAt: now,
146
+ };
147
+ const threads = index === -1
148
+ ? [...doc.threads, next]
149
+ : doc.threads.map((row, i) => (i === index ? next : row));
150
+ this.save(workspaceId, { ...doc, threads });
151
+ return next;
152
+ }
153
+ const minted = {
154
+ id: mintId(),
155
+ title,
156
+ brief,
157
+ updatedAt: now,
158
+ };
159
+ this.save(workspaceId, { ...doc, threads: [...doc.threads, minted] });
160
+ return minted;
161
+ }
162
+ switchTo(workspaceId, sessionId, threadId) {
163
+ const doc = this.load(workspaceId);
164
+ if (!doc.threads.some((row) => row.id === threadId))
165
+ return undefined;
166
+ const prev = doc.sessions[sessionId];
167
+ const next = {
168
+ threadId,
169
+ ...(prev?.sideline ? { sideline: prev.sideline } : {}),
170
+ };
171
+ this.save(workspaceId, {
172
+ ...doc,
173
+ sessions: { ...doc.sessions, [sessionId]: next },
174
+ });
175
+ return next;
176
+ }
177
+ /** Child sessions stay off the 主线 catalog. */
178
+ unbind(workspaceId, sessionId) {
179
+ const doc = this.load(workspaceId);
180
+ if (!(sessionId in doc.sessions))
181
+ return false;
182
+ const sessions = { ...doc.sessions };
183
+ delete sessions[sessionId];
184
+ this.save(workspaceId, { ...doc, sessions });
185
+ return true;
186
+ }
187
+ /** Drop a 主线 and every session bind pointing at it. */
188
+ remove(workspaceId, threadId) {
189
+ const doc = this.load(workspaceId);
190
+ if (!doc.threads.some((row) => row.id === threadId))
191
+ return false;
192
+ const threads = doc.threads.filter((row) => row.id !== threadId);
193
+ const sessions = {};
194
+ for (const [sessionId, bind] of Object.entries(doc.sessions)) {
195
+ if (bind.threadId !== threadId)
196
+ sessions[sessionId] = bind;
197
+ }
198
+ this.save(workspaceId, { ...doc, threads, sessions });
199
+ return true;
200
+ }
201
+ setSideline(workspaceId, sessionId, sideline) {
202
+ const doc = this.load(workspaceId);
203
+ const prev = doc.sessions[sessionId];
204
+ if (!prev)
205
+ return undefined;
206
+ const clipped = clip(sideline, SIDELINE_MAX);
207
+ const next = clipped
208
+ ? { threadId: prev.threadId, sideline: clipped }
209
+ : { threadId: prev.threadId };
210
+ this.save(workspaceId, {
211
+ ...doc,
212
+ sessions: { ...doc.sessions, [sessionId]: next },
213
+ });
214
+ return next;
215
+ }
216
+ }
217
+ //# sourceMappingURL=session-thread-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-thread-store.js","sourceRoot":"","sources":["../src/session-thread-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Model-facing thread_* / sideline_set — workspace 主线 catalog + session 支线.
3
+ */
4
+ import type { ToolRegistry } from "@xrkseek/core-tools";
5
+ import type { FaceRuntime } from "./context.js";
6
+ export interface BindSessionThreadToolsOptions {
7
+ readonly runtime: FaceRuntime;
8
+ readonly sessionId: string;
9
+ }
10
+ /**
11
+ * Catalog rows for this workspace only: 主线 entries plus parent sessions
12
+ * already attached. Unbound sessions (first-message sidebar titles) stay out.
13
+ */
14
+ export declare function listWorkspaceThreadCatalog(runtime: FaceRuntime, workspaceId: string, selfId: string): ReadonlyArray<{
15
+ readonly id: string;
16
+ readonly title: string;
17
+ readonly brief: string;
18
+ readonly updatedAt: number;
19
+ readonly sessions: ReadonlyArray<{
20
+ readonly sessionId: string;
21
+ readonly self: boolean;
22
+ readonly sideline?: string;
23
+ }>;
24
+ }>;
25
+ /** Register thread_list / thread_upsert / thread_switch / thread_delete / sideline_set. */
26
+ export declare function bindSessionThreadTools(tools: ToolRegistry, options: BindSessionThreadToolsOptions): void;
27
+ //# sourceMappingURL=session-thread-tools.d.ts.map