visionclaw 0.1.219-beta.0 → 0.1.219-dev.codex-issue-2805-worker-runtime.1

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 (520) hide show
  1. package/dist/agent/api-proxy.d.ts +0 -16
  2. package/dist/agent/api-proxy.d.ts.map +1 -1
  3. package/dist/agent/api-proxy.js +9 -8
  4. package/dist/agent/api-proxy.js.map +1 -1
  5. package/dist/agent/browser-launcher.d.ts +3 -0
  6. package/dist/agent/browser-launcher.d.ts.map +1 -1
  7. package/dist/agent/browser-launcher.js +101 -43
  8. package/dist/agent/browser-launcher.js.map +1 -1
  9. package/dist/agent/coding-conventions.d.ts +8 -0
  10. package/dist/agent/coding-conventions.d.ts.map +1 -0
  11. package/dist/agent/coding-conventions.js +19 -0
  12. package/dist/agent/coding-conventions.js.map +1 -0
  13. package/dist/agent/command-handlers.d.ts.map +1 -1
  14. package/dist/agent/command-handlers.js +4 -16
  15. package/dist/agent/command-handlers.js.map +1 -1
  16. package/dist/agent/context-action-restart-fallback.d.ts.map +1 -1
  17. package/dist/agent/context-action-restart-fallback.js +9 -3
  18. package/dist/agent/context-action-restart-fallback.js.map +1 -1
  19. package/dist/agent/context-refresh.d.ts.map +1 -1
  20. package/dist/agent/context-refresh.js +0 -7
  21. package/dist/agent/context-refresh.js.map +1 -1
  22. package/dist/agent/context.d.ts +2 -4
  23. package/dist/agent/context.d.ts.map +1 -1
  24. package/dist/agent/context.js +12 -21
  25. package/dist/agent/context.js.map +1 -1
  26. package/dist/agent/engine-fallback.d.ts +0 -35
  27. package/dist/agent/engine-fallback.d.ts.map +1 -1
  28. package/dist/agent/engine-fallback.js +4 -3
  29. package/dist/agent/engine-fallback.js.map +1 -1
  30. package/dist/agent/engine-switch.d.ts +19 -38
  31. package/dist/agent/engine-switch.d.ts.map +1 -1
  32. package/dist/agent/engine-switch.js +46 -111
  33. package/dist/agent/engine-switch.js.map +1 -1
  34. package/dist/agent/engines/browser-tool-policy.d.ts +12 -1
  35. package/dist/agent/engines/browser-tool-policy.d.ts.map +1 -1
  36. package/dist/agent/engines/browser-tool-policy.js +17 -2
  37. package/dist/agent/engines/browser-tool-policy.js.map +1 -1
  38. package/dist/agent/engines/claude/executor-shell-groups.d.ts +11 -0
  39. package/dist/agent/engines/claude/executor-shell-groups.d.ts.map +1 -0
  40. package/dist/agent/engines/claude/executor-shell-groups.js +22 -0
  41. package/dist/agent/engines/claude/executor-shell-groups.js.map +1 -0
  42. package/dist/agent/engines/claude/session.d.ts +13 -4
  43. package/dist/agent/engines/claude/session.d.ts.map +1 -1
  44. package/dist/agent/engines/claude/session.js +165 -84
  45. package/dist/agent/engines/claude/session.js.map +1 -1
  46. package/dist/agent/engines/pi/shared/usage.d.ts +6 -8
  47. package/dist/agent/engines/pi/shared/usage.d.ts.map +1 -1
  48. package/dist/agent/engines/pi/shared/usage.js +24 -7
  49. package/dist/agent/engines/pi/shared/usage.js.map +1 -1
  50. package/dist/agent/engines/pi/tools.d.ts +3 -10
  51. package/dist/agent/engines/pi/tools.d.ts.map +1 -1
  52. package/dist/agent/engines/pi/tools.js +6 -20
  53. package/dist/agent/engines/pi/tools.js.map +1 -1
  54. package/dist/agent/engines/pi-coding/executor-shell.d.ts +4 -0
  55. package/dist/agent/engines/pi-coding/executor-shell.d.ts.map +1 -0
  56. package/dist/agent/engines/pi-coding/executor-shell.js +175 -0
  57. package/dist/agent/engines/pi-coding/executor-shell.js.map +1 -0
  58. package/dist/agent/engines/pi-coding/session.d.ts +4 -4
  59. package/dist/agent/engines/pi-coding/session.d.ts.map +1 -1
  60. package/dist/agent/engines/pi-coding/session.js +118 -66
  61. package/dist/agent/engines/pi-coding/session.js.map +1 -1
  62. package/dist/agent/engines/pi-coding/tools.d.ts +2 -5
  63. package/dist/agent/engines/pi-coding/tools.d.ts.map +1 -1
  64. package/dist/agent/engines/pi-coding/tools.js +7 -5
  65. package/dist/agent/engines/pi-coding/tools.js.map +1 -1
  66. package/dist/agent/engines/session-types.d.ts +8 -8
  67. package/dist/agent/engines/session-types.d.ts.map +1 -1
  68. package/dist/agent/external-context/interrupt.d.ts +0 -2
  69. package/dist/agent/external-context/interrupt.d.ts.map +1 -1
  70. package/dist/agent/external-context/interrupt.js +0 -1
  71. package/dist/agent/external-context/interrupt.js.map +1 -1
  72. package/dist/agent/external-context/registry.d.ts +0 -2
  73. package/dist/agent/external-context/registry.d.ts.map +1 -1
  74. package/dist/agent/external-context/registry.js +2 -4
  75. package/dist/agent/external-context/registry.js.map +1 -1
  76. package/dist/agent/external-context/runtime.d.ts.map +1 -1
  77. package/dist/agent/external-context/runtime.js +15 -14
  78. package/dist/agent/external-context/runtime.js.map +1 -1
  79. package/dist/agent/external-context/types.d.ts +0 -2
  80. package/dist/agent/external-context/types.d.ts.map +1 -1
  81. package/dist/agent/fast-responder.d.ts +4 -20
  82. package/dist/agent/fast-responder.d.ts.map +1 -1
  83. package/dist/agent/fast-responder.js +28 -42
  84. package/dist/agent/fast-responder.js.map +1 -1
  85. package/dist/agent/interrupt-handler.d.ts +0 -6
  86. package/dist/agent/interrupt-handler.d.ts.map +1 -1
  87. package/dist/agent/interrupt-handler.js +5 -47
  88. package/dist/agent/interrupt-handler.js.map +1 -1
  89. package/dist/agent/lab-run-system-prompt.d.ts.map +1 -1
  90. package/dist/agent/lab-run-system-prompt.js +4 -1
  91. package/dist/agent/lab-run-system-prompt.js.map +1 -1
  92. package/dist/agent/lifecycle-trace.d.ts.map +1 -1
  93. package/dist/agent/lifecycle-trace.js +6 -5
  94. package/dist/agent/lifecycle-trace.js.map +1 -1
  95. package/dist/agent/loop.d.ts +8 -2
  96. package/dist/agent/loop.d.ts.map +1 -1
  97. package/dist/agent/loop.js +287 -156
  98. package/dist/agent/loop.js.map +1 -1
  99. package/dist/agent/memory-protocol.d.ts +2 -2
  100. package/dist/agent/memory-protocol.d.ts.map +1 -1
  101. package/dist/agent/memory-protocol.js +3 -15
  102. package/dist/agent/memory-protocol.js.map +1 -1
  103. package/dist/agent/memory-store.d.ts +58 -0
  104. package/dist/agent/memory-store.d.ts.map +1 -0
  105. package/dist/agent/memory-store.js +152 -0
  106. package/dist/agent/memory-store.js.map +1 -0
  107. package/dist/agent/model-provider.d.ts +18 -5
  108. package/dist/agent/model-provider.d.ts.map +1 -1
  109. package/dist/agent/model-provider.js +58 -18
  110. package/dist/agent/model-provider.js.map +1 -1
  111. package/dist/agent/nightly-maintenance/dreaming-batch.d.ts +184 -0
  112. package/dist/agent/nightly-maintenance/dreaming-batch.d.ts.map +1 -0
  113. package/dist/agent/nightly-maintenance/dreaming-batch.js +192 -0
  114. package/dist/agent/nightly-maintenance/dreaming-batch.js.map +1 -0
  115. package/dist/agent/nightly-maintenance/dreaming-files.d.ts +48 -0
  116. package/dist/agent/nightly-maintenance/dreaming-files.d.ts.map +1 -0
  117. package/dist/agent/nightly-maintenance/dreaming-files.js +109 -0
  118. package/dist/agent/nightly-maintenance/dreaming-files.js.map +1 -0
  119. package/dist/agent/nightly-maintenance/dreaming-ledger.d.ts +62 -0
  120. package/dist/agent/nightly-maintenance/dreaming-ledger.d.ts.map +1 -0
  121. package/dist/agent/nightly-maintenance/dreaming-ledger.js +146 -0
  122. package/dist/agent/nightly-maintenance/dreaming-ledger.js.map +1 -0
  123. package/dist/agent/nightly-maintenance/dreaming-planner.d.ts +86 -0
  124. package/dist/agent/nightly-maintenance/dreaming-planner.d.ts.map +1 -0
  125. package/dist/agent/nightly-maintenance/dreaming-planner.js +304 -0
  126. package/dist/agent/nightly-maintenance/dreaming-planner.js.map +1 -0
  127. package/dist/agent/nightly-maintenance/dreaming-runner.d.ts +93 -0
  128. package/dist/agent/nightly-maintenance/dreaming-runner.d.ts.map +1 -0
  129. package/dist/agent/nightly-maintenance/dreaming-runner.js +156 -0
  130. package/dist/agent/nightly-maintenance/dreaming-runner.js.map +1 -0
  131. package/dist/agent/nightly-maintenance/dreaming-sources.d.ts +115 -0
  132. package/dist/agent/nightly-maintenance/dreaming-sources.d.ts.map +1 -0
  133. package/dist/agent/nightly-maintenance/dreaming-sources.js +270 -0
  134. package/dist/agent/nightly-maintenance/dreaming-sources.js.map +1 -0
  135. package/dist/agent/nightly-maintenance/index.d.ts +28 -8
  136. package/dist/agent/nightly-maintenance/index.d.ts.map +1 -1
  137. package/dist/agent/nightly-maintenance/index.js +42 -15
  138. package/dist/agent/nightly-maintenance/index.js.map +1 -1
  139. package/dist/agent/nightly-maintenance/skill-learning-gate.js +1 -1
  140. package/dist/agent/nightly-maintenance/skill-learning-gate.js.map +1 -1
  141. package/dist/agent/nightly-maintenance/vocabulary-processor.d.ts +1 -1
  142. package/dist/agent/nightly-maintenance/vocabulary-processor.d.ts.map +1 -1
  143. package/dist/agent/product-identity.d.ts +5 -4
  144. package/dist/agent/product-identity.d.ts.map +1 -1
  145. package/dist/agent/product-identity.js +7 -6
  146. package/dist/agent/product-identity.js.map +1 -1
  147. package/dist/agent/public-activity.js +1 -1
  148. package/dist/agent/public-activity.js.map +1 -1
  149. package/dist/agent/runtime-context.d.ts +27 -0
  150. package/dist/agent/runtime-context.d.ts.map +1 -0
  151. package/dist/agent/runtime-context.js +60 -0
  152. package/dist/agent/runtime-context.js.map +1 -0
  153. package/dist/agent/runtime-disclosure-policy.d.ts +6 -0
  154. package/dist/agent/runtime-disclosure-policy.d.ts.map +1 -0
  155. package/dist/agent/runtime-disclosure-policy.js +16 -0
  156. package/dist/agent/runtime-disclosure-policy.js.map +1 -0
  157. package/dist/agent/runtime-surface.d.ts +15 -4
  158. package/dist/agent/runtime-surface.d.ts.map +1 -1
  159. package/dist/agent/runtime-surface.js +0 -1
  160. package/dist/agent/runtime-surface.js.map +1 -1
  161. package/dist/agent/session-manager.d.ts +30 -126
  162. package/dist/agent/session-manager.d.ts.map +1 -1
  163. package/dist/agent/session-manager.js +60 -484
  164. package/dist/agent/session-manager.js.map +1 -1
  165. package/dist/agent/state.d.ts +42 -2
  166. package/dist/agent/state.d.ts.map +1 -1
  167. package/dist/agent/state.js +21 -11
  168. package/dist/agent/state.js.map +1 -1
  169. package/dist/agent/stream-handler.d.ts +6 -13
  170. package/dist/agent/stream-handler.d.ts.map +1 -1
  171. package/dist/agent/stream-handler.js +8 -62
  172. package/dist/agent/stream-handler.js.map +1 -1
  173. package/dist/agent/system-prompt.d.ts +2 -0
  174. package/dist/agent/system-prompt.d.ts.map +1 -1
  175. package/dist/agent/system-prompt.js +21 -20
  176. package/dist/agent/system-prompt.js.map +1 -1
  177. package/dist/agent/tool-usage.d.ts.map +1 -1
  178. package/dist/agent/tool-usage.js +0 -1
  179. package/dist/agent/tool-usage.js.map +1 -1
  180. package/dist/agent/transcript/transcript-backfill.js +3 -3
  181. package/dist/agent/transcript/transcript-backfill.js.map +1 -1
  182. package/dist/agent/transcript/transcript-indexer.d.ts +3 -31
  183. package/dist/agent/transcript/transcript-indexer.d.ts.map +1 -1
  184. package/dist/agent/transcript/transcript-indexer.js +58 -57
  185. package/dist/agent/transcript/transcript-indexer.js.map +1 -1
  186. package/dist/agent/transcript-parsers/trivial-tools.d.ts.map +1 -1
  187. package/dist/agent/transcript-parsers/trivial-tools.js +0 -2
  188. package/dist/agent/transcript-parsers/trivial-tools.js.map +1 -1
  189. package/dist/agent/transcript-parsers/types.d.ts +1 -1
  190. package/dist/agent/transcript-summarizer.d.ts +14 -0
  191. package/dist/agent/transcript-summarizer.d.ts.map +1 -1
  192. package/dist/agent/transcript-summarizer.js +69 -45
  193. package/dist/agent/transcript-summarizer.js.map +1 -1
  194. package/dist/agent/usage/usage-report-queue.d.ts.map +1 -1
  195. package/dist/agent/usage/usage-report-queue.js +53 -52
  196. package/dist/agent/usage/usage-report-queue.js.map +1 -1
  197. package/dist/agent/usage/usage-report-types.d.ts +1 -1
  198. package/dist/agent/usage/usage-report-types.d.ts.map +1 -1
  199. package/dist/agent/vocabulary-glossary.d.ts +3 -3
  200. package/dist/agent/wake-cycle-runner.d.ts +14 -17
  201. package/dist/agent/wake-cycle-runner.d.ts.map +1 -1
  202. package/dist/agent/wake-cycle-runner.js +121 -290
  203. package/dist/agent/wake-cycle-runner.js.map +1 -1
  204. package/dist/builtin-skills/owner-manual/SKILL.md +2 -2
  205. package/dist/calendar/occurrence-ownership.d.ts.map +1 -1
  206. package/dist/calendar/occurrence-ownership.js +6 -5
  207. package/dist/calendar/occurrence-ownership.js.map +1 -1
  208. package/dist/calendar/scheduler.d.ts.map +1 -1
  209. package/dist/calendar/scheduler.js +4 -3
  210. package/dist/calendar/scheduler.js.map +1 -1
  211. package/dist/channels/interface.d.ts +8 -2
  212. package/dist/channels/interface.d.ts.map +1 -1
  213. package/dist/channels/interface.js +8 -1
  214. package/dist/channels/interface.js.map +1 -1
  215. package/dist/channels/manager.d.ts.map +1 -1
  216. package/dist/channels/manager.js +5 -1
  217. package/dist/channels/manager.js.map +1 -1
  218. package/dist/channels/queue.d.ts.map +1 -1
  219. package/dist/channels/queue.js +8 -0
  220. package/dist/channels/queue.js.map +1 -1
  221. package/dist/channels/tui.d.ts +14 -1
  222. package/dist/channels/tui.d.ts.map +1 -1
  223. package/dist/channels/tui.js +64 -2
  224. package/dist/channels/tui.js.map +1 -1
  225. package/dist/cli/index.d.ts +2 -2
  226. package/dist/cli/index.d.ts.map +1 -1
  227. package/dist/cli/index.js +22 -53
  228. package/dist/cli/index.js.map +1 -1
  229. package/dist/config/index.d.ts +13 -7
  230. package/dist/config/index.d.ts.map +1 -1
  231. package/dist/config/index.js +51 -64
  232. package/dist/config/index.js.map +1 -1
  233. package/dist/config/types.d.ts +28 -7
  234. package/dist/config/types.d.ts.map +1 -1
  235. package/dist/config/types.js +22 -20
  236. package/dist/config/types.js.map +1 -1
  237. package/dist/conversations/lazy-runtime.d.ts +5 -0
  238. package/dist/conversations/lazy-runtime.d.ts.map +1 -0
  239. package/dist/conversations/lazy-runtime.js +12 -0
  240. package/dist/conversations/lazy-runtime.js.map +1 -0
  241. package/dist/conversations/runtime.d.ts +17 -0
  242. package/dist/conversations/runtime.d.ts.map +1 -0
  243. package/dist/conversations/runtime.js +92 -0
  244. package/dist/conversations/runtime.js.map +1 -0
  245. package/dist/conversations/scheduler.d.ts +57 -0
  246. package/dist/conversations/scheduler.d.ts.map +1 -0
  247. package/dist/conversations/scheduler.js +175 -0
  248. package/dist/conversations/scheduler.js.map +1 -0
  249. package/dist/data-processing/pipeline.d.ts +0 -2
  250. package/dist/data-processing/pipeline.d.ts.map +1 -1
  251. package/dist/data-processing/pipeline.js +19 -24
  252. package/dist/data-processing/pipeline.js.map +1 -1
  253. package/dist/data-processing/restructure.d.ts +0 -2
  254. package/dist/data-processing/restructure.d.ts.map +1 -1
  255. package/dist/data-processing/restructure.js +6 -9
  256. package/dist/data-processing/restructure.js.map +1 -1
  257. package/dist/data-processing/types.d.ts +2 -9
  258. package/dist/data-processing/types.d.ts.map +1 -1
  259. package/dist/data-processing/types.js +2 -13
  260. package/dist/data-processing/types.js.map +1 -1
  261. package/dist/email/email-route-store.d.ts.map +1 -1
  262. package/dist/email/email-route-store.js +6 -5
  263. package/dist/email/email-route-store.js.map +1 -1
  264. package/dist/i18n/messages.d.ts +26 -2
  265. package/dist/i18n/messages.d.ts.map +1 -1
  266. package/dist/i18n/messages.js +30 -5
  267. package/dist/i18n/messages.js.map +1 -1
  268. package/dist/index.js.map +1 -1
  269. package/dist/logger.d.ts +11 -0
  270. package/dist/logger.d.ts.map +1 -1
  271. package/dist/logger.js +49 -1
  272. package/dist/logger.js.map +1 -1
  273. package/dist/obs/mini-app/status.d.ts.map +1 -1
  274. package/dist/obs/mini-app/status.js +0 -1
  275. package/dist/obs/mini-app/status.js.map +1 -1
  276. package/dist/onboarding/onboarding-service-client.d.ts +1 -0
  277. package/dist/onboarding/onboarding-service-client.d.ts.map +1 -1
  278. package/dist/onboarding/onboarding-service-client.js.map +1 -1
  279. package/dist/onboarding/remote-set-owner.d.ts.map +1 -1
  280. package/dist/onboarding/remote-set-owner.js +0 -1
  281. package/dist/onboarding/remote-set-owner.js.map +1 -1
  282. package/dist/onboarding/set-owner.d.ts +1 -1
  283. package/dist/onboarding/set-owner.d.ts.map +1 -1
  284. package/dist/onboarding/set-owner.js +3 -6
  285. package/dist/onboarding/set-owner.js.map +1 -1
  286. package/dist/reconfigure.d.ts.map +1 -1
  287. package/dist/reconfigure.js +1 -32
  288. package/dist/reconfigure.js.map +1 -1
  289. package/dist/reset.d.ts.map +1 -1
  290. package/dist/reset.js +3 -1
  291. package/dist/reset.js.map +1 -1
  292. package/dist/threads/active-threads-store.d.ts.map +1 -1
  293. package/dist/threads/active-threads-store.js +8 -27
  294. package/dist/threads/active-threads-store.js.map +1 -1
  295. package/dist/threads/dreaming-execution.d.ts +10 -0
  296. package/dist/threads/dreaming-execution.d.ts.map +1 -0
  297. package/dist/threads/dreaming-execution.js +78 -0
  298. package/dist/threads/dreaming-execution.js.map +1 -0
  299. package/dist/threads/execution-authority.d.ts +43 -0
  300. package/dist/threads/execution-authority.d.ts.map +1 -0
  301. package/dist/threads/execution-authority.js +75 -0
  302. package/dist/threads/execution-authority.js.map +1 -0
  303. package/dist/threads/execution-budget.d.ts +107 -0
  304. package/dist/threads/execution-budget.d.ts.map +1 -0
  305. package/dist/threads/execution-budget.js +257 -0
  306. package/dist/threads/execution-budget.js.map +1 -0
  307. package/dist/threads/execution-host.d.ts +17 -0
  308. package/dist/threads/execution-host.d.ts.map +1 -0
  309. package/dist/threads/execution-host.js +66 -0
  310. package/dist/threads/execution-host.js.map +1 -0
  311. package/dist/threads/execution-scheduler.d.ts +162 -0
  312. package/dist/threads/execution-scheduler.d.ts.map +1 -0
  313. package/dist/threads/execution-scheduler.js +413 -0
  314. package/dist/threads/execution-scheduler.js.map +1 -0
  315. package/dist/threads/execution-snapshot.d.ts +91 -0
  316. package/dist/threads/execution-snapshot.d.ts.map +1 -0
  317. package/dist/threads/execution-snapshot.js +146 -0
  318. package/dist/threads/execution-snapshot.js.map +1 -0
  319. package/dist/threads/execution-store.d.ts +374 -0
  320. package/dist/threads/execution-store.d.ts.map +1 -0
  321. package/dist/threads/execution-store.js +910 -0
  322. package/dist/threads/execution-store.js.map +1 -0
  323. package/dist/threads/execution-thread-error.d.ts +9 -0
  324. package/dist/threads/execution-thread-error.d.ts.map +1 -0
  325. package/dist/threads/execution-thread-error.js +12 -0
  326. package/dist/threads/execution-thread-error.js.map +1 -0
  327. package/dist/threads/executor-exit.d.ts +18 -0
  328. package/dist/threads/executor-exit.d.ts.map +1 -0
  329. package/dist/threads/executor-exit.js +21 -0
  330. package/dist/threads/executor-exit.js.map +1 -0
  331. package/dist/threads/foreground-task.d.ts +91 -0
  332. package/dist/threads/foreground-task.d.ts.map +1 -0
  333. package/dist/threads/foreground-task.js +191 -0
  334. package/dist/threads/foreground-task.js.map +1 -0
  335. package/dist/threads/foreman-business.d.ts +9 -0
  336. package/dist/threads/foreman-business.d.ts.map +1 -0
  337. package/dist/threads/foreman-business.js +117 -0
  338. package/dist/threads/foreman-business.js.map +1 -0
  339. package/dist/threads/foreman-client.d.ts +18 -0
  340. package/dist/threads/foreman-client.d.ts.map +1 -0
  341. package/dist/threads/foreman-client.js +51 -0
  342. package/dist/threads/foreman-client.js.map +1 -0
  343. package/dist/threads/foreman-delivery.d.ts +5 -0
  344. package/dist/threads/foreman-delivery.d.ts.map +1 -0
  345. package/dist/threads/foreman-delivery.js +21 -0
  346. package/dist/threads/foreman-delivery.js.map +1 -0
  347. package/dist/threads/foreman-execution.d.ts +32 -0
  348. package/dist/threads/foreman-execution.d.ts.map +1 -0
  349. package/dist/threads/foreman-execution.js +90 -0
  350. package/dist/threads/foreman-execution.js.map +1 -0
  351. package/dist/threads/foreman-host.d.ts +77 -0
  352. package/dist/threads/foreman-host.d.ts.map +1 -0
  353. package/dist/threads/foreman-host.js +891 -0
  354. package/dist/threads/foreman-host.js.map +1 -0
  355. package/dist/threads/foreman-protocol.d.ts +242 -0
  356. package/dist/threads/foreman-protocol.d.ts.map +1 -0
  357. package/dist/threads/foreman-protocol.js +116 -0
  358. package/dist/threads/foreman-protocol.js.map +1 -0
  359. package/dist/threads/foreman-store.d.ts +151 -0
  360. package/dist/threads/foreman-store.d.ts.map +1 -0
  361. package/dist/threads/foreman-store.js +299 -0
  362. package/dist/threads/foreman-store.js.map +1 -0
  363. package/dist/threads/generic-execution.d.ts +25 -0
  364. package/dist/threads/generic-execution.d.ts.map +1 -0
  365. package/dist/threads/generic-execution.js +86 -0
  366. package/dist/threads/generic-execution.js.map +1 -0
  367. package/dist/threads/init-thread-dir.d.ts +2 -2
  368. package/dist/threads/init-thread-dir.d.ts.map +1 -1
  369. package/dist/threads/init-thread-dir.js +6 -6
  370. package/dist/threads/init-thread-dir.js.map +1 -1
  371. package/dist/threads/ipc.d.ts +108 -2
  372. package/dist/threads/ipc.d.ts.map +1 -1
  373. package/dist/threads/ipc.js +14 -2
  374. package/dist/threads/ipc.js.map +1 -1
  375. package/dist/threads/lab-run-thread.d.ts +3 -5
  376. package/dist/threads/lab-run-thread.d.ts.map +1 -1
  377. package/dist/threads/lab-run-thread.js +3 -5
  378. package/dist/threads/lab-run-thread.js.map +1 -1
  379. package/dist/threads/lab-runtime-policy.d.ts +26 -21
  380. package/dist/threads/lab-runtime-policy.d.ts.map +1 -1
  381. package/dist/threads/lab-runtime-policy.js +31 -126
  382. package/dist/threads/lab-runtime-policy.js.map +1 -1
  383. package/dist/threads/process-group.d.ts +41 -0
  384. package/dist/threads/process-group.d.ts.map +1 -0
  385. package/dist/threads/process-group.js +161 -0
  386. package/dist/threads/process-group.js.map +1 -0
  387. package/dist/threads/relay-adapter.d.ts +8 -0
  388. package/dist/threads/relay-adapter.d.ts.map +1 -1
  389. package/dist/threads/relay-adapter.js +26 -1
  390. package/dist/threads/relay-adapter.js.map +1 -1
  391. package/dist/threads/supervisor.d.ts +191 -57
  392. package/dist/threads/supervisor.d.ts.map +1 -1
  393. package/dist/threads/supervisor.js +766 -427
  394. package/dist/threads/supervisor.js.map +1 -1
  395. package/dist/threads/task-workspace.d.ts +8 -0
  396. package/dist/threads/task-workspace.d.ts.map +1 -0
  397. package/dist/threads/task-workspace.js +52 -0
  398. package/dist/threads/task-workspace.js.map +1 -0
  399. package/dist/threads/worker-entry.d.ts.map +1 -1
  400. package/dist/threads/worker-entry.js +314 -34
  401. package/dist/threads/worker-entry.js.map +1 -1
  402. package/dist/threads/worker-execution-runtime.d.ts +75 -0
  403. package/dist/threads/worker-execution-runtime.d.ts.map +1 -0
  404. package/dist/threads/worker-execution-runtime.js +142 -0
  405. package/dist/threads/worker-execution-runtime.js.map +1 -0
  406. package/dist/threads/worker-execution.d.ts +35 -0
  407. package/dist/threads/worker-execution.d.ts.map +1 -0
  408. package/dist/threads/worker-execution.js +2 -0
  409. package/dist/threads/worker-execution.js.map +1 -0
  410. package/dist/threads/worker-runtime-policy.d.ts +42 -0
  411. package/dist/threads/worker-runtime-policy.d.ts.map +1 -0
  412. package/dist/threads/worker-runtime-policy.js +98 -0
  413. package/dist/threads/worker-runtime-policy.js.map +1 -0
  414. package/dist/tools/adapter-tool.d.ts +12 -0
  415. package/dist/tools/adapter-tool.d.ts.map +1 -0
  416. package/dist/tools/adapter-tool.js +2 -0
  417. package/dist/tools/adapter-tool.js.map +1 -0
  418. package/dist/tools/data-service.d.ts +2 -2
  419. package/dist/tools/delegation.d.ts +121 -0
  420. package/dist/tools/delegation.d.ts.map +1 -0
  421. package/dist/tools/delegation.js +106 -0
  422. package/dist/tools/delegation.js.map +1 -0
  423. package/dist/tools/dream-memory.d.ts +122 -0
  424. package/dist/tools/dream-memory.d.ts.map +1 -0
  425. package/dist/tools/dream-memory.js +513 -0
  426. package/dist/tools/dream-memory.js.map +1 -0
  427. package/dist/tools/email.d.ts +1 -1
  428. package/dist/tools/execution-control.d.ts +31 -0
  429. package/dist/tools/execution-control.d.ts.map +1 -0
  430. package/dist/tools/execution-control.js +71 -0
  431. package/dist/tools/execution-control.js.map +1 -0
  432. package/dist/tools/index.d.ts +5 -7
  433. package/dist/tools/index.d.ts.map +1 -1
  434. package/dist/tools/index.js +7 -13
  435. package/dist/tools/index.js.map +1 -1
  436. package/dist/tools/mcp-manager.d.ts +1 -1
  437. package/dist/tools/memory.d.ts +1 -1
  438. package/dist/tools/memory.d.ts.map +1 -1
  439. package/dist/tools/memory.js +69 -45
  440. package/dist/tools/memory.js.map +1 -1
  441. package/dist/tools/notify.d.ts +5 -0
  442. package/dist/tools/notify.d.ts.map +1 -1
  443. package/dist/tools/notify.js +45 -10
  444. package/dist/tools/notify.js.map +1 -1
  445. package/dist/tools/skill.d.ts +1 -1
  446. package/dist/tools/totp.d.ts +1 -1
  447. package/dist/tui/client.d.ts +1 -16
  448. package/dist/tui/client.d.ts.map +1 -1
  449. package/dist/tui/client.js +0 -4
  450. package/dist/tui/client.js.map +1 -1
  451. package/dist/tui/index.d.ts.map +1 -1
  452. package/dist/tui/index.js +0 -41
  453. package/dist/tui/index.js.map +1 -1
  454. package/dist/tui/protocol.d.ts +2 -1
  455. package/dist/tui/protocol.d.ts.map +1 -1
  456. package/dist/tui/protocol.js +2 -1
  457. package/dist/tui/protocol.js.map +1 -1
  458. package/dist/tui/renderer.d.ts.map +1 -1
  459. package/dist/tui/renderer.js +0 -5
  460. package/dist/tui/renderer.js.map +1 -1
  461. package/dist/tui/request-store.d.ts +1 -1
  462. package/dist/tui/request-store.d.ts.map +1 -1
  463. package/dist/tui/request-store.js +2 -2
  464. package/dist/tui/request-store.js.map +1 -1
  465. package/dist/tui/server.d.ts.map +1 -1
  466. package/dist/tui/server.js +137 -25
  467. package/dist/tui/server.js.map +1 -1
  468. package/dist/utils/claude-transcripts.d.ts +6 -0
  469. package/dist/utils/claude-transcripts.d.ts.map +1 -1
  470. package/dist/utils/claude-transcripts.js +8 -2
  471. package/dist/utils/claude-transcripts.js.map +1 -1
  472. package/dist/utils/restart.d.ts.map +1 -1
  473. package/dist/utils/restart.js +6 -0
  474. package/dist/utils/restart.js.map +1 -1
  475. package/dist-agent/bundle.cjs +2 -2
  476. package/package.json +1 -1
  477. package/dist/agent/mailbox.d.ts +0 -50
  478. package/dist/agent/mailbox.d.ts.map +0 -1
  479. package/dist/agent/mailbox.js +0 -124
  480. package/dist/agent/mailbox.js.map +0 -1
  481. package/dist/agent/nightly-maintenance/memory-dreaming-sweep.d.ts +0 -77
  482. package/dist/agent/nightly-maintenance/memory-dreaming-sweep.d.ts.map +0 -1
  483. package/dist/agent/nightly-maintenance/memory-dreaming-sweep.js +0 -158
  484. package/dist/agent/nightly-maintenance/memory-dreaming-sweep.js.map +0 -1
  485. package/dist/agent/nightly-maintenance/memory-dreaming.d.ts +0 -116
  486. package/dist/agent/nightly-maintenance/memory-dreaming.d.ts.map +0 -1
  487. package/dist/agent/nightly-maintenance/memory-dreaming.js +0 -458
  488. package/dist/agent/nightly-maintenance/memory-dreaming.js.map +0 -1
  489. package/dist/threads/task-contracts.d.ts +0 -194
  490. package/dist/threads/task-contracts.d.ts.map +0 -1
  491. package/dist/threads/task-contracts.js +0 -82
  492. package/dist/threads/task-contracts.js.map +0 -1
  493. package/dist/threads/task-sidecar.d.ts +0 -145
  494. package/dist/threads/task-sidecar.d.ts.map +0 -1
  495. package/dist/threads/task-sidecar.js +0 -311
  496. package/dist/threads/task-sidecar.js.map +0 -1
  497. package/dist/threads/task-store.d.ts +0 -172
  498. package/dist/threads/task-store.d.ts.map +0 -1
  499. package/dist/threads/task-store.js +0 -599
  500. package/dist/threads/task-store.js.map +0 -1
  501. package/dist/threads/thread-task-context.d.ts +0 -40
  502. package/dist/threads/thread-task-context.d.ts.map +0 -1
  503. package/dist/threads/thread-task-context.js +0 -160
  504. package/dist/threads/thread-task-context.js.map +0 -1
  505. package/dist/threads/thread-task-controller.d.ts +0 -122
  506. package/dist/threads/thread-task-controller.d.ts.map +0 -1
  507. package/dist/threads/thread-task-controller.js +0 -276
  508. package/dist/threads/thread-task-controller.js.map +0 -1
  509. package/dist/threads/thread-task-runtime.d.ts +0 -354
  510. package/dist/threads/thread-task-runtime.d.ts.map +0 -1
  511. package/dist/threads/thread-task-runtime.js +0 -917
  512. package/dist/threads/thread-task-runtime.js.map +0 -1
  513. package/dist/tools/switch-session.d.ts +0 -15
  514. package/dist/tools/switch-session.d.ts.map +0 -1
  515. package/dist/tools/switch-session.js +0 -88
  516. package/dist/tools/switch-session.js.map +0 -1
  517. package/dist/tools/thread-tasks.d.ts +0 -23
  518. package/dist/tools/thread-tasks.d.ts.map +0 -1
  519. package/dist/tools/thread-tasks.js +0 -122
  520. package/dist/tools/thread-tasks.js.map +0 -1
