botmux 3.4.3 → 3.5.2

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 (415) hide show
  1. package/README.en.md +10 -7
  2. package/README.md +11 -6
  3. package/dist/adapters/backend/herdr-backend.d.ts +43 -6
  4. package/dist/adapters/backend/herdr-backend.d.ts.map +1 -1
  5. package/dist/adapters/backend/herdr-backend.js +362 -28
  6. package/dist/adapters/backend/herdr-backend.js.map +1 -1
  7. package/dist/adapters/backend/reproduce-command.d.ts +39 -0
  8. package/dist/adapters/backend/reproduce-command.d.ts.map +1 -0
  9. package/dist/adapters/backend/reproduce-command.js +63 -0
  10. package/dist/adapters/backend/reproduce-command.js.map +1 -0
  11. package/dist/adapters/backend/sandbox.d.ts +99 -279
  12. package/dist/adapters/backend/sandbox.d.ts.map +1 -1
  13. package/dist/adapters/backend/sandbox.js +424 -826
  14. package/dist/adapters/backend/sandbox.js.map +1 -1
  15. package/dist/adapters/backend/session-backend-selector.d.ts +10 -1
  16. package/dist/adapters/backend/session-backend-selector.d.ts.map +1 -1
  17. package/dist/adapters/backend/session-backend-selector.js +73 -4
  18. package/dist/adapters/backend/session-backend-selector.js.map +1 -1
  19. package/dist/adapters/backend/types.d.ts +16 -0
  20. package/dist/adapters/backend/types.d.ts.map +1 -1
  21. package/dist/adapters/backend/types.js.map +1 -1
  22. package/dist/adapters/cli/codex.d.ts.map +1 -1
  23. package/dist/adapters/cli/codex.js +4 -0
  24. package/dist/adapters/cli/codex.js.map +1 -1
  25. package/dist/adapters/cli/fs-policy.d.ts +244 -0
  26. package/dist/adapters/cli/fs-policy.d.ts.map +1 -0
  27. package/dist/adapters/cli/fs-policy.js +539 -0
  28. package/dist/adapters/cli/fs-policy.js.map +1 -0
  29. package/dist/adapters/cli/pi-initial-prompt.d.ts.map +1 -1
  30. package/dist/adapters/cli/pi-initial-prompt.js +5 -1
  31. package/dist/adapters/cli/pi-initial-prompt.js.map +1 -1
  32. package/dist/adapters/cli/read-isolation.d.ts +14 -200
  33. package/dist/adapters/cli/read-isolation.d.ts.map +1 -1
  34. package/dist/adapters/cli/read-isolation.js +18 -477
  35. package/dist/adapters/cli/read-isolation.js.map +1 -1
  36. package/dist/adapters/cli/traex.d.ts.map +1 -1
  37. package/dist/adapters/cli/traex.js +5 -0
  38. package/dist/adapters/cli/traex.js.map +1 -1
  39. package/dist/adapters/cli/types.d.ts +3 -3
  40. package/dist/adapters/cli/types.d.ts.map +1 -1
  41. package/dist/adapters/hook-installer.d.ts +7 -0
  42. package/dist/adapters/hook-installer.d.ts.map +1 -1
  43. package/dist/adapters/hook-installer.js +56 -0
  44. package/dist/adapters/hook-installer.js.map +1 -1
  45. package/dist/bot-registry.d.ts +39 -23
  46. package/dist/bot-registry.d.ts.map +1 -1
  47. package/dist/bot-registry.js +134 -2
  48. package/dist/bot-registry.js.map +1 -1
  49. package/dist/cli/capabilities.d.ts +24 -0
  50. package/dist/cli/capabilities.d.ts.map +1 -0
  51. package/dist/cli/capabilities.js +25 -0
  52. package/dist/cli/capabilities.js.map +1 -0
  53. package/dist/cli/create-group-resolver.d.ts +24 -0
  54. package/dist/cli/create-group-resolver.d.ts.map +1 -1
  55. package/dist/cli/create-group-resolver.js +23 -0
  56. package/dist/cli/create-group-resolver.js.map +1 -1
  57. package/dist/cli/daemon-lifecycle-env.d.ts +5 -7
  58. package/dist/cli/daemon-lifecycle-env.d.ts.map +1 -1
  59. package/dist/cli/daemon-lifecycle-env.js +13 -7
  60. package/dist/cli/daemon-lifecycle-env.js.map +1 -1
  61. package/dist/cli/exact-chat-grant-client.d.ts +48 -0
  62. package/dist/cli/exact-chat-grant-client.d.ts.map +1 -0
  63. package/dist/cli/exact-chat-grant-client.js +108 -0
  64. package/dist/cli/exact-chat-grant-client.js.map +1 -0
  65. package/dist/cli/exact-chat-grant.d.ts +18 -0
  66. package/dist/cli/exact-chat-grant.d.ts.map +1 -0
  67. package/dist/cli/exact-chat-grant.js +97 -0
  68. package/dist/cli/exact-chat-grant.js.map +1 -0
  69. package/dist/cli.d.ts +10 -1
  70. package/dist/cli.d.ts.map +1 -1
  71. package/dist/cli.js +795 -144
  72. package/dist/cli.js.map +1 -1
  73. package/dist/codex-rpc-engine.d.ts +26 -0
  74. package/dist/codex-rpc-engine.d.ts.map +1 -1
  75. package/dist/codex-rpc-engine.js +113 -2
  76. package/dist/codex-rpc-engine.js.map +1 -1
  77. package/dist/config.d.ts +16 -0
  78. package/dist/config.d.ts.map +1 -1
  79. package/dist/config.js +16 -0
  80. package/dist/config.js.map +1 -1
  81. package/dist/core/bot-live-control.d.ts +41 -0
  82. package/dist/core/bot-live-control.d.ts.map +1 -0
  83. package/dist/core/bot-live-control.js +135 -0
  84. package/dist/core/bot-live-control.js.map +1 -0
  85. package/dist/core/command-handler.d.ts.map +1 -1
  86. package/dist/core/command-handler.js +44 -66
  87. package/dist/core/command-handler.js.map +1 -1
  88. package/dist/core/daemon-config-fence.d.ts +8 -0
  89. package/dist/core/daemon-config-fence.d.ts.map +1 -0
  90. package/dist/core/daemon-config-fence.js +13 -0
  91. package/dist/core/daemon-config-fence.js.map +1 -0
  92. package/dist/core/dashboard-events.d.ts +5 -0
  93. package/dist/core/dashboard-events.d.ts.map +1 -1
  94. package/dist/core/dashboard-events.js.map +1 -1
  95. package/dist/core/dashboard-ipc-server.d.ts +21 -2
  96. package/dist/core/dashboard-ipc-server.d.ts.map +1 -1
  97. package/dist/core/dashboard-ipc-server.js +258 -32
  98. package/dist/core/dashboard-ipc-server.js.map +1 -1
  99. package/dist/core/dispatch-registry.d.ts +12 -0
  100. package/dist/core/dispatch-registry.d.ts.map +1 -0
  101. package/dist/core/dispatch-registry.js +33 -0
  102. package/dist/core/dispatch-registry.js.map +1 -0
  103. package/dist/core/dispatch.d.ts +99 -0
  104. package/dist/core/dispatch.d.ts.map +1 -1
  105. package/dist/core/dispatch.js +136 -0
  106. package/dist/core/dispatch.js.map +1 -1
  107. package/dist/core/maintenance.d.ts.map +1 -1
  108. package/dist/core/maintenance.js +10 -3
  109. package/dist/core/maintenance.js.map +1 -1
  110. package/dist/core/passthrough-commands.d.ts.map +1 -1
  111. package/dist/core/passthrough-commands.js +1 -1
  112. package/dist/core/passthrough-commands.js.map +1 -1
  113. package/dist/core/persistent-backend.d.ts +16 -2
  114. package/dist/core/persistent-backend.d.ts.map +1 -1
  115. package/dist/core/persistent-backend.js +40 -0
  116. package/dist/core/persistent-backend.js.map +1 -1
  117. package/dist/core/plugins/mcp/gateway-installer.d.ts.map +1 -1
  118. package/dist/core/plugins/mcp/gateway-installer.js +14 -2
  119. package/dist/core/plugins/mcp/gateway-installer.js.map +1 -1
  120. package/dist/core/session-discovery.d.ts +8 -1
  121. package/dist/core/session-discovery.d.ts.map +1 -1
  122. package/dist/core/session-discovery.js +140 -8
  123. package/dist/core/session-discovery.js.map +1 -1
  124. package/dist/core/session-manager.d.ts.map +1 -1
  125. package/dist/core/session-manager.js +102 -68
  126. package/dist/core/session-manager.js.map +1 -1
  127. package/dist/core/session-title.d.ts +8 -0
  128. package/dist/core/session-title.d.ts.map +1 -1
  129. package/dist/core/session-title.js +54 -0
  130. package/dist/core/session-title.js.map +1 -1
  131. package/dist/core/terminal-write-auth.d.ts +15 -0
  132. package/dist/core/terminal-write-auth.d.ts.map +1 -1
  133. package/dist/core/terminal-write-auth.js +20 -0
  134. package/dist/core/terminal-write-auth.js.map +1 -1
  135. package/dist/core/trigger-session.d.ts.map +1 -1
  136. package/dist/core/trigger-session.js +3 -2
  137. package/dist/core/trigger-session.js.map +1 -1
  138. package/dist/core/types.d.ts +33 -0
  139. package/dist/core/types.d.ts.map +1 -1
  140. package/dist/core/types.js.map +1 -1
  141. package/dist/core/worker-pool.d.ts +51 -8
  142. package/dist/core/worker-pool.d.ts.map +1 -1
  143. package/dist/core/worker-pool.js +439 -25
  144. package/dist/core/worker-pool.js.map +1 -1
  145. package/dist/daemon.d.ts +4 -2
  146. package/dist/daemon.d.ts.map +1 -1
  147. package/dist/daemon.js +403 -26
  148. package/dist/daemon.js.map +1 -1
  149. package/dist/dashboard/bot-onboarding.d.ts +127 -1
  150. package/dist/dashboard/bot-onboarding.d.ts.map +1 -1
  151. package/dist/dashboard/bot-onboarding.js +1104 -25
  152. package/dist/dashboard/bot-onboarding.js.map +1 -1
  153. package/dist/dashboard/bot-payload.d.ts +5 -0
  154. package/dist/dashboard/bot-payload.d.ts.map +1 -1
  155. package/dist/dashboard/bot-payload.js +7 -0
  156. package/dist/dashboard/bot-payload.js.map +1 -1
  157. package/dist/dashboard/debug-terminal.d.ts +18 -0
  158. package/dist/dashboard/debug-terminal.d.ts.map +1 -0
  159. package/dist/dashboard/debug-terminal.js +338 -0
  160. package/dist/dashboard/debug-terminal.js.map +1 -0
  161. package/dist/dashboard/public-redact.d.ts +2 -0
  162. package/dist/dashboard/public-redact.d.ts.map +1 -1
  163. package/dist/dashboard/public-redact.js +12 -3
  164. package/dist/dashboard/public-redact.js.map +1 -1
  165. package/dist/dashboard/registry.d.ts +8 -0
  166. package/dist/dashboard/registry.d.ts.map +1 -1
  167. package/dist/dashboard/registry.js +13 -0
  168. package/dist/dashboard/registry.js.map +1 -1
  169. package/dist/dashboard/settings-write-applier.d.ts +47 -1
  170. package/dist/dashboard/settings-write-applier.d.ts.map +1 -1
  171. package/dist/dashboard/settings-write-applier.js +102 -1
  172. package/dist/dashboard/settings-write-applier.js.map +1 -1
  173. package/dist/dashboard/web/app.d.ts.map +1 -1
  174. package/dist/dashboard/web/app.js +2 -0
  175. package/dist/dashboard/web/app.js.map +1 -1
  176. package/dist/dashboard/web/bot-defaults-page.d.ts +17 -0
  177. package/dist/dashboard/web/bot-defaults-page.d.ts.map +1 -1
  178. package/dist/dashboard/web/bot-defaults-page.js +249 -11
  179. package/dist/dashboard/web/bot-defaults-page.js.map +1 -1
  180. package/dist/dashboard/web/bot-defaults.d.ts +22 -0
  181. package/dist/dashboard/web/bot-defaults.d.ts.map +1 -1
  182. package/dist/dashboard/web/bot-defaults.js +19 -0
  183. package/dist/dashboard/web/bot-defaults.js.map +1 -1
  184. package/dist/dashboard/web/i18n.d.ts.map +1 -1
  185. package/dist/dashboard/web/i18n.js +114 -28
  186. package/dist/dashboard/web/i18n.js.map +1 -1
  187. package/dist/dashboard/web/icon-tooltip.d.ts +3 -0
  188. package/dist/dashboard/web/icon-tooltip.d.ts.map +1 -0
  189. package/dist/dashboard/web/icon-tooltip.js +108 -0
  190. package/dist/dashboard/web/icon-tooltip.js.map +1 -0
  191. package/dist/dashboard/web/sessions-kanban.js +2 -2
  192. package/dist/dashboard/web/sessions-kanban.js.map +1 -1
  193. package/dist/dashboard/web/sessions-page.d.ts.map +1 -1
  194. package/dist/dashboard/web/sessions-page.js +49 -53
  195. package/dist/dashboard/web/sessions-page.js.map +1 -1
  196. package/dist/dashboard/web/sessions.d.ts +2 -0
  197. package/dist/dashboard/web/sessions.d.ts.map +1 -1
  198. package/dist/dashboard/web/sessions.js +46 -2
  199. package/dist/dashboard/web/sessions.js.map +1 -1
  200. package/dist/dashboard/web/settings-page.d.ts +78 -0
  201. package/dist/dashboard/web/settings-page.d.ts.map +1 -1
  202. package/dist/dashboard/web/settings-page.js +88 -1
  203. package/dist/dashboard/web/settings-page.js.map +1 -1
  204. package/dist/dashboard/web/store.d.ts +2 -0
  205. package/dist/dashboard/web/store.d.ts.map +1 -1
  206. package/dist/dashboard/web/store.js +13 -1
  207. package/dist/dashboard/web/store.js.map +1 -1
  208. package/dist/dashboard-web/app.js +1 -1
  209. package/dist/dashboard-web/chunks/bot-defaults-page-AUKV7P4L.js +10 -0
  210. package/dist/dashboard-web/chunks/{chunk-P6GO5KT4.js → chunk-KPQAUX7V.js} +1 -1
  211. package/dist/dashboard-web/chunks/{chunk-UBOLHQCK.js → chunk-NRL6CVAS.js} +1 -1
  212. package/dist/dashboard-web/chunks/{chunk-JNRSPKLS.js → chunk-R7IAKAYX.js} +1 -1
  213. package/dist/dashboard-web/chunks/{chunk-CUV65BIQ.js → chunk-X2L65IOM.js} +8 -8
  214. package/dist/dashboard-web/chunks/{connectors-page-KTC2QWNW.js → connectors-page-HDQFEXZI.js} +1 -1
  215. package/dist/dashboard-web/chunks/{groups-page-B3EKGOLY.js → groups-page-6DKXBYOM.js} +1 -1
  216. package/dist/dashboard-web/chunks/{insights-page-X6RXNCWX.js → insights-page-NWARTJ6J.js} +1 -1
  217. package/dist/dashboard-web/chunks/{monitor-room-LLRA5LQW.js → monitor-room-AGX3XRJX.js} +1 -1
  218. package/dist/dashboard-web/chunks/{monitoring-page-7MT5FEOS.js → monitoring-page-GGGIWN4C.js} +1 -1
  219. package/dist/dashboard-web/chunks/{office-page-KD46D5TD.js → office-page-6SIVKSK3.js} +1 -1
  220. package/dist/dashboard-web/chunks/{overview-page-JUWNH32O.js → overview-page-FVR3NKAF.js} +1 -1
  221. package/dist/dashboard-web/chunks/{roles-page-P6F7NLOI.js → roles-page-WE2YB7KN.js} +1 -1
  222. package/dist/dashboard-web/chunks/{schedules-page-XIHWZST4.js → schedules-page-TB3I24XN.js} +1 -1
  223. package/dist/dashboard-web/chunks/sessions-page-KOOOASIL.js +2 -0
  224. package/dist/dashboard-web/chunks/settings-page-IEBR7TGN.js +2 -0
  225. package/dist/dashboard-web/chunks/{skills-page-A46KVWBL.js → skills-page-3QAT2IWD.js} +1 -1
  226. package/dist/dashboard-web/chunks/{team-federation-page-SDUC56DF.js → team-federation-page-K4VVAVAK.js} +1 -1
  227. package/dist/dashboard-web/chunks/{v3-page-J5JOTUSQ.js → v3-page-V6IOJR2B.js} +1 -1
  228. package/dist/dashboard-web/chunks/{whiteboards-page-U7LSOAWI.js → whiteboards-page-V6CGKRNX.js} +1 -1
  229. package/dist/dashboard-web/style.css +218 -10
  230. package/dist/dashboard.js +380 -8
  231. package/dist/dashboard.js.map +1 -1
  232. package/dist/features/codex-notifier/adoption.d.ts +11 -0
  233. package/dist/features/codex-notifier/adoption.d.ts.map +1 -0
  234. package/dist/features/codex-notifier/adoption.js +11 -0
  235. package/dist/features/codex-notifier/adoption.js.map +1 -0
  236. package/dist/features/codex-notifier/app-opener.d.ts +21 -0
  237. package/dist/features/codex-notifier/app-opener.d.ts.map +1 -0
  238. package/dist/features/codex-notifier/app-opener.js +33 -0
  239. package/dist/features/codex-notifier/app-opener.js.map +1 -0
  240. package/dist/features/codex-notifier/card-action.d.ts +27 -0
  241. package/dist/features/codex-notifier/card-action.d.ts.map +1 -0
  242. package/dist/features/codex-notifier/card-action.js +84 -0
  243. package/dist/features/codex-notifier/card-action.js.map +1 -0
  244. package/dist/features/codex-notifier/card.d.ts +12 -0
  245. package/dist/features/codex-notifier/card.d.ts.map +1 -0
  246. package/dist/features/codex-notifier/card.js +150 -0
  247. package/dist/features/codex-notifier/card.js.map +1 -0
  248. package/dist/features/codex-notifier/codex-context.d.ts +12 -0
  249. package/dist/features/codex-notifier/codex-context.d.ts.map +1 -0
  250. package/dist/features/codex-notifier/codex-context.js +161 -0
  251. package/dist/features/codex-notifier/codex-context.js.map +1 -0
  252. package/dist/features/codex-notifier/config.d.ts +9 -0
  253. package/dist/features/codex-notifier/config.d.ts.map +1 -0
  254. package/dist/features/codex-notifier/config.js +11 -0
  255. package/dist/features/codex-notifier/config.js.map +1 -0
  256. package/dist/features/codex-notifier/confirmed-turn.d.ts +20 -0
  257. package/dist/features/codex-notifier/confirmed-turn.d.ts.map +1 -0
  258. package/dist/features/codex-notifier/confirmed-turn.js +130 -0
  259. package/dist/features/codex-notifier/confirmed-turn.js.map +1 -0
  260. package/dist/features/codex-notifier/emitter.d.ts +13 -0
  261. package/dist/features/codex-notifier/emitter.d.ts.map +1 -0
  262. package/dist/features/codex-notifier/emitter.js +33 -0
  263. package/dist/features/codex-notifier/emitter.js.map +1 -0
  264. package/dist/features/codex-notifier/event-store.d.ts +29 -0
  265. package/dist/features/codex-notifier/event-store.d.ts.map +1 -0
  266. package/dist/features/codex-notifier/event-store.js +217 -0
  267. package/dist/features/codex-notifier/event-store.js.map +1 -0
  268. package/dist/features/codex-notifier/event.d.ts +46 -0
  269. package/dist/features/codex-notifier/event.d.ts.map +1 -0
  270. package/dist/features/codex-notifier/event.js +188 -0
  271. package/dist/features/codex-notifier/event.js.map +1 -0
  272. package/dist/features/codex-notifier/hook-cli.d.ts +23 -0
  273. package/dist/features/codex-notifier/hook-cli.d.ts.map +1 -0
  274. package/dist/features/codex-notifier/hook-cli.js +130 -0
  275. package/dist/features/codex-notifier/hook-cli.js.map +1 -0
  276. package/dist/features/codex-notifier/hook-installer.d.ts +19 -0
  277. package/dist/features/codex-notifier/hook-installer.d.ts.map +1 -0
  278. package/dist/features/codex-notifier/hook-installer.js +158 -0
  279. package/dist/features/codex-notifier/hook-installer.js.map +1 -0
  280. package/dist/features/codex-notifier/index.d.ts +21 -0
  281. package/dist/features/codex-notifier/index.d.ts.map +1 -0
  282. package/dist/features/codex-notifier/index.js +19 -0
  283. package/dist/features/codex-notifier/index.js.map +1 -0
  284. package/dist/features/codex-notifier/internal-turn.d.ts +5 -0
  285. package/dist/features/codex-notifier/internal-turn.d.ts.map +1 -0
  286. package/dist/features/codex-notifier/internal-turn.js +43 -0
  287. package/dist/features/codex-notifier/internal-turn.js.map +1 -0
  288. package/dist/features/codex-notifier/outbox-worker.d.ts +71 -0
  289. package/dist/features/codex-notifier/outbox-worker.d.ts.map +1 -0
  290. package/dist/features/codex-notifier/outbox-worker.js +290 -0
  291. package/dist/features/codex-notifier/outbox-worker.js.map +1 -0
  292. package/dist/features/codex-notifier/outbox.d.ts +25 -0
  293. package/dist/features/codex-notifier/outbox.d.ts.map +1 -0
  294. package/dist/features/codex-notifier/outbox.js +225 -0
  295. package/dist/features/codex-notifier/outbox.js.map +1 -0
  296. package/dist/features/codex-notifier/paths.d.ts +7 -0
  297. package/dist/features/codex-notifier/paths.d.ts.map +1 -0
  298. package/dist/features/codex-notifier/paths.js +20 -0
  299. package/dist/features/codex-notifier/paths.js.map +1 -0
  300. package/dist/features/codex-notifier/screen-lock.d.ts +12 -0
  301. package/dist/features/codex-notifier/screen-lock.d.ts.map +1 -0
  302. package/dist/features/codex-notifier/screen-lock.js +47 -0
  303. package/dist/features/codex-notifier/screen-lock.js.map +1 -0
  304. package/dist/features/codex-notifier/side-conversation-monitor.d.ts +102 -0
  305. package/dist/features/codex-notifier/side-conversation-monitor.d.ts.map +1 -0
  306. package/dist/features/codex-notifier/side-conversation-monitor.js +774 -0
  307. package/dist/features/codex-notifier/side-conversation-monitor.js.map +1 -0
  308. package/dist/features/codex-notifier/types.d.ts +42 -0
  309. package/dist/features/codex-notifier/types.d.ts.map +1 -0
  310. package/dist/features/codex-notifier/types.js +2 -0
  311. package/dist/features/codex-notifier/types.js.map +1 -0
  312. package/dist/features/codex-notifier/worker-lock.d.ts +8 -0
  313. package/dist/features/codex-notifier/worker-lock.d.ts.map +1 -0
  314. package/dist/features/codex-notifier/worker-lock.js +108 -0
  315. package/dist/features/codex-notifier/worker-lock.js.map +1 -0
  316. package/dist/global-config.d.ts +13 -0
  317. package/dist/global-config.d.ts.map +1 -1
  318. package/dist/global-config.js +34 -1
  319. package/dist/global-config.js.map +1 -1
  320. package/dist/i18n/en.d.ts.map +1 -1
  321. package/dist/i18n/en.js +1 -19
  322. package/dist/i18n/en.js.map +1 -1
  323. package/dist/i18n/zh.d.ts.map +1 -1
  324. package/dist/i18n/zh.js +1 -19
  325. package/dist/i18n/zh.js.map +1 -1
  326. package/dist/im/lark/card-builder.d.ts +0 -13
  327. package/dist/im/lark/card-builder.d.ts.map +1 -1
  328. package/dist/im/lark/card-builder.js +2 -36
  329. package/dist/im/lark/card-builder.js.map +1 -1
  330. package/dist/im/lark/card-handler.d.ts +2 -0
  331. package/dist/im/lark/card-handler.d.ts.map +1 -1
  332. package/dist/im/lark/card-handler.js +166 -64
  333. package/dist/im/lark/card-handler.js.map +1 -1
  334. package/dist/im/lark/client.d.ts +98 -4
  335. package/dist/im/lark/client.d.ts.map +1 -1
  336. package/dist/im/lark/client.js +317 -29
  337. package/dist/im/lark/client.js.map +1 -1
  338. package/dist/im/lark/event-dispatcher.d.ts.map +1 -1
  339. package/dist/im/lark/event-dispatcher.js +48 -33
  340. package/dist/im/lark/event-dispatcher.js.map +1 -1
  341. package/dist/services/codex-app-threads.d.ts +47 -0
  342. package/dist/services/codex-app-threads.d.ts.map +1 -1
  343. package/dist/services/codex-app-threads.js +502 -10
  344. package/dist/services/codex-app-threads.js.map +1 -1
  345. package/dist/services/exact-chat-grant.d.ts +83 -0
  346. package/dist/services/exact-chat-grant.d.ts.map +1 -0
  347. package/dist/services/exact-chat-grant.js +249 -0
  348. package/dist/services/exact-chat-grant.js.map +1 -0
  349. package/dist/services/group-creator.d.ts +11 -0
  350. package/dist/services/group-creator.d.ts.map +1 -1
  351. package/dist/services/group-creator.js +18 -9
  352. package/dist/services/group-creator.js.map +1 -1
  353. package/dist/services/local-cli-opener.d.ts.map +1 -1
  354. package/dist/services/local-cli-opener.js +10 -5
  355. package/dist/services/local-cli-opener.js.map +1 -1
  356. package/dist/services/sandbox-migration.d.ts +14 -0
  357. package/dist/services/sandbox-migration.d.ts.map +1 -0
  358. package/dist/services/sandbox-migration.js +85 -0
  359. package/dist/services/sandbox-migration.js.map +1 -0
  360. package/dist/services/sandbox-store.d.ts +28 -0
  361. package/dist/services/sandbox-store.d.ts.map +1 -1
  362. package/dist/services/sandbox-store.js +82 -0
  363. package/dist/services/sandbox-store.js.map +1 -1
  364. package/dist/services/traex-user-input.d.ts +19 -0
  365. package/dist/services/traex-user-input.d.ts.map +1 -0
  366. package/dist/services/traex-user-input.js +57 -0
  367. package/dist/services/traex-user-input.js.map +1 -0
  368. package/dist/setup/open-platform-automation.d.ts +24 -3
  369. package/dist/setup/open-platform-automation.d.ts.map +1 -1
  370. package/dist/setup/open-platform-automation.js +45 -8
  371. package/dist/setup/open-platform-automation.js.map +1 -1
  372. package/dist/setup/verify-permissions.d.ts +18 -0
  373. package/dist/setup/verify-permissions.d.ts.map +1 -1
  374. package/dist/setup/verify-permissions.js +60 -0
  375. package/dist/setup/verify-permissions.js.map +1 -1
  376. package/dist/types.d.ts +83 -5
  377. package/dist/types.d.ts.map +1 -1
  378. package/dist/utils/child-env.d.ts +2 -2
  379. package/dist/utils/child-env.d.ts.map +1 -1
  380. package/dist/utils/child-env.js +14 -0
  381. package/dist/utils/child-env.js.map +1 -1
  382. package/dist/utils/stuck-detector.d.ts +45 -0
  383. package/dist/utils/stuck-detector.d.ts.map +1 -0
  384. package/dist/utils/stuck-detector.js +188 -0
  385. package/dist/utils/stuck-detector.js.map +1 -0
  386. package/dist/utils/stuck-key-guard.d.ts +75 -0
  387. package/dist/utils/stuck-key-guard.d.ts.map +1 -0
  388. package/dist/utils/stuck-key-guard.js +77 -0
  389. package/dist/utils/stuck-key-guard.js.map +1 -0
  390. package/dist/worker.js +1119 -588
  391. package/dist/worker.js.map +1 -1
  392. package/dist/workflows/events/payloads.d.ts +56 -0
  393. package/dist/workflows/events/payloads.d.ts.map +1 -1
  394. package/dist/workflows/events/payloads.js +9 -0
  395. package/dist/workflows/events/payloads.js.map +1 -1
  396. package/dist/workflows/events/schema.d.ts +86 -0
  397. package/dist/workflows/events/schema.d.ts.map +1 -1
  398. package/dist/workflows/shared/sandbox-policy.d.ts +10 -1
  399. package/dist/workflows/shared/sandbox-policy.d.ts.map +1 -1
  400. package/dist/workflows/shared/sandbox-policy.js +12 -0
  401. package/dist/workflows/shared/sandbox-policy.js.map +1 -1
  402. package/dist/workflows/v3/bot-resolve.d.ts.map +1 -1
  403. package/dist/workflows/v3/bot-resolve.js +36 -0
  404. package/dist/workflows/v3/bot-resolve.js.map +1 -1
  405. package/dist/workflows/v3/contract.d.ts +8 -0
  406. package/dist/workflows/v3/contract.d.ts.map +1 -1
  407. package/dist/workflows/v3/contract.js.map +1 -1
  408. package/package.json +1 -1
  409. package/dist/dashboard-web/chunks/bot-defaults-page-B5AY4B2J.js +0 -5
  410. package/dist/dashboard-web/chunks/sessions-page-2VECQ27T.js +0 -3
  411. package/dist/dashboard-web/chunks/settings-page-HMIUE2JA.js +0 -2
  412. package/dist/services/sandbox-land.d.ts +0 -45
  413. package/dist/services/sandbox-land.d.ts.map +0 -1
  414. package/dist/services/sandbox-land.js +0 -394
  415. package/dist/services/sandbox-land.js.map +0 -1
