@snoglobe/helios 0.3.6 → 0.4.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 (352) hide show
  1. package/dist/__tests__/db-helper.d.ts +8 -0
  2. package/dist/__tests__/db-helper.d.ts.map +1 -0
  3. package/dist/__tests__/db-helper.js +15 -0
  4. package/dist/__tests__/db-helper.js.map +1 -0
  5. package/dist/cli/replay.d.ts.map +1 -1
  6. package/dist/cli/replay.js +2 -3
  7. package/dist/cli/replay.js.map +1 -1
  8. package/dist/cli/sessions.d.ts.map +1 -1
  9. package/dist/cli/sessions.js +2 -1
  10. package/dist/cli/sessions.js.map +1 -1
  11. package/dist/config/project.test.d.ts +2 -0
  12. package/dist/config/project.test.d.ts.map +1 -0
  13. package/dist/config/project.test.js +219 -0
  14. package/dist/config/project.test.js.map +1 -0
  15. package/dist/core/orchestrator-integration.test.d.ts +2 -0
  16. package/dist/core/orchestrator-integration.test.d.ts.map +1 -0
  17. package/dist/core/orchestrator-integration.test.js +674 -0
  18. package/dist/core/orchestrator-integration.test.js.map +1 -0
  19. package/dist/core/orchestrator.d.ts +1 -0
  20. package/dist/core/orchestrator.d.ts.map +1 -1
  21. package/dist/core/orchestrator.js +129 -37
  22. package/dist/core/orchestrator.js.map +1 -1
  23. package/dist/core/orchestrator.test.d.ts +2 -0
  24. package/dist/core/orchestrator.test.d.ts.map +1 -0
  25. package/dist/core/orchestrator.test.js +982 -0
  26. package/dist/core/orchestrator.test.js.map +1 -0
  27. package/dist/core/state-machine.d.ts.map +1 -1
  28. package/dist/core/state-machine.js +3 -0
  29. package/dist/core/state-machine.js.map +1 -1
  30. package/dist/core/state-machine.test.d.ts +2 -0
  31. package/dist/core/state-machine.test.d.ts.map +1 -0
  32. package/dist/core/state-machine.test.js +95 -0
  33. package/dist/core/state-machine.test.js.map +1 -0
  34. package/dist/core/stickies.d.ts.map +1 -1
  35. package/dist/core/stickies.js +3 -0
  36. package/dist/core/stickies.js.map +1 -1
  37. package/dist/core/stickies.test.d.ts +2 -0
  38. package/dist/core/stickies.test.d.ts.map +1 -0
  39. package/dist/core/stickies.test.js +63 -0
  40. package/dist/core/stickies.test.js.map +1 -0
  41. package/dist/core/task-poller.d.ts +2 -1
  42. package/dist/core/task-poller.d.ts.map +1 -1
  43. package/dist/core/task-poller.js +25 -3
  44. package/dist/core/task-poller.js.map +1 -1
  45. package/dist/init.d.ts +2 -0
  46. package/dist/init.d.ts.map +1 -1
  47. package/dist/init.js +42 -7
  48. package/dist/init.js.map +1 -1
  49. package/dist/memory/context-gate.d.ts.map +1 -1
  50. package/dist/memory/context-gate.js +2 -1
  51. package/dist/memory/context-gate.js.map +1 -1
  52. package/dist/memory/context-gate.test.d.ts +2 -0
  53. package/dist/memory/context-gate.test.d.ts.map +1 -0
  54. package/dist/memory/context-gate.test.js +318 -0
  55. package/dist/memory/context-gate.test.js.map +1 -0
  56. package/dist/memory/experiment-tracker.test.d.ts +2 -0
  57. package/dist/memory/experiment-tracker.test.d.ts.map +1 -0
  58. package/dist/memory/experiment-tracker.test.js +325 -0
  59. package/dist/memory/experiment-tracker.test.js.map +1 -0
  60. package/dist/memory/global-memory.d.ts +0 -1
  61. package/dist/memory/global-memory.d.ts.map +1 -1
  62. package/dist/memory/global-memory.js +0 -14
  63. package/dist/memory/global-memory.js.map +1 -1
  64. package/dist/memory/memory-store.d.ts +2 -0
  65. package/dist/memory/memory-store.d.ts.map +1 -1
  66. package/dist/memory/memory-store.js +35 -28
  67. package/dist/memory/memory-store.js.map +1 -1
  68. package/dist/memory/memory-store.test.d.ts +2 -0
  69. package/dist/memory/memory-store.test.d.ts.map +1 -0
  70. package/dist/memory/memory-store.test.js +144 -0
  71. package/dist/memory/memory-store.test.js.map +1 -0
  72. package/dist/memory/token-estimator.test.d.ts +2 -0
  73. package/dist/memory/token-estimator.test.d.ts.map +1 -0
  74. package/dist/memory/token-estimator.test.js +42 -0
  75. package/dist/memory/token-estimator.test.js.map +1 -0
  76. package/dist/metrics/analyzer.test.d.ts +2 -0
  77. package/dist/metrics/analyzer.test.d.ts.map +1 -0
  78. package/dist/metrics/analyzer.test.js +65 -0
  79. package/dist/metrics/analyzer.test.js.map +1 -0
  80. package/dist/metrics/parser.test.d.ts +2 -0
  81. package/dist/metrics/parser.test.d.ts.map +1 -0
  82. package/dist/metrics/parser.test.js +106 -0
  83. package/dist/metrics/parser.test.js.map +1 -0
  84. package/dist/metrics/store.d.ts +2 -0
  85. package/dist/metrics/store.d.ts.map +1 -1
  86. package/dist/metrics/store.js +26 -50
  87. package/dist/metrics/store.js.map +1 -1
  88. package/dist/metrics/store.test.d.ts +2 -0
  89. package/dist/metrics/store.test.d.ts.map +1 -0
  90. package/dist/metrics/store.test.js +148 -0
  91. package/dist/metrics/store.test.js.map +1 -0
  92. package/dist/paths.js +5 -5
  93. package/dist/paths.js.map +1 -1
  94. package/dist/providers/auth/auth-manager.d.ts +1 -0
  95. package/dist/providers/auth/auth-manager.d.ts.map +1 -1
  96. package/dist/providers/auth/auth-manager.js +8 -1
  97. package/dist/providers/auth/auth-manager.js.map +1 -1
  98. package/dist/providers/auth/auth-manager.test.d.ts +2 -0
  99. package/dist/providers/auth/auth-manager.test.d.ts.map +1 -0
  100. package/dist/providers/auth/auth-manager.test.js +364 -0
  101. package/dist/providers/auth/auth-manager.test.js.map +1 -0
  102. package/dist/providers/auth/token-store.js +2 -2
  103. package/dist/providers/auth/token-store.js.map +1 -1
  104. package/dist/providers/claude/history.test.d.ts +2 -0
  105. package/dist/providers/claude/history.test.d.ts.map +1 -0
  106. package/dist/providers/claude/history.test.js +757 -0
  107. package/dist/providers/claude/history.test.js.map +1 -0
  108. package/dist/providers/claude/provider.d.ts +2 -1
  109. package/dist/providers/claude/provider.d.ts.map +1 -1
  110. package/dist/providers/claude/provider.js +87 -25
  111. package/dist/providers/claude/provider.js.map +1 -1
  112. package/dist/providers/claude/provider.test.d.ts +2 -0
  113. package/dist/providers/claude/provider.test.d.ts.map +1 -0
  114. package/dist/providers/claude/provider.test.js +1168 -0
  115. package/dist/providers/claude/provider.test.js.map +1 -0
  116. package/dist/providers/openai/history.test.d.ts +2 -0
  117. package/dist/providers/openai/history.test.d.ts.map +1 -0
  118. package/dist/providers/openai/history.test.js +657 -0
  119. package/dist/providers/openai/history.test.js.map +1 -0
  120. package/dist/providers/openai/provider.d.ts +2 -1
  121. package/dist/providers/openai/provider.d.ts.map +1 -1
  122. package/dist/providers/openai/provider.js +75 -22
  123. package/dist/providers/openai/provider.js.map +1 -1
  124. package/dist/providers/openai/provider.test.d.ts +2 -0
  125. package/dist/providers/openai/provider.test.d.ts.map +1 -0
  126. package/dist/providers/openai/provider.test.js +1093 -0
  127. package/dist/providers/openai/provider.test.js.map +1 -0
  128. package/dist/providers/retry.test.d.ts +2 -0
  129. package/dist/providers/retry.test.d.ts.map +1 -0
  130. package/dist/providers/retry.test.js +194 -0
  131. package/dist/providers/retry.test.js.map +1 -0
  132. package/dist/providers/sse.d.ts +1 -0
  133. package/dist/providers/sse.d.ts.map +1 -1
  134. package/dist/providers/sse.js +29 -20
  135. package/dist/providers/sse.js.map +1 -1
  136. package/dist/providers/sse.test.d.ts +2 -0
  137. package/dist/providers/sse.test.d.ts.map +1 -0
  138. package/dist/providers/sse.test.js +79 -0
  139. package/dist/providers/sse.test.js.map +1 -0
  140. package/dist/providers/types.d.ts +3 -0
  141. package/dist/providers/types.d.ts.map +1 -1
  142. package/dist/providers/types.js.map +1 -1
  143. package/dist/providers/types.test.d.ts +2 -0
  144. package/dist/providers/types.test.d.ts.map +1 -0
  145. package/dist/providers/types.test.js +112 -0
  146. package/dist/providers/types.test.js.map +1 -0
  147. package/dist/remote/connection-pool.d.ts.map +1 -1
  148. package/dist/remote/connection-pool.js +24 -3
  149. package/dist/remote/connection-pool.js.map +1 -1
  150. package/dist/remote/file-sync.d.ts.map +1 -1
  151. package/dist/remote/file-sync.js +4 -3
  152. package/dist/remote/file-sync.js.map +1 -1
  153. package/dist/scheduler/sleep-manager.d.ts.map +1 -1
  154. package/dist/scheduler/sleep-manager.js +9 -2
  155. package/dist/scheduler/sleep-manager.js.map +1 -1
  156. package/dist/scheduler/sleep-manager.test.d.ts +2 -0
  157. package/dist/scheduler/sleep-manager.test.d.ts.map +1 -0
  158. package/dist/scheduler/sleep-manager.test.js +491 -0
  159. package/dist/scheduler/sleep-manager.test.js.map +1 -0
  160. package/dist/scheduler/ssh-batcher.d.ts.map +1 -1
  161. package/dist/scheduler/ssh-batcher.js +6 -4
  162. package/dist/scheduler/ssh-batcher.js.map +1 -1
  163. package/dist/scheduler/ssh-batcher.test.d.ts +2 -0
  164. package/dist/scheduler/ssh-batcher.test.d.ts.map +1 -0
  165. package/dist/scheduler/ssh-batcher.test.js +76 -0
  166. package/dist/scheduler/ssh-batcher.test.js.map +1 -0
  167. package/dist/scheduler/state-store.d.ts.map +1 -1
  168. package/dist/scheduler/state-store.js +1 -2
  169. package/dist/scheduler/state-store.js.map +1 -1
  170. package/dist/scheduler/trigger-scheduler.d.ts.map +1 -1
  171. package/dist/scheduler/trigger-scheduler.js +59 -36
  172. package/dist/scheduler/trigger-scheduler.js.map +1 -1
  173. package/dist/scheduler/trigger-scheduler.test.d.ts +2 -0
  174. package/dist/scheduler/trigger-scheduler.test.d.ts.map +1 -0
  175. package/dist/scheduler/trigger-scheduler.test.js +483 -0
  176. package/dist/scheduler/trigger-scheduler.test.js.map +1 -0
  177. package/dist/scheduler/triggers/file.d.ts.map +1 -1
  178. package/dist/scheduler/triggers/file.js +12 -3
  179. package/dist/scheduler/triggers/file.js.map +1 -1
  180. package/dist/scheduler/triggers/file.test.d.ts +2 -0
  181. package/dist/scheduler/triggers/file.test.d.ts.map +1 -0
  182. package/dist/scheduler/triggers/file.test.js +294 -0
  183. package/dist/scheduler/triggers/file.test.js.map +1 -0
  184. package/dist/scheduler/triggers/metric.d.ts +3 -1
  185. package/dist/scheduler/triggers/metric.d.ts.map +1 -1
  186. package/dist/scheduler/triggers/metric.js +12 -8
  187. package/dist/scheduler/triggers/metric.js.map +1 -1
  188. package/dist/scheduler/triggers/metric.test.d.ts +2 -0
  189. package/dist/scheduler/triggers/metric.test.d.ts.map +1 -0
  190. package/dist/scheduler/triggers/metric.test.js +533 -0
  191. package/dist/scheduler/triggers/metric.test.js.map +1 -0
  192. package/dist/scheduler/triggers/process-exit.d.ts.map +1 -1
  193. package/dist/scheduler/triggers/process-exit.js +2 -1
  194. package/dist/scheduler/triggers/process-exit.js.map +1 -1
  195. package/dist/scheduler/triggers/process-exit.test.d.ts +2 -0
  196. package/dist/scheduler/triggers/process-exit.test.d.ts.map +1 -0
  197. package/dist/scheduler/triggers/process-exit.test.js +118 -0
  198. package/dist/scheduler/triggers/process-exit.test.js.map +1 -0
  199. package/dist/scheduler/triggers/resource.d.ts.map +1 -1
  200. package/dist/scheduler/triggers/resource.js +2 -10
  201. package/dist/scheduler/triggers/resource.js.map +1 -1
  202. package/dist/scheduler/triggers/resource.test.d.ts +2 -0
  203. package/dist/scheduler/triggers/resource.test.d.ts.map +1 -0
  204. package/dist/scheduler/triggers/resource.test.js +225 -0
  205. package/dist/scheduler/triggers/resource.test.js.map +1 -0
  206. package/dist/scheduler/triggers/timer.test.d.ts +2 -0
  207. package/dist/scheduler/triggers/timer.test.d.ts.map +1 -0
  208. package/dist/scheduler/triggers/timer.test.js +56 -0
  209. package/dist/scheduler/triggers/timer.test.js.map +1 -0
  210. package/dist/scheduler/triggers/types.d.ts +4 -2
  211. package/dist/scheduler/triggers/types.d.ts.map +1 -1
  212. package/dist/scheduler/triggers/types.js +0 -1
  213. package/dist/scheduler/triggers/types.js.map +1 -1
  214. package/dist/skills/executor.d.ts.map +1 -1
  215. package/dist/skills/executor.js +13 -15
  216. package/dist/skills/executor.js.map +1 -1
  217. package/dist/store/database.d.ts +5 -0
  218. package/dist/store/database.d.ts.map +1 -1
  219. package/dist/store/database.js +17 -1
  220. package/dist/store/database.js.map +1 -1
  221. package/dist/store/migrations.d.ts.map +1 -1
  222. package/dist/store/migrations.js +7 -0
  223. package/dist/store/migrations.js.map +1 -1
  224. package/dist/store/migrations.test.d.ts +2 -0
  225. package/dist/store/migrations.test.d.ts.map +1 -0
  226. package/dist/store/migrations.test.js +278 -0
  227. package/dist/store/migrations.test.js.map +1 -0
  228. package/dist/store/session-store-edge.test.d.ts +2 -0
  229. package/dist/store/session-store-edge.test.d.ts.map +1 -0
  230. package/dist/store/session-store-edge.test.js +522 -0
  231. package/dist/store/session-store-edge.test.js.map +1 -0
  232. package/dist/store/session-store.d.ts +28 -1
  233. package/dist/store/session-store.d.ts.map +1 -1
  234. package/dist/store/session-store.js +62 -26
  235. package/dist/store/session-store.js.map +1 -1
  236. package/dist/store/session-store.test.d.ts +2 -0
  237. package/dist/store/session-store.test.d.ts.map +1 -0
  238. package/dist/store/session-store.test.js +125 -0
  239. package/dist/store/session-store.test.js.map +1 -0
  240. package/dist/subagent/executor.d.ts +24 -0
  241. package/dist/subagent/executor.d.ts.map +1 -0
  242. package/dist/subagent/executor.js +140 -0
  243. package/dist/subagent/executor.js.map +1 -0
  244. package/dist/subagent/manager.d.ts +20 -0
  245. package/dist/subagent/manager.d.ts.map +1 -0
  246. package/dist/subagent/manager.js +100 -0
  247. package/dist/subagent/manager.js.map +1 -0
  248. package/dist/subagent/scoped-memory.d.ts +28 -0
  249. package/dist/subagent/scoped-memory.d.ts.map +1 -0
  250. package/dist/subagent/scoped-memory.js +122 -0
  251. package/dist/subagent/scoped-memory.js.map +1 -0
  252. package/dist/subagent/types.d.ts +27 -0
  253. package/dist/subagent/types.d.ts.map +1 -0
  254. package/dist/subagent/types.js +2 -0
  255. package/dist/subagent/types.js.map +1 -0
  256. package/dist/tools/file-ops.d.ts.map +1 -1
  257. package/dist/tools/file-ops.js +23 -13
  258. package/dist/tools/file-ops.js.map +1 -1
  259. package/dist/tools/file-ops.test.d.ts +2 -0
  260. package/dist/tools/file-ops.test.d.ts.map +1 -0
  261. package/dist/tools/file-ops.test.js +656 -0
  262. package/dist/tools/file-ops.test.js.map +1 -0
  263. package/dist/tools/memory-tools.test.d.ts +2 -0
  264. package/dist/tools/memory-tools.test.d.ts.map +1 -0
  265. package/dist/tools/memory-tools.test.js +273 -0
  266. package/dist/tools/memory-tools.test.js.map +1 -0
  267. package/dist/tools/sleep.d.ts.map +1 -1
  268. package/dist/tools/sleep.js +19 -7
  269. package/dist/tools/sleep.js.map +1 -1
  270. package/dist/tools/subagent.d.ts +10 -0
  271. package/dist/tools/subagent.d.ts.map +1 -0
  272. package/dist/tools/subagent.js +164 -0
  273. package/dist/tools/subagent.js.map +1 -0
  274. package/dist/tools/task-output.d.ts.map +1 -1
  275. package/dist/tools/task-output.js +13 -2
  276. package/dist/tools/task-output.js.map +1 -1
  277. package/dist/ui/components/input-bar.d.ts +1 -1
  278. package/dist/ui/components/input-bar.d.ts.map +1 -1
  279. package/dist/ui/components/input-bar.js +3 -3
  280. package/dist/ui/components/input-bar.js.map +1 -1
  281. package/dist/ui/components/input-bar.test.d.ts +2 -0
  282. package/dist/ui/components/input-bar.test.d.ts.map +1 -0
  283. package/dist/ui/components/input-bar.test.js +380 -0
  284. package/dist/ui/components/input-bar.test.js.map +1 -0
  285. package/dist/ui/components/key-hint-rule.d.ts +2 -1
  286. package/dist/ui/components/key-hint-rule.d.ts.map +1 -1
  287. package/dist/ui/components/key-hint-rule.js +3 -3
  288. package/dist/ui/components/key-hint-rule.js.map +1 -1
  289. package/dist/ui/components/status-bar.d.ts +1 -1
  290. package/dist/ui/components/status-bar.d.ts.map +1 -1
  291. package/dist/ui/components/status-bar.js +11 -10
  292. package/dist/ui/components/status-bar.js.map +1 -1
  293. package/dist/ui/components/status-bar.test.d.ts +2 -0
  294. package/dist/ui/components/status-bar.test.d.ts.map +1 -0
  295. package/dist/ui/components/status-bar.test.js +206 -0
  296. package/dist/ui/components/status-bar.test.js.map +1 -0
  297. package/dist/ui/format.d.ts +9 -0
  298. package/dist/ui/format.d.ts.map +1 -1
  299. package/dist/ui/format.js +21 -0
  300. package/dist/ui/format.js.map +1 -1
  301. package/dist/ui/format.test.d.ts +2 -0
  302. package/dist/ui/format.test.d.ts.map +1 -0
  303. package/dist/ui/format.test.js +122 -0
  304. package/dist/ui/format.test.js.map +1 -0
  305. package/dist/ui/layout.d.ts.map +1 -1
  306. package/dist/ui/layout.js +123 -16
  307. package/dist/ui/layout.js.map +1 -1
  308. package/dist/ui/markdown.test.d.ts +2 -0
  309. package/dist/ui/markdown.test.d.ts.map +1 -0
  310. package/dist/ui/markdown.test.js +133 -0
  311. package/dist/ui/markdown.test.js.map +1 -0
  312. package/dist/ui/mouse-filter.test.d.ts +2 -0
  313. package/dist/ui/mouse-filter.test.d.ts.map +1 -0
  314. package/dist/ui/mouse-filter.test.js +231 -0
  315. package/dist/ui/mouse-filter.test.js.map +1 -0
  316. package/dist/ui/overlays/metrics-overlay.test.d.ts +2 -0
  317. package/dist/ui/overlays/metrics-overlay.test.d.ts.map +1 -0
  318. package/dist/ui/overlays/metrics-overlay.test.js +248 -0
  319. package/dist/ui/overlays/metrics-overlay.test.js.map +1 -0
  320. package/dist/ui/overlays/task-overlay.test.d.ts +2 -0
  321. package/dist/ui/overlays/task-overlay.test.d.ts.map +1 -0
  322. package/dist/ui/overlays/task-overlay.test.js +238 -0
  323. package/dist/ui/overlays/task-overlay.test.js.map +1 -0
  324. package/dist/ui/panels/conversation.d.ts.map +1 -1
  325. package/dist/ui/panels/conversation.js +60 -5
  326. package/dist/ui/panels/conversation.js.map +1 -1
  327. package/dist/ui/panels/conversation.test.d.ts +2 -0
  328. package/dist/ui/panels/conversation.test.d.ts.map +1 -0
  329. package/dist/ui/panels/conversation.test.js +381 -0
  330. package/dist/ui/panels/conversation.test.js.map +1 -0
  331. package/dist/ui/panels/metrics-dashboard.test.d.ts +2 -0
  332. package/dist/ui/panels/metrics-dashboard.test.d.ts.map +1 -0
  333. package/dist/ui/panels/metrics-dashboard.test.js +191 -0
  334. package/dist/ui/panels/metrics-dashboard.test.js.map +1 -0
  335. package/dist/ui/panels/sleep-panel.test.d.ts +2 -0
  336. package/dist/ui/panels/sleep-panel.test.d.ts.map +1 -0
  337. package/dist/ui/panels/sleep-panel.test.js +376 -0
  338. package/dist/ui/panels/sleep-panel.test.js.map +1 -0
  339. package/dist/ui/panels/task-list.d.ts.map +1 -1
  340. package/dist/ui/panels/task-list.js +5 -6
  341. package/dist/ui/panels/task-list.js.map +1 -1
  342. package/dist/ui/panels/task-list.test.d.ts +2 -0
  343. package/dist/ui/panels/task-list.test.d.ts.map +1 -0
  344. package/dist/ui/panels/task-list.test.js +210 -0
  345. package/dist/ui/panels/task-list.test.js.map +1 -0
  346. package/dist/ui/theme.test.d.ts +2 -0
  347. package/dist/ui/theme.test.d.ts.map +1 -0
  348. package/dist/ui/theme.test.js +159 -0
  349. package/dist/ui/theme.test.js.map +1 -0
  350. package/dist/ui/types.d.ts +3 -0
  351. package/dist/ui/types.d.ts.map +1 -1
  352. package/package.json +6 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../src/subagent/manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAA4B,MAAM,eAAe,CAAC;AAI/F,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,MAAM,OAAO,eAAgB,SAAQ,YAAY;IACvC,MAAM,GAAG,IAAI,GAAG,EAAwB,CAAC;IACxC,QAAQ,CAAS;IAE1B,YAAY,QAAQ,GAAG,CAAC;QACtB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,gFAAgF;IAChF,KAAK,CACH,MAA2B,EAC3B,YAA0B,EAC1B,QAA0B,EAC1B,YAAyB,EACzB,eAAuB,EACvB,KAAK,GAAG,CAAC;QAET,IAAI,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,sCAAsC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAC1E,CAAC;QAED,0DAA0D;QAC1D,IAAI,CAAC,KAAK,EAAE,CAAC;QAEb,MAAM,QAAQ,GAAG,uBAAuB,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACtF,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAErB,MAAM,IAAI,GAAiB;YACzB,EAAE;YACF,eAAe;YACf,KAAK;YACL,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;YACrB,OAAO,EAAE,CAAC;YACV,WAAW,EAAE,CAAC;YACd,YAAY,EAAE,CAAC;YACf,YAAY,EAAE,cAAc,EAAE,EAAE;YAChC,eAAe,EAAE,IAAI,eAAe,EAAE;SACvC,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAC1B,QAAQ,CAAC,UAAU,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QACnG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAE3B,sCAAsC;QACtC,MAAM,GAAG,GAAwB;YAC/B,YAAY;YACZ,QAAQ;YACR,YAAY;YACZ,eAAe;YACf,KAAK;YACL,eAAe,EAAE,IAAI;SACtB,CAAC;QAEF,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC;aAC3B,IAAI,CAAC,GAAG,EAAE;YACT,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;gBAChC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YAC/B,CAAC;iBAAM,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;gBACvC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACb,wDAAwD;YACxD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBAC9B,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;gBACvB,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;gBACzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAC9B,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC;IACd,CAAC;IAED,GAAG,CAAC,EAAU;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED,UAAU;QACR,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;IACzE,CAAC;IAED,OAAO;QACL,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IACnC,CAAC;IAED,cAAc,CAAC,eAAuB;QACpC,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,KAAK,eAAe,CAAC,CAAC;IACxF,CAAC;IAED,MAAM,CAAC,EAAU;QACf,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACjC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO,KAAK,CAAC;QACrD,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,4EAA4E;IAC5E,KAAK,CAAC,QAAQ,GAAG,EAAE,GAAG,MAAM;QAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC;QACrC,KAAK,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACrC,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,GAAG,MAAM,EAAE,CAAC;gBAClE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,28 @@