@@ -4,7 +4,7 @@
4
4
  * VisionClaw's session ID is opaque to the underlying engine: Claude
5
5
  * Code stores its transcript under `~/.claude/projects/<slug>/<id>.jsonl`
6
6
  * while the Pi Coding Agent writes to
7
- * `<profile>/pi-agent/<mode>/sessions/<id>.jsonl`. The two stores share
7
+ * `<profile>/pi-agent/general/sessions/<id>.jsonl`. The two stores share
8
8
  * nothing — switching engines mid-session would split the conversation
9
9
  * across them with no logical continuity.
10
10
  *
@@ -27,45 +27,29 @@
27
27
  *
28
28
  * ## Collapse semantics
29
29
  *
30
- * Dual-session adds another wrinkle: the prior run may have had a
31
- * general session AND a paused/in-progress coding session, possibly
32
- * with cross-session memos in the mailbox. On engine switch we don't
33
- * try to migrate any of that state — the new engine wouldn't know how
34
- * to resume a transcript it didn't write, and a half-resumed coding
35
- * task with a stale mailbox is more confusing than useful.
30
+ * The new engine cannot resume a transcript it did not write. When the
31
+ * persisted session's transcript was written by a different engine than
32
+ * `config.json` currently selects:
36
33
  *
37
- * Instead, when **either** the general or coding transcript was
38
- * written by a different engine than `config.json` currently selects:
34
+ * 1. Summarize the existing transcript.
35
+ * 2. Rotate the persisted session id into `previousSessionIds` (the old
36
+ * transcript remains on disk for `memory_transcript_search`).
37
+ * 3. Inject the summary into the freshly created session as priority
38
+ * context for its first turn.
39
39
  *
