onbuzz 3.3.0

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 (506) hide show
  1. package/LICENSE +267 -0
  2. package/README.md +425 -0
  3. package/bin/cli.js +556 -0
  4. package/bin/loxia-terminal-v2.js +162 -0
  5. package/bin/loxia-terminal.js +90 -0
  6. package/bin/start-with-terminal.js +200 -0
  7. package/node_modules/@isaacs/balanced-match/LICENSE.md +23 -0
  8. package/node_modules/@isaacs/balanced-match/README.md +60 -0
  9. package/node_modules/@isaacs/balanced-match/dist/commonjs/index.d.ts +9 -0
  10. package/node_modules/@isaacs/balanced-match/dist/commonjs/index.d.ts.map +1 -0
  11. package/node_modules/@isaacs/balanced-match/dist/commonjs/index.js +59 -0
  12. package/node_modules/@isaacs/balanced-match/dist/commonjs/index.js.map +1 -0
  13. package/node_modules/@isaacs/balanced-match/dist/commonjs/package.json +3 -0
  14. package/node_modules/@isaacs/balanced-match/dist/esm/index.d.ts +9 -0
  15. package/node_modules/@isaacs/balanced-match/dist/esm/index.d.ts.map +1 -0
  16. package/node_modules/@isaacs/balanced-match/dist/esm/index.js +54 -0
  17. package/node_modules/@isaacs/balanced-match/dist/esm/index.js.map +1 -0
  18. package/node_modules/@isaacs/balanced-match/dist/esm/package.json +3 -0
  19. package/node_modules/@isaacs/balanced-match/package.json +79 -0
  20. package/node_modules/@isaacs/brace-expansion/LICENSE +23 -0
  21. package/node_modules/@isaacs/brace-expansion/README.md +97 -0
  22. package/node_modules/@isaacs/brace-expansion/dist/commonjs/index.d.ts +6 -0
  23. package/node_modules/@isaacs/brace-expansion/dist/commonjs/index.d.ts.map +1 -0
  24. package/node_modules/@isaacs/brace-expansion/dist/commonjs/index.js +199 -0
  25. package/node_modules/@isaacs/brace-expansion/dist/commonjs/index.js.map +1 -0
  26. package/node_modules/@isaacs/brace-expansion/dist/commonjs/package.json +3 -0
  27. package/node_modules/@isaacs/brace-expansion/dist/esm/index.d.ts +6 -0
  28. package/node_modules/@isaacs/brace-expansion/dist/esm/index.d.ts.map +1 -0
  29. package/node_modules/@isaacs/brace-expansion/dist/esm/index.js +195 -0
  30. package/node_modules/@isaacs/brace-expansion/dist/esm/index.js.map +1 -0
  31. package/node_modules/@isaacs/brace-expansion/dist/esm/package.json +3 -0
  32. package/node_modules/@isaacs/brace-expansion/package.json +60 -0
  33. package/node_modules/glob/LICENSE.md +63 -0
  34. package/node_modules/glob/README.md +1177 -0
  35. package/node_modules/glob/dist/commonjs/glob.d.ts +388 -0
  36. package/node_modules/glob/dist/commonjs/glob.d.ts.map +1 -0
  37. package/node_modules/glob/dist/commonjs/glob.js +247 -0
  38. package/node_modules/glob/dist/commonjs/glob.js.map +1 -0
  39. package/node_modules/glob/dist/commonjs/has-magic.d.ts +14 -0
  40. package/node_modules/glob/dist/commonjs/has-magic.d.ts.map +1 -0
  41. package/node_modules/glob/dist/commonjs/has-magic.js +27 -0
  42. package/node_modules/glob/dist/commonjs/has-magic.js.map +1 -0
  43. package/node_modules/glob/dist/commonjs/ignore.d.ts +24 -0
  44. package/node_modules/glob/dist/commonjs/ignore.d.ts.map +1 -0
  45. package/node_modules/glob/dist/commonjs/ignore.js +119 -0
  46. package/node_modules/glob/dist/commonjs/ignore.js.map +1 -0
  47. package/node_modules/glob/dist/commonjs/index.d.ts +97 -0
  48. package/node_modules/glob/dist/commonjs/index.d.ts.map +1 -0
  49. package/node_modules/glob/dist/commonjs/index.js +68 -0
  50. package/node_modules/glob/dist/commonjs/index.js.map +1 -0
  51. package/node_modules/glob/dist/commonjs/index.min.js +4 -0
  52. package/node_modules/glob/dist/commonjs/index.min.js.map +7 -0
  53. package/node_modules/glob/dist/commonjs/package.json +3 -0
  54. package/node_modules/glob/dist/commonjs/pattern.d.ts +76 -0
  55. package/node_modules/glob/dist/commonjs/pattern.d.ts.map +1 -0
  56. package/node_modules/glob/dist/commonjs/pattern.js +219 -0
  57. package/node_modules/glob/dist/commonjs/pattern.js.map +1 -0
  58. package/node_modules/glob/dist/commonjs/processor.d.ts +59 -0
  59. package/node_modules/glob/dist/commonjs/processor.d.ts.map +1 -0
  60. package/node_modules/glob/dist/commonjs/processor.js +301 -0
  61. package/node_modules/glob/dist/commonjs/processor.js.map +1 -0
  62. package/node_modules/glob/dist/commonjs/walker.d.ts +97 -0
  63. package/node_modules/glob/dist/commonjs/walker.d.ts.map +1 -0
  64. package/node_modules/glob/dist/commonjs/walker.js +387 -0
  65. package/node_modules/glob/dist/commonjs/walker.js.map +1 -0
  66. package/node_modules/glob/dist/esm/glob.d.ts +388 -0
  67. package/node_modules/glob/dist/esm/glob.d.ts.map +1 -0
  68. package/node_modules/glob/dist/esm/glob.js +243 -0
  69. package/node_modules/glob/dist/esm/glob.js.map +1 -0
  70. package/node_modules/glob/dist/esm/has-magic.d.ts +14 -0
  71. package/node_modules/glob/dist/esm/has-magic.d.ts.map +1 -0
  72. package/node_modules/glob/dist/esm/has-magic.js +23 -0
  73. package/node_modules/glob/dist/esm/has-magic.js.map +1 -0
  74. package/node_modules/glob/dist/esm/ignore.d.ts +24 -0
  75. package/node_modules/glob/dist/esm/ignore.d.ts.map +1 -0
  76. package/node_modules/glob/dist/esm/ignore.js +115 -0
  77. package/node_modules/glob/dist/esm/ignore.js.map +1 -0
  78. package/node_modules/glob/dist/esm/index.d.ts +97 -0
  79. package/node_modules/glob/dist/esm/index.d.ts.map +1 -0
  80. package/node_modules/glob/dist/esm/index.js +55 -0
  81. package/node_modules/glob/dist/esm/index.js.map +1 -0
  82. package/node_modules/glob/dist/esm/index.min.js +4 -0
  83. package/node_modules/glob/dist/esm/index.min.js.map +7 -0
  84. package/node_modules/glob/dist/esm/package.json +3 -0
  85. package/node_modules/glob/dist/esm/pattern.d.ts +76 -0
  86. package/node_modules/glob/dist/esm/pattern.d.ts.map +1 -0
  87. package/node_modules/glob/dist/esm/pattern.js +215 -0
  88. package/node_modules/glob/dist/esm/pattern.js.map +1 -0
  89. package/node_modules/glob/dist/esm/processor.d.ts +59 -0
  90. package/node_modules/glob/dist/esm/processor.d.ts.map +1 -0
  91. package/node_modules/glob/dist/esm/processor.js +294 -0
  92. package/node_modules/glob/dist/esm/processor.js.map +1 -0
  93. package/node_modules/glob/dist/esm/walker.d.ts +97 -0
  94. package/node_modules/glob/dist/esm/walker.d.ts.map +1 -0
  95. package/node_modules/glob/dist/esm/walker.js +381 -0
  96. package/node_modules/glob/dist/esm/walker.js.map +1 -0
  97. package/node_modules/glob/node_modules/minimatch/LICENSE.md +55 -0
  98. package/node_modules/glob/node_modules/minimatch/README.md +453 -0
  99. package/node_modules/glob/node_modules/minimatch/dist/commonjs/assert-valid-pattern.d.ts +2 -0
  100. package/node_modules/glob/node_modules/minimatch/dist/commonjs/assert-valid-pattern.d.ts.map +1 -0
  101. package/node_modules/glob/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js +14 -0
  102. package/node_modules/glob/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js.map +1 -0
  103. package/node_modules/glob/node_modules/minimatch/dist/commonjs/ast.d.ts +20 -0
  104. package/node_modules/glob/node_modules/minimatch/dist/commonjs/ast.d.ts.map +1 -0
  105. package/node_modules/glob/node_modules/minimatch/dist/commonjs/ast.js +591 -0
  106. package/node_modules/glob/node_modules/minimatch/dist/commonjs/ast.js.map +1 -0
  107. package/node_modules/glob/node_modules/minimatch/dist/commonjs/brace-expressions.d.ts +8 -0
  108. package/node_modules/glob/node_modules/minimatch/dist/commonjs/brace-expressions.d.ts.map +1 -0
  109. package/node_modules/glob/node_modules/minimatch/dist/commonjs/brace-expressions.js +152 -0
  110. package/node_modules/glob/node_modules/minimatch/dist/commonjs/brace-expressions.js.map +1 -0
  111. package/node_modules/glob/node_modules/minimatch/dist/commonjs/escape.d.ts +15 -0
  112. package/node_modules/glob/node_modules/minimatch/dist/commonjs/escape.d.ts.map +1 -0
  113. package/node_modules/glob/node_modules/minimatch/dist/commonjs/escape.js +30 -0
  114. package/node_modules/glob/node_modules/minimatch/dist/commonjs/escape.js.map +1 -0
  115. package/node_modules/glob/node_modules/minimatch/dist/commonjs/index.d.ts +94 -0
  116. package/node_modules/glob/node_modules/minimatch/dist/commonjs/index.d.ts.map +1 -0
  117. package/node_modules/glob/node_modules/minimatch/dist/commonjs/index.js +1029 -0
  118. package/node_modules/glob/node_modules/minimatch/dist/commonjs/index.js.map +1 -0
  119. package/node_modules/glob/node_modules/minimatch/dist/commonjs/package.json +3 -0
  120. package/node_modules/glob/node_modules/minimatch/dist/commonjs/unescape.d.ts +22 -0
  121. package/node_modules/glob/node_modules/minimatch/dist/commonjs/unescape.d.ts.map +1 -0
  122. package/node_modules/glob/node_modules/minimatch/dist/commonjs/unescape.js +38 -0
  123. package/node_modules/glob/node_modules/minimatch/dist/commonjs/unescape.js.map +1 -0
  124. package/node_modules/glob/node_modules/minimatch/dist/esm/assert-valid-pattern.d.ts +2 -0
  125. package/node_modules/glob/node_modules/minimatch/dist/esm/assert-valid-pattern.d.ts.map +1 -0
  126. package/node_modules/glob/node_modules/minimatch/dist/esm/assert-valid-pattern.js +10 -0
  127. package/node_modules/glob/node_modules/minimatch/dist/esm/assert-valid-pattern.js.map +1 -0
  128. package/node_modules/glob/node_modules/minimatch/dist/esm/ast.d.ts +20 -0
  129. package/node_modules/glob/node_modules/minimatch/dist/esm/ast.d.ts.map +1 -0
  130. package/node_modules/glob/node_modules/minimatch/dist/esm/ast.js +587 -0
  131. package/node_modules/glob/node_modules/minimatch/dist/esm/ast.js.map +1 -0
  132. package/node_modules/glob/node_modules/minimatch/dist/esm/brace-expressions.d.ts +8 -0
  133. package/node_modules/glob/node_modules/minimatch/dist/esm/brace-expressions.d.ts.map +1 -0
  134. package/node_modules/glob/node_modules/minimatch/dist/esm/brace-expressions.js +148 -0
  135. package/node_modules/glob/node_modules/minimatch/dist/esm/brace-expressions.js.map +1 -0
  136. package/node_modules/glob/node_modules/minimatch/dist/esm/escape.d.ts +15 -0
  137. package/node_modules/glob/node_modules/minimatch/dist/esm/escape.d.ts.map +1 -0
  138. package/node_modules/glob/node_modules/minimatch/dist/esm/escape.js +26 -0
  139. package/node_modules/glob/node_modules/minimatch/dist/esm/escape.js.map +1 -0
  140. package/node_modules/glob/node_modules/minimatch/dist/esm/index.d.ts +94 -0
  141. package/node_modules/glob/node_modules/minimatch/dist/esm/index.d.ts.map +1 -0
  142. package/node_modules/glob/node_modules/minimatch/dist/esm/index.js +1016 -0
  143. package/node_modules/glob/node_modules/minimatch/dist/esm/index.js.map +1 -0
  144. package/node_modules/glob/node_modules/minimatch/dist/esm/package.json +3 -0
  145. package/node_modules/glob/node_modules/minimatch/dist/esm/unescape.d.ts +22 -0
  146. package/node_modules/glob/node_modules/minimatch/dist/esm/unescape.d.ts.map +1 -0
  147. package/node_modules/glob/node_modules/minimatch/dist/esm/unescape.js +34 -0
  148. package/node_modules/glob/node_modules/minimatch/dist/esm/unescape.js.map +1 -0
  149. package/node_modules/glob/node_modules/minimatch/package.json +67 -0
  150. package/node_modules/glob/package.json +101 -0
  151. package/node_modules/minipass/LICENSE +15 -0
  152. package/node_modules/minipass/README.md +825 -0
  153. package/node_modules/minipass/dist/commonjs/index.d.ts +549 -0
  154. package/node_modules/minipass/dist/commonjs/index.d.ts.map +1 -0
  155. package/node_modules/minipass/dist/commonjs/index.js +1028 -0
  156. package/node_modules/minipass/dist/commonjs/index.js.map +1 -0
  157. package/node_modules/minipass/dist/commonjs/package.json +3 -0
  158. package/node_modules/minipass/dist/esm/index.d.ts +549 -0
  159. package/node_modules/minipass/dist/esm/index.d.ts.map +1 -0
  160. package/node_modules/minipass/dist/esm/index.js +1018 -0
  161. package/node_modules/minipass/dist/esm/index.js.map +1 -0
  162. package/node_modules/minipass/dist/esm/package.json +3 -0
  163. package/node_modules/minipass/package.json +82 -0
  164. package/node_modules/package-json-from-dist/LICENSE.md +63 -0
  165. package/node_modules/package-json-from-dist/README.md +110 -0
  166. package/node_modules/package-json-from-dist/dist/commonjs/index.d.ts +89 -0
  167. package/node_modules/package-json-from-dist/dist/commonjs/index.d.ts.map +1 -0
  168. package/node_modules/package-json-from-dist/dist/commonjs/index.js +134 -0
  169. package/node_modules/package-json-from-dist/dist/commonjs/index.js.map +1 -0
  170. package/node_modules/package-json-from-dist/dist/commonjs/package.json +3 -0
  171. package/node_modules/package-json-from-dist/dist/esm/index.d.ts +89 -0
  172. package/node_modules/package-json-from-dist/dist/esm/index.d.ts.map +1 -0
  173. package/node_modules/package-json-from-dist/dist/esm/index.js +129 -0
  174. package/node_modules/package-json-from-dist/dist/esm/index.js.map +1 -0
  175. package/node_modules/package-json-from-dist/dist/esm/package.json +3 -0
  176. package/node_modules/package-json-from-dist/package.json +68 -0
  177. package/node_modules/path-scurry/LICENSE.md +55 -0
  178. package/node_modules/path-scurry/README.md +636 -0
  179. package/node_modules/path-scurry/dist/commonjs/index.d.ts +1115 -0
  180. package/node_modules/path-scurry/dist/commonjs/index.d.ts.map +1 -0
  181. package/node_modules/path-scurry/dist/commonjs/index.js +2018 -0
  182. package/node_modules/path-scurry/dist/commonjs/index.js.map +1 -0
  183. package/node_modules/path-scurry/dist/commonjs/package.json +3 -0
  184. package/node_modules/path-scurry/dist/esm/index.d.ts +1115 -0
  185. package/node_modules/path-scurry/dist/esm/index.d.ts.map +1 -0
  186. package/node_modules/path-scurry/dist/esm/index.js +1983 -0
  187. package/node_modules/path-scurry/dist/esm/index.js.map +1 -0
  188. package/node_modules/path-scurry/dist/esm/package.json +3 -0
  189. package/node_modules/path-scurry/node_modules/lru-cache/LICENSE.md +55 -0
  190. package/node_modules/path-scurry/node_modules/lru-cache/README.md +383 -0
  191. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.d.ts +1323 -0
  192. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.d.ts.map +1 -0
  193. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.js +1589 -0
  194. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.js.map +1 -0
  195. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.min.js +2 -0
  196. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.min.js.map +7 -0
  197. package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/package.json +3 -0
  198. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.d.ts +1323 -0
  199. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.d.ts.map +1 -0
  200. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.js +1585 -0
  201. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.js.map +1 -0
  202. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.min.js +2 -0
  203. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.min.js.map +7 -0
  204. package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/package.json +3 -0
  205. package/node_modules/path-scurry/node_modules/lru-cache/package.json +101 -0
  206. package/node_modules/path-scurry/package.json +88 -0
  207. package/node_modules/rimraf/LICENSE.md +55 -0
  208. package/node_modules/rimraf/README.md +226 -0
  209. package/node_modules/rimraf/dist/commonjs/default-tmp.d.ts +3 -0
  210. package/node_modules/rimraf/dist/commonjs/default-tmp.d.ts.map +1 -0
  211. package/node_modules/rimraf/dist/commonjs/default-tmp.js +58 -0
  212. package/node_modules/rimraf/dist/commonjs/default-tmp.js.map +1 -0
  213. package/node_modules/rimraf/dist/commonjs/error.d.ts +6 -0
  214. package/node_modules/rimraf/dist/commonjs/error.d.ts.map +1 -0
  215. package/node_modules/rimraf/dist/commonjs/error.js +10 -0
  216. package/node_modules/rimraf/dist/commonjs/error.js.map +1 -0
  217. package/node_modules/rimraf/dist/commonjs/fix-eperm.d.ts +3 -0
  218. package/node_modules/rimraf/dist/commonjs/fix-eperm.d.ts.map +1 -0
  219. package/node_modules/rimraf/dist/commonjs/fix-eperm.js +38 -0
  220. package/node_modules/rimraf/dist/commonjs/fix-eperm.js.map +1 -0
  221. package/node_modules/rimraf/dist/commonjs/fs.d.ts +15 -0
  222. package/node_modules/rimraf/dist/commonjs/fs.d.ts.map +1 -0
  223. package/node_modules/rimraf/dist/commonjs/fs.js +33 -0
  224. package/node_modules/rimraf/dist/commonjs/fs.js.map +1 -0
  225. package/node_modules/rimraf/dist/commonjs/ignore-enoent.d.ts +3 -0
  226. package/node_modules/rimraf/dist/commonjs/ignore-enoent.d.ts.map +1 -0
  227. package/node_modules/rimraf/dist/commonjs/ignore-enoent.js +24 -0
  228. package/node_modules/rimraf/dist/commonjs/ignore-enoent.js.map +1 -0
  229. package/node_modules/rimraf/dist/commonjs/index.d.ts +50 -0
  230. package/node_modules/rimraf/dist/commonjs/index.d.ts.map +1 -0
  231. package/node_modules/rimraf/dist/commonjs/index.js +78 -0
  232. package/node_modules/rimraf/dist/commonjs/index.js.map +1 -0
  233. package/node_modules/rimraf/dist/commonjs/opt-arg.d.ts +34 -0
  234. package/node_modules/rimraf/dist/commonjs/opt-arg.d.ts.map +1 -0
  235. package/node_modules/rimraf/dist/commonjs/opt-arg.js +53 -0
  236. package/node_modules/rimraf/dist/commonjs/opt-arg.js.map +1 -0
  237. package/node_modules/rimraf/dist/commonjs/package.json +3 -0
  238. package/node_modules/rimraf/dist/commonjs/path-arg.d.ts +4 -0
  239. package/node_modules/rimraf/dist/commonjs/path-arg.d.ts.map +1 -0
  240. package/node_modules/rimraf/dist/commonjs/path-arg.js +48 -0
  241. package/node_modules/rimraf/dist/commonjs/path-arg.js.map +1 -0
  242. package/node_modules/rimraf/dist/commonjs/readdir-or-error.d.ts +3 -0
  243. package/node_modules/rimraf/dist/commonjs/readdir-or-error.d.ts.map +1 -0
  244. package/node_modules/rimraf/dist/commonjs/readdir-or-error.js +19 -0
  245. package/node_modules/rimraf/dist/commonjs/readdir-or-error.js.map +1 -0
  246. package/node_modules/rimraf/dist/commonjs/retry-busy.d.ts +8 -0
  247. package/node_modules/rimraf/dist/commonjs/retry-busy.d.ts.map +1 -0
  248. package/node_modules/rimraf/dist/commonjs/retry-busy.js +65 -0
  249. package/node_modules/rimraf/dist/commonjs/retry-busy.js.map +1 -0
  250. package/node_modules/rimraf/dist/commonjs/rimraf-manual.d.ts +3 -0
  251. package/node_modules/rimraf/dist/commonjs/rimraf-manual.d.ts.map +1 -0
  252. package/node_modules/rimraf/dist/commonjs/rimraf-manual.js +8 -0
  253. package/node_modules/rimraf/dist/commonjs/rimraf-manual.js.map +1 -0
  254. package/node_modules/rimraf/dist/commonjs/rimraf-move-remove.d.ts +4 -0
  255. package/node_modules/rimraf/dist/commonjs/rimraf-move-remove.d.ts.map +1 -0
  256. package/node_modules/rimraf/dist/commonjs/rimraf-move-remove.js +138 -0
  257. package/node_modules/rimraf/dist/commonjs/rimraf-move-remove.js.map +1 -0
  258. package/node_modules/rimraf/dist/commonjs/rimraf-native.d.ts +4 -0
  259. package/node_modules/rimraf/dist/commonjs/rimraf-native.d.ts.map +1 -0
  260. package/node_modules/rimraf/dist/commonjs/rimraf-native.js +24 -0
  261. package/node_modules/rimraf/dist/commonjs/rimraf-native.js.map +1 -0
  262. package/node_modules/rimraf/dist/commonjs/rimraf-posix.d.ts +4 -0
  263. package/node_modules/rimraf/dist/commonjs/rimraf-posix.d.ts.map +1 -0
  264. package/node_modules/rimraf/dist/commonjs/rimraf-posix.js +103 -0
  265. package/node_modules/rimraf/dist/commonjs/rimraf-posix.js.map +1 -0
  266. package/node_modules/rimraf/dist/commonjs/rimraf-windows.d.ts +4 -0
  267. package/node_modules/rimraf/dist/commonjs/rimraf-windows.d.ts.map +1 -0
  268. package/node_modules/rimraf/dist/commonjs/rimraf-windows.js +159 -0
  269. package/node_modules/rimraf/dist/commonjs/rimraf-windows.js.map +1 -0
  270. package/node_modules/rimraf/dist/commonjs/use-native.d.ts +4 -0
  271. package/node_modules/rimraf/dist/commonjs/use-native.d.ts.map +1 -0
  272. package/node_modules/rimraf/dist/commonjs/use-native.js +18 -0
  273. package/node_modules/rimraf/dist/commonjs/use-native.js.map +1 -0
  274. package/node_modules/rimraf/dist/esm/bin.d.mts +3 -0
  275. package/node_modules/rimraf/dist/esm/bin.d.mts.map +1 -0
  276. package/node_modules/rimraf/dist/esm/bin.mjs +250 -0
  277. package/node_modules/rimraf/dist/esm/bin.mjs.map +1 -0
  278. package/node_modules/rimraf/dist/esm/default-tmp.d.ts +3 -0
  279. package/node_modules/rimraf/dist/esm/default-tmp.d.ts.map +1 -0
  280. package/node_modules/rimraf/dist/esm/default-tmp.js +55 -0
  281. package/node_modules/rimraf/dist/esm/default-tmp.js.map +1 -0
  282. package/node_modules/rimraf/dist/esm/error.d.ts +6 -0
  283. package/node_modules/rimraf/dist/esm/error.d.ts.map +1 -0
  284. package/node_modules/rimraf/dist/esm/error.js +5 -0
  285. package/node_modules/rimraf/dist/esm/error.js.map +1 -0
  286. package/node_modules/rimraf/dist/esm/fix-eperm.d.ts +3 -0
  287. package/node_modules/rimraf/dist/esm/fix-eperm.d.ts.map +1 -0
  288. package/node_modules/rimraf/dist/esm/fix-eperm.js +33 -0
  289. package/node_modules/rimraf/dist/esm/fix-eperm.js.map +1 -0
  290. package/node_modules/rimraf/dist/esm/fs.d.ts +15 -0
  291. package/node_modules/rimraf/dist/esm/fs.d.ts.map +1 -0
  292. package/node_modules/rimraf/dist/esm/fs.js +18 -0
  293. package/node_modules/rimraf/dist/esm/fs.js.map +1 -0
  294. package/node_modules/rimraf/dist/esm/ignore-enoent.d.ts +3 -0
  295. package/node_modules/rimraf/dist/esm/ignore-enoent.d.ts.map +1 -0
  296. package/node_modules/rimraf/dist/esm/ignore-enoent.js +19 -0
  297. package/node_modules/rimraf/dist/esm/ignore-enoent.js.map +1 -0
  298. package/node_modules/rimraf/dist/esm/index.d.ts +50 -0
  299. package/node_modules/rimraf/dist/esm/index.d.ts.map +1 -0
  300. package/node_modules/rimraf/dist/esm/index.js +70 -0
  301. package/node_modules/rimraf/dist/esm/index.js.map +1 -0
  302. package/node_modules/rimraf/dist/esm/opt-arg.d.ts +34 -0
  303. package/node_modules/rimraf/dist/esm/opt-arg.d.ts.map +1 -0
  304. package/node_modules/rimraf/dist/esm/opt-arg.js +46 -0
  305. package/node_modules/rimraf/dist/esm/opt-arg.js.map +1 -0
  306. package/node_modules/rimraf/dist/esm/package.json +3 -0
  307. package/node_modules/rimraf/dist/esm/path-arg.d.ts +4 -0
  308. package/node_modules/rimraf/dist/esm/path-arg.d.ts.map +1 -0
  309. package/node_modules/rimraf/dist/esm/path-arg.js +46 -0
  310. package/node_modules/rimraf/dist/esm/path-arg.js.map +1 -0
  311. package/node_modules/rimraf/dist/esm/readdir-or-error.d.ts +3 -0
  312. package/node_modules/rimraf/dist/esm/readdir-or-error.d.ts.map +1 -0
  313. package/node_modules/rimraf/dist/esm/readdir-or-error.js +14 -0
  314. package/node_modules/rimraf/dist/esm/readdir-or-error.js.map +1 -0
  315. package/node_modules/rimraf/dist/esm/retry-busy.d.ts +8 -0
  316. package/node_modules/rimraf/dist/esm/retry-busy.d.ts.map +1 -0
  317. package/node_modules/rimraf/dist/esm/retry-busy.js +60 -0
  318. package/node_modules/rimraf/dist/esm/retry-busy.js.map +1 -0
  319. package/node_modules/rimraf/dist/esm/rimraf-manual.d.ts +3 -0
  320. package/node_modules/rimraf/dist/esm/rimraf-manual.d.ts.map +1 -0
  321. package/node_modules/rimraf/dist/esm/rimraf-manual.js +5 -0
  322. package/node_modules/rimraf/dist/esm/rimraf-manual.js.map +1 -0
  323. package/node_modules/rimraf/dist/esm/rimraf-move-remove.d.ts +4 -0
  324. package/node_modules/rimraf/dist/esm/rimraf-move-remove.d.ts.map +1 -0
  325. package/node_modules/rimraf/dist/esm/rimraf-move-remove.js +133 -0
  326. package/node_modules/rimraf/dist/esm/rimraf-move-remove.js.map +1 -0
  327. package/node_modules/rimraf/dist/esm/rimraf-native.d.ts +4 -0
  328. package/node_modules/rimraf/dist/esm/rimraf-native.d.ts.map +1 -0
  329. package/node_modules/rimraf/dist/esm/rimraf-native.js +19 -0
  330. package/node_modules/rimraf/dist/esm/rimraf-native.js.map +1 -0
  331. package/node_modules/rimraf/dist/esm/rimraf-posix.d.ts +4 -0
  332. package/node_modules/rimraf/dist/esm/rimraf-posix.d.ts.map +1 -0
  333. package/node_modules/rimraf/dist/esm/rimraf-posix.js +98 -0
  334. package/node_modules/rimraf/dist/esm/rimraf-posix.js.map +1 -0
  335. package/node_modules/rimraf/dist/esm/rimraf-windows.d.ts +4 -0
  336. package/node_modules/rimraf/dist/esm/rimraf-windows.d.ts.map +1 -0
  337. package/node_modules/rimraf/dist/esm/rimraf-windows.js +154 -0
  338. package/node_modules/rimraf/dist/esm/rimraf-windows.js.map +1 -0
  339. package/node_modules/rimraf/dist/esm/use-native.d.ts +4 -0
  340. package/node_modules/rimraf/dist/esm/use-native.d.ts.map +1 -0
  341. package/node_modules/rimraf/dist/esm/use-native.js +15 -0
  342. package/node_modules/rimraf/dist/esm/use-native.js.map +1 -0
  343. package/node_modules/rimraf/package.json +92 -0
  344. package/package.json +152 -0
  345. package/scripts/install-scanners.js +258 -0
  346. package/scripts/watchdog.js +147 -0
  347. package/src/analyzers/CSSAnalyzer.js +297 -0
  348. package/src/analyzers/ConfigValidator.js +690 -0
  349. package/src/analyzers/ESLintAnalyzer.js +320 -0
  350. package/src/analyzers/JavaScriptAnalyzer.js +261 -0
  351. package/src/analyzers/PrettierFormatter.js +247 -0
  352. package/src/analyzers/PythonAnalyzer.js +283 -0
  353. package/src/analyzers/SecurityAnalyzer.js +729 -0
  354. package/src/analyzers/SparrowAnalyzer.js +341 -0
  355. package/src/analyzers/TypeScriptAnalyzer.js +247 -0
  356. package/src/analyzers/codeCloneDetector/analyzer.js +344 -0
  357. package/src/analyzers/codeCloneDetector/detector.js +250 -0
  358. package/src/analyzers/codeCloneDetector/index.js +192 -0
  359. package/src/analyzers/codeCloneDetector/parser.js +199 -0
  360. package/src/analyzers/codeCloneDetector/reporter.js +148 -0
  361. package/src/analyzers/codeCloneDetector/scanner.js +88 -0
  362. package/src/core/agentPool.js +1957 -0
  363. package/src/core/agentScheduler.js +3212 -0
  364. package/src/core/contextManager.js +709 -0
  365. package/src/core/flowExecutor.js +928 -0
  366. package/src/core/messageProcessor.js +808 -0
  367. package/src/core/orchestrator.js +584 -0
  368. package/src/core/stateManager.js +1500 -0
  369. package/src/index.js +972 -0
  370. package/src/interfaces/cli.js +553 -0
  371. package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +208 -0
  372. package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +236 -0
  373. package/src/interfaces/terminal/__tests__/smoke/agents.test.js +138 -0
  374. package/src/interfaces/terminal/__tests__/smoke/components.test.js +137 -0
  375. package/src/interfaces/terminal/__tests__/smoke/connection.test.js +350 -0
  376. package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +156 -0
  377. package/src/interfaces/terminal/__tests__/smoke/imports.test.js +332 -0
  378. package/src/interfaces/terminal/__tests__/smoke/messages.test.js +256 -0
  379. package/src/interfaces/terminal/__tests__/smoke/tools.test.js +388 -0
  380. package/src/interfaces/terminal/api/apiClient.js +299 -0
  381. package/src/interfaces/terminal/api/messageRouter.js +262 -0
  382. package/src/interfaces/terminal/api/session.js +266 -0
  383. package/src/interfaces/terminal/api/websocket.js +497 -0
  384. package/src/interfaces/terminal/components/AgentCreator.js +705 -0
  385. package/src/interfaces/terminal/components/AgentEditor.js +678 -0
  386. package/src/interfaces/terminal/components/AgentSwitcher.js +330 -0
  387. package/src/interfaces/terminal/components/ErrorBoundary.js +92 -0
  388. package/src/interfaces/terminal/components/ErrorPanel.js +264 -0
  389. package/src/interfaces/terminal/components/Header.js +28 -0
  390. package/src/interfaces/terminal/components/HelpPanel.js +231 -0
  391. package/src/interfaces/terminal/components/InputBox.js +118 -0
  392. package/src/interfaces/terminal/components/Layout.js +603 -0
  393. package/src/interfaces/terminal/components/LoadingSpinner.js +71 -0
  394. package/src/interfaces/terminal/components/MessageList.js +281 -0
  395. package/src/interfaces/terminal/components/MultilineTextInput.js +251 -0
  396. package/src/interfaces/terminal/components/SearchPanel.js +265 -0
  397. package/src/interfaces/terminal/components/SettingsPanel.js +415 -0
  398. package/src/interfaces/terminal/components/StatusBar.js +65 -0
  399. package/src/interfaces/terminal/components/TextInput.js +127 -0
  400. package/src/interfaces/terminal/config/agentEditorConstants.js +227 -0
  401. package/src/interfaces/terminal/config/constants.js +393 -0
  402. package/src/interfaces/terminal/index.js +168 -0
  403. package/src/interfaces/terminal/state/useAgentControl.js +496 -0
  404. package/src/interfaces/terminal/state/useAgents.js +537 -0
  405. package/src/interfaces/terminal/state/useConnection.js +444 -0
  406. package/src/interfaces/terminal/state/useMessages.js +630 -0
  407. package/src/interfaces/terminal/state/useTools.js +554 -0
  408. package/src/interfaces/terminal/utils/debugLogger.js +44 -0
  409. package/src/interfaces/terminal/utils/settingsStorage.js +232 -0
  410. package/src/interfaces/terminal/utils/theme.js +85 -0
  411. package/src/interfaces/webServer.js +5457 -0
  412. package/src/modules/fileExplorer/controller.js +413 -0
  413. package/src/modules/fileExplorer/index.js +37 -0
  414. package/src/modules/fileExplorer/middleware.js +92 -0
  415. package/src/modules/fileExplorer/routes.js +158 -0
  416. package/src/modules/fileExplorer/types.js +44 -0
  417. package/src/services/agentActivityService.js +399 -0
  418. package/src/services/aiService.js +2618 -0
  419. package/src/services/apiKeyManager.js +334 -0
  420. package/src/services/benchmarkService.js +196 -0
  421. package/src/services/budgetService.js +565 -0
  422. package/src/services/contextInjectionService.js +268 -0
  423. package/src/services/conversationCompactionService.js +1103 -0
  424. package/src/services/credentialVault.js +685 -0
  425. package/src/services/errorHandler.js +810 -0
  426. package/src/services/fileAttachmentService.js +547 -0
  427. package/src/services/flowContextService.js +189 -0
  428. package/src/services/memoryService.js +521 -0
  429. package/src/services/modelRouterService.js +365 -0
  430. package/src/services/modelsService.js +323 -0
  431. package/src/services/ollamaService.js +452 -0
  432. package/src/services/portRegistry.js +336 -0
  433. package/src/services/portTracker.js +223 -0
  434. package/src/services/projectDetector.js +404 -0
  435. package/src/services/promptService.js +372 -0
  436. package/src/services/qualityInspector.js +796 -0
  437. package/src/services/scheduleService.js +725 -0
  438. package/src/services/serviceRegistry.js +386 -0
  439. package/src/services/skillsService.js +486 -0
  440. package/src/services/telegramService.js +920 -0
  441. package/src/services/tokenCountingService.js +316 -0
  442. package/src/services/visualEditorBridge.js +1033 -0
  443. package/src/services/visualEditorServer.js +1727 -0
  444. package/src/services/whatsappService.js +663 -0
  445. package/src/tools/__tests__/webTool.e2e.test.js +569 -0
  446. package/src/tools/__tests__/webTool.unit.test.js +195 -0
  447. package/src/tools/agentCommunicationTool.js +1343 -0
  448. package/src/tools/agentDelayTool.js +498 -0
  449. package/src/tools/asyncToolManager.js +604 -0
  450. package/src/tools/baseTool.js +887 -0
  451. package/src/tools/browserTool.js +897 -0
  452. package/src/tools/cloneDetectionTool.js +581 -0
  453. package/src/tools/codeMapTool.js +857 -0
  454. package/src/tools/dependencyResolverTool.js +1212 -0
  455. package/src/tools/docxTool.js +623 -0
  456. package/src/tools/excelTool.js +636 -0
  457. package/src/tools/fileContentReplaceTool.js +840 -0
  458. package/src/tools/fileTreeTool.js +833 -0
  459. package/src/tools/filesystemTool.js +1217 -0
  460. package/src/tools/helpTool.js +198 -0
  461. package/src/tools/imageTool.js +1034 -0
  462. package/src/tools/importAnalyzerTool.js +1056 -0
  463. package/src/tools/jobDoneTool.js +388 -0
  464. package/src/tools/memoryTool.js +554 -0
  465. package/src/tools/pdfTool.js +627 -0
  466. package/src/tools/seekTool.js +883 -0
  467. package/src/tools/skillsTool.js +276 -0
  468. package/src/tools/staticAnalysisTool.js +2146 -0
  469. package/src/tools/taskManagerTool.js +2836 -0
  470. package/src/tools/terminalTool.js +2486 -0
  471. package/src/tools/userPromptTool.js +474 -0
  472. package/src/tools/videoTool.js +1139 -0
  473. package/src/tools/visionTool.js +507 -0
  474. package/src/tools/visualEditorTool.js +1175 -0
  475. package/src/tools/webTool.js +3114 -0
  476. package/src/tools/whatsappTool.js +457 -0
  477. package/src/types/agent.js +519 -0
  478. package/src/types/contextReference.js +972 -0
  479. package/src/types/conversation.js +730 -0
  480. package/src/types/toolCommand.js +747 -0
  481. package/src/utilities/attachmentValidator.js +288 -0
  482. package/src/utilities/browserStealth.js +630 -0
  483. package/src/utilities/configManager.js +618 -0
  484. package/src/utilities/constants.js +870 -0
  485. package/src/utilities/directoryAccessManager.js +566 -0
  486. package/src/utilities/fileProcessor.js +307 -0
  487. package/src/utilities/humanBehavior.js +453 -0
  488. package/src/utilities/jsonRepair.js +242 -0
  489. package/src/utilities/logger.js +436 -0
  490. package/src/utilities/platformUtils.js +255 -0
  491. package/src/utilities/platformUtils.test.js +98 -0
  492. package/src/utilities/stealthConstants.js +377 -0
  493. package/src/utilities/structuredFileValidator.js +699 -0
  494. package/src/utilities/tagParser.js +878 -0
  495. package/src/utilities/toolConstants.js +415 -0
  496. package/src/utilities/userDataDir.js +300 -0
  497. package/web-ui/build/brands/autopilot/favicon.svg +1 -0
  498. package/web-ui/build/brands/autopilot/logo.webp +0 -0
  499. package/web-ui/build/brands/onbuzz/favicon.svg +1 -0
  500. package/web-ui/build/brands/onbuzz/logo-text.webp +0 -0
  501. package/web-ui/build/brands/onbuzz/logo.webp +0 -0
  502. package/web-ui/build/index.html +15 -0
  503. package/web-ui/build/logo.png +0 -0
  504. package/web-ui/build/logo2.png +0 -0
  505. package/web-ui/build/static/index-SmQFfvBs.js +746 -0
  506. package/web-ui/build/static/index-V2ySwjHp.css +1 -0
