imcodes 2026.3.333 → 2026.3.348

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 (558) hide show
  1. package/dist/shared/agent-message.d.ts +98 -0
  2. package/dist/shared/agent-message.d.ts.map +1 -0
  3. package/dist/shared/agent-message.js +30 -0
  4. package/dist/shared/agent-message.js.map +1 -0
  5. package/dist/shared/cookie-names.d.ts +8 -0
  6. package/dist/shared/cookie-names.d.ts.map +1 -0
  7. package/dist/shared/cookie-names.js +8 -0
  8. package/dist/shared/cookie-names.js.map +1 -0
  9. package/dist/shared/logging/redact.d.ts +9 -0
  10. package/dist/shared/logging/redact.d.ts.map +1 -0
  11. package/dist/shared/logging/redact.js +45 -0
  12. package/dist/shared/logging/redact.js.map +1 -0
  13. package/dist/shared/p2p-modes.d.ts +16 -0
  14. package/dist/shared/p2p-modes.d.ts.map +1 -1
  15. package/dist/shared/p2p-modes.js +14 -7
  16. package/dist/shared/p2p-modes.js.map +1 -1
  17. package/dist/shared/p2p-status.d.ts +16 -0
  18. package/dist/shared/p2p-status.d.ts.map +1 -0
  19. package/dist/shared/p2p-status.js +29 -0
  20. package/dist/shared/p2p-status.js.map +1 -0
  21. package/dist/shared/repo-types.d.ts.map +1 -1
  22. package/dist/shared/repo-types.js +13 -16
  23. package/dist/shared/repo-types.js.map +1 -1
  24. package/dist/shared/transport/file-transfer.d.ts +2 -2
  25. package/dist/shared/transport/file-transfer.d.ts.map +1 -1
  26. package/dist/shared/transport/file-transfer.js +3 -6
  27. package/dist/shared/transport/file-transfer.js.map +1 -1
  28. package/dist/shared/transport-events.d.ts +119 -0
  29. package/dist/shared/transport-events.d.ts.map +1 -0
  30. package/dist/shared/transport-events.js +67 -0
  31. package/dist/shared/transport-events.js.map +1 -0
  32. package/dist/src/agent/agent-version.d.ts.map +1 -0
  33. package/dist/src/agent/agent-version.js.map +1 -0
  34. package/dist/src/agent/brain-dispatcher.d.ts.map +1 -0
  35. package/dist/src/agent/brain-dispatcher.js.map +1 -0
  36. package/dist/{agent → src/agent}/detect.d.ts +15 -2
  37. package/dist/src/agent/detect.d.ts.map +1 -0
  38. package/dist/{agent → src/agent}/detect.js +113 -0
  39. package/dist/src/agent/detect.js.map +1 -0
  40. package/dist/src/agent/drivers/base.d.ts.map +1 -0
  41. package/dist/{agent → src/agent}/drivers/base.js.map +1 -1
  42. package/dist/src/agent/drivers/claude-code.d.ts.map +1 -0
  43. package/dist/src/agent/drivers/claude-code.js.map +1 -0
  44. package/dist/src/agent/drivers/codex.d.ts.map +1 -0
  45. package/dist/src/agent/drivers/codex.js.map +1 -0
  46. package/dist/src/agent/drivers/gemini.d.ts.map +1 -0
  47. package/dist/src/agent/drivers/gemini.js.map +1 -0
  48. package/dist/src/agent/drivers/opencode.d.ts.map +1 -0
  49. package/dist/src/agent/drivers/opencode.js.map +1 -0
  50. package/dist/src/agent/drivers/shell.d.ts.map +1 -0
  51. package/dist/src/agent/drivers/shell.js.map +1 -0
  52. package/dist/src/agent/env-isolation.d.ts.map +1 -0
  53. package/dist/src/agent/env-isolation.js.map +1 -0
  54. package/dist/src/agent/notify-setup.d.ts.map +1 -0
  55. package/dist/src/agent/notify-setup.js.map +1 -0
  56. package/dist/src/agent/openclaw-config.d.ts +24 -0
  57. package/dist/src/agent/openclaw-config.d.ts.map +1 -0
  58. package/dist/src/agent/openclaw-config.js +77 -0
  59. package/dist/src/agent/openclaw-config.js.map +1 -0
  60. package/dist/src/agent/process-session-runtime.d.ts +17 -0
  61. package/dist/src/agent/process-session-runtime.d.ts.map +1 -0
  62. package/dist/src/agent/process-session-runtime.js +36 -0
  63. package/dist/src/agent/process-session-runtime.js.map +1 -0
  64. package/dist/src/agent/provider-registry.d.ts +7 -0
  65. package/dist/src/agent/provider-registry.d.ts.map +1 -0
  66. package/dist/src/agent/provider-registry.js +54 -0
  67. package/dist/src/agent/provider-registry.js.map +1 -0
  68. package/dist/src/agent/providers/_template.d.ts +82 -0
  69. package/dist/src/agent/providers/_template.d.ts.map +1 -0
  70. package/dist/src/agent/providers/_template.js +160 -0
  71. package/dist/src/agent/providers/_template.js.map +1 -0
  72. package/dist/src/agent/providers/openclaw.d.ts +63 -0
  73. package/dist/src/agent/providers/openclaw.d.ts.map +1 -0
  74. package/dist/src/agent/providers/openclaw.js +462 -0
  75. package/dist/src/agent/providers/openclaw.js.map +1 -0
  76. package/dist/{agent → src/agent}/session-manager.d.ts +7 -0
  77. package/dist/src/agent/session-manager.d.ts.map +1 -0
  78. package/dist/{agent → src/agent}/session-manager.js +87 -2
  79. package/dist/src/agent/session-manager.js.map +1 -0
  80. package/dist/src/agent/session-runtime.d.ts +24 -0
  81. package/dist/src/agent/session-runtime.d.ts.map +1 -0
  82. package/dist/src/agent/session-runtime.js +8 -0
  83. package/dist/src/agent/session-runtime.js.map +1 -0
  84. package/dist/src/agent/signal.d.ts.map +1 -0
  85. package/dist/src/agent/signal.js.map +1 -0
  86. package/dist/src/agent/status-poller.d.ts.map +1 -0
  87. package/dist/src/agent/status-poller.js.map +1 -0
  88. package/dist/src/agent/templates/brain-prompt.d.ts.map +1 -0
  89. package/dist/src/agent/templates/brain-prompt.js.map +1 -0
  90. package/dist/src/agent/templates/identity.d.ts.map +1 -0
  91. package/dist/src/agent/templates/identity.js.map +1 -0
  92. package/dist/src/agent/tmux.d.ts.map +1 -0
  93. package/dist/src/agent/tmux.js.map +1 -0
  94. package/dist/src/agent/transport-provider.d.ts +221 -0
  95. package/dist/src/agent/transport-provider.d.ts.map +1 -0
  96. package/dist/src/agent/transport-provider.js +37 -0
  97. package/dist/src/agent/transport-provider.js.map +1 -0
  98. package/dist/src/agent/transport-session-runtime.d.ts +25 -0
  99. package/dist/src/agent/transport-session-runtime.d.ts.map +1 -0
  100. package/dist/src/agent/transport-session-runtime.js +90 -0
  101. package/dist/src/agent/transport-session-runtime.js.map +1 -0
  102. package/dist/src/autofix/audit-engine.d.ts.map +1 -0
  103. package/dist/src/autofix/audit-engine.js.map +1 -0
  104. package/dist/src/autofix/branch-manager.d.ts.map +1 -0
  105. package/dist/src/autofix/branch-manager.js.map +1 -0
  106. package/dist/src/autofix/decision-engine.d.ts.map +1 -0
  107. package/dist/src/autofix/decision-engine.js.map +1 -0
  108. package/dist/src/autofix/index.d.ts.map +1 -0
  109. package/dist/src/autofix/index.js.map +1 -0
  110. package/dist/src/autofix/prompt-builder.d.ts.map +1 -0
  111. package/dist/src/autofix/prompt-builder.js.map +1 -0
  112. package/dist/src/autofix/report-parser.d.ts.map +1 -0
  113. package/dist/src/autofix/report-parser.js.map +1 -0
  114. package/dist/src/autofix/state-machine.d.ts.map +1 -0
  115. package/dist/src/autofix/state-machine.js.map +1 -0
  116. package/dist/src/bind/bind-flow.d.ts.map +1 -0
  117. package/dist/src/bind/bind-flow.js.map +1 -0
  118. package/dist/src/config.d.ts.map +1 -0
  119. package/dist/src/config.js.map +1 -0
  120. package/dist/src/daemon/codex-watcher.d.ts.map +1 -0
  121. package/dist/src/daemon/codex-watcher.js.map +1 -0
  122. package/dist/src/daemon/command-handler.d.ts +18 -0
  123. package/dist/src/daemon/command-handler.d.ts.map +1 -0
  124. package/dist/{daemon → src/daemon}/command-handler.js +58 -12
  125. package/dist/src/daemon/command-handler.js.map +1 -0
  126. package/dist/src/daemon/discussion-orchestrator.d.ts.map +1 -0
  127. package/dist/src/daemon/discussion-orchestrator.js.map +1 -0
  128. package/dist/src/daemon/file-transfer-handler.d.ts.map +1 -0
  129. package/dist/src/daemon/file-transfer-handler.js.map +1 -0
  130. package/dist/src/daemon/gemini-watcher.d.ts.map +1 -0
  131. package/dist/src/daemon/gemini-watcher.js.map +1 -0
  132. package/dist/src/daemon/hook-server.d.ts.map +1 -0
  133. package/dist/src/daemon/hook-server.js.map +1 -0
  134. package/dist/src/daemon/jsonl-watcher.d.ts.map +1 -0
  135. package/dist/src/daemon/jsonl-watcher.js.map +1 -0
  136. package/dist/src/daemon/lifecycle.d.ts.map +1 -0
  137. package/dist/{daemon → src/daemon}/lifecycle.js +35 -0
  138. package/dist/src/daemon/lifecycle.js.map +1 -0
  139. package/dist/src/daemon/memory-inject.d.ts.map +1 -0
  140. package/dist/src/daemon/memory-inject.js.map +1 -0
  141. package/dist/{daemon → src/daemon}/p2p-orchestrator.d.ts +17 -1
  142. package/dist/src/daemon/p2p-orchestrator.d.ts.map +1 -0
  143. package/dist/{daemon → src/daemon}/p2p-orchestrator.js +62 -34
  144. package/dist/src/daemon/p2p-orchestrator.js.map +1 -0
  145. package/dist/src/daemon/repo-handler.d.ts.map +1 -0
  146. package/dist/src/daemon/repo-handler.js.map +1 -0
  147. package/dist/src/daemon/server-link.d.ts.map +1 -0
  148. package/dist/{daemon → src/daemon}/server-link.js +11 -0
  149. package/dist/src/daemon/server-link.js.map +1 -0
  150. package/dist/src/daemon/subsession-manager.d.ts.map +1 -0
  151. package/dist/src/daemon/subsession-manager.js.map +1 -0
  152. package/dist/src/daemon/terminal-parser.d.ts.map +1 -0
  153. package/dist/src/daemon/terminal-parser.js.map +1 -0
  154. package/dist/src/daemon/terminal-streamer.d.ts.map +1 -0
  155. package/dist/src/daemon/terminal-streamer.js.map +1 -0
  156. package/dist/src/daemon/timeline-emitter.d.ts.map +1 -0
  157. package/dist/src/daemon/timeline-emitter.js.map +1 -0
  158. package/dist/src/daemon/timeline-event.d.ts.map +1 -0
  159. package/dist/src/daemon/timeline-event.js.map +1 -0
  160. package/dist/src/daemon/timeline-store.d.ts.map +1 -0
  161. package/dist/src/daemon/timeline-store.js.map +1 -0
  162. package/dist/src/daemon/transport-relay.d.ts +12 -0
  163. package/dist/src/daemon/transport-relay.d.ts.map +1 -0
  164. package/dist/src/daemon/transport-relay.js +55 -0
  165. package/dist/src/daemon/transport-relay.js.map +1 -0
  166. package/dist/{index.d.ts.map → src/index.d.ts.map} +1 -1
  167. package/dist/{index.js → src/index.js} +53 -0
  168. package/dist/src/index.js.map +1 -0
  169. package/dist/src/memory/claude-mem.d.ts.map +1 -0
  170. package/dist/src/memory/claude-mem.js.map +1 -0
  171. package/dist/src/memory/context-builder.d.ts.map +1 -0
  172. package/dist/src/memory/context-builder.js.map +1 -0
  173. package/dist/src/memory/detector.d.ts.map +1 -0
  174. package/dist/src/memory/detector.js.map +1 -0
  175. package/dist/src/memory/extractor.d.ts.map +1 -0
  176. package/dist/src/memory/extractor.js.map +1 -0
  177. package/dist/src/memory/injector.d.ts.map +1 -0
  178. package/dist/src/memory/injector.js.map +1 -0
  179. package/dist/src/memory/interface.d.ts.map +1 -0
  180. package/dist/{memory → src/memory}/interface.js.map +1 -1
  181. package/dist/src/memory/mem0.d.ts.map +1 -0
  182. package/dist/src/memory/mem0.js.map +1 -0
  183. package/dist/src/repo/cache.d.ts.map +1 -0
  184. package/dist/src/repo/cache.js.map +1 -0
  185. package/dist/src/repo/detector.d.ts.map +1 -0
  186. package/dist/src/repo/detector.js.map +1 -0
  187. package/dist/src/repo/github-provider.d.ts.map +1 -0
  188. package/dist/src/repo/github-provider.js.map +1 -0
  189. package/dist/src/repo/gitlab-provider.d.ts.map +1 -0
  190. package/dist/src/repo/gitlab-provider.js.map +1 -0
  191. package/dist/src/repo/provider.d.ts.map +1 -0
  192. package/dist/src/repo/provider.js.map +1 -0
  193. package/dist/src/repo/types.d.ts.map +1 -0
  194. package/dist/{repo → src/repo}/types.js.map +1 -1
  195. package/dist/src/router/command-parser.d.ts.map +1 -0
  196. package/dist/src/router/command-parser.js.map +1 -0
  197. package/dist/src/router/message-router.d.ts.map +1 -0
  198. package/dist/src/router/message-router.js.map +1 -0
  199. package/dist/src/router/response-collector.d.ts.map +1 -0
  200. package/dist/src/router/response-collector.js.map +1 -0
  201. package/dist/src/setup/setup-flow.d.ts.map +1 -0
  202. package/dist/src/setup/setup-flow.js.map +1 -0
  203. package/dist/src/setup/templates.d.ts.map +1 -0
  204. package/dist/src/setup/templates.js.map +1 -0
  205. package/dist/src/shared/models/context.d.ts.map +1 -0
  206. package/dist/src/shared/models/context.js.map +1 -0
  207. package/dist/src/shared/models/label.d.ts.map +1 -0
  208. package/dist/src/shared/models/label.js.map +1 -0
  209. package/dist/src/shared/platform/types.d.ts.map +1 -0
  210. package/dist/src/shared/platform/types.js.map +1 -0
  211. package/dist/src/shared/repo-types.d.ts +29 -0
  212. package/dist/src/shared/repo-types.d.ts.map +1 -0
  213. package/dist/src/shared/repo-types.js +46 -0
  214. package/dist/src/shared/repo-types.js.map +1 -0
  215. package/dist/src/shared/timeline/types.d.ts.map +1 -0
  216. package/dist/src/shared/timeline/types.js.map +1 -0
  217. package/dist/src/shared/transport/file-transfer.d.ts +88 -0
  218. package/dist/src/shared/transport/file-transfer.d.ts.map +1 -0
  219. package/dist/src/shared/transport/file-transfer.js +23 -0
  220. package/dist/src/shared/transport/file-transfer.js.map +1 -0
  221. package/dist/src/shared/transport/fs.d.ts.map +1 -0
  222. package/dist/{shared → src/shared}/transport/fs.js.map +1 -1
  223. package/dist/src/shared/transport/terminal.d.ts.map +1 -0
  224. package/dist/src/shared/transport/terminal.js.map +1 -0
  225. package/dist/src/store/project-store.d.ts.map +1 -0
  226. package/dist/src/store/project-store.js.map +1 -0
  227. package/dist/{store → src/store}/session-store.d.ts +10 -0
  228. package/dist/src/store/session-store.d.ts.map +1 -0
  229. package/dist/{store → src/store}/session-store.js +4 -0
  230. package/dist/src/store/session-store.js.map +1 -0
  231. package/dist/src/tracker/branch.d.ts.map +1 -0
  232. package/dist/src/tracker/branch.js.map +1 -0
  233. package/dist/src/tracker/github.d.ts.map +1 -0
  234. package/dist/src/tracker/github.js.map +1 -0
  235. package/dist/src/tracker/gitlab.d.ts.map +1 -0
  236. package/dist/src/tracker/gitlab.js.map +1 -0
  237. package/dist/src/tracker/index.d.ts.map +1 -0
  238. package/dist/src/tracker/index.js.map +1 -0
  239. package/dist/src/tracker/interface.d.ts.map +1 -0
  240. package/dist/src/tracker/interface.js.map +1 -0
  241. package/dist/src/tracker/priority.d.ts.map +1 -0
  242. package/dist/src/tracker/priority.js.map +1 -0
  243. package/dist/src/util/imc-dir.d.ts.map +1 -0
  244. package/dist/src/util/imc-dir.js.map +1 -0
  245. package/dist/src/util/logger.d.ts.map +1 -0
  246. package/dist/src/util/logger.js.map +1 -0
  247. package/dist/src/util/model-context.d.ts.map +1 -0
  248. package/dist/src/util/model-context.js.map +1 -0
  249. package/dist/src/util/version.d.ts.map +1 -0
  250. package/dist/src/util/version.js.map +1 -0
  251. package/package.json +1 -1
  252. package/dist/agent/agent-version.d.ts.map +0 -1
  253. package/dist/agent/agent-version.js.map +0 -1
  254. package/dist/agent/brain-dispatcher.d.ts.map +0 -1
  255. package/dist/agent/brain-dispatcher.js.map +0 -1
  256. package/dist/agent/detect.d.ts.map +0 -1
  257. package/dist/agent/detect.js.map +0 -1
  258. package/dist/agent/drivers/base.d.ts.map +0 -1
  259. package/dist/agent/drivers/claude-code.d.ts.map +0 -1
  260. package/dist/agent/drivers/claude-code.js.map +0 -1
  261. package/dist/agent/drivers/codex.d.ts.map +0 -1
  262. package/dist/agent/drivers/codex.js.map +0 -1
  263. package/dist/agent/drivers/gemini.d.ts.map +0 -1
  264. package/dist/agent/drivers/gemini.js.map +0 -1
  265. package/dist/agent/drivers/opencode.d.ts.map +0 -1
  266. package/dist/agent/drivers/opencode.js.map +0 -1
  267. package/dist/agent/drivers/shell.d.ts.map +0 -1
  268. package/dist/agent/drivers/shell.js.map +0 -1
  269. package/dist/agent/env-isolation.d.ts.map +0 -1
  270. package/dist/agent/env-isolation.js.map +0 -1
  271. package/dist/agent/notify-setup.d.ts.map +0 -1
  272. package/dist/agent/notify-setup.js.map +0 -1
  273. package/dist/agent/session-manager.d.ts.map +0 -1
  274. package/dist/agent/session-manager.js.map +0 -1
  275. package/dist/agent/signal.d.ts.map +0 -1
  276. package/dist/agent/signal.js.map +0 -1
  277. package/dist/agent/status-poller.d.ts.map +0 -1
  278. package/dist/agent/status-poller.js.map +0 -1
  279. package/dist/agent/templates/brain-prompt.d.ts.map +0 -1
  280. package/dist/agent/templates/brain-prompt.js.map +0 -1
  281. package/dist/agent/templates/identity.d.ts.map +0 -1
  282. package/dist/agent/templates/identity.js.map +0 -1
  283. package/dist/agent/tmux.d.ts.map +0 -1
  284. package/dist/agent/tmux.js.map +0 -1
  285. package/dist/autofix/audit-engine.d.ts.map +0 -1
  286. package/dist/autofix/audit-engine.js.map +0 -1
  287. package/dist/autofix/branch-manager.d.ts.map +0 -1
  288. package/dist/autofix/branch-manager.js.map +0 -1
  289. package/dist/autofix/decision-engine.d.ts.map +0 -1
  290. package/dist/autofix/decision-engine.js.map +0 -1
  291. package/dist/autofix/index.d.ts.map +0 -1
  292. package/dist/autofix/index.js.map +0 -1
  293. package/dist/autofix/prompt-builder.d.ts.map +0 -1
  294. package/dist/autofix/prompt-builder.js.map +0 -1
  295. package/dist/autofix/report-parser.d.ts.map +0 -1
  296. package/dist/autofix/report-parser.js.map +0 -1
  297. package/dist/autofix/state-machine.d.ts.map +0 -1
  298. package/dist/autofix/state-machine.js.map +0 -1
  299. package/dist/bind/bind-flow.d.ts.map +0 -1
  300. package/dist/bind/bind-flow.js.map +0 -1
  301. package/dist/config.d.ts.map +0 -1
  302. package/dist/config.js.map +0 -1
  303. package/dist/daemon/codex-watcher.d.ts.map +0 -1
  304. package/dist/daemon/codex-watcher.js.map +0 -1
  305. package/dist/daemon/command-handler.d.ts +0 -6
  306. package/dist/daemon/command-handler.d.ts.map +0 -1
  307. package/dist/daemon/command-handler.js.map +0 -1
  308. package/dist/daemon/discussion-orchestrator.d.ts.map +0 -1
  309. package/dist/daemon/discussion-orchestrator.js.map +0 -1
  310. package/dist/daemon/file-transfer-handler.d.ts.map +0 -1
  311. package/dist/daemon/file-transfer-handler.js.map +0 -1
  312. package/dist/daemon/gemini-watcher.d.ts.map +0 -1
  313. package/dist/daemon/gemini-watcher.js.map +0 -1
  314. package/dist/daemon/hook-server.d.ts.map +0 -1
  315. package/dist/daemon/hook-server.js.map +0 -1
  316. package/dist/daemon/jsonl-watcher.d.ts.map +0 -1
  317. package/dist/daemon/jsonl-watcher.js.map +0 -1
  318. package/dist/daemon/lifecycle.d.ts.map +0 -1
  319. package/dist/daemon/lifecycle.js.map +0 -1
  320. package/dist/daemon/memory-inject.d.ts.map +0 -1
  321. package/dist/daemon/memory-inject.js.map +0 -1
  322. package/dist/daemon/p2p-orchestrator.d.ts.map +0 -1
  323. package/dist/daemon/p2p-orchestrator.js.map +0 -1
  324. package/dist/daemon/repo-handler.d.ts.map +0 -1
  325. package/dist/daemon/repo-handler.js.map +0 -1
  326. package/dist/daemon/server-link.d.ts.map +0 -1
  327. package/dist/daemon/server-link.js.map +0 -1
  328. package/dist/daemon/subsession-manager.d.ts.map +0 -1
  329. package/dist/daemon/subsession-manager.js.map +0 -1
  330. package/dist/daemon/terminal-parser.d.ts.map +0 -1
  331. package/dist/daemon/terminal-parser.js.map +0 -1
  332. package/dist/daemon/terminal-streamer.d.ts.map +0 -1
  333. package/dist/daemon/terminal-streamer.js.map +0 -1
  334. package/dist/daemon/timeline-emitter.d.ts.map +0 -1
  335. package/dist/daemon/timeline-emitter.js.map +0 -1
  336. package/dist/daemon/timeline-event.d.ts.map +0 -1
  337. package/dist/daemon/timeline-event.js.map +0 -1
  338. package/dist/daemon/timeline-store.d.ts.map +0 -1
  339. package/dist/daemon/timeline-store.js.map +0 -1
  340. package/dist/index.js.map +0 -1
  341. package/dist/memory/claude-mem.d.ts.map +0 -1
  342. package/dist/memory/claude-mem.js.map +0 -1
  343. package/dist/memory/context-builder.d.ts.map +0 -1
  344. package/dist/memory/context-builder.js.map +0 -1
  345. package/dist/memory/detector.d.ts.map +0 -1
  346. package/dist/memory/detector.js.map +0 -1
  347. package/dist/memory/extractor.d.ts.map +0 -1
  348. package/dist/memory/extractor.js.map +0 -1
  349. package/dist/memory/injector.d.ts.map +0 -1
  350. package/dist/memory/injector.js.map +0 -1
  351. package/dist/memory/interface.d.ts.map +0 -1
  352. package/dist/memory/mem0.d.ts.map +0 -1
  353. package/dist/memory/mem0.js.map +0 -1
  354. package/dist/repo/cache.d.ts.map +0 -1
  355. package/dist/repo/cache.js.map +0 -1
  356. package/dist/repo/detector.d.ts.map +0 -1
  357. package/dist/repo/detector.js.map +0 -1
  358. package/dist/repo/github-provider.d.ts.map +0 -1
  359. package/dist/repo/github-provider.js.map +0 -1
  360. package/dist/repo/gitlab-provider.d.ts.map +0 -1
  361. package/dist/repo/gitlab-provider.js.map +0 -1
  362. package/dist/repo/provider.d.ts.map +0 -1
  363. package/dist/repo/provider.js.map +0 -1
  364. package/dist/repo/types.d.ts.map +0 -1
  365. package/dist/router/command-parser.d.ts.map +0 -1
  366. package/dist/router/command-parser.js.map +0 -1
  367. package/dist/router/message-router.d.ts.map +0 -1
  368. package/dist/router/message-router.js.map +0 -1
  369. package/dist/router/response-collector.d.ts.map +0 -1
  370. package/dist/router/response-collector.js.map +0 -1
  371. package/dist/setup/setup-flow.d.ts.map +0 -1
  372. package/dist/setup/setup-flow.js.map +0 -1
  373. package/dist/setup/templates.d.ts.map +0 -1
  374. package/dist/setup/templates.js.map +0 -1
  375. package/dist/shared/models/context.d.ts.map +0 -1
  376. package/dist/shared/models/context.js.map +0 -1
  377. package/dist/shared/models/label.d.ts.map +0 -1
  378. package/dist/shared/models/label.js.map +0 -1
  379. package/dist/shared/platform/types.d.ts.map +0 -1
  380. package/dist/shared/platform/types.js.map +0 -1
  381. package/dist/shared/timeline/types.d.ts.map +0 -1
  382. package/dist/shared/timeline/types.js.map +0 -1
  383. package/dist/shared/transport/fs.d.ts.map +0 -1
  384. package/dist/shared/transport/terminal.d.ts.map +0 -1
  385. package/dist/shared/transport/terminal.js.map +0 -1
  386. package/dist/store/project-store.d.ts.map +0 -1
  387. package/dist/store/project-store.js.map +0 -1
  388. package/dist/store/session-store.d.ts.map +0 -1
  389. package/dist/store/session-store.js.map +0 -1
  390. package/dist/tracker/branch.d.ts.map +0 -1
  391. package/dist/tracker/branch.js.map +0 -1
  392. package/dist/tracker/github.d.ts.map +0 -1
  393. package/dist/tracker/github.js.map +0 -1
  394. package/dist/tracker/gitlab.d.ts.map +0 -1
  395. package/dist/tracker/gitlab.js.map +0 -1
  396. package/dist/tracker/index.d.ts.map +0 -1
  397. package/dist/tracker/index.js.map +0 -1
  398. package/dist/tracker/interface.d.ts.map +0 -1
  399. package/dist/tracker/interface.js.map +0 -1
  400. package/dist/tracker/priority.d.ts.map +0 -1
  401. package/dist/tracker/priority.js.map +0 -1
  402. package/dist/util/imc-dir.d.ts.map +0 -1
  403. package/dist/util/imc-dir.js.map +0 -1
  404. package/dist/util/logger.d.ts.map +0 -1
  405. package/dist/util/logger.js.map +0 -1
  406. package/dist/util/model-context.d.ts.map +0 -1
  407. package/dist/util/model-context.js.map +0 -1
  408. package/dist/util/version.d.ts.map +0 -1
  409. package/dist/util/version.js.map +0 -1
  410. /package/dist/{agent → src/agent}/agent-version.d.ts +0 -0
  411. /package/dist/{agent → src/agent}/agent-version.js +0 -0
  412. /package/dist/{agent → src/agent}/brain-dispatcher.d.ts +0 -0
  413. /package/dist/{agent → src/agent}/brain-dispatcher.js +0 -0
  414. /package/dist/{agent → src/agent}/drivers/base.d.ts +0 -0
  415. /package/dist/{agent → src/agent}/drivers/base.js +0 -0
  416. /package/dist/{agent → src/agent}/drivers/claude-code.d.ts +0 -0
  417. /package/dist/{agent → src/agent}/drivers/claude-code.js +0 -0
  418. /package/dist/{agent → src/agent}/drivers/codex.d.ts +0 -0
  419. /package/dist/{agent → src/agent}/drivers/codex.js +0 -0
  420. /package/dist/{agent → src/agent}/drivers/gemini.d.ts +0 -0
  421. /package/dist/{agent → src/agent}/drivers/gemini.js +0 -0
  422. /package/dist/{agent → src/agent}/drivers/opencode.d.ts +0 -0
  423. /package/dist/{agent → src/agent}/drivers/opencode.js +0 -0
  424. /package/dist/{agent → src/agent}/drivers/shell.d.ts +0 -0
  425. /package/dist/{agent → src/agent}/drivers/shell.js +0 -0
  426. /package/dist/{agent → src/agent}/env-isolation.d.ts +0 -0
  427. /package/dist/{agent → src/agent}/env-isolation.js +0 -0
  428. /package/dist/{agent → src/agent}/notify-setup.d.ts +0 -0
  429. /package/dist/{agent → src/agent}/notify-setup.js +0 -0
  430. /package/dist/{agent → src/agent}/signal.d.ts +0 -0
  431. /package/dist/{agent → src/agent}/signal.js +0 -0
  432. /package/dist/{agent → src/agent}/status-poller.d.ts +0 -0
  433. /package/dist/{agent → src/agent}/status-poller.js +0 -0
  434. /package/dist/{agent → src/agent}/templates/brain-prompt.d.ts +0 -0
  435. /package/dist/{agent → src/agent}/templates/brain-prompt.js +0 -0
  436. /package/dist/{agent → src/agent}/templates/identity.d.ts +0 -0
  437. /package/dist/{agent → src/agent}/templates/identity.js +0 -0
  438. /package/dist/{agent → src/agent}/tmux.d.ts +0 -0
  439. /package/dist/{agent → src/agent}/tmux.js +0 -0
  440. /package/dist/{autofix → src/autofix}/audit-engine.d.ts +0 -0
  441. /package/dist/{autofix → src/autofix}/audit-engine.js +0 -0
  442. /package/dist/{autofix → src/autofix}/branch-manager.d.ts +0 -0
  443. /package/dist/{autofix → src/autofix}/branch-manager.js +0 -0
  444. /package/dist/{autofix → src/autofix}/decision-engine.d.ts +0 -0
  445. /package/dist/{autofix → src/autofix}/decision-engine.js +0 -0
  446. /package/dist/{autofix → src/autofix}/index.d.ts +0 -0
  447. /package/dist/{autofix → src/autofix}/index.js +0 -0
  448. /package/dist/{autofix → src/autofix}/prompt-builder.d.ts +0 -0
  449. /package/dist/{autofix → src/autofix}/prompt-builder.js +0 -0
  450. /package/dist/{autofix → src/autofix}/report-parser.d.ts +0 -0
  451. /package/dist/{autofix → src/autofix}/report-parser.js +0 -0
  452. /package/dist/{autofix → src/autofix}/state-machine.d.ts +0 -0
  453. /package/dist/{autofix → src/autofix}/state-machine.js +0 -0
  454. /package/dist/{bind → src/bind}/bind-flow.d.ts +0 -0
  455. /package/dist/{bind → src/bind}/bind-flow.js +0 -0
  456. /package/dist/{config.d.ts → src/config.d.ts} +0 -0
  457. /package/dist/{config.js → src/config.js} +0 -0
  458. /package/dist/{daemon → src/daemon}/codex-watcher.d.ts +0 -0
  459. /package/dist/{daemon → src/daemon}/codex-watcher.js +0 -0
  460. /package/dist/{daemon → src/daemon}/discussion-orchestrator.d.ts +0 -0
  461. /package/dist/{daemon → src/daemon}/discussion-orchestrator.js +0 -0
  462. /package/dist/{daemon → src/daemon}/file-transfer-handler.d.ts +0 -0
  463. /package/dist/{daemon → src/daemon}/file-transfer-handler.js +0 -0
  464. /package/dist/{daemon → src/daemon}/gemini-watcher.d.ts +0 -0
  465. /package/dist/{daemon → src/daemon}/gemini-watcher.js +0 -0
  466. /package/dist/{daemon → src/daemon}/hook-server.d.ts +0 -0
  467. /package/dist/{daemon → src/daemon}/hook-server.js +0 -0
  468. /package/dist/{daemon → src/daemon}/jsonl-watcher.d.ts +0 -0
  469. /package/dist/{daemon → src/daemon}/jsonl-watcher.js +0 -0
  470. /package/dist/{daemon → src/daemon}/lifecycle.d.ts +0 -0
  471. /package/dist/{daemon → src/daemon}/memory-inject.d.ts +0 -0
  472. /package/dist/{daemon → src/daemon}/memory-inject.js +0 -0
  473. /package/dist/{daemon → src/daemon}/repo-handler.d.ts +0 -0
  474. /package/dist/{daemon → src/daemon}/repo-handler.js +0 -0
  475. /package/dist/{daemon → src/daemon}/server-link.d.ts +0 -0
  476. /package/dist/{daemon → src/daemon}/subsession-manager.d.ts +0 -0
  477. /package/dist/{daemon → src/daemon}/subsession-manager.js +0 -0
  478. /package/dist/{daemon → src/daemon}/terminal-parser.d.ts +0 -0
  479. /package/dist/{daemon → src/daemon}/terminal-parser.js +0 -0
  480. /package/dist/{daemon → src/daemon}/terminal-streamer.d.ts +0 -0
  481. /package/dist/{daemon → src/daemon}/terminal-streamer.js +0 -0
  482. /package/dist/{daemon → src/daemon}/timeline-emitter.d.ts +0 -0
  483. /package/dist/{daemon → src/daemon}/timeline-emitter.js +0 -0
  484. /package/dist/{daemon → src/daemon}/timeline-event.d.ts +0 -0
  485. /package/dist/{daemon → src/daemon}/timeline-event.js +0 -0
  486. /package/dist/{daemon → src/daemon}/timeline-store.d.ts +0 -0
  487. /package/dist/{daemon → src/daemon}/timeline-store.js +0 -0
  488. /package/dist/{index.d.ts → src/index.d.ts} +0 -0
  489. /package/dist/{memory → src/memory}/claude-mem.d.ts +0 -0
  490. /package/dist/{memory → src/memory}/claude-mem.js +0 -0
  491. /package/dist/{memory → src/memory}/context-builder.d.ts +0 -0
  492. /package/dist/{memory → src/memory}/context-builder.js +0 -0
  493. /package/dist/{memory → src/memory}/detector.d.ts +0 -0
  494. /package/dist/{memory → src/memory}/detector.js +0 -0
  495. /package/dist/{memory → src/memory}/extractor.d.ts +0 -0
  496. /package/dist/{memory → src/memory}/extractor.js +0 -0
  497. /package/dist/{memory → src/memory}/injector.d.ts +0 -0
  498. /package/dist/{memory → src/memory}/injector.js +0 -0
  499. /package/dist/{memory → src/memory}/interface.d.ts +0 -0
  500. /package/dist/{memory → src/memory}/interface.js +0 -0
  501. /package/dist/{memory → src/memory}/mem0.d.ts +0 -0
  502. /package/dist/{memory → src/memory}/mem0.js +0 -0
  503. /package/dist/{repo → src/repo}/cache.d.ts +0 -0
  504. /package/dist/{repo → src/repo}/cache.js +0 -0
  505. /package/dist/{repo → src/repo}/detector.d.ts +0 -0
  506. /package/dist/{repo → src/repo}/detector.js +0 -0
  507. /package/dist/{repo → src/repo}/github-provider.d.ts +0 -0
  508. /package/dist/{repo → src/repo}/github-provider.js +0 -0
  509. /package/dist/{repo → src/repo}/gitlab-provider.d.ts +0 -0
  510. /package/dist/{repo → src/repo}/gitlab-provider.js +0 -0
  511. /package/dist/{repo → src/repo}/provider.d.ts +0 -0
  512. /package/dist/{repo → src/repo}/provider.js +0 -0
  513. /package/dist/{repo → src/repo}/types.d.ts +0 -0
  514. /package/dist/{repo → src/repo}/types.js +0 -0
  515. /package/dist/{router → src/router}/command-parser.d.ts +0 -0
  516. /package/dist/{router → src/router}/command-parser.js +0 -0
  517. /package/dist/{router → src/router}/message-router.d.ts +0 -0
  518. /package/dist/{router → src/router}/message-router.js +0 -0
  519. /package/dist/{router → src/router}/response-collector.d.ts +0 -0
  520. /package/dist/{router → src/router}/response-collector.js +0 -0
  521. /package/dist/{setup → src/setup}/setup-flow.d.ts +0 -0
  522. /package/dist/{setup → src/setup}/setup-flow.js +0 -0
  523. /package/dist/{setup → src/setup}/templates.d.ts +0 -0
  524. /package/dist/{setup → src/setup}/templates.js +0 -0
  525. /package/dist/{shared → src/shared}/models/context.d.ts +0 -0
  526. /package/dist/{shared → src/shared}/models/context.js +0 -0
  527. /package/dist/{shared → src/shared}/models/label.d.ts +0 -0
  528. /package/dist/{shared → src/shared}/models/label.js +0 -0
  529. /package/dist/{shared → src/shared}/platform/types.d.ts +0 -0
  530. /package/dist/{shared → src/shared}/platform/types.js +0 -0
  531. /package/dist/{shared → src/shared}/timeline/types.d.ts +0 -0
  532. /package/dist/{shared → src/shared}/timeline/types.js +0 -0
  533. /package/dist/{shared → src/shared}/transport/fs.d.ts +0 -0
  534. /package/dist/{shared → src/shared}/transport/fs.js +0 -0
  535. /package/dist/{shared → src/shared}/transport/terminal.d.ts +0 -0
  536. /package/dist/{shared → src/shared}/transport/terminal.js +0 -0
  537. /package/dist/{store → src/store}/project-store.d.ts +0 -0
  538. /package/dist/{store → src/store}/project-store.js +0 -0
  539. /package/dist/{tracker → src/tracker}/branch.d.ts +0 -0
  540. /package/dist/{tracker → src/tracker}/branch.js +0 -0
  541. /package/dist/{tracker → src/tracker}/github.d.ts +0 -0
  542. /package/dist/{tracker → src/tracker}/github.js +0 -0
  543. /package/dist/{tracker → src/tracker}/gitlab.d.ts +0 -0
  544. /package/dist/{tracker → src/tracker}/gitlab.js +0 -0
  545. /package/dist/{tracker → src/tracker}/index.d.ts +0 -0
  546. /package/dist/{tracker → src/tracker}/index.js +0 -0
  547. /package/dist/{tracker → src/tracker}/interface.d.ts +0 -0
  548. /package/dist/{tracker → src/tracker}/interface.js +0 -0
  549. /package/dist/{tracker → src/tracker}/priority.d.ts +0 -0
  550. /package/dist/{tracker → src/tracker}/priority.js +0 -0
  551. /package/dist/{util → src/util}/imc-dir.d.ts +0 -0
  552. /package/dist/{util → src/util}/imc-dir.js +0 -0
  553. /package/dist/{util → src/util}/logger.d.ts +0 -0
  554. /package/dist/{util → src/util}/logger.js +0 -0
  555. /package/dist/{util → src/util}/model-context.d.ts +0 -0
  556. /package/dist/{util → src/util}/model-context.js +0 -0
  557. /package/dist/{util → src/util}/version.d.ts +0 -0
  558. /package/dist/{util → src/util}/version.js +0 -0
