botmux 2.86.0 → 2.88.0

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 (247) hide show
  1. package/README.en.md +27 -0
  2. package/README.md +27 -0
  3. package/dist/adapters/backend/herdr-backend.d.ts.map +1 -1
  4. package/dist/adapters/backend/herdr-backend.js +12 -1
  5. package/dist/adapters/backend/herdr-backend.js.map +1 -1
  6. package/dist/adapters/backend/liveness-gate.d.ts +38 -0
  7. package/dist/adapters/backend/liveness-gate.d.ts.map +1 -0
  8. package/dist/adapters/backend/liveness-gate.js +53 -0
  9. package/dist/adapters/backend/liveness-gate.js.map +1 -0
  10. package/dist/adapters/backend/pty-backend.d.ts.map +1 -1
  11. package/dist/adapters/backend/pty-backend.js +4 -1
  12. package/dist/adapters/backend/pty-backend.js.map +1 -1
  13. package/dist/adapters/backend/tmux-backend.d.ts +22 -1
  14. package/dist/adapters/backend/tmux-backend.d.ts.map +1 -1
  15. package/dist/adapters/backend/tmux-backend.js +124 -36
  16. package/dist/adapters/backend/tmux-backend.js.map +1 -1
  17. package/dist/adapters/backend/tmux-pipe-backend.d.ts +20 -0
  18. package/dist/adapters/backend/tmux-pipe-backend.d.ts.map +1 -1
  19. package/dist/adapters/backend/tmux-pipe-backend.js +86 -20
  20. package/dist/adapters/backend/tmux-pipe-backend.js.map +1 -1
  21. package/dist/adapters/backend/types.d.ts +9 -0
  22. package/dist/adapters/backend/types.d.ts.map +1 -1
  23. package/dist/adapters/backend/types.js.map +1 -1
  24. package/dist/adapters/backend/zellij-backend.js +1 -1
  25. package/dist/adapters/backend/zellij-backend.js.map +1 -1
  26. package/dist/adapters/backend/zellij-observe-backend.d.ts +13 -0
  27. package/dist/adapters/backend/zellij-observe-backend.d.ts.map +1 -1
  28. package/dist/adapters/backend/zellij-observe-backend.js +51 -12
  29. package/dist/adapters/backend/zellij-observe-backend.js.map +1 -1
  30. package/dist/adapters/cli/codex.d.ts.map +1 -1
  31. package/dist/adapters/cli/codex.js +8 -5
  32. package/dist/adapters/cli/codex.js.map +1 -1
  33. package/dist/adapters/cli/shared-hints.d.ts +2 -1
  34. package/dist/adapters/cli/shared-hints.d.ts.map +1 -1
  35. package/dist/adapters/cli/shared-hints.js +25 -3
  36. package/dist/adapters/cli/shared-hints.js.map +1 -1
  37. package/dist/adapters/cli/traex.d.ts.map +1 -1
  38. package/dist/adapters/cli/traex.js +4 -0
  39. package/dist/adapters/cli/traex.js.map +1 -1
  40. package/dist/adapters/cli/types.d.ts +6 -0
  41. package/dist/adapters/cli/types.d.ts.map +1 -1
  42. package/dist/bot-registry.d.ts +23 -0
  43. package/dist/bot-registry.d.ts.map +1 -1
  44. package/dist/bot-registry.js +9 -0
  45. package/dist/bot-registry.js.map +1 -1
  46. package/dist/cli.d.ts.map +1 -1
  47. package/dist/cli.js +368 -16
  48. package/dist/cli.js.map +1 -1
  49. package/dist/core/command-handler.d.ts.map +1 -1
  50. package/dist/core/command-handler.js +7 -5
  51. package/dist/core/command-handler.js.map +1 -1
  52. package/dist/core/dashboard-ipc-server.d.ts.map +1 -1
  53. package/dist/core/dashboard-ipc-server.js +210 -5
  54. package/dist/core/dashboard-ipc-server.js.map +1 -1
  55. package/dist/core/dashboard-rows.d.ts +3 -0
  56. package/dist/core/dashboard-rows.d.ts.map +1 -1
  57. package/dist/core/dashboard-rows.js +4 -1
  58. package/dist/core/dashboard-rows.js.map +1 -1
  59. package/dist/core/maintenance.d.ts +18 -0
  60. package/dist/core/maintenance.d.ts.map +1 -1
  61. package/dist/core/maintenance.js +58 -30
  62. package/dist/core/maintenance.js.map +1 -1
  63. package/dist/core/per-bot-env.d.ts +38 -0
  64. package/dist/core/per-bot-env.d.ts.map +1 -0
  65. package/dist/core/per-bot-env.js +79 -0
  66. package/dist/core/per-bot-env.js.map +1 -0
  67. package/dist/core/session-activity.d.ts +1 -0
  68. package/dist/core/session-activity.d.ts.map +1 -1
  69. package/dist/core/session-activity.js +7 -4
  70. package/dist/core/session-activity.js.map +1 -1
  71. package/dist/core/session-create.d.ts +62 -0
  72. package/dist/core/session-create.d.ts.map +1 -0
  73. package/dist/core/session-create.js +131 -0
  74. package/dist/core/session-create.js.map +1 -0
  75. package/dist/core/session-manager.d.ts +43 -0
  76. package/dist/core/session-manager.d.ts.map +1 -1
  77. package/dist/core/session-manager.js +306 -8
  78. package/dist/core/session-manager.js.map +1 -1
  79. package/dist/core/skills/discovery.d.ts +7 -0
  80. package/dist/core/skills/discovery.d.ts.map +1 -1
  81. package/dist/core/skills/discovery.js +51 -0
  82. package/dist/core/skills/discovery.js.map +1 -1
  83. package/dist/core/trigger-session.d.ts.map +1 -1
  84. package/dist/core/trigger-session.js +5 -2
  85. package/dist/core/trigger-session.js.map +1 -1
  86. package/dist/core/update-check.d.ts +67 -0
  87. package/dist/core/update-check.d.ts.map +1 -0
  88. package/dist/core/update-check.js +159 -0
  89. package/dist/core/update-check.js.map +1 -0
  90. package/dist/core/worker-pool.d.ts.map +1 -1
  91. package/dist/core/worker-pool.js +82 -4
  92. package/dist/core/worker-pool.js.map +1 -1
  93. package/dist/daemon.d.ts.map +1 -1
  94. package/dist/daemon.js +40 -11
  95. package/dist/daemon.js.map +1 -1
  96. package/dist/dashboard/bot-payload.d.ts +2 -0
  97. package/dist/dashboard/bot-payload.d.ts.map +1 -1
  98. package/dist/dashboard/bot-payload.js +2 -0
  99. package/dist/dashboard/bot-payload.js.map +1 -1
  100. package/dist/dashboard/session-cleanup.d.ts +30 -0
  101. package/dist/dashboard/session-cleanup.d.ts.map +1 -0
  102. package/dist/dashboard/session-cleanup.js +47 -0
  103. package/dist/dashboard/session-cleanup.js.map +1 -0
  104. package/dist/dashboard/skill-install-request.d.ts +10 -0
  105. package/dist/dashboard/skill-install-request.d.ts.map +1 -1
  106. package/dist/dashboard/skill-install-request.js +17 -0
  107. package/dist/dashboard/skill-install-request.js.map +1 -1
  108. package/dist/dashboard/web/app.d.ts.map +1 -1
  109. package/dist/dashboard/web/app.js +29 -1
  110. package/dist/dashboard/web/app.js.map +1 -1
  111. package/dist/dashboard/web/bot-defaults.d.ts.map +1 -1
  112. package/dist/dashboard/web/bot-defaults.js +82 -6
  113. package/dist/dashboard/web/bot-defaults.js.map +1 -1
  114. package/dist/dashboard/web/i18n.d.ts.map +1 -1
  115. package/dist/dashboard/web/i18n.js +312 -2
  116. package/dist/dashboard/web/i18n.js.map +1 -1
  117. package/dist/dashboard/web/insights.d.ts.map +1 -1
  118. package/dist/dashboard/web/insights.js +355 -30
  119. package/dist/dashboard/web/insights.js.map +1 -1
  120. package/dist/dashboard/web/sessions.d.ts +2 -0
  121. package/dist/dashboard/web/sessions.d.ts.map +1 -1
  122. package/dist/dashboard/web/sessions.js +457 -30
  123. package/dist/dashboard/web/sessions.js.map +1 -1
  124. package/dist/dashboard/web/settings.d.ts.map +1 -1
  125. package/dist/dashboard/web/settings.js +289 -0
  126. package/dist/dashboard/web/settings.js.map +1 -1
  127. package/dist/dashboard/web/skills.d.ts.map +1 -1
  128. package/dist/dashboard/web/skills.js +183 -10
  129. package/dist/dashboard/web/skills.js.map +1 -1
  130. package/dist/dashboard/web/whiteboards.d.ts +2 -0
  131. package/dist/dashboard/web/whiteboards.d.ts.map +1 -0
  132. package/dist/dashboard/web/whiteboards.js +267 -0
  133. package/dist/dashboard/web/whiteboards.js.map +1 -0
  134. package/dist/dashboard-web/app.js +879 -591
  135. package/dist/dashboard-web/index.html +1 -0
  136. package/dist/dashboard-web/style.css +528 -8
  137. package/dist/dashboard.js +472 -5
  138. package/dist/dashboard.js.map +1 -1
  139. package/dist/global-config.d.ts +6 -0
  140. package/dist/global-config.d.ts.map +1 -1
  141. package/dist/global-config.js +12 -0
  142. package/dist/global-config.js.map +1 -1
  143. package/dist/i18n/en.d.ts.map +1 -1
  144. package/dist/i18n/en.js +21 -1
  145. package/dist/i18n/en.js.map +1 -1
  146. package/dist/i18n/zh.d.ts.map +1 -1
  147. package/dist/i18n/zh.js +21 -1
  148. package/dist/i18n/zh.js.map +1 -1
  149. package/dist/im/lark/card-builder.d.ts +4 -5
  150. package/dist/im/lark/card-builder.d.ts.map +1 -1
  151. package/dist/im/lark/card-builder.js +113 -11
  152. package/dist/im/lark/card-builder.js.map +1 -1
  153. package/dist/im/lark/card-handler.d.ts +3 -2
  154. package/dist/im/lark/card-handler.d.ts.map +1 -1
  155. package/dist/im/lark/card-handler.js +174 -14
  156. package/dist/im/lark/card-handler.js.map +1 -1
  157. package/dist/im/lark/event-dispatcher.d.ts.map +1 -1
  158. package/dist/im/lark/event-dispatcher.js +19 -5
  159. package/dist/im/lark/event-dispatcher.js.map +1 -1
  160. package/dist/im/lark/grant-pending.d.ts.map +1 -1
  161. package/dist/im/lark/grant-pending.js +9 -2
  162. package/dist/im/lark/grant-pending.js.map +1 -1
  163. package/dist/index-daemon.js +5 -0
  164. package/dist/index-daemon.js.map +1 -1
  165. package/dist/platform/bind.d.ts +2 -0
  166. package/dist/platform/bind.d.ts.map +1 -0
  167. package/dist/platform/bind.js +91 -0
  168. package/dist/platform/bind.js.map +1 -0
  169. package/dist/platform/binding.d.ts +22 -0
  170. package/dist/platform/binding.d.ts.map +1 -0
  171. package/dist/platform/binding.js +33 -0
  172. package/dist/platform/binding.js.map +1 -0
  173. package/dist/platform/tunnel-client.d.ts +15 -0
  174. package/dist/platform/tunnel-client.d.ts.map +1 -0
  175. package/dist/platform/tunnel-client.js +193 -0
  176. package/dist/platform/tunnel-client.js.map +1 -0
  177. package/dist/services/bot-config-store.d.ts.map +1 -1
  178. package/dist/services/bot-config-store.js +20 -0
  179. package/dist/services/bot-config-store.js.map +1 -1
  180. package/dist/services/git-worktree.d.ts +10 -0
  181. package/dist/services/git-worktree.d.ts.map +1 -1
  182. package/dist/services/git-worktree.js +71 -26
  183. package/dist/services/git-worktree.js.map +1 -1
  184. package/dist/services/grant-prefs-store.d.ts +3 -0
  185. package/dist/services/grant-prefs-store.d.ts.map +1 -1
  186. package/dist/services/grant-prefs-store.js +17 -2
  187. package/dist/services/grant-prefs-store.js.map +1 -1
  188. package/dist/services/insight/claude-span-reader.d.ts.map +1 -1
  189. package/dist/services/insight/claude-span-reader.js +18 -2
  190. package/dist/services/insight/claude-span-reader.js.map +1 -1
  191. package/dist/services/insight/codex-span-reader.d.ts.map +1 -1
  192. package/dist/services/insight/codex-span-reader.js +17 -1
  193. package/dist/services/insight/codex-span-reader.js.map +1 -1
  194. package/dist/services/insight/report.d.ts.map +1 -1
  195. package/dist/services/insight/report.js +48 -6
  196. package/dist/services/insight/report.js.map +1 -1
  197. package/dist/services/insight/types.d.ts +9 -0
  198. package/dist/services/insight/types.d.ts.map +1 -1
  199. package/dist/services/insight/types.js.map +1 -1
  200. package/dist/services/resumable-session-discovery.d.ts.map +1 -1
  201. package/dist/services/resumable-session-discovery.js +21 -4
  202. package/dist/services/resumable-session-discovery.js.map +1 -1
  203. package/dist/services/skill-registry-store.d.ts +1 -0
  204. package/dist/services/skill-registry-store.d.ts.map +1 -1
  205. package/dist/services/skill-registry-store.js +32 -0
  206. package/dist/services/skill-registry-store.js.map +1 -1
  207. package/dist/services/whiteboard-store.d.ts +67 -0
  208. package/dist/services/whiteboard-store.d.ts.map +1 -0
  209. package/dist/services/whiteboard-store.js +450 -0
  210. package/dist/services/whiteboard-store.js.map +1 -0
  211. package/dist/services/worktree-slug-ai.d.ts.map +1 -1
  212. package/dist/services/worktree-slug-ai.js +3 -1
  213. package/dist/services/worktree-slug-ai.js.map +1 -1
  214. package/dist/setup/bot-config-editor.d.ts +8 -0
  215. package/dist/setup/bot-config-editor.d.ts.map +1 -1
  216. package/dist/setup/bot-config-editor.js +9 -0
  217. package/dist/setup/bot-config-editor.js.map +1 -1
  218. package/dist/skills/definitions.d.ts.map +1 -1
  219. package/dist/skills/definitions.js +118 -0
  220. package/dist/skills/definitions.js.map +1 -1
  221. package/dist/types.d.ts +15 -0
  222. package/dist/types.d.ts.map +1 -1
  223. package/dist/utils/crash-log.d.ts +22 -0
  224. package/dist/utils/crash-log.d.ts.map +1 -0
  225. package/dist/utils/crash-log.js +37 -0
  226. package/dist/utils/crash-log.js.map +1 -0
  227. package/dist/utils/input-gate.d.ts +10 -0
  228. package/dist/utils/input-gate.d.ts.map +1 -1
  229. package/dist/utils/input-gate.js +7 -0
  230. package/dist/utils/input-gate.js.map +1 -1
  231. package/dist/utils/install-diagnostics.d.ts +52 -0
  232. package/dist/utils/install-diagnostics.d.ts.map +1 -0
  233. package/dist/utils/install-diagnostics.js +155 -0
  234. package/dist/utils/install-diagnostics.js.map +1 -0
  235. package/dist/utils/install-info.d.ts +4 -0
  236. package/dist/utils/install-info.d.ts.map +1 -1
  237. package/dist/utils/install-info.js +6 -0
  238. package/dist/utils/install-info.js.map +1 -1
  239. package/dist/utils/stdio-epipe-guard.d.ts +39 -0
  240. package/dist/utils/stdio-epipe-guard.d.ts.map +1 -0
  241. package/dist/utils/stdio-epipe-guard.js +67 -0
  242. package/dist/utils/stdio-epipe-guard.js.map +1 -0
  243. package/dist/worker.js +222 -26
  244. package/dist/worker.js.map +1 -1
  245. package/dist/workflows/daemon-spawn.d.ts +2 -0
  246. package/dist/workflows/daemon-spawn.d.ts.map +1 -1
  247. package/package.json +1 -1
