@xrkseek/harness 0.5.10 → 0.5.11

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 (191) 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 +22 -60
  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 +45 -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 +4 -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/index.d.ts +1 -1
  62. package/node_modules/@xrkseek/server-face/dist/adapt/index.d.ts.map +1 -1
  63. package/node_modules/@xrkseek/server-face/dist/adapt/index.js +1 -1
  64. package/node_modules/@xrkseek/server-face/dist/adapt/index.js.map +1 -1
  65. package/node_modules/@xrkseek/server-face/dist/adapt/model-route.d.ts +5 -0
  66. package/node_modules/@xrkseek/server-face/dist/adapt/model-route.d.ts.map +1 -1
  67. package/node_modules/@xrkseek/server-face/dist/adapt/model-route.js +16 -0
  68. package/node_modules/@xrkseek/server-face/dist/adapt/model-route.js.map +1 -1
  69. package/node_modules/@xrkseek/server-face/dist/adapt/subagent-notice.d.ts +32 -0
  70. package/node_modules/@xrkseek/server-face/dist/adapt/subagent-notice.d.ts.map +1 -1
  71. package/node_modules/@xrkseek/server-face/dist/adapt/subagent-notice.js +87 -0
  72. package/node_modules/@xrkseek/server-face/dist/adapt/subagent-notice.js.map +1 -1
  73. package/node_modules/@xrkseek/server-face/dist/agent-roster-store.d.ts +102 -0
  74. package/node_modules/@xrkseek/server-face/dist/agent-roster-store.d.ts.map +1 -0
  75. package/node_modules/@xrkseek/server-face/dist/agent-roster-store.js +495 -0
  76. package/node_modules/@xrkseek/server-face/dist/agent-roster-store.js.map +1 -0
  77. package/node_modules/@xrkseek/server-face/dist/agent-roster-tools.d.ts +12 -0
  78. package/node_modules/@xrkseek/server-face/dist/agent-roster-tools.d.ts.map +1 -0
  79. package/node_modules/@xrkseek/server-face/dist/agent-roster-tools.js +141 -0
  80. package/node_modules/@xrkseek/server-face/dist/agent-roster-tools.js.map +1 -0
  81. package/node_modules/@xrkseek/server-face/dist/agent-team-roles.d.ts +6 -0
  82. package/node_modules/@xrkseek/server-face/dist/agent-team-roles.d.ts.map +1 -1
  83. package/node_modules/@xrkseek/server-face/dist/agent-team-roles.js +61 -0
  84. package/node_modules/@xrkseek/server-face/dist/agent-team-roles.js.map +1 -1
  85. package/node_modules/@xrkseek/server-face/dist/capture-member-playbook.d.ts +6 -0
  86. package/node_modules/@xrkseek/server-face/dist/capture-member-playbook.d.ts.map +1 -0
  87. package/node_modules/@xrkseek/server-face/dist/capture-member-playbook.js +43 -0
  88. package/node_modules/@xrkseek/server-face/dist/capture-member-playbook.js.map +1 -0
  89. package/node_modules/@xrkseek/server-face/dist/context.d.ts +4 -0
  90. package/node_modules/@xrkseek/server-face/dist/context.d.ts.map +1 -1
  91. package/node_modules/@xrkseek/server-face/dist/dispatch.d.ts.map +1 -1
  92. package/node_modules/@xrkseek/server-face/dist/dispatch.js +19 -0
  93. package/node_modules/@xrkseek/server-face/dist/dispatch.js.map +1 -1
  94. package/node_modules/@xrkseek/server-face/dist/fork-cut.d.ts +3 -2
  95. package/node_modules/@xrkseek/server-face/dist/fork-cut.d.ts.map +1 -1
  96. package/node_modules/@xrkseek/server-face/dist/fork-cut.js +58 -20
  97. package/node_modules/@xrkseek/server-face/dist/fork-cut.js.map +1 -1
  98. package/node_modules/@xrkseek/server-face/dist/handlers/session.d.ts.map +1 -1
  99. package/node_modules/@xrkseek/server-face/dist/handlers/session.js +60 -20
  100. package/node_modules/@xrkseek/server-face/dist/handlers/session.js.map +1 -1
  101. package/node_modules/@xrkseek/server-face/dist/handlers/subagent.d.ts.map +1 -1
  102. package/node_modules/@xrkseek/server-face/dist/handlers/subagent.js +5 -0
  103. package/node_modules/@xrkseek/server-face/dist/handlers/subagent.js.map +1 -1
  104. package/node_modules/@xrkseek/server-face/dist/handlers/team.d.ts +11 -0
  105. package/node_modules/@xrkseek/server-face/dist/handlers/team.d.ts.map +1 -0
  106. package/node_modules/@xrkseek/server-face/dist/handlers/team.js +268 -0
  107. package/node_modules/@xrkseek/server-face/dist/handlers/team.js.map +1 -0
  108. package/node_modules/@xrkseek/server-face/dist/index.d.ts +4 -0
  109. package/node_modules/@xrkseek/server-face/dist/index.d.ts.map +1 -1
  110. package/node_modules/@xrkseek/server-face/dist/index.js +4 -0
  111. package/node_modules/@xrkseek/server-face/dist/index.js.map +1 -1
  112. package/node_modules/@xrkseek/server-face/dist/model-catalog.d.ts +11 -1
  113. package/node_modules/@xrkseek/server-face/dist/model-catalog.d.ts.map +1 -1
  114. package/node_modules/@xrkseek/server-face/dist/model-catalog.js +27 -1
  115. package/node_modules/@xrkseek/server-face/dist/model-catalog.js.map +1 -1
  116. package/node_modules/@xrkseek/server-face/dist/presence-tools.d.ts.map +1 -1
  117. package/node_modules/@xrkseek/server-face/dist/presence-tools.js +15 -6
  118. package/node_modules/@xrkseek/server-face/dist/presence-tools.js.map +1 -1
  119. package/node_modules/@xrkseek/server-face/dist/presets-catalog.d.ts +16 -0
  120. package/node_modules/@xrkseek/server-face/dist/presets-catalog.d.ts.map +1 -1
  121. package/node_modules/@xrkseek/server-face/dist/presets-catalog.js +5 -0
  122. package/node_modules/@xrkseek/server-face/dist/presets-catalog.js.map +1 -1
  123. package/node_modules/@xrkseek/server-face/dist/projections/units/turn-outline.d.ts +8 -2
  124. package/node_modules/@xrkseek/server-face/dist/projections/units/turn-outline.d.ts.map +1 -1
  125. package/node_modules/@xrkseek/server-face/dist/projections/units/turn-outline.js +14 -12
  126. package/node_modules/@xrkseek/server-face/dist/projections/units/turn-outline.js.map +1 -1
  127. package/node_modules/@xrkseek/server-face/dist/runtime.d.ts.map +1 -1
  128. package/node_modules/@xrkseek/server-face/dist/runtime.js +19 -0
  129. package/node_modules/@xrkseek/server-face/dist/runtime.js.map +1 -1
  130. package/node_modules/@xrkseek/server-face/dist/session-model-store.d.ts +2 -0
  131. package/node_modules/@xrkseek/server-face/dist/session-model-store.d.ts.map +1 -1
  132. package/node_modules/@xrkseek/server-face/dist/session-model-store.js +14 -0
  133. package/node_modules/@xrkseek/server-face/dist/session-model-store.js.map +1 -1
  134. package/node_modules/@xrkseek/server-face/dist/session-status.d.ts +13 -0
  135. package/node_modules/@xrkseek/server-face/dist/session-status.d.ts.map +1 -1
  136. package/node_modules/@xrkseek/server-face/dist/session-status.js +19 -2
  137. package/node_modules/@xrkseek/server-face/dist/session-status.js.map +1 -1
  138. package/node_modules/@xrkseek/server-face/dist/session-thread-publish.d.ts +17 -0
  139. package/node_modules/@xrkseek/server-face/dist/session-thread-publish.d.ts.map +1 -0
  140. package/node_modules/@xrkseek/server-face/dist/session-thread-publish.js +34 -0
  141. package/node_modules/@xrkseek/server-face/dist/session-thread-publish.js.map +1 -0
  142. package/node_modules/@xrkseek/server-face/dist/session-thread-store.d.ts +38 -0
  143. package/node_modules/@xrkseek/server-face/dist/session-thread-store.d.ts.map +1 -0
  144. package/node_modules/@xrkseek/server-face/dist/session-thread-store.js +207 -0
  145. package/node_modules/@xrkseek/server-face/dist/session-thread-store.js.map +1 -0
  146. package/node_modules/@xrkseek/server-face/dist/session-thread-tools.d.ts +12 -0
  147. package/node_modules/@xrkseek/server-face/dist/session-thread-tools.d.ts.map +1 -0
  148. package/node_modules/@xrkseek/server-face/dist/session-thread-tools.js +223 -0
  149. package/node_modules/@xrkseek/server-face/dist/session-thread-tools.js.map +1 -0
  150. package/node_modules/@xrkseek/server-face/dist/settings-document.d.ts.map +1 -1
  151. package/node_modules/@xrkseek/server-face/dist/settings-document.js +10 -11
  152. package/node_modules/@xrkseek/server-face/dist/settings-document.js.map +1 -1
  153. package/node_modules/@xrkseek/server-face/dist/settings-schemas.d.ts.map +1 -1
  154. package/node_modules/@xrkseek/server-face/dist/settings-schemas.js +5 -10
  155. package/node_modules/@xrkseek/server-face/dist/settings-schemas.js.map +1 -1
  156. package/node_modules/@xrkseek/server-face/dist/subagent-registry.d.ts +19 -0
  157. package/node_modules/@xrkseek/server-face/dist/subagent-registry.d.ts.map +1 -1
  158. package/node_modules/@xrkseek/server-face/dist/subagent-registry.js +47 -13
  159. package/node_modules/@xrkseek/server-face/dist/subagent-registry.js.map +1 -1
  160. package/node_modules/@xrkseek/server-face/dist/subagent-tools.d.ts +21 -0
  161. package/node_modules/@xrkseek/server-face/dist/subagent-tools.d.ts.map +1 -1
  162. package/node_modules/@xrkseek/server-face/dist/subagent-tools.js +148 -37
  163. package/node_modules/@xrkseek/server-face/dist/subagent-tools.js.map +1 -1
  164. package/node_modules/@xrkseek/server-face/dist/types.d.ts +9 -0
  165. package/node_modules/@xrkseek/server-face/dist/types.d.ts.map +1 -1
  166. package/node_modules/@xrkseek/server-face/dist/wire/paths.d.ts.map +1 -1
  167. package/node_modules/@xrkseek/server-face/dist/wire/paths.js +2 -0
  168. package/node_modules/@xrkseek/server-face/dist/wire/paths.js.map +1 -1
  169. package/node_modules/@xrkseek/server-face/dist/workspace-face.d.ts.map +1 -1
  170. package/node_modules/@xrkseek/server-face/dist/workspace-face.js +7 -0
  171. package/node_modules/@xrkseek/server-face/dist/workspace-face.js.map +1 -1
  172. package/node_modules/@xrkseek/server-host/dist/agent-cache.d.ts +5 -1
  173. package/node_modules/@xrkseek/server-host/dist/agent-cache.d.ts.map +1 -1
  174. package/node_modules/@xrkseek/server-host/dist/agent-cache.js +29 -3
  175. package/node_modules/@xrkseek/server-host/dist/agent-cache.js.map +1 -1
  176. package/node_modules/@xrkseek/server-host/dist/index.d.ts +21 -0
  177. package/node_modules/@xrkseek/server-host/dist/index.d.ts.map +1 -1
  178. package/node_modules/@xrkseek/server-host/dist/index.js +105 -8
  179. package/node_modules/@xrkseek/server-host/dist/index.js.map +1 -1
  180. package/node_modules/@xrkseek/server-http/dist/static.d.ts.map +1 -1
  181. package/node_modules/@xrkseek/server-http/dist/static.js +45 -5
  182. package/node_modules/@xrkseek/server-http/dist/static.js.map +1 -1
  183. package/node_modules/@xrkseek/workspace/dist/ecosystem-instructions.d.ts +8 -0
  184. package/node_modules/@xrkseek/workspace/dist/ecosystem-instructions.d.ts.map +1 -1
  185. package/node_modules/@xrkseek/workspace/dist/ecosystem-instructions.js +6 -2
  186. package/node_modules/@xrkseek/workspace/dist/ecosystem-instructions.js.map +1 -1
  187. package/node_modules/@xrkseek/workspace/dist/index.d.ts +16 -0
  188. package/node_modules/@xrkseek/workspace/dist/index.d.ts.map +1 -1
  189. package/node_modules/@xrkseek/workspace/dist/index.js +17 -8
  190. package/node_modules/@xrkseek/workspace/dist/index.js.map +1 -1
  191. package/package.json +1 -1
