neural-loom 0.1.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 (368) hide show
  1. package/.next/BUILD_ID +1 -0
  2. package/.next/app-path-routes-manifest.json +18 -0
  3. package/.next/build-manifest.json +20 -0
  4. package/.next/cache/.previewinfo +1 -0
  5. package/.next/cache/.rscinfo +1 -0
  6. package/.next/cache/.tsbuildinfo +1 -0
  7. package/.next/diagnostics/build-diagnostics.json +6 -0
  8. package/.next/diagnostics/framework.json +1 -0
  9. package/.next/diagnostics/route-bundle-stats.json +25 -0
  10. package/.next/export-marker.json +6 -0
  11. package/.next/fallback-build-manifest.json +13 -0
  12. package/.next/images-manifest.json +68 -0
  13. package/.next/next-minimal-server.js.nft.json +1 -0
  14. package/.next/next-server.js.nft.json +1 -0
  15. package/.next/package.json +1 -0
  16. package/.next/prerender-manifest.json +114 -0
  17. package/.next/required-server-files.js +332 -0
  18. package/.next/required-server-files.json +332 -0
  19. package/.next/routes-manifest.json +141 -0
  20. package/.next/server/app/_global-error/page/app-paths-manifest.json +3 -0
  21. package/.next/server/app/_global-error/page/build-manifest.json +16 -0
  22. package/.next/server/app/_global-error/page/next-font-manifest.json +6 -0
  23. package/.next/server/app/_global-error/page/react-loadable-manifest.json +1 -0
  24. package/.next/server/app/_global-error/page/server-reference-manifest.json +4 -0
  25. package/.next/server/app/_global-error/page.js +10 -0
  26. package/.next/server/app/_global-error/page.js.map +5 -0
  27. package/.next/server/app/_global-error/page.js.nft.json +1 -0
  28. package/.next/server/app/_global-error/page_client-reference-manifest.js +3 -0
  29. package/.next/server/app/_global-error.html +1 -0
  30. package/.next/server/app/_global-error.meta +15 -0
  31. package/.next/server/app/_global-error.rsc +15 -0
  32. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +5 -0
  33. package/.next/server/app/_global-error.segments/_full.segment.rsc +15 -0
  34. package/.next/server/app/_global-error.segments/_head.segment.rsc +6 -0
  35. package/.next/server/app/_global-error.segments/_index.segment.rsc +5 -0
  36. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -0
  37. package/.next/server/app/_not-found/page/app-paths-manifest.json +3 -0
  38. package/.next/server/app/_not-found/page/build-manifest.json +16 -0
  39. package/.next/server/app/_not-found/page/next-font-manifest.json +11 -0
  40. package/.next/server/app/_not-found/page/react-loadable-manifest.json +1 -0
  41. package/.next/server/app/_not-found/page/server-reference-manifest.json +4 -0
  42. package/.next/server/app/_not-found/page.js +13 -0
  43. package/.next/server/app/_not-found/page.js.map +5 -0
  44. package/.next/server/app/_not-found/page.js.nft.json +1 -0
  45. package/.next/server/app/_not-found/page_client-reference-manifest.js +3 -0
  46. package/.next/server/app/_not-found.html +1 -0
  47. package/.next/server/app/_not-found.meta +16 -0
  48. package/.next/server/app/_not-found.rsc +16 -0
  49. package/.next/server/app/_not-found.segments/_full.segment.rsc +16 -0
  50. package/.next/server/app/_not-found.segments/_head.segment.rsc +6 -0
  51. package/.next/server/app/_not-found.segments/_index.segment.rsc +5 -0
  52. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +5 -0
  53. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +5 -0
  54. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -0
  55. package/.next/server/app/api/context/aider/route/app-paths-manifest.json +3 -0
  56. package/.next/server/app/api/context/aider/route/build-manifest.json +9 -0
  57. package/.next/server/app/api/context/aider/route/server-reference-manifest.json +4 -0
  58. package/.next/server/app/api/context/aider/route.js +6 -0
  59. package/.next/server/app/api/context/aider/route.js.map +5 -0
  60. package/.next/server/app/api/context/aider/route.js.nft.json +1 -0
  61. package/.next/server/app/api/context/aider/route_client-reference-manifest.js +3 -0
  62. package/.next/server/app/api/context/claude/route/app-paths-manifest.json +3 -0
  63. package/.next/server/app/api/context/claude/route/build-manifest.json +9 -0
  64. package/.next/server/app/api/context/claude/route/server-reference-manifest.json +4 -0
  65. package/.next/server/app/api/context/claude/route.js +6 -0
  66. package/.next/server/app/api/context/claude/route.js.map +5 -0
  67. package/.next/server/app/api/context/claude/route.js.nft.json +1 -0
  68. package/.next/server/app/api/context/claude/route_client-reference-manifest.js +3 -0
  69. package/.next/server/app/api/context/route/app-paths-manifest.json +3 -0
  70. package/.next/server/app/api/context/route/build-manifest.json +9 -0
  71. package/.next/server/app/api/context/route/server-reference-manifest.json +4 -0
  72. package/.next/server/app/api/context/route.js +6 -0
  73. package/.next/server/app/api/context/route.js.map +5 -0
  74. package/.next/server/app/api/context/route.js.nft.json +1 -0
  75. package/.next/server/app/api/context/route_client-reference-manifest.js +3 -0
  76. package/.next/server/app/api/context/ssh/route/app-paths-manifest.json +3 -0
  77. package/.next/server/app/api/context/ssh/route/build-manifest.json +9 -0
  78. package/.next/server/app/api/context/ssh/route/server-reference-manifest.json +4 -0
  79. package/.next/server/app/api/context/ssh/route.js +6 -0
  80. package/.next/server/app/api/context/ssh/route.js.map +5 -0
  81. package/.next/server/app/api/context/ssh/route.js.nft.json +1 -0
  82. package/.next/server/app/api/context/ssh/route_client-reference-manifest.js +3 -0
  83. package/.next/server/app/api/files/route/app-paths-manifest.json +3 -0
  84. package/.next/server/app/api/files/route/build-manifest.json +9 -0
  85. package/.next/server/app/api/files/route/server-reference-manifest.json +4 -0
  86. package/.next/server/app/api/files/route.js +7 -0
  87. package/.next/server/app/api/files/route.js.map +5 -0
  88. package/.next/server/app/api/files/route.js.nft.json +1 -0
  89. package/.next/server/app/api/files/route_client-reference-manifest.js +3 -0
  90. package/.next/server/app/api/git/route/app-paths-manifest.json +3 -0
  91. package/.next/server/app/api/git/route/build-manifest.json +9 -0
  92. package/.next/server/app/api/git/route/server-reference-manifest.json +4 -0
  93. package/.next/server/app/api/git/route.js +6 -0
  94. package/.next/server/app/api/git/route.js.map +5 -0
  95. package/.next/server/app/api/git/route.js.nft.json +1 -0
  96. package/.next/server/app/api/git/route_client-reference-manifest.js +3 -0
  97. package/.next/server/app/api/sessions/inject/route/app-paths-manifest.json +3 -0
  98. package/.next/server/app/api/sessions/inject/route/build-manifest.json +9 -0
  99. package/.next/server/app/api/sessions/inject/route/server-reference-manifest.json +4 -0
  100. package/.next/server/app/api/sessions/inject/route.js +7 -0
  101. package/.next/server/app/api/sessions/inject/route.js.map +5 -0
  102. package/.next/server/app/api/sessions/inject/route.js.nft.json +1 -0
  103. package/.next/server/app/api/sessions/inject/route_client-reference-manifest.js +3 -0
  104. package/.next/server/app/api/sessions/input/route/app-paths-manifest.json +3 -0
  105. package/.next/server/app/api/sessions/input/route/build-manifest.json +9 -0
  106. package/.next/server/app/api/sessions/input/route/server-reference-manifest.json +4 -0
  107. package/.next/server/app/api/sessions/input/route.js +7 -0
  108. package/.next/server/app/api/sessions/input/route.js.map +5 -0
  109. package/.next/server/app/api/sessions/input/route.js.nft.json +1 -0
  110. package/.next/server/app/api/sessions/input/route_client-reference-manifest.js +3 -0
  111. package/.next/server/app/api/sessions/launch/route/app-paths-manifest.json +3 -0
  112. package/.next/server/app/api/sessions/launch/route/build-manifest.json +9 -0
  113. package/.next/server/app/api/sessions/launch/route/server-reference-manifest.json +4 -0
  114. package/.next/server/app/api/sessions/launch/route.js +7 -0
  115. package/.next/server/app/api/sessions/launch/route.js.map +5 -0
  116. package/.next/server/app/api/sessions/launch/route.js.nft.json +1 -0
  117. package/.next/server/app/api/sessions/launch/route_client-reference-manifest.js +3 -0
  118. package/.next/server/app/api/sessions/route/app-paths-manifest.json +3 -0
  119. package/.next/server/app/api/sessions/route/build-manifest.json +9 -0
  120. package/.next/server/app/api/sessions/route/server-reference-manifest.json +4 -0
  121. package/.next/server/app/api/sessions/route.js +7 -0
  122. package/.next/server/app/api/sessions/route.js.map +5 -0
  123. package/.next/server/app/api/sessions/route.js.nft.json +1 -0
  124. package/.next/server/app/api/sessions/route_client-reference-manifest.js +3 -0
  125. package/.next/server/app/api/sessions/stats/route/app-paths-manifest.json +3 -0
  126. package/.next/server/app/api/sessions/stats/route/build-manifest.json +9 -0
  127. package/.next/server/app/api/sessions/stats/route/server-reference-manifest.json +4 -0
  128. package/.next/server/app/api/sessions/stats/route.js +7 -0
  129. package/.next/server/app/api/sessions/stats/route.js.map +5 -0
  130. package/.next/server/app/api/sessions/stats/route.js.nft.json +1 -0
  131. package/.next/server/app/api/sessions/stats/route_client-reference-manifest.js +3 -0
  132. package/.next/server/app/api/sessions/stop/route/app-paths-manifest.json +3 -0
  133. package/.next/server/app/api/sessions/stop/route/build-manifest.json +9 -0
  134. package/.next/server/app/api/sessions/stop/route/server-reference-manifest.json +4 -0
  135. package/.next/server/app/api/sessions/stop/route.js +7 -0
  136. package/.next/server/app/api/sessions/stop/route.js.map +5 -0
  137. package/.next/server/app/api/sessions/stop/route.js.nft.json +1 -0
  138. package/.next/server/app/api/sessions/stop/route_client-reference-manifest.js +3 -0
  139. package/.next/server/app/favicon.ico/route/app-paths-manifest.json +3 -0
  140. package/.next/server/app/favicon.ico/route/build-manifest.json +9 -0
  141. package/.next/server/app/favicon.ico/route.js +7 -0
  142. package/.next/server/app/favicon.ico/route.js.map +5 -0
  143. package/.next/server/app/favicon.ico/route.js.nft.json +1 -0
  144. package/.next/server/app/favicon.ico.body +0 -0
  145. package/.next/server/app/favicon.ico.meta +1 -0
  146. package/.next/server/app/index.html +1 -0
  147. package/.next/server/app/index.meta +14 -0
  148. package/.next/server/app/index.rsc +21 -0
  149. package/.next/server/app/index.segments/__PAGE__.segment.rsc +10 -0
  150. package/.next/server/app/index.segments/_full.segment.rsc +21 -0
  151. package/.next/server/app/index.segments/_head.segment.rsc +6 -0
  152. package/.next/server/app/index.segments/_index.segment.rsc +5 -0
  153. package/.next/server/app/index.segments/_tree.segment.rsc +5 -0
  154. package/.next/server/app/page/app-paths-manifest.json +3 -0
  155. package/.next/server/app/page/build-manifest.json +16 -0
  156. package/.next/server/app/page/next-font-manifest.json +11 -0
  157. package/.next/server/app/page/react-loadable-manifest.json +42 -0
  158. package/.next/server/app/page/server-reference-manifest.json +4 -0
  159. package/.next/server/app/page.js +14 -0
  160. package/.next/server/app/page.js.map +5 -0
  161. package/.next/server/app/page.js.nft.json +1 -0
  162. package/.next/server/app/page_client-reference-manifest.js +3 -0
  163. package/.next/server/app-paths-manifest.json +18 -0
  164. package/.next/server/chunks/[externals]__0shxiss._.js +3 -0
  165. package/.next/server/chunks/[externals]__0shxiss._.js.map +1 -0
  166. package/.next/server/chunks/[externals]_next_dist_0arv.vj._.js +3 -0
  167. package/.next/server/chunks/[externals]_next_dist_0arv.vj._.js.map +1 -0
  168. package/.next/server/chunks/[externals]_node-pty_12c-8pf._.js +3 -0
  169. package/.next/server/chunks/[externals]_node-pty_12c-8pf._.js.map +1 -0
  170. package/.next/server/chunks/[root-of-the-server]__0-k9zyi._.js +15 -0
  171. package/.next/server/chunks/[root-of-the-server]__0-k9zyi._.js.map +1 -0
  172. package/.next/server/chunks/[root-of-the-server]__04kdofw._.js +15 -0
  173. package/.next/server/chunks/[root-of-the-server]__04kdofw._.js.map +1 -0
  174. package/.next/server/chunks/[root-of-the-server]__0c.5qbe._.js +15 -0
  175. package/.next/server/chunks/[root-of-the-server]__0c.5qbe._.js.map +1 -0
  176. package/.next/server/chunks/[root-of-the-server]__0d0pykb._.js +28 -0
  177. package/.next/server/chunks/[root-of-the-server]__0d0pykb._.js.map +1 -0
  178. package/.next/server/chunks/[root-of-the-server]__0e5cwnx._.js +3 -0
  179. package/.next/server/chunks/[root-of-the-server]__0e5cwnx._.js.map +1 -0
  180. package/.next/server/chunks/[root-of-the-server]__0efi5cr._.js +3 -0
  181. package/.next/server/chunks/[root-of-the-server]__0efi5cr._.js.map +1 -0
  182. package/.next/server/chunks/[root-of-the-server]__0j8-xkl._.js +13 -0
  183. package/.next/server/chunks/[root-of-the-server]__0j8-xkl._.js.map +1 -0
  184. package/.next/server/chunks/[root-of-the-server]__0k6w___._.js +15 -0
  185. package/.next/server/chunks/[root-of-the-server]__0k6w___._.js.map +1 -0
  186. package/.next/server/chunks/[root-of-the-server]__0l7c-gn._.js +3 -0
  187. package/.next/server/chunks/[root-of-the-server]__0l7c-gn._.js.map +1 -0
  188. package/.next/server/chunks/[root-of-the-server]__0l_q72g._.js +15 -0
  189. package/.next/server/chunks/[root-of-the-server]__0l_q72g._.js.map +1 -0
  190. package/.next/server/chunks/[root-of-the-server]__0m7-xfc._.js +15 -0
  191. package/.next/server/chunks/[root-of-the-server]__0m7-xfc._.js.map +1 -0
  192. package/.next/server/chunks/[root-of-the-server]__0m_~dan._.js +15 -0
  193. package/.next/server/chunks/[root-of-the-server]__0m_~dan._.js.map +1 -0
  194. package/.next/server/chunks/[root-of-the-server]__0ntt3om._.js +3 -0
  195. package/.next/server/chunks/[root-of-the-server]__0ntt3om._.js.map +1 -0
  196. package/.next/server/chunks/[turbopack]_runtime.js +903 -0
  197. package/.next/server/chunks/[turbopack]_runtime.js.map +11 -0
  198. package/.next/server/chunks/_next-internal_server_app_api_context_aider_route_actions_0dszia..js +3 -0
  199. package/.next/server/chunks/_next-internal_server_app_api_context_aider_route_actions_0dszia..js.map +1 -0
  200. package/.next/server/chunks/_next-internal_server_app_api_context_claude_route_actions_12srkdn.js +3 -0
  201. package/.next/server/chunks/_next-internal_server_app_api_context_claude_route_actions_12srkdn.js.map +1 -0
  202. package/.next/server/chunks/_next-internal_server_app_api_context_route_actions_03ko8ta.js +3 -0
  203. package/.next/server/chunks/_next-internal_server_app_api_context_route_actions_03ko8ta.js.map +1 -0
  204. package/.next/server/chunks/_next-internal_server_app_api_context_ssh_route_actions_0~0~96d.js +3 -0
  205. package/.next/server/chunks/_next-internal_server_app_api_context_ssh_route_actions_0~0~96d.js.map +1 -0
  206. package/.next/server/chunks/_next-internal_server_app_api_files_route_actions_0x8kqqx.js +3 -0
  207. package/.next/server/chunks/_next-internal_server_app_api_files_route_actions_0x8kqqx.js.map +1 -0
  208. package/.next/server/chunks/_next-internal_server_app_api_git_route_actions_0xetuf~.js +3 -0
  209. package/.next/server/chunks/_next-internal_server_app_api_git_route_actions_0xetuf~.js.map +1 -0
  210. package/.next/server/chunks/_next-internal_server_app_api_sessions_inject_route_actions_0y2_m1_.js +3 -0
  211. package/.next/server/chunks/_next-internal_server_app_api_sessions_inject_route_actions_0y2_m1_.js.map +1 -0
  212. package/.next/server/chunks/_next-internal_server_app_api_sessions_input_route_actions_032sdjp.js +3 -0
  213. package/.next/server/chunks/_next-internal_server_app_api_sessions_input_route_actions_032sdjp.js.map +1 -0
  214. package/.next/server/chunks/_next-internal_server_app_api_sessions_launch_route_actions_0_qrmsm.js +3 -0
  215. package/.next/server/chunks/_next-internal_server_app_api_sessions_launch_route_actions_0_qrmsm.js.map +1 -0
  216. package/.next/server/chunks/_next-internal_server_app_api_sessions_route_actions_0y1t9w0.js +3 -0
  217. package/.next/server/chunks/_next-internal_server_app_api_sessions_route_actions_0y1t9w0.js.map +1 -0
  218. package/.next/server/chunks/_next-internal_server_app_api_sessions_stats_route_actions_0gc_vw-.js +3 -0
  219. package/.next/server/chunks/_next-internal_server_app_api_sessions_stats_route_actions_0gc_vw-.js.map +1 -0
  220. package/.next/server/chunks/_next-internal_server_app_api_sessions_stop_route_actions_0xg1t9k.js +3 -0
  221. package/.next/server/chunks/_next-internal_server_app_api_sessions_stop_route_actions_0xg1t9k.js.map +1 -0
  222. package/.next/server/chunks/_next-internal_server_app_favicon_ico_route_actions_095lj93.js +3 -0
  223. package/.next/server/chunks/_next-internal_server_app_favicon_ico_route_actions_095lj93.js.map +1 -0
  224. package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0ev3h.z.js +3 -0
  225. package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0ev3h.z.js.map +1 -0
  226. package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0m.429v.js +3 -0
  227. package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0m.429v.js.map +1 -0
  228. package/.next/server/chunks/ssr/[root-of-the-server]__0.kd7dh._.js +33 -0
  229. package/.next/server/chunks/ssr/[root-of-the-server]__0.kd7dh._.js.map +1 -0
  230. package/.next/server/chunks/ssr/[root-of-the-server]__089dc4i._.js +33 -0
  231. package/.next/server/chunks/ssr/[root-of-the-server]__089dc4i._.js.map +1 -0
  232. package/.next/server/chunks/ssr/[root-of-the-server]__0_7i5h0._.js +3 -0
  233. package/.next/server/chunks/ssr/[root-of-the-server]__0_7i5h0._.js.map +1 -0
  234. package/.next/server/chunks/ssr/[root-of-the-server]__0hw~y-4._.js +3 -0
  235. package/.next/server/chunks/ssr/[root-of-the-server]__0hw~y-4._.js.map +1 -0
  236. package/.next/server/chunks/ssr/[root-of-the-server]__0uk0awy._.js +3 -0
  237. package/.next/server/chunks/ssr/[root-of-the-server]__0uk0awy._.js.map +1 -0
  238. package/.next/server/chunks/ssr/[root-of-the-server]__0v73tbn._.js +3 -0
  239. package/.next/server/chunks/ssr/[root-of-the-server]__0v73tbn._.js.map +1 -0
  240. package/.next/server/chunks/ssr/[root-of-the-server]__0~y8ue.._.js +3 -0
  241. package/.next/server/chunks/ssr/[root-of-the-server]__0~y8ue.._.js.map +1 -0
  242. package/.next/server/chunks/ssr/[turbopack]_runtime.js +903 -0
  243. package/.next/server/chunks/ssr/[turbopack]_runtime.js.map +11 -0
  244. package/.next/server/chunks/ssr/_0t7oqy6._.js +3 -0
  245. package/.next/server/chunks/ssr/_0t7oqy6._.js.map +1 -0
  246. package/.next/server/chunks/ssr/_next-internal_server_app__global-error_page_actions_0k77kol.js +3 -0
  247. package/.next/server/chunks/ssr/_next-internal_server_app__global-error_page_actions_0k77kol.js.map +1 -0
  248. package/.next/server/chunks/ssr/_next-internal_server_app__not-found_page_actions_0eq97pa.js +3 -0
  249. package/.next/server/chunks/ssr/_next-internal_server_app__not-found_page_actions_0eq97pa.js.map +1 -0
  250. package/.next/server/chunks/ssr/_next-internal_server_app_page_actions_09-gtaw.js +3 -0
  251. package/.next/server/chunks/ssr/_next-internal_server_app_page_actions_09-gtaw.js.map +1 -0
  252. package/.next/server/chunks/ssr/node_modules_05l396c._.js +3 -0
  253. package/.next/server/chunks/ssr/node_modules_05l396c._.js.map +1 -0
  254. package/.next/server/chunks/ssr/node_modules_09w7yel._.js +33 -0
  255. package/.next/server/chunks/ssr/node_modules_09w7yel._.js.map +1 -0
  256. package/.next/server/chunks/ssr/node_modules_@swc_helpers_cjs__interop_require_default_cjs_11~q6fv._.js +3 -0
  257. package/.next/server/chunks/ssr/node_modules_@swc_helpers_cjs__interop_require_default_cjs_11~q6fv._.js.map +1 -0
  258. package/.next/server/chunks/ssr/node_modules_next_dist_0ppctuh._.js +19 -0
  259. package/.next/server/chunks/ssr/node_modules_next_dist_0ppctuh._.js.map +1 -0
  260. package/.next/server/chunks/ssr/node_modules_next_dist_0qoh8ry._.js +6 -0
  261. package/.next/server/chunks/ssr/node_modules_next_dist_0qoh8ry._.js.map +1 -0
  262. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_0inhx6q._.js +3 -0
  263. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_0inhx6q._.js.map +1 -0
  264. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_forbidden_0ghu-f7.js +3 -0
  265. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_forbidden_0ghu-f7.js.map +1 -0
  266. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_global-error_0lgvd_..js +3 -0
  267. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_global-error_0lgvd_..js.map +1 -0
  268. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_unauthorized_0cjv-23.js +3 -0
  269. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_unauthorized_0cjv-23.js.map +1 -0
  270. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_03-z2qq.js +4 -0
  271. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_03-z2qq.js.map +1 -0
  272. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_07vh7rm.js +4 -0
  273. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_07vh7rm.js.map +1 -0
  274. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0qp4u6g.js +4 -0
  275. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0qp4u6g.js.map +1 -0
  276. package/.next/server/functions-config-manifest.json +4 -0
  277. package/.next/server/interception-route-rewrite-manifest.js +1 -0
  278. package/.next/server/middleware-build-manifest.js +20 -0
  279. package/.next/server/middleware-manifest.json +6 -0
  280. package/.next/server/next-font-manifest.js +1 -0
  281. package/.next/server/next-font-manifest.json +15 -0
  282. package/.next/server/pages/404.html +1 -0
  283. package/.next/server/pages/500.html +1 -0
  284. package/.next/server/pages-manifest.json +4 -0
  285. package/.next/server/prefetch-hints.json +1 -0
  286. package/.next/server/server-reference-manifest.js +1 -0
  287. package/.next/server/server-reference-manifest.json +5 -0
  288. package/.next/static/chunks/03g6xpslyid3~.js +1 -0
  289. package/.next/static/chunks/03~yq9q893hmn.js +1 -0
  290. package/.next/static/chunks/07b7-dl8gh17u.js +5 -0
  291. package/.next/static/chunks/07lhk_q6pmm3r.js +1 -0
  292. package/.next/static/chunks/0dbhjjzl8qfwv.js +1 -0
  293. package/.next/static/chunks/0ewdhgxsa_h.q.js +1 -0
  294. package/.next/static/chunks/0f4at4_v-tkgj.js +1 -0
  295. package/.next/static/chunks/0fpki3y6aj230.js +31 -0
  296. package/.next/static/chunks/0ga14ztvrhau2.css +1 -0
  297. package/.next/static/chunks/0lnobx4eh3~-_.js +1 -0
  298. package/.next/static/chunks/0mej.ad_ddvf1.js +1 -0
  299. package/.next/static/chunks/0q4suv6uexpud.css +1 -0
  300. package/.next/static/chunks/0xq6bhmghl02_.js +1 -0
  301. package/.next/static/chunks/139c54uo1w7.4.css +3 -0
  302. package/.next/static/chunks/140ovxvjat1ch.js +5 -0
  303. package/.next/static/chunks/16w4~t4h7gk13.js +1 -0
  304. package/.next/static/chunks/turbopack-08fpdsd.-ns2y.js +1 -0
  305. package/.next/static/media/4fa387ec64143e14-s.0wkzw~je483f-.woff2 +0 -0
  306. package/.next/static/media/53b9e256198e5412-s.0-wfv7uh4i7h9.woff2 +0 -0
  307. package/.next/static/media/5ce348bf30bf5439-s.0zgw-jeven.3w.woff2 +0 -0
  308. package/.next/static/media/6306c77e7c8268e4-s.0rhz0arwfsn~5.woff2 +0 -0
  309. package/.next/static/media/7178b3e590c64307-s.0nx0ww8fni_q3.woff2 +0 -0
  310. package/.next/static/media/797e433ab948586e-s.p.08e28id.o-okb.woff2 +0 -0
  311. package/.next/static/media/7d817b4c03b0c5f1-s.0l76wvqk9d84w.woff2 +0 -0
  312. package/.next/static/media/8a480f0b521d4e75-s.0jzbimsg8vl84.woff2 +0 -0
  313. package/.next/static/media/bbc41e54d2fcbd21-s.0k4k9394f2q-k.woff2 +0 -0
  314. package/.next/static/media/caa3a2e1cccd8315-s.p.09~u27dqhyhd6.woff2 +0 -0
  315. package/.next/static/media/favicon.0x3dzn~oxb6tn.ico +0 -0
  316. package/.next/static/media/fef07dbb0973bf53-s.12tyk43_3sh9u.woff2 +0 -0
  317. package/.next/static/r-T5V6BKLiZ32Ai9Boe1d/_buildManifest.js +11 -0
  318. package/.next/static/r-T5V6BKLiZ32Ai9Boe1d/_clientMiddlewareManifest.js +1 -0
  319. package/.next/static/r-T5V6BKLiZ32Ai9Boe1d/_ssgManifest.js +1 -0
  320. package/.next/trace +1 -0
  321. package/.next/trace-build +1 -0
  322. package/.next/turbopack +0 -0
  323. package/.next/types/cache-life.d.ts +145 -0
  324. package/.next/types/routes.d.ts +84 -0
  325. package/.next/types/validator.ts +178 -0
  326. package/README.md +125 -0
  327. package/bin/cli.js +36 -0
  328. package/next.config.ts +7 -0
  329. package/package.json +40 -0
  330. package/public/file.svg +1 -0
  331. package/public/globe.svg +1 -0
  332. package/public/next.svg +1 -0
  333. package/public/vercel.svg +1 -0
  334. package/public/window.svg +1 -0
  335. package/src/app/api/context/aider/route.ts +113 -0
  336. package/src/app/api/context/claude/route.ts +64 -0
  337. package/src/app/api/context/route.ts +37 -0
  338. package/src/app/api/context/ssh/route.ts +88 -0
  339. package/src/app/api/files/route.ts +276 -0
  340. package/src/app/api/git/route.ts +81 -0
  341. package/src/app/api/sessions/inject/route.ts +21 -0
  342. package/src/app/api/sessions/input/route.ts +30 -0
  343. package/src/app/api/sessions/launch/route.ts +25 -0
  344. package/src/app/api/sessions/route.ts +27 -0
  345. package/src/app/api/sessions/stats/route.ts +76 -0
  346. package/src/app/api/sessions/stop/route.ts +26 -0
  347. package/src/app/components/AiderWizard.tsx +412 -0
  348. package/src/app/components/ClaudeWizard.tsx +335 -0
  349. package/src/app/components/ContextEditor.tsx +169 -0
  350. package/src/app/components/IdeLayout.tsx +2095 -0
  351. package/src/app/components/SshWizard.tsx +379 -0
  352. package/src/app/components/TerminalConsole.tsx +228 -0
  353. package/src/app/favicon.ico +0 -0
  354. package/src/app/globals.css +81 -0
  355. package/src/app/layout.tsx +30 -0
  356. package/src/app/page.module.css +330 -0
  357. package/src/app/page.tsx +581 -0
  358. package/src/lib/agents/AgentRunner.ts +86 -0
  359. package/src/lib/agents/AiderRunner.ts +261 -0
  360. package/src/lib/agents/ClaudeRunner.ts +148 -0
  361. package/src/lib/agents/ContextManager.ts +142 -0
  362. package/src/lib/agents/DockerRunner.ts +182 -0
  363. package/src/lib/agents/MockRunner.ts +126 -0
  364. package/src/lib/agents/SSHRunner.ts +180 -0
  365. package/src/lib/agents/SessionManager.ts +147 -0
  366. package/src/lib/agents/SessionPersister.ts +85 -0
  367. package/src/lib/agents/WebSocketServer.ts +118 -0
  368. package/tsconfig.json +34 -0
