@travisennis/acai 0.0.6 → 0.0.8

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 (586) hide show
  1. package/README.md +225 -39
  2. package/dist/agent/index.d.ts +30 -21
  3. package/dist/agent/index.d.ts.map +1 -1
  4. package/dist/agent/index.js +237 -198
  5. package/dist/cli.d.ts +4 -3
  6. package/dist/cli.d.ts.map +1 -1
  7. package/dist/cli.js +56 -18
  8. package/dist/commands/add-directory/index.d.ts +3 -0
  9. package/dist/commands/add-directory/index.d.ts.map +1 -0
  10. package/dist/commands/add-directory/index.js +50 -0
  11. package/dist/commands/add-directory/types.d.ts +6 -0
  12. package/dist/commands/add-directory/types.d.ts.map +1 -0
  13. package/dist/commands/add-directory/utils.d.ts +3 -0
  14. package/dist/commands/add-directory/utils.d.ts.map +1 -0
  15. package/dist/commands/add-directory/utils.js +15 -0
  16. package/dist/commands/clear/index.d.ts +3 -0
  17. package/dist/commands/clear/index.d.ts.map +1 -0
  18. package/dist/commands/{clear-command.js → clear/index.js} +1 -7
  19. package/dist/commands/copy/index.d.ts +3 -0
  20. package/dist/commands/copy/index.d.ts.map +1 -0
  21. package/dist/commands/copy/index.js +39 -0
  22. package/dist/commands/copy/types.d.ts +3 -0
  23. package/dist/commands/copy/types.d.ts.map +1 -0
  24. package/dist/commands/copy/types.js +1 -0
  25. package/dist/commands/copy/utils.d.ts +3 -0
  26. package/dist/commands/copy/utils.d.ts.map +1 -0
  27. package/dist/commands/copy/utils.js +22 -0
  28. package/dist/commands/exit/index.d.ts +10 -0
  29. package/dist/commands/exit/index.d.ts.map +1 -0
  30. package/dist/commands/exit/index.js +21 -0
  31. package/dist/commands/exit/types.d.ts +8 -0
  32. package/dist/commands/exit/types.d.ts.map +1 -0
  33. package/dist/commands/exit/types.js +1 -0
  34. package/dist/commands/exit/utils.d.ts +2 -0
  35. package/dist/commands/exit/utils.d.ts.map +1 -0
  36. package/dist/commands/exit/utils.js +13 -0
  37. package/dist/commands/generate-rules/index.d.ts +3 -0
  38. package/dist/commands/generate-rules/index.d.ts.map +1 -0
  39. package/dist/commands/{generate-rules-command.js → generate-rules/index.js} +65 -147
  40. package/dist/commands/generate-rules/utils.d.ts +5 -0
  41. package/dist/commands/generate-rules/utils.d.ts.map +1 -0
  42. package/dist/commands/generate-rules/utils.js +25 -0
  43. package/dist/commands/handoff/index.d.ts +3 -0
  44. package/dist/commands/handoff/index.d.ts.map +1 -0
  45. package/dist/commands/handoff/index.js +97 -0
  46. package/dist/commands/handoff/utils.d.ts +4 -0
  47. package/dist/commands/handoff/utils.d.ts.map +1 -0
  48. package/dist/commands/handoff/utils.js +123 -0
  49. package/dist/commands/health/index.d.ts +3 -0
  50. package/dist/commands/health/index.d.ts.map +1 -0
  51. package/dist/commands/health/index.js +56 -0
  52. package/dist/commands/health/utils.d.ts +15 -0
  53. package/dist/commands/health/utils.d.ts.map +1 -0
  54. package/dist/commands/health/utils.js +52 -0
  55. package/dist/commands/help/index.d.ts +3 -0
  56. package/dist/commands/help/index.d.ts.map +1 -0
  57. package/dist/commands/{help-command.js → help/index.js} +6 -14
  58. package/dist/commands/history/index.d.ts +3 -0
  59. package/dist/commands/history/index.d.ts.map +1 -0
  60. package/dist/commands/{history-command.js → history/index.js} +40 -200
  61. package/dist/commands/history/types.d.ts +11 -0
  62. package/dist/commands/history/types.d.ts.map +1 -0
  63. package/dist/commands/history/types.js +1 -0
  64. package/dist/commands/history/utils.d.ts +4 -0
  65. package/dist/commands/history/utils.d.ts.map +1 -0
  66. package/dist/commands/history/utils.js +86 -0
  67. package/dist/commands/init/index.d.ts +3 -0
  68. package/dist/commands/init/index.d.ts.map +1 -0
  69. package/dist/commands/{init-command.js → init/index.js} +17 -27
  70. package/dist/commands/init-project/index.d.ts +3 -0
  71. package/dist/commands/init-project/index.d.ts.map +1 -0
  72. package/dist/commands/init-project/index.js +51 -0
  73. package/dist/commands/init-project/utils.d.ts +9 -0
  74. package/dist/commands/init-project/utils.d.ts.map +1 -0
  75. package/dist/commands/init-project/utils.js +43 -0
  76. package/dist/commands/list-directories/index.d.ts +3 -0
  77. package/dist/commands/list-directories/index.d.ts.map +1 -0
  78. package/dist/commands/{list-directories-command.js → list-directories/index.js} +2 -15
  79. package/dist/commands/list-tools/index.d.ts +3 -0
  80. package/dist/commands/list-tools/index.d.ts.map +1 -0
  81. package/dist/commands/list-tools/index.js +89 -0
  82. package/dist/commands/manager.d.ts +2 -9
  83. package/dist/commands/manager.d.ts.map +1 -1
  84. package/dist/commands/manager.js +38 -83
  85. package/dist/commands/model/index.d.ts +3 -0
  86. package/dist/commands/model/index.d.ts.map +1 -0
  87. package/dist/commands/model/index.js +182 -0
  88. package/dist/commands/model/utils.d.ts +3 -0
  89. package/dist/commands/model/utils.d.ts.map +1 -0
  90. package/dist/commands/model/utils.js +5 -0
  91. package/dist/commands/paste/index.d.ts +3 -0
  92. package/dist/commands/paste/index.d.ts.map +1 -0
  93. package/dist/commands/paste/index.js +94 -0
  94. package/dist/commands/paste/utils.d.ts +5 -0
  95. package/dist/commands/paste/utils.d.ts.map +1 -0
  96. package/dist/commands/paste/utils.js +86 -0
  97. package/dist/commands/pickup/index.d.ts +3 -0
  98. package/dist/commands/pickup/index.d.ts.map +1 -0
  99. package/dist/commands/pickup/index.js +138 -0
  100. package/dist/commands/pickup/types.d.ts +6 -0
  101. package/dist/commands/pickup/types.d.ts.map +1 -0
  102. package/dist/commands/pickup/types.js +1 -0
  103. package/dist/commands/pickup/utils.d.ts +7 -0
  104. package/dist/commands/pickup/utils.d.ts.map +1 -0
  105. package/dist/commands/pickup/utils.js +56 -0
  106. package/dist/commands/prompt/index.d.ts +5 -0
  107. package/dist/commands/prompt/index.d.ts.map +1 -0
  108. package/dist/commands/prompt/index.js +126 -0
  109. package/dist/commands/prompt/types.d.ts +15 -0
  110. package/dist/commands/prompt/types.d.ts.map +1 -0
  111. package/dist/commands/prompt/types.js +1 -0
  112. package/dist/commands/prompt/utils.d.ts +12 -0
  113. package/dist/commands/prompt/utils.d.ts.map +1 -0
  114. package/dist/commands/prompt/utils.js +107 -0
  115. package/dist/commands/remove-directory/index.d.ts +3 -0
  116. package/dist/commands/remove-directory/index.d.ts.map +1 -0
  117. package/dist/commands/{remove-directory-command.js → remove-directory/index.js} +3 -35
  118. package/dist/commands/reset/index.d.ts +3 -0
  119. package/dist/commands/reset/index.d.ts.map +1 -0
  120. package/dist/commands/{reset-command.js → reset/index.js} +8 -11
  121. package/dist/commands/reset/types.d.ts +1 -0
  122. package/dist/commands/reset/types.d.ts.map +1 -0
  123. package/dist/commands/reset/types.js +3 -0
  124. package/dist/commands/resources/index.d.ts +3 -0
  125. package/dist/commands/resources/index.d.ts.map +1 -0
  126. package/dist/commands/resources/index.js +84 -0
  127. package/dist/commands/review/index.d.ts +3 -0
  128. package/dist/commands/review/index.d.ts.map +1 -0
  129. package/dist/commands/review/index.js +126 -0
  130. package/dist/commands/review/types.d.ts +12 -0
  131. package/dist/commands/review/types.d.ts.map +1 -0
  132. package/dist/commands/review/types.js +1 -0
  133. package/dist/commands/review/utils.d.ts +4 -0
  134. package/dist/commands/review/utils.d.ts.map +1 -0
  135. package/dist/commands/review/utils.js +87 -0
  136. package/dist/commands/save/index.d.ts +3 -0
  137. package/dist/commands/save/index.d.ts.map +1 -0
  138. package/dist/commands/{save-command.js → save/index.js} +3 -10
  139. package/dist/commands/session/index.d.ts +3 -0
  140. package/dist/commands/session/index.d.ts.map +1 -0
  141. package/dist/commands/session/index.js +197 -0
  142. package/dist/commands/session/types.d.ts +13 -0
  143. package/dist/commands/session/types.d.ts.map +1 -0
  144. package/dist/commands/session/types.js +7 -0
  145. package/dist/commands/shell/index.d.ts +3 -0
  146. package/dist/commands/shell/index.d.ts.map +1 -0
  147. package/dist/commands/{shell-command.js → shell/index.js} +4 -51
  148. package/dist/commands/types.d.ts +2 -5
  149. package/dist/commands/types.d.ts.map +1 -1
  150. package/dist/config.d.ts +36 -7
  151. package/dist/config.d.ts.map +1 -1
  152. package/dist/config.js +118 -60
  153. package/dist/dedent.d.ts.map +1 -1
  154. package/dist/dedent.js +7 -7
  155. package/dist/execution/index.d.ts +18 -2
  156. package/dist/execution/index.d.ts.map +1 -1
  157. package/dist/execution/index.js +119 -81
  158. package/dist/formatting.d.ts +46 -0
  159. package/dist/formatting.d.ts.map +1 -1
  160. package/dist/formatting.js +94 -0
  161. package/dist/index.d.ts +1 -1
  162. package/dist/index.d.ts.map +1 -1
  163. package/dist/index.js +299 -177
  164. package/dist/logger.d.ts.map +1 -1
  165. package/dist/logger.js +4 -11
  166. package/dist/mentions.d.ts.map +1 -1
  167. package/dist/mentions.js +3 -53
  168. package/dist/middleware/audit-message.d.ts +2 -2
  169. package/dist/middleware/audit-message.d.ts.map +1 -1
  170. package/dist/middleware/audit-message.js +40 -2
  171. package/dist/middleware/cache.d.ts +2 -2
  172. package/dist/middleware/cache.d.ts.map +1 -1
  173. package/dist/middleware/cache.js +111 -27
  174. package/dist/middleware/rate-limit.d.ts +2 -2
  175. package/dist/middleware/rate-limit.d.ts.map +1 -1
  176. package/dist/middleware/rate-limit.js +1 -0
  177. package/dist/models/ai-config.d.ts.map +1 -1
  178. package/dist/models/ai-config.js +46 -29
  179. package/dist/models/anthropic-provider.d.ts +14 -13
  180. package/dist/models/anthropic-provider.d.ts.map +1 -1
  181. package/dist/models/anthropic-provider.js +0 -7
  182. package/dist/models/deepseek-provider.d.ts +9 -8
  183. package/dist/models/deepseek-provider.d.ts.map +1 -1
  184. package/dist/models/deepseek-provider.js +0 -2
  185. package/dist/models/google-provider.d.ts +10 -9
  186. package/dist/models/google-provider.d.ts.map +1 -1
  187. package/dist/models/google-provider.js +0 -3
  188. package/dist/models/groq-provider.d.ts +8 -7
  189. package/dist/models/groq-provider.d.ts.map +1 -1
  190. package/dist/models/groq-provider.js +0 -1
  191. package/dist/models/manager.d.ts +7 -4
  192. package/dist/models/manager.d.ts.map +1 -1
  193. package/dist/models/manager.js +5 -25
  194. package/dist/models/openai-provider.d.ts +11 -10
  195. package/dist/models/openai-provider.d.ts.map +1 -1
  196. package/dist/models/openai-provider.js +0 -4
  197. package/dist/models/opencode-zen-provider.d.ts +23 -0
  198. package/dist/models/opencode-zen-provider.d.ts.map +1 -0
  199. package/dist/models/opencode-zen-provider.js +76 -0
  200. package/dist/models/openrouter-provider.d.ts +34 -28
  201. package/dist/models/openrouter-provider.d.ts.map +1 -1
  202. package/dist/models/openrouter-provider.js +148 -139
  203. package/dist/models/providers.d.ts +6 -16
  204. package/dist/models/providers.d.ts.map +1 -1
  205. package/dist/models/providers.js +8 -58
  206. package/dist/models/xai-provider.d.ts +9 -8
  207. package/dist/models/xai-provider.d.ts.map +1 -1
  208. package/dist/models/xai-provider.js +0 -2
  209. package/dist/prompts/manager.d.ts +1 -1
  210. package/dist/prompts/manager.d.ts.map +1 -1
  211. package/dist/prompts/manager.js +1 -1
  212. package/dist/prompts.d.ts +8 -4
  213. package/dist/prompts.d.ts.map +1 -1
  214. package/dist/prompts.js +155 -177
  215. package/dist/repl/project-status.d.ts +19 -0
  216. package/dist/repl/project-status.d.ts.map +1 -0
  217. package/dist/repl/project-status.js +78 -0
  218. package/dist/repl-new.d.ts +15 -6
  219. package/dist/repl-new.d.ts.map +1 -1
  220. package/dist/repl-new.js +266 -83
  221. package/dist/{messages.d.ts → sessions/manager.d.ts} +13 -4
  222. package/dist/sessions/manager.d.ts.map +1 -0
  223. package/dist/{messages.js → sessions/manager.js} +126 -16
  224. package/dist/skills.d.ts +16 -0
  225. package/dist/skills.d.ts.map +1 -0
  226. package/dist/skills.js +233 -0
  227. package/dist/terminal/control.d.ts +56 -0
  228. package/dist/terminal/control.d.ts.map +1 -0
  229. package/dist/terminal/control.js +111 -0
  230. package/dist/terminal/default-theme.d.ts +1 -1
  231. package/dist/terminal/default-theme.d.ts.map +1 -1
  232. package/dist/terminal/default-theme.js +24 -28
  233. package/dist/terminal/formatting.d.ts +23 -26
  234. package/dist/terminal/formatting.d.ts.map +1 -1
  235. package/dist/terminal/formatting.js +35 -53
  236. package/dist/terminal/highlight/index.d.ts.map +1 -1
  237. package/dist/terminal/highlight/index.js +3 -6
  238. package/dist/terminal/highlight/theme.d.ts.map +1 -1
  239. package/dist/terminal/highlight/theme.js +2 -6
  240. package/dist/terminal/index.d.ts +2 -101
  241. package/dist/terminal/index.d.ts.map +1 -1
  242. package/dist/terminal/index.js +2 -464
  243. package/dist/terminal/keys.d.ts +211 -0
  244. package/dist/terminal/keys.d.ts.map +1 -0
  245. package/dist/terminal/keys.js +546 -0
  246. package/dist/terminal/segmenter.d.ts +6 -0
  247. package/dist/terminal/segmenter.d.ts.map +1 -0
  248. package/dist/terminal/segmenter.js +11 -0
  249. package/dist/terminal/select-prompt.d.ts.map +1 -1
  250. package/dist/terminal/select-prompt.js +9 -21
  251. package/dist/terminal/string-width.d.ts.map +1 -1
  252. package/dist/terminal/string-width.js +40 -21
  253. package/dist/terminal/strip-ansi.d.ts.map +1 -1
  254. package/dist/terminal/strip-ansi.js +9 -15
  255. package/dist/terminal/table/cell.d.ts +114 -0
  256. package/dist/terminal/table/cell.d.ts.map +1 -0
  257. package/dist/terminal/table/cell.js +407 -0
  258. package/dist/terminal/table/debug.d.ts +15 -0
  259. package/dist/terminal/table/debug.d.ts.map +1 -0
  260. package/dist/terminal/table/debug.js +32 -0
  261. package/dist/terminal/table/index.d.ts +3 -0
  262. package/dist/terminal/table/index.d.ts.map +1 -0
  263. package/dist/terminal/table/index.js +2 -0
  264. package/dist/terminal/table/layout-manager.d.ts +27 -0
  265. package/dist/terminal/table/layout-manager.d.ts.map +1 -0
  266. package/dist/terminal/table/layout-manager.js +257 -0
  267. package/dist/terminal/table/table.d.ts +9 -0
  268. package/dist/terminal/table/table.d.ts.map +1 -0
  269. package/dist/terminal/table/table.js +97 -0
  270. package/dist/terminal/table/utils.d.ts +63 -0
  271. package/dist/terminal/table/utils.d.ts.map +1 -0
  272. package/dist/terminal/table/utils.js +326 -0
  273. package/dist/tokens/tracker.d.ts.map +1 -1
  274. package/dist/tokens/tracker.js +58 -16
  275. package/dist/tools/bash.d.ts +11 -11
  276. package/dist/tools/bash.d.ts.map +1 -1
  277. package/dist/tools/bash.js +189 -81
  278. package/dist/tools/directory-tree.d.ts +9 -13
  279. package/dist/tools/directory-tree.d.ts.map +1 -1
  280. package/dist/tools/directory-tree.js +90 -60
  281. package/dist/tools/dynamic-tool-loader.d.ts +22 -8
  282. package/dist/tools/dynamic-tool-loader.d.ts.map +1 -1
  283. package/dist/tools/dynamic-tool-loader.js +41 -46
  284. package/dist/tools/edit-file.d.ts +6 -16
  285. package/dist/tools/edit-file.d.ts.map +1 -1
  286. package/dist/tools/edit-file.js +22 -66
  287. package/dist/tools/glob.d.ts +15 -16
  288. package/dist/tools/glob.d.ts.map +1 -1
  289. package/dist/tools/glob.js +78 -109
  290. package/dist/tools/grep.d.ts +19 -22
  291. package/dist/tools/grep.d.ts.map +1 -1
  292. package/dist/tools/grep.js +61 -93
  293. package/dist/tools/index.d.ts +202 -167
  294. package/dist/tools/index.d.ts.map +1 -1
  295. package/dist/tools/index.js +17 -273
  296. package/dist/tools/ls.d.ts +26 -0
  297. package/dist/tools/ls.d.ts.map +1 -0
  298. package/dist/tools/ls.js +80 -0
  299. package/dist/tools/read-file.d.ts +15 -15
  300. package/dist/tools/read-file.d.ts.map +1 -1
  301. package/dist/tools/read-file.js +52 -76
  302. package/dist/tools/save-file.d.ts +8 -8
  303. package/dist/tools/save-file.d.ts.map +1 -1
  304. package/dist/tools/save-file.js +42 -53
  305. package/dist/tools/think.d.ts +4 -4
  306. package/dist/tools/think.d.ts.map +1 -1
  307. package/dist/tools/think.js +9 -32
  308. package/dist/tools/types.d.ts +5 -21
  309. package/dist/tools/types.d.ts.map +1 -1
  310. package/dist/tools/types.js +0 -9
  311. package/dist/tui/autocomplete/attachment-provider.d.ts +18 -0
  312. package/dist/tui/autocomplete/attachment-provider.d.ts.map +1 -0
  313. package/dist/tui/autocomplete/attachment-provider.js +159 -0
  314. package/dist/tui/autocomplete/base-provider.d.ts +17 -0
  315. package/dist/tui/autocomplete/base-provider.d.ts.map +1 -0
  316. package/dist/tui/autocomplete/base-provider.js +1 -0
  317. package/dist/tui/autocomplete/combined-provider.d.ts +20 -0
  318. package/dist/tui/autocomplete/combined-provider.d.ts.map +1 -0
  319. package/dist/tui/autocomplete/combined-provider.js +61 -0
  320. package/dist/tui/autocomplete/command-provider.d.ts +20 -0
  321. package/dist/tui/autocomplete/command-provider.d.ts.map +1 -0
  322. package/dist/tui/autocomplete/command-provider.js +90 -0
  323. package/dist/tui/autocomplete/file-search-provider.d.ts +16 -0
  324. package/dist/tui/autocomplete/file-search-provider.d.ts.map +1 -0
  325. package/dist/tui/autocomplete/file-search-provider.js +123 -0
  326. package/dist/tui/autocomplete/path-provider.d.ts +21 -0
  327. package/dist/tui/autocomplete/path-provider.d.ts.map +1 -0
  328. package/dist/tui/autocomplete/path-provider.js +164 -0
  329. package/dist/tui/autocomplete/utils.d.ts +16 -0
  330. package/dist/tui/autocomplete/utils.d.ts.map +1 -0
  331. package/dist/tui/autocomplete/utils.js +137 -0
  332. package/dist/tui/autocomplete.d.ts +12 -43
  333. package/dist/tui/autocomplete.d.ts.map +1 -1
  334. package/dist/tui/autocomplete.js +20 -465
  335. package/dist/tui/components/assistant-message.js +1 -1
  336. package/dist/tui/components/box.d.ts +20 -0
  337. package/dist/tui/components/box.d.ts.map +1 -0
  338. package/dist/tui/components/box.js +87 -0
  339. package/dist/tui/components/editor.d.ts +61 -7
  340. package/dist/tui/components/editor.d.ts.map +1 -1
  341. package/dist/tui/components/editor.js +630 -127
  342. package/dist/tui/components/footer.d.ts +19 -18
  343. package/dist/tui/components/footer.d.ts.map +1 -1
  344. package/dist/tui/components/footer.js +90 -185
  345. package/dist/tui/components/header.d.ts +21 -0
  346. package/dist/tui/components/header.d.ts.map +1 -0
  347. package/dist/tui/components/header.js +63 -0
  348. package/dist/tui/components/input.d.ts.map +1 -1
  349. package/dist/tui/components/input.js +8 -7
  350. package/dist/tui/components/loader.d.ts +6 -1
  351. package/dist/tui/components/loader.d.ts.map +1 -1
  352. package/dist/tui/components/loader.js +8 -3
  353. package/dist/tui/components/markdown.d.ts +31 -27
  354. package/dist/tui/components/markdown.d.ts.map +1 -1
  355. package/dist/tui/components/markdown.js +131 -67
  356. package/dist/tui/components/modal.d.ts +0 -11
  357. package/dist/tui/components/modal.d.ts.map +1 -1
  358. package/dist/tui/components/modal.js +9 -37
  359. package/dist/tui/components/notification.d.ts +28 -0
  360. package/dist/tui/components/notification.d.ts.map +1 -0
  361. package/dist/tui/components/notification.js +63 -0
  362. package/dist/tui/components/progress-bar.d.ts +19 -0
  363. package/dist/tui/components/progress-bar.d.ts.map +1 -0
  364. package/dist/tui/components/progress-bar.js +66 -0
  365. package/dist/tui/components/select-list.d.ts +12 -1
  366. package/dist/tui/components/select-list.d.ts.map +1 -1
  367. package/dist/tui/components/select-list.js +73 -32
  368. package/dist/tui/components/spacer.d.ts +1 -1
  369. package/dist/tui/components/spacer.d.ts.map +1 -1
  370. package/dist/tui/components/spacer.js +2 -2
  371. package/dist/tui/components/table.d.ts +27 -0
  372. package/dist/tui/components/table.d.ts.map +1 -0
  373. package/dist/tui/components/table.js +125 -0
  374. package/dist/tui/components/thinking-block.d.ts.map +1 -1
  375. package/dist/tui/components/thinking-block.js +4 -1
  376. package/dist/tui/components/tool-execution.d.ts +7 -6
  377. package/dist/tui/components/tool-execution.d.ts.map +1 -1
  378. package/dist/tui/components/tool-execution.js +81 -85
  379. package/dist/tui/components/user-message.d.ts.map +1 -1
  380. package/dist/tui/components/user-message.js +6 -4
  381. package/dist/tui/components/welcome.d.ts +8 -1
  382. package/dist/tui/components/welcome.d.ts.map +1 -1
  383. package/dist/tui/components/welcome.js +45 -6
  384. package/dist/tui/index.d.ts +12 -6
  385. package/dist/tui/index.d.ts.map +1 -1
  386. package/dist/tui/index.js +7 -3
  387. package/dist/tui/terminal.d.ts +4 -3
  388. package/dist/tui/terminal.d.ts.map +1 -1
  389. package/dist/tui/terminal.js +43 -49
  390. package/dist/tui/tui.d.ts +3 -0
  391. package/dist/tui/tui.d.ts.map +1 -1
  392. package/dist/tui/tui.js +58 -43
  393. package/dist/tui/utils.d.ts +5 -0
  394. package/dist/tui/utils.d.ts.map +1 -1
  395. package/dist/tui/utils.js +80 -1
  396. package/dist/{tools/bash-utils.d.ts → utils/bash.d.ts} +3 -3
  397. package/dist/utils/bash.d.ts.map +1 -0
  398. package/dist/{tools/bash-utils.js → utils/bash.js} +22 -11
  399. package/dist/utils/{filesystem.d.ts → filesystem/operations.d.ts} +1 -1
  400. package/dist/utils/filesystem/operations.d.ts.map +1 -0
  401. package/dist/{tools/filesystem-utils.d.ts → utils/filesystem/security.d.ts} +3 -2
  402. package/dist/utils/filesystem/security.d.ts.map +1 -0
  403. package/dist/{tools/filesystem-utils.js → utils/filesystem/security.js} +62 -4
  404. package/dist/utils/funcs.d.ts +6 -0
  405. package/dist/utils/funcs.d.ts.map +1 -0
  406. package/dist/utils/funcs.js +6 -0
  407. package/dist/{tools/git-utils.d.ts → utils/git.d.ts} +1 -1
  408. package/dist/utils/git.d.ts.map +1 -0
  409. package/dist/{tools/git-utils.js → utils/git.js} +0 -6
  410. package/dist/utils/glob.js +1 -1
  411. package/dist/utils/yaml.d.ts +11 -0
  412. package/dist/utils/yaml.d.ts.map +1 -0
  413. package/dist/utils/yaml.js +207 -0
  414. package/dist/utils/{zod-utils.d.ts → zod.d.ts} +2 -1
  415. package/dist/utils/zod.d.ts.map +1 -0
  416. package/dist/utils/zod.js +24 -0
  417. package/package.json +31 -29
  418. package/dist/agent/manual-loop.d.ts +0 -41
  419. package/dist/agent/manual-loop.d.ts.map +0 -1
  420. package/dist/agent/manual-loop.js +0 -278
  421. package/dist/api/exa/index.d.ts +0 -177
  422. package/dist/api/exa/index.d.ts.map +0 -1
  423. package/dist/api/exa/index.js +0 -439
  424. package/dist/commands/add-directory-command.d.ts +0 -3
  425. package/dist/commands/add-directory-command.d.ts.map +0 -1
  426. package/dist/commands/add-directory-command.js +0 -85
  427. package/dist/commands/application-log-command.d.ts +0 -3
  428. package/dist/commands/application-log-command.d.ts.map +0 -1
  429. package/dist/commands/application-log-command.js +0 -79
  430. package/dist/commands/clear-command.d.ts +0 -3
  431. package/dist/commands/clear-command.d.ts.map +0 -1
  432. package/dist/commands/compact-command.d.ts +0 -3
  433. package/dist/commands/compact-command.d.ts.map +0 -1
  434. package/dist/commands/compact-command.js +0 -64
  435. package/dist/commands/context-command.d.ts +0 -3
  436. package/dist/commands/context-command.d.ts.map +0 -1
  437. package/dist/commands/context-command.js +0 -183
  438. package/dist/commands/copy-command.d.ts +0 -3
  439. package/dist/commands/copy-command.d.ts.map +0 -1
  440. package/dist/commands/copy-command.js +0 -80
  441. package/dist/commands/edit-command.d.ts +0 -3
  442. package/dist/commands/edit-command.d.ts.map +0 -1
  443. package/dist/commands/edit-command.js +0 -88
  444. package/dist/commands/edit-prompt-command.d.ts +0 -3
  445. package/dist/commands/edit-prompt-command.d.ts.map +0 -1
  446. package/dist/commands/edit-prompt-command.js +0 -61
  447. package/dist/commands/exit-command.d.ts +0 -13
  448. package/dist/commands/exit-command.d.ts.map +0 -1
  449. package/dist/commands/exit-command.js +0 -46
  450. package/dist/commands/files-command.d.ts +0 -3
  451. package/dist/commands/files-command.d.ts.map +0 -1
  452. package/dist/commands/files-command.js +0 -121
  453. package/dist/commands/generate-rules-command.d.ts +0 -3
  454. package/dist/commands/generate-rules-command.d.ts.map +0 -1
  455. package/dist/commands/handoff-command.d.ts +0 -3
  456. package/dist/commands/handoff-command.d.ts.map +0 -1
  457. package/dist/commands/handoff-command.js +0 -202
  458. package/dist/commands/health-command.d.ts +0 -4
  459. package/dist/commands/health-command.d.ts.map +0 -1
  460. package/dist/commands/health-command.js +0 -213
  461. package/dist/commands/help-command.d.ts +0 -3
  462. package/dist/commands/help-command.d.ts.map +0 -1
  463. package/dist/commands/history-command.d.ts +0 -3
  464. package/dist/commands/history-command.d.ts.map +0 -1
  465. package/dist/commands/init-command.d.ts +0 -3
  466. package/dist/commands/init-command.d.ts.map +0 -1
  467. package/dist/commands/last-log-command.d.ts +0 -3
  468. package/dist/commands/last-log-command.d.ts.map +0 -1
  469. package/dist/commands/last-log-command.js +0 -98
  470. package/dist/commands/list-directories-command.d.ts +0 -3
  471. package/dist/commands/list-directories-command.d.ts.map +0 -1
  472. package/dist/commands/list-tools-command.d.ts +0 -3
  473. package/dist/commands/list-tools-command.d.ts.map +0 -1
  474. package/dist/commands/list-tools-command.js +0 -124
  475. package/dist/commands/model-command.d.ts +0 -25
  476. package/dist/commands/model-command.d.ts.map +0 -1
  477. package/dist/commands/model-command.js +0 -340
  478. package/dist/commands/paste-command.d.ts +0 -3
  479. package/dist/commands/paste-command.d.ts.map +0 -1
  480. package/dist/commands/paste-command.js +0 -277
  481. package/dist/commands/pickup-command.d.ts +0 -3
  482. package/dist/commands/pickup-command.d.ts.map +0 -1
  483. package/dist/commands/pickup-command.js +0 -161
  484. package/dist/commands/prompt-command.d.ts +0 -3
  485. package/dist/commands/prompt-command.d.ts.map +0 -1
  486. package/dist/commands/prompt-command.js +0 -280
  487. package/dist/commands/remove-directory-command.d.ts +0 -3
  488. package/dist/commands/remove-directory-command.d.ts.map +0 -1
  489. package/dist/commands/reset-command.d.ts +0 -3
  490. package/dist/commands/reset-command.d.ts.map +0 -1
  491. package/dist/commands/rules-command.d.ts +0 -3
  492. package/dist/commands/rules-command.d.ts.map +0 -1
  493. package/dist/commands/rules-command.js +0 -135
  494. package/dist/commands/save-command.d.ts +0 -3
  495. package/dist/commands/save-command.d.ts.map +0 -1
  496. package/dist/commands/shell-command.d.ts +0 -3
  497. package/dist/commands/shell-command.d.ts.map +0 -1
  498. package/dist/commands/usage-command.d.ts +0 -3
  499. package/dist/commands/usage-command.d.ts.map +0 -1
  500. package/dist/commands/usage-command.js +0 -42
  501. package/dist/messages.d.ts.map +0 -1
  502. package/dist/repl/display-tool-messages.d.ts +0 -4
  503. package/dist/repl/display-tool-messages.d.ts.map +0 -1
  504. package/dist/repl/display-tool-messages.js +0 -58
  505. package/dist/repl/display-tool-use.d.ts +0 -14
  506. package/dist/repl/display-tool-use.d.ts.map +0 -1
  507. package/dist/repl/display-tool-use.js +0 -63
  508. package/dist/repl/get-prompt-header.d.ts +0 -8
  509. package/dist/repl/get-prompt-header.d.ts.map +0 -1
  510. package/dist/repl/get-prompt-header.js +0 -9
  511. package/dist/repl/project-status-line.d.ts +0 -2
  512. package/dist/repl/project-status-line.d.ts.map +0 -1
  513. package/dist/repl/project-status-line.js +0 -31
  514. package/dist/repl/prompt.d.ts +0 -21
  515. package/dist/repl/prompt.d.ts.map +0 -1
  516. package/dist/repl/prompt.js +0 -244
  517. package/dist/repl/tool-call-repair.d.ts +0 -4
  518. package/dist/repl/tool-call-repair.d.ts.map +0 -1
  519. package/dist/repl/tool-call-repair.js +0 -54
  520. package/dist/repl.d.ts +0 -29
  521. package/dist/repl.d.ts.map +0 -1
  522. package/dist/repl.js +0 -218
  523. package/dist/terminal/checkbox-prompt.d.ts +0 -36
  524. package/dist/terminal/checkbox-prompt.d.ts.map +0 -1
  525. package/dist/terminal/checkbox-prompt.js +0 -368
  526. package/dist/terminal/editor-prompt.d.ts +0 -10
  527. package/dist/terminal/editor-prompt.d.ts.map +0 -1
  528. package/dist/terminal/editor-prompt.js +0 -61
  529. package/dist/terminal/errors.d.ts +0 -19
  530. package/dist/terminal/errors.d.ts.map +0 -1
  531. package/dist/terminal/errors.js +0 -37
  532. package/dist/terminal/input-prompt.d.ts +0 -17
  533. package/dist/terminal/input-prompt.d.ts.map +0 -1
  534. package/dist/terminal/input-prompt.js +0 -181
  535. package/dist/terminal/markdown.d.ts +0 -2
  536. package/dist/terminal/markdown.d.ts.map +0 -1
  537. package/dist/terminal/markdown.js +0 -118
  538. package/dist/terminal/search-prompt.d.ts +0 -20
  539. package/dist/terminal/search-prompt.d.ts.map +0 -1
  540. package/dist/terminal/search-prompt.js +0 -280
  541. package/dist/terminal/types.d.ts +0 -35
  542. package/dist/terminal/types.d.ts.map +0 -1
  543. package/dist/tokens/threshold.d.ts +0 -35
  544. package/dist/tokens/threshold.d.ts.map +0 -1
  545. package/dist/tokens/threshold.js +0 -85
  546. package/dist/tools/advanced-edit-file.d.ts +0 -69
  547. package/dist/tools/advanced-edit-file.d.ts.map +0 -1
  548. package/dist/tools/advanced-edit-file.js +0 -281
  549. package/dist/tools/agent.d.ts +0 -29
  550. package/dist/tools/agent.d.ts.map +0 -1
  551. package/dist/tools/agent.js +0 -103
  552. package/dist/tools/bash-utils.d.ts.map +0 -1
  553. package/dist/tools/code-interpreter.d.ts +0 -25
  554. package/dist/tools/code-interpreter.d.ts.map +0 -1
  555. package/dist/tools/code-interpreter.js +0 -167
  556. package/dist/tools/delete-file.d.ts +0 -24
  557. package/dist/tools/delete-file.d.ts.map +0 -1
  558. package/dist/tools/delete-file.js +0 -70
  559. package/dist/tools/dynamic-tool-parser.d.ts +0 -21
  560. package/dist/tools/dynamic-tool-parser.d.ts.map +0 -1
  561. package/dist/tools/dynamic-tool-parser.js +0 -22
  562. package/dist/tools/filesystem-utils.d.ts.map +0 -1
  563. package/dist/tools/git-utils.d.ts.map +0 -1
  564. package/dist/tools/llm-edit-fixer.d.ts +0 -25
  565. package/dist/tools/llm-edit-fixer.d.ts.map +0 -1
  566. package/dist/tools/llm-edit-fixer.js +0 -150
  567. package/dist/tools/move-file.d.ts +0 -26
  568. package/dist/tools/move-file.d.ts.map +0 -1
  569. package/dist/tools/move-file.js +0 -58
  570. package/dist/tools/read-multiple-files.d.ts +0 -26
  571. package/dist/tools/read-multiple-files.d.ts.map +0 -1
  572. package/dist/tools/read-multiple-files.js +0 -139
  573. package/dist/tools/web-fetch.d.ts +0 -56
  574. package/dist/tools/web-fetch.d.ts.map +0 -1
  575. package/dist/tools/web-fetch.js +0 -247
  576. package/dist/tools/web-search.d.ts +0 -23
  577. package/dist/tools/web-search.d.ts.map +0 -1
  578. package/dist/tools/web-search.js +0 -133
  579. package/dist/tui/components/prompt-status.d.ts +0 -16
  580. package/dist/tui/components/prompt-status.d.ts.map +0 -1
  581. package/dist/tui/components/prompt-status.js +0 -21
  582. package/dist/utils/filesystem.d.ts.map +0 -1
  583. package/dist/utils/zod-utils.d.ts.map +0 -1
  584. package/dist/utils/zod-utils.js +0 -7
  585. /package/dist/{terminal → commands/add-directory}/types.js +0 -0
  586. /package/dist/utils/{filesystem.js → filesystem/operations.js} +0 -0