@@ -0,0 +1,141 @@
1
+ import { canvasWorkspaceIdForSession } from "./canvas-tools.js";
2
+ import { isAgentTeamSpawnRole } from "./agent-team-roles.js";
3
+ import { formatRosterCatalog, parseMemberAppearance, parseMemberToolPolicy, parseRosterScope, rosterPublicFields, } from "./agent-roster-store.js";
4
+ import { captureSessionPlaybook } from "./capture-member-playbook.js";
5
+ function registerTool(tools, tool) {
6
+ if (tools.get(tool.name))
7
+ return;
8
+ tools.register(tool);
9
+ }
10
+ function readArgs(args) {
11
+ if (!args || typeof args !== "object" || Array.isArray(args))
12
+ return {};
13
+ return args;
14
+ }
15
+ /** Register team_list / team_save. Spawn stays `subagent` + member_id. */
16
+ export function bindAgentRosterTools(tools, options) {
17
+ const { runtime, sessionId } = options;
18
+ const ws = () => canvasWorkspaceIdForSession(runtime, sessionId);
19
+ registerTool(tools, {
20
+ name: "team_list",
21
+ description: "List Agent Team members (global + this workspace). A member is the child's " +
22
+ "tools, inject, and playbook — the same three surfaces the parent edits via " +
23
+ "preset / .xrk / the user message. Short catalog only. Spawn with subagent member_id.",
24
+ parameters: { type: "object", properties: {}, additionalProperties: false },
25
+ isConcurrencySafe: () => true,
26
+ presentCall: () => ({
27
+ card: "generic",
28
+ title: "team_list",
29
+ kind: "search",
30
+ rawInput: {},
31
+ }),
32
+ dynamicSchema: () => ({
33
+ description: "List Agent Team members. Spawn with subagent member_id.\n" +
34
+ formatRosterCatalog(runtime.agentRoster.listVisible(ws())),
35
+ }),
36
+ execute: async () => {
37
+ const workspaceId = ws();
38
+ const members = runtime.agentRoster
39
+ .listVisible(workspaceId)
40
+ .map(rosterPublicFields);
41
+ return { content: JSON.stringify({ workspaceId, members }) };
42
+ },
43
+ });
44
+ registerTool(tools, {
45
+ name: "team_save",
46
+ description: "Publish a child profile onto Agent Team (tools + inject + playbook). " +
47
+ "Use after a repeatable process (release, review, deploy) so later `subagent member_id` " +
48
+ "does not rediscover it. from_session=true fills name/playbook from this chat. " +
49
+ "scope global|workspace. inject minimal (skip home persona + skill catalog) | subagent. " +
50
+ "tools {mode:allow|deny, names:[...]} weakens the parent preset only. " +
51
+ "role worker|researcher|reviewer|lead|default is the deny template under the playbook.",
52
+ parameters: {
53
+ type: "object",
54
+ properties: {
55
+ id: { type: "string" },
56
+ name: { type: "string" },
57
+ playbook: {
58
+ type: "string",
59
+ description: "Standalone instructions a later child can run without this chat.",
60
+ },
61
+ role: { type: "string" },
62
+ from_session: {
63
+ type: "boolean",
64
+ description: "If true, mint name/playbook from this session's user+assistant log.",
65
+ },
66
+ shape: { type: "string" },
67
+ color: { type: "string" },
68
+ brief: { type: "string" },
69
+ scope: {
70
+ type: "string",
71
+ description: "global | workspace (default workspace)",
72
+ },
73
+ inject: {
74
+ type: "string",
75
+ description: "minimal (default, skip home persona + skill catalog) | subagent",
76
+ },
77
+ tools: {
78
+ type: "object",
79
+ description: "Weaken-only tool policy. {mode:'allow'|'deny', names:['bash','read']}.",
80
+ properties: {
81
+ mode: { type: "string" },
82
+ names: { type: "array", items: { type: "string" } },
83
+ },
84
+ additionalProperties: false,
85
+ },
86
+ },
87
+ additionalProperties: false,
88
+ },
89
+ presentCall: (args) => ({
90
+ card: "generic",
91
+ title: "team_save",
92
+ kind: "execute",
93
+ rawInput: args,
94
+ }),
95
+ execute: async (args) => {
96
+ const a = readArgs(args);
97
+ const captured = a.from_session === true
98
+ ? captureSessionPlaybook(runtime, sessionId)
99
+ : undefined;
100
+ const name = String(a.name ?? "").trim() || captured?.name || "";
101
+ const playbook = String(a.playbook ?? "").trim() || captured?.playbook || "";
102
+ const roleRaw = typeof a.role === "string" ? a.role : "worker";
103
+ const canvasId = ws();
104
+ const scope = parseRosterScope(a.scope);
105
+ const tools = parseMemberToolPolicy(a.tools);
106
+ const appearancePatch = {
107
+ ...(typeof a.shape === "string" ? { shape: a.shape } : {}),
108
+ ...(typeof a.color === "string" ? { color: a.color } : {}),
109
+ };
110
+ const member = runtime.agentRoster.upsertAtScope(canvasId, scope, {
111
+ name,
112
+ playbook,
113
+ role: isAgentTeamSpawnRole(roleRaw) ? roleRaw : "worker",
114
+ ...(Object.keys(appearancePatch).length > 0
115
+ ? {
116
+ appearance: parseMemberAppearance(appearancePatch, {
117
+ shape: "blob",
118
+ color: "cream",
119
+ }),
120
+ }
121
+ : {}),
122
+ ...(typeof a.brief === "string" ? { brief: a.brief } : {}),
123
+ ...(a.inject === "subagent" || a.inject === "minimal"
124
+ ? { inject: a.inject }
125
+ : {}),
126
+ ...(tools ? { tools } : {}),
127
+ ...(typeof a.id === "string" ? { id: a.id } : {}),
128
+ });
129
+ if (!member) {
130
+ return { content: "team_save: name and playbook required", isError: true };
131
+ }
132
+ return {
133
+ content: JSON.stringify({
134
+ workspaceId: scope === "global" ? "global" : canvasId,
135
+ member,
136
+ }),
137
+ };
138
+ },
139
+ });
140
+ }
141
+ //# sourceMappingURL=agent-roster-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-roster-tools.js","sourceRoot":"","sources":["../src/agent-roster-tools.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,10 @@ export interface SubagentSpawnPreambleInput {
22
22
  readonly isolatedWorktree: boolean;