@@ -1,3 +1,9 @@
1
+ /**
2
+ * Session manager — session helper functions extracted from daemon.ts.
3
+ * Handles working directory resolution, attachment downloads, prompt building,
4
+ * session restoration, and scheduled task execution.
5
+ */
6
+ import { existsSync, statSync } from 'node:fs';
1
7
  import { join, resolve } from 'node:path';
2
8
  import { expandHome } from './working-dir.js';
3
9
  import { config } from '../config.js';
@@ -10,14 +16,21 @@ import { createCliAdapterSync } from '../adapters/cli/registry.js';
10
16
  import { buildBotmuxShellHints } from '../adapters/cli/shared-hints.js';
11
17
  import { getSessionPersistentBackendType, persistentSessionName, probePersistentSession, probePersistentBackendServer, killPersistentSession } from './persistent-backend.js';
12
18
  import { adoptTargetLabel, validateAdoptTargetState } from './session-discovery.js';
13
- import { getBot, getAllBots } from '../bot-registry.js';
19
+ import { getBot, getAllBots, getOwnerOpenId, findOncallChatForAnyBot } from '../bot-registry.js';
20
+ import { dashboardEventBus } from './dashboard-events.js';
21
+ import { composeRowFromActive } from './dashboard-rows.js';
22
+ import { composeSpawnUserContent, deriveSessionTitleFromContent, } from './session-create.js';
14
23
  import { validateZellijAdoptTarget } from './zellij-adopt-discovery.js';