1
+ import { MemoryStore, type MemoryNode } from "../memory/memory-store.js";
2
+ /**
3
+ * Memory wrapper for subagents. Writes are scoped under /subagents/{id}/
4
+ * in the parent's memory. Reads check own scope first, then fall through
5
+ * to the parent for read-only access to the broader context.
6
+ *
7
+ * Follows the same override pattern as GlobalMemoryRouter.
8
+ */
9
+ export declare class ScopedMemoryStore extends MemoryStore {
10
+ private parent;
11
+ private prefix;
12
+ constructor(parent: MemoryStore, subagentId: string);
13
+ private toScoped;
14
+ private isOwn;
15
+ write(path: string, gist: string, content?: string | null): void;
16
+ read(path: string): MemoryNode | null;
17
+ exists(path: string): boolean;
18
+ ls(dirPath?: string): MemoryNode[];
19
+ tree(dirPath?: string): Array<{
20
+ path: string;
21
+ gist: string;
22
+ isDir: boolean;
23
+ }>;
24
+ rm(path: string): number;
25
+ clear(): void;
26
+ count(): number;
27
+ }
28
+ //# sourceMappingURL=scoped-memory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scoped-memory.d.ts","sourceRoot":"","sources":["../../src/subagent/scoped-memory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,KAAK,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEzE;;;;;;GAMG;AACH,qBAAa,iBAAkB,SAAQ,WAAW;IAChD,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM;IAOnD,OAAO,CAAC,QAAQ;IAKhB,OAAO,CAAC,KAAK;IAMJ,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAMhE,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI;IAarC,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAO7B,EAAE,CAAC,OAAO,SAAM,GAAG,UAAU,EAAE;IAkC/B,IAAI,CAAC,OAAO,SAAM,GAAG,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC;IAgC1E,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAIxB,KAAK,IAAI,IAAI;IAIb,KAAK,IAAI,MAAM;CAIzB"}
@@ -0,0 +1,122 @@
1
+ import { MemoryStore } from "../memory/memory-store.js";
2
+ /**
3
+ * Memory wrapper for subagents. Writes are scoped under /subagents/{id}/
4
+ * in the parent's memory. Reads check own scope first, then fall through
5
+ * to the parent for read-only access to the broader context.
6
+ *
7
+ * Follows the same override pattern as GlobalMemoryRouter.
8
+ */
9
+ export class ScopedMemoryStore extends MemoryStore {
10
+ parent;
11
+ prefix; // e.g. "/subagents/abc123"
12
+ constructor(parent, subagentId) {
13
+ // Use a dummy session ID — all actual DB ops go through `parent`
14
+ super(`__scoped_${subagentId}__`);
15
+ this.parent = parent;
16
+ this.prefix = `/subagents/${subagentId}`;
17
+ }
18
+ toScoped(path) {
19
+ if (path.startsWith(this.prefix))
20
+ return path;
21
+ return this.prefix + (path.startsWith("/") ? path : "/" + path);
22
+ }
23
+ isOwn(path) {
24
+ return path.startsWith(this.prefix + "/") || path === this.prefix || path === this.prefix + "/";
25
+ }
26
+ // ─── Writes always go to scoped prefix in parent ──────
27
+ write(path, gist, content) {
28
+ this.parent.write(this.toScoped(path), gist, content);
29
+ }
30
+ // ─── Reads: own scope first, then parent (read-only) ──
31
+ read(path) {
32
+ // Already a fully-qualified own path
33
+ if (this.isOwn(path)) {
34
+ return this.parent.read(path);
35
+ }
36
+ // Check scoped version first
37
+ const scoped = this.toScoped(path);
38
+ const own = this.parent.read(scoped);
39
+ if (own)
40
+ return { ...own, path };
41
+ // Fall through to parent
42
+ return this.parent.read(path);
43
+ }
44
+ exists(path) {
45
+ if (this.isOwn(path))
46
+ return this.parent.exists(path);
47
+ return this.parent.exists(this.toScoped(path)) || this.parent.exists(path);
48
+ }
49
+ // ─── Listing: merge own children + parent children ──
50
+ ls(dirPath = "/") {
51
+ if (dirPath === "/") {
52
+ // At root: show own scoped children (remapped to /) + parent root (read-only)
53
+ const ownNodes = this.parent.ls(this.prefix + "/").map((n) => ({
54
+ ...n,
55
+ path: n.path.slice(this.prefix.length),
56
+ }));
57
+ const parentNodes = this.parent.ls("/");
58
+ // Merge: own nodes shadow parent nodes with same name
59
+ const ownPaths = new Set(ownNodes.map((n) => n.path));
60
+ const merged = [...ownNodes];
61
+ for (const pn of parentNodes) {
62
+ if (!ownPaths.has(pn.path))
63
+ merged.push(pn);
64
+ }
65
+ return merged;
66
+ }
67
+ if (this.isOwn(dirPath)) {
68
+ return this.parent.ls(dirPath);
69
+ }
70
+ // Check scoped version first
71
+ const scopedDir = this.toScoped(dirPath);
72
+ const ownChildren = this.parent.ls(scopedDir);
73
+ if (ownChildren.length > 0) {
74
+ return ownChildren.map((n) => ({
75
+ ...n,
76
+ path: n.path.slice(this.prefix.length),
77
+ }));
78
+ }
79
+ // Fall through to parent
80
+ return this.parent.ls(dirPath);
81
+ }
82
+ tree(dirPath = "/") {
83
+ if (dirPath === "/") {
84
+ const ownTree = this.parent.tree(this.prefix + "/").map((n) => ({
85
+ ...n,
86
+ path: n.path.slice(this.prefix.length),
87
+ }));
88
+ const parentTree = this.parent.tree("/");
89
+ const ownPaths = new Set(ownTree.map((n) => n.path));
90
+ const merged = [...ownTree];
91
+ for (const pn of parentTree) {
92
+ if (!ownPaths.has(pn.path))
93
+ merged.push(pn);
94
+ }
95
+ return merged.sort((a, b) => a.path.localeCompare(b.path));
96
+ }
97
+ if (this.isOwn(dirPath)) {
98
+ return this.parent.tree(dirPath);
99
+ }
100
+ const scopedDir = this.toScoped(dirPath);
101
+ const ownTree = this.parent.tree(scopedDir);
102
+ if (ownTree.length > 0) {
103
+ return ownTree.map((n) => ({
104
+ ...n,
105
+ path: n.path.slice(this.prefix.length),
106
+ }));
107
+ }
108
+ return this.parent.tree(dirPath);
109
+ }
110
+ // ─── Deletes: only from own scope ──
111
+ rm(path) {
112
+ return this.parent.rm(this.toScoped(path));
113
+ }
114
+ clear() {
115
+ this.parent.rm(this.prefix + "/");
116
+ }
117
+ count() {
118
+ // Count own scoped nodes (approximation: use parent tree)
119
+ return this.parent.tree(this.prefix + "/").length;
120
+ }
121
+ }
122
+ //# sourceMappingURL=scoped-memory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scoped-memory.js","sourceRoot":"","sources":["../../src/subagent/scoped-memory.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ export type SubagentStatus = "running" | "completed" | "failed" | "cancelled";
2
+ export interface SubagentInfo {
3
+ id: string;
4
+ parentSessionId: string;
5
+ depth: number;
6
+ task: string;
7
+ model: string;
8
+ provider: "claude" | "openai";
9
+ status: SubagentStatus;
10
+ createdAt: number;
11
+ completedAt?: number;
12
+ result?: string;
13
+ error?: string;
14
+ costUsd: number;
15
+ inputTokens: number;
16
+ outputTokens: number;
17
+ memoryPrefix: string;
18
+ abortController: AbortController;
19
+ }
20
+ export interface SubagentSpawnConfig {
21
+ task: string;
22
+ model?: string;
23
+ provider?: "claude" | "openai";
24
+ tools_deny?: string[];
25
+ max_turns?: number;
26
+ }
27
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/subagent/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC;AAE9E,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC9B,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,eAAe,CAAC;CAClC;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/subagent/types.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"file-ops.d.ts","sourceRoot":"","sources":["../../src/tools/file-ops.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAsBnE,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,cAAc,GAAG,cAAc,CA0FvE;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,cAAc,GAAG,cAAc,CA2DxE;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,cAAc,GAAG,cAAc,CAmExE"}
1
+ {"version":3,"file":"file-ops.d.ts","sourceRoot":"","sources":["../../src/tools/file-ops.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAsBnE,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,cAAc,GAAG,cAAc,CAmGvE;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,cAAc,GAAG,cAAc,CA0DxE;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,cAAc,GAAG,cAAc,CAmExE"}
@@ -1,4 +1,4 @@
1
- import { shellQuote, toolError } from "../ui/format.js";
1
+ import { shellQuote, toolError, splitAtSentinel } from "../ui/format.js";
2
2
  const IMAGE_EXTENSIONS = new Set([".png", ".jpg", ".jpeg", ".gif", ".webp"]);
3
3
  const PDF_EXTENSIONS = new Set([".pdf"]);
4
4
  const MAX_BINARY_SIZE = 10 * 1024 * 1024; // 10MB raw
@@ -76,15 +76,25 @@ export function createReadFileTool(pool) {
76
76
  const offset = args.offset ?? 1;
77
77
  const limit = args.limit ?? 200;
78
78
  const end = offset + limit - 1;
79
- const result = await pool.exec(machineId, `sed -n '${offset},${end}p' ${shellQuote(path)}`);
79
+ const safeOffset = Math.max(1, Math.floor(offset));
80
+ const safeEnd = Math.max(safeOffset, Math.floor(end));
81
+ const quoted = shellQuote(path);
82
+ const result = await pool.exec(machineId, `{ sed -n '${safeOffset},${safeEnd}p' ${quoted} && echo '---HELIOS_LINECOUNT---' && wc -l < ${quoted}; } 2>/dev/null`);
80
83
  if (result.exitCode !== 0) {
81
84
  return toolError(result.stderr.trim() || `exit code ${result.exitCode}`);
82
85
  }
83
- // Count total lines for context
84
- const wcResult = await pool.exec(machineId, `wc -l < ${shellQuote(path)}`);
85
- const totalLines = parseInt(wcResult.stdout.trim(), 10) || 0;
86
+ const split = splitAtSentinel(result.stdout, '---HELIOS_LINECOUNT---');
87
+ let content;
88
+ let totalLines = 0;
89
+ if (split) {
90
+ content = split.before;
91
+ totalLines = parseInt(split.after, 10) || 0;
92
+ }
93
+ else {
94
+ content = result.stdout;
95
+ }
86
96
  return JSON.stringify({
87
- content: result.stdout,
97
+ content,
88
98
  lines: { from: offset, to: Math.min(end, totalLines), total: totalLines },
89
99
  });
90
100
  },
@@ -121,22 +131,22 @@ export function createWriteFileTool(pool) {
121
131
  const path = args.path;
122
132
  const content = args.content;
123
133
  const append = args.append ?? false;
124
- // Ensure parent directory exists
134
+ // Ensure parent directory exists, write file, and count lines in one SSH call
125
135
  const dir = path.replace(/\/[^/]+$/, "");
126
- if (dir && dir !== path) {
127
- await pool.exec(machineId, `mkdir -p ${shellQuote(dir)}`);
128
- }
129
136
  const op = append ? ">>" : ">";
130
137
  // Use heredoc to handle multi-line content safely
131
138
  // Heredoc implicitly adds a trailing newline, so strip one from content to avoid doubling
132
139
  const body = content.endsWith("\n") ? content.slice(0, -1) : content;
133
140
  const heredocTag = "_HELIOS_EOF_" + Math.random().toString(36).slice(2, 8);
134
- const result = await pool.exec(machineId, `cat ${op} ${shellQuote(path)} <<'${heredocTag}'\n${body}\n${heredocTag}`);
141
+ const quoted = shellQuote(path);
142
+ const mkdirPart = dir && dir !== path ? `mkdir -p ${shellQuote(dir)} && ` : "";
143
+ const result = await pool.exec(machineId, `${mkdirPart}cat ${op} ${quoted} <<'${heredocTag}'\n${body}\n${heredocTag}\nwc -l < ${quoted}`);
135
144
  if (result.exitCode !== 0) {
136
145
  return toolError(result.stderr.trim() || `exit code ${result.exitCode}`);
137
146
  }
138
- const wcResult = await pool.exec(machineId, `wc -l < ${shellQuote(path)}`);
139
- const totalLines = parseInt(wcResult.stdout.trim(), 10) || 0;
147
+ // The last line of stdout is the line count from wc -l
148
+ const lines = result.stdout.trimEnd().split('\n');
149
+ const totalLines = parseInt(lines[lines.length - 1].trim(), 10) || 0;
140
150
  return JSON.stringify({ written: path, lines: totalLines });
141
151
  },
142
152
  };