23
23
  /** Bounded root-evidence block (see {@link rootUserAuthorizationBlock}). */
24
24
  readonly userAuthorization?: string;
25
+ /** Named 干员 this child was spawned as. */
26
+ readonly memberId?: string;
27
+ /** Inject thickness from the 干员 record. */
28
+ readonly inject?: "subagent" | "minimal";
25
29
  }
26
30
  /**
27
31
  * Identity block every in-process child sees before the parent-written task.
@@ -30,6 +34,8 @@ export interface SubagentSpawnPreambleInput {
30
34
  */
31
35
  export declare function applySubagentSpawnPreamble(input: SubagentSpawnPreambleInput): string;
32
36
  export declare function listSpawnRoleIds(): readonly AgentTeamSpawnRole[];
37
+ /** Tools denied for one role (empty for default / lead). */
38
+ export declare function roleDeniedTools(role: AgentTeamSpawnRole | undefined): readonly string[];
33
39
  /**
34
40
  * The human's own recent asks from the parent conversation — the child's only
35
41
  * view of what the user actually authorized.
@@ -1 +1 @@
1
- {"version":3,"file":"agent-team-roles.d.ts","sourceRoot":"","sources":["../src/agent-team-roles.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAIL,KAAK,YAAY,EAClB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,MAAM,kBAAkB,GAC1B,SAAS,GACT,QAAQ,GACR,YAAY,GACZ,UAAU,GACV,MAAM,CAAC;AAEX,eAAO,MAAM,sBAAsB,EAAE,SAAS,kBAAkB,EAM/D,CAAC;AAEF,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,kBAAkB,CAQ7B;AAoCD,qFAAqF;AACrF,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,OAAO,GACb,kBAAkB,GAAG,SAAS,CAOhC;AAED,gDAAgD;AAChD,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,kBAAkB,GAAG,SAAS,GACnC,MAAM,CAMR;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,aAAa,CAAC;IAC1C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,kBAAkB,CAAC;IACnC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACnC,4EAA4E;IAC5E,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CACrC;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,0BAA0B,GAChC,MAAM,CAkCR;AAED,wBAAgB,gBAAgB,IAAI,SAAS,kBAAkB,EAAE,CAEhE;AAOD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE;IAChD,QAAQ,CAAC,YAAY,EAAE,SAAS,YAAY,EAAE,CAAC;IAC/C,4EAA4E;IAC5E,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CACnC,GAAG,MAAM,GAAG,SAAS,CAwBrB"}
1
+ {"version":3,"file":"agent-team-roles.d.ts","sourceRoot":"","sources":["../src/agent-team-roles.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,MAAM,kBAAkB,GAC1B,SAAS,GACT,QAAQ,GACR,YAAY,GACZ,UAAU,GACV,MAAM,CAAC;AAEX,eAAO,MAAM,sBAAsB,EAAE,SAAS,kBAAkB,EAM/D,CAAC;AAEF,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,kBAAkB,CAQ7B;AA4FD,qFAAqF;AACrF,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,OAAO,GACb,kBAAkB,GAAG,SAAS,CAOhC;AAED,gDAAgD;AAChD,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,kBAAkB,GAAG,SAAS,GACnC,MAAM,CAMR;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,aAAa,CAAC;IAC1C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,kBAAkB,CAAC;IACnC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACnC,4EAA4E;IAC5E,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,0CAA0C;IAC1C,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,2CAA2C;IAC3C,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;CAC1C;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,0BAA0B,GAChC,MAAM,CAwCR;AAED,wBAAgB,gBAAgB,IAAI,SAAS,kBAAkB,EAAE,CAEhE;AAED,4DAA4D;AAC5D,wBAAgB,eAAe,CAC7B,IAAI,EAAE,kBAAkB,GAAG,SAAS,GACnC,SAAS,MAAM,EAAE,CAGnB;AAOD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE;IAChD,QAAQ,CAAC,YAAY,EAAE,SAAS,YAAY,EAAE,CAAC;IAC/C,4EAA4E;IAC5E,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CACnC,GAAG,MAAM,GAAG,SAAS,CAwBrB"}
@@ -26,14 +26,63 @@ const TEMPLATES = {
26
26
  id: "worker",
27
27
  reminder: "ROLE: worker. Execute the assigned task precisely. Prefer concrete edits and evidence over planning. Ask only when blocked. " +
28
28
  "You are not the only agent editing this codebase: stay inside the scope you were given and never revert another agent's or the user's changes.",
29
+ // A worker implements; spawning more subagents is the lead's job.
30
+ deniedTools: ["subagent", "ralph", "team_graph"],
29
31
  },
30
32
  researcher: {
31
33
  id: "researcher",
32
34
  reminder: "ROLE: researcher. Gather facts with read/search tools. Prefer citations (paths · symbols · quotes). Do not make durable edits unless the task explicitly requires them.",
35
+ // Read-only by construction: no edits, no shell, no delegation.
36
+ deniedTools: [
37
+ "apply_edit",
38
+ "apply_patch",
39
+ "write_file",
40
+ "bash",
41
+ "terminal_open",
42
+ "terminal_send",
43
+ "terminal_read",
44
+ "terminal_list",
45
+ "terminal_close",
46
+ "terminal_signal",
47
+ "subagent",
48
+ "ralph",
49
+ "team_graph",
50
+ "send_message",
51
+ "followup_task",
52
+ "interrupt_agent",
53
+ "wait_agent",
54
+ "list_agents",
55
+ "analytics",
56
+ ],
33
57
  },
34
58
  reviewer: {
35
59
  id: "reviewer",
36
60
  reminder: "ROLE: reviewer. Critique risks, regressions, and missing tests. Prefer findings with severity and file references. Do not implement fixes unless asked.",
61
+ // Review must never mutate: no writes, no shell, no network (offline
62
+ // evidence only), no delegation, no self-spawn.
63
+ deniedTools: [
64
+ "apply_edit",
65
+ "apply_patch",
66
+ "write_file",
67
+ "bash",
68
+ "terminal_open",
69
+ "terminal_send",
70
+ "terminal_read",
71
+ "terminal_list",
72
+ "terminal_close",
73
+ "terminal_signal",
74
+ "web_search",
75
+ "web_fetch",
76
+ "subagent",
77
+ "ralph",
78
+ "team_graph",
79
+ "send_message",
80
+ "followup_task",
81
+ "interrupt_agent",
82
+ "wait_agent",
83
+ "list_agents",
84
+ "analytics",
85
+ ],
37
86
  },
38
87
  lead: {
39
88
  id: "lead",
@@ -87,6 +136,12 @@ export function applySubagentSpawnPreamble(input) {
87
136
  `- mode: ${modeLine}`,
88
137
  `- label: ${input.label.trim() || "subagent"}`,
89
138
  `- role: ${role}`,
139
+ ...(input.memberId
140
+ ? [
141
+ `- member_id: ${input.memberId}`,
142
+ `- inject: ${input.inject === "subagent" ? "subagent" : "minimal"}`,
143
+ ]
144
+ : []),
90
145
  `- inherit_context: ${inheritLine}`,
91
146
  `- workspace_cwd: ${input.cwd}`,
92
147
  `- workspace: ${workspaceLine}`,
@@ -105,6 +160,12 @@ export function applySubagentSpawnPreamble(input) {
105
160
  export function listSpawnRoleIds() {
106
161
  return AGENT_TEAM_SPAWN_ROLES;
107
162
  }
163
+ /** Tools denied for one role (empty for default / lead). */
164
+ export function roleDeniedTools(role) {
165
+ if (!role || role === "default" || role === "lead")
166
+ return [];
167
+ return TEMPLATES[role].deniedTools ?? [];
168
+ }
108
169
  /** Bounded root-evidence ceiling (mirrors Codex `MAX_ROOT_MESSAGES`). */