40
- * 1. Summarize every existing transcript (general + coding if any).
41
- * 2. Snapshot the mailbox (active mode, memos, coding-session info)
42
- * into a text section so the agent doesn't lose track of what was
43
- * in flight or what the coding task was supposed to be.
44
- * 3. Combine summaries + mailbox snapshot into a single document.
45
- * 4. Rotate every persisted general/coding session id into
46
- * `previousSessionIds` (the old transcripts remain on disk for
47
- * `memory_transcript_search`).
48
- * 5. Clear the mailbox (mark active=general, drop memos, reset
49
- * codingSession to idle).
50
- * 6. Inject the combined summary into the freshly created general
51
- * session as priority context for its first turn.
52
- *
53
- * If a persisted session id has no transcript at any known engine path,
40
+ * If the persisted session id has no transcript at any known engine path,
54
41
  * but also cannot be safely resumed by the current engine, we still retire
55
42
  * it without transcript summarization. This protects startup from looping
56
43
  * on stale cross-engine ids when the transcript filename cannot be resolved.
57
44
  *
58
- * `SessionManager` constructs the coding session conditionally on
59
- * mailbox state, so clearing the mailbox before constructing the
60
- * manager naturally yields a single general-only session.
45
+ * Only the single conversation session is considered. Ids, transcripts and
46
+ * runtime state left by the removed Coding session are never read.
61
47
  */