15
24
  import { sessionKey, sessionAnchorId } from './types.js';
16
- import { markSessionActivity } from './session-activity.js';
25
+ import { announceSessionRow, markSessionActivity, announcePendingRepoSession } from './session-activity.js';
26
+ import { scanMultipleProjects } from '../services/project-scanner.js';
27
+ import { buildRepoSelectCard } from '../im/lark/card-builder.js';
28
+ import { repoPickerScanOptions } from '../global-config.js';
17
29
  import { usageLimitStateKey } from '../utils/cli-usage-limit.js';
18
30
  import { t, localeForBot } from '../i18n/index.js';
19
31
  import { parseWorkingDirList } from '../utils/working-dir.js';
20
32
  import { resolveRole } from './role-resolver.js';
33
+ import { ensureDefaultWhiteboard, getWhiteboard, whiteboardEnabled } from '../services/whiteboard-store.js';
21
34
  function sessionCreatedAtMs(session) {
22
35
  return session.createdAt ? (Date.parse(session.createdAt) || Date.now()) : Date.now();
23
36
  }
@@ -218,6 +231,46 @@ function renderRoleContextBlock(larkAppId, chatId) {
218
231
  const ctx = roleSource === 'team' ? 'team' : 'group';
219
232
  return `<role context="${ctx}" chat_id="${xmlEscape(chatId)}">\n${roleContent}\n</role>`;
220
233
  }