@@ -1 +1 @@
1
- {"version":3,"file":"file-ops.js","sourceRoot":"","sources":["../../src/tools/file-ops.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAExD,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAC7E,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AACzC,MAAM,eAAe,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,WAAW;AACrD,MAAM,iBAAiB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,kCAAkC;AAE9E,MAAM,UAAU,GAA2B;IACzC,MAAM,EAAE,WAAW;IACnB,MAAM,EAAE,YAAY;IACpB,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE,WAAW;IACnB,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE,iBAAiB;CAC1B,CAAC;AAEF,SAAS,YAAY,CAAC,IAAY;IAChC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAClC,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAoB;IACrD,OAAO;QACL,IAAI,EAAE,WAAW;QACjB,WAAW,EACT,wMAAwM;QAC1M,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,qDAAqD;iBACnE;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,2BAA2B;iBACzC;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,6EAA6E;iBAC3F;gBACD,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,8DAA8D;iBAC5E;aACF;YACD,QAAQ,EAAE,CAAC,YAAY,EAAE,MAAM,CAAC;SACjC;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;YACtB,MAAM,SAAS,GAAG,IAAI,CAAC,UAAoB,CAAC;YAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAc,CAAC;YACjC,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;YAE/B,qDAAqD;YACrD,IAAI,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACzD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC7E,IAAI,UAAU,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;oBAC9B,OAAO,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,mBAAmB,IAAI,EAAE,CAAC,CAAC;gBAC1E,CAAC;gBACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;gBACxD,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;oBACtC,OAAO,SAAS,CAAC,4BAA4B,CAAC,CAAC;gBACjD,CAAC;gBACD,IAAI,QAAQ,GAAG,eAAe,EAAE,CAAC;oBAC/B,OAAO,SAAS,CAAC,mBAAmB,CAAC,QAAQ,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,oCAAoC,CAAC,CAAC;gBAC/G,CAAC;gBAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,IAAI,CAC/B,SAAS,EACT,YAAY,UAAU,CAAC,IAAI,CAAC,EAAE,EAC9B,EAAE,SAAS,EAAE,iBAAiB,EAAE,CACjC,CAAC;gBACF,IAAI,SAAS,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;oBAC7B,OAAO,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,qBAAqB,CAAC,CAAC;gBACrE,CAAC;gBAED,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,0BAA0B,CAAC;gBAChE,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACjD,MAAM,KAAK,GAAG,SAAS,KAAK,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;gBAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC;gBAE/C,OAAO,IAAI,CAAC,SAAS,CAAC;oBACpB,YAAY,EAAE,IAAI;oBAClB,IAAI,EAAE,IAAI,KAAK,KAAK,QAAQ,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;oBACnE,WAAW,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;iBACnC,CAAC,CAAC;YACL,CAAC;YAED,gCAAgC;YAChC,MAAM,MAAM,GAAI,IAAI,CAAC,MAAiB,IAAI,CAAC,CAAC;YAC5C,MAAM,KAAK,GAAI,IAAI,CAAC,KAAgB,IAAI,GAAG,CAAC;YAC5C,MAAM,GAAG,GAAG,MAAM,GAAG,KAAK,GAAG,CAAC,CAAC;YAC/B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAC5B,SAAS,EACT,WAAW,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,EAAE,CACjD,CAAC;YAEF,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;gBAC1B,OAAO,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,aAAa,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC3E,CAAC;YAED,gCAAgC;YAChC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC3E,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;YAE7D,OAAO,IAAI,CAAC,SAAS,CAAC;gBACpB,OAAO,EAAE,MAAM,CAAC,MAAM;gBACtB,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;aAC1E,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAoB;IACtD,OAAO;QACL,IAAI,EAAE,YAAY;QAClB,WAAW,EACT,yFAAyF;QAC3F,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,oDAAoD;iBAClE;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,4BAA4B;iBAC1C;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,4BAA4B;iBAC1C;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,8CAA8C;iBAC5D;aACF;YACD,QAAQ,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,CAAC;SAC5C;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;YACtB,MAAM,SAAS,GAAG,IAAI,CAAC,UAAoB,CAAC;YAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAc,CAAC;YACjC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAiB,CAAC;YACvC,MAAM,MAAM,GAAI,IAAI,CAAC,MAAkB,IAAI,KAAK,CAAC;YAEjD,iCAAiC;YACjC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;YACzC,IAAI,GAAG,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;gBACxB,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC5D,CAAC;YAED,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;YAC/B,kDAAkD;YAClD,0FAA0F;YAC1F,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YACrE,MAAM,UAAU,GAAG,cAAc,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC3E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAC5B,SAAS,EACT,OAAO,EAAE,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,UAAU,MAAM,IAAI,KAAK,UAAU,EAAE,CAC1E,CAAC;YAEF,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;gBAC1B,OAAO,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,aAAa,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC3E,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC3E,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;YAE7D,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;QAC9D,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAoB;IACtD,OAAO;QACL,IAAI,EAAE,YAAY;QAClB,WAAW,EACT,kHAAkH;QACpH,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,6DAA6D;iBAC3E;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,2BAA2B;iBACzC;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,uEAAuE;iBACrF;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,kBAAkB;iBAChC;aACF;YACD,QAAQ,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,CAAC;SAC7D;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;YACtB,MAAM,SAAS,GAAG,IAAI,CAAC,UAAoB,CAAC;YAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAc,CAAC;YACjC,MAAM,MAAM,GAAG,IAAI,CAAC,UAAoB,CAAC;YACzC,MAAM,MAAM,GAAG,IAAI,CAAC,UAAoB,CAAC;YAEzC,oBAAoB;YACpB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzE,IAAI,UAAU,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;gBAC9B,OAAO,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,qBAAqB,CAAC,CAAC;YACtE,CAAC;YAED,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC;YAClC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;YAE/C,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;gBAChB,OAAO,SAAS,CAAC,8BAA8B,CAAC,CAAC;YACnD,CAAC;YACD,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBACd,OAAO,SAAS,CAAC,oBAAoB,KAAK,4DAA4D,CAAC,CAAC;YAC1G,CAAC;YAED,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAEhD,2BAA2B;YAC3B,2DAA2D;YAC3D,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YACrE,MAAM,UAAU,GAAG,cAAc,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC3E,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,IAAI,CACjC,SAAS,EACT,SAAS,UAAU,CAAC,IAAI,CAAC,OAAO,UAAU,MAAM,IAAI,KAAK,UAAU,EAAE,CACtE,CAAC;YAEF,IAAI,WAAW,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;gBAC/B,OAAO,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,sBAAsB,CAAC,CAAC;YACxE,CAAC;YAED,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3C,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"file-ops.js","sourceRoot":"","sources":["../../src/tools/file-ops.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=file-ops.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-ops.test.d.ts","sourceRoot":"","sources":["../../src/tools/file-ops.test.ts"],"names":[],"mappings":""}