@@ -0,0 +1,28 @@
1
+ module.exports=[54799,(e,t,s)=>{t.exports=e.x("crypto",()=>require("crypto"))},27699,(e,t,s)=>{t.exports=e.x("events",()=>require("events"))},24836,(e,t,s)=>{t.exports=e.x("https",()=>require("https"))},21517,(e,t,s)=>{t.exports=e.x("http",()=>require("http"))},4446,(e,t,s)=>{t.exports=e.x("net",()=>require("net"))},55004,(e,t,s)=>{t.exports=e.x("tls",()=>require("tls"))},88947,(e,t,s)=>{t.exports=e.x("stream",()=>require("stream"))},92509,(e,t,s)=>{t.exports=e.x("url",()=>require("url"))},6461,(e,t,s)=>{t.exports=e.x("zlib",()=>require("zlib"))},74836,(e,t,s)=>{"use strict";let r=["nodebuffer","arraybuffer","fragments"],i="u">typeof Blob;i&&r.push("blob"),t.exports={BINARY_TYPES:r,CLOSE_TIMEOUT:3e4,EMPTY_BUFFER:Buffer.alloc(0),GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",hasBlob:i,kForOnEventAttribute:Symbol("kIsForOnEventAttribute"),kListener:Symbol("kListener"),kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),NOOP:()=>{}}},97970,(e,t,s)=>{"use strict";let{EMPTY_BUFFER:r}=e.r(74836),i=Buffer[Symbol.species];function o(e,t,s,r,i){for(let o=0;o<i;o++)s[r+o]=e[o]^t[3&o]}function n(e,t){for(let s=0;s<e.length;s++)e[s]^=t[3&s]}function a(e){let t;return(a.readOnly=!0,Buffer.isBuffer(e))?e:(e instanceof ArrayBuffer?t=new i(e):ArrayBuffer.isView(e)?t=new i(e.buffer,e.byteOffset,e.byteLength):(t=Buffer.from(e),a.readOnly=!1),t)}if(t.exports={concat:function(e,t){if(0===e.length)return r;if(1===e.length)return e[0];let s=Buffer.allocUnsafe(t),o=0;for(let t=0;t<e.length;t++){let r=e[t];s.set(r,o),o+=r.length}return o<t?new i(s.buffer,s.byteOffset,o):s},mask:o,toArrayBuffer:function(e){return e.length===e.buffer.byteLength?e.buffer:e.buffer.slice(e.byteOffset,e.byteOffset+e.length)},toBuffer:a,unmask:n},!process.env.WS_NO_BUFFER_UTIL)try{let e=(()=>{let e=Error("Cannot find module 'bufferutil'");throw e.code="MODULE_NOT_FOUND",e})();t.exports.mask=function(t,s,r,i,n){n<48?o(t,s,r,i,n):e.mask(t,s,r,i,n)},t.exports.unmask=function(t,s){t.length<32?n(t,s):e.unmask(t,s)}}catch(e){}},62048,(e,t,s)=>{"use strict";let r=Symbol("kDone"),i=Symbol("kRun");t.exports=class{constructor(e){this[r]=()=>{this.pending--,this[i]()},this.concurrency=e||1/0,this.jobs=[],this.pending=0}add(e){this.jobs.push(e),this[i]()}[i](){if(this.pending!==this.concurrency&&this.jobs.length){let e=this.jobs.shift();this.pending++,e(this[r])}}}},80295,(e,t,s)=>{"use strict";let r,i=e.r(6461),o=e.r(97970),n=e.r(62048),{kStatusCode:a}=e.r(74836),l=Buffer[Symbol.species],h=Buffer.from([0,0,255,255]),c=Symbol("permessage-deflate"),d=Symbol("total-length"),p=Symbol("callback"),u=Symbol("buffers"),f=Symbol("error");function m(e){this[u].push(e),this[d]+=e.length}function _(e){(this[d]+=e.length,this[c]._maxPayload<1||this[d]<=this[c]._maxPayload)?this[u].push(e):(this[f]=RangeError("Max payload size exceeded"),this[f].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH",this[f][a]=1009,this.removeListener("data",_),this.reset())}function g(e){(this[c]._inflate=null,this[f])?this[p](this[f]):(e[a]=1007,this[p](e))}t.exports=class{constructor(e){this._options=e||{},this._threshold=void 0!==this._options.threshold?this._options.threshold:1024,this._maxPayload=0|this._options.maxPayload,this._isServer=!!this._options.isServer,this._deflate=null,this._inflate=null,this.params=null,r||(r=new n(void 0!==this._options.concurrencyLimit?this._options.concurrencyLimit:10))}static get extensionName(){return"permessage-deflate"}offer(){let e={};return this._options.serverNoContextTakeover&&(e.server_no_context_takeover=!0),this._options.clientNoContextTakeover&&(e.client_no_context_takeover=!0),this._options.serverMaxWindowBits&&(e.server_max_window_bits=this._options.serverMaxWindowBits),this._options.clientMaxWindowBits?e.client_max_window_bits=this._options.clientMaxWindowBits:null==this._options.clientMaxWindowBits&&(e.client_max_window_bits=!0),e}accept(e){return e=this.normalizeParams(e),this.params=this._isServer?this.acceptAsServer(e):this.acceptAsClient(e),this.params}cleanup(){if(this._inflate&&(this._inflate.close(),this._inflate=null),this._deflate){let e=this._deflate[p];this._deflate.close(),this._deflate=null,e&&e(Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(e){let t=this._options,s=e.find(e=>(!1!==t.serverNoContextTakeover||!e.server_no_context_takeover)&&(!e.server_max_window_bits||!1!==t.serverMaxWindowBits&&("number"!=typeof t.serverMaxWindowBits||!(t.serverMaxWindowBits>e.server_max_window_bits)))&&("number"!=typeof t.clientMaxWindowBits||!!e.client_max_window_bits));if(!s)throw Error("None of the extension offers can be accepted");return t.serverNoContextTakeover&&(s.server_no_context_takeover=!0),t.clientNoContextTakeover&&(s.client_no_context_takeover=!0),"number"==typeof t.serverMaxWindowBits&&(s.server_max_window_bits=t.serverMaxWindowBits),"number"==typeof t.clientMaxWindowBits?s.client_max_window_bits=t.clientMaxWindowBits:(!0===s.client_max_window_bits||!1===t.clientMaxWindowBits)&&delete s.client_max_window_bits,s}acceptAsClient(e){let t=e[0];if(!1===this._options.clientNoContextTakeover&&t.client_no_context_takeover)throw Error('Unexpected parameter "client_no_context_takeover"');if(t.client_max_window_bits){if(!1===this._options.clientMaxWindowBits||"number"==typeof this._options.clientMaxWindowBits&&t.client_max_window_bits>this._options.clientMaxWindowBits)throw Error('Unexpected or invalid parameter "client_max_window_bits"')}else"number"==typeof this._options.clientMaxWindowBits&&(t.client_max_window_bits=this._options.clientMaxWindowBits);return t}normalizeParams(e){return e.forEach(e=>{Object.keys(e).forEach(t=>{let s=e[t];if(s.length>1)throw Error(`Parameter "${t}" must have only a single value`);if(s=s[0],"client_max_window_bits"===t){if(!0!==s){let e=+s;if(!Number.isInteger(e)||e<8||e>15)throw TypeError(`Invalid value for parameter "${t}": ${s}`);s=e}else if(!this._isServer)throw TypeError(`Invalid value for parameter "${t}": ${s}`)}else if("server_max_window_bits"===t){let e=+s;if(!Number.isInteger(e)||e<8||e>15)throw TypeError(`Invalid value for parameter "${t}": ${s}`);s=e}else if("client_no_context_takeover"===t||"server_no_context_takeover"===t){if(!0!==s)throw TypeError(`Invalid value for parameter "${t}": ${s}`)}else throw Error(`Unknown parameter "${t}"`);e[t]=s})}),e}decompress(e,t,s){r.add(r=>{this._decompress(e,t,(e,t)=>{r(),s(e,t)})})}compress(e,t,s){r.add(r=>{this._compress(e,t,(e,t)=>{r(),s(e,t)})})}_decompress(e,t,s){let r=this._isServer?"client":"server";if(!this._inflate){let e=`${r}_max_window_bits`,t="number"!=typeof this.params[e]?i.Z_DEFAULT_WINDOWBITS:this.params[e];this._inflate=i.createInflateRaw({...this._options.zlibInflateOptions,windowBits:t}),this._inflate[c]=this,this._inflate[d]=0,this._inflate[u]=[],this._inflate.on("error",g),this._inflate.on("data",_)}this._inflate[p]=s,this._inflate.write(e),t&&this._inflate.write(h),this._inflate.flush(()=>{let e=this._inflate[f];if(e){this._inflate.close(),this._inflate=null,s(e);return}let i=o.concat(this._inflate[u],this._inflate[d]);this._inflate._readableState.endEmitted?(this._inflate.close(),this._inflate=null):(this._inflate[d]=0,this._inflate[u]=[],t&&this.params[`${r}_no_context_takeover`]&&this._inflate.reset()),s(null,i)})}_compress(e,t,s){let r=this._isServer?"server":"client";if(!this._deflate){let e=`${r}_max_window_bits`,t="number"!=typeof this.params[e]?i.Z_DEFAULT_WINDOWBITS:this.params[e];this._deflate=i.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:t}),this._deflate[d]=0,this._deflate[u]=[],this._deflate.on("data",m)}this._deflate[p]=s,this._deflate.write(e),this._deflate.flush(i.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let e=o.concat(this._deflate[u],this._deflate[d]);t&&(e=new l(e.buffer,e.byteOffset,e.length-4)),this._deflate[p]=null,this._deflate[d]=0,this._deflate[u]=[],t&&this.params[`${r}_no_context_takeover`]&&this._deflate.reset(),s(null,e)})}}},874,(e,t,s)=>{t.exports=e.x("buffer",()=>require("buffer"))},58739,(e,t,s)=>{"use strict";let{isUtf8:r}=e.r(874),{hasBlob:i}=e.r(74836);function o(e){let t=e.length,s=0;for(;s<t;)if((128&e[s])==0)s++;else if((224&e[s])==192){if(s+1===t||(192&e[s+1])!=128||(254&e[s])==192)return!1;s+=2}else if((240&e[s])==224){if(s+2>=t||(192&e[s+1])!=128||(192&e[s+2])!=128||224===e[s]&&(224&e[s+1])==128||237===e[s]&&(224&e[s+1])==160)return!1;s+=3}else{if((248&e[s])!=240||s+3>=t||(192&e[s+1])!=128||(192&e[s+2])!=128||(192&e[s+3])!=128||240===e[s]&&(240&e[s+1])==128||244===e[s]&&e[s+1]>143||e[s]>244)return!1;s+=4}return!0}if(t.exports={isBlob:function(e){return i&&"object"==typeof e&&"function"==typeof e.arrayBuffer&&"string"==typeof e.type&&"function"==typeof e.stream&&("Blob"===e[Symbol.toStringTag]||"File"===e[Symbol.toStringTag])},isValidStatusCode:function(e){return e>=1e3&&e<=1014&&1004!==e&&1005!==e&&1006!==e||e>=3e3&&e<=4999},isValidUTF8:o,tokenChars:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0]},r)t.exports.isValidUTF8=function(e){return e.length<24?o(e):r(e)};else if(!process.env.WS_NO_UTF_8_VALIDATE)try{let e=(()=>{let e=Error("Cannot find module 'utf-8-validate'");throw e.code="MODULE_NOT_FOUND",e})();t.exports.isValidUTF8=function(t){return t.length<32?o(t):e(t)}}catch(e){}},29485,(e,t,s)=>{"use strict";let{Writable:r}=e.r(88947),i=e.r(80295),{BINARY_TYPES:o,EMPTY_BUFFER:n,kStatusCode:a,kWebSocket:l}=e.r(74836),{concat:h,toArrayBuffer:c,unmask:d}=e.r(97970),{isValidStatusCode:p,isValidUTF8:u}=e.r(58739),f=Buffer[Symbol.species];t.exports=class extends r{constructor(e={}){super(),this._allowSynchronousEvents=void 0===e.allowSynchronousEvents||e.allowSynchronousEvents,this._binaryType=e.binaryType||o[0],this._extensions=e.extensions||{},this._isServer=!!e.isServer,this._maxBufferedChunks=0|e.maxBufferedChunks,this._maxFragments=0|e.maxFragments,this._maxPayload=0|e.maxPayload,this._skipUTF8Validation=!!e.skipUTF8Validation,this[l]=void 0,this._bufferedBytes=0,this._buffers=[],this._compressed=!1,this._payloadLength=0,this._mask=void 0,this._fragmented=0,this._masked=!1,this._fin=!1,this._opcode=0,this._totalPayloadLength=0,this._messageLength=0,this._fragments=[],this._errored=!1,this._loop=!1,this._state=0}_write(e,t,s){return 8===this._opcode&&0==this._state?s():this._maxBufferedChunks>0&&this._buffers.length>=this._maxBufferedChunks?void s(this.createError(RangeError,"Too many buffered chunks",!1,1008,"WS_ERR_TOO_MANY_BUFFERED_PARTS")):void(this._bufferedBytes+=e.length,this._buffers.push(e),this.startLoop(s))}consume(e){if(this._bufferedBytes-=e,e===this._buffers[0].length)return this._buffers.shift();if(e<this._buffers[0].length){let t=this._buffers[0];return this._buffers[0]=new f(t.buffer,t.byteOffset+e,t.length-e),new f(t.buffer,t.byteOffset,e)}let t=Buffer.allocUnsafe(e);do{let s=this._buffers[0],r=t.length-e;e>=s.length?t.set(this._buffers.shift(),r):(t.set(new Uint8Array(s.buffer,s.byteOffset,e),r),this._buffers[0]=new f(s.buffer,s.byteOffset+e,s.length-e)),e-=s.length}while(e>0)return t}startLoop(e){this._loop=!0;do switch(this._state){case 0:this.getInfo(e);break;case 1:this.getPayloadLength16(e);break;case 2:this.getPayloadLength64(e);break;case 3:this.getMask();break;case 4:this.getData(e);break;case 5:case 6:this._loop=!1;return}while(this._loop)this._errored||e()}getInfo(e){if(this._bufferedBytes<2){this._loop=!1;return}let t=this.consume(2);if((48&t[0])!=0)return void e(this.createError(RangeError,"RSV2 and RSV3 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3"));let s=(64&t[0])==64;if(s&&!this._extensions[i.extensionName])return void e(this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1"));if(this._fin=(128&t[0])==128,this._opcode=15&t[0],this._payloadLength=127&t[1],0===this._opcode){if(s)return void e(this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1"));if(!this._fragmented)return void e(this.createError(RangeError,"invalid opcode 0",!0,1002,"WS_ERR_INVALID_OPCODE"));this._opcode=this._fragmented}else if(1===this._opcode||2===this._opcode){if(this._fragmented)return void e(this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE"));this._compressed=s}else{if(!(this._opcode>7)||!(this._opcode<11))return void e(this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE"));if(!this._fin)return void e(this.createError(RangeError,"FIN must be set",!0,1002,"WS_ERR_EXPECTED_FIN"));if(s)return void e(this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1"));if(this._payloadLength>125||8===this._opcode&&1===this._payloadLength)return void e(this.createError(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH"))}if(this._fin||this._fragmented||(this._fragmented=this._opcode),this._masked=(128&t[1])==128,this._isServer){if(!this._masked)return void e(this.createError(RangeError,"MASK must be set",!0,1002,"WS_ERR_EXPECTED_MASK"))}else if(this._masked)return void e(this.createError(RangeError,"MASK must be clear",!0,1002,"WS_ERR_UNEXPECTED_MASK"));126===this._payloadLength?this._state=1:127===this._payloadLength?this._state=2:this.haveLength(e)}getPayloadLength16(e){if(this._bufferedBytes<2){this._loop=!1;return}this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength(e)}getPayloadLength64(e){if(this._bufferedBytes<8){this._loop=!1;return}let t=this.consume(8),s=t.readUInt32BE(0);s>2097151?e(this.createError(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH")):(this._payloadLength=0x100000000*s+t.readUInt32BE(4),this.haveLength(e))}haveLength(e){this._payloadLength&&this._opcode<8&&(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0)?e(this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH")):this._masked?this._state=3:this._state=4}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=4}getData(e){let t=n;if(this._payloadLength){if(this._bufferedBytes<this._payloadLength){this._loop=!1;return}t=this.consume(this._payloadLength),this._masked&&(this._mask[0]|this._mask[1]|this._mask[2]|this._mask[3])!=0&&d(t,this._mask)}if(this._opcode>7)return void this.controlMessage(t,e);if(this._compressed){this._state=5,this.decompress(t,e);return}if(t.length){if(this._maxFragments>0&&this._fragments.length>=this._maxFragments)return void e(this.createError(RangeError,"Too many message fragments",!1,1008,"WS_ERR_TOO_MANY_BUFFERED_PARTS"));this._messageLength=this._totalPayloadLength,this._fragments.push(t)}this.dataMessage(e)}decompress(e,t){this._extensions[i.extensionName].decompress(e,this._fin,(e,s)=>{if(e)return t(e);if(s.length){if(this._messageLength+=s.length,this._messageLength>this._maxPayload&&this._maxPayload>0)return void t(this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH"));if(this._maxFragments>0&&this._fragments.length>=this._maxFragments)return void t(this.createError(RangeError,"Too many message fragments",!1,1008,"WS_ERR_TOO_MANY_BUFFERED_PARTS"));this._fragments.push(s)}this.dataMessage(t),0===this._state&&this.startLoop(t)})}dataMessage(e){if(!this._fin){this._state=0;return}let t=this._messageLength,s=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],2===this._opcode){let r;r="nodebuffer"===this._binaryType?h(s,t):"arraybuffer"===this._binaryType?c(h(s,t)):"blob"===this._binaryType?new Blob(s):s,this._allowSynchronousEvents?(this.emit("message",r,!0),this._state=0):(this._state=6,setImmediate(()=>{this.emit("message",r,!0),this._state=0,this.startLoop(e)}))}else{let r=h(s,t);if(!this._skipUTF8Validation&&!u(r))return void e(this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8"));5===this._state||this._allowSynchronousEvents?(this.emit("message",r,!1),this._state=0):(this._state=6,setImmediate(()=>{this.emit("message",r,!1),this._state=0,this.startLoop(e)}))}}controlMessage(e,t){if(8===this._opcode){if(0===e.length)this._loop=!1,this.emit("conclude",1005,n),this.end();else{let s=e.readUInt16BE(0);if(!p(s))return void t(this.createError(RangeError,`invalid status code ${s}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE"));let r=new f(e.buffer,e.byteOffset+2,e.length-2);if(!this._skipUTF8Validation&&!u(r))return void t(this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8"));this._loop=!1,this.emit("conclude",s,r),this.end()}this._state=0;return}this._allowSynchronousEvents?(this.emit(9===this._opcode?"ping":"pong",e),this._state=0):(this._state=6,setImmediate(()=>{this.emit(9===this._opcode?"ping":"pong",e),this._state=0,this.startLoop(t)}))}createError(e,t,s,r,i){this._loop=!1,this._errored=!0;let o=new e(s?`Invalid WebSocket frame: ${t}`:t);return Error.captureStackTrace(o,this.createError),o.code=i,o[a]=r,o}}},16735,(e,t,s)=>{"use strict";let r,{Duplex:i}=e.r(88947),{randomFillSync:o}=e.r(54799),{types:{isUint8Array:n}}=e.r(24361),a=e.r(80295),{EMPTY_BUFFER:l,kWebSocket:h,NOOP:c}=e.r(74836),{isBlob:d,isValidStatusCode:p}=e.r(58739),{mask:u,toBuffer:f}=e.r(97970),m=Symbol("kByteLength"),_=Buffer.alloc(4),g=8192;class y{constructor(e,t,s){this._extensions=t||{},s&&(this._generateMask=s,this._maskBuffer=Buffer.alloc(4)),this._socket=e,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._queue=[],this._state=0,this.onerror=c,this[h]=void 0}static frame(e,t){let s,i,n=!1,a=2,l=!1;t.mask&&(s=t.maskBuffer||_,t.generateMask?t.generateMask(s):(8192===g&&(void 0===r&&(r=Buffer.alloc(8192)),o(r,0,8192),g=0),s[0]=r[g++],s[1]=r[g++],s[2]=r[g++],s[3]=r[g++]),l=(s[0]|s[1]|s[2]|s[3])==0,a=6),"string"==typeof e?i=(!t.mask||l)&&void 0!==t[m]?t[m]:(e=Buffer.from(e)).length:(i=e.length,n=t.mask&&t.readOnly&&!l);let h=i;i>=65536?(a+=8,h=127):i>125&&(a+=2,h=126);let c=Buffer.allocUnsafe(n?i+a:a);return(c[0]=t.fin?128|t.opcode:t.opcode,t.rsv1&&(c[0]|=64),c[1]=h,126===h?c.writeUInt16BE(i,2):127===h&&(c[2]=c[3]=0,c.writeUIntBE(i,4,6)),t.mask)?(c[1]|=128,c[a-4]=s[0],c[a-3]=s[1],c[a-2]=s[2],c[a-1]=s[3],l)?[c,e]:n?(u(e,s,c,a,i),[c]):(u(e,s,e,0,i),[c,e]):[c,e]}close(e,t,s,r){let i;if(void 0===e)i=l;else if("number"==typeof e&&p(e))if(void 0!==t&&t.length){let s=Buffer.byteLength(t);if(s>123)throw RangeError("The message must not be greater than 123 bytes");if((i=Buffer.allocUnsafe(2+s)).writeUInt16BE(e,0),"string"==typeof t)i.write(t,2);else if(n(t))i.set(t,2);else throw TypeError("Second argument must be a string or a Uint8Array")}else(i=Buffer.allocUnsafe(2)).writeUInt16BE(e,0);else throw TypeError("First argument must be a valid error code number");let o={[m]:i.length,fin:!0,generateMask:this._generateMask,mask:s,maskBuffer:this._maskBuffer,opcode:8,readOnly:!1,rsv1:!1};0!==this._state?this.enqueue([this.dispatch,i,!1,o,r]):this.sendFrame(y.frame(i,o),r)}ping(e,t,s){let r,i;if("string"==typeof e?(r=Buffer.byteLength(e),i=!1):d(e)?(r=e.size,i=!1):(r=(e=f(e)).length,i=f.readOnly),r>125)throw RangeError("The data size must not be greater than 125 bytes");let o={[m]:r,fin:!0,generateMask:this._generateMask,mask:t,maskBuffer:this._maskBuffer,opcode:9,readOnly:i,rsv1:!1};d(e)?0!==this._state?this.enqueue([this.getBlobData,e,!1,o,s]):this.getBlobData(e,!1,o,s):0!==this._state?this.enqueue([this.dispatch,e,!1,o,s]):this.sendFrame(y.frame(e,o),s)}pong(e,t,s){let r,i;if("string"==typeof e?(r=Buffer.byteLength(e),i=!1):d(e)?(r=e.size,i=!1):(r=(e=f(e)).length,i=f.readOnly),r>125)throw RangeError("The data size must not be greater than 125 bytes");let o={[m]:r,fin:!0,generateMask:this._generateMask,mask:t,maskBuffer:this._maskBuffer,opcode:10,readOnly:i,rsv1:!1};d(e)?0!==this._state?this.enqueue([this.getBlobData,e,!1,o,s]):this.getBlobData(e,!1,o,s):0!==this._state?this.enqueue([this.dispatch,e,!1,o,s]):this.sendFrame(y.frame(e,o),s)}send(e,t,s){let r,i,o=this._extensions[a.extensionName],n=t.binary?2:1,l=t.compress;"string"==typeof e?(r=Buffer.byteLength(e),i=!1):d(e)?(r=e.size,i=!1):(r=(e=f(e)).length,i=f.readOnly),this._firstFragment?(this._firstFragment=!1,l&&o&&o.params[o._isServer?"server_no_context_takeover":"client_no_context_takeover"]&&(l=r>=o._threshold),this._compress=l):(l=!1,n=0),t.fin&&(this._firstFragment=!0);let h={[m]:r,fin:t.fin,generateMask:this._generateMask,mask:t.mask,maskBuffer:this._maskBuffer,opcode:n,readOnly:i,rsv1:l};d(e)?0!==this._state?this.enqueue([this.getBlobData,e,this._compress,h,s]):this.getBlobData(e,this._compress,h,s):0!==this._state?this.enqueue([this.dispatch,e,this._compress,h,s]):this.dispatch(e,this._compress,h,s)}getBlobData(e,t,s,r){this._bufferedBytes+=s[m],this._state=2,e.arrayBuffer().then(e=>{if(this._socket.destroyed){let e=Error("The socket was closed while the blob was being read");process.nextTick(b,this,e,r);return}this._bufferedBytes-=s[m];let i=f(e);t?this.dispatch(i,t,s,r):(this._state=0,this.sendFrame(y.frame(i,s),r),this.dequeue())}).catch(e=>{process.nextTick(S,this,e,r)})}dispatch(e,t,s,r){if(!t)return void this.sendFrame(y.frame(e,s),r);let i=this._extensions[a.extensionName];this._bufferedBytes+=s[m],this._state=1,i.compress(e,s.fin,(e,t)=>{this._socket.destroyed?b(this,Error("The socket was closed while data was being compressed"),r):(this._bufferedBytes-=s[m],this._state=0,s.readOnly=!1,this.sendFrame(y.frame(t,s),r),this.dequeue())})}dequeue(){for(;0===this._state&&this._queue.length;){let e=this._queue.shift();this._bufferedBytes-=e[3][m],Reflect.apply(e[0],this,e.slice(1))}}enqueue(e){this._bufferedBytes+=e[3][m],this._queue.push(e)}sendFrame(e,t){2===e.length?(this._socket.cork(),this._socket.write(e[0]),this._socket.write(e[1],t),this._socket.uncork()):this._socket.write(e[0],t)}}function b(e,t,s){"function"==typeof s&&s(t);for(let s=0;s<e._queue.length;s++){let r=e._queue[s],i=r[r.length-1];"function"==typeof i&&i(t)}}function S(e,t,s){b(e,t,s),e.onerror(t)}t.exports=y},70494,(e,t,s)=>{"use strict";let{kForOnEventAttribute:r,kListener:i}=e.r(74836),o=Symbol("kCode"),n=Symbol("kData"),a=Symbol("kError"),l=Symbol("kMessage"),h=Symbol("kReason"),c=Symbol("kTarget"),d=Symbol("kType"),p=Symbol("kWasClean");class u{constructor(e){this[c]=null,this[d]=e}get target(){return this[c]}get type(){return this[d]}}Object.defineProperty(u.prototype,"target",{enumerable:!0}),Object.defineProperty(u.prototype,"type",{enumerable:!0});class f extends u{constructor(e,t={}){super(e),this[o]=void 0===t.code?0:t.code,this[h]=void 0===t.reason?"":t.reason,this[p]=void 0!==t.wasClean&&t.wasClean}get code(){return this[o]}get reason(){return this[h]}get wasClean(){return this[p]}}Object.defineProperty(f.prototype,"code",{enumerable:!0}),Object.defineProperty(f.prototype,"reason",{enumerable:!0}),Object.defineProperty(f.prototype,"wasClean",{enumerable:!0});class m extends u{constructor(e,t={}){super(e),this[a]=void 0===t.error?null:t.error,this[l]=void 0===t.message?"":t.message}get error(){return this[a]}get message(){return this[l]}}Object.defineProperty(m.prototype,"error",{enumerable:!0}),Object.defineProperty(m.prototype,"message",{enumerable:!0});class _ extends u{constructor(e,t={}){super(e),this[n]=void 0===t.data?null:t.data}get data(){return this[n]}}function g(e,t,s){"object"==typeof e&&e.handleEvent?e.handleEvent.call(e,s):e.call(t,s)}Object.defineProperty(_.prototype,"data",{enumerable:!0}),t.exports={CloseEvent:f,ErrorEvent:m,Event:u,EventTarget:{addEventListener(e,t,s={}){let o;for(let o of this.listeners(e))if(!s[r]&&o[i]===t&&!o[r])return;if("message"===e)o=function(e,s){let r=new _("message",{data:s?e:e.toString()});r[c]=this,g(t,this,r)};else if("close"===e)o=function(e,s){let r=new f("close",{code:e,reason:s.toString(),wasClean:this._closeFrameReceived&&this._closeFrameSent});r[c]=this,g(t,this,r)};else if("error"===e)o=function(e){let s=new m("error",{error:e,message:e.message});s[c]=this,g(t,this,s)};else{if("open"!==e)return;o=function(){let e=new u("open");e[c]=this,g(t,this,e)}}o[r]=!!s[r],o[i]=t,s.once?this.once(e,o):this.on(e,o)},removeEventListener(e,t){for(let s of this.listeners(e))if(s[i]===t&&!s[r]){this.removeListener(e,s);break}}},MessageEvent:_}},96903,(e,t,s)=>{"use strict";let{tokenChars:r}=e.r(58739);function i(e,t,s){void 0===e[t]?e[t]=[s]:e[t].push(s)}t.exports={format:function(e){return Object.keys(e).map(t=>{let s=e[t];return Array.isArray(s)||(s=[s]),s.map(e=>[t].concat(Object.keys(e).map(t=>{let s=e[t];return Array.isArray(s)||(s=[s]),s.map(e=>!0===e?t:`${t}=${e}`).join("; ")})).join("; ")).join(", ")}).join(", ")},parse:function(e){let t,s,o=Object.create(null),n=Object.create(null),a=!1,l=!1,h=!1,c=-1,d=-1,p=-1,u=0;for(;u<e.length;u++)if(d=e.charCodeAt(u),void 0===t)if(-1===p&&1===r[d])-1===c&&(c=u);else if(0!==u&&(32===d||9===d))-1===p&&-1!==c&&(p=u);else if(59===d||44===d){if(-1===c)throw SyntaxError(`Unexpected character at index ${u}`);-1===p&&(p=u);let s=e.slice(c,p);44===d?(i(o,s,n),n=Object.create(null)):t=s,c=p=-1}else throw SyntaxError(`Unexpected character at index ${u}`);else if(void 0===s)if(-1===p&&1===r[d])-1===c&&(c=u);else if(32===d||9===d)-1===p&&-1!==c&&(p=u);else if(59===d||44===d){if(-1===c)throw SyntaxError(`Unexpected character at index ${u}`);-1===p&&(p=u),i(n,e.slice(c,p),!0),44===d&&(i(o,t,n),n=Object.create(null),t=void 0),c=p=-1}else if(61===d&&-1!==c&&-1===p)s=e.slice(c,u),c=p=-1;else throw SyntaxError(`Unexpected character at index ${u}`);else if(l){if(1!==r[d])throw SyntaxError(`Unexpected character at index ${u}`);-1===c?c=u:a||(a=!0),l=!1}else if(h)if(1===r[d])-1===c&&(c=u);else if(34===d&&-1!==c)h=!1,p=u;else if(92===d)l=!0;else throw SyntaxError(`Unexpected character at index ${u}`);else if(34===d&&61===e.charCodeAt(u-1))h=!0;else if(-1===p&&1===r[d])-1===c&&(c=u);else if(-1!==c&&(32===d||9===d))-1===p&&(p=u);else if(59===d||44===d){if(-1===c)throw SyntaxError(`Unexpected character at index ${u}`);-1===p&&(p=u);let r=e.slice(c,p);a&&(r=r.replace(/\\/g,""),a=!1),i(n,s,r),44===d&&(i(o,t,n),n=Object.create(null),t=void 0),s=void 0,c=p=-1}else throw SyntaxError(`Unexpected character at index ${u}`);if(-1===c||h||32===d||9===d)throw SyntaxError("Unexpected end of input");-1===p&&(p=u);let f=e.slice(c,p);return void 0===t?i(o,f,n):(void 0===s?i(n,f,!0):a?i(n,s,f.replace(/\\/g,"")):i(n,s,f),i(o,t,n)),o}}},35065,(e,t,s)=>{"use strict";let r=e.r(27699),i=e.r(24836),o=e.r(21517),n=e.r(4446),a=e.r(55004),{randomBytes:l,createHash:h}=e.r(54799),{Duplex:c,Readable:d}=e.r(88947),{URL:p}=e.r(92509),u=e.r(80295),f=e.r(29485),m=e.r(16735),{isBlob:_}=e.r(58739),{BINARY_TYPES:g,CLOSE_TIMEOUT:y,EMPTY_BUFFER:b,GUID:S,kForOnEventAttribute:x,kListener:k,kStatusCode:v,kWebSocket:w,NOOP:E}=e.r(74836),{EventTarget:{addEventListener:L,removeEventListener:O}}=e.r(70494),{format:P,parse:T}=e.r(96903),{toBuffer:C}=e.r(97970),A=Symbol("kAborted"),N=[8,13],R=["CONNECTING","OPEN","CLOSING","CLOSED"],I=/^[!#$%&'*+\-.0-9A-Z^_`|a-z~]+$/;class M extends r{constructor(e,t,s){super(),this._binaryType=g[0],this._closeCode=1006,this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage=b,this._closeTimer=null,this._errorEmitted=!1,this._extensions={},this._paused=!1,this._protocol="",this._readyState=M.CONNECTING,this._receiver=null,this._sender=null,this._socket=null,null!==e?(this._bufferedAmount=0,this._isServer=!1,this._redirects=0,void 0===t?t=[]:Array.isArray(t)||("object"==typeof t&&null!==t?(s=t,t=[]):t=[t]),function e(t,s,r,n){let a,c,d,f,m={allowSynchronousEvents:!0,autoPong:!0,closeTimeout:y,protocolVersion:N[1],maxBufferedChunks:1048576,maxFragments:131072,maxPayload:0x6400000,skipUTF8Validation:!1,perMessageDeflate:!0,followRedirects:!1,maxRedirects:10,...n,socketPath:void 0,hostname:void 0,protocol:void 0,timeout:void 0,method:"GET",host:void 0,path:void 0,port:void 0};if(t._autoPong=m.autoPong,t._closeTimeout=m.closeTimeout,!N.includes(m.protocolVersion))throw RangeError(`Unsupported protocol version: ${m.protocolVersion} (supported versions: ${N.join(", ")})`);if(s instanceof p)a=s;else try{a=new p(s)}catch{throw SyntaxError(`Invalid URL: ${s}`)}"http:"===a.protocol?a.protocol="ws:":"https:"===a.protocol&&(a.protocol="wss:"),t._url=a.href;let _="wss:"===a.protocol,g="ws+unix:"===a.protocol;if("ws:"===a.protocol||_||g?g&&!a.pathname?c="The URL's pathname is empty":a.hash&&(c="The URL contains a fragment identifier"):c='The URL\'s protocol must be one of "ws:", "wss:", "http:", "https:", or "ws+unix:"',c){let e=SyntaxError(c);if(0!==t._redirects)return void U(t,e);throw e}let b=_?443:80,x=l(16).toString("base64"),k=_?i.request:o.request,v=new Set;if(m.createConnection=m.createConnection||(_?B:D),m.defaultPort=m.defaultPort||b,m.port=a.port||b,m.host=a.hostname.startsWith("[")?a.hostname.slice(1,-1):a.hostname,m.headers={...m.headers,"Sec-WebSocket-Version":m.protocolVersion,"Sec-WebSocket-Key":x,Connection:"Upgrade",Upgrade:"websocket"},m.path=a.pathname+a.search,m.timeout=m.handshakeTimeout,m.perMessageDeflate&&(d=new u({...m.perMessageDeflate,isServer:!1,maxPayload:m.maxPayload}),m.headers["Sec-WebSocket-Extensions"]=P({[u.extensionName]:d.offer()})),r.length){for(let e of r){if("string"!=typeof e||!I.test(e)||v.has(e))throw SyntaxError("An invalid or duplicated subprotocol was specified");v.add(e)}m.headers["Sec-WebSocket-Protocol"]=r.join(",")}if(m.origin&&(m.protocolVersion<13?m.headers["Sec-WebSocket-Origin"]=m.origin:m.headers.Origin=m.origin),(a.username||a.password)&&(m.auth=`${a.username}:${a.password}`),g){let e=m.path.split(":");m.socketPath=e[0],m.path=e[1]}if(m.followRedirects){if(0===t._redirects){t._originalIpc=g,t._originalSecure=_,t._originalHostOrSocketPath=g?m.socketPath:a.host;let e=n&&n.headers;if(n={...n,headers:{}},e)for(let[t,s]of Object.entries(e))n.headers[t.toLowerCase()]=s}else if(0===t.listenerCount("redirect")){let e=g?!!t._originalIpc&&m.socketPath===t._originalHostOrSocketPath:!t._originalIpc&&a.host===t._originalHostOrSocketPath;e&&(!t._originalSecure||_)||(delete m.headers.authorization,delete m.headers.cookie,e||delete m.headers.host,m.auth=void 0)}m.auth&&!n.headers.authorization&&(n.headers.authorization="Basic "+Buffer.from(m.auth).toString("base64")),f=t._req=k(m),t._redirects&&t.emit("redirect",t.url,f)}else f=t._req=k(m);m.timeout&&f.on("timeout",()=>{F(t,f,"Opening handshake has timed out")}),f.on("error",e=>{null===f||f[A]||(f=t._req=null,U(t,e))}),f.on("response",i=>{let o=i.headers.location,a=i.statusCode;if(o&&m.followRedirects&&a>=300&&a<400){let i;if(++t._redirects>m.maxRedirects)return void F(t,f,"Maximum redirects exceeded");f.abort();try{i=new p(o,s)}catch(e){U(t,SyntaxError(`Invalid URL: ${o}`));return}e(t,i,r,n)}else t.emit("unexpected-response",f,i)||F(t,f,`Unexpected server response: ${i.statusCode}`)}),f.on("upgrade",(e,s,r)=>{let i;if(t.emit("upgrade",e),t.readyState!==M.CONNECTING)return;f=t._req=null;let o=e.headers.upgrade;if(void 0===o||"websocket"!==o.toLowerCase())return void F(t,s,"Invalid Upgrade header");let n=h("sha1").update(x+S).digest("base64");if(e.headers["sec-websocket-accept"]!==n)return void F(t,s,"Invalid Sec-WebSocket-Accept header");let a=e.headers["sec-websocket-protocol"];if(void 0!==a?v.size?v.has(a)||(i="Server sent an invalid subprotocol"):i="Server sent a subprotocol but none was requested":v.size&&(i="Server sent no subprotocol"),i)return void F(t,s,i);a&&(t._protocol=a);let l=e.headers["sec-websocket-extensions"];if(void 0!==l){let e;if(!d)return void F(t,s,"Server sent a Sec-WebSocket-Extensions header but no extension was requested");try{e=T(l)}catch(e){F(t,s,"Invalid Sec-WebSocket-Extensions header");return}let r=Object.keys(e);if(1!==r.length||r[0]!==u.extensionName)return void F(t,s,"Server indicated an extension that was not requested");try{d.accept(e[u.extensionName])}catch(e){F(t,s,"Invalid Sec-WebSocket-Extensions header");return}t._extensions[u.extensionName]=d}t.setSocket(s,r,{allowSynchronousEvents:m.allowSynchronousEvents,generateMask:m.generateMask,maxBufferedChunks:m.maxBufferedChunks,maxFragments:m.maxFragments,maxPayload:m.maxPayload,skipUTF8Validation:m.skipUTF8Validation})}),m.finishRequest?m.finishRequest(f,t):f.end()}(this,e,t,s)):(this._autoPong=s.autoPong,this._closeTimeout=s.closeTimeout,this._isServer=!0)}get binaryType(){return this._binaryType}set binaryType(e){g.includes(e)&&(this._binaryType=e,this._receiver&&(this._receiver._binaryType=e))}get bufferedAmount(){return this._socket?this._socket._writableState.length+this._sender._bufferedBytes:this._bufferedAmount}get extensions(){return Object.keys(this._extensions).join()}get isPaused(){return this._paused}get onclose(){return null}get onerror(){return null}get onopen(){return null}get onmessage(){return null}get protocol(){return this._protocol}get readyState(){return this._readyState}get url(){return this._url}setSocket(e,t,s){let r=new f({allowSynchronousEvents:s.allowSynchronousEvents,binaryType:this.binaryType,extensions:this._extensions,isServer:this._isServer,maxBufferedChunks:s.maxBufferedChunks,maxFragments:s.maxFragments,maxPayload:s.maxPayload,skipUTF8Validation:s.skipUTF8Validation}),i=new m(e,this._extensions,s.generateMask);this._receiver=r,this._sender=i,this._socket=e,r[w]=this,i[w]=this,e[w]=this,r.on("conclude",W),r.on("drain",G),r.on("error",j),r.on("message",q),r.on("ping",H),r.on("pong",z),i.onerror=Y,e.setTimeout&&e.setTimeout(0),e.setNoDelay&&e.setNoDelay(),t.length>0&&e.unshift(t),e.on("close",X),e.on("data",Z),e.on("end",Q),e.on("error",ee),this._readyState=M.OPEN,this.emit("open")}emitClose(){if(!this._socket){this._readyState=M.CLOSED,this.emit("close",this._closeCode,this._closeMessage);return}this._extensions[u.extensionName]&&this._extensions[u.extensionName].cleanup(),this._receiver.removeAllListeners(),this._readyState=M.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(e,t){if(this.readyState!==M.CLOSED){if(this.readyState===M.CONNECTING)return void F(this,this._req,"WebSocket was closed before the connection was established");if(this.readyState===M.CLOSING){this._closeFrameSent&&(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end();return}this._readyState=M.CLOSING,this._sender.close(e,t,!this._isServer,e=>{!e&&(this._closeFrameSent=!0,(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end())}),J(this)}}pause(){this.readyState!==M.CONNECTING&&this.readyState!==M.CLOSED&&(this._paused=!0,this._socket.pause())}ping(e,t,s){if(this.readyState===M.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");("function"==typeof e?(s=e,e=t=void 0):"function"==typeof t&&(s=t,t=void 0),"number"==typeof e&&(e=e.toString()),this.readyState!==M.OPEN)?$(this,e,s):(void 0===t&&(t=!this._isServer),this._sender.ping(e||b,t,s))}pong(e,t,s){if(this.readyState===M.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");("function"==typeof e?(s=e,e=t=void 0):"function"==typeof t&&(s=t,t=void 0),"number"==typeof e&&(e=e.toString()),this.readyState!==M.OPEN)?$(this,e,s):(void 0===t&&(t=!this._isServer),this._sender.pong(e||b,t,s))}resume(){this.readyState!==M.CONNECTING&&this.readyState!==M.CLOSED&&(this._paused=!1,this._receiver._writableState.needDrain||this._socket.resume())}send(e,t,s){if(this.readyState===M.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");if("function"==typeof t&&(s=t,t={}),"number"==typeof e&&(e=e.toString()),this.readyState!==M.OPEN)return void $(this,e,s);let r={binary:"string"!=typeof e,mask:!this._isServer,compress:!0,fin:!0,...t};this._extensions[u.extensionName]||(r.compress=!1),this._sender.send(e||b,r,s)}terminate(){if(this.readyState!==M.CLOSED){if(this.readyState===M.CONNECTING)return void F(this,this._req,"WebSocket was closed before the connection was established");this._socket&&(this._readyState=M.CLOSING,this._socket.destroy())}}}function U(e,t){e._readyState=M.CLOSING,e._errorEmitted=!0,e.emit("error",t),e.emitClose()}function D(e){return e.path=e.socketPath,n.connect(e)}function B(e){return e.path=void 0,e.servername||""===e.servername||(e.servername=n.isIP(e.host)?"":e.host),a.connect(e)}function F(e,t,s){e._readyState=M.CLOSING;let r=Error(s);Error.captureStackTrace(r,F),t.setHeader?(t[A]=!0,t.abort(),t.socket&&!t.socket.destroyed&&t.socket.destroy(),process.nextTick(U,e,r)):(t.destroy(r),t.once("error",e.emit.bind(e,"error")),t.once("close",e.emitClose.bind(e)))}function $(e,t,s){if(t){let s=_(t)?t.size:C(t).length;e._socket?e._sender._bufferedBytes+=s:e._bufferedAmount+=s}if(s){let t=Error(`WebSocket is not open: readyState ${e.readyState} (${R[e.readyState]})`);process.nextTick(s,t)}}function W(e,t){let s=this[w];s._closeFrameReceived=!0,s._closeMessage=t,s._closeCode=e,void 0!==s._socket[w]&&(s._socket.removeListener("data",Z),process.nextTick(K,s._socket),1005===e?s.close():s.close(e,t))}function G(){let e=this[w];e.isPaused||e._socket.resume()}function j(e){let t=this[w];void 0!==t._socket[w]&&(t._socket.removeListener("data",Z),process.nextTick(K,t._socket),t.close(e[v])),t._errorEmitted||(t._errorEmitted=!0,t.emit("error",e))}function V(){this[w].emitClose()}function q(e,t){this[w].emit("message",e,t)}function H(e){let t=this[w];t._autoPong&&t.pong(e,!this._isServer,E),t.emit("ping",e)}function z(e){this[w].emit("pong",e)}function K(e){e.resume()}function Y(e){let t=this[w];t.readyState!==M.CLOSED&&(t.readyState===M.OPEN&&(t._readyState=M.CLOSING,J(t)),this._socket.end(),t._errorEmitted||(t._errorEmitted=!0,t.emit("error",e)))}function J(e){e._closeTimer=setTimeout(e._socket.destroy.bind(e._socket),e._closeTimeout)}function X(){let e=this[w];if(this.removeListener("close",X),this.removeListener("data",Z),this.removeListener("end",Q),e._readyState=M.CLOSING,!this._readableState.endEmitted&&!e._closeFrameReceived&&!e._receiver._writableState.errorEmitted&&0!==this._readableState.length){let t=this.read(this._readableState.length);e._receiver.write(t)}e._receiver.end(),this[w]=void 0,clearTimeout(e._closeTimer),e._receiver._writableState.finished||e._receiver._writableState.errorEmitted?e.emitClose():(e._receiver.on("error",V),e._receiver.on("finish",V))}function Z(e){this[w]._receiver.write(e)||this.pause()}function Q(){let e=this[w];e._readyState=M.CLOSING,e._receiver.end(),this.end()}function ee(){let e=this[w];this.removeListener("error",ee),this.on("error",E),e&&(e._readyState=M.CLOSING,this.destroy())}Object.defineProperty(M,"CONNECTING",{enumerable:!0,value:R.indexOf("CONNECTING")}),Object.defineProperty(M.prototype,"CONNECTING",{enumerable:!0,value:R.indexOf("CONNECTING")}),Object.defineProperty(M,"OPEN",{enumerable:!0,value:R.indexOf("OPEN")}),Object.defineProperty(M.prototype,"OPEN",{enumerable:!0,value:R.indexOf("OPEN")}),Object.defineProperty(M,"CLOSING",{enumerable:!0,value:R.indexOf("CLOSING")}),Object.defineProperty(M.prototype,"CLOSING",{enumerable:!0,value:R.indexOf("CLOSING")}),Object.defineProperty(M,"CLOSED",{enumerable:!0,value:R.indexOf("CLOSED")}),Object.defineProperty(M.prototype,"CLOSED",{enumerable:!0,value:R.indexOf("CLOSED")}),["binaryType","bufferedAmount","extensions","isPaused","protocol","readyState","url"].forEach(e=>{Object.defineProperty(M.prototype,e,{enumerable:!0})}),["open","error","close","message"].forEach(e=>{Object.defineProperty(M.prototype,`on${e}`,{enumerable:!0,get(){for(let t of this.listeners(e))if(t[x])return t[k];return null},set(t){for(let t of this.listeners(e))if(t[x]){this.removeListener(e,t);break}"function"==typeof t&&this.addEventListener(e,t,{[x]:!0})}})}),M.prototype.addEventListener=L,M.prototype.removeEventListener=O,t.exports=M},21365,(e,t,s)=>{"use strict";e.r(35065);let{Duplex:r}=e.r(88947);function i(e){e.emit("close")}function o(){!this.destroyed&&this._writableState.finished&&this.destroy()}function n(e){this.removeListener("error",n),this.destroy(),0===this.listenerCount("error")&&this.emit("error",e)}t.exports=function(e,t){let s=!0,a=new r({...t,autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1});return e.on("message",function(t,s){let r=!s&&a._readableState.objectMode?t.toString():t;a.push(r)||e.pause()}),e.once("error",function(e){a.destroyed||(s=!1,a.destroy(e))}),e.once("close",function(){a.destroyed||a.push(null)}),a._destroy=function(t,r){if(e.readyState===e.CLOSED){r(t),process.nextTick(i,a);return}let o=!1;e.once("error",function(e){o=!0,r(e)}),e.once("close",function(){o||r(t),process.nextTick(i,a)}),s&&e.terminate()},a._final=function(t){e.readyState===e.CONNECTING?e.once("open",function(){a._final(t)}):null!==e._socket&&(e._socket._writableState.finished?(t(),a._readableState.endEmitted&&a.destroy()):(e._socket.once("finish",function(){t()}),e.close()))},a._read=function(){e.isPaused&&e.resume()},a._write=function(t,s,r){e.readyState===e.CONNECTING?e.once("open",function(){a._write(t,s,r)}):e.send(t,r)},a.on("end",o),a.on("error",n),a}},42977,(e,t,s)=>{"use strict";let{tokenChars:r}=e.r(58739);t.exports={parse:function(e){let t=new Set,s=-1,i=-1,o=0;for(;o<e.length;o++){let n=e.charCodeAt(o);if(-1===i&&1===r[n])-1===s&&(s=o);else if(0!==o&&(32===n||9===n))-1===i&&-1!==s&&(i=o);else if(44===n){if(-1===s)throw SyntaxError(`Unexpected character at index ${o}`);-1===i&&(i=o);let r=e.slice(s,i);if(t.has(r))throw SyntaxError(`The "${r}" subprotocol is duplicated`);t.add(r),s=i=-1}else throw SyntaxError(`Unexpected character at index ${o}`)}if(-1===s||-1!==i)throw SyntaxError("Unexpected end of input");let n=e.slice(s,o);if(t.has(n))throw SyntaxError(`The "${n}" subprotocol is duplicated`);return t.add(n),t}}},17198,(e,t,s)=>{"use strict";let r=e.r(27699),i=e.r(21517),{Duplex:o}=e.r(88947),{createHash:n}=e.r(54799),a=e.r(96903),l=e.r(80295),h=e.r(42977),c=e.r(35065),{CLOSE_TIMEOUT:d,GUID:p,kWebSocket:u}=e.r(74836),f=/^[+/0-9A-Za-z]{22}==$/;function m(e){e._state=2,e.emit("close")}function _(){this.destroy()}function g(e,t,s,r){s=s||i.STATUS_CODES[t],r={Connection:"close","Content-Type":"text/html","Content-Length":Buffer.byteLength(s),...r},e.once("finish",e.destroy),e.end(`HTTP/1.1 ${t} ${i.STATUS_CODES[t]}\r
2
+ `+Object.keys(r).map(e=>`${e}: ${r[e]}`).join("\r\n")+"\r\n\r\n"+s)}function y(e,t,s,r,i,o){if(e.listenerCount("wsClientError")){let r=Error(i);Error.captureStackTrace(r,y),e.emit("wsClientError",r,s,t)}else g(s,r,i,o)}t.exports=class extends r{constructor(e,t){if(super(),null==(e={allowSynchronousEvents:!0,autoPong:!0,maxBufferedChunks:1048576,maxFragments:131072,maxPayload:0x6400000,skipUTF8Validation:!1,perMessageDeflate:!1,handleProtocols:null,clientTracking:!0,closeTimeout:d,verifyClient:null,noServer:!1,backlog:null,server:null,host:null,path:null,port:null,WebSocket:c,...e}).port&&!e.server&&!e.noServer||null!=e.port&&(e.server||e.noServer)||e.server&&e.noServer)throw TypeError('One and only one of the "port", "server", or "noServer" options must be specified');if(null!=e.port?(this._server=i.createServer((e,t)=>{let s=i.STATUS_CODES[426];t.writeHead(426,{"Content-Length":s.length,"Content-Type":"text/plain"}),t.end(s)}),this._server.listen(e.port,e.host,e.backlog,t)):e.server&&(this._server=e.server),this._server){const e=this.emit.bind(this,"connection");this._removeListeners=function(e,t){for(let s of Object.keys(t))e.on(s,t[s]);return function(){for(let s of Object.keys(t))e.removeListener(s,t[s])}}(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(t,s,r)=>{this.handleUpgrade(t,s,r,e)}})}!0===e.perMessageDeflate&&(e.perMessageDeflate={}),e.clientTracking&&(this.clients=new Set,this._shouldEmitClose=!1),this.options=e,this._state=0}address(){if(this.options.noServer)throw Error('The server is operating in "noServer" mode');return this._server?this._server.address():null}close(e){if(2===this._state){e&&this.once("close",()=>{e(Error("The server is not running"))}),process.nextTick(m,this);return}if(e&&this.once("close",e),1!==this._state)if(this._state=1,this.options.noServer||this.options.server)this._server&&(this._removeListeners(),this._removeListeners=this._server=null),this.clients&&this.clients.size?this._shouldEmitClose=!0:process.nextTick(m,this);else{let e=this._server;this._removeListeners(),this._removeListeners=this._server=null,e.close(()=>{m(this)})}}shouldHandle(e){if(this.options.path){let t=e.url.indexOf("?");if((-1!==t?e.url.slice(0,t):e.url)!==this.options.path)return!1}return!0}handleUpgrade(e,t,s,r){t.on("error",_);let i=e.headers["sec-websocket-key"],o=e.headers.upgrade,n=+e.headers["sec-websocket-version"];if("GET"!==e.method)return void y(this,e,t,405,"Invalid HTTP method");if(void 0===o||"websocket"!==o.toLowerCase())return void y(this,e,t,400,"Invalid Upgrade header");if(void 0===i||!f.test(i))return void y(this,e,t,400,"Missing or invalid Sec-WebSocket-Key header");if(13!==n&&8!==n)return void y(this,e,t,400,"Missing or invalid Sec-WebSocket-Version header",{"Sec-WebSocket-Version":"13, 8"});if(!this.shouldHandle(e))return void g(t,400);let c=e.headers["sec-websocket-protocol"],d=new Set;if(void 0!==c)try{d=h.parse(c)}catch(s){y(this,e,t,400,"Invalid Sec-WebSocket-Protocol header");return}let p=e.headers["sec-websocket-extensions"],u={};if(this.options.perMessageDeflate&&void 0!==p){let s=new l({...this.options.perMessageDeflate,isServer:!0,maxPayload:this.options.maxPayload});try{let e=a.parse(p);e[l.extensionName]&&(s.accept(e[l.extensionName]),u[l.extensionName]=s)}catch(s){y(this,e,t,400,"Invalid or unacceptable Sec-WebSocket-Extensions header");return}}if(this.options.verifyClient){let o={origin:e.headers[`${8===n?"sec-websocket-origin":"origin"}`],secure:!!(e.socket.authorized||e.socket.encrypted),req:e};if(2===this.options.verifyClient.length)return void this.options.verifyClient(o,(o,n,a,l)=>{if(!o)return g(t,n||401,a,l);this.completeUpgrade(u,i,d,e,t,s,r)});if(!this.options.verifyClient(o))return g(t,401)}this.completeUpgrade(u,i,d,e,t,s,r)}completeUpgrade(e,t,s,r,i,o,h){if(!i.readable||!i.writable)return i.destroy();if(i[u])throw Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");if(this._state>0)return g(i,503);let c=n("sha1").update(t+p).digest("base64"),d=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${c}`],f=new this.options.WebSocket(null,void 0,this.options);if(s.size){let e=this.options.handleProtocols?this.options.handleProtocols(s,r):s.values().next().value;e&&(d.push(`Sec-WebSocket-Protocol: ${e}`),f._protocol=e)}if(e[l.extensionName]){let t=e[l.extensionName].params,s=a.format({[l.extensionName]:[t]});d.push(`Sec-WebSocket-Extensions: ${s}`),f._extensions=e}this.emit("headers",d,r),i.write(d.concat("\r\n").join("\r\n")),i.removeListener("error",_),f.setSocket(i,o,{allowSynchronousEvents:this.options.allowSynchronousEvents,maxBufferedChunks:this.options.maxBufferedChunks,maxFragments:this.options.maxFragments,maxPayload:this.options.maxPayload,skipUTF8Validation:this.options.skipUTF8Validation}),this.clients&&(this.clients.add(f),f.on("close",()=>{this.clients.delete(f),this._shouldEmitClose&&!this.clients.size&&process.nextTick(m,this)})),h(f,r)}}},29307,e=>{"use strict";e.s(["SessionManager",()=>f],29307);var t=e.i(54799);class s{workspaceRoot;scopedDirs;tokenUsage={input:0,output:0,cost:0};parseTokenUsage(e){let t=e.replace(/\x1b\[[0-9;]*m/g,""),s=t.match(/(?:cost|estimated cost)[:\s]*\$([0-9.]+)/i);s&&(this.tokenUsage.cost=parseFloat(s[1]));let r=e=>(e=e.replace(/,/g,"").toLowerCase().trim()).endsWith("k")?1e3*parseFloat(e.slice(0,-1)):e.endsWith("m")?1e6*parseFloat(e.slice(0,-1)):parseInt(e,10)||0,i=t.match(/tokens?[:\s]*([0-9,.]+[km]?)\s*(?:sent|input|prompt)[^a-zA-Z0-9]+([0-9,.]+[km]?)\s*(?:received|output|completion)/i);if(i)this.tokenUsage.input=r(i[1]),this.tokenUsage.output=r(i[2]);else{let e=t.match(/([0-9,.]+[km]?)\s*(?:sent|input|prompt)\s*tokens?/i)||t.match(/tokens?\s*(?:sent|input|prompt)[:\s]*([0-9,.]+[km]?)/i);e&&(this.tokenUsage.input=r(e[1]));let s=t.match(/([0-9,.]+[km]?)\s*(?:received|output|completion)\s*tokens?/i)||t.match(/tokens?\s*(?:received|output|completion)[:\s]*([0-9,.]+[km]?)/i);s&&(this.tokenUsage.output=r(s[1]))}0===this.tokenUsage.cost&&(this.tokenUsage.input>0||this.tokenUsage.output>0)&&(this.tokenUsage.cost=3e-6*this.tokenUsage.input+15e-6*this.tokenUsage.output)}listeners=[];onOutput(e){this.listeners.push(e)}offOutput(e){this.listeners=this.listeners.filter(t=>t!==e)}emitOutput(e){this.listeners.forEach(t=>t(e))}}var r=e.i(22734),i=e.i(14747);class o{static workspaceRoot=process.cwd();static getSessionsDir(){let e=i.default.join(this.workspaceRoot,".ai","neural-loom","sessions");return r.default.existsSync(e)||r.default.mkdirSync(e,{recursive:!0}),e}static saveSession(e){try{let t=this.getSessionsDir(),s=i.default.join(t,`${e.id}.json`),o={id:e.id,name:e.name,type:e.type,status:"running"===e.status&&"mock"===e.type?"running":e.status,createdAt:e.createdAt,logs:e.logs,workspaceRoot:e.workspaceRoot,scopedDirs:e.scopedDirs};r.default.writeFileSync(s,JSON.stringify(o,null,2),"utf8")}catch(t){console.error(`[SessionPersister] Failed to save session ${e.id}:`,t)}}static loadAllSessions(){try{let e=this.getSessionsDir(),t=r.default.readdirSync(e),s=[];for(let o of t)if(o.endsWith(".json")){let t=i.default.join(e,o),n=r.default.readFileSync(t,"utf8"),a=JSON.parse(n);"running"===a.status&&"mock"!==a.type&&(a.status="stopped",a.logs.push("\r\n\x1b[1;31m[System] Server restarted. Terminal connection lost.\x1b[0m\r\n"),r.default.writeFileSync(t,JSON.stringify(a,null,2),"utf8")),s.push(a)}return s}catch(e){return console.error("[SessionPersister] Failed to load sessions:",e),[]}}static deleteSession(e){try{let t=this.getSessionsDir(),s=i.default.join(t,`${e}.json`);r.default.existsSync(s)&&r.default.unlinkSync(s)}catch(t){console.error(`[SessionPersister] Failed to delete session ${e}:`,t)}}}class n extends s{id;name;type="mock";status="idle";createdAt;logs=[];intervalId=null;mockSteps=["[NeuralLoom] Loading virtual PTY context...","[NeuralLoom] Spawning sandbox mock runtime environment...","[Mock Agent] Model online (v2.0-mock-flash). Dedicated memory allocated.","[Mock Agent] System rules parsed successfully from global context registry.","[Mock Agent] Awaiting developer commands. Type '/help' to list mock skills."];stepIndex=0;constructor(e,t){super(),this.id=e,this.name=t||`Mock Session ${e.substring(0,8)}`,this.createdAt=new Date().toISOString()}appendLog(e){this.logs.push(e),this.parseTokenUsage(e),this.emitOutput(e+"\r\n"),o.saveSession(this)}async start(){"running"!==this.status&&(this.status="running",this.appendLog("\x1b[1;35m==================================================\x1b[0m"),this.appendLog("\x1b[1;36m NEURALLOOM SIMULATED AGENT ENVIRONMENT \x1b[0m"),this.appendLog("\x1b[1;35m==================================================\x1b[0m"),this.stepIndex<this.mockSteps.length&&this.appendLog(this.mockSteps[this.stepIndex++]),this.intervalId=setInterval(()=>{if(this.tokenUsage.input+=Math.floor(50*Math.random())+10,this.tokenUsage.output+=Math.floor(20*Math.random())+5,this.tokenUsage.cost=3e-6*this.tokenUsage.input+15e-6*this.tokenUsage.output,this.stepIndex<this.mockSteps.length)this.appendLog(this.mockSteps[this.stepIndex++]);else{let e=new Date().toLocaleTimeString();this.appendLog(`[${e}] [Telemetry] CPU utilization 1.2% | Memory 142MB | Link stable.`)}},4e3))}async stop(){this.status="stopped",this.intervalId&&(clearInterval(this.intervalId),this.intervalId=null),this.appendLog("\x1b[1;31m[System] Process terminated. Connection closed.\x1b[0m")}async sendInput(e,t){"running"!==this.status?this.appendLog(`\x1b[1;31m[Error] Cannot write input: process is ${this.status}.\x1b[0m`):(this.appendLog(`\x1b[1;32m> ${e}\x1b[0m`),setTimeout(()=>{let t=e.trim().toLowerCase();"/help"===t?(this.appendLog("[Mock Agent] Available commands:"),this.appendLog(" /help - List available mock commands."),this.appendLog(" /status - Fetch current agent diagnostic metrics."),this.appendLog(" /context - View loaded staging files."),this.appendLog(" /clear - Flush terminal console buffer.")):"/status"===t?(this.appendLog("[Mock Agent] Diagnostics:"),this.appendLog(" - Connection Type: WebSocket gateway (mock)"),this.appendLog(` - Active Runtime: ${this.id}`),this.appendLog(" - Sandbox State: Healthy (0 warnings)")):"/context"===t?(this.appendLog("[Mock Agent] Loaded Workspace Context Files:"),this.appendLog(" - [Mounted] src/app/globals.css (Modified)"),this.appendLog(" - [Mounted] src/app/page.tsx")):"/clear"===t?(this.logs=[],this.appendLog("\x1b[1;33m[Console Cleared]\x1b[0m")):(this.appendLog(`[Mock Agent] Received command: "${e}". Processing...`),setTimeout(()=>{this.appendLog("[Mock Agent] Done. Task simulated successfully.")},1500))},400))}getStatus(){return{id:this.id,name:this.name,type:this.type,status:this.status,createdAt:this.createdAt,logsCount:this.logs.length,tokenUsage:this.tokenUsage}}}class a extends s{id;name;type="claude";status="idle";createdAt;logs=[];ptyProcess=null;ptyModule=null;constructor(e,t){super(),this.id=e,this.name=t||`Claude Session ${e.substring(0,8)}`,this.createdAt=new Date().toISOString()}appendLog(e){this.logs.push(e),this.logs.length>5e3&&this.logs.shift(),this.parseTokenUsage(e),this.emitOutput(e),o.saveSession(this)}async start(){let t,s,o;if("running"===this.status)return;let n=(t=process.env.PROGRAMFILES||"C:\\Program Files",s=process.env["PROGRAMFILES(X86)"]||"C:\\Program Files (x86)",o=process.env.LOCALAPPDATA||"",[process.env.WINGMAN_BASH_PATH,i.default.join(t,"Git","bin","bash.exe"),i.default.join(s,"Git","bin","bash.exe"),o?i.default.join(o,"Programs","Git","bin","bash.exe"):""].filter(e=>"string"==typeof e&&""!==e).find(e=>r.default.existsSync(e))||null);if(!n){this.status="stopped",this.appendLog("\x1b[1;31m[System Error] Git Bash not found. Please install Git for Windows.\x1b[0m\r\n");return}try{this.ptyModule||(this.ptyModule=await e.A(37661)),this.status="running",this.appendLog("\x1b[1;35m==================================================\x1b[0m\r\n"),this.appendLog("\x1b[1;36m NEURALLOOM ACTIVE CLAUDE TERMINAL ROUTE \x1b[0m\r\n"),this.appendLog("\x1b[1;35m==================================================\x1b[0m\r\n"),this.appendLog(`[System] Spawning Claude Code CLI process using Git Bash...\r
3
+ `);let t=this.workspaceRoot&&r.default.existsSync(this.workspaceRoot)?this.workspaceRoot:process.cwd();this.ptyProcess=this.ptyModule.spawn(n,["-c","claude --agents-md"],{name:"xterm-256color",cols:120,rows:30,cwd:t,env:{...process.env,TERM:"xterm-256color",COLORTERM:"truecolor",PATH:"C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\MSBuild\\Microsoft\\VisualStudio\\NodeJs;"+process.env.PATH}}),this.ptyProcess.onData(e=>{this.appendLog(e)}),this.ptyProcess.onExit(({exitCode:e,signal:t})=>{this.status="stopped",this.appendLog(`\r
4
+ \x1b[1;31m[System] Claude Code PTY process exited (code=${e}, signal=${t}).\x1b[0m\r
5
+ `),this.ptyProcess=null})}catch(t){let e=t instanceof Error?t.message:"Unknown error";this.status="stopped",this.appendLog(`\x1b[1;31m[System Error] Failed to initialize node-pty runner: ${e}\x1b[0m\r
6
+ `),console.error("Failed to start Claude PTY runner:",t)}}async stop(){if(this.status="stopped",this.ptyProcess){try{this.ptyProcess.kill()}catch(e){console.error("Error killing PTY process:",e)}this.ptyProcess=null}this.appendLog("\r\n\x1b[1;31m[System] Terminal bridge terminated.\x1b[0m\r\n")}async sendInput(e,t=!1){"running"===this.status&&this.ptyProcess?this.ptyProcess.write(t?e:e+"\r"):this.appendLog(`\r
7
+ \x1b[1;31m[Error] Cannot write: session process is ${this.status}.\x1b[0m\r
8
+ `)}getStatus(){return{id:this.id,name:this.name,type:this.type,status:this.status,createdAt:this.createdAt,logsCount:this.logs.length,workspaceRoot:this.workspaceRoot,scopedDirs:this.scopedDirs,tokenUsage:this.tokenUsage}}}class l extends s{id;name;type="claude-docker";status="idle";createdAt;logs=[];ptyProcess=null;ptyModule=null;constructor(e,t){super(),this.id=e,this.name=t||`Docker Session ${e.substring(0,8)}`,this.createdAt=new Date().toISOString()}appendLog(e){this.logs.push(e),this.logs.length>5e3&&this.logs.shift(),this.parseTokenUsage(e),this.emitOutput(e),o.saveSession(this)}async start(){let t,s,o;if("running"===this.status)return;this.status="running",this.appendLog("\x1b[1;35m==================================================\x1b[0m\r\n"),this.appendLog("\x1b[1;36m NEURALLOOM DOCKER SANDBOX RUNTIME BRIDGE \x1b[0m\r\n"),this.appendLog("\x1b[1;35m==================================================\x1b[0m\r\n"),this.appendLog("[System] Verifying Docker environment accessibility...\r\n");let n=(t=process.env.PROGRAMFILES||"C:\\Program Files",s=process.env["PROGRAMFILES(X86)"]||"C:\\Program Files (x86)",o=process.env.LOCALAPPDATA||"",[process.env.WINGMAN_BASH_PATH,i.default.join(t,"Git","bin","bash.exe"),i.default.join(s,"Git","bin","bash.exe"),o?i.default.join(o,"Programs","Git","bin","bash.exe"):""].filter(e=>"string"==typeof e&&""!==e).find(e=>r.default.existsSync(e))||null);if(!n){this.status="stopped",this.appendLog("\x1b[1;31m[System Error] Git Bash not found. Cannot bootstrap PTY sandbox.\x1b[0m\r\n");return}try{this.ptyModule||(this.ptyModule=await e.A(37661));let t=this.workspaceRoot&&r.default.existsSync(this.workspaceRoot)?this.workspaceRoot:process.cwd(),s=this.ptyModule.spawn(n,["-c","docker --version"],{name:"xterm-256color",cols:80,rows:10,cwd:t}),o=!1;if(s.onData(e=>{e.toLowerCase().includes("docker version")&&(o=!0)}),await new Promise(e=>setTimeout(e,800)),s.kill(),!o){this.status="stopped",this.appendLog("\x1b[1;31m[Dependency Warning] Docker command not recognized in local PATH.\x1b[0m\r\n"),this.appendLog("\x1b[1;33mPlease install Docker Desktop (https://www.docker.com/products/docker-desktop) and ensure the daemon is running.\x1b[0m\r\n"),this.appendLog("\x1b[1;31m[System] Sandbox launch aborted.\x1b[0m\r\n");return}this.appendLog("[System] Docker detected. Initializing container mount...\r\n");let a=[`-v "${t}:/workspace"`];this.scopedDirs&&Array.isArray(this.scopedDirs)&&this.scopedDirs.forEach(e=>{if(r.default.existsSync(e)){let t=i.default.basename(e).replace(/[^a-zA-Z0-9-_]/g,"_");a.push(`-v "${e}:/scoped/${t}"`)}});let l=a.join(" "),h=`docker run -it --name neural-loom-session-${this.id} --rm ${l} -w /workspace node:20-alpine npx -y @anthropic-ai/claude-code --agents-md`;this.ptyProcess=this.ptyModule.spawn(n,["-c",h],{name:"xterm-256color",cols:120,rows:30,cwd:t,env:{...process.env,TERM:"xterm-256color",COLORTERM:"truecolor"}}),this.ptyProcess.onData(e=>{this.appendLog(e)}),this.ptyProcess.onExit(({exitCode:e,signal:t})=>{this.status="stopped",this.appendLog(`\r
9
+ \x1b[1;31m[System] Docker Sandbox exited (code=${e}, signal=${t}).\x1b[0m\r
10
+ `),this.ptyProcess=null})}catch(t){let e=t instanceof Error?t.message:"Unknown error";this.status="stopped",this.appendLog(`\x1b[1;31m[System Error] Failed to launch Docker runner: ${e}\x1b[0m\r
11
+ `)}}async stop(){if(this.status="stopped",this.ptyProcess){try{this.ptyProcess.kill()}catch(e){console.error("Error killing Docker PTY process:",e)}this.ptyProcess=null}this.appendLog("\r\n\x1b[1;31m[System] Docker container stopped and unmounted.\x1b[0m\r\n")}async sendInput(e,t=!1){"running"===this.status&&this.ptyProcess?this.ptyProcess.write(t?e:e+"\r"):this.appendLog(`\r
12
+ \x1b[1;31m[Error] Cannot write: Docker container is ${this.status}.\x1b[0m\r
13
+ `)}getStatus(){return{id:this.id,name:this.name,type:this.type,status:this.status,createdAt:this.createdAt,logsCount:this.logs.length,workspaceRoot:this.workspaceRoot,scopedDirs:this.scopedDirs,tokenUsage:this.tokenUsage}}}class h extends s{id;name;type="claude-ssh";status="idle";createdAt;logs=[];ptyProcess=null;ptyModule=null;constructor(e,t){super(),this.id=e,this.name=t||`SSH Session ${e.substring(0,8)}`,this.createdAt=new Date().toISOString()}appendLog(e){this.logs.push(e),this.logs.length>5e3&&this.logs.shift(),this.parseTokenUsage(e),this.emitOutput(e),o.saveSession(this)}async start(){let t,s,o;if("running"===this.status)return;this.status="running",this.appendLog("\x1b[1;35m==================================================\x1b[0m\r\n"),this.appendLog("\x1b[1;36m NEURALLOOM REMOTE VM (SSH) ROUTE BRIDGE \x1b[0m\r\n"),this.appendLog("\x1b[1;35m==================================================\x1b[0m\r\n"),this.appendLog("[System] Loading SSH configuration...\r\n");let n=(t=process.env.PROGRAMFILES||"C:\\Program Files",s=process.env["PROGRAMFILES(X86)"]||"C:\\Program Files (x86)",o=process.env.LOCALAPPDATA||"",[process.env.WINGMAN_BASH_PATH,i.default.join(t,"Git","bin","bash.exe"),i.default.join(s,"Git","bin","bash.exe"),o?i.default.join(o,"Programs","Git","bin","bash.exe"):""].filter(e=>"string"==typeof e&&""!==e).find(e=>r.default.existsSync(e))||null);if(!n){this.status="stopped",this.appendLog("\x1b[1;31m[System Error] Git Bash not found. Cannot bootstrap SSH terminal.\x1b[0m\r\n");return}let a=i.default.join(process.cwd(),".ai","neural-loom","ssh.json");if(!r.default.existsSync(a)){this.status="stopped",this.appendLog("\x1b[1;31m[Configuration Error] ssh.json not found!\x1b[0m\r\n"),this.appendLog(`\x1b[1;33mPlease create the SSH credentials file at: ${a}\x1b[0m\r
14
+ `),this.appendLog("\x1b[1;36mTemplate structure:\x1b[0m\r\n"),this.appendLog(JSON.stringify({host:"your.remote.host.com",username:"dave",privateKeyPath:"C:\\\\Users\\\\Dave\\\\.ssh\\\\id_rsa",port:22},null,2).replace(/\n/g,"\r\n")+"\r\n"),this.appendLog("\x1b[1;31m[System] SSH startup aborted.\x1b[0m\r\n");return}try{let t=r.default.readFileSync(a,"utf8"),s=JSON.parse(t);if(!s.host||!s.username){this.status="stopped",this.appendLog("\x1b[1;31m[System Error] Invalid ssh.json configuration. 'host' and 'username' are required.\x1b[0m\r\n");return}this.ptyModule||(this.ptyModule=await e.A(37661)),this.appendLog(`[System] Connecting to ${s.username}@${s.host}...\r
15
+ `);let i=s.port?`-p ${s.port}`:"",o=s.privateKeyPath?`-i "${s.privateKeyPath}"`:"",l=`ssh -t ${o} ${i} ${s.username}@${s.host} "claude --agents-md"`;this.ptyProcess=this.ptyModule.spawn(n,["-c",l],{name:"xterm-256color",cols:120,rows:30,cwd:process.cwd(),env:{...process.env,TERM:"xterm-256color",COLORTERM:"truecolor"}}),this.ptyProcess.onData(e=>{this.appendLog(e)}),this.ptyProcess.onExit(({exitCode:e,signal:t})=>{this.status="stopped",this.appendLog(`\r
16
+ \x1b[1;31m[System] SSH Session exited (code=${e}, signal=${t}).\x1b[0m\r
17
+ `),this.ptyProcess=null})}catch(t){let e=t instanceof Error?t.message:"Unknown error";this.status="stopped",this.appendLog(`\x1b[1;31m[System Error] SSH connection failed: ${e}\x1b[0m\r
18
+ `)}}async stop(){if(this.status="stopped",this.ptyProcess){try{this.ptyProcess.kill()}catch(e){console.error("Error killing SSH PTY process:",e)}this.ptyProcess=null}this.appendLog("\r\n\x1b[1;31m[System] SSH Connection terminated.\x1b[0m\r\n")}async sendInput(e,t=!1){"running"===this.status&&this.ptyProcess?this.ptyProcess.write(t?e:e+"\r"):this.appendLog(`\r
19
+ \x1b[1;31m[Error] Cannot write: SSH session is ${this.status}.\x1b[0m\r
20
+ `)}getStatus(){return{id:this.id,name:this.name,type:this.type,status:this.status,createdAt:this.createdAt,logsCount:this.logs.length,workspaceRoot:this.workspaceRoot,scopedDirs:this.scopedDirs,tokenUsage:this.tokenUsage}}}class c extends s{id;name;type;status="idle";createdAt;logs=[];ptyProcess=null;ptyModule=null;constructor(e,t,s){super(),this.id=e,this.type=t,this.name=s||("aider-docker"===t?`Aider Docker ${e.substring(0,8)}`:`Aider Session ${e.substring(0,8)}`),this.createdAt=new Date().toISOString()}appendLog(e){this.logs.push(e),this.logs.length>5e3&&this.logs.shift(),this.parseTokenUsage(e),this.emitOutput(e),o.saveSession(this)}async start(){let t,s,o;if("running"===this.status)return;this.status="running",this.appendLog("\x1b[1;35m==================================================\x1b[0m\r\n"),this.appendLog(`\x1b[1;36m NEURALLOOM AIDER AGENT ROUTE (${this.type.toUpperCase()}) \x1b[0m\r
21
+ `),this.appendLog("\x1b[1;35m==================================================\x1b[0m\r\n");let n=(t=process.env.PROGRAMFILES||"C:\\Program Files",s=process.env["PROGRAMFILES(X86)"]||"C:\\Program Files (x86)",o=process.env.LOCALAPPDATA||"",[process.env.WINGMAN_BASH_PATH,i.default.join(t,"Git","bin","bash.exe"),i.default.join(s,"Git","bin","bash.exe"),o?i.default.join(o,"Programs","Git","bin","bash.exe"):""].filter(e=>"string"==typeof e&&""!==e).find(e=>r.default.existsSync(e))||null);if(!n){this.status="stopped",this.appendLog("\x1b[1;31m[System Error] Git Bash not found. Cannot spawn terminal.\x1b[0m\r\n");return}try{this.ptyModule||(this.ptyModule=await e.A(37661));let t={openaiApiKey:"",anthropicApiKey:"",geminiApiKey:"",model:"claude-3-5-sonnet",extraFlags:""},s=i.default.join(process.cwd(),".ai","neural-loom","aider.json");if(r.default.existsSync(s))try{t=JSON.parse(r.default.readFileSync(s,"utf8"))}catch(e){console.error("Failed to parse Aider configuration:",e)}let o={...process.env,TERM:"xterm-256color",COLORTERM:"truecolor"};t.openaiApiKey&&(o.OPENAI_API_KEY=t.openaiApiKey),t.anthropicApiKey&&(o.ANTHROPIC_API_KEY=t.anthropicApiKey),t.geminiApiKey&&(o.GEMINI_API_KEY=t.geminiApiKey);let a=t.model?`--model ${t.model}`:"",l=t.extraFlags||"",h=this.workspaceRoot&&r.default.existsSync(this.workspaceRoot)?this.workspaceRoot:process.cwd();if("aider-docker"===this.type){this.appendLog("[System] Verifying Docker environment accessibility...\r\n");let e=this.ptyModule.spawn(n,["-c","docker --version"],{name:"xterm-256color",cols:80,rows:10,cwd:h}),s=!1;if(e.onData(e=>{e.toLowerCase().includes("docker version")&&(s=!0)}),await new Promise(e=>setTimeout(e,800)),e.kill(),!s){this.status="stopped",this.appendLog("\x1b[1;31m[Dependency Warning] Docker command not recognized in local PATH.\x1b[0m\r\n"),this.appendLog("\x1b[1;33mPlease install Docker Desktop and ensure the daemon is running.\x1b[0m\r\n");return}this.appendLog("[System] Spawning Aider container environment...\r\n");let c=[];t.openaiApiKey&&c.push("-e OPENAI_API_KEY"),t.anthropicApiKey&&c.push("-e ANTHROPIC_API_KEY"),t.geminiApiKey&&c.push("-e GEMINI_API_KEY");let d=c.join(" "),p=[`-v "${h}:/workspace"`];this.scopedDirs&&Array.isArray(this.scopedDirs)&&this.scopedDirs.forEach(e=>{if(r.default.existsSync(e)){let t=i.default.basename(e).replace(/[^a-zA-Z0-9-_]/g,"_");p.push(`-v "${e}:/scoped/${t}"`)}});let u=p.join(" "),f=`docker run -it --name neural-loom-session-${this.id} --rm ${u} -w /workspace ${d} paulgauthier/aider ${a} ${l}`.trim();this.ptyProcess=this.ptyModule.spawn(n,["-c",f],{name:"xterm-256color",cols:120,rows:30,cwd:h,env:o})}else{this.appendLog("[System] Verifying 'aider' command availability in local PATH...\r\n");let e=this.ptyModule.spawn(n,["-c","aider --version"],{name:"xterm-256color",cols:80,rows:10,cwd:h}),t=!1;if(e.onData(e=>{e.toLowerCase().includes("aider")&&(t=!0)}),await new Promise(e=>setTimeout(e,800)),e.kill(),!t){this.status="stopped",this.appendLog("\x1b[1;31m[Dependency Warning] 'aider' executable not found on local PATH.\x1b[0m\r\n"),this.appendLog("\x1b[1;33mPlease install Aider globally via pip:\r\n pip install aider-chat\x1b[0m\r\n");return}this.appendLog("[System] Spawning local Aider CLI...\r\n");let s=`aider ${a} ${l}`.trim();this.ptyProcess=this.ptyModule.spawn(n,["-c",s],{name:"xterm-256color",cols:120,rows:30,cwd:h,env:o})}this.ptyProcess.onData(e=>{this.appendLog(e)}),this.ptyProcess.onExit(({exitCode:e,signal:t})=>{this.status="stopped",this.appendLog(`\r
22
+ \x1b[1;31m[System] Aider process exited (code=${e}, signal=${t}).\x1b[0m\r
23
+ `),this.ptyProcess=null})}catch(t){let e=t instanceof Error?t.message:"Unknown error";this.status="stopped",this.appendLog(`\x1b[1;31m[System Error] Failed to launch Aider: ${e}\x1b[0m\r
24
+ `)}}async stop(){if(this.status="stopped",this.ptyProcess){try{this.ptyProcess.kill()}catch(e){console.error("Error killing Aider PTY process:",e)}this.ptyProcess=null}this.appendLog("\r\n\x1b[1;31m[System] Aider session terminated.\x1b[0m\r\n")}async sendInput(e,t=!1){"running"===this.status&&this.ptyProcess?this.ptyProcess.write(t?e:e+"\r"):this.appendLog(`\r
25
+ \x1b[1;31m[Error] Cannot write: Aider process is ${this.status}.\x1b[0m\r
26
+ `)}getStatus(){return{id:this.id,name:this.name,type:this.type,status:this.status,createdAt:this.createdAt,logsCount:this.logs.length,workspaceRoot:this.workspaceRoot,scopedDirs:this.scopedDirs,tokenUsage:this.tokenUsage}}}e.i(21365),e.i(96903),e.i(80295),e.i(29485),e.i(16735),e.i(42977);var d=e.i(35065),p=e.i(17198);d.default;var u=e.i(46619);class f{static instance=null;sessions=new Map;constructor(){u.ContextManager.initializeStaging(),u.ContextManager.compileGlobalRules();try{for(const e of o.loadAllSessions()){let t;(t="mock"===e.type?new n(e.id,e.name):"claude-docker"===e.type?new l(e.id,e.name):"claude-ssh"===e.type?new h(e.id,e.name):"aider"===e.type||"aider-docker"===e.type?new c(e.id,e.type,e.name):new a(e.id,e.name)).status=e.status,t.createdAt=e.createdAt,t.logs=e.logs,t.workspaceRoot=e.workspaceRoot,t.scopedDirs=e.scopedDirs,"mock"===e.type&&"running"===e.status&&t.start(),this.sessions.set(e.id,t)}}catch(e){console.error("[SessionManager] Failed to reload saved sessions:",e)}}static getInstance(){return f.instance||(f.instance=new f,!function(t=3001){if(e.g.wss)return console.log("[WebSocketServer] WebSocket Server already active on port 3001 (cached).");console.log(`[WebSocketServer] Launching NeuralLoom WebSocket Gateway on port ${t}...`);try{let s=new p.default({port:t});e.g.wss=s,s.on("connection",e=>{console.log("[WebSocketServer] New client connected via gateway.");let t=null,s=null,r="";e.on("message",async i=>{try{let o=JSON.parse(i.toString());if("handshake"===o.type){let{sessionId:r}=o,i=f.getInstance().getSession(r);i?(t=r,e.sessionId=r,console.log(`[WebSocketServer] Client connected to active session: ${r}`),s=t=>{e.readyState===d.default.OPEN&&e.send(JSON.stringify({type:"output",data:t}))},i.onOutput(s),e.send(JSON.stringify({type:"handshake-ack",sessionId:r,history:i.logs.join("")}))):e.send(JSON.stringify({type:"error",message:"Requested session not found"}))}if("input"===o.type&&t){let s=f.getInstance().getSession(t);if(s&&"running"===s.status)if("mock"===s.type){let t=o.data;if("\r"===t||"\r\n"===t){e.send(JSON.stringify({type:"output",data:"\r\n"}));let t=r;r="",await s.sendInput(t)}else""===t||"\b"===t?r.length>0&&(r=r.slice(0,-1),e.send(JSON.stringify({type:"output",data:"\b \b"}))):(r+=t,e.send(JSON.stringify({type:"output",data:t})))}else await s.sendInput(o.data,!0)}}catch(e){console.error("[WebSocketServer] Error processing socket packet:",e)}}),e.on("close",()=>{if(t&&s){let e=f.getInstance().getSession(t);e&&e.offOutput(s)}console.log("[WebSocketServer] Client connection closed.")}),e.on("error",e=>{console.error("[WebSocketServer] Socket error:",e)})}),console.log(`[WebSocketServer] WebSocket gateway successfully listening on port ${t}.`)}catch(t){let e=t instanceof Error?t.message:"Unknown error";console.error(`[WebSocketServer] Failed to initialize WebSocket Server: ${e}`)}}(3001)),f.instance}generateId(){return t.default.randomUUID()}async createSession(e,t,s,r){let i,d=this.generateId();return(i="mock"===e?new n(d,t):"claude-docker"===e?new l(d,t):"claude-ssh"===e?new h(d,t):"aider"===e||"aider-docker"===e?new c(d,e,t):new a(d,t)).workspaceRoot=s,i.scopedDirs=r,await i.start(),this.sessions.set(d,i),o.saveSession(i),i}getSession(e){return this.sessions.get(e)}listSessions(){return Array.from(this.sessions.values()).map(e=>e.getStatus())}async stopSession(e){let t=this.sessions.get(e);return!!t&&(await t.stop(),o.saveSession(t),!0)}async deleteSession(e){let t=this.sessions.get(e);return t&&await t.stop(),o.deleteSession(e),this.sessions.delete(e)}async injectCommand(e,t){let s=this.sessions.get(e);if(!s||"running"!==s.status)return!1;let r=s.workspaceRoot||process.cwd();("/ccc"===t||"/ccp"===t)&&u.ContextManager.compileSessionContext(r,s.scopedDirs);let i=t;return("aider"===s.type||"aider-docker"===s.type)&&("/ccc"===t?i="/read .ai/neural-loom/ccontext.md":"/ccp"===t&&(i="/read .ai/neural-loom/cprompt.md")),await s.sendInput("\x15"+i+"\r",!0),!0}}}];
27
+
28
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0d0pykb._.js.map