234
+ export function ensureSessionWhiteboard(ds) {
235
+ if (!whiteboardEnabled())
236
+ return;
237
+ // Whiteboard is an optional, best-effort context enhancement. A failure here
238
+ // (file-lock timeout, disk error, corrupted index) must NOT propagate and
239
+ // break session creation / forking at the ~11 call sites in daemon.ts — the
240
+ // session is still fully usable without a board. Log and degrade gracefully.
241
+ try {
242
+ if (ds.session.whiteboardId && getWhiteboard(ds.session.whiteboardId))
243
+ return;
244
+ const meta = ensureDefaultWhiteboard({
245
+ larkAppId: ds.larkAppId,
246
+ chatId: ds.session.chatId,
247
+ workingDir: ds.session.workingDir ?? ds.workingDir,
248
+ sessionId: ds.session.sessionId,
249
+ });
250
+ ds.session.whiteboardId = meta.id;
251
+ sessionStore.updateSession(ds.session);
252
+ }
253
+ catch (e) {
254
+ logger.warn(`[whiteboard] ensureSessionWhiteboard failed for session ${ds.session.sessionId}: ${e?.message ?? e}`);
255
+ }
256
+ }
257
+ function renderWhiteboardBlock(opts) {
258
+ if (!whiteboardEnabled() || !opts?.whiteboardId)
259
+ return '';
260
+ const meta = getWhiteboard(opts.whiteboardId);
261
+ if (!meta || meta.archived)
262
+ return '';
263
+ const id = xmlEscape(meta.id);
264
+ return [
265
+ `<whiteboard id="${id}">`,
266
+ '本地项目上下文;读取:`botmux whiteboard read --id ' + id + ' --json`(拿到 content 与 updatedAt)。',
267
+ '更新状态:`botmux whiteboard update --id ' + id + ' --expected-updated-at <上次 read 的 updatedAt> <内容>`。',
268
+ '更新前先用 `read --json` 拿到当前内容与 updatedAt,融合新信息后整体重写为一份完整的当前状态(默认中文;代码标识/命令/错误信息可保留原文),并用 `--expected-updated-at` 回传 read 到的版本号做并发冲突检测。',
269
+ '若更新报 `whiteboard_cas_mismatch`,说明期间有其它 agent 改过白板——重新 `read --json` 拿最新内容与 updatedAt,再次融合重写。',
270
+ '不要直接读写本地文件;不要写密钥/隐私;用户可见结论仍必须 `botmux send`。',
271
+ '</whiteboard>',
272
+ ].join('\n');
273
+ }
221
274
  export function buildNewTopicPrompt(userMessage, sessionId, cliId, cliPathOverride, attachments, mentions, availableBots, followUps, botIdentity, locale, sender, opts) {
222
275
  const adapter = createCliAdapterSync(cliId, cliPathOverride);
223
276
  // Non-Claude CLIs receive the botmux routing hints inline via the prompt
@@ -240,6 +293,7 @@ export function buildNewTopicPrompt(userMessage, sessionId, cliId, cliPathOverri
240
293
  ].join('\n');
241
294
  }
242
295
  const roleBlock = renderRoleContextBlock(opts?.larkAppId, opts?.chatId);
296
+ const whiteboardBlock = renderWhiteboardBlock({ whiteboardId: opts?.whiteboardId });
243
297
  let mentionBlock = '';
