helixmind 0.5.4

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 (808) hide show
  1. package/LICENSE +73 -0
  2. package/README.md +323 -0
  3. package/dist/cli/agent/autonomous.d.ts +24 -0
  4. package/dist/cli/agent/autonomous.d.ts.map +1 -0
  5. package/dist/cli/agent/autonomous.js +194 -0
  6. package/dist/cli/agent/autonomous.js.map +1 -0
  7. package/dist/cli/agent/loop.d.ts +87 -0
  8. package/dist/cli/agent/loop.d.ts.map +1 -0
  9. package/dist/cli/agent/loop.js +492 -0
  10. package/dist/cli/agent/loop.js.map +1 -0
  11. package/dist/cli/agent/monitor/alerter.d.ts +29 -0
  12. package/dist/cli/agent/monitor/alerter.d.ts.map +1 -0
  13. package/dist/cli/agent/monitor/alerter.js +80 -0
  14. package/dist/cli/agent/monitor/alerter.js.map +1 -0
  15. package/dist/cli/agent/monitor/baseline.d.ts +14 -0
  16. package/dist/cli/agent/monitor/baseline.d.ts.map +1 -0
  17. package/dist/cli/agent/monitor/baseline.js +157 -0
  18. package/dist/cli/agent/monitor/baseline.js.map +1 -0
  19. package/dist/cli/agent/monitor/prompts.d.ts +9 -0
  20. package/dist/cli/agent/monitor/prompts.d.ts.map +1 -0
  21. package/dist/cli/agent/monitor/prompts.js +103 -0
  22. package/dist/cli/agent/monitor/prompts.js.map +1 -0
  23. package/dist/cli/agent/monitor/responder.d.ts +12 -0
  24. package/dist/cli/agent/monitor/responder.d.ts.map +1 -0
  25. package/dist/cli/agent/monitor/responder.js +59 -0
  26. package/dist/cli/agent/monitor/responder.js.map +1 -0
  27. package/dist/cli/agent/monitor/scanner.d.ts +18 -0
  28. package/dist/cli/agent/monitor/scanner.d.ts.map +1 -0
  29. package/dist/cli/agent/monitor/scanner.js +81 -0
  30. package/dist/cli/agent/monitor/scanner.js.map +1 -0
  31. package/dist/cli/agent/monitor/types.d.ts +119 -0
  32. package/dist/cli/agent/monitor/types.d.ts.map +1 -0
  33. package/dist/cli/agent/monitor/types.js +5 -0
  34. package/dist/cli/agent/monitor/types.js.map +1 -0
  35. package/dist/cli/agent/monitor/watcher.d.ts +4 -0
  36. package/dist/cli/agent/monitor/watcher.d.ts.map +1 -0
  37. package/dist/cli/agent/monitor/watcher.js +214 -0
  38. package/dist/cli/agent/monitor/watcher.js.map +1 -0
  39. package/dist/cli/agent/permissions.d.ts +65 -0
  40. package/dist/cli/agent/permissions.d.ts.map +1 -0
  41. package/dist/cli/agent/permissions.js +447 -0
  42. package/dist/cli/agent/permissions.js.map +1 -0
  43. package/dist/cli/agent/plan-engine.d.ts +72 -0
  44. package/dist/cli/agent/plan-engine.d.ts.map +1 -0
  45. package/dist/cli/agent/plan-engine.js +261 -0
  46. package/dist/cli/agent/plan-engine.js.map +1 -0
  47. package/dist/cli/agent/plan-executor.d.ts +37 -0
  48. package/dist/cli/agent/plan-executor.d.ts.map +1 -0
  49. package/dist/cli/agent/plan-executor.js +105 -0
  50. package/dist/cli/agent/plan-executor.js.map +1 -0
  51. package/dist/cli/agent/plan-types.d.ts +50 -0
  52. package/dist/cli/agent/plan-types.d.ts.map +1 -0
  53. package/dist/cli/agent/plan-types.js +58 -0
  54. package/dist/cli/agent/plan-types.js.map +1 -0
  55. package/dist/cli/agent/sandbox.d.ts +28 -0
  56. package/dist/cli/agent/sandbox.d.ts.map +1 -0
  57. package/dist/cli/agent/sandbox.js +298 -0
  58. package/dist/cli/agent/sandbox.js.map +1 -0
  59. package/dist/cli/agent/swarm.d.ts +75 -0
  60. package/dist/cli/agent/swarm.d.ts.map +1 -0
  61. package/dist/cli/agent/swarm.js +272 -0
  62. package/dist/cli/agent/swarm.js.map +1 -0
  63. package/dist/cli/agent/tools/browser-click.d.ts +2 -0
  64. package/dist/cli/agent/tools/browser-click.d.ts.map +1 -0
  65. package/dist/cli/agent/tools/browser-click.js +35 -0
  66. package/dist/cli/agent/tools/browser-click.js.map +1 -0
  67. package/dist/cli/agent/tools/browser-close.d.ts +2 -0
  68. package/dist/cli/agent/tools/browser-close.d.ts.map +1 -0
  69. package/dist/cli/agent/tools/browser-close.js +27 -0
  70. package/dist/cli/agent/tools/browser-close.js.map +1 -0
  71. package/dist/cli/agent/tools/browser-navigate.d.ts +2 -0
  72. package/dist/cli/agent/tools/browser-navigate.d.ts.map +1 -0
  73. package/dist/cli/agent/tools/browser-navigate.js +27 -0
  74. package/dist/cli/agent/tools/browser-navigate.js.map +1 -0
  75. package/dist/cli/agent/tools/browser-open.d.ts +2 -0
  76. package/dist/cli/agent/tools/browser-open.d.ts.map +1 -0
  77. package/dist/cli/agent/tools/browser-open.js +38 -0
  78. package/dist/cli/agent/tools/browser-open.js.map +1 -0
  79. package/dist/cli/agent/tools/browser-screenshot.d.ts +2 -0
  80. package/dist/cli/agent/tools/browser-screenshot.d.ts.map +1 -0
  81. package/dist/cli/agent/tools/browser-screenshot.js +68 -0
  82. package/dist/cli/agent/tools/browser-screenshot.js.map +1 -0
  83. package/dist/cli/agent/tools/browser-type.d.ts +2 -0
  84. package/dist/cli/agent/tools/browser-type.d.ts.map +1 -0
  85. package/dist/cli/agent/tools/browser-type.js +33 -0
  86. package/dist/cli/agent/tools/browser-type.js.map +1 -0
  87. package/dist/cli/agent/tools/bug-list.d.ts +2 -0
  88. package/dist/cli/agent/tools/bug-list.d.ts.map +1 -0
  89. package/dist/cli/agent/tools/bug-list.js +82 -0
  90. package/dist/cli/agent/tools/bug-list.js.map +1 -0
  91. package/dist/cli/agent/tools/bug-report.d.ts +2 -0
  92. package/dist/cli/agent/tools/bug-report.d.ts.map +1 -0
  93. package/dist/cli/agent/tools/bug-report.js +130 -0
  94. package/dist/cli/agent/tools/bug-report.js.map +1 -0
  95. package/dist/cli/agent/tools/edit-file.d.ts +2 -0
  96. package/dist/cli/agent/tools/edit-file.d.ts.map +1 -0
  97. package/dist/cli/agent/tools/edit-file.js +61 -0
  98. package/dist/cli/agent/tools/edit-file.js.map +1 -0
  99. package/dist/cli/agent/tools/find.d.ts +2 -0
  100. package/dist/cli/agent/tools/find.d.ts.map +1 -0
  101. package/dist/cli/agent/tools/find.js +35 -0
  102. package/dist/cli/agent/tools/find.js.map +1 -0
  103. package/dist/cli/agent/tools/git-commit.d.ts +2 -0
  104. package/dist/cli/agent/tools/git-commit.d.ts.map +1 -0
  105. package/dist/cli/agent/tools/git-commit.js +57 -0
  106. package/dist/cli/agent/tools/git-commit.js.map +1 -0
  107. package/dist/cli/agent/tools/git-diff.d.ts +2 -0
  108. package/dist/cli/agent/tools/git-diff.d.ts.map +1 -0
  109. package/dist/cli/agent/tools/git-diff.js +45 -0
  110. package/dist/cli/agent/tools/git-diff.js.map +1 -0
  111. package/dist/cli/agent/tools/git-log.d.ts +2 -0
  112. package/dist/cli/agent/tools/git-log.d.ts.map +1 -0
  113. package/dist/cli/agent/tools/git-log.js +41 -0
  114. package/dist/cli/agent/tools/git-log.js.map +1 -0
  115. package/dist/cli/agent/tools/git-status.d.ts +2 -0
  116. package/dist/cli/agent/tools/git-status.d.ts.map +1 -0
  117. package/dist/cli/agent/tools/git-status.js +52 -0
  118. package/dist/cli/agent/tools/git-status.js.map +1 -0
  119. package/dist/cli/agent/tools/list-dir.d.ts +2 -0
  120. package/dist/cli/agent/tools/list-dir.d.ts.map +1 -0
  121. package/dist/cli/agent/tools/list-dir.js +73 -0
  122. package/dist/cli/agent/tools/list-dir.js.map +1 -0
  123. package/dist/cli/agent/tools/read-file.d.ts +2 -0
  124. package/dist/cli/agent/tools/read-file.d.ts.map +1 -0
  125. package/dist/cli/agent/tools/read-file.js +45 -0
  126. package/dist/cli/agent/tools/read-file.js.map +1 -0
  127. package/dist/cli/agent/tools/registry.d.ts +34 -0
  128. package/dist/cli/agent/tools/registry.d.ts.map +1 -0
  129. package/dist/cli/agent/tools/registry.js +53 -0
  130. package/dist/cli/agent/tools/registry.js.map +1 -0
  131. package/dist/cli/agent/tools/run-command.d.ts +2 -0
  132. package/dist/cli/agent/tools/run-command.d.ts.map +1 -0
  133. package/dist/cli/agent/tools/run-command.js +112 -0
  134. package/dist/cli/agent/tools/run-command.js.map +1 -0
  135. package/dist/cli/agent/tools/search.d.ts +2 -0
  136. package/dist/cli/agent/tools/search.d.ts.map +1 -0
  137. package/dist/cli/agent/tools/search.js +104 -0
  138. package/dist/cli/agent/tools/search.js.map +1 -0
  139. package/dist/cli/agent/tools/spiral-query.d.ts +2 -0
  140. package/dist/cli/agent/tools/spiral-query.d.ts.map +1 -0
  141. package/dist/cli/agent/tools/spiral-query.js +52 -0
  142. package/dist/cli/agent/tools/spiral-query.js.map +1 -0
  143. package/dist/cli/agent/tools/spiral-store.d.ts +2 -0
  144. package/dist/cli/agent/tools/spiral-store.d.ts.map +1 -0
  145. package/dist/cli/agent/tools/spiral-store.js +37 -0
  146. package/dist/cli/agent/tools/spiral-store.js.map +1 -0
  147. package/dist/cli/agent/tools/web-research.d.ts +2 -0
  148. package/dist/cli/agent/tools/web-research.d.ts.map +1 -0
  149. package/dist/cli/agent/tools/web-research.js +96 -0
  150. package/dist/cli/agent/tools/web-research.js.map +1 -0
  151. package/dist/cli/agent/tools/write-file.d.ts +2 -0
  152. package/dist/cli/agent/tools/write-file.d.ts.map +1 -0
  153. package/dist/cli/agent/tools/write-file.js +86 -0
  154. package/dist/cli/agent/tools/write-file.js.map +1 -0
  155. package/dist/cli/agent/undo.d.ts +30 -0
  156. package/dist/cli/agent/undo.d.ts.map +1 -0
  157. package/dist/cli/agent/undo.js +48 -0
  158. package/dist/cli/agent/undo.js.map +1 -0
  159. package/dist/cli/auth/callback-server.d.ts +15 -0
  160. package/dist/cli/auth/callback-server.d.ts.map +1 -0
  161. package/dist/cli/auth/callback-server.js +169 -0
  162. package/dist/cli/auth/callback-server.js.map +1 -0
  163. package/dist/cli/auth/feature-gate.d.ts +47 -0
  164. package/dist/cli/auth/feature-gate.d.ts.map +1 -0
  165. package/dist/cli/auth/feature-gate.js +171 -0
  166. package/dist/cli/auth/feature-gate.js.map +1 -0
  167. package/dist/cli/auth/guard.d.ts +11 -0
  168. package/dist/cli/auth/guard.d.ts.map +1 -0
  169. package/dist/cli/auth/guard.js +94 -0
  170. package/dist/cli/auth/guard.js.map +1 -0
  171. package/dist/cli/auth/login.d.ts +22 -0
  172. package/dist/cli/auth/login.d.ts.map +1 -0
  173. package/dist/cli/auth/login.js +287 -0
  174. package/dist/cli/auth/login.js.map +1 -0
  175. package/dist/cli/auth/logout.d.ts +6 -0
  176. package/dist/cli/auth/logout.d.ts.map +1 -0
  177. package/dist/cli/auth/logout.js +36 -0
  178. package/dist/cli/auth/logout.js.map +1 -0
  179. package/dist/cli/bench/dataset.d.ts +13 -0
  180. package/dist/cli/bench/dataset.d.ts.map +1 -0
  181. package/dist/cli/bench/dataset.js +97 -0
  182. package/dist/cli/bench/dataset.js.map +1 -0
  183. package/dist/cli/bench/harness.d.ts +7 -0
  184. package/dist/cli/bench/harness.d.ts.map +1 -0
  185. package/dist/cli/bench/harness.js +135 -0
  186. package/dist/cli/bench/harness.js.map +1 -0
  187. package/dist/cli/bench/metrics.d.ts +15 -0
  188. package/dist/cli/bench/metrics.d.ts.map +1 -0
  189. package/dist/cli/bench/metrics.js +98 -0
  190. package/dist/cli/bench/metrics.js.map +1 -0
  191. package/dist/cli/bench/output.d.ts +42 -0
  192. package/dist/cli/bench/output.d.ts.map +1 -0
  193. package/dist/cli/bench/output.js +140 -0
  194. package/dist/cli/bench/output.js.map +1 -0
  195. package/dist/cli/bench/prompt.d.ts +13 -0
  196. package/dist/cli/bench/prompt.d.ts.map +1 -0
  197. package/dist/cli/bench/prompt.js +106 -0
  198. package/dist/cli/bench/prompt.js.map +1 -0
  199. package/dist/cli/bench/runner.d.ts +14 -0
  200. package/dist/cli/bench/runner.d.ts.map +1 -0
  201. package/dist/cli/bench/runner.js +334 -0
  202. package/dist/cli/bench/runner.js.map +1 -0
  203. package/dist/cli/bench/types.d.ts +109 -0
  204. package/dist/cli/bench/types.d.ts.map +1 -0
  205. package/dist/cli/bench/types.js +2 -0
  206. package/dist/cli/bench/types.js.map +1 -0
  207. package/dist/cli/bench/ui.d.ts +12 -0
  208. package/dist/cli/bench/ui.d.ts.map +1 -0
  209. package/dist/cli/bench/ui.js +126 -0
  210. package/dist/cli/bench/ui.js.map +1 -0
  211. package/dist/cli/brain/archive.d.ts +33 -0
  212. package/dist/cli/brain/archive.d.ts.map +1 -0
  213. package/dist/cli/brain/archive.js +166 -0
  214. package/dist/cli/brain/archive.js.map +1 -0
  215. package/dist/cli/brain/control-protocol.d.ts +913 -0
  216. package/dist/cli/brain/control-protocol.d.ts.map +1 -0
  217. package/dist/cli/brain/control-protocol.js +87 -0
  218. package/dist/cli/brain/control-protocol.js.map +1 -0
  219. package/dist/cli/brain/exporter.d.ts +34 -0
  220. package/dist/cli/brain/exporter.d.ts.map +1 -0
  221. package/dist/cli/brain/exporter.js +37 -0
  222. package/dist/cli/brain/exporter.js.map +1 -0
  223. package/dist/cli/brain/generator.d.ts +157 -0
  224. package/dist/cli/brain/generator.d.ts.map +1 -0
  225. package/dist/cli/brain/generator.js +633 -0
  226. package/dist/cli/brain/generator.js.map +1 -0
  227. package/dist/cli/brain/instance-manager.d.ts +42 -0
  228. package/dist/cli/brain/instance-manager.d.ts.map +1 -0
  229. package/dist/cli/brain/instance-manager.js +152 -0
  230. package/dist/cli/brain/instance-manager.js.map +1 -0
  231. package/dist/cli/brain/relay-client.d.ts +8 -0
  232. package/dist/cli/brain/relay-client.d.ts.map +1 -0
  233. package/dist/cli/brain/relay-client.js +505 -0
  234. package/dist/cli/brain/relay-client.js.map +1 -0
  235. package/dist/cli/brain/server.d.ts +40 -0
  236. package/dist/cli/brain/server.d.ts.map +1 -0
  237. package/dist/cli/brain/server.js +873 -0
  238. package/dist/cli/brain/server.js.map +1 -0
  239. package/dist/cli/brain/stdout-capture.d.ts +19 -0
  240. package/dist/cli/brain/stdout-capture.d.ts.map +1 -0
  241. package/dist/cli/brain/stdout-capture.js +45 -0
  242. package/dist/cli/brain/stdout-capture.js.map +1 -0
  243. package/dist/cli/brain/sync.d.ts +53 -0
  244. package/dist/cli/brain/sync.d.ts.map +1 -0
  245. package/dist/cli/brain/sync.js +113 -0
  246. package/dist/cli/brain/sync.js.map +1 -0
  247. package/dist/cli/brain/template.d.ts +3 -0
  248. package/dist/cli/brain/template.d.ts.map +1 -0
  249. package/dist/cli/brain/template.js +2099 -0
  250. package/dist/cli/brain/template.js.map +1 -0
  251. package/dist/cli/brain/web-chat-handler.d.ts +26 -0
  252. package/dist/cli/brain/web-chat-handler.d.ts.map +1 -0
  253. package/dist/cli/brain/web-chat-handler.js +134 -0
  254. package/dist/cli/brain/web-chat-handler.js.map +1 -0
  255. package/dist/cli/browser/chrome-finder.d.ts +12 -0
  256. package/dist/cli/browser/chrome-finder.d.ts.map +1 -0
  257. package/dist/cli/browser/chrome-finder.js +74 -0
  258. package/dist/cli/browser/chrome-finder.js.map +1 -0
  259. package/dist/cli/browser/controller.d.ts +51 -0
  260. package/dist/cli/browser/controller.d.ts.map +1 -0
  261. package/dist/cli/browser/controller.js +152 -0
  262. package/dist/cli/browser/controller.js.map +1 -0
  263. package/dist/cli/browser/vision.d.ts +38 -0
  264. package/dist/cli/browser/vision.d.ts.map +1 -0
  265. package/dist/cli/browser/vision.js +123 -0
  266. package/dist/cli/browser/vision.js.map +1 -0
  267. package/dist/cli/bugs/detector.d.ts +14 -0
  268. package/dist/cli/bugs/detector.d.ts.map +1 -0
  269. package/dist/cli/bugs/detector.js +108 -0
  270. package/dist/cli/bugs/detector.js.map +1 -0
  271. package/dist/cli/bugs/journal.d.ts +39 -0
  272. package/dist/cli/bugs/journal.d.ts.map +1 -0
  273. package/dist/cli/bugs/journal.js +195 -0
  274. package/dist/cli/bugs/journal.js.map +1 -0
  275. package/dist/cli/bugs/types.d.ts +27 -0
  276. package/dist/cli/bugs/types.d.ts.map +1 -0
  277. package/dist/cli/bugs/types.js +2 -0
  278. package/dist/cli/bugs/types.js.map +1 -0
  279. package/dist/cli/checkpoints/browser.d.ts +26 -0
  280. package/dist/cli/checkpoints/browser.d.ts.map +1 -0
  281. package/dist/cli/checkpoints/browser.js +272 -0
  282. package/dist/cli/checkpoints/browser.js.map +1 -0
  283. package/dist/cli/checkpoints/keybinding.d.ts +22 -0
  284. package/dist/cli/checkpoints/keybinding.d.ts.map +1 -0
  285. package/dist/cli/checkpoints/keybinding.js +44 -0
  286. package/dist/cli/checkpoints/keybinding.js.map +1 -0
  287. package/dist/cli/checkpoints/revert.d.ts +37 -0
  288. package/dist/cli/checkpoints/revert.d.ts.map +1 -0
  289. package/dist/cli/checkpoints/revert.js +144 -0
  290. package/dist/cli/checkpoints/revert.js.map +1 -0
  291. package/dist/cli/checkpoints/store.d.ts +48 -0
  292. package/dist/cli/checkpoints/store.d.ts.map +1 -0
  293. package/dist/cli/checkpoints/store.js +196 -0
  294. package/dist/cli/checkpoints/store.js.map +1 -0
  295. package/dist/cli/commands/archive.d.ts +7 -0
  296. package/dist/cli/commands/archive.d.ts.map +1 -0
  297. package/dist/cli/commands/archive.js +66 -0
  298. package/dist/cli/commands/archive.js.map +1 -0
  299. package/dist/cli/commands/auth.d.ts +10 -0
  300. package/dist/cli/commands/auth.d.ts.map +1 -0
  301. package/dist/cli/commands/auth.js +44 -0
  302. package/dist/cli/commands/auth.js.map +1 -0
  303. package/dist/cli/commands/bench.d.ts +25 -0
  304. package/dist/cli/commands/bench.d.ts.map +1 -0
  305. package/dist/cli/commands/bench.js +114 -0
  306. package/dist/cli/commands/bench.js.map +1 -0
  307. package/dist/cli/commands/chat.d.ts +11 -0
  308. package/dist/cli/commands/chat.d.ts.map +1 -0
  309. package/dist/cli/commands/chat.js +5363 -0
  310. package/dist/cli/commands/chat.js.map +1 -0
  311. package/dist/cli/commands/config.d.ts +4 -0
  312. package/dist/cli/commands/config.d.ts.map +1 -0
  313. package/dist/cli/commands/config.js +43 -0
  314. package/dist/cli/commands/config.js.map +1 -0
  315. package/dist/cli/commands/feed.d.ts +6 -0
  316. package/dist/cli/commands/feed.d.ts.map +1 -0
  317. package/dist/cli/commands/feed.js +95 -0
  318. package/dist/cli/commands/feed.js.map +1 -0
  319. package/dist/cli/commands/helix-menu.d.ts +4 -0
  320. package/dist/cli/commands/helix-menu.d.ts.map +1 -0
  321. package/dist/cli/commands/helix-menu.js +400 -0
  322. package/dist/cli/commands/helix-menu.js.map +1 -0
  323. package/dist/cli/commands/init.d.ts +2 -0
  324. package/dist/cli/commands/init.d.ts.map +1 -0
  325. package/dist/cli/commands/init.js +38 -0
  326. package/dist/cli/commands/init.js.map +1 -0
  327. package/dist/cli/commands/setup.d.ts +20 -0
  328. package/dist/cli/commands/setup.d.ts.map +1 -0
  329. package/dist/cli/commands/setup.js +310 -0
  330. package/dist/cli/commands/setup.js.map +1 -0
  331. package/dist/cli/commands/spiral.d.ts +4 -0
  332. package/dist/cli/commands/spiral.d.ts.map +1 -0
  333. package/dist/cli/commands/spiral.js +81 -0
  334. package/dist/cli/commands/spiral.js.map +1 -0
  335. package/dist/cli/config/store.d.ts +80 -0
  336. package/dist/cli/config/store.d.ts.map +1 -0
  337. package/dist/cli/config/store.js +247 -0
  338. package/dist/cli/config/store.js.map +1 -0
  339. package/dist/cli/config/trust.d.ts +21 -0
  340. package/dist/cli/config/trust.d.ts.map +1 -0
  341. package/dist/cli/config/trust.js +106 -0
  342. package/dist/cli/config/trust.js.map +1 -0
  343. package/dist/cli/context/assembler.d.ts +9 -0
  344. package/dist/cli/context/assembler.d.ts.map +1 -0
  345. package/dist/cli/context/assembler.js +217 -0
  346. package/dist/cli/context/assembler.js.map +1 -0
  347. package/dist/cli/context/project.d.ts +13 -0
  348. package/dist/cli/context/project.d.ts.map +1 -0
  349. package/dist/cli/context/project.js +126 -0
  350. package/dist/cli/context/project.js.map +1 -0
  351. package/dist/cli/context/session-buffer.d.ts +69 -0
  352. package/dist/cli/context/session-buffer.d.ts.map +1 -0
  353. package/dist/cli/context/session-buffer.js +362 -0
  354. package/dist/cli/context/session-buffer.js.map +1 -0
  355. package/dist/cli/context/trimmer.d.ts +26 -0
  356. package/dist/cli/context/trimmer.d.ts.map +1 -0
  357. package/dist/cli/context/trimmer.js +137 -0
  358. package/dist/cli/context/trimmer.js.map +1 -0
  359. package/dist/cli/core/index.d.ts +15 -0
  360. package/dist/cli/core/index.d.ts.map +1 -0
  361. package/dist/cli/core/index.js +12 -0
  362. package/dist/cli/core/index.js.map +1 -0
  363. package/dist/cli/core/input.d.ts +208 -0
  364. package/dist/cli/core/input.d.ts.map +1 -0
  365. package/dist/cli/core/input.js +807 -0
  366. package/dist/cli/core/input.js.map +1 -0
  367. package/dist/cli/core/screen.d.ts +211 -0
  368. package/dist/cli/core/screen.d.ts.map +1 -0
  369. package/dist/cli/core/screen.js +826 -0
  370. package/dist/cli/core/screen.js.map +1 -0
  371. package/dist/cli/core/terminal.d.ts +88 -0
  372. package/dist/cli/core/terminal.d.ts.map +1 -0
  373. package/dist/cli/core/terminal.js +200 -0
  374. package/dist/cli/core/terminal.js.map +1 -0
  375. package/dist/cli/feed/analyzer.d.ts +17 -0
  376. package/dist/cli/feed/analyzer.d.ts.map +1 -0
  377. package/dist/cli/feed/analyzer.js +220 -0
  378. package/dist/cli/feed/analyzer.js.map +1 -0
  379. package/dist/cli/feed/intent.d.ts +8 -0
  380. package/dist/cli/feed/intent.d.ts.map +1 -0
  381. package/dist/cli/feed/intent.js +70 -0
  382. package/dist/cli/feed/intent.js.map +1 -0
  383. package/dist/cli/feed/parser.d.ts +23 -0
  384. package/dist/cli/feed/parser.d.ts.map +1 -0
  385. package/dist/cli/feed/parser.js +166 -0
  386. package/dist/cli/feed/parser.js.map +1 -0
  387. package/dist/cli/feed/pipeline.d.ts +33 -0
  388. package/dist/cli/feed/pipeline.d.ts.map +1 -0
  389. package/dist/cli/feed/pipeline.js +250 -0
  390. package/dist/cli/feed/pipeline.js.map +1 -0
  391. package/dist/cli/feed/reader.d.ts +10 -0
  392. package/dist/cli/feed/reader.d.ts.map +1 -0
  393. package/dist/cli/feed/reader.js +61 -0
  394. package/dist/cli/feed/reader.js.map +1 -0
  395. package/dist/cli/feed/scanner.d.ts +10 -0
  396. package/dist/cli/feed/scanner.d.ts.map +1 -0
  397. package/dist/cli/feed/scanner.js +124 -0
  398. package/dist/cli/feed/scanner.js.map +1 -0
  399. package/dist/cli/feed/watcher.d.ts +14 -0
  400. package/dist/cli/feed/watcher.d.ts.map +1 -0
  401. package/dist/cli/feed/watcher.js +76 -0
  402. package/dist/cli/feed/watcher.js.map +1 -0
  403. package/dist/cli/helixmind.cmd +2 -0
  404. package/dist/cli/index.d.ts +3 -0
  405. package/dist/cli/index.d.ts.map +1 -0
  406. package/dist/cli/index.js +297 -0
  407. package/dist/cli/index.js.map +1 -0
  408. package/dist/cli/jarvis/autonomy.d.ts +55 -0
  409. package/dist/cli/jarvis/autonomy.d.ts.map +1 -0
  410. package/dist/cli/jarvis/autonomy.js +176 -0
  411. package/dist/cli/jarvis/autonomy.js.map +1 -0
  412. package/dist/cli/jarvis/code-reviewer.d.ts +35 -0
  413. package/dist/cli/jarvis/code-reviewer.d.ts.map +1 -0
  414. package/dist/cli/jarvis/code-reviewer.js +93 -0
  415. package/dist/cli/jarvis/code-reviewer.js.map +1 -0
  416. package/dist/cli/jarvis/core-ethics.d.ts +35 -0
  417. package/dist/cli/jarvis/core-ethics.d.ts.map +1 -0
  418. package/dist/cli/jarvis/core-ethics.js +246 -0
  419. package/dist/cli/jarvis/core-ethics.js.map +1 -0
  420. package/dist/cli/jarvis/daemon.d.ts +24 -0
  421. package/dist/cli/jarvis/daemon.d.ts.map +1 -0
  422. package/dist/cli/jarvis/daemon.js +230 -0
  423. package/dist/cli/jarvis/daemon.js.map +1 -0
  424. package/dist/cli/jarvis/dependency-guardian.d.ts +40 -0
  425. package/dist/cli/jarvis/dependency-guardian.d.ts.map +1 -0
  426. package/dist/cli/jarvis/dependency-guardian.js +148 -0
  427. package/dist/cli/jarvis/dependency-guardian.js.map +1 -0
  428. package/dist/cli/jarvis/git-intelligence.d.ts +36 -0
  429. package/dist/cli/jarvis/git-intelligence.d.ts.map +1 -0
  430. package/dist/cli/jarvis/git-intelligence.js +222 -0
  431. package/dist/cli/jarvis/git-intelligence.js.map +1 -0
  432. package/dist/cli/jarvis/identity.d.ts +57 -0
  433. package/dist/cli/jarvis/identity.d.ts.map +1 -0
  434. package/dist/cli/jarvis/identity.js +416 -0
  435. package/dist/cli/jarvis/identity.js.map +1 -0
  436. package/dist/cli/jarvis/index.d.ts +9 -0
  437. package/dist/cli/jarvis/index.d.ts.map +1 -0
  438. package/dist/cli/jarvis/index.js +7 -0
  439. package/dist/cli/jarvis/index.js.map +1 -0
  440. package/dist/cli/jarvis/instance-lock.d.ts +15 -0
  441. package/dist/cli/jarvis/instance-lock.d.ts.map +1 -0
  442. package/dist/cli/jarvis/instance-lock.js +95 -0
  443. package/dist/cli/jarvis/instance-lock.js.map +1 -0
  444. package/dist/cli/jarvis/learning.d.ts +73 -0
  445. package/dist/cli/jarvis/learning.d.ts.map +1 -0
  446. package/dist/cli/jarvis/learning.js +284 -0
  447. package/dist/cli/jarvis/learning.js.map +1 -0
  448. package/dist/cli/jarvis/multi-project.d.ts +39 -0
  449. package/dist/cli/jarvis/multi-project.d.ts.map +1 -0
  450. package/dist/cli/jarvis/multi-project.js +152 -0
  451. package/dist/cli/jarvis/multi-project.js.map +1 -0
  452. package/dist/cli/jarvis/notifications.d.ts +39 -0
  453. package/dist/cli/jarvis/notifications.d.ts.map +1 -0
  454. package/dist/cli/jarvis/notifications.js +216 -0
  455. package/dist/cli/jarvis/notifications.js.map +1 -0
  456. package/dist/cli/jarvis/onboarding.d.ts +19 -0
  457. package/dist/cli/jarvis/onboarding.d.ts.map +1 -0
  458. package/dist/cli/jarvis/onboarding.js +116 -0
  459. package/dist/cli/jarvis/onboarding.js.map +1 -0
  460. package/dist/cli/jarvis/orchestrator.d.ts +46 -0
  461. package/dist/cli/jarvis/orchestrator.d.ts.map +1 -0
  462. package/dist/cli/jarvis/orchestrator.js +253 -0
  463. package/dist/cli/jarvis/orchestrator.js.map +1 -0
  464. package/dist/cli/jarvis/parallel.d.ts +63 -0
  465. package/dist/cli/jarvis/parallel.d.ts.map +1 -0
  466. package/dist/cli/jarvis/parallel.js +172 -0
  467. package/dist/cli/jarvis/parallel.js.map +1 -0
  468. package/dist/cli/jarvis/performance-profiler.d.ts +31 -0
  469. package/dist/cli/jarvis/performance-profiler.d.ts.map +1 -0
  470. package/dist/cli/jarvis/performance-profiler.js +229 -0
  471. package/dist/cli/jarvis/performance-profiler.js.map +1 -0
  472. package/dist/cli/jarvis/proposals.d.ts +80 -0
  473. package/dist/cli/jarvis/proposals.d.ts.map +1 -0
  474. package/dist/cli/jarvis/proposals.js +286 -0
  475. package/dist/cli/jarvis/proposals.js.map +1 -0
  476. package/dist/cli/jarvis/queue.d.ts +41 -0
  477. package/dist/cli/jarvis/queue.d.ts.map +1 -0
  478. package/dist/cli/jarvis/queue.js +245 -0
  479. package/dist/cli/jarvis/queue.js.map +1 -0
  480. package/dist/cli/jarvis/runtime-context.d.ts +34 -0
  481. package/dist/cli/jarvis/runtime-context.d.ts.map +1 -0
  482. package/dist/cli/jarvis/runtime-context.js +113 -0
  483. package/dist/cli/jarvis/runtime-context.js.map +1 -0
  484. package/dist/cli/jarvis/scheduler.d.ts +21 -0
  485. package/dist/cli/jarvis/scheduler.d.ts.map +1 -0
  486. package/dist/cli/jarvis/scheduler.js +182 -0
  487. package/dist/cli/jarvis/scheduler.js.map +1 -0
  488. package/dist/cli/jarvis/sentiment.d.ts +29 -0
  489. package/dist/cli/jarvis/sentiment.d.ts.map +1 -0
  490. package/dist/cli/jarvis/sentiment.js +221 -0
  491. package/dist/cli/jarvis/sentiment.js.map +1 -0
  492. package/dist/cli/jarvis/skill-scoring.d.ts +63 -0
  493. package/dist/cli/jarvis/skill-scoring.d.ts.map +1 -0
  494. package/dist/cli/jarvis/skill-scoring.js +226 -0
  495. package/dist/cli/jarvis/skill-scoring.js.map +1 -0
  496. package/dist/cli/jarvis/skills.d.ts +87 -0
  497. package/dist/cli/jarvis/skills.d.ts.map +1 -0
  498. package/dist/cli/jarvis/skills.js +367 -0
  499. package/dist/cli/jarvis/skills.js.map +1 -0
  500. package/dist/cli/jarvis/telegram-bot.d.ts +77 -0
  501. package/dist/cli/jarvis/telegram-bot.d.ts.map +1 -0
  502. package/dist/cli/jarvis/telegram-bot.js +251 -0
  503. package/dist/cli/jarvis/telegram-bot.js.map +1 -0
  504. package/dist/cli/jarvis/telemetry.d.ts +32 -0
  505. package/dist/cli/jarvis/telemetry.d.ts.map +1 -0
  506. package/dist/cli/jarvis/telemetry.js +213 -0
  507. package/dist/cli/jarvis/telemetry.js.map +1 -0
  508. package/dist/cli/jarvis/test-sentinel.d.ts +36 -0
  509. package/dist/cli/jarvis/test-sentinel.d.ts.map +1 -0
  510. package/dist/cli/jarvis/test-sentinel.js +178 -0
  511. package/dist/cli/jarvis/test-sentinel.js.map +1 -0
  512. package/dist/cli/jarvis/thinking-loop.d.ts +15 -0
  513. package/dist/cli/jarvis/thinking-loop.d.ts.map +1 -0
  514. package/dist/cli/jarvis/thinking-loop.js +437 -0
  515. package/dist/cli/jarvis/thinking-loop.js.map +1 -0
  516. package/dist/cli/jarvis/triggers.d.ts +23 -0
  517. package/dist/cli/jarvis/triggers.d.ts.map +1 -0
  518. package/dist/cli/jarvis/triggers.js +157 -0
  519. package/dist/cli/jarvis/triggers.js.map +1 -0
  520. package/dist/cli/jarvis/types.d.ts +582 -0
  521. package/dist/cli/jarvis/types.d.ts.map +1 -0
  522. package/dist/cli/jarvis/types.js +18 -0
  523. package/dist/cli/jarvis/types.js.map +1 -0
  524. package/dist/cli/jarvis/voice-bridge.d.ts +68 -0
  525. package/dist/cli/jarvis/voice-bridge.d.ts.map +1 -0
  526. package/dist/cli/jarvis/voice-bridge.js +254 -0
  527. package/dist/cli/jarvis/voice-bridge.js.map +1 -0
  528. package/dist/cli/jarvis/world-model.d.ts +43 -0
  529. package/dist/cli/jarvis/world-model.d.ts.map +1 -0
  530. package/dist/cli/jarvis/world-model.js +209 -0
  531. package/dist/cli/jarvis/world-model.js.map +1 -0
  532. package/dist/cli/jarvis-proxy/client.d.ts +18 -0
  533. package/dist/cli/jarvis-proxy/client.d.ts.map +1 -0
  534. package/dist/cli/jarvis-proxy/client.js +64 -0
  535. package/dist/cli/jarvis-proxy/client.js.map +1 -0
  536. package/dist/cli/jarvis-proxy/executor.d.ts +13 -0
  537. package/dist/cli/jarvis-proxy/executor.d.ts.map +1 -0
  538. package/dist/cli/jarvis-proxy/executor.js +32 -0
  539. package/dist/cli/jarvis-proxy/executor.js.map +1 -0
  540. package/dist/cli/jarvis-proxy/types.d.ts +25 -0
  541. package/dist/cli/jarvis-proxy/types.d.ts.map +1 -0
  542. package/dist/cli/jarvis-proxy/types.js +7 -0
  543. package/dist/cli/jarvis-proxy/types.js.map +1 -0
  544. package/dist/cli/license/checker.d.ts +11 -0
  545. package/dist/cli/license/checker.d.ts.map +1 -0
  546. package/dist/cli/license/checker.js +28 -0
  547. package/dist/cli/license/checker.js.map +1 -0
  548. package/dist/cli/license/validator.d.ts +13 -0
  549. package/dist/cli/license/validator.d.ts.map +1 -0
  550. package/dist/cli/license/validator.js +72 -0
  551. package/dist/cli/license/validator.js.map +1 -0
  552. package/dist/cli/providers/anthropic.d.ts +11 -0
  553. package/dist/cli/providers/anthropic.d.ts.map +1 -0
  554. package/dist/cli/providers/anthropic.js +120 -0
  555. package/dist/cli/providers/anthropic.js.map +1 -0
  556. package/dist/cli/providers/model-limits.d.ts +12 -0
  557. package/dist/cli/providers/model-limits.d.ts.map +1 -0
  558. package/dist/cli/providers/model-limits.js +63 -0
  559. package/dist/cli/providers/model-limits.js.map +1 -0
  560. package/dist/cli/providers/ollama.d.ts +37 -0
  561. package/dist/cli/providers/ollama.d.ts.map +1 -0
  562. package/dist/cli/providers/ollama.js +151 -0
  563. package/dist/cli/providers/ollama.js.map +1 -0
  564. package/dist/cli/providers/openai.d.ts +14 -0
  565. package/dist/cli/providers/openai.d.ts.map +1 -0
  566. package/dist/cli/providers/openai.js +319 -0
  567. package/dist/cli/providers/openai.js.map +1 -0
  568. package/dist/cli/providers/rate-limiter.d.ts +51 -0
  569. package/dist/cli/providers/rate-limiter.d.ts.map +1 -0
  570. package/dist/cli/providers/rate-limiter.js +164 -0
  571. package/dist/cli/providers/rate-limiter.js.map +1 -0
  572. package/dist/cli/providers/registry.d.ts +16 -0
  573. package/dist/cli/providers/registry.d.ts.map +1 -0
  574. package/dist/cli/providers/registry.js +99 -0
  575. package/dist/cli/providers/registry.js.map +1 -0
  576. package/dist/cli/providers/types.d.ts +72 -0
  577. package/dist/cli/providers/types.d.ts.map +1 -0
  578. package/dist/cli/providers/types.js +2 -0
  579. package/dist/cli/providers/types.js.map +1 -0
  580. package/dist/cli/sessions/manager.d.ts +69 -0
  581. package/dist/cli/sessions/manager.d.ts.map +1 -0
  582. package/dist/cli/sessions/manager.js +201 -0
  583. package/dist/cli/sessions/manager.js.map +1 -0
  584. package/dist/cli/sessions/session.d.ts +58 -0
  585. package/dist/cli/sessions/session.d.ts.map +1 -0
  586. package/dist/cli/sessions/session.js +74 -0
  587. package/dist/cli/sessions/session.js.map +1 -0
  588. package/dist/cli/sessions/tab-view.d.ts +18 -0
  589. package/dist/cli/sessions/tab-view.d.ts.map +1 -0
  590. package/dist/cli/sessions/tab-view.js +137 -0
  591. package/dist/cli/sessions/tab-view.js.map +1 -0
  592. package/dist/cli/ui/activity.d.ts +81 -0
  593. package/dist/cli/ui/activity.d.ts.map +1 -0
  594. package/dist/cli/ui/activity.js +286 -0
  595. package/dist/cli/ui/activity.js.map +1 -0
  596. package/dist/cli/ui/agent-display.d.ts +24 -0
  597. package/dist/cli/ui/agent-display.d.ts.map +1 -0
  598. package/dist/cli/ui/agent-display.js +36 -0
  599. package/dist/cli/ui/agent-display.js.map +1 -0
  600. package/dist/cli/ui/bottom-chrome.d.ts +121 -0
  601. package/dist/cli/ui/bottom-chrome.d.ts.map +1 -0
  602. package/dist/cli/ui/bottom-chrome.js +428 -0
  603. package/dist/cli/ui/bottom-chrome.js.map +1 -0
  604. package/dist/cli/ui/chat-view.d.ts +10 -0
  605. package/dist/cli/ui/chat-view.d.ts.map +1 -0
  606. package/dist/cli/ui/chat-view.js +237 -0
  607. package/dist/cli/ui/chat-view.js.map +1 -0
  608. package/dist/cli/ui/command-suggest.d.ts +22 -0
  609. package/dist/cli/ui/command-suggest.d.ts.map +1 -0
  610. package/dist/cli/ui/command-suggest.js +118 -0
  611. package/dist/cli/ui/command-suggest.js.map +1 -0
  612. package/dist/cli/ui/input-window.d.ts +145 -0
  613. package/dist/cli/ui/input-window.d.ts.map +1 -0
  614. package/dist/cli/ui/input-window.js +415 -0
  615. package/dist/cli/ui/input-window.js.map +1 -0
  616. package/dist/cli/ui/logo.d.ts +3 -0
  617. package/dist/cli/ui/logo.d.ts.map +1 -0
  618. package/dist/cli/ui/logo.js +25 -0
  619. package/dist/cli/ui/logo.js.map +1 -0
  620. package/dist/cli/ui/plan-display.d.ts +35 -0
  621. package/dist/cli/ui/plan-display.d.ts.map +1 -0
  622. package/dist/cli/ui/plan-display.js +381 -0
  623. package/dist/cli/ui/plan-display.js.map +1 -0
  624. package/dist/cli/ui/progress.d.ts +22 -0
  625. package/dist/cli/ui/progress.d.ts.map +1 -0
  626. package/dist/cli/ui/progress.js +126 -0
  627. package/dist/cli/ui/progress.js.map +1 -0
  628. package/dist/cli/ui/prompt-history.d.ts +37 -0
  629. package/dist/cli/ui/prompt-history.d.ts.map +1 -0
  630. package/dist/cli/ui/prompt-history.js +156 -0
  631. package/dist/cli/ui/prompt-history.js.map +1 -0
  632. package/dist/cli/ui/select-menu.d.ts +45 -0
  633. package/dist/cli/ui/select-menu.d.ts.map +1 -0
  634. package/dist/cli/ui/select-menu.js +330 -0
  635. package/dist/cli/ui/select-menu.js.map +1 -0
  636. package/dist/cli/ui/spinner.d.ts +3 -0
  637. package/dist/cli/ui/spinner.d.ts.map +1 -0
  638. package/dist/cli/ui/spinner.js +14 -0
  639. package/dist/cli/ui/spinner.js.map +1 -0
  640. package/dist/cli/ui/statusbar.d.ts +72 -0
  641. package/dist/cli/ui/statusbar.d.ts.map +1 -0
  642. package/dist/cli/ui/statusbar.js +376 -0
  643. package/dist/cli/ui/statusbar.js.map +1 -0
  644. package/dist/cli/ui/suggestion-panel.d.ts +52 -0
  645. package/dist/cli/ui/suggestion-panel.d.ts.map +1 -0
  646. package/dist/cli/ui/suggestion-panel.js +159 -0
  647. package/dist/cli/ui/suggestion-panel.js.map +1 -0
  648. package/dist/cli/ui/theme.d.ts +20 -0
  649. package/dist/cli/ui/theme.d.ts.map +1 -0
  650. package/dist/cli/ui/theme.js +25 -0
  651. package/dist/cli/ui/theme.js.map +1 -0
  652. package/dist/cli/ui/tool-output.d.ts +31 -0
  653. package/dist/cli/ui/tool-output.d.ts.map +1 -0
  654. package/dist/cli/ui/tool-output.js +204 -0
  655. package/dist/cli/ui/tool-output.js.map +1 -0
  656. package/dist/cli/validation/autofix.d.ts +32 -0
  657. package/dist/cli/validation/autofix.d.ts.map +1 -0
  658. package/dist/cli/validation/autofix.js +148 -0
  659. package/dist/cli/validation/autofix.js.map +1 -0
  660. package/dist/cli/validation/classifier.d.ts +17 -0
  661. package/dist/cli/validation/classifier.d.ts.map +1 -0
  662. package/dist/cli/validation/classifier.js +174 -0
  663. package/dist/cli/validation/classifier.js.map +1 -0
  664. package/dist/cli/validation/criteria.d.ts +22 -0
  665. package/dist/cli/validation/criteria.d.ts.map +1 -0
  666. package/dist/cli/validation/criteria.js +188 -0
  667. package/dist/cli/validation/criteria.js.map +1 -0
  668. package/dist/cli/validation/dynamic-checks.d.ts +16 -0
  669. package/dist/cli/validation/dynamic-checks.d.ts.map +1 -0
  670. package/dist/cli/validation/dynamic-checks.js +109 -0
  671. package/dist/cli/validation/dynamic-checks.js.map +1 -0
  672. package/dist/cli/validation/model.d.ts +16 -0
  673. package/dist/cli/validation/model.d.ts.map +1 -0
  674. package/dist/cli/validation/model.js +59 -0
  675. package/dist/cli/validation/model.js.map +1 -0
  676. package/dist/cli/validation/reporter.d.ts +18 -0
  677. package/dist/cli/validation/reporter.d.ts.map +1 -0
  678. package/dist/cli/validation/reporter.js +209 -0
  679. package/dist/cli/validation/reporter.js.map +1 -0
  680. package/dist/cli/validation/spiral-checks.d.ts +12 -0
  681. package/dist/cli/validation/spiral-checks.d.ts.map +1 -0
  682. package/dist/cli/validation/spiral-checks.js +167 -0
  683. package/dist/cli/validation/spiral-checks.js.map +1 -0
  684. package/dist/cli/validation/static-checks.d.ts +26 -0
  685. package/dist/cli/validation/static-checks.d.ts.map +1 -0
  686. package/dist/cli/validation/static-checks.js +648 -0
  687. package/dist/cli/validation/static-checks.js.map +1 -0
  688. package/dist/cli/validation/stats.d.ts +29 -0
  689. package/dist/cli/validation/stats.d.ts.map +1 -0
  690. package/dist/cli/validation/stats.js +137 -0
  691. package/dist/cli/validation/stats.js.map +1 -0
  692. package/dist/cli/version.d.ts +2 -0
  693. package/dist/cli/version.d.ts.map +1 -0
  694. package/dist/cli/version.js +5 -0
  695. package/dist/cli/version.js.map +1 -0
  696. package/dist/cli/voice/clone-manager.d.ts +19 -0
  697. package/dist/cli/voice/clone-manager.d.ts.map +1 -0
  698. package/dist/cli/voice/clone-manager.js +55 -0
  699. package/dist/cli/voice/clone-manager.js.map +1 -0
  700. package/dist/cli/voice/engine.d.ts +43 -0
  701. package/dist/cli/voice/engine.d.ts.map +1 -0
  702. package/dist/cli/voice/engine.js +109 -0
  703. package/dist/cli/voice/engine.js.map +1 -0
  704. package/dist/cli/voice/whisper-stt.d.ts +28 -0
  705. package/dist/cli/voice/whisper-stt.d.ts.map +1 -0
  706. package/dist/cli/voice/whisper-stt.js +78 -0
  707. package/dist/cli/voice/whisper-stt.js.map +1 -0
  708. package/dist/index.d.ts +3 -0
  709. package/dist/index.d.ts.map +1 -0
  710. package/dist/index.js +35 -0
  711. package/dist/index.js.map +1 -0
  712. package/dist/server.d.ts +8 -0
  713. package/dist/server.d.ts.map +1 -0
  714. package/dist/server.js +44 -0
  715. package/dist/server.js.map +1 -0
  716. package/dist/shared/protocol-types.d.ts +283 -0
  717. package/dist/shared/protocol-types.d.ts.map +1 -0
  718. package/dist/shared/protocol-types.js +9 -0
  719. package/dist/shared/protocol-types.js.map +1 -0
  720. package/dist/spiral/cloud/content-extractor.d.ts +27 -0
  721. package/dist/spiral/cloud/content-extractor.d.ts.map +1 -0
  722. package/dist/spiral/cloud/content-extractor.js +175 -0
  723. package/dist/spiral/cloud/content-extractor.js.map +1 -0
  724. package/dist/spiral/cloud/search-provider.d.ts +22 -0
  725. package/dist/spiral/cloud/search-provider.d.ts.map +1 -0
  726. package/dist/spiral/cloud/search-provider.js +241 -0
  727. package/dist/spiral/cloud/search-provider.js.map +1 -0
  728. package/dist/spiral/cloud/topic-detector.d.ts +25 -0
  729. package/dist/spiral/cloud/topic-detector.d.ts.map +1 -0
  730. package/dist/spiral/cloud/topic-detector.js +196 -0
  731. package/dist/spiral/cloud/topic-detector.js.map +1 -0
  732. package/dist/spiral/cloud/web-enricher.d.ts +58 -0
  733. package/dist/spiral/cloud/web-enricher.d.ts.map +1 -0
  734. package/dist/spiral/cloud/web-enricher.js +176 -0
  735. package/dist/spiral/cloud/web-enricher.js.map +1 -0
  736. package/dist/spiral/compression.d.ts +54 -0
  737. package/dist/spiral/compression.d.ts.map +1 -0
  738. package/dist/spiral/compression.js +175 -0
  739. package/dist/spiral/compression.js.map +1 -0
  740. package/dist/spiral/embeddings.d.ts +30 -0
  741. package/dist/spiral/embeddings.d.ts.map +1 -0
  742. package/dist/spiral/embeddings.js +99 -0
  743. package/dist/spiral/embeddings.js.map +1 -0
  744. package/dist/spiral/engine.d.ts +98 -0
  745. package/dist/spiral/engine.d.ts.map +1 -0
  746. package/dist/spiral/engine.js +330 -0
  747. package/dist/spiral/engine.js.map +1 -0
  748. package/dist/spiral/injection.d.ts +29 -0
  749. package/dist/spiral/injection.d.ts.map +1 -0
  750. package/dist/spiral/injection.js +176 -0
  751. package/dist/spiral/injection.js.map +1 -0
  752. package/dist/spiral/relevance.d.ts +37 -0
  753. package/dist/spiral/relevance.d.ts.map +1 -0
  754. package/dist/spiral/relevance.js +75 -0
  755. package/dist/spiral/relevance.js.map +1 -0
  756. package/dist/storage/database.d.ts +11 -0
  757. package/dist/storage/database.d.ts.map +1 -0
  758. package/dist/storage/database.js +169 -0
  759. package/dist/storage/database.js.map +1 -0
  760. package/dist/storage/edges.d.ts +30 -0
  761. package/dist/storage/edges.d.ts.map +1 -0
  762. package/dist/storage/edges.js +98 -0
  763. package/dist/storage/edges.js.map +1 -0
  764. package/dist/storage/nodes.d.ts +60 -0
  765. package/dist/storage/nodes.d.ts.map +1 -0
  766. package/dist/storage/nodes.js +161 -0
  767. package/dist/storage/nodes.js.map +1 -0
  768. package/dist/storage/vectors.d.ts +25 -0
  769. package/dist/storage/vectors.d.ts.map +1 -0
  770. package/dist/storage/vectors.js +110 -0
  771. package/dist/storage/vectors.js.map +1 -0
  772. package/dist/tools/spiral-compact.d.ts +14 -0
  773. package/dist/tools/spiral-compact.d.ts.map +1 -0
  774. package/dist/tools/spiral-compact.js +14 -0
  775. package/dist/tools/spiral-compact.js.map +1 -0
  776. package/dist/tools/spiral-query.d.ts +18 -0
  777. package/dist/tools/spiral-query.d.ts.map +1 -0
  778. package/dist/tools/spiral-query.js +16 -0
  779. package/dist/tools/spiral-query.js.map +1 -0
  780. package/dist/tools/spiral-relate.d.ts +21 -0
  781. package/dist/tools/spiral-relate.d.ts.map +1 -0
  782. package/dist/tools/spiral-relate.js +21 -0
  783. package/dist/tools/spiral-relate.js.map +1 -0
  784. package/dist/tools/spiral-status.d.ts +8 -0
  785. package/dist/tools/spiral-status.d.ts.map +1 -0
  786. package/dist/tools/spiral-status.js +10 -0
  787. package/dist/tools/spiral-status.js.map +1 -0
  788. package/dist/tools/spiral-store.d.ts +41 -0
  789. package/dist/tools/spiral-store.d.ts.map +1 -0
  790. package/dist/tools/spiral-store.js +22 -0
  791. package/dist/tools/spiral-store.js.map +1 -0
  792. package/dist/types.d.ts +94 -0
  793. package/dist/types.d.ts.map +1 -0
  794. package/dist/types.js +9 -0
  795. package/dist/types.js.map +1 -0
  796. package/dist/utils/config.d.ts +14 -0
  797. package/dist/utils/config.d.ts.map +1 -0
  798. package/dist/utils/config.js +44 -0
  799. package/dist/utils/config.js.map +1 -0
  800. package/dist/utils/logger.d.ts +10 -0
  801. package/dist/utils/logger.d.ts.map +1 -0
  802. package/dist/utils/logger.js +40 -0
  803. package/dist/utils/logger.js.map +1 -0
  804. package/dist/utils/tokens.d.ts +21 -0
  805. package/dist/utils/tokens.d.ts.map +1 -0
  806. package/dist/utils/tokens.js +33 -0
  807. package/dist/utils/tokens.js.map +1 -0
  808. package/package.json +93 -0