@@ -0,0 +1,208 @@
1
+ /**
2
+ * Phase 10 Advanced Features - Smoke Tests
3
+ * Verifies AgentSwitcher, AgentCreator, SettingsPanel, SearchPanel, and HelpPanel components
4
+ */
5
+
6
+ import { describe, test, expect } from '@jest/globals';
7
+
8
+ describe('Phase 10 - Advanced Features - Imports', () => {
9
+ test('AgentSwitcher component can be imported', async () => {
10
+ const { AgentSwitcher } = await import('../../components/AgentSwitcher.js');
11
+
12
+ expect(AgentSwitcher).toBeDefined();
13
+ expect(typeof AgentSwitcher).toBe('function');
14
+ }, 30000);
15
+
16
+ test('AgentCreator component can be imported', async () => {
17
+ const { AgentCreator } = await import('../../components/AgentCreator.js');
18
+
19
+ expect(AgentCreator).toBeDefined();
20
+ expect(typeof AgentCreator).toBe('function');
21
+ });
22
+
23
+ test('SettingsPanel component can be imported', async () => {
24
+ const { SettingsPanel } = await import('../../components/SettingsPanel.js');
25
+
26
+ expect(SettingsPanel).toBeDefined();
27
+ expect(typeof SettingsPanel).toBe('function');
28
+ });
29
+
30
+ test('SearchPanel component can be imported', async () => {
31
+ const { SearchPanel } = await import('../../components/SearchPanel.js');
32
+
33
+ expect(SearchPanel).toBeDefined();
34
+ expect(typeof SearchPanel).toBe('function');
35
+ });
36
+
37
+ test('HelpPanel component can be imported', async () => {
38
+ const { HelpPanel } = await import('../../components/HelpPanel.js');
39
+
40
+ expect(HelpPanel).toBeDefined();
41
+ expect(typeof HelpPanel).toBe('function');
42
+ });
43
+ });
44
+
45
+ describe('Phase 10 - AgentSwitcher - Structure', () => {
46
+ test('AgentSwitcher is a function component', async () => {
47
+ const { AgentSwitcher } = await import('../../components/AgentSwitcher.js');
48
+
49
+ expect(typeof AgentSwitcher).toBe('function');
50
+ expect(AgentSwitcher.prototype?.render).toBeUndefined();
51
+ });
52
+
53
+ test('AgentSwitcher is default export', async () => {
54
+ const module = await import('../../components/AgentSwitcher.js');
55
+
56
+ expect(module.default).toBeDefined();
57
+ expect(module.default).toBe(module.AgentSwitcher);
58
+ });
59
+ });
60
+
61
+ describe('Phase 10 - AgentCreator - Structure', () => {
62
+ test('AgentCreator is a function component', async () => {
63
+ const { AgentCreator } = await import('../../components/AgentCreator.js');
64
+
65
+ expect(typeof AgentCreator).toBe('function');
66
+ expect(AgentCreator.prototype?.render).toBeUndefined();
67
+ });
68
+
69
+ test('AgentCreator is default export', async () => {
70
+ const module = await import('../../components/AgentCreator.js');
71
+
72
+ expect(module.default).toBeDefined();
73
+ expect(module.default).toBe(module.AgentCreator);
74
+ });
75
+ });
76
+
77
+ describe('Phase 10 - SettingsPanel - Structure', () => {
78
+ test('SettingsPanel is a function component', async () => {
79
+ const { SettingsPanel } = await import('../../components/SettingsPanel.js');
80
+
81
+ expect(typeof SettingsPanel).toBe('function');
82
+ expect(SettingsPanel.prototype?.render).toBeUndefined();
83
+ });
84
+
85
+ test('SettingsPanel is default export', async () => {
86
+ const module = await import('../../components/SettingsPanel.js');
87
+
88
+ expect(module.default).toBeDefined();
89
+ expect(module.default).toBe(module.SettingsPanel);
90
+ });
91
+ });
92
+
93
+ describe('Phase 10 - SearchPanel - Structure', () => {
94
+ test('SearchPanel is a function component', async () => {
95
+ const { SearchPanel } = await import('../../components/SearchPanel.js');
96
+
97
+ expect(typeof SearchPanel).toBe('function');
98
+ expect(SearchPanel.prototype?.render).toBeUndefined();
99
+ });
100
+
101
+ test('SearchPanel is default export', async () => {
102
+ const module = await import('../../components/SearchPanel.js');
103
+
104
+ expect(module.default).toBeDefined();
105
+ expect(module.default).toBe(module.SearchPanel);
106
+ });
107
+ });
108
+
109
+ describe('Phase 10 - HelpPanel - Structure', () => {
110
+ test('HelpPanel is a function component', async () => {
111
+ const { HelpPanel } = await import('../../components/HelpPanel.js');
112
+
113
+ expect(typeof HelpPanel).toBe('function');
114
+ expect(HelpPanel.prototype?.render).toBeUndefined();
115
+ });
116
+
117
+ test('HelpPanel is default export', async () => {
118
+ const module = await import('../../components/HelpPanel.js');
119
+
120
+ expect(module.default).toBeDefined();
121
+ expect(module.default).toBe(module.HelpPanel);
122
+ });
123
+ });
124
+
125
+ describe('Phase 10 - Integration with Layout', () => {
126
+ test('Layout component can import all Phase 10 components', async () => {
127
+ const [
128
+ agentSwitcherModule,
129
+ agentCreatorModule,
130
+ settingsPanelModule,
131
+ searchPanelModule,
132
+ helpPanelModule,
133
+ ] = await Promise.all([
134
+ import('../../components/AgentSwitcher.js'),
135
+ import('../../components/AgentCreator.js'),
136
+ import('../../components/SettingsPanel.js'),
137
+ import('../../components/SearchPanel.js'),
138
+ import('../../components/HelpPanel.js'),
139
+ ]);
140
+
141
+ expect(agentSwitcherModule.AgentSwitcher).toBeDefined();
142
+ expect(agentCreatorModule.AgentCreator).toBeDefined();
143
+ expect(settingsPanelModule.SettingsPanel).toBeDefined();
144
+ expect(searchPanelModule.SearchPanel).toBeDefined();
145
+ expect(helpPanelModule.HelpPanel).toBeDefined();
146
+ });
147
+
148
+ test('Layout component still loads after Phase 10 additions', async () => {
149
+ const { Layout } = await import('../../components/Layout.js');
150
+
151
+ expect(Layout).toBeDefined();
152
+ expect(typeof Layout).toBe('function');
153
+ });
154
+
155
+ test('All Phase 10 components use React and Ink', async () => {
156
+ const React = await import('react');
157
+ const ink = await import('ink');
158
+
159
+ // Verify dependencies are available
160
+ expect(React.createElement).toBeDefined();
161
+ expect(React.useState).toBeDefined();
162
+ expect(ink.Box).toBeDefined();
163
+ expect(ink.Text).toBeDefined();
164
+ expect(ink.useInput).toBeDefined();
165
+ });
166
+ });
167
+
168
+ describe('Phase 10 - Component Constants and Configurations', () => {
169
+ test('AgentCreator defines step constants', async () => {
170
+ // We can't directly access module constants, but we can verify the module structure
171
+ const module = await import('../../components/AgentCreator.js');
172
+
173
+ expect(module.AgentCreator).toBeDefined();
174
+ // The component uses STEPS, MODELS, MODES internally
175
+ });
176
+
177
+ test('SettingsPanel defines category constants', async () => {
178
+ const module = await import('../../components/SettingsPanel.js');
179
+
180
+ expect(module.SettingsPanel).toBeDefined();
181
+ // The component uses CATEGORIES, CATEGORY_TITLES internally
182
+ });
183
+
184
+ test('HelpPanel defines shortcut configurations', async () => {
185
+ const module = await import('../../components/HelpPanel.js');
186
+
187
+ expect(module.HelpPanel).toBeDefined();
188
+ // The component uses SHORTCUTS and TIPS internally
189
+ });
190
+ });
191
+
192
+ describe('Phase 10 - All Components Export Correctly', () => {
193
+ test('All components can be imported together without conflicts', async () => {
194
+ const components = await Promise.all([
195
+ import('../../components/AgentSwitcher.js'),
196
+ import('../../components/AgentCreator.js'),
197
+ import('../../components/SettingsPanel.js'),
198
+ import('../../components/SearchPanel.js'),
199
+ import('../../components/HelpPanel.js'),
200
+ ]);
201
+
202
+ // Verify no naming conflicts
203
+ const names = components.map((mod) => Object.keys(mod)[0]);
204
+ const uniqueNames = new Set(names);
205
+
206
+ expect(uniqueNames.size).toBe(names.length); // All unique names
207
+ });
208
+ });
@@ -0,0 +1,236 @@
1
+ /**
2
+ * Agent Control Management - Smoke Tests
3
+ * Verifies that agent control modules can be imported and basic functionality works
4
+ */
5
+
6
+ import { describe, test, expect } from '@jest/globals';
7
+
8
+ describe('Agent Control Management - Imports', () => {
9
+ test('useAgentControl hook can be imported', async () => {
10
+ const { useAgentControl } = await import('../../state/useAgentControl.js');
11
+
12
+ expect(useAgentControl).toBeDefined();
13
+ expect(typeof useAgentControl).toBe('function');
14
+ });
15
+
16
+ test('useAgentControl is default export', async () => {
17
+ const module = await import('../../state/useAgentControl.js');
18
+
19
+ expect(module.default).toBeDefined();
20
+ expect(typeof module.default).toBe('function');
21
+ expect(module.default).toBe(module.useAgentControl);
22
+ });
23
+ });
24
+
25
+ describe('Agent Control Management - Constants', () => {
26
+ test('AGENT_MODE constants are defined', async () => {
27
+ const { AGENT_MODE } = await import('../../config/constants.js');
28
+
29
+ expect(AGENT_MODE).toBeDefined();
30
+ expect(AGENT_MODE.CHAT).toBe('CHAT');
31
+ expect(AGENT_MODE.AGENT).toBe('AGENT');
32
+ });
33
+
34
+ test('MODEL_CATEGORY constants are defined', async () => {
35
+ const { MODEL_CATEGORY } = await import('../../config/constants.js');
36
+
37
+ expect(MODEL_CATEGORY).toBeDefined();
38
+ expect(MODEL_CATEGORY.ANTHROPIC).toBe('anthropic');
39
+ expect(MODEL_CATEGORY.OPENAI).toBe('openai');
40
+ expect(MODEL_CATEGORY.DEEPSEEK).toBe('deepseek');
41
+ expect(MODEL_CATEGORY.MICROSOFT).toBe('microsoft');
42
+ });
43
+
44
+ test('Mode and model API endpoints are defined', async () => {
45
+ const { API_ENDPOINTS } = await import('../../config/constants.js');
46
+
47
+ expect(API_ENDPOINTS.AGENTS_MODE_SET).toBe('/api/agents/:agentId/mode');
48
+ expect(API_ENDPOINTS.AGENTS_MODE_GET).toBe('/api/agents/:agentId/mode');
49
+ expect(API_ENDPOINTS.LLM_MODELS).toBe('/api/llm/models');
50
+ });
51
+
52
+ test('WS_MESSAGE_TYPE includes mode and model change events', async () => {
53
+ const { WS_MESSAGE_TYPE } = await import('../../config/constants.js');
54
+
55
+ expect(WS_MESSAGE_TYPE).toBeDefined();
56
+ expect(WS_MESSAGE_TYPE.AGENT_MODE_CHANGED).toBe('agent_mode_changed');
57
+ });
58
+ });
59
+
60
+ describe('Agent Control Management - Integration', () => {
61
+ test('useAgentControl hook integrates with Session and MessageRouter', async () => {
62
+ const { useAgentControl } = await import('../../state/useAgentControl.js');
63
+ const { SessionManager } = await import('../../api/session.js');
64
+ const { MessageRouter } = await import('../../api/messageRouter.js');
65
+ const { WebSocketManager } = await import('../../api/websocket.js');
66
+
67
+ // Create dependencies
68
+ const sessionManager = new SessionManager('localhost', 8080);
69
+ const wsManager = new WebSocketManager('localhost', 8080);
70
+ const messageRouter = new MessageRouter(wsManager);
71
+
72
+ // Verify all components exist
73
+ expect(sessionManager).toBeDefined();
74
+ expect(messageRouter).toBeDefined();
75
+
76
+ // useAgentControl expects these as parameters (including currentAgent)
77
+ // (we can't actually call the hook outside React, but we verify the interface)
78
+ expect(typeof useAgentControl).toBe('function');
79
+ });
80
+
81
+ test('Full agent control stack can be imported together', async () => {
82
+ const [
83
+ constantsModule,
84
+ sessionModule,
85
+ websocketModule,
86
+ routerModule,
87
+ agentControlModule,
88
+ ] = await Promise.all([
89
+ import('../../config/constants.js'),
90
+ import('../../api/session.js'),
91
+ import('../../api/websocket.js'),
92
+ import('../../api/messageRouter.js'),
93
+ import('../../state/useAgentControl.js'),
94
+ ]);
95
+
96
+ // Verify all modules loaded
97
+ expect(constantsModule.AGENT_MODE).toBeDefined();
98
+ expect(constantsModule.MODEL_CATEGORY).toBeDefined();
99
+ expect(constantsModule.API_ENDPOINTS).toBeDefined();
100
+ expect(sessionModule.SessionManager).toBeDefined();
101
+ expect(websocketModule.WebSocketManager).toBeDefined();
102
+ expect(routerModule.MessageRouter).toBeDefined();
103
+ expect(agentControlModule.useAgentControl).toBeDefined();
104
+ });
105
+ });
106
+
107
+ describe('Agent Control Management - API Endpoints Validation', () => {
108
+ test('Agent mode endpoints follow RESTful pattern', async () => {
109
+ const { API_ENDPOINTS } = await import('../../config/constants.js');
110
+
111
+ // Verify endpoint paths
112
+ expect(API_ENDPOINTS.AGENTS_MODE_SET).toMatch(/^\/api\/agents/);
113
+ expect(API_ENDPOINTS.AGENTS_MODE_GET).toMatch(/^\/api\/agents/);
114
+
115
+ // Verify parameter placeholders
116
+ expect(API_ENDPOINTS.AGENTS_MODE_SET).toContain(':agentId');
117
+ expect(API_ENDPOINTS.AGENTS_MODE_GET).toContain(':agentId');
118
+ });
119
+
120
+ test('LLM models endpoint exists', async () => {
121
+ const { API_ENDPOINTS } = await import('../../config/constants.js');
122
+
123
+ expect(API_ENDPOINTS.LLM_MODELS).toBeDefined();
124
+ expect(API_ENDPOINTS.LLM_MODELS).toBe('/api/llm/models');
125
+ });
126
+
127
+ test('Orchestrator endpoint exists for model and config operations', async () => {
128
+ const { API_ENDPOINTS } = await import('../../config/constants.js');
129
+
130
+ expect(API_ENDPOINTS.ORCHESTRATOR).toBeDefined();
131
+ expect(API_ENDPOINTS.ORCHESTRATOR).toBe('/api/orchestrator');
132
+ });
133
+ });
134
+
135
+ describe('Agent Control Management - Hook Interface Verification', () => {
136
+ test('useAgentControl returns expected interface shape', async () => {
137
+ const { useAgentControl } = await import('../../state/useAgentControl.js');
138
+
139
+ // We can verify the function signature
140
+ expect(useAgentControl.length).toBe(3); // sessionManager, messageRouter, currentAgent
141
+ });
142
+ });
143
+
144
+ describe('Agent Control Management - Constants Validation', () => {
145
+ test('AGENT_MODE has exactly two modes', async () => {
146
+ const { AGENT_MODE } = await import('../../config/constants.js');
147
+
148
+ const modeKeys = Object.keys(AGENT_MODE);
149
+ expect(modeKeys.length).toBe(2);
150
+ expect(modeKeys).toContain('CHAT');
151
+ expect(modeKeys).toContain('AGENT');
152
+ });
153
+
154
+ test('AGENT_MODE values are uppercase', async () => {
155
+ const { AGENT_MODE } = await import('../../config/constants.js');
156
+
157
+ expect(AGENT_MODE.CHAT).toBe('CHAT');
158
+ expect(AGENT_MODE.AGENT).toBe('AGENT');
159
+ expect(AGENT_MODE.CHAT).toBe(AGENT_MODE.CHAT.toUpperCase());
160
+ expect(AGENT_MODE.AGENT).toBe(AGENT_MODE.AGENT.toUpperCase());
161
+ });
162
+
163
+ test('MODEL_CATEGORY values are lowercase', async () => {
164
+ const { MODEL_CATEGORY } = await import('../../config/constants.js');
165
+
166
+ expect(MODEL_CATEGORY.ANTHROPIC).toBe('anthropic');
167
+ expect(MODEL_CATEGORY.OPENAI).toBe('openai');
168
+ expect(MODEL_CATEGORY.DEEPSEEK).toBe('deepseek');
169
+ expect(MODEL_CATEGORY.MICROSOFT).toBe('microsoft');
170
+
171
+ expect(MODEL_CATEGORY.ANTHROPIC).toBe(MODEL_CATEGORY.ANTHROPIC.toLowerCase());
172
+ expect(MODEL_CATEGORY.OPENAI).toBe(MODEL_CATEGORY.OPENAI.toLowerCase());
173
+ });
174
+
175
+ test('MODEL_CATEGORY includes major LLM providers', async () => {
176
+ const { MODEL_CATEGORY } = await import('../../config/constants.js');
177
+
178
+ const categories = Object.keys(MODEL_CATEGORY);
179
+ expect(categories).toContain('ANTHROPIC');
180
+ expect(categories).toContain('OPENAI');
181
+ expect(categories).toContain('DEEPSEEK');
182
+ expect(categories).toContain('MICROSOFT');
183
+ });
184
+ });
185
+
186
+ describe('Agent Control Management - WebSocket Event Handlers', () => {
187
+ test('MessageRouter has mode change event handler registered', async () => {
188
+ const { MessageRouter } = await import('../../api/messageRouter.js');
189
+ const { WebSocketManager } = await import('../../api/websocket.js');
190
+ const { WS_MESSAGE_TYPE } = await import('../../config/constants.js');
191
+
192
+ const wsManager = new WebSocketManager('localhost', 8080);
193
+ const router = new MessageRouter(wsManager);
194
+
195
+ // Verify mode change event handler is registered
196
+ expect(router.hasHandler(WS_MESSAGE_TYPE.AGENT_MODE_CHANGED)).toBe(true);
197
+ });
198
+ });
199
+
200
+ describe('Agent Control Management - Mode Switching Logic', () => {
201
+ test('AGENT_MODE supports toggling between modes', async () => {
202
+ const { AGENT_MODE } = await import('../../config/constants.js');
203
+
204
+ // Toggle from CHAT to AGENT
205
+ let currentMode = AGENT_MODE.CHAT;
206
+ let newMode = currentMode === AGENT_MODE.CHAT ? AGENT_MODE.AGENT : AGENT_MODE.CHAT;
207
+ expect(newMode).toBe(AGENT_MODE.AGENT);
208
+
209
+ // Toggle from AGENT to CHAT
210
+ currentMode = AGENT_MODE.AGENT;
211
+ newMode = currentMode === AGENT_MODE.CHAT ? AGENT_MODE.AGENT : AGENT_MODE.CHAT;
212
+ expect(newMode).toBe(AGENT_MODE.CHAT);
213
+ });
214
+ });
215
+
216
+ describe('Agent Control Management - Model Filtering', () => {
217
+ test('MODEL_CATEGORY can be used to filter models by category', async () => {
218
+ const { MODEL_CATEGORY } = await import('../../config/constants.js');
219
+
220
+ // Mock model list
221
+ const mockModels = [
222
+ { id: 'claude-3-5-sonnet', category: MODEL_CATEGORY.ANTHROPIC },
223
+ { id: 'gpt-4', category: MODEL_CATEGORY.OPENAI },
224
+ { id: 'deepseek-chat', category: MODEL_CATEGORY.DEEPSEEK },
225
+ ];
226
+
227
+ // Filter by category
228
+ const anthropicModels = mockModels.filter(m => m.category === MODEL_CATEGORY.ANTHROPIC);
229
+ const openAIModels = mockModels.filter(m => m.category === MODEL_CATEGORY.OPENAI);
230
+
231
+ expect(anthropicModels.length).toBe(1);
232
+ expect(anthropicModels[0].id).toBe('claude-3-5-sonnet');
233
+ expect(openAIModels.length).toBe(1);
234
+ expect(openAIModels[0].id).toBe('gpt-4');
235
+ });
236
+ });
@@ -0,0 +1,138 @@
1
+ /**
2
+ * Agent Management - Smoke Tests
3
+ * Verifies that agent management modules can be imported and basic functionality works
4
+ */
5
+
6
+ import { describe, test, expect } from '@jest/globals';
7
+
8
+ describe('Agent Management - Imports', () => {
9
+ test('useAgents hook can be imported', async () => {
10
+ const { useAgents } = await import('../../state/useAgents.js');
11
+
12
+ expect(useAgents).toBeDefined();
13
+ expect(typeof useAgents).toBe('function');
14
+ });
15
+
16
+ test('useAgents is default export', async () => {
17
+ const module = await import('../../state/useAgents.js');
18
+
19
+ expect(module.default).toBeDefined();
20
+ expect(typeof module.default).toBe('function');
21
+ expect(module.default).toBe(module.useAgents);
22
+ });
23
+ });
24
+
25
+ describe('Agent Management - Constants', () => {
26
+ test('AGENT_MODE constants are defined', async () => {
27
+ const { AGENT_MODE } = await import('../../config/constants.js');
28
+
29
+ expect(AGENT_MODE).toBeDefined();
30
+ expect(AGENT_MODE.CHAT).toBe('CHAT');
31
+ expect(AGENT_MODE.AGENT).toBe('AGENT');
32
+ });
33
+
34
+ test('AGENT_STATUS constants are defined', async () => {
35
+ const { AGENT_STATUS } = await import('../../config/constants.js');
36
+
37
+ expect(AGENT_STATUS).toBeDefined();
38
+ expect(AGENT_STATUS.ACTIVE).toBe('active');
39
+ expect(AGENT_STATUS.PAUSED).toBe('paused');
40
+ expect(AGENT_STATUS.IDLE).toBe('idle');
41
+ expect(AGENT_STATUS.ERROR).toBe('error');
42
+ expect(AGENT_STATUS.ARCHIVED).toBe('archived');
43
+ });
44
+
45
+ test('Agent API endpoints are defined', async () => {
46
+ const { API_ENDPOINTS } = await import('../../config/constants.js');
47
+
48
+ expect(API_ENDPOINTS.AGENTS_AVAILABLE).toBe('/api/agents/available');
49
+ expect(API_ENDPOINTS.AGENTS_METADATA).toBe('/api/agents/:agentId/metadata');
50
+ expect(API_ENDPOINTS.AGENTS_IMPORT).toBe('/api/agents/import');
51
+ expect(API_ENDPOINTS.AGENTS_MODE_SET).toBe('/api/agents/:agentId/mode');
52
+ expect(API_ENDPOINTS.AGENTS_MODE_GET).toBe('/api/agents/:agentId/mode');
53
+ expect(API_ENDPOINTS.AGENTS_STOP).toBe('/api/agents/:agentId/stop');
54
+ });
55
+
56
+ test('AGENT_TEMPLATES constants are defined', async () => {
57
+ const { AGENT_TEMPLATES } = await import('../../config/constants.js');
58
+
59
+ expect(AGENT_TEMPLATES).toBeDefined();
60
+ expect(AGENT_TEMPLATES.CODING_ASSISTANT).toBe('coding-assistant');
61
+ expect(AGENT_TEMPLATES.DATA_ANALYST).toBe('data-analyst');
62
+ expect(AGENT_TEMPLATES.CREATIVE_WRITER).toBe('creative-writer');
63
+ expect(AGENT_TEMPLATES.SYSTEM_ADMINISTRATOR).toBe('system-administrator');
64
+ expect(AGENT_TEMPLATES.CUSTOM).toBe('custom');
65
+ });
66
+ });
67
+
68
+ describe('Agent Management - Integration', () => {
69
+ test('useAgents hook integrates with Session and MessageRouter', async () => {
70
+ const { useAgents } = await import('../../state/useAgents.js');
71
+ const { SessionManager } = await import('../../api/session.js');
72
+ const { MessageRouter } = await import('../../api/messageRouter.js');
73
+ const { WebSocketManager } = await import('../../api/websocket.js');
74
+
75
+ // Create dependencies
76
+ const sessionManager = new SessionManager('localhost', 8080);
77
+ const wsManager = new WebSocketManager('localhost', 8080);
78
+ const messageRouter = new MessageRouter(wsManager);
79
+
80
+ // Verify all components exist
81
+ expect(sessionManager).toBeDefined();
82
+ expect(messageRouter).toBeDefined();
83
+
84
+ // useAgents expects these as parameters
85
+ // (we can't actually call the hook outside React, but we verify the interface)
86
+ expect(typeof useAgents).toBe('function');
87
+ });
88
+
89
+ test('Full agent management stack can be imported together', async () => {
90
+ const [
91
+ constantsModule,
92
+ sessionModule,
93
+ websocketModule,
94
+ routerModule,
95
+ agentsModule,
96
+ ] = await Promise.all([
97
+ import('../../config/constants.js'),
98
+ import('../../api/session.js'),
99
+ import('../../api/websocket.js'),
100
+ import('../../api/messageRouter.js'),
101
+ import('../../state/useAgents.js'),
102
+ ]);
103
+
104
+ // Verify all modules loaded
105
+ expect(constantsModule.AGENT_MODE).toBeDefined();
106
+ expect(sessionModule.SessionManager).toBeDefined();
107
+ expect(websocketModule.WebSocketManager).toBeDefined();
108
+ expect(routerModule.MessageRouter).toBeDefined();
109
+ expect(agentsModule.useAgents).toBeDefined();
110
+ });
111
+ });
112
+
113
+ describe('Agent Management - API Endpoints Validation', () => {
114
+ test('All agent endpoints follow RESTful pattern', async () => {
115
+ const { API_ENDPOINTS } = await import('../../config/constants.js');
116
+
117
+ // Verify endpoint paths
118
+ expect(API_ENDPOINTS.AGENTS_AVAILABLE).toMatch(/^\/api\/agents/);
119
+ expect(API_ENDPOINTS.AGENTS_METADATA).toMatch(/^\/api\/agents/);
120
+ expect(API_ENDPOINTS.AGENTS_IMPORT).toMatch(/^\/api\/agents/);
121
+ expect(API_ENDPOINTS.AGENTS_MODE_SET).toMatch(/^\/api\/agents/);
122
+ expect(API_ENDPOINTS.AGENTS_MODE_GET).toMatch(/^\/api\/agents/);
123
+ expect(API_ENDPOINTS.AGENTS_STOP).toMatch(/^\/api\/agents/);
124
+
125
+ // Verify parameter placeholders
126
+ expect(API_ENDPOINTS.AGENTS_METADATA).toContain(':agentId');
127
+ expect(API_ENDPOINTS.AGENTS_MODE_SET).toContain(':agentId');
128
+ expect(API_ENDPOINTS.AGENTS_MODE_GET).toContain(':agentId');
129
+ expect(API_ENDPOINTS.AGENTS_STOP).toContain(':agentId');
130
+ });
131
+
132
+ test('Orchestrator endpoint exists for agent operations', async () => {
133
+ const { API_ENDPOINTS } = await import('../../config/constants.js');
134
+
135
+ expect(API_ENDPOINTS.ORCHESTRATOR).toBeDefined();
136
+ expect(API_ENDPOINTS.ORCHESTRATOR).toBe('/api/orchestrator');
137
+ });
138
+ });