244
298
  if (mentions && mentions.length > 0) {
245
299
  const items = mentions.map(m => {
@@ -270,7 +324,10 @@ export function buildNewTopicPrompt(userMessage, sessionId, cliId, cliPathOverri
270
324
  const parts = [];
271
325
  // Put stable, instruction-like context before the user's first turn. This
272
326
  // improves salience without moving per-turn attribution (sender/mentions)
273
- // into the prompt-cache prefix.
327
+ // into the prompt-cache prefix. The whiteboard block is per-turn available
328
+ // context (a tool/usage hint for this round), so it goes before the user's
329
+ // message — same position as in follow-ups — not after it, where it could be
330
+ // misread as part of the user's text.
274
331
  if (!adapter.injectsSessionContext) {
275
332
  if (routingBlock)
276
333
  parts.push(routingBlock);
@@ -280,6 +337,8 @@ export function buildNewTopicPrompt(userMessage, sessionId, cliId, cliPathOverri
280
337
  }
281
338
  if (roleBlock)
282
339
  parts.push(roleBlock);
340
+ if (whiteboardBlock)
341
+ parts.push(whiteboardBlock);
283
342
  parts.push(userBlock);
284
343
  const senderBlock = renderSenderTag(sender);
285
344
  if (senderBlock)
@@ -309,12 +368,15 @@ export function buildNewTopicPrompt(userMessage, sessionId, cliId, cliPathOverri
309
368
  export function buildFollowUpContent(content, sessionId, opts) {
310
369
  const parts = [];
311
370
  const roleBlock = renderRoleContextBlock(opts?.larkAppId, opts?.chatId);
371
+ const whiteboardBlock = renderWhiteboardBlock({ whiteboardId: opts?.whiteboardId });
312
372
  const skipSessionId = opts?.isAdoptMode || (opts?.cliId
313
373
  ? createCliAdapterSync(opts.cliId, opts.cliPathOverride).injectsSessionContext
314
374
  : false);
315
375
  // Put stable context before the user's turn. Follow the new-topic order for
316
- // shared blocks: session id first, then role. Keep per-turn attribution and
317
- // attachments after <user_message>.
376
+ // shared blocks: session id first, then role. The whiteboard block is
377
+ // per-turn available context, so place it right after <botmux_reminder> and
378
+ // before <user_message> — consistent with new-topic/refork — not after the
379
+ // user's text. Per-turn attribution (sender/attachments/mentions) stays after.
318
380
  if (!skipSessionId)
319
381
  parts.push(`<session_id>${xmlEscape(sessionId)}</session_id>`);
320
382
  if (roleBlock)
@@ -322,6 +384,8 @@ export function buildFollowUpContent(content, sessionId, opts) {
322
384
  if (opts?.cliId !== 'mira') {
323
385
  parts.push(`<botmux_reminder>${t('ai.followup.reminder', undefined, opts?.locale)}</botmux_reminder>`);
324
386
  }
387
+ if (whiteboardBlock)
388
+ parts.push(whiteboardBlock);
325
389
  parts.push(`<user_message>\n${content}\n</user_message>`);
326
390
  const senderBlock = renderSenderTag(opts?.sender);
327
391
  if (senderBlock)
@@ -454,6 +518,7 @@ export function buildReforkPrompt(ds, content, opts) {
454
518
  sender: opts?.sender,
455
519
  larkAppId: ds.larkAppId,
456
520
  chatId: ds.session.chatId,
521
+ whiteboardId: ds.session.whiteboardId,
457
522
  });
458
523
  }
459
524
  /**
@@ -617,6 +682,7 @@ export async function restoreActiveSessions(activeSessions) {
617
682
  // relayed real session from a prior buggy run), close the loser
618
683
  // rather than silently overwriting it.
619
684
  await setActiveSessionSafe(activeSessions, sessionKey(anchor, larkAppId), ds);
685
+ announceSessionRow(ds);
620
686
  forkAdoptWorker(ds, { restoredFromMetadata: true });
621
687
  logger.info(`[${session.sessionId.substring(0, 8)}] Restored adopt session (target: ${adoptTargetLabel(adopted)}, scope: ${scope})`);
622
688
  continue;
@@ -627,6 +693,38 @@ export async function restoreActiveSessions(activeSessions) {
627
693
  sessionStore.closeSession(session.sessionId);
628
694
  continue;
629
695
  }
696
+ // Queued(待办池)会话:CLI 从没起过,restore 必须保持 parked(hasHistory:false +
697
+ // queued),绝不能走下面 hasHistory:true 的通用分支——否则下一条消息会 --resume 一个
698
+ // 不存在的 CLI 会话。pendingPrompt 从持久化的 queuedPrompt 恢复,供激活时发首轮。
699
+ if (session.queued) {
700
+ const larkAppId = session.larkAppId ?? getAllBots()[0]?.config.larkAppId ?? '';
701
+ const ds = {
702
+ session,
703
+ worker: null,
704
+ workerPort: null,
705
+ workerToken: null,
706
+ larkAppId,
707
+ chatId: session.chatId,
708
+ chatType: session.chatType ?? 'group',
709
+ scope,
710
+ spawnedAt: sessionCreatedAtMs(session),
711
+ cliVersion: getCurrentCliVersion(),
712
+ lastMessageAt: sessionLastMessageAtMs(session),
713
+ hasHistory: false,
714
+ workingDir: session.workingDir,
715
+ ownerOpenId: session.ownerOpenId,
716
+ pendingPrompt: session.queuedPrompt,
717
+ currentTurnTitle: session.currentTurnTitle ?? session.title,
718
+ };
719
+ const anchor = sessionAnchorId(ds);
720
+ messageQueue.ensureQueue(anchor);
721
+ await setActiveSessionSafe(activeSessions, sessionKey(anchor, larkAppId), ds);
722
+ // 重启后把待办池卡片重新广播给 dashboard,否则会从看板消失(#277 同款修复,
723
+ // 我这条 queued 分支提前 continue 绕过了下面的 announceSessionRow,要自己补)。
724
+ announceSessionRow(ds);
725
+ logger.info(`[${session.sessionId.substring(0, 8)}] Restored queued (待办池) session (scope: ${scope})`);
726
+ continue;
727
+ }
630
728
  const larkAppId = session.larkAppId ?? getAllBots()[0]?.config.larkAppId ?? '';
631
729
  const ds = {
632
730
  session,
@@ -667,6 +765,7 @@ export async function restoreActiveSessions(activeSessions) {
667
765
  restoreUsageLimitRuntimeState(ds);
668
766
  // Same-key collision guard — see adopt-branch comment above.
669
767
  await setActiveSessionSafe(activeSessions, sessionKey(anchor, larkAppId), ds);
768
+ announceSessionRow(ds);
670
769
  logger.debug(`Registered session ${session.sessionId} (scope: ${scope}, anchor: ${anchor})`);
671
770
  }
672
771
  // Persistent backends: auto-fork workers for sessions whose backing session
@@ -688,6 +787,10 @@ export async function restoreActiveSessions(activeSessions) {
688
787
  return s;
689
788
  };
690
789
  for (const [, ds] of activeSessions) {
790
+ // Queued(待办池)会话从没起过 CLI,没有任何后端会话——别去探它,否则 tmux 后端
791
+ // 会把「找不到 backing」误判成僵尸而关掉它。
792
+ if (ds.session.queued)
793
+ continue;
691
794
  const backendType = getSessionPersistentBackendType(ds);
692
795
  if (!backendType)
693
796
  continue;
@@ -1057,8 +1160,18 @@ export async function executeScheduledTask(task, activeSessions, refreshCliVersi
1057
1160
  if (isContinuation && existing?.worker && !existing.worker.killed) {
1058
1161
  markSessionActivity(existing);
1059
1162
  try {
1060
- rememberLastCliInput(existing, task.prompt, task.prompt);
1061
- existing.worker.send({ type: 'message', content: task.prompt });
1163
+ ensureSessionWhiteboard(existing);
1164
+ const content = buildFollowUpContent(task.prompt, existing.session.sessionId, {
1165
+ isAdoptMode: false,
1166
+ cliId: bot.config.cliId,
1167
+ cliPathOverride: bot.config.cliPathOverride,
1168
+ locale: localeForBot(larkAppId),
1169
+ larkAppId,
1170
+ chatId: task.chatId,
1171
+ whiteboardId: existing.session.whiteboardId,
1172
+ });
1173
+ rememberLastCliInput(existing, task.prompt, content);
1174
+ existing.worker.send({ type: 'message', content });
1062
1175
  logger.info(`[scheduler] Task "${task.name}" injected into live session ${existing.session.sessionId}`);
1063
1176
  return;
1064
1177
  }
@@ -1081,7 +1194,6 @@ export async function executeScheduledTask(task, activeSessions, refreshCliVersi
1081
1194
  session.lastMessageAt = new Date(now).toISOString();
1082
1195
  sessionStore.updateSession(session);
1083
1196
  messageQueue.ensureQueue(anchor);
1084
- const prompt = buildNewTopicPrompt(task.prompt, session.sessionId, bot.config.cliId, bot.config.cliPathOverride, undefined, undefined, undefined, undefined, { name: bot.botName, openId: bot.botOpenId }, localeForBot(larkAppId), undefined, { larkAppId, chatId: task.chatId });
1085
1197
  const ds = {
1086
1198
  session,
1087
1199
  worker: null,
@@ -1097,9 +1209,195 @@ export async function executeScheduledTask(task, activeSessions, refreshCliVersi
1097
1209
  hasHistory: isContinuation,
1098
1210
  workingDir: task.workingDir,
1099
1211
  };
1212
+ ensureSessionWhiteboard(ds);
1213
+ const prompt = buildNewTopicPrompt(task.prompt, session.sessionId, bot.config.cliId, bot.config.cliPathOverride, undefined, undefined, undefined, undefined, { name: bot.botName, openId: bot.botOpenId }, localeForBot(larkAppId), undefined, { larkAppId, chatId: task.chatId, whiteboardId: ds.session.whiteboardId });
1100
1214
  activeSessions.set(sessionKey(anchor, larkAppId), ds);
1101
1215
  rememberLastCliInput(ds, task.prompt, prompt);
1102
1216
  forkWorker(ds, prompt);
1103
1217
  logger.info(`[scheduler] Task "${task.name}" spawned (session: ${session.sessionId}, scope: ${scope}, anchor: ${anchor}, continuation: ${isContinuation})`);
1104
1218
  }
1219
+ // ─── Dashboard「创建会话」spawn / activate ───────────────────────────────────
1220
+ /** 解析 dashboard 创建会话的 pinned workingDir:oncall 绑定优先(弹框填了工作目录会
1221
+ * 建群时绑 oncall),其次 bot 的 defaultWorkingDir(校验是真目录)。都没有 → undefined,
1222
+ * 表示「不钉目录」,交给 forkOrShowRepoCard 弹 /repo 卡片让用户在群里选。与普通新话题
1223
+ * 的 resolvePinnedWorkingDir 同口径(少了 sibling 继承那层,新群无 sibling 可继承)。*/
1224
+ function resolveDashboardSpawnWorkingDir(larkAppId, chatId) {
1225
+ const oncall = findOncallChatForAnyBot(chatId)?.workingDir;
1226
+ if (oncall)
1227
+ return oncall;
1228
+ const raw = getBot(larkAppId).config.defaultWorkingDir;
1229
+ if (!raw)
1230
+ return undefined;
1231
+ const resolved = expandHome(raw);
1232
+ try {
1233
+ if (statSync(resolved).isDirectory())
1234
+ return resolved;
1235
+ }
1236
+ catch { /* not a dir → 当作没配 */ }
1237
+ return undefined;
1238
+ }
1239
+ /** 起会话或弹 /repo 选择卡片——复用普通新话题那套仓库选择逻辑:
1240
+ * - ds.workingDir 已钉(oncall / bot 默认)→ 直接 forkWorker。
1241
+ * - 没钉但扫到可选项目 → 设 pendingRepo + 把 userContent 暂存进 pendingPrompt + 在群里发
1242
+ * buildRepoSelectCard(含 worktree)。用户点卡片由 card-handler 的 pendingRepo 分支起 CLI。
1243
+ * - 没钉也没项目 → 回退用 bot 默认 cwd 直接起。
1244
+ * userContent 是已按角色包装好的首轮内容(lead 前言等),不论哪条路都原样带过去。 */
1245
+ async function forkOrShowRepoCard(ds, userContent) {
1246
+ const larkAppId = ds.larkAppId;
1247
+ const bot = getBot(larkAppId);
1248
+ const locale = localeForBot(larkAppId);
1249
+ const buildPrompt = () => buildNewTopicPrompt(userContent, ds.session.sessionId, bot.config.cliId, bot.config.cliPathOverride, undefined, undefined, undefined, undefined, { name: bot.botName, openId: bot.botOpenId }, locale, undefined, { larkAppId, chatId: ds.chatId, whiteboardId: ds.session.whiteboardId });
1250
+ if (!ds.workingDir) {
1251
+ // 没钉目录 → 复用 /repo 选择卡片让用户在群里选仓库。
1252
+ const scanDirs = getProjectScanDirs(ds).filter(d => existsSync(d));
1253
+ const projects = scanDirs.length > 0 ? scanMultipleProjects(scanDirs, 3, repoPickerScanOptions()) : [];
1254
+ if (projects.length > 0) {
1255
+ try {
1256
+ const card = buildRepoSelectCard(projects, getSessionWorkingDir(ds), ds.chatId, locale, bot.config.worktreeMultiPicker);
1257
+ const { sendMessage } = await import('../im/lark/client.js');
1258
+ ds.pendingRepo = true;
1259
+ ds.pendingPrompt = userContent;
1260
+ ds.repoCardMessageId = await sendMessage(larkAppId, ds.chatId, card, 'interactive');
1261
+ announcePendingRepoSession(ds);
1262
+ // 弹卡片这条路不经 forkWorker,session.spawned 不会自动发——手动 upsert 一条,
1263
+ // 让 dashboard 显示这条「待选仓库」会话(in_progress 首次 spawn 走这里才会出现)。
1264
+ dashboardEventBus.publish({ type: 'session.spawned', body: { session: composeRowFromActive(ds) } });
1265
+ logger.info(`[createSession] repo select card posted for session ${ds.session.sessionId.substring(0, 8)} (${projects.length} projects)`);
1266
+ return;
1267
+ }
1268
+ catch (err) {
1269
+ // 发卡失败:退回直接起,别把会话卡死在 pendingRepo。
1270
+ ds.pendingRepo = false;
1271
+ ds.pendingPrompt = undefined;
1272
+ ds.repoCardMessageId = undefined;
1273
+ logger.warn(`[createSession] repo card failed (${err?.message ?? err}); forking with default cwd`);
1274
+ }
1275
+ }
1276
+ }
1277
+ ensureSessionWhiteboard(ds);
1278
+ const prompt = buildPrompt();
1279
+ rememberLastCliInput(ds, userContent, prompt);
1280
+ forkWorker(ds, prompt);
1281
+ }
1282
+ /** 在新建的飞书群里为某个 bot 拉起一条 chat-scope 会话(dashboard「创建会话」用)。
1283
+ * column='in_progress' → 立即 forkWorker 把内容当首轮发给 CLI;
1284
+ * column='backlog' → 入待办池(parked:worker:null + session.queued + queuedPrompt),
1285
+ * 等被激活(拖到进行中 / 点开始 / 群里来消息)再起 CLI。
1286
+ * 与调度器 new-topic spawn 同构,差别只在「可暂存不起」与角色包装。 */
1287
+ export async function spawnDashboardSession(activeSessions, refreshCliVersion, args) {
1288
+ const { larkAppId, chatId, content, column, role } = args;
1289
+ let bot;
1290
+ try {
1291
+ bot = getBot(larkAppId);
1292
+ }
1293
+ catch {
1294
+ return { ok: false, error: 'bot_not_found' };
1295
+ }
1296
+ const locale = localeForBot(larkAppId);
1297
+ // chat-scope:锚点就是 chatId。先挡掉「同群同 bot 已有真会话」的撞键(会被
1298
+ // Map.set 覆盖而泄漏 worker)。queued 占位 / 纯 scratch 不算冲突。
1299
+ const anchor = chatId;
1300
+ const existing = activeSessions.get(sessionKey(anchor, larkAppId));
1301
+ if (existing && (existing.worker || existing.session.queued || isRelayableRealSession(existing))) {
1302
+ return { ok: false, error: 'session_exists' };
1303
+ }
1304
+ refreshCliVersion?.(bot.config.cliId, bot.config.cliPathOverride);
1305
+ // 可见任务横幅:只由 creator/lead 那次 spawn 发一条,给群成员交代这群是干嘛的。
1306
+ // 纯文本、不 @ 任何 bot,不会误触发其它 bot。rootMessageId 存它仅为留痕(chat-scope
1307
+ // 路由不看 rootMessageId)。失败不致命。
1308
+ let bannerMessageId;
1309
+ if (args.postBanner) {
1310
+ try {
1311
+ const { sendMessage } = await import('../im/lark/client.js');
1312
+ bannerMessageId = await sendMessage(larkAppId, chatId, t('cmd.createSession.banner', { content: content.slice(0, 300) }, locale));
1313
+ }
1314
+ catch (err) {
1315
+ logger.warn(`[createSession] banner send failed in ${chatId}: ${err?.message ?? err}`);
1316
+ }
1317
+ }
1318
+ // 按角色把原始 content 包成「首轮用户内容」(lead 前置编排前言 / collab 前置协作
1319
+ // 提示 / solo 原样)。park 与 in_progress 共用同一份——存进 queuedPrompt 的就是
1320
+ // 这份已包装内容,激活时直接喂给 buildNewTopicPrompt,保证待办池里起来的 lead
1321
+ // 也带编排上下文(coworkers 只有此刻可靠,激活时已无从重算)。
1322
+ const userContent = composeSpawnUserContent({ content, role, coworkers: args.coworkers, locale });
1323
+ const resolvedTitle = args.title || deriveSessionTitleFromContent(content);
1324
+ const session = sessionStore.createSession(chatId, bannerMessageId ?? chatId, resolvedTitle, 'group');
1325
+ const now = Date.now();
1326
+ session.larkAppId = larkAppId;
1327
+ session.scope = 'chat';
1328
+ session.ownerOpenId = args.ownerOpenId ?? getOwnerOpenId(larkAppId);
1329
+ session.creatorOpenId = session.ownerOpenId;
1330
+ if (args.ownerUnionId)
1331
+ session.ownerUnionId = args.ownerUnionId;
1332
+ session.lastMessageAt = new Date(now).toISOString();
1333
+ if (column === 'backlog') {
1334
+ session.queued = true;
1335
+ session.queuedPrompt = userContent;
1336
+ session.kanbanColumn = 'backlog';
1337
+ }
1338
+ // 钉 workingDir:oncall 绑定(弹框填了目录)/ bot 默认。都没有 → undefined,激活/开跑时
1339
+ // 会弹 /repo 卡片让用户在群里选仓库(复用普通新话题逻辑)。
1340
+ const workingDir = resolveDashboardSpawnWorkingDir(larkAppId, chatId);
1341
+ if (workingDir)
1342
+ session.workingDir = workingDir;
1343
+ sessionStore.updateSession(session);
1344
+ messageQueue.ensureQueue(anchor);
1345
+ const ds = {
1346
+ session,
1347
+ worker: null,
1348
+ workerPort: null,
1349
+ workerToken: null,
1350
+ larkAppId,
1351
+ chatId,
1352
+ chatType: 'group',
1353
+ scope: 'chat',
1354
+ spawnedAt: sessionCreatedAtMs(session),
1355
+ cliVersion: getCurrentCliVersion(),
1356
+ lastMessageAt: now,
1357
+ hasHistory: false,
1358
+ workingDir,
1359
+ ownerOpenId: session.ownerOpenId,
1360
+ currentTurnTitle: resolvedTitle,
1361
+ };
1362
+ activeSessions.set(sessionKey(anchor, larkAppId), ds);
1363
+ if (column === 'backlog') {
1364
+ // Parked:不起 CLI。手动广播 session.spawned,让 dashboard 立刻显示待办池卡片
1365
+ // (forkWorker 才会自动发这个事件,parked 路径要自己发)。
1366
+ ds.pendingPrompt = userContent;
1367
+ dashboardEventBus.publish({ type: 'session.spawned', body: { session: composeRowFromActive(ds) } });
1368
+ logger.info(`[createSession] queued session ${session.sessionId.substring(0, 8)} (bot=${larkAppId}, chat=${chatId}, role=${role})`);
1369
+ return { ok: true, sessionId: session.sessionId };
1370
+ }
1371
+ // in_progress:立即开跑或弹 /repo 卡片(没钉目录时)。userContent 已按角色包装好。
1372
+ await forkOrShowRepoCard(ds, userContent);
1373
+ logger.info(`[createSession] spawned session ${session.sessionId.substring(0, 8)} (bot=${larkAppId}, chat=${chatId}, role=${role}, pendingRepo=${!!ds.pendingRepo})`);
1374
+ return { ok: true, sessionId: session.sessionId };
1375
+ }
1376
+ /** 激活一条 parked(待办池)会话:把暂存的 queuedPrompt 当首轮发给 CLI,清掉 queued
1377
+ * 标记。供「拖到进行中」「点开始」「群里来第一条消息」三个入口复用。已起过的会话
1378
+ * (worker 在或 hasHistory)直接返回 already_active,幂等。 */
1379
+ export async function activateQueuedSession(ds) {
1380
+ if (!ds.session.queued) {
1381
+ return (ds.worker && !ds.worker.killed) ? { ok: true } : { ok: false, error: 'not_queued' };
1382
+ }
1383
+ if (ds.worker && !ds.worker.killed) {
1384
+ // 不该发生(queued 一定 worker:null),但保险:清标记即可。
1385
+ ds.session.queued = false;
1386
+ ds.session.queuedPrompt = undefined;
1387
+ sessionStore.updateSession(ds.session);
1388
+ return { ok: true };
1389
+ }
1390
+ const content = ds.session.queuedPrompt ?? ds.pendingPrompt ?? '';
1391
+ ds.session.queued = false;
1392
+ ds.session.queuedPrompt = undefined;
1393
+ ds.pendingPrompt = undefined;
1394
+ // 激活即视为开始:从待办池挪到进行中,让卡片归位。
1395
+ if (ds.session.kanbanColumn === 'backlog')
1396
+ ds.session.kanbanColumn = 'in_progress';
1397
+ sessionStore.updateSession(ds.session);
1398
+ // 起会话或弹 /repo 卡片(没钉目录时)。content 已是包装好的首轮内容。
1399
+ await forkOrShowRepoCard(ds, content);
1400
+ logger.info(`[createSession] activated queued session ${ds.session.sessionId.substring(0, 8)} (bot=${ds.larkAppId}, pendingRepo=${!!ds.pendingRepo})`);
1401
+ return { ok: true };
1402
+ }
1105
1403
  //# sourceMappingURL=session-manager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"session-manager.js","sourceRoot":"","sources":["../../src/core/session-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-manager.js","sourceRoot":"","sources":["../../src/core/session-manager.ts"],"names":[],"mappings":"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"}