@@ -0,0 +1,462 @@
1
+ "use strict";
2
+ /**
3
+ * OpenClaw TransportProvider
4
+ *
5
+ * Connects to a local OpenClaw gateway via WebSocket, completes the
6
+ * connect-challenge handshake, and routes messages to/from OC agent sessions.
7
+ *
8
+ * Connection mode : persistent (long-lived WebSocket, reconnects on drop)
9
+ * Session ownership: provider (OpenClaw owns history and session state)
10
+ */
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.OpenClawProvider = void 0;
16
+ const ws_1 = __importDefault(require("ws"));
17
+ const node_crypto_1 = require("node:crypto");
18
+ const transport_provider_js_1 = require("../transport-provider.js");
19
+ const logger_js_1 = __importDefault(require("../../util/logger.js"));
20
+ // How long to wait for a single RPC response before timing out (ms).
21
+ const RPC_TIMEOUT_MS = 30_000;
22
+ // Reconnect backoff: starts at 1 s, doubles each attempt, caps at 5 min.
23
+ const BACKOFF_INITIAL_MS = 1_000;
24
+ const BACKOFF_MAX_MS = 5 * 60 * 1_000;
25
+ // If we receive no tick within this window we consider the connection stale.
26
+ const TICK_STALE_MS = 90_000;
27
+ // ── OpenClawProvider ─────────────────────────────────────────────────────────
28
+ class OpenClawProvider {
29
+ id = 'openclaw';
30
+ connectionMode = transport_provider_js_1.CONNECTION_MODES.PERSISTENT;
31
+ sessionOwnership = transport_provider_js_1.SESSION_OWNERSHIP.PROVIDER;
32
+ capabilities = {
33
+ streaming: true,
34
+ toolCalling: false,
35
+ approval: false,
36
+ sessionRestore: true,
37
+ multiTurn: true,
38
+ attachments: false,
39
+ };
40
+ // ── Private state ──────────────────────────────────────────────────────────
41
+ config = null;
42
+ ws = null;
43
+ /** Pending RPC calls keyed by request id. */
44
+ pending = new Map();
45
+ /** Registered callbacks. */
46
+ deltaCallbacks = [];
47
+ completeCallbacks = [];
48
+ errorCallbacks = [];
49
+ /** Accumulator: partial text per runId while streaming. */
50
+ runAccumulator = new Map();
51
+ /** Reconnect state. */
52
+ reconnectTimer = null;
53
+ backoffMs = BACKOFF_INITIAL_MS;
54
+ intentionalDisconnect = false;
55
+ /** Tick / heartbeat state. */
56
+ lastTickAt = 0;
57
+ tickStaleTimer = null;
58
+ /** Whether connect() has resolved successfully at least once. */
59
+ connected = false;
60
+ /** OC agent ID (e.g. 'main'). Resolved from config on connect. */
61
+ agentId = 'main';
62
+ // ── TransportProvider — core ───────────────────────────────────────────────
63
+ async connect(config) {
64
+ this.config = config;
65
+ this.agentId = config.agentId || 'main';
66
+ this.intentionalDisconnect = false;
67
+ await this.openSocket();
68
+ }
69
+ async disconnect() {
70
+ this.intentionalDisconnect = true;
71
+ this.clearTimers();
72
+ this.rejectAllPending('Provider disconnected');
73
+ if (this.ws) {
74
+ this.ws.removeAllListeners();
75
+ this.ws.close();
76
+ this.ws = null;
77
+ }
78
+ this.connected = false;
79
+ this.runAccumulator.clear();
80
+ logger_js_1.default.info({ provider: this.id }, 'Disconnected from OpenClaw gateway');
81
+ }
82
+ async send(sessionId, message, _attachments) {
83
+ try {
84
+ // Prefer sessions.send (v2026.3.24+): auto canonicalKey, messageSeq, subagent reactivation
85
+ await this.rpc('sessions.send', {
86
+ key: sessionId,
87
+ message,
88
+ thinking: 'off',
89
+ idempotencyKey: (0, node_crypto_1.randomUUID)(),
90
+ });
91
+ }
92
+ catch {
93
+ // Fallback to agent RPC (v2026.3.7+)
94
+ await this.rpc('agent', {
95
+ sessionKey: sessionId,
96
+ message,
97
+ agentId: this.agentId,
98
+ thinking: 'off',
99
+ idempotencyKey: (0, node_crypto_1.randomUUID)(),
100
+ });
101
+ }
102
+ }
103
+ onDelta(cb) {
104
+ this.deltaCallbacks.push(cb);
105
+ }
106
+ onComplete(cb) {
107
+ this.completeCallbacks.push(cb);
108
+ }
109
+ onError(cb) {
110
+ this.errorCallbacks.push(cb);
111
+ }
112
+ async createSession(config) {
113
+ const key = config.bindExistingKey ?? config.sessionKey;
114
+ try {
115
+ // Prefer sessions.create (v2026.3.24+)
116
+ await this.rpc('sessions.create', {
117
+ key,
118
+ agentId: config.agentId ?? this.agentId,
119
+ label: config.label ?? key,
120
+ });
121
+ }
122
+ catch {
123
+ // Fallback: OC auto-creates sessions on first agent RPC, so just log
124
+ logger_js_1.default.info({ provider: this.id, sessionKey: key }, 'sessions.create unavailable, session will be created on first message');
125
+ }
126
+ logger_js_1.default.info({ provider: this.id, sessionKey: key }, 'Session created');
127
+ return key;
128
+ }
129
+ async endSession(_sessionId) {
130
+ // OpenClaw does not expose a session-delete RPC in the MVP protocol.
131
+ // Sessions persist on the gateway; nothing to do locally.
132
+ }
133
+ // ── Optional capabilities ──────────────────────────────────────────────────
134
+ async restoreSession(sessionId) {
135
+ try {
136
+ const sessions = await this.listSessions();
137
+ return sessions.some((s) => s.key === sessionId);
138
+ }
139
+ catch {
140
+ return false;
141
+ }
142
+ }
143
+ async listSessions() {
144
+ const payload = await this.rpc('sessions.list', {});
145
+ const all = payload?.sessions ?? [];
146
+ return all
147
+ .filter((s) => !s.key.includes(':cron:'))
148
+ .map((s) => ({
149
+ key: s.key,
150
+ displayName: s.label,
151
+ agentId: s.agentId,
152
+ updatedAt: s.updatedAt,
153
+ percentUsed: s.percentUsed,
154
+ }));
155
+ }
156
+ // ── WebSocket management ───────────────────────────────────────────────────
157
+ async openSocket() {
158
+ const url = this.config?.url ?? 'ws://127.0.0.1:18789';
159
+ const token = this.config?.token ?? this.config?.apiKey ?? '';
160
+ logger_js_1.default.info({ provider: this.id, url }, 'Connecting to OpenClaw gateway');
161
+ return new Promise((resolve, reject) => {
162
+ const ws = new ws_1.default(url);
163
+ this.ws = ws;
164
+ // We gate the promise on the handshake completing.
165
+ let handshakeDone = false;
166
+ const failHandshake = (err) => {
167
+ if (!handshakeDone) {
168
+ handshakeDone = true;
169
+ ws.removeAllListeners();
170
+ ws.close();
171
+ reject(this.makeError(transport_provider_js_1.PROVIDER_ERROR_CODES.CONNECTION_LOST, String(err), false, err));
172
+ }
173
+ };
174
+ ws.once('error', failHandshake);
175
+ ws.on('message', (raw) => {
176
+ let frame;
177
+ try {
178
+ frame = JSON.parse(raw.toString());
179
+ }
180
+ catch (e) {
181
+ logger_js_1.default.warn({ provider: this.id, raw: raw.toString() }, 'Unparseable frame from gateway');
182
+ return;
183
+ }
184
+ // ── Handshake sequence ──────────────────────────────────────────────
185
+ if (!handshakeDone) {
186
+ if (frame.type === 'event' && frame.event === 'connect.challenge') {
187
+ const challengePayload = frame.payload;
188
+ logger_js_1.default.debug({ provider: this.id, nonce: challengePayload?.nonce }, 'Received connect.challenge');
189
+ const connectReq = {
190
+ type: 'req',
191
+ id: (0, node_crypto_1.randomUUID)(),
192
+ method: 'connect',
193
+ params: {
194
+ minProtocol: 3,
195
+ maxProtocol: 3,
196
+ client: {
197
+ id: 'gateway-client',
198
+ version: '0.1.0',
199
+ platform: process.platform,
200
+ mode: 'backend',
201
+ displayName: 'imcodes-daemon',
202
+ },
203
+ auth: { token },
204
+ role: 'operator',
205
+ scopes: ['operator.write', 'operator.read', 'operator.admin'],
206
+ },
207
+ };
208
+ ws.send(JSON.stringify(connectReq));
209
+ return;
210
+ }
211
+ // hello-ok may arrive as top-level `type: "hello-ok"` OR nested
212
+ // inside a res frame as `payload.type: "hello-ok"` (OC v2026.3.7+).
213
+ const frameType = frame.type;
214
+ const payloadType = frame.payload?.type;
215
+ const isHelloOk = frameType === 'hello-ok' ||
216
+ (frameType === 'event' && frame.event === 'hello-ok') ||
217
+ (frameType === 'res' && frame.ok === true && payloadType === 'hello-ok');
218
+ if (isHelloOk) {
219
+ handshakeDone = true;
220
+ this.connected = true;
221
+ this.backoffMs = BACKOFF_INITIAL_MS;
222
+ ws.removeListener('error', failHandshake);
223
+ ws.on('error', (err) => this.handleWsError(err));
224
+ ws.on('close', (code, reason) => this.handleWsClose(code, reason));
225
+ this.resetTickTimer();
226
+ logger_js_1.default.info({ provider: this.id, url }, 'OpenClaw handshake complete');
227
+ resolve();
228
+ return;
229
+ }
230
+ // Non-hello res frames during handshake — keep waiting.
231
+ if (frame.type === 'res' && frame.ok === true) {
232
+ return;
233
+ }
234
+ if (frame.type === 'res' && frame.ok === false) {
235
+ failHandshake(new Error(`Gateway rejected connect: ${JSON.stringify(frame.payload)}`));
236
+ return;
237
+ }
238
+ return;
239
+ }
240
+ // ── Post-handshake frame dispatch ───────────────────────────────────
241
+ this.handleFrame(frame);
242
+ });
243
+ });
244
+ }
245
+ handleFrame(frame) {
246
+ switch (frame.type) {
247
+ case 'event':
248
+ this.handleEventFrame(frame);
249
+ break;
250
+ case 'res':
251
+ this.handleResFrame(frame);
252
+ break;
253
+ default:
254
+ break;
255
+ }
256
+ }
257
+ handleEventFrame(frame) {
258
+ const event = frame.event;
259
+ if (event === 'tick') {
260
+ this.lastTickAt = Date.now();
261
+ this.resetTickTimer();
262
+ return;
263
+ }
264
+ if (event === 'agent') {
265
+ this.handleAgentEvent(frame.payload);
266
+ return;
267
+ }
268
+ if (event === 'chat') {
269
+ this.handleChatEvent(frame.payload);
270
+ return;
271
+ }
272
+ }
273
+ handleResFrame(frame) {
274
+ const id = frame.id;
275
+ if (!id)
276
+ return;
277
+ const pending = this.pending.get(id);
278
+ if (!pending)
279
+ return;
280
+ this.pending.delete(id);
281
+ if (frame.ok) {
282
+ pending.resolve(frame.payload);
283
+ }
284
+ else {
285
+ pending.reject(this.makeError(transport_provider_js_1.PROVIDER_ERROR_CODES.PROVIDER_ERROR, `RPC failed: ${JSON.stringify(frame.payload)}`, true, frame.payload));
286
+ }
287
+ }
288
+ handleAgentEvent(payload) {
289
+ if (!payload)
290
+ return;
291
+ const { runId, stream, data } = payload;
292
+ if (stream === 'lifecycle') {
293
+ const phase = data?.phase;
294
+ if (phase === 'start') {
295
+ // Initialise accumulator for this run.
296
+ // We need sessionId; OpenClaw includes it in the payload as `key` or `sessionKey`.
297
+ const sessionId = payload.key ?? payload.sessionKey ?? runId;
298
+ const messageId = (0, node_crypto_1.randomUUID)();
299
+ this.runAccumulator.set(runId, { sessionId, messageId, text: '' });
300
+ logger_js_1.default.debug({ provider: this.id, runId, sessionId }, 'Agent run started');
301
+ return;
302
+ }
303
+ if (phase === 'end') {
304
+ const acc = this.runAccumulator.get(runId);
305
+ if (acc) {
306
+ this.runAccumulator.delete(runId);
307
+ const message = {
308
+ id: acc.messageId,
309
+ sessionId: acc.sessionId,
310
+ kind: 'text',
311
+ role: 'assistant',
312
+ content: acc.text,
313
+ timestamp: Date.now(),
314
+ status: 'complete',
315
+ };
316
+ this.completeCallbacks.forEach((cb) => cb(acc.sessionId, message));
317
+ logger_js_1.default.debug({ provider: this.id, runId, sessionId: acc.sessionId }, 'Agent run complete');
318
+ }
319
+ return;
320
+ }
321
+ if (phase === 'error') {
322
+ const acc = this.runAccumulator.get(runId);
323
+ const sessionId = acc?.sessionId ?? payload.key ?? payload.sessionKey ?? runId;
324
+ this.runAccumulator.delete(runId);
325
+ const err = this.makeError(transport_provider_js_1.PROVIDER_ERROR_CODES.PROVIDER_ERROR, `Agent run error for session ${sessionId}`, true, data);
326
+ this.errorCallbacks.forEach((cb) => cb(sessionId, err));
327
+ return;
328
+ }
329
+ }
330
+ if (stream === 'assistant') {
331
+ const assistantData = data;
332
+ if (!assistantData)
333
+ return;
334
+ const acc = this.runAccumulator.get(runId);
335
+ if (!acc) {
336
+ // Received delta before lifecycle start — create accumulator on the fly.
337
+ const sessionId = payload.key ?? payload.sessionKey ?? runId;
338
+ const messageId = (0, node_crypto_1.randomUUID)();
339
+ this.runAccumulator.set(runId, { sessionId, messageId, text: assistantData.text ?? assistantData.delta ?? '' });
340
+ // Emit the delta we have now.
341
+ const delta = {
342
+ messageId,
343
+ type: 'text',
344
+ delta: assistantData.delta ?? '',
345
+ role: 'assistant',
346
+ };
347
+ this.deltaCallbacks.forEach((cb) => cb(sessionId, delta));
348
+ return;
349
+ }
350
+ // Update accumulated text (prefer cumulative `text` field, fall back to appending delta).
351
+ if (assistantData.text !== undefined) {
352
+ acc.text = assistantData.text;
353
+ }
354
+ else if (assistantData.delta !== undefined) {
355
+ acc.text += assistantData.delta;
356
+ }
357
+ const delta = {
358
+ messageId: acc.messageId,
359
+ type: 'text',
360
+ delta: assistantData.delta ?? '',
361
+ role: 'assistant',
362
+ };
363
+ this.deltaCallbacks.forEach((cb) => cb(acc.sessionId, delta));
364
+ }
365
+ }
366
+ handleChatEvent(payload) {
367
+ if (!payload)
368
+ return;
369
+ const { state, key } = payload;
370
+ if (state === 'error') {
371
+ const sessionId = key ?? 'unknown';
372
+ const err = this.makeError(transport_provider_js_1.PROVIDER_ERROR_CODES.PROVIDER_ERROR, `Chat error for session ${sessionId}`, true, payload);
373
+ this.errorCallbacks.forEach((cb) => cb(sessionId, err));
374
+ }
375
+ // state === 'done' is handled via lifecycle/end; nothing extra needed here.
376
+ }
377
+ // ── RPC helper ─────────────────────────────────────────────────────────────
378
+ rpc(method, params) {
379
+ if (!this.ws || this.ws.readyState !== ws_1.default.OPEN) {
380
+ return Promise.reject(this.makeError(transport_provider_js_1.PROVIDER_ERROR_CODES.CONNECTION_LOST, 'WebSocket not open', true));
381
+ }
382
+ return new Promise((resolve, reject) => {
383
+ const id = (0, node_crypto_1.randomUUID)();
384
+ const frame = { type: 'req', id, method, params };
385
+ const timer = setTimeout(() => {
386
+ this.pending.delete(id);
387
+ reject(this.makeError(transport_provider_js_1.PROVIDER_ERROR_CODES.PROVIDER_ERROR, `RPC timeout: ${method}`, true));
388
+ }, RPC_TIMEOUT_MS);
389
+ this.pending.set(id, {
390
+ resolve: (payload) => { clearTimeout(timer); resolve(payload); },
391
+ reject: (err) => { clearTimeout(timer); reject(err); },
392
+ });
393
+ this.ws.send(JSON.stringify(frame));
394
+ });
395
+ }
396
+ // ── Error helpers ──────────────────────────────────────────────────────────
397
+ makeError(code, message, recoverable, details) {
398
+ return { code, message, recoverable, details };
399
+ }
400
+ // ── Reconnect ─────────────────────────────────────────────────────────────
401
+ handleWsError(err) {
402
+ logger_js_1.default.warn({ provider: this.id, err: err.message }, 'WebSocket error');
403
+ }
404
+ handleWsClose(code, reason) {
405
+ if (this.intentionalDisconnect)
406
+ return;
407
+ logger_js_1.default.warn({ provider: this.id, code, reason: reason.toString() }, 'WebSocket closed unexpectedly — scheduling reconnect');
408
+ this.connected = false;
409
+ this.rejectAllPending('WebSocket closed');
410
+ this.clearTimers();
411
+ this.scheduleReconnect();
412
+ }
413
+ scheduleReconnect() {
414
+ const delay = this.backoffMs;
415
+ this.backoffMs = Math.min(this.backoffMs * 2, BACKOFF_MAX_MS);
416
+ logger_js_1.default.info({ provider: this.id, delayMs: delay }, 'Reconnecting to OpenClaw gateway');
417
+ this.reconnectTimer = setTimeout(async () => {
418
+ if (this.intentionalDisconnect)
419
+ return;
420
+ try {
421
+ await this.openSocket();
422
+ logger_js_1.default.info({ provider: this.id }, 'Reconnected to OpenClaw gateway');
423
+ }
424
+ catch (err) {
425
+ logger_js_1.default.warn({ provider: this.id, err }, 'Reconnect failed');
426
+ this.scheduleReconnect();
427
+ }
428
+ }, delay);
429
+ }
430
+ // ── Tick / heartbeat ───────────────────────────────────────────────────────
431
+ resetTickTimer() {
432
+ if (this.tickStaleTimer)
433
+ clearTimeout(this.tickStaleTimer);
434
+ this.tickStaleTimer = setTimeout(() => {
435
+ if (this.intentionalDisconnect)
436
+ return;
437
+ const age = Date.now() - this.lastTickAt;
438
+ logger_js_1.default.warn({ provider: this.id, ageMs: age }, 'No tick received — connection appears stale, reconnecting');
439
+ this.ws?.close();
440
+ }, TICK_STALE_MS);
441
+ }
442
+ // ── Cleanup helpers ────────────────────────────────────────────────────────
443
+ clearTimers() {
444
+ if (this.reconnectTimer) {
445
+ clearTimeout(this.reconnectTimer);
446
+ this.reconnectTimer = null;
447
+ }
448
+ if (this.tickStaleTimer) {
449
+ clearTimeout(this.tickStaleTimer);
450
+ this.tickStaleTimer = null;
451
+ }
452
+ }
453
+ rejectAllPending(reason) {
454
+ const err = this.makeError(transport_provider_js_1.PROVIDER_ERROR_CODES.CONNECTION_LOST, reason, true);
455
+ for (const pair of this.pending.values()) {
456
+ pair.reject(err);
457
+ }
458
+ this.pending.clear();
459
+ }
460
+ }
461
+ exports.OpenClawProvider = OpenClawProvider;
462
+ //# sourceMappingURL=openclaw.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openclaw.js","sourceRoot":"","sources":["../../../../src/agent/providers/openclaw.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;;;;AAEH,4CAA2B;AAC3B,6CAAyC;AASzC,oEAIkC;AAElC,qEAA0C;AAmB1C,qEAAqE;AACrE,MAAM,cAAc,GAAG,MAAM,CAAC;AAE9B,yEAAyE;AACzE,MAAM,kBAAkB,GAAG,KAAK,CAAC;AACjC,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;AAEtC,6EAA6E;AAC7E,MAAM,aAAa,GAAG,MAAM,CAAC;AAE7B,gFAAgF;AAEhF,MAAa,gBAAgB;IAClB,EAAE,GAAG,UAAU,CAAC;IAChB,cAAc,GAAG,wCAAgB,CAAC,UAAU,CAAC;IAC7C,gBAAgB,GAAG,yCAAiB,CAAC,QAAQ,CAAC;IAC9C,YAAY,GAAyB;QAC5C,SAAS,EAAE,IAAI;QACf,WAAW,EAAE,KAAK;QAClB,QAAQ,EAAE,KAAK;QACf,cAAc,EAAE,IAAI;QACpB,SAAS,EAAE,IAAI;QACf,WAAW,EAAE,KAAK;KACnB,CAAC;IAEF,8EAA8E;IAEtE,MAAM,GAA0B,IAAI,CAAC;IACrC,EAAE,GAAqB,IAAI,CAAC;IAEpC,6CAA6C;IACrC,OAAO,GAAG,IAAI,GAAG,EAAyB,CAAC;IAEnD,4BAA4B;IACpB,cAAc,GAA4D,EAAE,CAAC;IAC7E,iBAAiB,GAA8D,EAAE,CAAC;IAClF,cAAc,GAA6D,EAAE,CAAC;IAEtF,2DAA2D;IACnD,cAAc,GAAG,IAAI,GAAG,EAAkE,CAAC;IAEnG,uBAAuB;IACf,cAAc,GAAyC,IAAI,CAAC;IAC5D,SAAS,GAAG,kBAAkB,CAAC;IAC/B,qBAAqB,GAAG,KAAK,CAAC;IAEtC,8BAA8B;IACtB,UAAU,GAAG,CAAC,CAAC;IACf,cAAc,GAAyC,IAAI,CAAC;IAEpE,iEAAiE;IACzD,SAAS,GAAG,KAAK,CAAC;IAE1B,kEAAkE;IAC1D,OAAO,GAAG,MAAM,CAAC;IAEzB,8EAA8E;IAE9E,KAAK,CAAC,OAAO,CAAC,MAAsB;QAClC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAI,MAAM,CAAC,OAAkB,IAAI,MAAM,CAAC;QACpD,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;QACnC,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;QAClC,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,gBAAgB,CAAC,uBAAuB,CAAC,CAAC;QAC/C,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YACZ,IAAI,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC;YAC7B,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC;QACjB,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;QAC5B,mBAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,oCAAoC,CAAC,CAAC;IAC3E,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,SAAiB,EAAE,OAAe,EAAE,YAAwB;QACrE,IAAI,CAAC;YACH,2FAA2F;YAC3F,MAAM,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE;gBAC9B,GAAG,EAAE,SAAS;gBACd,OAAO;gBACP,QAAQ,EAAE,KAAK;gBACf,cAAc,EAAE,IAAA,wBAAU,GAAE;aAC7B,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,qCAAqC;YACrC,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE;gBACtB,UAAU,EAAE,SAAS;gBACrB,OAAO;gBACP,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,QAAQ,EAAE,KAAK;gBACf,cAAc,EAAE,IAAA,wBAAU,GAAE;aAC7B,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,CAAC,EAAoD;QAC1D,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC;IAED,UAAU,CAAC,EAAsD;QAC/D,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClC,CAAC;IAED,OAAO,CAAC,EAAqD;QAC3D,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,MAAqB;QACvC,MAAM,GAAG,GAAG,MAAM,CAAC,eAAe,IAAI,MAAM,CAAC,UAAU,CAAC;QACxD,IAAI,CAAC;YACH,uCAAuC;YACvC,MAAM,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE;gBAChC,GAAG;gBACH,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO;gBACvC,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,GAAG;aAC3B,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,qEAAqE;YACrE,mBAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,uEAAuE,CAAC,CAAC;QAC/H,CAAC;QACD,mBAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,iBAAiB,CAAC,CAAC;QACvE,OAAO,GAAG,CAAC;IACb,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,UAAkB;QACjC,qEAAqE;QACrE,0DAA0D;IAC5D,CAAC;IAED,8EAA8E;IAE9E,KAAK,CAAC,cAAc,CAAC,SAAiB;QACpC,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YAC3C,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC;QACnD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,CAM9C,CAAC;QACL,MAAM,GAAG,GAAG,OAAO,EAAE,QAAQ,IAAI,EAAE,CAAC;QACpC,OAAO,GAAG;aACP,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;aACxC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACX,GAAG,EAAE,CAAC,CAAC,GAAG;YACV,WAAW,EAAE,CAAC,CAAC,KAAK;YACpB,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,SAAS,EAAE,CAAC,CAAC,SAAS;YACtB,WAAW,EAAE,CAAC,CAAC,WAAW;SAC3B,CAAC,CAAC,CAAC;IACR,CAAC;IAED,8EAA8E;IAEtE,KAAK,CAAC,UAAU;QACtB,MAAM,GAAG,GAAI,IAAI,CAAC,MAAM,EAAE,GAA0B,IAAI,sBAAsB,CAAC;QAC/E,MAAM,KAAK,GAAI,IAAI,CAAC,MAAM,EAAE,KAA4B,IAAK,IAAI,CAAC,MAAM,EAAE,MAA6B,IAAI,EAAE,CAAC;QAE9G,mBAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,gCAAgC,CAAC,CAAC;QAE1E,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC3C,MAAM,EAAE,GAAG,IAAI,YAAS,CAAC,GAAG,CAAC,CAAC;YAC9B,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;YAEb,mDAAmD;YACnD,IAAI,aAAa,GAAG,KAAK,CAAC;YAE1B,MAAM,aAAa,GAAG,CAAC,GAAY,EAAQ,EAAE;gBAC3C,IAAI,CAAC,aAAa,EAAE,CAAC;oBACnB,aAAa,GAAG,IAAI,CAAC;oBACrB,EAAE,CAAC,kBAAkB,EAAE,CAAC;oBACxB,EAAE,CAAC,KAAK,EAAE,CAAC;oBACX,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,4CAAoB,CAAC,eAAe,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;gBACxF,CAAC;YACH,CAAC,CAAC;YAEF,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;YAEhC,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAoB,EAAE,EAAE;gBACxC,IAAI,KAAc,CAAC;gBACnB,IAAI,CAAC;oBACH,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAY,CAAC;gBAChD,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,mBAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,gCAAgC,CAAC,CAAC;oBAC1F,OAAO;gBACT,CAAC;gBAED,uEAAuE;gBACvE,IAAI,CAAC,aAAa,EAAE,CAAC;oBACnB,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,KAAK,KAAK,mBAAmB,EAAE,CAAC;wBAClE,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAyC,CAAC;wBACzE,mBAAM,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,EAAE,4BAA4B,CAAC,CAAC;wBAClG,MAAM,UAAU,GAAY;4BAC1B,IAAI,EAAE,KAAK;4BACX,EAAE,EAAE,IAAA,wBAAU,GAAE;4BAChB,MAAM,EAAE,SAAS;4BACjB,MAAM,EAAE;gCACN,WAAW,EAAE,CAAC;gCACd,WAAW,EAAE,CAAC;gCACd,MAAM,EAAE;oCACN,EAAE,EAAE,gBAAgB;oCACpB,OAAO,EAAE,OAAO;oCAChB,QAAQ,EAAE,OAAO,CAAC,QAAQ;oCAC1B,IAAI,EAAE,SAAS;oCACf,WAAW,EAAE,gBAAgB;iCAC9B;gCACD,IAAI,EAAE,EAAE,KAAK,EAAE;gCACf,IAAI,EAAE,UAAU;gCAChB,MAAM,EAAE,CAAC,gBAAgB,EAAE,eAAe,EAAE,gBAAgB,CAAC;6BAC9D;yBACF,CAAC;wBACF,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;wBACpC,OAAO;oBACT,CAAC;oBAED,gEAAgE;oBAChE,oEAAoE;oBACpE,MAAM,SAAS,GAAG,KAAK,CAAC,IAAc,CAAC;oBACvC,MAAM,WAAW,GAAI,KAAK,CAAC,OAA+C,EAAE,IAAI,CAAC;oBACjF,MAAM,SAAS,GACb,SAAS,KAAK,UAAU;wBACxB,CAAC,SAAS,KAAK,OAAO,IAAI,KAAK,CAAC,KAAK,KAAK,UAAU,CAAC;wBACrD,CAAC,SAAS,KAAK,KAAK,IAAI,KAAK,CAAC,EAAE,KAAK,IAAI,IAAI,WAAW,KAAK,UAAU,CAAC,CAAC;oBAE3E,IAAI,SAAS,EAAE,CAAC;wBACd,aAAa,GAAG,IAAI,CAAC;wBACrB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;wBACtB,IAAI,CAAC,SAAS,GAAG,kBAAkB,CAAC;wBACpC,EAAE,CAAC,cAAc,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;wBAC1C,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;wBACjD,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;wBACnE,IAAI,CAAC,cAAc,EAAE,CAAC;wBACtB,mBAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,6BAA6B,CAAC,CAAC;wBACvE,OAAO,EAAE,CAAC;wBACV,OAAO;oBACT,CAAC;oBAED,wDAAwD;oBACxD,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,IAAI,KAAK,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;wBAC9C,OAAO;oBACT,CAAC;oBAED,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,IAAI,KAAK,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC;wBAC/C,aAAa,CAAC,IAAI,KAAK,CAAC,6BAA6B,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;wBACvF,OAAO;oBACT,CAAC;oBAED,OAAO;gBACT,CAAC;gBAED,uEAAuE;gBACvE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YAC1B,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,WAAW,CAAC,KAAc;QAChC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,OAAO;gBACV,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;gBAC7B,MAAM;YACR,KAAK,KAAK;gBACR,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;gBAC3B,MAAM;YACR;gBACE,MAAM;QACV,CAAC;IACH,CAAC;IAEO,gBAAgB,CAAC,KAAc;QACrC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QAE1B,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;YACrB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,OAAO;QACT,CAAC;QAED,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;YACtB,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,OAA4B,CAAC,CAAC;YAC1D,OAAO;QACT,CAAC;QAED,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;YACrB,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,OAA2B,CAAC,CAAC;YACxD,OAAO;QACT,CAAC;IACH,CAAC;IAEO,cAAc,CAAC,KAAc;QACnC,MAAM,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC;QACpB,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACrC,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACxB,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC;YACb,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACjC,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAC3B,4CAAoB,CAAC,cAAc,EACnC,eAAe,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAC9C,IAAI,EACJ,KAAK,CAAC,OAAO,CACd,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAEO,gBAAgB,CAAC,OAA0B;QACjD,IAAI,CAAC,OAAO;YAAE,OAAO;QAErB,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;QAExC,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAI,IAA2B,EAAE,KAAK,CAAC;YAElD,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;gBACtB,uCAAuC;gBACvC,mFAAmF;gBACnF,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,UAAU,IAAI,KAAK,CAAC;gBAC7D,MAAM,SAAS,GAAG,IAAA,wBAAU,GAAE,CAAC;gBAC/B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;gBACnE,mBAAM,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,mBAAmB,CAAC,CAAC;gBAC3E,OAAO;YACT,CAAC;YAED,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;gBACpB,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAC3C,IAAI,GAAG,EAAE,CAAC;oBACR,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAClC,MAAM,OAAO,GAAiB;wBAC5B,EAAE,EAAE,GAAG,CAAC,SAAS;wBACjB,SAAS,EAAE,GAAG,CAAC,SAAS;wBACxB,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,WAAW;wBACjB,OAAO,EAAE,GAAG,CAAC,IAAI;wBACjB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;wBACrB,MAAM,EAAE,UAAU;qBACnB,CAAC;oBACF,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;oBACnE,mBAAM,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,EAAE,oBAAoB,CAAC,CAAC;gBAC7F,CAAC;gBACD,OAAO;YACT,CAAC;YAED,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;gBACtB,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAC3C,MAAM,SAAS,GAAG,GAAG,EAAE,SAAS,IAAI,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,UAAU,IAAI,KAAK,CAAC;gBAC/E,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAClC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CACxB,4CAAoB,CAAC,cAAc,EACnC,+BAA+B,SAAS,EAAE,EAC1C,IAAI,EACJ,IAAI,CACL,CAAC;gBACF,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;gBACxD,OAAO;YACT,CAAC;QACH,CAAC;QAED,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;YAC3B,MAAM,aAAa,GAAG,IAAqD,CAAC;YAC5E,IAAI,CAAC,aAAa;gBAAE,OAAO;YAE3B,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAC3C,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,yEAAyE;gBACzE,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,UAAU,IAAI,KAAK,CAAC;gBAC7D,MAAM,SAAS,GAAG,IAAA,wBAAU,GAAE,CAAC;gBAC/B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,aAAa,CAAC,IAAI,IAAI,aAAa,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC,CAAC;gBAChH,8BAA8B;gBAC9B,MAAM,KAAK,GAAiB;oBAC1B,SAAS;oBACT,IAAI,EAAE,MAAM;oBACZ,KAAK,EAAE,aAAa,CAAC,KAAK,IAAI,EAAE;oBAChC,IAAI,EAAE,WAAW;iBAClB,CAAC;gBACF,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;gBAC1D,OAAO;YACT,CAAC;YAED,0FAA0F;YAC1F,IAAI,aAAa,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBACrC,GAAG,CAAC,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC;YAChC,CAAC;iBAAM,IAAI,aAAa,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC7C,GAAG,CAAC,IAAI,IAAI,aAAa,CAAC,KAAK,CAAC;YAClC,CAAC;YAED,MAAM,KAAK,GAAiB;gBAC1B,SAAS,EAAE,GAAG,CAAC,SAAS;gBACxB,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,aAAa,CAAC,KAAK,IAAI,EAAE;gBAChC,IAAI,EAAE,WAAW;aAClB,CAAC;YACF,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;IAEO,eAAe,CAAC,OAAyB;QAC/C,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;QAE/B,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;YACtB,MAAM,SAAS,GAAG,GAAG,IAAI,SAAS,CAAC;YACnC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CACxB,4CAAoB,CAAC,cAAc,EACnC,0BAA0B,SAAS,EAAE,EACrC,IAAI,EACJ,OAAO,CACR,CAAC;YACF,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;QAC1D,CAAC;QACD,4EAA4E;IAC9E,CAAC;IAED,8EAA8E;IAEtE,GAAG,CAAC,MAAc,EAAE,MAAe;QACzC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,UAAU,KAAK,YAAS,CAAC,IAAI,EAAE,CAAC;YACtD,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAClC,4CAAoB,CAAC,eAAe,EACpC,oBAAoB,EACpB,IAAI,CACL,CAAC,CAAC;QACL,CAAC;QAED,OAAO,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC9C,MAAM,EAAE,GAAG,IAAA,wBAAU,GAAE,CAAC;YACxB,MAAM,KAAK,GAAY,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;YAE3D,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC5B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACxB,MAAM,CAAC,IAAI,CAAC,SAAS,CACnB,4CAAoB,CAAC,cAAc,EACnC,gBAAgB,MAAM,EAAE,EACxB,IAAI,CACL,CAAC,CAAC;YACL,CAAC,EAAE,cAAc,CAAC,CAAC;YAEnB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE;gBACnB,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBAChE,MAAM,EAAG,CAAC,GAAG,EAAM,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aAC5D,CAAC,CAAC;YAEH,IAAI,CAAC,EAAG,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,8EAA8E;IAEtE,SAAS,CACf,IAAY,EACZ,OAAe,EACf,WAAoB,EACpB,OAAiB;QAEjB,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;IACjD,CAAC;IAED,6EAA6E;IAErE,aAAa,CAAC,GAAU;QAC9B,mBAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,iBAAiB,CAAC,CAAC;IAC1E,CAAC;IAEO,aAAa,CAAC,IAAY,EAAE,MAAc;QAChD,IAAI,IAAI,CAAC,qBAAqB;YAAE,OAAO;QAEvC,mBAAM,CAAC,IAAI,CACT,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,EAAE,EACtD,sDAAsD,CACvD,CAAC;QACF,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;QAC1C,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAEO,iBAAiB;QACvB,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,EAAE,cAAc,CAAC,CAAC;QAE9D,mBAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,kCAAkC,CAAC,CAAC;QACvF,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,KAAK,IAAI,EAAE;YAC1C,IAAI,IAAI,CAAC,qBAAqB;gBAAE,OAAO;YACvC,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;gBACxB,mBAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,iCAAiC,CAAC,CAAC;YACxE,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,mBAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,kBAAkB,CAAC,CAAC;gBAC5D,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,CAAC;QACH,CAAC,EAAE,KAAK,CAAC,CAAC;IACZ,CAAC;IAED,8EAA8E;IAEtE,cAAc;QACpB,IAAI,IAAI,CAAC,cAAc;YAAE,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3D,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,GAAG,EAAE;YACpC,IAAI,IAAI,CAAC,qBAAqB;gBAAE,OAAO;YACvC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC;YACzC,mBAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,2DAA2D,CAAC,CAAC;YAC5G,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC;QACnB,CAAC,EAAE,aAAa,CAAC,CAAC;IACpB,CAAC;IAED,8EAA8E;IAEtE,WAAW;QACjB,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAAC,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAAC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAAC,CAAC;QAC3F,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAAC,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAAC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAAC,CAAC;IAC7F,CAAC;IAEO,gBAAgB,CAAC,MAAc;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,4CAAoB,CAAC,eAAe,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QAC/E,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;YACzC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;CACF;AAzgBD,4CAygBC"}
@@ -1,5 +1,6 @@
1
1
  import type { AgentDriver } from './drivers/base.js';