@@ -1802,6 +1802,36 @@ a:focus-visible {
1802
1802
  transform: translateY(-1px);
1803
1803
  }
1804
1804
 
1805
+ /* 调试终端按钮:复用监控室按钮的胶囊样式,保持工具栏一致。 */
1806
+ .debug-terminal-btn {
1807
+ display: inline-flex;
1808
+ align-items: center;
1809
+ justify-content: center;
1810
+ height: var(--button-height);
1811
+ min-height: var(--button-height);
1812
+ padding: 0 var(--button-padding-x);
1813
+ border: 1px solid var(--border-soft);
1814
+ border-radius: var(--radius-full);
1815
+ background: var(--surface);
1816
+ color: var(--fg);
1817
+ font-size: 12px;
1818
+ font-weight: 700;
1819
+ line-height: 1;
1820
+ white-space: nowrap;
1821
+ transition:
1822
+ border-color 150ms ease,
1823
+ background-color 150ms ease,
1824
+ color 150ms ease,
1825
+ transform 150ms ease;
1826
+ }
1827
+
1828
+ .debug-terminal-btn:hover:not(:disabled) {
1829
+ border-color: var(--accent);
1830
+ background: color-mix(in srgb, var(--accent) 8%, transparent);
1831
+ color: var(--accent-strong);
1832
+ transform: translateY(-1px);
1833
+ }
1834
+
1805
1835
  .filter-toggle {
1806
1836
  display: inline-flex;
1807
1837
  align-items: center;
@@ -2637,6 +2667,7 @@ button.primary {
2637
2667
  .session-card-actions {
2638
2668
  padding-top: 2px;
2639
2669
  justify-content: flex-end;
2670
+ gap: 6px;
2640
2671
  }
2641
2672
 
2642
2673
  .session-card-actions button,
@@ -3038,17 +3069,44 @@ button.primary {
3038
3069
  transform: translateY(-50%);
3039
3070
  display: inline-flex;
3040
3071
  align-items: center;
3041
- justify-content: flex-start;
3072
+ justify-content: flex-end;
3042
3073
  flex: none;
3043
3074
  flex-wrap: nowrap;
3044
- gap: 2px;
3075
+ gap: 3px;
3045
3076
  max-width: 100%;
3046
3077
  min-width: 0;
3047
3078
  margin-left: 0;
3048
- overflow: hidden;
3079
+ padding-left: 24px;
3080
+ /* rail 是 hover 浮层,绝对定位盖在顶行上。默认完全透明、不占视觉(否则常驻的
3081
+ 渐变背景会把没 hover 的卡片 CLI 徽章也糊掉——见回归)。只有 hover/focus 时
3082
+ 才浮出:给一层与 hover 态卡片同色的背景 + 左侧渐变淡出,干净盖住徽章而非糊字。 */
3083
+ --kanban-rail-bg: color-mix(in srgb, var(--accent) 4%, var(--surface-raised));
3084
+ background: transparent;
3049
3085
  z-index: 2;
3050
3086
  }
3051
3087
 
3088
+ .kanban-card:hover .kanban-card-actions-rail,
3089
+ .kanban-card:focus-within .kanban-card-actions-rail {
3090
+ background: linear-gradient(
3091
+ to right,
3092
+ transparent 0,
3093
+ var(--kanban-rail-bg) 24px,
3094
+ var(--kanban-rail-bg) 100%
3095
+ );
3096
+ }
3097
+
3098
+ @media (hover: none), (max-width: 720px) {
3099
+ /* 触屏/窄屏按钮常显,背景也常显,避免图标浮在徽章上重叠。 */
3100
+ .kanban-card-actions-rail {
3101
+ background: linear-gradient(
3102
+ to right,
3103
+ transparent 0,
3104
+ var(--kanban-rail-bg) 24px,
3105
+ var(--kanban-rail-bg) 100%
3106
+ );
3107
+ }
3108
+ }
3109
+
3052
3110
  .kanban-card-dot {
3053
3111
  width: 8px;
3054
3112
  height: 8px;
@@ -3562,6 +3620,52 @@ button.primary {
3562
3620
  .term-pill .term-write:hover { filter: brightness(1.1); }
3563
3621
  .term-pill .term-btn:active { transform: scale(0.88); }
3564
3622
 
3623
+ /* ── 全局图标 tooltip(icon-tooltip.ts 委托渲染到 body,逃出容器 overflow)────── */
3624
+ .icon-tip {
3625
+ position: fixed;
3626
+ z-index: 9999;
3627
+ max-width: 260px;
3628
+ padding: 5px 9px;
3629
+ border-radius: var(--radius-sm);
3630
+ background: var(--surface-inverse, #1f2430);
3631
+ color: var(--on-inverse, #eef1f7);
3632
+ border: 1px solid var(--border-soft);
3633
+ box-shadow: 0 6px 20px rgba(0, 0, 0, 0.28);
3634
+ font-size: 12px;
3635
+ line-height: 1.4;
3636
+ font-weight: 600;
3637
+ white-space: normal;
3638
+ pointer-events: none;
3639
+ opacity: 0;
3640
+ transform: translateY(2px);
3641
+ transition: opacity 120ms ease, transform 120ms ease;
3642
+ }
3643
+ .icon-tip.show {
3644
+ opacity: 1;
3645
+ transform: translateY(0);
3646
+ }
3647
+ /* 小箭头指向触发按钮 */
3648
+ .icon-tip::after {
3649
+ content: "";
3650
+ position: absolute;
3651
+ left: 50%;
3652
+ width: 7px;
3653
+ height: 7px;
3654
+ transform: translateX(-50%) rotate(45deg);
3655
+ background: var(--surface-inverse, #1f2430);
3656
+ border: 1px solid var(--border-soft);
3657
+ }
3658
+ .icon-tip[data-placement="top"]::after {
3659
+ bottom: -4px;
3660
+ border-top: none;
3661
+ border-left: none;
3662
+ }
3663
+ .icon-tip[data-placement="bottom"]::after {
3664
+ top: -4px;
3665
+ border-bottom: none;
3666
+ border-right: none;
3667
+ }
3668
+
3565
3669
  dialog {
3566
3670
  width: min(680px, calc(100vw - 32px));
3567
3671
  max-height: calc(100vh - 32px);
@@ -6043,9 +6147,9 @@ dialog.onboarding-dialog::backdrop {
6043
6147
  color: var(--muted);
6044
6148
  }
6045
6149
  .bd-section-note { margin: 6px 0 0; color: var(--muted); font-size: 12px; line-height: 1.5; }
6046
- /* Read-isolation capability line under the file-sandbox toggle: green when this
6047
- bot's sandbox also read-isolates (claude/codex on macOS/Linux), muted grey when
6048
- it's write-protection only. Theme-safe via color-mix on the semantic tokens. */
6150
+ /* CLI-data-isolation capability line under the file-sandbox toggle: green when
6151
+ the CLI data root is redirected into this bot's private BOT_HOME, muted grey
6152
+ when only the base deny-by-default file sandbox applies. */
6049
6153
  .bd-section-note[data-read-iso-capability] { margin-top: 8px; padding: 7px 10px; border-radius: 9px; line-height: 1.55; }
6050
6154
  .bd-section-note[data-read-iso-capability="yes"] {
6051
6155
  color: var(--success);
@@ -6058,6 +6162,23 @@ dialog.onboarding-dialog::backdrop {
6058
6162
  border: 1px solid var(--border-soft);
6059
6163
  }
6060
6164
 
6165
+ /* ── Sandbox directory whitelist tree ── */
6166
+ .bd-sbx-tree { margin-top: 10px; max-height: 380px; overflow: auto; border: 1px solid var(--border-soft); border-radius: 9px; padding: 8px; font-size: 13px; }
6167
+ .bd-sbx-row { display: flex; flex-wrap: nowrap; align-items: center; gap: 6px; padding: 2px 0; min-width: 0; }
6168
+ .bd-sbx-twisty { cursor: pointer; flex: 0 0 14px; text-align: center; color: var(--muted); user-select: none; }
6169
+ .bd-sbx-name { flex: 1 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-family: var(--mono, monospace); }
6170
+ .bd-sbx-state { cursor: pointer; flex: 0 0 auto; width: 84px; text-align: center; font-size: 11px; padding: 1px 0; border-radius: 999px; border: 1px solid var(--border-soft); background: transparent; color: var(--muted); }
6171
+ .bd-sbx-state-inherit { color: var(--muted); border-style: dashed; }
6172
+ .bd-sbx-state-readWrite { color: #1a7f37; background: color-mix(in srgb, #1a7f37 12%, transparent); border-color: color-mix(in srgb, #1a7f37 40%, transparent); }
6173
+ .bd-sbx-state-readOnly { color: #9a6700; background: color-mix(in srgb, #9a6700 12%, transparent); border-color: color-mix(in srgb, #9a6700 40%, transparent); }
6174
+ .bd-sbx-state-deny { color: #cf222e; background: color-mix(in srgb, #cf222e 12%, transparent); border-color: color-mix(in srgb, #cf222e 40%, transparent); }
6175
+ .bd-sbx-state-none { color: var(--muted); }
6176
+ .bd-sbx-empty { color: var(--muted); font-size: 12px; padding: 2px 0; }
6177
+ .bd-sbx-text { margin-top: 10px; width: 100%; box-sizing: border-box; font-family: var(--mono, monospace); font-size: 13px; padding: 8px; border: 1px solid var(--border-soft); border-radius: 9px; resize: vertical; }
6178
+ .bd-sbx-tester { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 10px; }
6179
+ .bd-sbx-test-input { flex: 1 1 240px; font-family: var(--mono, monospace); font-size: 13px; padding: 6px 9px; border: 1px solid var(--border-soft); border-radius: 8px; }
6180
+ .bd-sbx-test-out { font-size: 12px; font-family: var(--mono, monospace); padding: 2px 8px; border-radius: 8px; }
6181
+
6061
6182
  /* ── Version & update card ── */
6062
6183
  .update-version { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin: 0 0 12px; }
6063
6184
  .update-badge { font-size: 12px; font-weight: 600; padding: 2px 8px; border-radius: 999px; }
@@ -8778,6 +8899,8 @@ button.contrast:hover { background: var(--danger-soft); border-color: var(--dang
8778
8899
  box-shadow: var(--modal-shadow);
8779
8900
  transform: translateX(-50%);
8780
8901
  }
8902
+ /* 会话筛选里的「来源 / 所在聊天」弹层宽度自适应 + 不折行的规则统一定义在下方
8903
+ (.sessions-filters .sect-sort-pop,靠后覆盖),此处不再重复。 */
8781
8904
  .sect-sort-pop button {
8782
8905
  display: flex;
8783
8906
  align-items: center;
@@ -8794,6 +8917,11 @@ button.contrast:hover { background: var(--danger-soft); border-color: var(--dang
8794
8917
  line-height: 1;
8795
8918
  text-align: left;
8796
8919
  cursor: pointer;
8920
+ /* 选项不换行:长文案(如「来源:外部接入 (/adopt)」「单聊 · 申晗 · <bot名>」)
8921
+ 以前会折成多行、显得拥挤。改为单行 + 超长省略号;弹层宽度下方放宽。 */
8922
+ white-space: nowrap;
8923
+ overflow: hidden;
8924
+ text-overflow: ellipsis;
8797
8925
  }
8798
8926
  /* 长列表下拉的过滤框:滚动时钉在弹层顶部(负 margin 盖住弹层 padding)。 */
8799
8927
  .sect-sort-pop input.sect-sort-search[type="search"] {
@@ -9129,7 +9257,28 @@ button.contrast:hover { background: var(--danger-soft); border-color: var(--dang
9129
9257
  min-width: 0;
9130
9258
  }
9131
9259
  .sessions-filters .sect-sort-pop {
9132
- min-width: var(--dropdown-trigger-width);
9260
+ /* 「来源 / 所在聊天」选项文案偏长(如「来源:外部接入 (/adopt)」、含 bot 后缀的
9261
+ 单聊名):弹层按最长选项自适应、不折行,封顶后省略号;左对齐避免右侧超出视口。
9262
+ 用 .dashboard-toolbar 前缀匹配上 `.dashboard-toolbar > .sect-sort-menu >
9263
+ .sect-sort-pop`(那条把宽度锁成 100%),靠后 + 同等特指度覆盖它。 */
9264
+ left: 0;
9265
+ transform: none;
9266
+ width: max-content;
9267
+ min-width: 220px;
9268
+ max-width: min(380px, calc(100vw - 48px));
9269
+ }
9270
+ .dashboard-toolbar.sessions-filters > .sect-sort-menu > .sect-sort-pop {
9271
+ left: 0;
9272
+ transform: none;
9273
+ width: max-content;
9274
+ min-width: 220px;
9275
+ max-width: min(380px, calc(100vw - 48px));
9276
+ }
9277
+ /* 让选项按 max-content 撑开弹层:默认按钮的 ellipsis 会把 max-content 量成最小宽度,
9278
+ 这里放开——只有触达 max-width 上限时才由按钮自身 ellipsis 收尾。 */
9279
+ .sessions-filters .sect-sort-pop button {
9280
+ min-width: 0;
9281
+ white-space: nowrap;
9133
9282
  }
9134
9283
  :root[data-theme="dark"] .sessions-filters input[type=search] {
9135
9284
  background-color: var(--surface);
@@ -9238,14 +9387,67 @@ button.contrast:hover { background: var(--danger-soft); border-color: var(--dang
9238
9387
  min-width: var(--dropdown-trigger-width);
9239
9388
  max-width: calc(100vw - 48px);
9240
9389
  display: flex;
9241
- flex-wrap: wrap;
9242
- gap: 4px;
9243
- padding: 6px;
9390
+ flex-direction: column;
9391
+ gap: 8px;
9392
+ padding: 8px;
9244
9393
  border-radius: var(--radius-lg);
9245
9394
  border: 1px solid var(--border-soft);
9246
9395
  background: var(--surface);
9247
9396
  box-shadow: var(--modal-shadow);
9248
9397
  }
9398
+ .filter-cli-head {
9399
+ display: flex;
9400
+ align-items: center;
9401
+ gap: 6px;
9402
+ }
9403
+ .filter-cli-search {
9404
+ flex: 1 1 auto;
9405
+ min-width: 0;
9406
+ min-height: var(--button-compact-height);
9407
+ padding: 0 10px;
9408
+ border-radius: var(--radius-full);
9409
+ border: 1px solid var(--border-soft);
9410
+ background: var(--surface-raised);
9411
+ color: var(--fg);
9412
+ font-size: 12px;
9413
+ }
9414
+ .filter-cli-search:focus {
9415
+ outline: none;
9416
+ border-color: color-mix(in srgb, var(--accent) 45%, var(--border-soft));
9417
+ }
9418
+ .filter-cli-bulk {
9419
+ display: inline-flex;
9420
+ gap: 4px;
9421
+ flex: none;
9422
+ }
9423
+ .filter-cli-bulk button {
9424
+ min-height: var(--button-compact-height);
9425
+ padding: 0 9px;
9426
+ border-radius: var(--radius-full);
9427
+ border: 1px solid var(--border-soft);
9428
+ background: var(--surface-raised);
9429
+ color: var(--muted);
9430
+ font-size: 11px;
9431
+ font-weight: 700;
9432
+ cursor: pointer;
9433
+ white-space: nowrap;
9434
+ }
9435
+ .filter-cli-bulk button:hover {
9436
+ border-color: color-mix(in srgb, var(--accent) 32%, var(--border-soft));
9437
+ color: var(--accent-strong);
9438
+ }
9439
+ .filter-cli-options {
9440
+ display: flex;
9441
+ flex-wrap: wrap;
9442
+ gap: 4px;
9443
+ max-height: 320px;
9444
+ overflow-y: auto;
9445
+ }
9446
+ .filter-cli-empty {
9447
+ padding: 8px 4px;
9448
+ color: var(--faint);
9449
+ font-size: 12px;
9450
+ }
9249
9451
  .filter-cli-pop .filter-check {
9250
9452
  min-height: var(--button-compact-height);
9251
9453
  padding: 0 var(--button-padding-x);
@@ -17732,6 +17934,12 @@ form.dashboard-toolbar > input[type="text"]:focus {
17732
17934
  line-height: 1.5;
17733
17935
  word-break: break-all;
17734
17936
  }
17937
+ .settings-page .settings-codex-notifier-details {
17938
+ display: grid;
17939
+ gap: 10px;
17940
+ min-width: 0;
17941
+ padding: 4px 0 2px;
17942
+ }
17735
17943
  .settings-page .settings-inline-link {
17736
17944
  border: 0;
17737
17945
  background: none;