62
48
  import type { Engine, VisionClawConfig } from "../config/types.js";
63
- import { type SessionMode } from "./mailbox.js";
64
49
  import type { AgentEngine } from "./engines/engine-factory.js";
65
50
  /** Pi-store model families; each one needs its own replayable history. */
66
51
  type PiModelFamily = "gpt" | "grok" | "deepseek";
67
52
  interface PriorSessionInfo {
68
- mode: SessionMode;
69
53
  sessionId: string;
70
54
  engine: AgentEngine;
71
55
  /** gpt/grok/deepseek family when the Pi transcript names a model; otherwise unset. */
@@ -75,9 +59,9 @@ interface PriorSessionInfo {
75
59
  export interface EngineSwitchBoundary {
76
60
  /** The engine the current config selects (target of the switch). */
77
61
  toEngine: AgentEngine;
78
- /** Every prior session we found a transcript for, in display order. */
62
+ /** The prior session, when its transcript was found. */
79
63
  priorSessions: PriorSessionInfo[];
80
- /** The combined summary, ready to be injected into the new general session. */
64
+ /** The combined summary, ready to be injected into the new session. */
81
65
  combinedSummary: string;
82
66
  }
83
67
  /**
@@ -85,7 +69,7 @@ export interface EngineSwitchBoundary {
85
69
  * the on-disk locations both engines use. Returns `null` when neither
86
70
  * transcript exists (legacy / never-run session).
87
71
  */
88
- export declare function inferPriorEngine(mode: SessionMode, sessionId: string): {
72
+ export declare function inferPriorEngine(sessionId: string): {
89
73
  engine: AgentEngine;
90
74
  transcriptPath: string;
91
75
  } | null;
@@ -110,15 +94,12 @@ export declare function inferPiTranscriptFamily(transcriptPath: string): PiModel
110
94
  * needed (all existing transcripts were written by `currentEngine`, or
111
95
  * there are no prior transcripts at all).
112
96
  *
113
- * Side effects when a boundary is detected and a summary is produced:
114
- * - every persisted general/coding session id is rotated into
115
- * `previousSessionIds`,
116
- * - the mailbox is cleared.
97
+ * Side effect when a boundary is detected and a summary is produced: the
98
+ * persisted session id is rotated into `previousSessionIds`.
117
99
  *
118
100
  * Callers must invoke this **before** constructing `SessionManager` so
119
- * the manager sees the post-collapse mailbox (single general session,
120
- * no coding session). After construction, hand `combinedSummary` to
121
- * `sessionManager.injectSummary("general", ...)`.
101
+ * the manager does not resume the retired id. After construction, hand
102
+ * `combinedSummary` to `sessionManager.injectSummary(...)`.
122
103
  */
123
104
  export declare function prepareEngineSwitchBoundary(config: VisionClawConfig, currentEngine: AgentEngine, currentFamily?: Engine | null): Promise<EngineSwitchBoundary | null>;
124
105
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"engine-switch.d.ts","sourceRoot":"","sources":["../../src/agent/engine-switch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4DG;AAMH,OAAO,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAEL,KAAK,WAAW,EAGjB,MAAM,cAAc,CAAC;AAGtB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAG/D,0EAA0E;AAC1E,KAAK,aAAa,GAAG,KAAK,GAAG,MAAM,GAAG,UAAU,CAAC;AAEjD,UAAU,gBAAgB;IACxB,IAAI,EAAE,WAAW,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,WAAW,CAAC;IACpB,sFAAsF;IACtF,WAAW,CAAC,EAAE,aAAa,CAAC;IAC5B,cAAc,EAAE,MAAM,CAAC;CACxB;AAOD,MAAM,WAAW,oBAAoB;IACnC,oEAAoE;IACpE,QAAQ,EAAE,WAAW,CAAC;IACtB,uEAAuE;IACvE,aAAa,EAAE,gBAAgB,EAAE,CAAC;IAClC,+EAA+E;IAC/E,eAAe,EAAE,MAAM,CAAC;CACzB;AAuBD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,WAAW,EACjB,SAAS,EAAE,MAAM,GAChB;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAUxD;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAOvE;AAuCD;;;;;;;;;;;;GAYG;AACH,wBAAgB,uBAAuB,CAAC,cAAc,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CA8BpF;AAqGD;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,2BAA2B,CAC/C,MAAM,EAAE,gBAAgB,EACxB,aAAa,EAAE,WAAW,EAC1B,aAAa,GAAE,MAAM,GAAG,IAAoC,GAC3D,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAwFtC"}
1
+ {"version":3,"file":"engine-switch.d.ts","sourceRoot":"","sources":["../../src/agent/engine-switch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AAMH,OAAO,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAG/D,0EAA0E;AAC1E,KAAK,aAAa,GAAG,KAAK,GAAG,MAAM,GAAG,UAAU,CAAC;AAEjD,UAAU,gBAAgB;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,WAAW,CAAC;IACpB,sFAAsF;IACtF,WAAW,CAAC,EAAE,aAAa,CAAC;IAC5B,cAAc,EAAE,MAAM,CAAC;CACxB;AAMD,MAAM,WAAW,oBAAoB;IACnC,oEAAoE;IACpE,QAAQ,EAAE,WAAW,CAAC;IACtB,wDAAwD;IACxD,aAAa,EAAE,gBAAgB,EAAE,CAAC;IAClC,uEAAuE;IACvE,eAAe,EAAE,MAAM,CAAC;CACzB;AAuBD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,MAAM,GAChB;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAUxD;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAOvE;AAuCD;;;;;;;;;;;;GAYG;AACH,wBAAgB,uBAAuB,CAAC,cAAc,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CA8BpF;AAqED;;;;;;;;;;;;GAYG;AACH,wBAAsB,2BAA2B,CAC/C,MAAM,EAAE,gBAAgB,EACxB,aAAa,EAAE,WAAW,EAC1B,aAAa,GAAE,MAAM,GAAG,IAAoC,GAC3D,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAwEtC"}
@@ -4,7 +4,7 @@
4
4
  * VisionClaw's session ID is opaque to the underlying engine: Claude
5
5
  * Code stores its transcript under `~/.claude/projects/<slug>/<id>.jsonl`
6
6
  * while the Pi Coding Agent writes to
7
- * `<profile>/pi-agent/<mode>/sessions/<id>.jsonl`. The two stores share
7
+ * `<profile>/pi-agent/general/sessions/<id>.jsonl`. The two stores share
8
8
  * nothing — switching engines mid-session would split the conversation
9
9
  * across them with no logical continuity.
10
10
  *
@@ -27,42 +27,27 @@
27
27
  *
28
28
  * ## Collapse semantics
29
29
  *
30
- * Dual-session adds another wrinkle: the prior run may have had a
31
- * general session AND a paused/in-progress coding session, possibly
32
- * with cross-session memos in the mailbox. On engine switch we don't
33
- * try to migrate any of that state — the new engine wouldn't know how
34
- * to resume a transcript it didn't write, and a half-resumed coding
35
- * task with a stale mailbox is more confusing than useful.
30
+ * The new engine cannot resume a transcript it did not write. When the
31
+ * persisted session's transcript was written by a different engine than
32
+ * `config.json` currently selects:
36
33
  *
37
- * Instead, when **either** the general or coding transcript was
38
- * written by a different engine than `config.json` currently selects:
34
+ * 1. Summarize the existing transcript.
35
+ * 2. Rotate the persisted session id into `previousSessionIds` (the old
36
+ * transcript remains on disk for `memory_transcript_search`).
37
+ * 3. Inject the summary into the freshly created session as priority
38
+ * context for its first turn.
39
39
  *
40
- * 1. Summarize every existing transcript (general + coding if any).
41
- * 2. Snapshot the mailbox (active mode, memos, coding-session info)
42
- * into a text section so the agent doesn't lose track of what was
43
- * in flight or what the coding task was supposed to be.
44
- * 3. Combine summaries + mailbox snapshot into a single document.
45
- * 4. Rotate every persisted general/coding session id into
46
- * `previousSessionIds` (the old transcripts remain on disk for
47
- * `memory_transcript_search`).
48
- * 5. Clear the mailbox (mark active=general, drop memos, reset
49
- * codingSession to idle).
50
- * 6. Inject the combined summary into the freshly created general
51
- * session as priority context for its first turn.
52
- *
53
- * If a persisted session id has no transcript at any known engine path,
40
+ * If the persisted session id has no transcript at any known engine path,
54
41
  * but also cannot be safely resumed by the current engine, we still retire
55
42
  * it without transcript summarization. This protects startup from looping
56
43
  * on stale cross-engine ids when the transcript filename cannot be resolved.
57
44
  *
58
- * `SessionManager` constructs the coding session conditionally on
59
- * mailbox state, so clearing the mailbox before constructing the
60
- * manager naturally yields a single general-only session.
45
+ * Only the single conversation session is considered. Ids, transcripts and
46
+ * runtime state left by the removed Coding session are never read.
61
47
  */
62
48
  import fs from "node:fs";
63
49
  import path from "node:path";
64
50
  import { getConfigDir, loadSessionId, rotateSessionId } from "../config/index.js";
65
- import { clearMailbox, loadMailbox, } from "./mailbox.js";
66
51
  import { getClaudeTranscriptDirForProfileDir } from "../utils/claude-transcripts.js";
67
52
  import { summarizeWithFallback } from "./transcript-summarizer.js";
68
53
  import { logger } from "../logger.js";
@@ -70,13 +55,13 @@ import { logger } from "../logger.js";
70
55
  function claudeTranscriptPath(sessionId) {
71
56
  return path.join(getClaudeTranscriptDirForProfileDir(getConfigDir()), `${sessionId}.jsonl`);
72
57
  }
73
- /** Build the Pi Coding transcript directory for a mode. */
74
- function piCodingTranscriptDir(mode) {
75
- return path.join(getConfigDir(), "pi-agent", mode, "sessions");
58
+ /** Build the Pi Coding transcript directory. */
59
+ function piCodingTranscriptDir() {
60
+ return path.join(getConfigDir(), "pi-agent", "general", "sessions");
76
61
  }
77
62
  /** Locate a Pi Coding transcript for a persisted session id. */
78
- function findPiCodingTranscriptPath(mode, sessionId) {
79
- const transcriptPath = path.join(piCodingTranscriptDir(mode), `${sessionId}.jsonl`);
63
+ function findPiCodingTranscriptPath(sessionId) {
64
+ const transcriptPath = path.join(piCodingTranscriptDir(), `${sessionId}.jsonl`);
80
65
  return fs.existsSync(transcriptPath) && fs.lstatSync(transcriptPath).isFile()
81
66
  ? transcriptPath
82
67
  : null;
@@ -86,12 +71,12 @@ function findPiCodingTranscriptPath(mode, sessionId) {
86
71
  * the on-disk locations both engines use. Returns `null` when neither
87
72
  * transcript exists (legacy / never-run session).
88
73
  */
89
- export function inferPriorEngine(mode, sessionId) {
74
+ export function inferPriorEngine(sessionId) {
90
75
  const claudePath = claudeTranscriptPath(sessionId);
91
76
  if (fs.existsSync(claudePath)) {
92
77
  return { engine: "claude", transcriptPath: claudePath };
93
78
  }
94
- const piPath = findPiCodingTranscriptPath(mode, sessionId);
79
+ const piPath = findPiCodingTranscriptPath(sessionId);
95
80
  if (piPath) {
96
81
  return { engine: "pi-coding", transcriptPath: piPath };
97
82
  }
@@ -192,26 +177,19 @@ export function inferPiTranscriptFamily(transcriptPath) {
192
177
  }
193
178
  }
194
179
  function collectPersistedSessions() {
195
- const sessions = [];
196
- for (const mode of ["general", "coding"]) {
197
- const id = loadSessionId(mode);
198
- if (!id)
199
- continue;
200
- sessions.push({ mode, sessionId: id });
201
- }
202
- return sessions;
180
+ const id = loadSessionId();
181
+ return id ? [{ sessionId: id }] : [];
203
182
  }
204
183
  function collectPriorSessions(persisted) {
205
184
  const sessions = [];
206
- for (const { mode, sessionId } of persisted) {
207
- const inferred = inferPriorEngine(mode, sessionId);
185
+ for (const { sessionId } of persisted) {
186
+ const inferred = inferPriorEngine(sessionId);
208
187
  if (!inferred)
209
188
  continue;
210
189
  const modelFamily = inferred.engine === "pi-coding"
211
190
  ? inferPiTranscriptFamily(inferred.transcriptPath) ?? undefined
212
191
  : undefined;
213
192
  sessions.push({
214
- mode,
215
193
  sessionId,
216
194
  engine: inferred.engine,
217
195
  ...(modelFamily ? { modelFamily } : {}),
@@ -228,51 +206,26 @@ function hasModelFamilyMismatch(prior, currentFamily) {
228
206
  return false;
229
207
  return prior.some((p) => p.modelFamily !== undefined && p.modelFamily !== currentFamily);
230
208
  }
231
- function renderMailboxSnapshot(mailbox) {
232
- const lines = ["### Mailbox snapshot (cleared on switch)"];
233
- lines.push(`- active session: ${mailbox.activeSession}`);
234
- const cs = mailbox.codingSession;
235
- if (cs.status !== "idle" || cs.taskSummary || cs.id || cs.cwd) {
236
- lines.push(`- coding session: status=${cs.status}` +
237
- (cs.taskSummary ? `, task="${cs.taskSummary}"` : "") +
238
- (cs.cwd ? `, cwd=${cs.cwd}` : "") +
239
- (cs.id ? `, id=${cs.id}` : ""));
240
- }
241
- else {
242
- lines.push("- coding session: (idle)");
243
- }
244
- if (mailbox.memos.length > 0) {
245
- lines.push("- pending memos:");
246
- for (const memo of mailbox.memos) {
247
- lines.push(` - [${memo.timestamp}] ${memo.from} → ${memo.to}: ${memo.content}`);
248
- }
249
- }
250
- else {
251
- lines.push("- pending memos: (none)");
252
- }
253
- return lines.join("\n");
254
- }
255
209
  function renderHeader(toEngine, persisted, prior) {
256
- const transcriptByKey = new Map(prior.map((p) => [`${p.mode}:${p.sessionId}`, p]));
210
+ const transcriptById = new Map(prior.map((p) => [p.sessionId, p]));
257
211
  const list = persisted
258
212
  .map((p) => {
259
- const found = transcriptByKey.get(`${p.mode}:${p.sessionId}`);
213
+ const found = transcriptById.get(p.sessionId);
260
214
  return found
261
- ? `${p.mode} (engine="${priorDisplayEngine(found)}", id=${p.sessionId})`
262
- : `${p.mode} (id=${p.sessionId}, transcript not found)`;
215
+ ? `engine="${priorDisplayEngine(found)}", id=${p.sessionId}`
216
+ : `id=${p.sessionId}, transcript not found`;
263
217
  })
264
218
  .join(", ");
265
219
  return (`Engine switched to "${toEngine}" between runs. At least one prior transcript ` +
266
220
  `was written by a different engine and cannot be resumed in place. Prior ` +
267
221
  `session state: [${list}]. ` +
268
- `A single fresh general session has been created; the prior session ids have ` +
269
- `been moved to previousSessionIds and remain searchable via ` +
270
- `\`memory_transcript_search\`. Any prior coding task or cross-session memos ` +
271
- `have been folded into the summary below.`);
222
+ `A fresh session has been created; the prior session id has ` +
223
+ `been moved to previousSessionIds and remains searchable via ` +
224
+ `\`memory_transcript_search\`.`);
272
225
  }
273
226
  function renderSection(prior, summary) {
274
227
  return [
275
- `## Prior ${prior.mode} session (engine="${priorDisplayEngine(prior)}", id=${prior.sessionId})`,
228
+ `## Prior session (engine="${priorDisplayEngine(prior)}", id=${prior.sessionId})`,
276
229
  "",
277
230
  summary,
278
231
  ].join("\n");
@@ -283,15 +236,12 @@ function renderSection(prior, summary) {
283
236
  * needed (all existing transcripts were written by `currentEngine`, or
284
237
  * there are no prior transcripts at all).
285
238
  *
286
- * Side effects when a boundary is detected and a summary is produced:
287
- * - every persisted general/coding session id is rotated into
288
- * `previousSessionIds`,
289
- * - the mailbox is cleared.
239
+ * Side effect when a boundary is detected and a summary is produced: the
240
+ * persisted session id is rotated into `previousSessionIds`.
290
241
  *
291
242
  * Callers must invoke this **before** constructing `SessionManager` so
292
- * the manager sees the post-collapse mailbox (single general session,
293
- * no coding session). After construction, hand `combinedSummary` to
294
- * `sessionManager.injectSummary("general", ...)`.
243
+ * the manager does not resume the retired id. After construction, hand
244
+ * `combinedSummary` to `sessionManager.injectSummary(...)`.
295
245
  */
296
246
  export async function prepareEngineSwitchBoundary(config, currentEngine, currentFamily = config.engineOverride ?? null) {
297
247
  const persisted = collectPersistedSessions();
@@ -305,28 +255,24 @@ export async function prepareEngineSwitchBoundary(config, currentEngine, current
305
255
  // after a provider/model switch where the prior transcript file cannot
306
256
  // be found under its conventional name.
307
257
  if (prior.length === 0) {
308
- const allIdsHaveCurrentEngineTranscripts = persisted.every(({ mode, sessionId }) => {
258
+ const allIdsHaveCurrentEngineTranscripts = persisted.every(({ sessionId }) => {
309
259
  if (currentEngine === "claude")
310
260
  return fs.existsSync(claudeTranscriptPath(sessionId));
311
- return findPiCodingTranscriptPath(mode, sessionId) !== null;
261
+ return findPiCodingTranscriptPath(sessionId) !== null;
312
262
  });
313
263
  if (allIdsHaveCurrentEngineTranscripts)
314
264
  return null;
315
- const mailboxSection = renderMailboxSnapshot(loadMailbox());
316
265
  for (const p of persisted) {
317
- rotateSessionId(p.mode);
318
- logger.system(`[engine-switch] rotated stale ${p.mode} session ${p.sessionId} into previousSessionIds (transcript not found)`);
266
+ rotateSessionId();
267
+ logger.system(`[engine-switch] rotated stale session ${p.sessionId} into previousSessionIds (transcript not found)`);
319
268
  }
320
- clearMailbox();
321
- logger.system("[engine-switch] no resumable current-engine transcripts found; collapsed to fresh general session");
269
+ logger.system("[engine-switch] no resumable current-engine transcripts found; collapsed to fresh session");
322
270
  return {
323
271
  toEngine: currentEngine,
324
272
  priorSessions: [],
325
273
  combinedSummary: [
326
274
  `A session boundary was created for "${currentEngine}" startup. Existing session ids were retired because no matching transcript files were found for the current engine to resume safely.`,
327
275
  "",
328
- mailboxSection,
329
- "",
330
276
  "Start a fresh session and continue normally. If needed, use memory_transcript_search to inspect older transcripts.",
331
277
  ].join("\n"),
332
278
  };
@@ -338,37 +284,26 @@ export async function prepareEngineSwitchBoundary(config, currentEngine, current
338
284
  const toLabel = familyMismatch && !runtimeMismatch
339
285
  ? (currentFamily ?? currentEngine)
340
286
  : currentEngine;
341
- // Summarize every prior session we have a transcript for, even ones
342
- // that already match `currentEngine` — they were active alongside
343
- // the mismatched session and the user may have moved work between
344
- // them. We're collapsing everything into one fresh session anyway.
345
287
  const sections = [];
346
288
  for (const p of prior) {
347
- logger.system(`[engine-switch] summarizing prior ${p.mode} session ${p.sessionId} (engine=${priorDisplayEngine(p)})`);
289
+ logger.system(`[engine-switch] summarizing prior session ${p.sessionId} (engine=${priorDisplayEngine(p)})`);
348
290
  const summary = await summarizeWithFallback(p.transcriptPath, config);
349
291
  sections.push(renderSection(p, summary));
350
292
  }
351
- const mailbox = loadMailbox();
352
- const mailboxSection = renderMailboxSnapshot(mailbox);
353
293
  const combinedSummary = [
354
294
  renderHeader(toLabel, persisted, prior),
355
295
  "",
356
296
  ...sections,
357
297
  "",
358
- mailboxSection,
359
- "",
360
298
  "Review the prior context above, check your memory directory and todo list, and continue where the prior engine left off.",
361
299
  ].join("\n");
362
- // Rotate every persisted session id (whether or not its transcript
363
- // was found — they're all being retired together) and clear the
364
- // mailbox. SessionManager, constructed after this call, will see a
365
- // clean slate.
300
+ // Rotate the persisted session id. SessionManager, constructed after this
301
+ // call, will see a clean slate.
366
302
  for (const p of persisted) {
367
- rotateSessionId(p.mode);
368
- logger.system(`[engine-switch] rotated ${p.mode} session ${p.sessionId} into previousSessionIds`);
303
+ rotateSessionId();
304
+ logger.system(`[engine-switch] rotated session ${p.sessionId} into previousSessionIds`);
369
305
  }
370
- clearMailbox();
371
- logger.system(`[engine-switch] mailbox cleared; collapsed to fresh general session`);
306
+ logger.system("[engine-switch] collapsed to fresh session");
372
307
  return {
373
308
  toEngine: currentEngine,
374
309
  priorSessions: prior,
@@ -1 +1 @@
1
- {"version":3,"file":"engine-switch.js","sourceRoot":"","sources":["../../src/agent/engine-switch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine-switch.js","sourceRoot":"","sources":["../../src/agent/engine-switch.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,18 @@
1
1
  import type { VisionClawConfig } from "../../config/types.js";
2
2
  export declare function isPlaywrightToolName(toolName: string): boolean;
3
+ export interface BrowserToolGate {
4
+ /** False when the selected browser's CDP did not come up. Do not call the tool. */
5
+ proceed: boolean;
6
+ /** Shown to the model instead of a connection refused from a dead port. */
7
+ reason?: string;
8
+ }
9
+ /**
10
+ * Start the selected browser before a Playwright tool runs. A launch that
11
+ * never opens CDP returns proceed:false with the reason, so the tool is not
12
+ * handed a port that will refuse the connection.
13
+ */
3
14
  export declare function ensureBrowserForTool(options: {
4
15
  toolName: string;
5
16
  config?: VisionClawConfig;
6
- }): Promise<void>;
17
+ }): Promise<BrowserToolGate>;
7
18
  //# sourceMappingURL=browser-tool-policy.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"browser-tool-policy.d.ts","sourceRoot":"","sources":["../../../src/agent/engines/browser-tool-policy.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAE9D;AAED,wBAAsB,oBAAoB,CAAC,OAAO,EAAE;IAClD,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,gBAAgB,CAAC;CAC3B,GAAG,OAAO,CAAC,IAAI,CAAC,CAGhB"}
1
+ {"version":3,"file":"browser-tool-policy.d.ts","sourceRoot":"","sources":["../../../src/agent/engines/browser-tool-policy.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAE9D;AAED,MAAM,WAAW,eAAe;IAC9B,mFAAmF;IACnF,OAAO,EAAE,OAAO,CAAC;IACjB,2EAA2E;IAC3E,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,wBAAsB,oBAAoB,CAAC,OAAO,EAAE;IAClD,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,gBAAgB,CAAC;CAC3B,GAAG,OAAO,CAAC,eAAe,CAAC,CAY3B"}
@@ -1,10 +1,25 @@
1
- import { ensureBrowser } from "../browser-launcher.js";
1
+ import { BrowserUnavailableError, ensureBrowser } from "../browser-launcher.js";
2
2
  import { logger } from "../../logger.js";
3
3
  export function isPlaywrightToolName(toolName) {
4
4
  return toolName.startsWith("mcp__playwright__") || toolName.startsWith("playwright_");
5
5
  }
6
+ /**
7
+ * Start the selected browser before a Playwright tool runs. A launch that
8
+ * never opens CDP returns proceed:false with the reason, so the tool is not
9
+ * handed a port that will refuse the connection.
10
+ */
6
11
  export async function ensureBrowserForTool(options) {
7
12
  logger.debug(`[ToolUse] ensuring browser for ${options.toolName}`);
8
- await ensureBrowser(options.config);
13
+ try {
14
+ await ensureBrowser(options.config);
15
+ return { proceed: true };
16
+ }
17
+ catch (err) {
18
+ const reason = err instanceof BrowserUnavailableError
19
+ ? err.message
20
+ : err instanceof Error ? err.message : String(err);
21
+ logger.warn(`[ToolUse] ${options.toolName} skipped: ${reason}`);
22
+ return { proceed: false, reason };
23
+ }
9
24
  }
10
25
  //# sourceMappingURL=browser-tool-policy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"browser-tool-policy.js","sourceRoot":"","sources":["../../../src/agent/engines/browser-tool-policy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAGzC,MAAM,UAAU,oBAAoB,CAAC,QAAgB;IACnD,OAAO,QAAQ,CAAC,UAAU,CAAC,mBAAmB,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AACxF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,OAG1C;IACC,MAAM,CAAC,KAAK,CAAC,kCAAkC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IACnE,MAAM,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;AACtC,CAAC"}
1
+ {"version":3,"file":"browser-tool-policy.js","sourceRoot":"","sources":["../../../src/agent/engines/browser-tool-policy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAChF,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAGzC,MAAM,UAAU,oBAAoB,CAAC,QAAgB;IACnD,OAAO,QAAQ,CAAC,UAAU,CAAC,mBAAmB,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AACxF,CAAC;AASD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,OAG1C;IACC,MAAM,CAAC,KAAK,CAAC,kCAAkC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IACnE,IAAI,CAAC;QACH,MAAM,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACpC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,MAAM,GAAG,GAAG,YAAY,uBAAuB;YACnD,CAAC,CAAC,GAAG,CAAC,OAAO;YACb,CAAC,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACrD,MAAM,CAAC,IAAI,CAAC,aAAa,OAAO,CAAC,QAAQ,aAAa,MAAM,EAAE,CAAC,CAAC;QAChE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IACpC,CAAC;AACH,CAAC"}
@@ -0,0 +1,11 @@
1
+ import type { PreToolUseHookInput } from "@anthropic-ai/claude-agent-sdk";
2
+ /**
3
+ * Inside an internal executor, prefix each Bash command so its shell records
4
+ * its own process group before the command runs (#2805 1d). The Claude CLI
5
+ * starts every shell in a new session, so a background job the command
6
+ * leaves behind is outside the executor's group; the host stops every
7
+ * recorded group with the executor. Returns the rewritten tool input, or
8
+ * null when nothing needs to change.
9
+ */
10
+ export declare function registerExecutorShellGroup(input: PreToolUseHookInput): Record<string, unknown> | null;
11
+ //# sourceMappingURL=executor-shell-groups.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executor-shell-groups.d.ts","sourceRoot":"","sources":["../../../../src/agent/engines/claude/executor-shell-groups.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAK1E;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,mBAAmB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAMrG"}
@@ -0,0 +1,22 @@
1
+ import path from "node:path";
2
+ import { getConfigDir } from "../../../config/index.js";
3
+ import { EXECUTOR_GROUP_REGISTRY_FILE, groupRegistrationPrefix } from "../../../threads/process-group.js";
4
+ import { getWorkerExecutionRuntime } from "../../../threads/worker-execution-runtime.js";
5
+ /**
6
+ * Inside an internal executor, prefix each Bash command so its shell records
7
+ * its own process group before the command runs (#2805 1d). The Claude CLI
8
+ * starts every shell in a new session, so a background job the command
9
+ * leaves behind is outside the executor's group; the host stops every
10
+ * recorded group with the executor. Returns the rewritten tool input, or
11
+ * null when nothing needs to change.
12
+ */
13
+ export function registerExecutorShellGroup(input) {
14
+ if (!getWorkerExecutionRuntime() || input.tool_name !== "Bash")
15
+ return null;
16
+ const toolInput = input.tool_input;
17
+ if (!toolInput || typeof toolInput.command !== "string")
18
+ return null;
19
+ const registry = path.join(getConfigDir(), EXECUTOR_GROUP_REGISTRY_FILE);
20
+ return { ...toolInput, command: `${groupRegistrationPrefix(registry)}\n${toolInput.command}` };
21
+ }
22
+ //# sourceMappingURL=executor-shell-groups.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executor-shell-groups.js","sourceRoot":"","sources":["../../../../src/agent/engines/claude/executor-shell-groups.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,4BAA4B,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC1G,OAAO,EAAE,yBAAyB,EAAE,MAAM,8CAA8C,CAAC;AAEzF;;;;;;;GAOG;AACH,MAAM,UAAU,0BAA0B,CAAC,KAA0B;IACnE,IAAI,CAAC,yBAAyB,EAAE,IAAI,KAAK,CAAC,SAAS,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IAC5E,MAAM,SAAS,GAAG,KAAK,CAAC,UAA4C,CAAC;IACrE,IAAI,CAAC,SAAS,IAAI,OAAO,SAAS,CAAC,OAAO,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,4BAA4B,CAAC,CAAC;IACzE,OAAO,EAAE,GAAG,SAAS,EAAE,OAAO,EAAE,GAAG,uBAAuB,CAAC,QAAQ,CAAC,KAAK,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC;AACjG,CAAC"}
@@ -1,6 +1,5 @@
1
1
  import { type Query, type SDKMessage, type SDKUserMessage } from "@anthropic-ai/claude-agent-sdk";
2
2
  import type { MessageParam } from "@anthropic-ai/sdk/resources";
3
- import type { SessionMode } from "../../mailbox.js";
4
3
  import type { ScreenshotInjector } from "../../screenshot-injector.js";
5
4
  import type { AgentSessionConstructorArgs, AgentSessionLike, AgentStreamMessage, InjectMessageOptions, SendAndStreamOptions, UsageSnapshot } from "../session-types.js";
6
5
  export type { SDKMessage, SDKUserMessage };
@@ -70,7 +69,6 @@ export declare class ClaudeAgentSession implements AgentSessionLike {
70
69
  private config;
71
70
  private buildSystemPrompt;
72
71
  private runtimeSurface;
73
- private getDualSessionEnabled;
74
72
  /** Working directory for the SDK subprocess. Defaults to profile config dir. */
75
73
  private readonly sessionCwd;
76
74
  private nativeTools;
@@ -89,7 +87,6 @@ export declare class ClaudeAgentSession implements AgentSessionLike {
89
87
  private warmGeneration;
90
88
  private sessionId;
91
89
  private transcriptPath;
92
- readonly mode: SessionMode;
93
90
  /**
94
91
  * Pending message queue for the long-lived generator.
95
92
  * When a message is injected, it's pushed here and the waiting
@@ -129,7 +126,7 @@ export declare class ClaudeAgentSession implements AgentSessionLike {
129
126
  */
130
127
  private warmRefreshTimer;
131
128
  private lastUsageSnapshot;
132
- constructor({ config, buildSystemPrompt, runtimeSurface, sessionContext, workspaceCwd, }: AgentSessionConstructorArgs);
129
+ constructor({ config, buildSystemPrompt, runtimeSurface, workspaceCwd, }: AgentSessionConstructorArgs);
133
130
  set screenshotInjector(injector: ScreenshotInjector | null);
134
131
  /**
135
132
  * Seed `<profile>/.claude/settings.local.json` once per process so the
@@ -151,6 +148,12 @@ export declare class ClaudeAgentSession implements AgentSessionLike {
151
148
  * McpServer instance is reused across concurrent/sequential query() calls.
152
149
  */
153
150
  private buildMcpServers;
151
+ /**
152
+ * Project settings, auto-memory and environment for every SDK subprocess of
153
+ * this session. Internal workers get the restricted environment and never
154
+ * read or write profile/project settings or auto-memory.
155
+ */
156
+ private buildIsolationOptions;
154
157
  private buildNativeToolOptions;
155
158
  private buildHooks;
156
159
  /**
@@ -220,6 +223,11 @@ export declare class ClaudeAgentSession implements AgentSessionLike {
220
223
  private readonly toolOutputReferences;
221
224
  private readonly missingToolOutputReferences;
222
225
  private queueToolOutputRepair;
226
+ /**
227
+ * Count each Claude model attempt once, at its `message_start` stream event
228
+ * (subagent attempts included), and record failed attempts and tokens.
229
+ */
230
+ private meterModelAttempt;
223
231
  private boundedObservation;
224
232
  private releaseActiveQuery;
225
233
  private prepareTranscript;
@@ -254,6 +262,7 @@ export declare class ClaudeAgentSession implements AgentSessionLike {
254
262
  abortActiveQuery(): void;
255
263
  requestStop(): void;
256
264
  isStopRequested(): boolean;
265
+ executionBarrierConfirmed(): boolean;
257
266
  clearStop(): void;
258
267
  /**
259
268
  * Update the persisted session ID.