2
2
  import type { AgentType } from './detect.js';
3
+ import { TransportSessionRuntime } from './transport-session-runtime.js';
3
4
  import { type SessionRecord } from '../store/session-store.js';
4
5
  type SessionEventCallback = (event: 'started' | 'stopped' | 'error', session: string, state: string) => void;
5
6
  export declare function setSessionEventCallback(cb: SessionEventCallback): void;
@@ -52,7 +53,13 @@ interface LaunchOpts {
52
53
  codexSessionId?: string;
53
54
  /** Gemini session UUID for `gemini --resume <UUID>`. */
54
55
  geminiSessionId?: string;
56
+ /** Session description for transport sessions (persona/system prompt injection). */
57
+ description?: string;
58
+ /** Bind to an existing remote session key instead of creating a new one. */
59
+ bindExistingKey?: string;
55
60
  }
61
+ /** Get the transport runtime for a session (if it is a transport session). */
62
+ export declare function getTransportRuntime(name: string): TransportSessionRuntime | undefined;
56
63
  export declare function launchSession(opts: LaunchOpts): Promise<void>;
57
64
  /** Bound ops for a session (used by status poller / response collector). */
58
65
  export declare function getSessionOps(name: string): {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-manager.d.ts","sourceRoot":"","sources":["../../../src/agent/session-manager.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAIzE,OAAO,EAML,KAAK,aAAa,EACnB,MAAM,2BAA2B,CAAC;AAyEnC,KAAK,oBAAoB,GAAG,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;AAG7G,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,oBAAoB,GAAG,IAAI,CAEtE;AAOD,oFAAoF;AACpF,KAAK,sBAAsB,GAAG,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAG5F,wBAAgB,yBAAyB,CAAC,EAAE,EAAE,sBAAsB,GAAG,IAAI,CAE1E;AAMD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,SAAS,EAAE,CAAC;IACzB,0EAA0E;IAC1E,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,SAAS,GAAG,WAAW,CAWtD;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI,MAAM,EAAE,GAAG,MAAM,CAEjF;AAED,0DAA0D;AAC1D,wBAAsB,YAAY,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CASvE;AAED,sEAAsE;AACtE,wBAAsB,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAsBpE;AAED,0FAA0F;AAC1F,wBAAsB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAcxE;AAED,8FAA8F;AAC9F,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAEnD;AAiCD,wGAAwG;AACxG,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAqLtD;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,CAwC5E;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,CAoE5E;AAED,UAAU,UAAU;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,OAAO,GAAG,IAAI,MAAM,EAAE,CAAC;IAC7B,SAAS,EAAE,SAAS,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,iEAAiE;IACjE,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,wFAAwF;IACxF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oDAAoD;IACpD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,wDAAwD;IACxD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oFAAoF;IACpF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4EAA4E;IAC5E,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAKD,8EAA8E;AAC9E,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,uBAAuB,GAAG,SAAS,CAErF;AAgDD,wBAAsB,aAAa,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAkLnE;AAED,4EAA4E;AAC5E,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM;;qBAGrB,MAAM;;EAG1B;AAED,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,SAAS,CAAC;IACvB,wDAAwD;IACxD,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;;;;GAKG;AACH,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC;IAC/E,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC,CA4BD"}