@@ -1,213 +0,0 @@
1
- import { execSync } from "node:child_process";
2
- import { formatMemoryUsage } from "../formatting.js";
3
- import { Container, Modal, ModalTable, ModalText } from "../tui/index.js";
4
- export function healthCommand({ terminal }, execFn = execSync) {
5
- return {
6
- command: "/health",
7
- description: "Show application health status and environment variables",
8
- getSubCommands: () => Promise.resolve([]),
9
- async execute() {
10
- // Define the environment variables we care about
11
- const envVars = [
12
- // AI Provider API Keys
13
- { name: "OPENAI_API_KEY", description: "OpenAI (GPT models)" },
14
- { name: "ANTHROPIC_API_KEY", description: "Anthropic (Claude models)" },
15
- {
16
- name: "GOOGLE_GENERATIVE_AI_API_KEY",
17
- description: "Google (Gemini models)",
18
- },
19
- { name: "DEEPSEEK_API_KEY", description: "DeepSeek" },
20
- { name: "GROQ_API_KEY", description: "Groq (multiple models)" },
21
- { name: "X_AI_API_KEY", description: "X.AI (Grok models)" },
22
- { name: "XAI_API_KEY", description: "X.AI (Grok models - alt)" },
23
- {
24
- name: "OPENROUTER_API_KEY",
25
- description: "OpenRouter (multiple models)",
26
- },
27
- // Web Service API Keys
28
- { name: "EXA_API_KEY", description: "Exa (enhanced web search)" },
29
- {
30
- name: "JINA_READER_API_KEY",
31
- description: "Jina Reader (web content extraction)",
32
- },
33
- // Application Configuration
34
- { name: "LOG_LEVEL", description: "Logging level" },
35
- ];
36
- // Check each environment variable
37
- const envStatus = envVars.map((envVar) => {
38
- const value = process.env[envVar.name];
39
- const hasValue = value !== undefined && value !== null && value.trim() !== "";
40
- const status = hasValue ? "✓ Set" : "✗ Not set";
41
- return [envVar.name, status, envVar.description];
42
- });
43
- // Display the table
44
- terminal.writeln("Environment Variables Status:");
45
- terminal.table(envStatus, {
46
- header: ["Variable", "Status", "Description"],
47
- colWidths: [30, 15, 55],
48
- });
49
- // Count how many are set (derived from envStatus to avoid re-checking process.env)
50
- const setCount = envStatus.filter((row) => row[1] === "✓ Set").length;
51
- const totalCount = envVars.length;
52
- terminal.info(`Summary: ${setCount}/${totalCount} environment variables are set`);
53
- if (setCount === 0) {
54
- terminal.warn("⚠️ No AI provider API keys are configured. The app may not function properly.");
55
- }
56
- else {
57
- terminal.info("✓ At least one AI provider is configured.");
58
- }
59
- // Check for required bash tools
60
- const tools = [
61
- { name: "git", command: "git --version" },
62
- { name: "gh", command: "gh --version" },
63
- { name: "rg", command: "rg --version" },
64
- { name: "fd", command: "fd --version" },
65
- { name: "ast-grep", command: "ast-grep --version" },
66
- { name: "jq", command: "jq --version" },
67
- { name: "yq", command: "yq --version" },
68
- ];
69
- const toolStatus = tools.map((tool) => {
70
- let status = "✗ Not installed";
71
- try {
72
- execFn(tool.command, { stdio: "ignore", timeout: 5000 });
73
- status = "✓ Installed";
74
- }
75
- catch (_error) {
76
- // Ignore error, tool is not installed
77
- }
78
- return [tool.name, status];
79
- });
80
- terminal.lineBreak();
81
- terminal.writeln("Bash Tools Status:");
82
- terminal.table(toolStatus, {
83
- header: ["Tool", "Status"],
84
- colWidths: [15, 20],
85
- });
86
- const installedCount = toolStatus.filter((row) => row[1] === "✓ Installed").length;
87
- const totalTools = tools.length;
88
- terminal.info(`Tool Summary: ${installedCount}/${totalTools} tools are installed.`);
89
- if (installedCount < totalTools) {
90
- terminal.warn("⚠️ Some tools are missing. Install them for full functionality.");
91
- }
92
- else {
93
- terminal.info("✓ All required tools are installed.");
94
- }
95
- terminal.lineBreak();
96
- terminal.writeln("Current Process:");
97
- // Display memory usage
98
- const usage = process.memoryUsage().rss;
99
- const formattedUsage = formatMemoryUsage(usage);
100
- if (usage >= 2 * 1024 * 1024 * 1024) {
101
- terminal.error(`Memory Usage: ${formattedUsage}`);
102
- }
103
- else {
104
- terminal.info(`Memory Usage: ${formattedUsage}`);
105
- }
106
- return "continue";
107
- },
108
- async handle(_args, { tui, editor }) {
109
- // Define the environment variables we care about
110
- const envVars = [
111
- // AI Provider API Keys
112
- { name: "OPENAI_API_KEY", description: "OpenAI (GPT models)" },
113
- { name: "ANTHROPIC_API_KEY", description: "Anthropic (Claude models)" },
114
- {
115
- name: "GOOGLE_GENERATIVE_AI_API_KEY",
116
- description: "Google (Gemini models)",
117
- },
118
- { name: "DEEPSEEK_API_KEY", description: "DeepSeek" },
119
- { name: "GROQ_API_KEY", description: "Groq (multiple models)" },
120
- { name: "X_AI_API_KEY", description: "X.AI (Grok models)" },
121
- { name: "XAI_API_KEY", description: "X.AI (Grok models - alt)" },
122
- {
123
- name: "OPENROUTER_API_KEY",
124
- description: "OpenRouter (multiple models)",
125
- },
126
- // Web Service API Keys
127
- { name: "EXA_API_KEY", description: "Exa (enhanced web search)" },
128
- {
129
- name: "JINA_READER_API_KEY",
130
- description: "Jina Reader (web content extraction)",
131
- },
132
- // Application Configuration
133
- { name: "LOG_LEVEL", description: "Logging level" },
134
- ];
135
- // Check each environment variable
136
- const envStatus = envVars.map((envVar) => {
137
- const value = process.env[envVar.name];
138
- const hasValue = value !== undefined && value !== null && value.trim() !== "";
139
- const status = hasValue ? "✓ Set" : "✗ Not set";
140
- return [envVar.name, status, envVar.description];
141
- });
142
- // Check for required bash tools
143
- const tools = [
144
- { name: "git", command: "git --version" },
145
- { name: "gh", command: "gh --version" },
146
- { name: "rg", command: "rg --version" },
147
- { name: "fd", command: "fd --version" },
148
- { name: "ast-grep", command: "ast-grep --version" },
149
- { name: "jq", command: "jq --version" },
150
- { name: "yq", command: "yq --version" },
151
- ];
152
- const toolStatus = tools.map((tool) => {
153
- let status = "✗ Not installed";
154
- try {
155
- execFn(tool.command, { stdio: "ignore", timeout: 5000 });
156
- status = "✓ Installed";
157
- }
158
- catch (_error) {
159
- // Ignore error, tool is not installed
160
- }
161
- return [tool.name, status];
162
- });
163
- // Count how many are set
164
- const setCount = envStatus.filter((row) => row[1] === "✓ Set").length;
165
- const totalCount = envVars.length;
166
- const installedCount = toolStatus.filter((row) => row[1] === "✓ Installed").length;
167
- const totalTools = tools.length;
168
- // Display memory usage
169
- const usage = process.memoryUsage().rss;
170
- const formattedUsage = formatMemoryUsage(usage);
171
- // Build modal content
172
- const modalContent = new Container();
173
- // Environment variables section
174
- modalContent.addChild(new ModalText("Environment Variables Status:", 0, 1));
175
- modalContent.addChild(new ModalTable(envStatus, ["Variable", "Status", "Description"]));
176
- const envSummary = `Summary: ${setCount}/${totalCount} environment variables are set`;
177
- modalContent.addChild(new ModalText(envSummary, 0, 1));
178
- if (setCount === 0) {
179
- modalContent.addChild(new ModalText("⚠️ No AI provider API keys are configured. The app may not function properly.", 0, 1));
180
- }
181
- else {
182
- modalContent.addChild(new ModalText("✓ At least one AI provider is configured.", 0, 1));
183
- }
184
- // Tools section
185
- modalContent.addChild(new ModalText("", 0, 1)); // Spacer
186
- modalContent.addChild(new ModalText("Bash Tools Status:", 0, 1));
187
- modalContent.addChild(new ModalTable(toolStatus, ["Tool", "Status"]));
188
- const toolSummary = `Tool Summary: ${installedCount}/${totalTools} tools are installed.`;
189
- modalContent.addChild(new ModalText(toolSummary, 0, 1));
190
- if (installedCount < totalTools) {
191
- modalContent.addChild(new ModalText("⚠️ Some tools are missing. Install them for full functionality.", 0, 1));
192
- }
193
- else {
194
- modalContent.addChild(new ModalText("✓ All required tools are installed.", 0, 1));
195
- }
196
- // Memory usage
197
- modalContent.addChild(new ModalText("", 0, 1)); // Spacer
198
- modalContent.addChild(new ModalText("Current Process:", 0, 1));
199
- const memoryText = usage >= 2 * 1024 * 1024 * 1024
200
- ? `Memory Usage: ${formattedUsage}`
201
- : `Memory Usage: ${formattedUsage}`;
202
- modalContent.addChild(new ModalText(memoryText, 0, 1));
203
- // Create and show modal
204
- const modal = new Modal("Health Status", modalContent, true, () => {
205
- // Modal closed callback
206
- editor.setText("");
207
- tui.requestRender();
208
- });
209
- tui.showModal(modal);
210
- return "continue";
211
- },
212
- };
213
- }
@@ -1,3 +0,0 @@
1
- import type { CommandOptions, ReplCommand } from "./types.ts";
2
- export declare const helpCommand: ({ terminal }: CommandOptions, cmds: Map<string, ReplCommand>) => ReplCommand;
3
- //# sourceMappingURL=help-command.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"help-command.d.ts","sourceRoot":"","sources":["../../source/commands/help-command.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9D,eAAO,MAAM,WAAW,GACtB,cAAc,cAAc,EAC5B,MAAM,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,KAC7B,WAwDF,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { CommandOptions, ReplCommand } from "./types.ts";
2
- export declare const historyCommand: ({ messageHistory, terminal, config, modelManager, tokenTracker, }: CommandOptions) => ReplCommand;
3
- //# sourceMappingURL=history-command.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"history-command.d.ts","sourceRoot":"","sources":["../../source/commands/history-command.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAqL9D,eAAO,MAAM,cAAc,GAAI,mEAM5B,cAAc,KAAG,WAuOnB,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { CommandOptions, ReplCommand } from "./types.ts";
2
- export declare const initCommand: ({ terminal, modelManager, tokenCounter, workspace, }: CommandOptions) => ReplCommand;
3
- //# sourceMappingURL=init-command.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"init-command.d.ts","sourceRoot":"","sources":["../../source/commands/init-command.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAqB9D,eAAO,MAAM,WAAW,GAAI,sDAKzB,cAAc,KAAG,WAyEnB,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { CommandOptions, ReplCommand } from "./types.ts";
2
- export declare const lastLogCommand: ({ terminal }: CommandOptions) => ReplCommand;
3
- //# sourceMappingURL=last-log-command.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"last-log-command.d.ts","sourceRoot":"","sources":["../../source/commands/last-log-command.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAyC9D,eAAO,MAAM,cAAc,GAAI,cAAc,cAAc,KAAG,WA8F7D,CAAC"}
@@ -1,98 +0,0 @@
1
- import { readFile } from "node:fs/promises";
2
- import { join } from "node:path";
3
- import { config } from "../config.js";
4
- import { editor } from "../terminal/editor-prompt.js";
5
- import style from "../terminal/style.js";
6
- import { Text } from "../tui/index.js";
7
- import { glob } from "../utils/glob.js";
8
- const isoDateRegex = /^(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{3}Z)/;
9
- // Function to find the most recent log file
10
- async function findMostRecentLog(logDir) {
11
- const logPattern = join(logDir, "*-repl-message.json");
12
- const files = await glob(logPattern);
13
- if (files.length === 0) {
14
- return null;
15
- }
16
- const datedFiles = files
17
- .map((file) => {
18
- const filename = file.split("/").pop();
19
- if (!filename) {
20
- return null; // Skip if filename is somehow undefined
21
- }
22
- // Match the ISO date string at the beginning of the filename
23
- const match = filename.match(isoDateRegex);
24
- if (match?.[1]) {
25
- const date = new Date(match[1]);
26
- if (!Number.isNaN(date.getTime())) {
27
- return { file, date };
28
- }
29
- }
30
- return null; // Exclude files that don't match the pattern or have invalid dates
31
- })
32
- .filter((item) => item !== null);
33
- if (datedFiles.length === 0) {
34
- return null; // No valid log files found
35
- }
36
- // Sort files by date (descending)
37
- datedFiles.sort((a, b) => b.date.getTime() - a.date.getTime());
38
- return datedFiles[0]?.file ?? null; // The first file is the most recent
39
- }
40
- export const lastLogCommand = ({ terminal }) => {
41
- return {
42
- command: "/last-log",
43
- description: "Opens the most recent REPL audit log in the editor.",
44
- getSubCommands: () => Promise.resolve([]),
45
- execute: async () => {
46
- const logDir = config.app.ensurePathSync("audit");
47
- const mostRecentLog = await findMostRecentLog(logDir);
48
- if (!mostRecentLog) {
49
- terminal.error(`No REPL audit logs found in '${logDir}'.`);
50
- return "continue";
51
- }
52
- try {
53
- const content = await readFile(mostRecentLog, { encoding: "utf8" });
54
- // Use the editor prompt to display the content (read-only)
55
- await editor({
56
- message: `Viewing ${style.green(mostRecentLog)}`,
57
- postfix: ".json", // Set postfix for syntax highlighting if editor supports it
58
- default: content,
59
- // By not providing an onSubmit or similar handler to write the file,
60
- // and not calling writeFileSync after, this effectively becomes read-only.
61
- skipPrompt: true,
62
- });
63
- terminal.info("Closed log view");
64
- return "continue";
65
- }
66
- catch (error) {
67
- terminal.error(`Error reading or displaying log file ${mostRecentLog}: ${error}`);
68
- return "continue";
69
- }
70
- },
71
- async handle(_args, { tui, container, editor, }) {
72
- const logDir = config.app.ensurePathSync("audit");
73
- const mostRecentLog = await findMostRecentLog(logDir);
74
- if (!mostRecentLog) {
75
- container.addChild(new Text(style.red(`No REPL audit logs found in '${logDir}'.`), 0, 1));
76
- tui.requestRender();
77
- editor.setText("");
78
- return "continue";
79
- }
80
- try {
81
- const content = await readFile(mostRecentLog, { encoding: "utf8" });
82
- // For TUI mode, we'll just display a message since we can't use the editor prompt
83
- container.addChild(new Text(`Viewing most recent log: ${style.blue(mostRecentLog)}`, 1, 0));
84
- container.addChild(new Text(`Content length: ${content.length} characters`, 2, 0));
85
- container.addChild(new Text(style.dim("Note: Full log viewing not available in TUI mode"), 3, 0));
86
- tui.requestRender();
87
- editor.setText("");
88
- return "continue";
89
- }
90
- catch (error) {
91
- container.addChild(new Text(style.red(`Error reading log file ${mostRecentLog}: ${error}`), 1, 0));
92
- tui.requestRender();
93
- editor.setText("");
94
- return "continue";
95
- }
96
- },
97
- };
98
- };
@@ -1,3 +0,0 @@
1
- import type { CommandOptions, ReplCommand } from "./types.ts";
2
- export declare const listDirectoriesCommand: ({ terminal, workspace, }: CommandOptions) => ReplCommand;
3
- //# sourceMappingURL=list-directories-command.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"list-directories-command.d.ts","sourceRoot":"","sources":["../../source/commands/list-directories-command.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9D,eAAO,MAAM,sBAAsB,GAAI,0BAGpC,cAAc,KAAG,WAmEnB,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { CommandOptions, ReplCommand } from "./types.ts";
2
- export declare function listToolsCommand(options: CommandOptions): ReplCommand;
3
- //# sourceMappingURL=list-tools-command.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"list-tools-command.d.ts","sourceRoot":"","sources":["../../source/commands/list-tools-command.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9D,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,cAAc,GAAG,WAAW,CAyJrE"}
@@ -1,124 +0,0 @@
1
- import style from "../terminal/style.js";
2
- import { initAgents, initTools } from "../tools/index.js";
3
- import { Text } from "../tui/index.js";
4
- export function listToolsCommand(options) {
5
- return {
6
- command: "/list-tools",
7
- description: "List all available static and dynamic tools.",
8
- aliases: ["/lt"],
9
- getSubCommands: async () => [],
10
- async execute(_args) {
11
- const { terminal } = options;
12
- try {
13
- const tools = await initTools({
14
- tokenCounter: options.tokenCounter,
15
- workspace: options.workspace,
16
- modelManager: options.modelManager,
17
- tokenTracker: options.tokenTracker,
18
- });
19
- const agentTools = await initAgents({
20
- terminal: options.terminal,
21
- modelManager: options.modelManager,
22
- tokenTracker: options.tokenTracker,
23
- tokenCounter: options.tokenCounter,
24
- workspace: options.workspace,
25
- });
26
- const toolNames = Object.keys({ ...tools, ...agentTools }).sort();
27
- terminal.writeln("Available tools:");
28
- terminal.lineBreak();
29
- // Separate static and dynamic tools
30
- const staticTools = [];
31
- const dynamicTools = [];
32
- for (const toolName of toolNames) {
33
- if (toolName.startsWith("dynamic-")) {
34
- dynamicTools.push(toolName);
35
- }
36
- else {
37
- staticTools.push(toolName);
38
- }
39
- }
40
- // Display static tools
41
- if (staticTools.length > 0) {
42
- terminal.writeln(" Static tools:");
43
- for (const toolName of staticTools) {
44
- terminal.writeln(` ${toolName}`);
45
- }
46
- }
47
- // Display dynamic tools
48
- if (dynamicTools.length > 0) {
49
- terminal.writeln(" Dynamic tools:");
50
- for (const toolName of dynamicTools) {
51
- terminal.writeln(` ${toolName}`);
52
- }
53
- }
54
- // Display summary
55
- terminal.writeln(`\n Total: ${staticTools.length} static, ${dynamicTools.length} dynamic`);
56
- return "continue";
57
- }
58
- catch (error) {
59
- terminal.error(`Error listing tools: ${error.message}`);
60
- return "continue";
61
- }
62
- },
63
- async handle(_args, { tui, container, editor, }) {
64
- try {
65
- const tools = await initTools({
66
- tokenCounter: options.tokenCounter,
67
- workspace: options.workspace,
68
- modelManager: options.modelManager,
69
- tokenTracker: options.tokenTracker,
70
- });
71
- const agentTools = await initAgents({
72
- terminal: options.terminal,
73
- modelManager: options.modelManager,
74
- tokenTracker: options.tokenTracker,
75
- tokenCounter: options.tokenCounter,
76
- workspace: options.workspace,
77
- });
78
- const toolNames = Object.keys({ ...tools, ...agentTools }).sort();
79
- container.addChild(new Text("Available tools:", 0, 1));
80
- // Separate static and dynamic tools
81
- const staticTools = [];
82
- const dynamicTools = [];
83
- for (const toolName of toolNames) {
84
- if (toolName.startsWith("dynamic-")) {
85
- dynamicTools.push(toolName);
86
- }
87
- else {
88
- staticTools.push(toolName);
89
- }
90
- }
91
- let lineIndex = 2;
92
- // Display static tools
93
- if (staticTools.length > 0) {
94
- container.addChild(new Text(" Static tools:", lineIndex, 0));
95
- lineIndex++;
96
- for (const toolName of staticTools) {
97
- container.addChild(new Text(` ${toolName}`, lineIndex, 0));
98
- lineIndex++;
99
- }
100
- }
101
- // Display dynamic tools
102
- if (dynamicTools.length > 0) {
103
- container.addChild(new Text(" Dynamic tools:", lineIndex, 0));
104
- lineIndex++;
105
- for (const toolName of dynamicTools) {
106
- container.addChild(new Text(` ${toolName}`, lineIndex, 0));
107
- lineIndex++;
108
- }
109
- }
110
- // Display summary
111
- container.addChild(new Text(`\n Total: ${staticTools.length} static, ${dynamicTools.length} dynamic`, lineIndex, 0));
112
- tui.requestRender();
113
- editor.setText("");
114
- return "continue";
115
- }
116
- catch (error) {
117
- container.addChild(new Text(style.red(`Error listing tools: ${error.message}`), 1, 0));
118
- tui.requestRender();
119
- editor.setText("");
120
- return "continue";
121
- }
122
- },
123
- };
124
- }
@@ -1,25 +0,0 @@
1
- import { type ModelName } from "../models/providers.ts";
2
- import { Container, Input } from "../tui/index.ts";
3
- import type { CommandOptions, ReplCommand } from "./types.ts";
4
- export declare function modelCommand(options: CommandOptions): ReplCommand;
5
- /**
6
- * Component that renders a model selector with search
7
- */
8
- export declare class ModelSelectorComponent extends Container {
9
- private searchInput;
10
- private listContainer;
11
- private allModels;
12
- private filteredModels;
13
- private selectedIndex;
14
- private currentModel;
15
- private onSelectCallback;
16
- private onCancelCallback;
17
- constructor(currentModel: ModelName, onSelect: (model: ModelName) => void, onCancel: () => void);
18
- private loadModels;
19
- private filterModels;
20
- private updateList;
21
- handleInput(keyData: string): void;
22
- private handleSelect;
23
- getSearchInput(): Input;
24
- }
25
- //# sourceMappingURL=model-command.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"model-command.d.ts","sourceRoot":"","sources":["../../source/commands/model-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,SAAS,EAKf,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EACL,SAAS,EAET,KAAK,EAIN,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9D,wBAAgB,YAAY,CAAC,OAAO,EAAE,cAAc,GAAG,WAAW,CAyRjE;AAaD;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,SAAS;IACnD,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,aAAa,CAAY;IACjC,OAAO,CAAC,SAAS,CAAmB;IACpC,OAAO,CAAC,cAAc,CAAmB;IACzC,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,YAAY,CAAY;IAChC,OAAO,CAAC,gBAAgB,CAA6B;IACrD,OAAO,CAAC,gBAAgB,CAAa;gBAGnC,YAAY,EAAE,SAAS,EACvB,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,EACpC,QAAQ,EAAE,MAAM,IAAI;IA0CtB,OAAO,CAAC,UAAU;IAKlB,OAAO,CAAC,YAAY;IAqBpB,OAAO,CAAC,UAAU;IAyDlB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAgClC,OAAO,CAAC,YAAY;IAIpB,cAAc,IAAI,KAAK;CAGxB"}