package/LICENSE ADDED
@@ -0,0 +1,73 @@
1
+ GNU AFFERO GENERAL PUBLIC LICENSE
2
+ Version 3, 19 November 2007
3
+
4
+ Copyright (C) 2025-2026 HelixMind (helix-mind.ai)
5
+
6
+ This program is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU Affero General Public License as published
8
+ by the Free Software Foundation, either version 3 of the License, or
9
+ (at your option) any later version.
10
+
11
+ This program is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU Affero General Public License for more details.
15
+
16
+ You should have received a copy of the GNU Affero General Public License
17
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
18
+
19
+ For the full license text, see:
20
+ https://www.gnu.org/licenses/agpl-3.0.txt
21
+
22
+ ===========================================================================
23
+ ADDITIONAL TERMS AND COMMERCIAL LICENSING
24
+ ===========================================================================
25
+
26
+ 1. OPEN SOURCE USE (THIS REPOSITORY)
27
+
28
+ This repository contains the open source CLI agent of HelixMind,
29
+ licensed under AGPL-3.0. You are free to:
30
+
31
+ - Use it for personal, educational, and internal purposes
32
+ - Modify and distribute it under the same AGPL-3.0 terms
33
+ - Build and deploy your own tools on top of it
34
+
35
+ Under AGPL-3.0, if you modify this software and provide it as a
36
+ network service (SaaS), you MUST make your complete source code
37
+ available to all users of that service under the same license.
38
+
39
+ 2. ATTRIBUTION
40
+
41
+ Any use, distribution, or derivative work must retain the original
42
+ copyright notice and attribution to HelixMind (helix-mind.ai).
43
+ This includes but is not limited to:
44
+
45
+ - The copyright notice in the LICENSE file
46
+ - Attribution in any user-facing documentation or about page
47
+ - Credit in any published derivative works
48
+
49
+ 3. COMMERCIAL LICENSE
50
+
51
+ A separate commercial license is available for organizations that:
52
+
53
+ - Want to use HelixMind without AGPL-3.0 obligations
54
+ (e.g., in proprietary/closed-source products or SaaS offerings)
55
+ - Want access to premium features not included in this repository,
56
+ such as: Jarvis Task Daemon, Validation Matrix, Security Monitor,
57
+ 3D Brain Management, Autonomous Mode, and Web Dashboard
58
+ - Need enterprise support, SLAs, or custom integrations
59
+
60
+ The commercial license removes the AGPL requirement to open-source
61
+ your modifications and includes all premium features.
62
+
63
+ For commercial licensing inquiries, visit:
64
+ https://helix-mind.ai or contact: license@helix-mind.ai
65
+
66
+ 4. TRADEMARKS
67
+
68
+ The names "HelixMind", "Spiral Memory", the HelixMind logo, and
69
+ associated branding are trademarks of HelixMind. This license does
70
+ not grant permission to use these trademarks except as required for
71
+ reasonable attribution as described above.
72
+
73
+ ===========================================================================
package/README.md ADDED
@@ -0,0 +1,323 @@
1
+ <div align="center">
2
+
3
+ # HelixMind
4
+
5
+ **Open Source AI Coding Agent with Persistent Spiral Memory**
6
+
7
+ [![npm version](https://img.shields.io/npm/v/helixmind?color=blue&logo=npm)](https://www.npmjs.com/package/helixmind)
8
+ [![License](https://img.shields.io/badge/License-AGPL_3.0-blue?logo=gnu)](LICENSE)
9
+ [![Node](https://img.shields.io/badge/Node-18%2B-green?logo=node.js)](https://nodejs.org)
10
+ [![TypeScript](https://img.shields.io/badge/TypeScript-5.0%2B-blue?logo=typescript)](https://www.typescriptlang.org/)
11
+ [![Tests](https://img.shields.io/badge/Tests-979_passing-brightgreen)](https://github.com/DancingTedDanson011/HelixMind)
12
+
13
+ *An autonomous coding agent that remembers context across sessions, learns from every interaction, and works with any AI provider.*
14
+
15
+ [Installation](#installation) -- [Open Source vs Connected](#open-source-vs-connected) -- [Features](#features) -- [Quick Start](#quick-start) -- [Documentation](#documentation)
16
+
17
+ </div>
18
+
19
+ ---
20
+
21
+ ## Installation
22
+
23
+ ```bash
24
+ # Run directly (no install needed)
25
+ npx helixmind
26
+
27
+ # Or install globally
28
+ npm install -g helixmind
29
+ helixmind
30
+ ```
31
+
32
+ ### Requirements
33
+
34
+ - Node.js 18+
35
+ - An API key for at least one provider: Anthropic, OpenAI, or Ollama (local, no key needed)
36
+
37
+ ---
38
+
39
+ ## Open Source vs Connected
40
+
41
+ When you start HelixMind for the first time, you choose how to use it:
42
+
43
+ ```
44
+ +----------------------------------------------------------------------------+
45
+ | Welcome to HelixMind |
46
+ | |
47
+ | Login - free, unlock everything Open Source - no account needed |
48
+ | |
49
+ | [v] Jarvis Task Daemon [v] AI Agent + 22 Tools |
50
+ | [v] Validation Matrix [v] Spiral Memory |
51
+ | [v] Security Monitor [v] Anthropic/OpenAI/Ollama |
52
+ | [v] Autonomous Mode [x] No Jarvis / No Validation |
53
+ | [v] 3D Brain Management [x] No Monitor / No Security |
54
+ | [v] 3 Brains + Live WS [x] No Brain Management |
55
+ | |
56
+ | No credit card - Free forever - works offline |
57
+ +----------------------------------------------------------------------------+
58
+ -> [1] Login / [2] Open Source:
59
+ ```
60
+
61
+ | | Open Source | Connected (Free Account) |
62
+ |---|---|---|
63
+ | AI Agent with 22 Tools | Yes | Yes |
64
+ | Spiral Memory (5 levels) | Yes | Yes |
65
+ | Anthropic / OpenAI / Ollama | Yes | Yes |
66
+ | Checkpoints and Undo | Yes | Yes |
67
+ | Bug Journal | Yes | Yes |
68
+ | Browser Automation | Yes | Yes |
69
+ | Web Knowledge Enrichment | Yes | Yes |
70
+ | Swarm (parallel workers) | Yes | Yes |
71
+ | MCP Server | Yes | Yes |
72
+ | Jarvis Task Daemon | - | Yes |
73
+ | Validation Matrix | - | Yes |
74
+ | Security Monitor | - | Yes |
75
+ | 3D Brain Management | - | Yes |
76
+ | Autonomous Mode | - | Yes |
77
+ | Web Dashboard Remote Control | - | Yes |
78
+
79
+ **Both modes are fully functional coding agents.** The open source mode includes everything you need for day-to-day AI-assisted development. Connected mode adds advanced orchestration and monitoring features via a free account at [helix-mind.ai](https://helix-mind.ai).
80
+
81
+ You can switch anytime by running `helixmind login`.
82
+
83
+ ---
84
+
85
+ ## Features
86
+
87
+ ### 22 Agent Tools
88
+
89
+ HelixMind operates as an autonomous coding agent with built-in tools:
90
+
91
+ | Tool | Description |
92
+ |:-----|:------------|
93
+ | `read_file` / `write_file` / `edit_file` | Read, create, and modify files |
94
+ | `list_dir` / `search_files` / `find_files` | Navigate and search the codebase |
95
+ | `run_command` | Execute shell commands (sandboxed) |
96
+ | `git_status` / `git_commit` / `git_diff` / `git_log` | Full Git integration |
97
+ | `spiral_store` / `spiral_query` / `spiral_status` | Interact with spiral memory |
98
+ | `web_research` | Search the internet and extract knowledge |
99
+ | `bug_report` / `bug_list` | Track and manage bugs |
100
+ | `browser_navigate` / `browser_click` / `browser_type` / `browser_screenshot` / `browser_read` / `browser_eval` | Control a headless browser |
101
+
102
+ All tools go through a 3-tier permission system: **auto** (safe operations), **ask** (confirm first), **dangerous** (requires explicit approval). Use `--yolo` to auto-approve everything.
103
+
104
+ ### Spiral Memory
105
+
106
+ A 5-level hierarchical memory that persists across sessions:
107
+
108
+ ```
109
+ Level 1 - Focus Most relevant, recent context
110
+ Level 2 - Active Related files, dependencies, web knowledge
111
+ Level 3 - Reference Decisions, patterns, code structure
112
+ Level 4 - Archive Compressed summaries, old sessions
113
+ Level 5 - Deep Long-term knowledge, project history
114
+ ```
115
+
116
+ Context flows between levels based on relevance, recency, and usage. Web knowledge enrichment automatically fetches and stores relevant information from the internet as you work.
117
+
118
+ ### Swarm Mode
119
+
120
+ For complex multi-task requests, HelixMind automatically decomposes the work and spawns parallel worker sessions:
121
+
122
+ ```bash
123
+ # Auto-detected when you send multi-part requests
124
+ > "Create a user model, add CRUD endpoints, and write tests for each"
125
+
126
+ # Or force it manually
127
+ /swarm refactor auth module, update all tests, fix the CI pipeline
128
+ ```
129
+
130
+ Each worker gets its own session with file-level locking to prevent conflicts. Results are merged and summarized when all workers complete.
131
+
132
+ ### Checkpoints
133
+
134
+ Every tool call and chat message creates an automatic checkpoint. Double-tap `ESC` to open the checkpoint browser and revert to any previous state (chat history, code changes, or both).
135
+
136
+ ### Bug Journal
137
+
138
+ Bugs are automatically detected from your messages (in English and German) and tracked in `.helixmind/bugs.json`. Each bug gets evidence, status, and persists across sessions.
139
+
140
+ ### Browser Automation
141
+
142
+ Headless Chrome integration via Puppeteer for web testing, scraping, and visual analysis:
143
+
144
+ ```
145
+ /browser https://example.com
146
+ > "Click the login button and fill in the form"
147
+ > "Take a screenshot and analyze the layout"
148
+ ```
149
+
150
+ ### Multi-Provider Support
151
+
152
+ | Provider | Models | Setup |
153
+ |:---------|:-------|:------|
154
+ | Anthropic | Claude Sonnet, Opus, Haiku | `ANTHROPIC_API_KEY=sk-ant-...` |
155
+ | OpenAI | GPT-4o, GPT-4, o1, o3 | `OPENAI_API_KEY=sk-...` |
156
+ | Ollama | Any local model | No key needed (auto-detected) |
157
+
158
+ Switch providers at runtime with `/model`.
159
+
160
+ ### MCP Server
161
+
162
+ HelixMind includes a Model Context Protocol server for integration with other tools:
163
+
164
+ - Claude Code
165
+ - Cursor
166
+ - VS Code (Copilot)
167
+ - Windsurf
168
+ - JetBrains AI
169
+
170
+ ---
171
+
172
+ ## Quick Start
173
+
174
+ ```bash
175
+ # Start interactive chat
176
+ helixmind
177
+
178
+ # Initialize in a project (creates .helixmind/)
179
+ helixmind init
180
+
181
+ # Send a single message
182
+ helixmind chat -m "fix all lint errors in src/"
183
+
184
+ # YOLO mode - auto-approve everything
185
+ helixmind chat --yolo
186
+
187
+ # Skip permission prompts
188
+ helixmind chat -s
189
+
190
+ # Feed files into spiral memory
191
+ helixmind feed src/ --deep
192
+
193
+ # Watch files and update spiral live
194
+ helixmind feed src/ --watch
195
+ ```
196
+
197
+ ---
198
+
199
+ ## CLI Commands
200
+
201
+ | Command | Description |
202
+ |:--------|:------------|
203
+ | `helixmind` | Start interactive chat (default) |
204
+ | `helixmind init` | Initialize HelixMind in project |
205
+ | `helixmind chat -m "..."` | Send a single message |
206
+ | `helixmind chat --yolo` | Auto-approve all operations |
207
+ | `helixmind chat -s` | Skip permission prompts |
208
+ | `helixmind feed [paths...]` | Feed files into spiral |
209
+ | `helixmind feed --deep` | Deep analysis with intent detection |
210
+ | `helixmind feed --watch` | Watch and auto-update spiral |
211
+ | `helixmind spiral status` | Show spiral metrics |
212
+ | `helixmind spiral search <query>` | Search spiral context |
213
+ | `helixmind spiral compact` | Trigger spiral compaction |
214
+ | `helixmind config set <k> <v>` | Set config value |
215
+ | `helixmind config list` | Show all config |
216
+ | `helixmind export [dir]` | Export spiral to .helixmind.zip |
217
+ | `helixmind import <zip>` | Import spiral from archive |
218
+ | `helixmind login` | Authenticate (switch to Connected mode) |
219
+ | `helixmind logout` | Remove stored auth |
220
+
221
+ ### Slash Commands (inside chat)
222
+
223
+ | Command | Description |
224
+ |:--------|:------------|
225
+ | `/help` | Show all commands |
226
+ | `/model` | Switch AI provider/model |
227
+ | `/spiral` | Show spiral status |
228
+ | `/brain` | Open 3D brain visualization |
229
+ | `/context` | Show assembled context |
230
+ | `/tokens` | Token usage stats |
231
+ | `/undo` | Undo last file change |
232
+ | `/diff` | Show current file changes |
233
+ | `/git` | Git operations |
234
+ | `/sessions` | Manage background sessions |
235
+ | `/browser` | Start browser session |
236
+ | `/bugs` | View bug journal |
237
+ | `/swarm <msg>` | Force swarm execution |
238
+ | `/auto` | Start autonomous mode |
239
+ | `/security` | Run security audit |
240
+ | `/yolo` | Toggle YOLO mode |
241
+ | `/exit` | Quit |
242
+
243
+ ### Keyboard Shortcuts
244
+
245
+ | Key | Action |
246
+ |:----|:-------|
247
+ | `ESC ESC` | Emergency stop / checkpoint browser |
248
+ | `Ctrl+C` | Exit |
249
+ | `Ctrl+L` | Clear screen |
250
+ | `Ctrl+PageUp/Down` | Switch session tabs |
251
+ | `Tab` | Autocomplete command |
252
+
253
+ ---
254
+
255
+ ## Configuration
256
+
257
+ ### Environment Variables
258
+
259
+ ```bash
260
+ ANTHROPIC_API_KEY=sk-ant-... # For Claude
261
+ OPENAI_API_KEY=sk-... # For OpenAI/GPT
262
+ # Ollama: no key needed (auto-detected on localhost:11434)
263
+ ```
264
+
265
+ ### Project Config
266
+
267
+ Create `.helixmind/config.json` in your project root:
268
+
269
+ ```json
270
+ {
271
+ "provider": "anthropic",
272
+ "model": "claude-sonnet-4-20250514"
273
+ }
274
+ ```
275
+
276
+ Or use the CLI:
277
+
278
+ ```bash
279
+ helixmind config set provider anthropic
280
+ helixmind config set model claude-sonnet-4-20250514
281
+ ```
282
+
283
+ ---
284
+
285
+ ## Tech Stack
286
+
287
+ | Component | Technology |
288
+ |:----------|:-----------|
289
+ | Language | TypeScript (strict, ESM) |
290
+ | AI Providers | Anthropic SDK, OpenAI SDK, Ollama |
291
+ | Database | better-sqlite3 + sqlite-vec (vector search) |
292
+ | Embeddings | HuggingFace Transformers (MiniLM-L6-v2) |
293
+ | Browser | Puppeteer (headless Chrome) |
294
+ | Testing | Vitest (979 tests) |
295
+ | MCP | Model Context Protocol SDK |
296
+
297
+ ---
298
+
299
+ ## Development
300
+
301
+ ```bash
302
+ git clone https://github.com/DancingTedDanson011/HelixMind.git
303
+ cd HelixMind
304
+
305
+ npm install
306
+ npm run build
307
+ npm run dev # Dev mode with watch
308
+ npm test # Run 979 tests
309
+ ```
310
+
311
+ ---
312
+
313
+ ## License
314
+
315
+ [AGPL-3.0](LICENSE) -- Free for open-source use. Commercial licenses available.
316
+
317
+ ---
318
+
319
+ <div align="center">
320
+
321
+ **[helix-mind.ai](https://helix-mind.ai)**
322
+
323
+ </div>
@@ -0,0 +1,24 @@
1
+ export declare const SECURITY_PROMPT = "Perform a comprehensive SECURITY AUDIT of this codebase.\n\nCheck every file systematically for:\n1. **Command Injection** \u2014 user input passed to shell commands without sanitization\n2. **Path Traversal** \u2014 user-controlled paths that could escape the project root\n3. **XSS / Injection** \u2014 unsanitized output in HTML/templates\n4. **Hardcoded Secrets** \u2014 API keys, passwords, tokens in source code\n5. **Insecure Dependencies** \u2014 check package.json for known vulnerable packages\n6. **Missing Input Validation** \u2014 unvalidated user input at boundaries\n7. **Unsafe File Operations** \u2014 writing to arbitrary paths, following symlinks\n8. **Information Disclosure** \u2014 verbose error messages, debug endpoints\n9. **Authentication Issues** \u2014 missing auth checks, weak token generation\n10. **Race Conditions** \u2014 TOCTOU, concurrent access without locks\n\nFor EACH finding, report:\n- **Severity**: CRITICAL / HIGH / MEDIUM / LOW\n- **File**: exact file path and line number\n- **Issue**: what's wrong and why it's dangerous\n- **Fix**: specific code change needed\n\nAfter the report, automatically fix all CRITICAL and HIGH severity issues.";
2
+ export interface AutonomousCallbacks {
3
+ sendMessage: (prompt: string) => Promise<string>;
4
+ isAborted: () => boolean;
5
+ onRoundStart: (round: number) => void;
6
+ onRoundEnd: (round: number, summary: string) => void;
7
+ updateStatus: () => void;
8
+ }
9
+ export declare function runAutonomousLoop(callbacks: AutonomousCallbacks, initialGoal?: string): Promise<number>;
10
+ export declare const MONITOR_MODES: readonly [{
11
+ readonly key: "passive";
12
+ readonly label: "🔍 Passive";
13
+ readonly description: "Read-only scan — alerts only, no changes";
14
+ }, {
15
+ readonly key: "defensive";
16
+ readonly label: "🛡️ Defensive";
17
+ readonly description: "Auto-block threats — IP blocks, port closes, secret rotation";
18
+ }, {
19
+ readonly key: "active";
20
+ readonly label: "⚔️ Active";
21
+ readonly description: "Full control — honeypots, counter-intel, approval required";
22
+ }];
23
+ export declare const MONITOR_WARNINGS: Record<string, string[]>;
24
+ //# sourceMappingURL=autonomous.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"autonomous.d.ts","sourceRoot":"","sources":["../../../src/cli/agent/autonomous.ts"],"names":[],"mappings":"AAqCA,eAAO,MAAM,eAAe,sqCAoB+C,CAAC;AAE5E,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACjD,SAAS,EAAE,MAAM,OAAO,CAAC;IACzB,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD,YAAY,EAAE,MAAM,IAAI,CAAC;CAC1B;AA+BD,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,mBAAmB,EAC9B,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,CAAC,CAiFjB;AAMD,eAAO,MAAM,aAAa;;;;;;;;;;;;EAIhB,CAAC;AAEX,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAarD,CAAC"}
@@ -0,0 +1,194 @@
1
+ /**
2
+ * Autonomous work mode — HelixMind continuously scans and fixes issues.
3
+ * Runs until nothing more to optimize or /stop is called.
4
+ */
5
+ import chalk from 'chalk';
6
+ import { renderInfo } from '../ui/chat-view.js';
7
+ const SCAN_PROMPT = `You are in AUTONOMOUS MODE. Scan this repository thoroughly for the most impactful issue to fix.
8
+
9
+ Priority order:
10
+ 1. CRITICAL bugs or logic errors that cause crashes or wrong behavior
11
+ 2. Security vulnerabilities (injection, path traversal, hardcoded secrets)
12
+ 3. Missing error handling that could cause unhandled exceptions
13
+ 4. Broken or missing tests for important functionality
14
+ 5. Performance bottlenecks
15
+ 6. Dead code, unused imports, inconsistent patterns
16
+ 7. Code quality improvements
17
+
18
+ RULES:
19
+ - Pick ONE issue — the most impactful one
20
+ - Fix it completely (code + test if applicable)
21
+ - End with a single-line summary starting with "DONE:" describing what you fixed
22
+ - If you genuinely cannot find ANY issue worth fixing, respond with exactly: ALL_TASKS_COMPLETE`;
23
+ function continuePrompt(completed) {
24
+ return `You are in AUTONOMOUS MODE (round ${completed.length + 1}).
25
+
26
+ Already completed:
27
+ ${completed.map((t, i) => ` ${i + 1}. ${t}`).join('\n')}
28
+
29
+ Continue scanning for MORE issues in DIFFERENT areas of the codebase.
30
+ Pick the next most impactful issue and fix it completely.
31
+
32
+ End with a single-line summary starting with "DONE:" describing what you fixed.
33
+ If you genuinely cannot find anything more to improve: ALL_TASKS_COMPLETE`;
34
+ }
35
+ export const SECURITY_PROMPT = `Perform a comprehensive SECURITY AUDIT of this codebase.
36
+
37
+ Check every file systematically for:
38
+ 1. **Command Injection** — user input passed to shell commands without sanitization
39
+ 2. **Path Traversal** — user-controlled paths that could escape the project root
40
+ 3. **XSS / Injection** — unsanitized output in HTML/templates
41
+ 4. **Hardcoded Secrets** — API keys, passwords, tokens in source code
42
+ 5. **Insecure Dependencies** — check package.json for known vulnerable packages
43
+ 6. **Missing Input Validation** — unvalidated user input at boundaries
44
+ 7. **Unsafe File Operations** — writing to arbitrary paths, following symlinks
45
+ 8. **Information Disclosure** — verbose error messages, debug endpoints
46
+ 9. **Authentication Issues** — missing auth checks, weak token generation
47
+ 10. **Race Conditions** — TOCTOU, concurrent access without locks
48
+
49
+ For EACH finding, report:
50
+ - **Severity**: CRITICAL / HIGH / MEDIUM / LOW
51
+ - **File**: exact file path and line number
52
+ - **Issue**: what's wrong and why it's dangerous
53
+ - **Fix**: specific code change needed
54
+
55
+ After the report, automatically fix all CRITICAL and HIGH severity issues.`;
56
+ function goalPrompt(goal) {
57
+ return `You are in AUTONOMOUS MODE with a specific goal.
58
+
59
+ GOAL: ${goal}
60
+
61
+ Work on this goal step by step. Break it down into subtasks if needed.
62
+ Fix, implement, or change whatever is necessary to achieve the goal.
63
+
64
+ RULES:
65
+ - Focus exclusively on the given goal
66
+ - Work methodically — one subtask at a time
67
+ - End each round with a single-line summary starting with "DONE:" describing what you accomplished
68
+ - When the goal is fully achieved, respond with exactly: ALL_TASKS_COMPLETE`;
69
+ }
70
+ function continueGoalPrompt(goal, completed) {
71
+ return `You are in AUTONOMOUS MODE (round ${completed.length + 1}).
72
+
73
+ GOAL: ${goal}
74
+
75
+ Already completed:
76
+ ${completed.map((t, i) => ` ${i + 1}. ${t}`).join('\n')}
77
+
78
+ Continue working towards the goal. Pick the next subtask and complete it.
79
+
80
+ End with a single-line summary starting with "DONE:" describing what you accomplished.
81
+ When the goal is fully achieved: ALL_TASKS_COMPLETE`;
82
+ }
83
+ export async function runAutonomousLoop(callbacks, initialGoal) {
84
+ const completed = [];
85
+ let round = 0;
86
+ let goal = initialGoal;
87
+ const d = chalk.dim;
88
+ const c = chalk.hex('#00d4ff');
89
+ process.stdout.write('\n');
90
+ process.stdout.write(d('\u256D\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256E') + '\n');
91
+ process.stdout.write(d('\u2502 ') + c('\u{1F504} AUTONOMOUS MODE') + d(' \u2502') + '\n');
92
+ if (goal) {
93
+ process.stdout.write(d('\u2502') + d(' \u2502') + '\n');
94
+ // Truncate goal to fit in the box (39 chars max)
95
+ const goalDisplay = goal.length > 39 ? goal.slice(0, 36) + '...' : goal;
96
+ const padding = ' '.repeat(Math.max(0, 39 - goalDisplay.length));
97
+ process.stdout.write(d('\u2502 ') + chalk.white.bold('Goal: ') + goalDisplay + padding + d('\u2502') + '\n');
98
+ }
99
+ else {
100
+ process.stdout.write(d('\u2502') + d(' \u2502') + '\n');
101
+ process.stdout.write(d('\u2502 ') + 'HelixMind will continuously scan and fix' + d(' \u2502') + '\n');
102
+ process.stdout.write(d('\u2502 ') + 'issues until nothing remains.' + d(' \u2502') + '\n');
103
+ }
104
+ process.stdout.write(d('\u2502') + d(' \u2502') + '\n');
105
+ process.stdout.write(d('\u2502 ') + d('/stop or ESC to stop') + d(' \u2502') + '\n');
106
+ process.stdout.write(d('\u2570\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256F') + '\n\n');
107
+ while (!callbacks.isAborted()) {
108
+ round++;
109
+ callbacks.onRoundStart(round);
110
+ callbacks.updateStatus();
111
+ let prompt;
112
+ if (goal) {
113
+ prompt = round === 1 ? goalPrompt(goal) : continueGoalPrompt(goal, completed);
114
+ }
115
+ else {
116
+ prompt = round === 1 ? SCAN_PROMPT : continuePrompt(completed);
117
+ }
118
+ process.stdout.write(chalk.dim(` \u2500\u2500 Round ${round} `) + chalk.dim('\u2500'.repeat(35)) + '\n');
119
+ try {
120
+ const resultText = await callbacks.sendMessage(prompt);
121
+ if (callbacks.isAborted())
122
+ break;
123
+ // Check if agent says it's done
124
+ if (resultText.includes('ALL_TASKS_COMPLETE')) {
125
+ if (goal) {
126
+ // Goal achieved — transition to general scan mode
127
+ process.stdout.write('\n');
128
+ renderInfo(chalk.green(` \u2705 Goal achieved (${completed.length} tasks). Switching to general scan mode...`));
129
+ process.stdout.write('\n');
130
+ goal = undefined; // switch to scan mode for subsequent rounds
131
+ continue;
132
+ }
133
+ else {
134
+ // General scan found nothing — truly done
135
+ process.stdout.write('\n');
136
+ renderInfo(chalk.green(` \u2705 Autonomous mode complete \u2014 ${completed.length} tasks finished.`));
137
+ process.stdout.write('\n');
138
+ break;
139
+ }
140
+ }
141
+ // Extract summary from "DONE: ..." line or last line
142
+ const summary = extractSummary(resultText);
143
+ completed.push(summary);
144
+ callbacks.onRoundEnd(round, summary);
145
+ renderInfo(chalk.green(` \u2713 Round ${round}: ${summary}`));
146
+ }
147
+ catch (err) {
148
+ if (callbacks.isAborted())
149
+ break;
150
+ renderInfo(chalk.red(` \u2717 Round ${round} error: ${err}`));
151
+ }
152
+ }
153
+ if (callbacks.isAborted()) {
154
+ process.stdout.write('\n');
155
+ renderInfo(chalk.yellow(` \u23F9 Autonomous mode stopped after ${completed.length} tasks.`));
156
+ process.stdout.write('\n');
157
+ }
158
+ return completed.length;
159
+ }
160
+ // ---------------------------------------------------------------------------
161
+ // Monitor mode helpers
162
+ // ---------------------------------------------------------------------------
163
+ export const MONITOR_MODES = [
164
+ { key: 'passive', label: '\u{1F50D} Passive', description: 'Read-only scan \u2014 alerts only, no changes' },
165
+ { key: 'defensive', label: '\u{1F6E1}\uFE0F Defensive', description: 'Auto-block threats \u2014 IP blocks, port closes, secret rotation' },
166
+ { key: 'active', label: '\u2694\uFE0F Active', description: 'Full control \u2014 honeypots, counter-intel, approval required' },
167
+ ];
168
+ export const MONITOR_WARNINGS = {
169
+ defensive: [
170
+ 'Block attacking IPs via iptables/fail2ban',
171
+ 'Kill suspicious processes',
172
+ 'Rotate compromised secrets',
173
+ 'Write firewall rules',
174
+ ],
175
+ active: [
176
+ 'All defensive actions, plus:',
177
+ 'Deploy honeypot services',
178
+ 'Attacker profiling & counter-intel',
179
+ 'Deception infrastructure',
180
+ ],
181
+ };
182
+ function extractSummary(text) {
183
+ // Look for "DONE: ..." line
184
+ const doneMatch = text.match(/DONE:\s*(.+)/i);
185
+ if (doneMatch) {
186
+ const s = doneMatch[1].trim();
187
+ return s.length > 120 ? s.slice(0, 117) + '...' : s;
188
+ }
189
+ // Fallback: last non-empty line
190
+ const lines = text.trim().split('\n').filter(l => l.trim());
191
+ const last = lines[lines.length - 1]?.trim() || text.slice(0, 100);
192
+ return last.length > 120 ? last.slice(0, 117) + '...' : last;
193
+ }
194
+ //# sourceMappingURL=autonomous.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"autonomous.js","sourceRoot":"","sources":["../../../src/cli/agent/autonomous.ts"],"names":[],"mappings":"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"}