109
170
  const MAX_USER_AUTHORIZATION_MESSAGES = 4;
110
171
  /** Per-message text cap, so one long paste cannot crowd out the rest. */
@@ -1 +1 @@
1
- {"version":3,"file":"agent-team-roles.js","sourceRoot":"","sources":["../src/agent-team-roles.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-team-roles.js","sourceRoot":"","sources":["../src/agent-team-roles.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { FaceRuntime } from "./context.js";
2
+ export declare function captureSessionPlaybook(runtime: FaceRuntime, sessionId: string): {
3
+ name: string;
4
+ playbook: string;
5
+ } | undefined;
6
+ //# sourceMappingURL=capture-member-playbook.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capture-member-playbook.d.ts","sourceRoot":"","sources":["../src/capture-member-playbook.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAehD,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,MAAM,GAChB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAqBhD"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Capture a reusable 干员 playbook from a session log.
3
+ */
4
+ import { readSessionEvents } from "@xrkseek/core-session";
5
+ import { flattenText } from "@xrkseek/protocol";
6
+ import { lastAssistantBodyText } from "./adapt/subagent-notice.js";
7
+ import { MEMBER_NAME_MAX, MEMBER_PLAYBOOK_MAX } from "./agent-roster-store.js";
8
+ function lastUserTexts(events, limit = 3) {
9
+ const out = [];
10
+ for (let i = events.length - 1; i >= 0 && out.length < limit; i -= 1) {
11
+ const ev = events[i];
12
+ if (ev.type !== "user/message")
13
+ continue;
14
+ const text = flattenText(ev.content).trim();
15
+ if (text)
16
+ out.unshift(text);
17
+ }
18
+ return out;
19
+ }
20
+ export function captureSessionPlaybook(runtime, sessionId) {
21
+ const events = readSessionEvents(runtime.store, sessionId);
22
+ const users = lastUserTexts(events);
23
+ if (users.length === 0)
24
+ return undefined;
25
+ const goal = users[0].replace(/\s+/g, " ").trim();
26
+ const name = goal.slice(0, MEMBER_NAME_MAX) || "会话干员";
27
+ const assistant = lastAssistantBodyText(events).slice(0, 2_400);
28
+ const playbook = [
29
+ "You are a reusable workspace 干员 captured from a finished session.",
30
+ "Follow this workflow for the next TASK without rediscovering the process.",
31
+ "",
32
+ "GOAL (from the human):",
33
+ users.join("\n---\n"),
34
+ "",
35
+ ...(assistant
36
+ ? ["HOW YOU WORKED (evidence, truncated):", assistant]
37
+ : ["HOW YOU WORKED: not yet written; infer from GOAL and the TASK."]),
38
+ ]
39
+ .join("\n")
40
+ .slice(0, MEMBER_PLAYBOOK_MAX);
41
+ return { name, playbook };
42
+ }
43
+ //# sourceMappingURL=capture-member-playbook.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capture-member-playbook.js","sourceRoot":"","sources":["../src/capture-member-playbook.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAqB,MAAM,mBAAmB,CAAC;AAEnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE/E,SAAS,aAAa,CAAC,MAA+B,EAAE,KAAK,GAAG,CAAC;IAC/D,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,KAAK,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACrE,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAE,CAAC;QACtB,IAAI,EAAE,CAAC,IAAI,KAAK,cAAc;YAAE,SAAS;QACzC,MAAM,IAAI,GAAG,WAAW,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5C,IAAI,IAAI;YAAE,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,OAAoB,EACpB,SAAiB;IAEjB,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC3D,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IACpC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACzC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IACnD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,CAAC,IAAI,MAAM,CAAC;IACtD,MAAM,SAAS,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAChE,MAAM,QAAQ,GAAG;QACf,mEAAmE;QACnE,2EAA2E;QAC3E,EAAE;QACF,wBAAwB;QACxB,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC;QACrB,EAAE;QACF,GAAG,CAAC,SAAS;YACX,CAAC,CAAC,CAAC,uCAAuC,EAAE,SAAS,CAAC;YACtD,CAAC,CAAC,CAAC,gEAAgE,CAAC,CAAC;KACxE;SACE,IAAI,CAAC,IAAI,CAAC;SACV,KAAK,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAC;IACjC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AAC5B,CAAC"}
@@ -144,6 +144,10 @@ export interface FaceRuntime {
144
144
  readonly goals: FaceGoalStore;
145
145
  /** Workspace-scoped Canvas documents (`{XRK_HOME}/canvases/<workspaceId>/`). */
146
146
  readonly canvases: FaceCanvasStore;
147
+ /** Workspace 主线 catalog + per-session 支线. */
148
+ readonly sessionThreads: import("./session-thread-store.js").FaceSessionThreadStore;
149
+ /** Workspace Agent Team 干员 roster. */
150
+ readonly agentRoster: import("./agent-roster-store.js").FaceAgentRosterStore;
147
151
  /** Per-session Overview emotion-ball sticky state (`presence_set`). */
148
152
  readonly presence: FacePresenceStore;
149
153
  /** Session-scoped turn/step numbers for DSH wire events. */
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"dispatch.d.ts","sourceRoot":"","sources":["../src/dispatch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAsClD,OAAO,EAIL,KAAK,WAAW,EACjB,MAAM,qBAAqB,CAAC;AA0O7B,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAElE;AAED,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,eAAe,CAAC,CAkB1B"}
1
+ {"version":3,"file":"dispatch.d.ts","sourceRoot":"","sources":["../src/dispatch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAsClD,OAAO,EAIL,KAAK,WAAW,EACjB,MAAM,qBAAqB,CAAC;AAgQ7B,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAElE;AAED,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,eAAe,CAAC,CAkB1B"}
@@ -19,6 +19,7 @@ import { cordisRunnerHandler } from "./handlers/cordis-stub.js";
19
19
  import { fileReferencesList, sessionReferenceResolverCandidates, } from "./handlers/references.js";
20
20
  import { changesFileDiff } from "./handlers/changes.js";
21
21
  import { canvasGet, canvasList } from "./handlers/canvas.js";
22
+ import { threadsList, threadsUpsert, threadsSwitch, threadsRemove, teamList, teamUpsert, teamRemove, teamCapture, teamDispatch, } from "./handlers/team.js";
22
23
  const HANDLERS = {
23
24
  "host.describe": hostDescribe,
24
25
  "host.pickDirectory": hostPickDirectory,
@@ -145,6 +146,24 @@ const HANDLERS = {
145
146
  "canvas/list": canvasList,
146
147
  "canvas.get": canvasGet,
147
148
  "canvas/get": canvasGet,
149
+ "threads/list": threadsList,
150
+ "threads.list": threadsList,
151
+ "threads/upsert": threadsUpsert,
152
+ "threads.upsert": threadsUpsert,
153
+ "threads/switch": threadsSwitch,
154
+ "threads.switch": threadsSwitch,
155
+ "threads/remove": threadsRemove,
156
+ "threads.remove": threadsRemove,
157
+ "team/list": teamList,
158
+ "team.list": teamList,
159
+ "team/upsert": teamUpsert,
160
+ "team.upsert": teamUpsert,
161
+ "team/remove": teamRemove,
162
+ "team.remove": teamRemove,
163
+ "team/capture": teamCapture,
164
+ "team.capture": teamCapture,
165
+ "team/dispatch": teamDispatch,
166
+ "team.dispatch": teamDispatch,
148
167
  };
149
168
  export function getHandler(method) {
150
169
  return HANDLERS[method] ?? cordisRunnerHandler(method);
@@ -1 +1 @@
1
- {"version":3,"file":"dispatch.js","sourceRoot":"","sources":["../src/dispatch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dispatch.js","sourceRoot":"","sources":["../src/dispatch.ts"],"names":[],"mappings":"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"}
@@ -20,8 +20,9 @@ export type ForkCutFail = {
20
20
  /**
21
21
  * Wire history seq is 1-based (`index + 1`), matching `session.history`.
22
22
  * `atSeq` anchors the first `turn/end` at or after that seq; omitted /
23
- * past-end anchors use the last completed turn. Legacy `beforeSeq` is a raw
24
- * exclusive offset (no turn mapping) for older callers.
23
+ * past-end anchors use the last completed turn. `beforeSeq` is an exclusive
24
+ * offset; the seed then keeps only completed turns that contain a human
25
+ * `user/message` (open / abort-only turns stay out).
25
26
  */
26
27
  export declare function resolveForkCut(events: readonly SessionEvent[], opts: {
27
28
  readonly atSeq?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"fork-cut.d.ts","sourceRoot":"","sources":["../src/fork-cut.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAE7D,MAAM,MAAM,SAAS,GAAG;IACtB,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,yEAAyE;IACzE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IACnB,QAAQ,CAAC,IAAI,EAAE,kBAAkB,GAAG,iBAAiB,CAAC;IACtD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,SAAS,YAAY,EAAE,EAC/B,IAAI,EAAE;IAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7D,SAAS,GAAG,WAAW,CA8EzB;AAED,qFAAqF;AACrF,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,SAAS,YAAY,EAAE,GAC9B,kBAAkB,GAAG,SAAS,CAchC;AAED,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,SAAS,YAAY,EAAE,GAC9B,OAAO,CAOT"}
1
+ {"version":3,"file":"fork-cut.d.ts","sourceRoot":"","sources":["../src/fork-cut.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAIL,KAAK,YAAY,EAClB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAE7D,MAAM,MAAM,SAAS,GAAG;IACtB,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,yEAAyE;IACzE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IACnB,QAAQ,CAAC,IAAI,EAAE,kBAAkB,GAAG,iBAAiB,CAAC;IACtD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;AA6DF;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,SAAS,YAAY,EAAE,EAC/B,IAAI,EAAE;IAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7D,SAAS,GAAG,WAAW,CA8EzB;AAED,qFAAqF;AACrF,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,SAAS,YAAY,EAAE,GAC9B,kBAAkB,GAAG,SAAS,CAEhC;AAED,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,SAAS,YAAY,EAAE,GAC9B,OAAO,CAOT"}
@@ -3,13 +3,65 @@
3
3
  * selected `turn/end` (inclusive). Post-turn inbox / title / model settings
4
4
  * stay out of the child.
5
5
  */
6
- import { contentHasImage, } from "@xrkseek/protocol";
7
- import { routeFromRequestHeader } from "./adapt/model-route.js";
6
+ import { contentHasImage, isHumanUserMessageSource, } from "@xrkseek/protocol";
7
+ import { lastRequestHeaderSelection } from "./adapt/model-route.js";
8
+ /**
9
+ * Exclusive `beforeSeq` cut, then drop a trailing open / human-less turn.
10
+ * Edit-resubmit uses `beforeSeq = userSeq - 1`; `turn/start` sits before the
11
+ * user row, so a raw offset would seed an open turn and the child's next
12
+ * prompt would `repairOpenTurn` it into a ghost 「已停止」.
13
+ */
14
+ function trimBeforeSeqCut(events, rawCut) {
15
+ const end = Math.min(Math.max(0, rawCut), events.length);
16
+ const byId = new Map();
17
+ const order = [];
18
+ const accFor = (turnId, index) => {
19
+ let acc = byId.get(turnId);
20
+ if (acc === undefined) {
21
+ acc = { start: index, hasHuman: false, started: false };
22
+ byId.set(turnId, acc);
23
+ order.push(turnId);
24
+ }
25
+ return acc;
26
+ };
27
+ for (let i = 0; i < end; i++) {
28
+ const event = events[i];
29
+ if (event === undefined || !("turnId" in event))
30
+ continue;
31
+ const turnId = event.turnId;
32
+ if (typeof turnId !== "string" || turnId.length === 0)
33
+ continue;
34
+ const acc = accFor(turnId, i);
35
+ if (event.type === "turn/start") {
36
+ acc.started = true;
37
+ acc.start = i;
38
+ }
39
+ if (event.type === "user/message" &&
40
+ isHumanUserMessageSource(event.source)) {
41
+ acc.hasHuman = true;
42
+ }
43
+ if (event.type === "turn/end")
44
+ acc.end = i;
45
+ }
46
+ let cut = 0;
47
+ let sawStart = false;
48
+ for (const turnId of order) {
49
+ const acc = byId.get(turnId);
50
+ if (acc === undefined || !acc.started)
51
+ continue;
52
+ sawStart = true;
53
+ if (acc.end === undefined || !acc.hasHuman)
54
+ return acc.start;
55
+ cut = acc.end + 1;
56
+ }
57
+ return sawStart ? cut : end;
58
+ }
8
59
  /**
9
60
  * Wire history seq is 1-based (`index + 1`), matching `session.history`.
10
61
  * `atSeq` anchors the first `turn/end` at or after that seq; omitted /
11
- * past-end anchors use the last completed turn. Legacy `beforeSeq` is a raw
12
- * exclusive offset (no turn mapping) for older callers.
62
+ * past-end anchors use the last completed turn. `beforeSeq` is an exclusive
63
+ * offset; the seed then keeps only completed turns that contain a human
64
+ * `user/message` (open / abort-only turns stay out).
13
65
  */
14
66
  export function resolveForkCut(events, opts) {
15
67
  const atSeq = opts.atSeq;
@@ -38,7 +90,7 @@ export function resolveForkCut(events, opts) {
38
90
  if (atSeq === undefined && beforeSeq !== undefined) {
39
91
  return {
40
92
  ok: true,
41
- cut: Math.min(beforeSeq, events.length),
93
+ cut: trimBeforeSeqCut(events, beforeSeq),
42
94
  beforeSeq,
43
95
  };
44
96
  }
@@ -85,21 +137,7 @@ export function resolveForkCut(events, opts) {
85
137
  }
86
138
  /** Latest `request/header` route inside the seed prefix (ignores live Face maps). */
87
139
  export function modelSelectionFromPrefix(events) {
88
- let last;
89
- for (const event of events) {
90
- if (event.type !== "request/header")
91
- continue;
92
- const route = routeFromRequestHeader(event);
93
- if (!route)
94
- continue;
95
- const effort = event.header?.config?.reasoningEffort?.trim();
96
- last = {
97
- provider: route.provider,
98
- model: route.model,
99
- ...(effort ? { reasoningEffort: effort } : {}),
100
- };
101
- }
102
- return last;
140
+ return lastRequestHeaderSelection(events);
103
141
  }
104
142
  export function prefixHasImageContent(events) {
105
143
  for (const ev of events) {
@@ -1 +1 @@
1
- {"version":3,"file":"fork-cut.js","sourceRoot":"","sources":["../src/fork-cut.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fork-cut.js","sourceRoot":"","sources":["../src/fork-cut.ts"],"names":[],"mappings":"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"}