indusagi-coding-agent 0.1.38 → 0.1.40

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 (493) hide show
  1. package/CHANGELOG.md +22 -7
  2. package/{LICENSE.md → LICENSE} +0 -1
  3. package/README.md +2 -4
  4. package/dist/cli/args.d.ts +6 -128
  5. package/dist/cli/args.d.ts.map +1 -1
  6. package/dist/cli/args.js +277 -472
  7. package/dist/cli/args.js.map +1 -1
  8. package/dist/cli/config-selector.d.ts +9 -62
  9. package/dist/cli/config-selector.d.ts.map +1 -1
  10. package/dist/cli/config-selector.js +31 -146
  11. package/dist/cli/config-selector.js.map +1 -1
  12. package/dist/cli/file-processor.d.ts +1 -69
  13. package/dist/cli/file-processor.d.ts.map +1 -1
  14. package/dist/cli/file-processor.js +36 -267
  15. package/dist/cli/file-processor.js.map +1 -1
  16. package/dist/cli/list-models.d.ts +0 -60
  17. package/dist/cli/list-models.d.ts.map +1 -1
  18. package/dist/cli/list-models.js +53 -246
  19. package/dist/cli/list-models.js.map +1 -1
  20. package/dist/cli/session-picker.d.ts +1 -72
  21. package/dist/cli/session-picker.d.ts.map +1 -1
  22. package/dist/cli/session-picker.js +57 -231
  23. package/dist/cli/session-picker.js.map +1 -1
  24. package/dist/cli.js +25 -31
  25. package/dist/cli.js.map +1 -1
  26. package/dist/config.d.ts +0 -42
  27. package/dist/config.d.ts.map +1 -1
  28. package/dist/config.js +62 -97
  29. package/dist/config.js.map +1 -1
  30. package/dist/core/agent-session.d.ts +26 -2
  31. package/dist/core/agent-session.d.ts.map +1 -1
  32. package/dist/core/agent-session.js +78 -66
  33. package/dist/core/agent-session.js.map +1 -1
  34. package/dist/core/auth-storage.d.ts +4 -95
  35. package/dist/core/auth-storage.d.ts.map +1 -1
  36. package/dist/core/auth-storage.js +233 -288
  37. package/dist/core/auth-storage.js.map +1 -1
  38. package/dist/core/bash-executor.d.ts +0 -323
  39. package/dist/core/bash-executor.d.ts.map +1 -1
  40. package/dist/core/bash-executor.js +126 -359
  41. package/dist/core/bash-executor.js.map +1 -1
  42. package/dist/core/compaction/branch-summarization.d.ts +3 -3
  43. package/dist/core/compaction/branch-summarization.js +16 -16
  44. package/dist/core/compaction/branch-summarization.js.map +1 -1
  45. package/dist/core/compaction/compaction.d.ts +3 -3
  46. package/dist/core/compaction/compaction.js +40 -40
  47. package/dist/core/compaction/compaction.js.map +1 -1
  48. package/dist/core/compaction/index.d.ts +32 -4
  49. package/dist/core/compaction/index.d.ts.map +1 -1
  50. package/dist/core/compaction/index.js +30 -4
  51. package/dist/core/compaction/index.js.map +1 -1
  52. package/dist/core/compaction/utils.d.ts +1 -19
  53. package/dist/core/compaction/utils.d.ts.map +1 -1
  54. package/dist/core/compaction/utils.js +92 -113
  55. package/dist/core/compaction/utils.js.map +1 -1
  56. package/dist/core/discover-packages.d.ts +0 -4
  57. package/dist/core/discover-packages.d.ts.map +1 -1
  58. package/dist/core/discover-packages.js +41 -44
  59. package/dist/core/discover-packages.js.map +1 -1
  60. package/dist/core/event-bus.d.ts +1 -147
  61. package/dist/core/event-bus.d.ts.map +1 -1
  62. package/dist/core/event-bus.js +17 -106
  63. package/dist/core/event-bus.js.map +1 -1
  64. package/dist/core/exec.d.ts +0 -16
  65. package/dist/core/exec.d.ts.map +1 -1
  66. package/dist/core/exec.js +18 -27
  67. package/dist/core/exec.js.map +1 -1
  68. package/dist/core/export-html/ansi-to-html.ts +262 -0
  69. package/dist/core/export-html/index.ts +433 -0
  70. package/dist/core/export-html/template.html +48 -26
  71. package/dist/core/export-html/tool-renderer.d.ts +0 -21
  72. package/dist/core/export-html/tool-renderer.d.ts.map +1 -1
  73. package/dist/core/export-html/tool-renderer.js +35 -51
  74. package/dist/core/export-html/tool-renderer.js.map +1 -1
  75. package/dist/core/export-html/tool-renderer.ts +80 -0
  76. package/dist/core/export-html/vendor/highlight.min.js +401 -370
  77. package/dist/core/export-html/vendor/marked.min.js +71 -3
  78. package/dist/core/extensions/index.d.ts +7 -4
  79. package/dist/core/extensions/index.d.ts.map +1 -1
  80. package/dist/core/extensions/index.js +17 -3
  81. package/dist/core/extensions/index.js.map +1 -1
  82. package/dist/core/extensions/loader.d.ts +0 -6
  83. package/dist/core/extensions/loader.d.ts.map +1 -1
  84. package/dist/core/extensions/loader.js +60 -56
  85. package/dist/core/extensions/loader.js.map +1 -1
  86. package/dist/core/extensions/runner.d.ts +3 -0
  87. package/dist/core/extensions/runner.d.ts.map +1 -1
  88. package/dist/core/extensions/runner.js +48 -80
  89. package/dist/core/extensions/runner.js.map +1 -1
  90. package/dist/core/extensions/types.d.ts +50 -23
  91. package/dist/core/extensions/types.d.ts.map +1 -1
  92. package/dist/core/footer-data-provider.d.ts +2 -15
  93. package/dist/core/footer-data-provider.d.ts.map +1 -1
  94. package/dist/core/footer-data-provider.js +21 -33
  95. package/dist/core/footer-data-provider.js.map +1 -1
  96. package/dist/core/hooks/loader.js +2 -2
  97. package/dist/core/hooks/loader.js.map +1 -1
  98. package/dist/core/index.d.ts +29 -10
  99. package/dist/core/index.d.ts.map +1 -1
  100. package/dist/core/index.js +29 -10
  101. package/dist/core/index.js.map +1 -1
  102. package/dist/core/keybindings.d.ts +2 -179
  103. package/dist/core/keybindings.d.ts.map +1 -1
  104. package/dist/core/keybindings.js +64 -238
  105. package/dist/core/keybindings.js.map +1 -1
  106. package/dist/core/model-registry.d.ts +26 -181
  107. package/dist/core/model-registry.d.ts.map +1 -1
  108. package/dist/core/model-registry.js +228 -407
  109. package/dist/core/model-registry.js.map +1 -1
  110. package/dist/core/model-resolver.d.ts +0 -139
  111. package/dist/core/model-resolver.d.ts.map +1 -1
  112. package/dist/core/model-resolver.js +34 -215
  113. package/dist/core/model-resolver.js.map +1 -1
  114. package/dist/core/package-manager.d.ts +25 -57
  115. package/dist/core/package-manager.d.ts.map +1 -1
  116. package/dist/core/package-manager.js +326 -964
  117. package/dist/core/package-manager.js.map +1 -1
  118. package/dist/core/prompt-templates.d.ts +2 -34
  119. package/dist/core/prompt-templates.d.ts.map +1 -1
  120. package/dist/core/prompt-templates.js +122 -170
  121. package/dist/core/prompt-templates.js.map +1 -1
  122. package/dist/core/resource-loader.d.ts +19 -12
  123. package/dist/core/resource-loader.d.ts.map +1 -1
  124. package/dist/core/resource-loader.js +353 -467
  125. package/dist/core/resource-loader.js.map +1 -1
  126. package/dist/core/sdk.d.ts +2 -61
  127. package/dist/core/sdk.d.ts.map +1 -1
  128. package/dist/core/sdk.js +184 -252
  129. package/dist/core/sdk.js.map +1 -1
  130. package/dist/core/session-manager.d.ts +447 -1
  131. package/dist/core/session-manager.d.ts.map +1 -1
  132. package/dist/core/session-manager.js +1176 -1
  133. package/dist/core/session-manager.js.map +1 -1
  134. package/dist/core/settings-manager.d.ts +9 -12
  135. package/dist/core/settings-manager.d.ts.map +1 -1
  136. package/dist/core/settings-manager.js +170 -398
  137. package/dist/core/settings-manager.js.map +1 -1
  138. package/dist/core/skills.d.ts +2 -27
  139. package/dist/core/skills.d.ts.map +1 -1
  140. package/dist/core/skills.js +149 -212
  141. package/dist/core/skills.js.map +1 -1
  142. package/dist/core/subagents.d.ts +2 -2
  143. package/dist/core/subagents.d.ts.map +1 -1
  144. package/dist/core/subagents.js +21 -14
  145. package/dist/core/subagents.js.map +1 -1
  146. package/dist/core/system-prompt.d.ts +0 -11
  147. package/dist/core/system-prompt.d.ts.map +1 -1
  148. package/dist/core/system-prompt.js +168 -139
  149. package/dist/core/system-prompt.js.map +1 -1
  150. package/dist/core/timings.d.ts +1 -4
  151. package/dist/core/timings.d.ts.map +1 -1
  152. package/dist/core/timings.js +34 -18
  153. package/dist/core/timings.js.map +1 -1
  154. package/dist/core/todo-store.d.ts +20 -0
  155. package/dist/core/todo-store.d.ts.map +1 -0
  156. package/dist/core/todo-store.js +60 -0
  157. package/dist/core/todo-store.js.map +1 -0
  158. package/dist/core/tools/bash.d.ts +2 -0
  159. package/dist/core/tools/bash.d.ts.map +1 -0
  160. package/dist/core/tools/bash.js +2 -0
  161. package/dist/core/tools/bash.js.map +1 -0
  162. package/dist/core/tools/bg-process.d.ts +1 -6
  163. package/dist/core/tools/bg-process.d.ts.map +1 -1
  164. package/dist/core/tools/bg-process.js +4 -18
  165. package/dist/core/tools/bg-process.js.map +1 -1
  166. package/dist/core/tools/edit-diff.d.ts +9 -0
  167. package/dist/core/tools/edit-diff.d.ts.map +1 -0
  168. package/dist/core/tools/edit-diff.js +2 -0
  169. package/dist/core/tools/edit-diff.js.map +1 -0
  170. package/dist/core/tools/edit.d.ts +2 -0
  171. package/dist/core/tools/edit.d.ts.map +1 -0
  172. package/dist/core/tools/edit.js +2 -0
  173. package/dist/core/tools/edit.js.map +1 -0
  174. package/dist/core/tools/find.d.ts +2 -0
  175. package/dist/core/tools/find.d.ts.map +1 -0
  176. package/dist/core/tools/find.js +2 -0
  177. package/dist/core/tools/find.js.map +1 -0
  178. package/dist/core/tools/grep.d.ts +2 -0
  179. package/dist/core/tools/grep.d.ts.map +1 -0
  180. package/dist/core/tools/grep.js +2 -0
  181. package/dist/core/tools/grep.js.map +1 -0
  182. package/dist/core/tools/index.d.ts +8 -2
  183. package/dist/core/tools/index.d.ts.map +1 -1
  184. package/dist/core/tools/ls.d.ts +2 -0
  185. package/dist/core/tools/ls.d.ts.map +1 -0
  186. package/dist/core/tools/ls.js +2 -0
  187. package/dist/core/tools/ls.js.map +1 -0
  188. package/dist/core/tools/memory.d.ts +50 -1
  189. package/dist/core/tools/memory.d.ts.map +1 -1
  190. package/dist/core/tools/memory.js +11 -7
  191. package/dist/core/tools/memory.js.map +1 -1
  192. package/dist/core/tools/path-utils.d.ts +2 -0
  193. package/dist/core/tools/path-utils.d.ts.map +1 -0
  194. package/dist/core/tools/path-utils.js +2 -0
  195. package/dist/core/tools/path-utils.js.map +1 -0
  196. package/dist/core/tools/read.d.ts +2 -0
  197. package/dist/core/tools/read.d.ts.map +1 -0
  198. package/dist/core/tools/read.js +2 -0
  199. package/dist/core/tools/read.js.map +1 -0
  200. package/dist/core/tools/registry.d.ts +0 -15
  201. package/dist/core/tools/registry.d.ts.map +1 -1
  202. package/dist/core/tools/registry.js +13 -37
  203. package/dist/core/tools/registry.js.map +1 -1
  204. package/dist/core/tools/task.d.ts +17 -23
  205. package/dist/core/tools/task.d.ts.map +1 -1
  206. package/dist/core/tools/task.js +43 -82
  207. package/dist/core/tools/task.js.map +1 -1
  208. package/dist/core/tools/todo.d.ts +17 -20
  209. package/dist/core/tools/todo.d.ts.map +1 -1
  210. package/dist/core/tools/todo.js +79 -58
  211. package/dist/core/tools/todo.js.map +1 -1
  212. package/dist/core/tools/truncate.d.ts +2 -0
  213. package/dist/core/tools/truncate.d.ts.map +1 -0
  214. package/dist/core/tools/truncate.js +2 -0
  215. package/dist/core/tools/truncate.js.map +1 -0
  216. package/dist/core/tools/webfetch.d.ts +2 -0
  217. package/dist/core/tools/webfetch.d.ts.map +1 -0
  218. package/dist/core/tools/webfetch.js +2 -0
  219. package/dist/core/tools/webfetch.js.map +1 -0
  220. package/dist/core/tools/websearch.d.ts +2 -0
  221. package/dist/core/tools/websearch.d.ts.map +1 -0
  222. package/dist/core/tools/websearch.js +2 -0
  223. package/dist/core/tools/websearch.js.map +1 -0
  224. package/dist/core/tools/write.d.ts +2 -0
  225. package/dist/core/tools/write.d.ts.map +1 -0
  226. package/dist/core/tools/write.js +2 -0
  227. package/dist/core/tools/write.js.map +1 -0
  228. package/dist/index.d.ts +35 -29
  229. package/dist/index.d.ts.map +1 -1
  230. package/dist/index.js +33 -41
  231. package/dist/index.js.map +1 -1
  232. package/dist/main.d.ts.map +1 -1
  233. package/dist/main.js +237 -225
  234. package/dist/main.js.map +1 -1
  235. package/dist/migrations.d.ts +0 -25
  236. package/dist/migrations.d.ts.map +1 -1
  237. package/dist/migrations.js +129 -180
  238. package/dist/migrations.js.map +1 -1
  239. package/dist/modes/index.d.ts +13 -6
  240. package/dist/modes/index.d.ts.map +1 -1
  241. package/dist/modes/index.js +11 -5
  242. package/dist/modes/index.js.map +1 -1
  243. package/dist/modes/interactive/components/armin.d.ts +8 -23
  244. package/dist/modes/interactive/components/armin.d.ts.map +1 -1
  245. package/dist/modes/interactive/components/armin.js +217 -266
  246. package/dist/modes/interactive/components/armin.js.map +1 -1
  247. package/dist/modes/interactive/components/assistant-message.d.ts +2 -168
  248. package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
  249. package/dist/modes/interactive/components/assistant-message.js +61 -216
  250. package/dist/modes/interactive/components/assistant-message.js.map +1 -1
  251. package/dist/modes/interactive/components/bash-execution.d.ts +6 -313
  252. package/dist/modes/interactive/components/bash-execution.d.ts.map +1 -1
  253. package/dist/modes/interactive/components/bash-execution.js +86 -403
  254. package/dist/modes/interactive/components/bash-execution.js.map +1 -1
  255. package/dist/modes/interactive/components/bordered-loader.d.ts +1 -3
  256. package/dist/modes/interactive/components/bordered-loader.d.ts.map +1 -1
  257. package/dist/modes/interactive/components/bordered-loader.js +59 -29
  258. package/dist/modes/interactive/components/bordered-loader.js.map +1 -1
  259. package/dist/modes/interactive/components/branch-summary-message.d.ts +3 -3
  260. package/dist/modes/interactive/components/branch-summary-message.d.ts.map +1 -1
  261. package/dist/modes/interactive/components/branch-summary-message.js +30 -17
  262. package/dist/modes/interactive/components/branch-summary-message.js.map +1 -1
  263. package/dist/modes/interactive/components/compaction-summary-message.d.ts +3 -3
  264. package/dist/modes/interactive/components/compaction-summary-message.d.ts.map +1 -1
  265. package/dist/modes/interactive/components/compaction-summary-message.js +35 -18
  266. package/dist/modes/interactive/components/compaction-summary-message.js.map +1 -1
  267. package/dist/modes/interactive/components/config-selector.d.ts.map +1 -1
  268. package/dist/modes/interactive/components/config-selector.js +60 -68
  269. package/dist/modes/interactive/components/config-selector.js.map +1 -1
  270. package/dist/modes/interactive/components/countdown-timer.d.ts +2 -6
  271. package/dist/modes/interactive/components/countdown-timer.d.ts.map +1 -1
  272. package/dist/modes/interactive/components/countdown-timer.js +32 -18
  273. package/dist/modes/interactive/components/countdown-timer.js.map +1 -1
  274. package/dist/modes/interactive/components/custom-editor.d.ts +1 -5
  275. package/dist/modes/interactive/components/custom-editor.d.ts.map +1 -1
  276. package/dist/modes/interactive/components/custom-editor.js +45 -37
  277. package/dist/modes/interactive/components/custom-editor.js.map +1 -1
  278. package/dist/modes/interactive/components/custom-message.d.ts +5 -6
  279. package/dist/modes/interactive/components/custom-message.d.ts.map +1 -1
  280. package/dist/modes/interactive/components/custom-message.js +43 -53
  281. package/dist/modes/interactive/components/custom-message.js.map +1 -1
  282. package/dist/modes/interactive/components/diff.d.ts +0 -3
  283. package/dist/modes/interactive/components/diff.d.ts.map +1 -1
  284. package/dist/modes/interactive/components/diff.js +101 -108
  285. package/dist/modes/interactive/components/diff.js.map +1 -1
  286. package/dist/modes/interactive/components/dynamic-border.d.ts +7 -2
  287. package/dist/modes/interactive/components/dynamic-border.d.ts.map +1 -1
  288. package/dist/modes/interactive/components/dynamic-border.js +24 -4
  289. package/dist/modes/interactive/components/dynamic-border.js.map +1 -1
  290. package/dist/modes/interactive/components/extension-editor.d.ts +5 -9
  291. package/dist/modes/interactive/components/extension-editor.d.ts.map +1 -1
  292. package/dist/modes/interactive/components/extension-editor.js +43 -46
  293. package/dist/modes/interactive/components/extension-editor.js.map +1 -1
  294. package/dist/modes/interactive/components/extension-input.d.ts +4 -9
  295. package/dist/modes/interactive/components/extension-input.d.ts.map +1 -1
  296. package/dist/modes/interactive/components/extension-input.js +45 -28
  297. package/dist/modes/interactive/components/extension-input.js.map +1 -1
  298. package/dist/modes/interactive/components/extension-selector.d.ts +7 -12
  299. package/dist/modes/interactive/components/extension-selector.d.ts.map +1 -1
  300. package/dist/modes/interactive/components/extension-selector.js +54 -32
  301. package/dist/modes/interactive/components/extension-selector.js.map +1 -1
  302. package/dist/modes/interactive/components/footer.d.ts +2 -11
  303. package/dist/modes/interactive/components/footer.d.ts.map +1 -1
  304. package/dist/modes/interactive/components/footer.js +135 -183
  305. package/dist/modes/interactive/components/footer.js.map +1 -1
  306. package/dist/modes/interactive/components/index.d.ts +79 -30
  307. package/dist/modes/interactive/components/index.d.ts.map +1 -1
  308. package/dist/modes/interactive/components/index.js +73 -31
  309. package/dist/modes/interactive/components/index.js.map +1 -1
  310. package/dist/modes/interactive/components/keybinding-hints.d.ts +0 -18
  311. package/dist/modes/interactive/components/keybinding-hints.d.ts.map +1 -1
  312. package/dist/modes/interactive/components/keybinding-hints.js +24 -31
  313. package/dist/modes/interactive/components/keybinding-hints.js.map +1 -1
  314. package/dist/modes/interactive/components/login-dialog.d.ts +11 -24
  315. package/dist/modes/interactive/components/login-dialog.d.ts.map +1 -1
  316. package/dist/modes/interactive/components/login-dialog.js +89 -86
  317. package/dist/modes/interactive/components/login-dialog.js.map +1 -1
  318. package/dist/modes/interactive/components/model-selector.d.ts +15 -19
  319. package/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
  320. package/dist/modes/interactive/components/model-selector.js +104 -157
  321. package/dist/modes/interactive/components/model-selector.js.map +1 -1
  322. package/dist/modes/interactive/components/oauth-selector.d.ts.map +1 -1
  323. package/dist/modes/interactive/components/oauth-selector.js +5 -5
  324. package/dist/modes/interactive/components/oauth-selector.js.map +1 -1
  325. package/dist/modes/interactive/components/scoped-models-selector.d.ts +12 -22
  326. package/dist/modes/interactive/components/scoped-models-selector.d.ts.map +1 -1
  327. package/dist/modes/interactive/components/scoped-models-selector.js +111 -132
  328. package/dist/modes/interactive/components/scoped-models-selector.js.map +1 -1
  329. package/dist/modes/interactive/components/session-selector-search.d.ts +3 -3
  330. package/dist/modes/interactive/components/session-selector-search.d.ts.map +1 -1
  331. package/dist/modes/interactive/components/session-selector-search.js +92 -103
  332. package/dist/modes/interactive/components/session-selector-search.js.map +1 -1
  333. package/dist/modes/interactive/components/session-selector.d.ts.map +1 -1
  334. package/dist/modes/interactive/components/session-selector.js +28 -39
  335. package/dist/modes/interactive/components/session-selector.js.map +1 -1
  336. package/dist/modes/interactive/components/settings-selector.d.ts +1 -1
  337. package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
  338. package/dist/modes/interactive/components/settings-selector.js +111 -203
  339. package/dist/modes/interactive/components/settings-selector.js.map +1 -1
  340. package/dist/modes/interactive/components/show-images-selector.d.ts +1 -1
  341. package/dist/modes/interactive/components/show-images-selector.d.ts.map +1 -1
  342. package/dist/modes/interactive/components/show-images-selector.js +17 -19
  343. package/dist/modes/interactive/components/show-images-selector.js.map +1 -1
  344. package/dist/modes/interactive/components/skill-invocation-message.d.ts +3 -3
  345. package/dist/modes/interactive/components/skill-invocation-message.d.ts.map +1 -1
  346. package/dist/modes/interactive/components/skill-invocation-message.js +29 -19
  347. package/dist/modes/interactive/components/skill-invocation-message.js.map +1 -1
  348. package/dist/modes/interactive/components/theme-selector.d.ts +2 -2
  349. package/dist/modes/interactive/components/theme-selector.d.ts.map +1 -1
  350. package/dist/modes/interactive/components/theme-selector.js +20 -25
  351. package/dist/modes/interactive/components/theme-selector.js.map +1 -1
  352. package/dist/modes/interactive/components/thinking-selector.d.ts +1 -1
  353. package/dist/modes/interactive/components/thinking-selector.d.ts.map +1 -1
  354. package/dist/modes/interactive/components/thinking-selector.js +19 -20
  355. package/dist/modes/interactive/components/thinking-selector.js.map +1 -1
  356. package/dist/modes/interactive/components/tool-execution.d.ts +12 -10
  357. package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -1
  358. package/dist/modes/interactive/components/tool-execution.js +14 -8
  359. package/dist/modes/interactive/components/tool-execution.js.map +1 -1
  360. package/dist/modes/interactive/components/tree-selector.d.ts.map +1 -1
  361. package/dist/modes/interactive/components/tree-selector.js +53 -60
  362. package/dist/modes/interactive/components/tree-selector.js.map +1 -1
  363. package/dist/modes/interactive/components/user-message-selector.d.ts +3 -9
  364. package/dist/modes/interactive/components/user-message-selector.d.ts.map +1 -1
  365. package/dist/modes/interactive/components/user-message-selector.js +57 -68
  366. package/dist/modes/interactive/components/user-message-selector.js.map +1 -1
  367. package/dist/modes/interactive/components/visual-truncate.d.ts +0 -12
  368. package/dist/modes/interactive/components/visual-truncate.d.ts.map +1 -1
  369. package/dist/modes/interactive/components/visual-truncate.js +14 -22
  370. package/dist/modes/interactive/components/visual-truncate.js.map +1 -1
  371. package/dist/modes/interactive/interactive-mode.d.ts +6 -0
  372. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  373. package/dist/modes/interactive/interactive-mode.js +118 -113
  374. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  375. package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
  376. package/dist/modes/interactive/theme/theme.js +189 -39
  377. package/dist/modes/interactive/theme/theme.js.map +1 -1
  378. package/dist/modes/rpc/rpc-client.d.ts +8 -1
  379. package/dist/modes/rpc/rpc-client.d.ts.map +1 -1
  380. package/dist/modes/rpc/rpc-client.js +88 -59
  381. package/dist/modes/rpc/rpc-client.js.map +1 -1
  382. package/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
  383. package/dist/modes/rpc/rpc-mode.js +24 -46
  384. package/dist/modes/rpc/rpc-mode.js.map +1 -1
  385. package/dist/modes/rpc/rpc-types.d.ts +75 -409
  386. package/dist/modes/rpc/rpc-types.d.ts.map +1 -1
  387. package/dist/modes/rpc/rpc-types.js +21 -360
  388. package/dist/modes/rpc/rpc-types.js.map +1 -1
  389. package/dist/observability/core/config.d.ts +28 -0
  390. package/dist/observability/core/config.d.ts.map +1 -0
  391. package/dist/observability/core/config.js +150 -0
  392. package/dist/observability/core/config.js.map +1 -0
  393. package/dist/observability/core/event-bus.d.ts +15 -0
  394. package/dist/observability/core/event-bus.d.ts.map +1 -0
  395. package/dist/observability/core/event-bus.js +37 -0
  396. package/dist/observability/core/event-bus.js.map +1 -0
  397. package/dist/observability/core/index.d.ts +12 -0
  398. package/dist/observability/core/index.d.ts.map +1 -0
  399. package/dist/observability/core/index.js +14 -0
  400. package/dist/observability/core/index.js.map +1 -0
  401. package/dist/observability/core/observability.d.ts +63 -0
  402. package/dist/observability/core/observability.d.ts.map +1 -0
  403. package/dist/observability/core/observability.js +127 -0
  404. package/dist/observability/core/observability.js.map +1 -0
  405. package/dist/observability/core/span.d.ts +37 -0
  406. package/dist/observability/core/span.d.ts.map +1 -0
  407. package/dist/observability/core/span.js +90 -0
  408. package/dist/observability/core/span.js.map +1 -0
  409. package/dist/observability/core/tracer.d.ts +22 -0
  410. package/dist/observability/core/tracer.d.ts.map +1 -0
  411. package/dist/observability/core/tracer.js +79 -0
  412. package/dist/observability/core/tracer.js.map +1 -0
  413. package/dist/observability/core/types.d.ts +155 -0
  414. package/dist/observability/core/types.d.ts.map +1 -0
  415. package/dist/observability/core/types.js +38 -0
  416. package/dist/observability/core/types.js.map +1 -0
  417. package/dist/observability/exporters/base-exporter.d.ts +16 -0
  418. package/dist/observability/exporters/base-exporter.d.ts.map +1 -0
  419. package/dist/observability/exporters/base-exporter.js +26 -0
  420. package/dist/observability/exporters/base-exporter.js.map +1 -0
  421. package/dist/observability/exporters/console-exporter.d.ts +22 -0
  422. package/dist/observability/exporters/console-exporter.d.ts.map +1 -0
  423. package/dist/observability/exporters/console-exporter.js +80 -0
  424. package/dist/observability/exporters/console-exporter.js.map +1 -0
  425. package/dist/observability/exporters/file-exporter.d.ts +31 -0
  426. package/dist/observability/exporters/file-exporter.d.ts.map +1 -0
  427. package/dist/observability/exporters/file-exporter.js +120 -0
  428. package/dist/observability/exporters/file-exporter.js.map +1 -0
  429. package/dist/observability/exporters/index.d.ts +12 -0
  430. package/dist/observability/exporters/index.d.ts.map +1 -0
  431. package/dist/observability/exporters/index.js +11 -0
  432. package/dist/observability/exporters/index.js.map +1 -0
  433. package/dist/observability/exporters/langfuse-exporter.d.ts +27 -0
  434. package/dist/observability/exporters/langfuse-exporter.d.ts.map +1 -0
  435. package/dist/observability/exporters/langfuse-exporter.js +146 -0
  436. package/dist/observability/exporters/langfuse-exporter.js.map +1 -0
  437. package/dist/observability/exporters/sentry-exporter.d.ts +22 -0
  438. package/dist/observability/exporters/sentry-exporter.d.ts.map +1 -0
  439. package/dist/observability/exporters/sentry-exporter.js +121 -0
  440. package/dist/observability/exporters/sentry-exporter.js.map +1 -0
  441. package/dist/observability/index.d.ts +3 -0
  442. package/dist/observability/index.d.ts.map +1 -0
  443. package/dist/observability/index.js +3 -0
  444. package/dist/observability/index.js.map +1 -0
  445. package/dist/utils/changelog.d.ts +1 -2
  446. package/dist/utils/changelog.d.ts.map +1 -1
  447. package/dist/utils/changelog.js +53 -61
  448. package/dist/utils/changelog.js.map +1 -1
  449. package/dist/utils/clipboard-image.d.ts.map +1 -1
  450. package/dist/utils/clipboard-image.js +77 -83
  451. package/dist/utils/clipboard-image.js.map +1 -1
  452. package/dist/utils/clipboard.d.ts.map +1 -1
  453. package/dist/utils/clipboard.js +62 -49
  454. package/dist/utils/clipboard.js.map +1 -1
  455. package/dist/utils/image-convert.d.ts +6 -6
  456. package/dist/utils/image-convert.d.ts.map +1 -1
  457. package/dist/utils/image-convert.js +29 -23
  458. package/dist/utils/image-convert.js.map +1 -1
  459. package/dist/utils/image-resize.d.ts +0 -17
  460. package/dist/utils/image-resize.d.ts.map +1 -1
  461. package/dist/utils/image-resize.js +100 -138
  462. package/dist/utils/image-resize.js.map +1 -1
  463. package/dist/utils/mime.d.ts +1 -0
  464. package/dist/utils/mime.d.ts.map +1 -1
  465. package/dist/utils/mime.js +35 -15
  466. package/dist/utils/mime.js.map +1 -1
  467. package/dist/utils/photon.d.ts +4 -15
  468. package/dist/utils/photon.d.ts.map +1 -1
  469. package/dist/utils/photon.js +71 -60
  470. package/dist/utils/photon.js.map +1 -1
  471. package/dist/utils/shell.d.ts +4 -21
  472. package/dist/utils/shell.d.ts.map +1 -1
  473. package/dist/utils/shell.js +101 -124
  474. package/dist/utils/shell.js.map +1 -1
  475. package/dist/utils/sleep.d.ts +1 -1
  476. package/dist/utils/sleep.d.ts.map +1 -1
  477. package/dist/utils/sleep.js +32 -8
  478. package/dist/utils/sleep.js.map +1 -1
  479. package/dist/utils/tools-manager.d.ts +4 -2
  480. package/dist/utils/tools-manager.d.ts.map +1 -1
  481. package/dist/utils/tools-manager.js +96 -122
  482. package/dist/utils/tools-manager.js.map +1 -1
  483. package/docs/PI_MONO_MIT_REMOVAL_GUIDE.md +2132 -0
  484. package/docs/SAME_TO_SAME_PARITY_REPORT.md +312 -0
  485. package/examples/README.md +12 -0
  486. package/package.json +62 -88
  487. package/dist/modes/interactive/theme/dark.json +0 -85
  488. package/dist/modes/interactive/theme/light.json +0 -84
  489. package/dist/modes/interactive/theme/theme-schema.json +0 -335
  490. package/docs/FEATURES.md +0 -306
  491. package/docs/MCP.md +0 -341
  492. package/docs/MEMORY.md +0 -443
  493. package/examples/mcp-servers.example.json +0 -50
@@ -1,89 +1,20 @@
1
- /**
2
- * File Processor - Handle @file CLI arguments into text content and image attachments
3
- *
4
- * Responsibilities:
5
- * - Parse @file arguments from CLI
6
- * - Validate file existence and accessibility
7
- * - Read text files and format for AI context
8
- * - Process image files with optional resizing
9
- * - Handle empty files gracefully
10
- * - Provide clear error messages for file access issues
11
- *
12
- * Based on file handling patterns from indusagi-agent
13
- * Original: https://github.com/varunisrani/indusagi-ts/vendor/indusagi-agent
14
- *
15
- * Adapted to:
16
- * - Improve error messages
17
- * - Add comprehensive documentation
18
- * - Add file type validation
19
- * - Add file size limit checks
20
- * - Enhance security by validating file paths
21
- */
22
- // ============================================================================
23
- // IMPORTS
24
- // ============================================================================
25
- // Built-in modules
26
1
  import { access, readFile, stat } from "node:fs/promises";
27
- import { resolve } from "path";
28
- import chalk from "chalk";
29
- // Local module imports
2
+ import { extname, resolve } from "node:path";
30
3
  import { resolveReadPath } from "indusagi/agent";
31
- import { formatDimensionNote, resizeImage } from "../utils/image-resize.js";
32
- import { detectSupportedImageMimeTypeFromFile } from "../utils/mime.js";
33
- // ============================================================================
34
- // CONSTANTS
35
- // ============================================================================
36
- /** Maximum file size for text files in bytes (10MB) */
37
4
  const MAX_TEXT_FILE_SIZE = 10 * 1024 * 1024;
38
- /** Maximum file size for images in bytes (20MB) */
39
5
  const MAX_IMAGE_FILE_SIZE = 20 * 1024 * 1024;
40
- /** Supported text file extensions */
41
- const SUPPORTED_TEXT_EXTENSIONS = new Set([
42
- ".txt",
43
- ".md",
44
- ".ts",
45
- ".tsx",
46
- ".js",
47
- ".jsx",
48
- ".json",
49
- ".yaml",
50
- ".yml",
51
- ".xml",
52
- ".html",
53
- ".css",
54
- ".py",
55
- ".rs",
56
- ".go",
57
- ".java",
58
- ".c",
59
- ".cpp",
60
- ".h",
61
- ".hpp",
62
- ".sh",
63
- ".bash",
64
- ".zsh",
65
- ".fish",
66
- ".ps1",
67
- ".sql",
68
- ".graphql",
69
- ".gql",
6
+ const TEXT_EXTENSIONS = new Set([
7
+ ".txt", ".md", ".ts", ".tsx", ".js", ".jsx", ".json", ".yaml", ".yml", ".xml", ".html", ".css",
8
+ ".py", ".rs", ".go", ".java", ".c", ".cpp", ".h", ".hpp", ".sh", ".bash", ".zsh", ".fish", ".ps1",
9
+ ".sql", ".graphql", ".gql",
70
10
  ]);
71
- /** Supported image MIME types */
72
- const SUPPORTED_IMAGE_MIME_TYPES = new Set([
73
- "image/jpeg",
74
- "image/png",
75
- "image/gif",
76
- "image/webp",
77
- ]);
78
- // ============================================================================
79
- // CUSTOM ERROR CLASSES
80
- // ============================================================================
81
- /**
82
- * File processing error with helpful suggestions
83
- *
84
- * @class FileProcessError
85
- * @extends {Error}
86
- */
11
+ const IMAGE_MIME_BY_EXT = {
12
+ ".jpg": "image/jpeg",
13
+ ".jpeg": "image/jpeg",
14
+ ".png": "image/png",
15
+ ".gif": "image/gif",
16
+ ".webp": "image/webp",
17
+ };
87
18
  export class FileProcessError extends Error {
88
19
  constructor(message, code, suggestion) {
89
20
  super(message);
@@ -92,213 +23,51 @@ export class FileProcessError extends Error {
92
23
  this.name = "FileProcessError";
93
24
  }
94
25
  }
95
- // ============================================================================
96
- // VALIDATION FUNCTIONS
97
- // ============================================================================
98
- /**
99
- * Validate file extension against supported text files
100
- *
101
- * @param filePath - Path to the file
102
- * @returns True if file has a supported text extension
103
- */
104
- function isSupportedTextFile(filePath) {
105
- const ext = filePath.toLowerCase().slice(filePath.lastIndexOf("."));
106
- return SUPPORTED_TEXT_EXTENSIONS.has(ext);
26
+ function isTextFile(filePath) {
27
+ return TEXT_EXTENSIONS.has(extname(filePath).toLowerCase());
107
28
  }
108
- /**
109
- * Check if MIME type is a supported image
110
- *
111
- * @param mimeType - The MIME type to check
112
- * @returns True if MIME type is in supported image types
113
- */
114
- function isSupportedImageMimeType(mimeType) {
115
- return SUPPORTED_IMAGE_MIME_TYPES.has(mimeType);
29
+ function detectImageMimeType(filePath) {
30
+ return IMAGE_MIME_BY_EXT[extname(filePath).toLowerCase()];
116
31
  }
117
- /**
118
- * Validate file size against limits
119
- *
120
- * @param filePath - Path to the file (for error messages)
121
- * @param size - File size in bytes
122
- * @param mimeType - Optional MIME type for determining which limit to apply
123
- * @throws {FileProcessError} If file size exceeds limit
124
- */
125
32
  function validateFileSize(filePath, size, mimeType) {
126
- const maxSize = mimeType && isSupportedImageMimeType(mimeType)
127
- ? MAX_IMAGE_FILE_SIZE
128
- : MAX_TEXT_FILE_SIZE;
33
+ const maxSize = mimeType ? MAX_IMAGE_FILE_SIZE : MAX_TEXT_FILE_SIZE;
129
34
  if (size > maxSize) {
130
- const maxSizeMB = (maxSize / (1024 * 1024)).toFixed(1);
131
- throw new FileProcessError(`File too large: ${filePath} (${(size / (1024 * 1024)).toFixed(1)}MB, max ${maxSizeMB}MB)`, "FILE_TOO_LARGE", "Consider compressing the file or splitting it into smaller parts");
35
+ const actualMb = (size / (1024 * 1024)).toFixed(1);
36
+ const maxMb = (maxSize / (1024 * 1024)).toFixed(1);
37
+ throw new FileProcessError(`File too large: ${filePath} (${actualMb}MB, max ${maxMb}MB)`, "FILE_TOO_LARGE", "Split the file or reduce its size before retrying.");
132
38
  }
133
39
  }
134
- // ============================================================================
135
- // MAIN PROCESSING FUNCTIONS
136
- // ============================================================================
137
- /**
138
- * Process @file arguments into text content and image attachments
139
- *
140
- * This function:
141
- * 1. Resolves and validates each file path
142
- * 2. Checks file existence and accessibility
143
- * 3. Skips empty files
144
- * 4. Detects file type (text or image)
145
- * 5. Reads and formats text files with <file> tags
146
- * 6. Processes images with optional resizing
147
- * 7. Validates file sizes
148
- *
149
- * @param fileArgs - Array of file argument strings (from @file syntax)
150
- * @param options - Processing options including image resize behavior
151
- * @returns ProcessedFiles object with formatted text and image attachments
152
- *
153
- * @throws {FileProcessError} If file not found, cannot be read, or exceeds size limit
154
- * @throws {Error} If image processing fails
155
- *
156
- * @example
157
- * ```typescript
158
- * const result = await processFileArguments(["prompt.md", "image.png"], {
159
- * autoResizeImages: true
160
- * });
161
- * // Returns: { text: "<file name=\"...\">...</file>\n...", images: [...] }
162
- * ```
163
- */
164
- export async function processFileArguments(fileArgs, options) {
165
- const autoResizeImages = options?.autoResizeImages ?? true;
40
+ export async function processFileArguments(fileArgs, _options) {
166
41
  let text = "";
167
42
  const images = [];
168
43
  for (const fileArg of fileArgs) {
169
- // ========================================================================
170
- // PATH RESOLUTION AND VALIDATION
171
- // ========================================================================
172
- /**
173
- * Expand and resolve path
174
- * Handles:
175
- * - ~ expansion to home directory
176
- * - macOS screenshot Unicode spaces
177
- * - Relative to absolute path conversion
178
- */
179
44
  const absolutePath = resolve(resolveReadPath(fileArg, process.cwd()));
180
- /**
181
- * Check if file exists
182
- * Fails early with clear error message if file doesn't exist
183
- */
184
45
  try {
185
46
  await access(absolutePath);
186
47
  }
187
48
  catch {
188
- throw new FileProcessError(`File not found: ${absolutePath}`, "FILE_NOT_FOUND", `Check that the file exists: ls -la "${absolutePath}"`);
49
+ throw new FileProcessError(`File not found: ${absolutePath}`, "FILE_NOT_FOUND", `Check that the file exists: ls -la \"${absolutePath}\"`);
189
50
  }
190
- // ========================================================================
191
- // FILE STATS AND VALIDATION
192
- // ========================================================================
193
- /**
194
- * Get file statistics
195
- * Used to check file size and detect empty files
196
- */
197
51
  const stats = await stat(absolutePath);
198
- /**
199
- * Skip empty files
200
- * Empty files provide no useful context
201
- */
52
+ if (!stats.isFile()) {
53
+ throw new FileProcessError(`Not a file: ${absolutePath}`, "NOT_A_FILE");
54
+ }
202
55
  if (stats.size === 0) {
203
- console.warn(chalk.yellow(`Warning: Skipping empty file: ${absolutePath}`));
204
56
  continue;
205
57
  }
206
- // ========================================================================
207
- // FILE TYPE DETECTION
208
- // ========================================================================
209
- /**
210
- * Detect MIME type to determine file type
211
- * Returns undefined for non-image (text) files
212
- */
213
- const mimeType = await detectSupportedImageMimeTypeFromFile(absolutePath);
214
- // ========================================================================
215
- // FILE SIZE VALIDATION
216
- // ========================================================================
217
- /**
218
- * Validate file size before processing
219
- * Prevents loading excessively large files into memory
220
- */
221
- validateFileSize(absolutePath, stats.size, mimeType ?? undefined);
222
- // ========================================================================
223
- // IMAGE FILE PROCESSING
224
- // ========================================================================
225
- if (mimeType && isSupportedImageMimeType(mimeType)) {
226
- /**
227
- * Read image file contents
228
- */
229
- const content = await readFile(absolutePath);
230
- const base64Content = content.toString("base64");
231
- let attachment;
232
- let dimensionNote;
233
- /**
234
- * Optionally resize image
235
- * Resizes to max 2000x2000 while maintaining aspect ratio
236
- * This reduces token usage and improves performance
237
- */
238
- if (autoResizeImages) {
239
- const resized = await resizeImage({ type: "image", data: base64Content, mimeType });
240
- dimensionNote = formatDimensionNote(resized);
241
- attachment = {
242
- type: "image",
243
- mimeType: resized.mimeType,
244
- data: resized.data,
245
- };
246
- }
247
- else {
248
- /**
249
- * Use original image without resizing
250
- */
251
- attachment = {
252
- type: "image",
253
- mimeType,
254
- data: base64Content,
255
- };
256
- }
257
- /**
258
- * Add image to attachments array
259
- */
260
- images.push(attachment);
261
- /**
262
- * Add text reference to image
263
- * Includes dimension note if image was resized
264
- * Format: <file name="/path/to/file.png">[resized to XxY]</file>
265
- */
266
- if (dimensionNote) {
267
- text += `<file name="${absolutePath}">${dimensionNote}</file>\n`;
268
- }
269
- else {
270
- text += `<file name="${absolutePath}"></file>\n`;
271
- }
58
+ const imageMimeType = detectImageMimeType(absolutePath);
59
+ validateFileSize(absolutePath, stats.size, imageMimeType);
60
+ if (imageMimeType) {
61
+ const data = await readFile(absolutePath);
62
+ images.push({ type: "image", mimeType: imageMimeType, data: data.toString("base64") });
63
+ continue;
272
64
  }
273
- // ========================================================================
274
- // TEXT FILE PROCESSING
275
- // ========================================================================
276
- else {
277
- /**
278
- * Validate file has a supported text extension
279
- * Prevents processing binary files as text
280
- */
281
- if (!isSupportedTextFile(absolutePath)) {
282
- console.warn(chalk.yellow(`Warning: File may not be text: ${absolutePath}. Attempting to read as text...`));
283
- }
284
- /**
285
- * Read text file contents
286
- * Uses UTF-8 encoding
287
- */
288
- try {
289
- const content = await readFile(absolutePath, "utf-8");
290
- text += `<file name="${absolutePath}">\n${content}\n</file>\n`;
291
- }
292
- catch (error) {
293
- /**
294
- * Handle read errors with helpful message
295
- * Includes suggestion for common issues
296
- */
297
- const message = error instanceof Error ? error.message : String(error);
298
- throw new FileProcessError(`Could not read file ${absolutePath}: ${message}`, "READ_ERROR", "Check file permissions and ensure it's a text file");
299
- }
65
+ if (!isTextFile(absolutePath)) {
66
+ throw new FileProcessError(`Unsupported file type: ${absolutePath}`, "UNSUPPORTED_FILE_TYPE", "Supported inputs are common text/code files and jpg/png/gif/webp images.");
300
67
  }
68
+ const content = await readFile(absolutePath, "utf-8");
69
+ text += `<file path=\"${absolutePath}\">\n${content}\n</file>\n\n`;
301
70
  }
302
- return { text, images };
71
+ return { text: text.trim(), images };
303
72
  }
304
73
  //# sourceMappingURL=file-processor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-processor.js","sourceRoot":"","sources":["../../src/cli/file-processor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,+EAA+E;AAC/E,UAAU;AACV,+EAA+E;AAE/E,mBAAmB;AACnB,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAI/B,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,uBAAuB;AACvB,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,EAAE,oCAAoC,EAAE,MAAM,kBAAkB,CAAC;AAExE,+EAA+E;AAC/E,YAAY;AACZ,+EAA+E;AAE/E,uDAAuD;AACvD,MAAM,kBAAkB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAE5C,mDAAmD;AACnD,MAAM,mBAAmB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAE7C,qCAAqC;AACrC,MAAM,yBAAyB,GAAG,IAAI,GAAG,CAAC;IACzC,MAAM;IACN,KAAK;IACL,KAAK;IACL,MAAM;IACN,KAAK;IACL,MAAM;IACN,OAAO;IACP,OAAO;IACP,MAAM;IACN,MAAM;IACN,OAAO;IACP,MAAM;IACN,KAAK;IACL,KAAK;IACL,KAAK;IACL,OAAO;IACP,IAAI;IACJ,MAAM;IACN,IAAI;IACJ,MAAM;IACN,KAAK;IACL,OAAO;IACP,MAAM;IACN,OAAO;IACP,MAAM;IACN,MAAM;IACN,UAAU;IACV,MAAM;CACN,CAAC,CAAC;AAEH,iCAAiC;AACjC,MAAM,0BAA0B,GAAG,IAAI,GAAG,CAAC;IAC1C,YAAY;IACZ,WAAW;IACX,WAAW;IACX,YAAY;CACZ,CAAC,CAAC;AA6BH,+EAA+E;AAC/E,uBAAuB;AACvB,+EAA+E;AAE/E;;;;;GAKG;AACH,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IAC1C,YACC,OAAe,EACC,IAAY,EACZ,UAAmB;QAEnC,KAAK,CAAC,OAAO,CAAC,CAAC;QAHC,SAAI,GAAJ,IAAI,CAAQ;QACZ,eAAU,GAAV,UAAU,CAAS;QAGnC,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;IAChC,CAAC;CACD;AAED,+EAA+E;AAC/E,uBAAuB;AACvB,+EAA+E;AAE/E;;;;;GAKG;AACH,SAAS,mBAAmB,CAAC,QAAgB;IAC5C,MAAM,GAAG,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IACpE,OAAO,yBAAyB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAC3C,CAAC;AAED;;;;;GAKG;AACH,SAAS,wBAAwB,CAAC,QAAgB;IACjD,OAAO,0BAA0B,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,gBAAgB,CAAC,QAAgB,EAAE,IAAY,EAAE,QAAiB;IAC1E,MAAM,OAAO,GAAG,QAAQ,IAAI,wBAAwB,CAAC,QAAQ,CAAC;QAC7D,CAAC,CAAC,mBAAmB;QACrB,CAAC,CAAC,kBAAkB,CAAC;IAEtB,IAAI,IAAI,GAAG,OAAO,EAAE,CAAC;QACpB,MAAM,SAAS,GAAG,CAAC,OAAO,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACvD,MAAM,IAAI,gBAAgB,CACzB,mBAAmB,QAAQ,KAAK,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,SAAS,KAAK,EAC1F,gBAAgB,EAChB,kEAAkE,CAClE,CAAC;IACH,CAAC;AACF,CAAC;AAED,+EAA+E;AAC/E,4BAA4B;AAC5B,+EAA+E;AAE/E;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACzC,QAAkB,EAClB,OAA4B;IAE5B,MAAM,gBAAgB,GAAG,OAAO,EAAE,gBAAgB,IAAI,IAAI,CAAC;IAC3D,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,MAAM,MAAM,GAAmB,EAAE,CAAC;IAElC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAChC,2EAA2E;QAC3E,iCAAiC;QACjC,2EAA2E;QAE3E;;;;;;WAMG;QACH,MAAM,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAEtE;;;WAGG;QACH,IAAI,CAAC;YACJ,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;QAC5B,CAAC;QAAC,MAAM,CAAC;YACR,MAAM,IAAI,gBAAgB,CACzB,mBAAmB,YAAY,EAAE,EACjC,gBAAgB,EAChB,uCAAuC,YAAY,GAAG,CACtD,CAAC;QACH,CAAC;QAED,2EAA2E;QAC3E,4BAA4B;QAC5B,2EAA2E;QAE3E;;;WAGG;QACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,CAAC;QAEvC;;;WAGG;QACH,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,iCAAiC,YAAY,EAAE,CAAC,CAAC,CAAC;YAC5E,SAAS;QACV,CAAC;QAED,2EAA2E;QAC3E,sBAAsB;QACtB,2EAA2E;QAE3E;;;WAGG;QACH,MAAM,QAAQ,GAAG,MAAM,oCAAoC,CAAC,YAAY,CAAC,CAAC;QAE1E,2EAA2E;QAC3E,uBAAuB;QACvB,2EAA2E;QAE3E;;;WAGG;QACH,gBAAgB,CAAC,YAAY,EAAE,KAAK,CAAC,IAAI,EAAE,QAAQ,IAAI,SAAS,CAAC,CAAC;QAElE,2EAA2E;QAC3E,wBAAwB;QACxB,2EAA2E;QAE3E,IAAI,QAAQ,IAAI,wBAAwB,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpD;;eAEG;YACH,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,CAAC;YAC7C,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAEjD,IAAI,UAAwB,CAAC;YAC7B,IAAI,aAAiC,CAAC;YAEtC;;;;eAIG;YACH,IAAI,gBAAgB,EAAE,CAAC;gBACtB,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAC,CAAC;gBACpF,aAAa,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;gBAC7C,UAAU,GAAG;oBACZ,IAAI,EAAE,OAAO;oBACb,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,IAAI,EAAE,OAAO,CAAC,IAAI;iBAClB,CAAC;YACH,CAAC;iBAAM,CAAC;gBACP;;mBAEG;gBACH,UAAU,GAAG;oBACZ,IAAI,EAAE,OAAO;oBACb,QAAQ;oBACR,IAAI,EAAE,aAAa;iBACnB,CAAC;YACH,CAAC;YAED;;eAEG;YACH,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAExB;;;;eAIG;YACH,IAAI,aAAa,EAAE,CAAC;gBACnB,IAAI,IAAI,eAAe,YAAY,KAAK,aAAa,WAAW,CAAC;YAClE,CAAC;iBAAM,CAAC;gBACP,IAAI,IAAI,eAAe,YAAY,aAAa,CAAC;YAClD,CAAC;QACF,CAAC;QACD,2EAA2E;QAC3E,uBAAuB;QACvB,2EAA2E;aAEtE,CAAC;YACL;;;eAGG;YACH,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,EAAE,CAAC;gBACxC,OAAO,CAAC,IAAI,CACX,KAAK,CAAC,MAAM,CACX,kCAAkC,YAAY,iCAAiC,CAC/E,CACD,CAAC;YACH,CAAC;YAED;;;eAGG;YACH,IAAI,CAAC;gBACJ,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;gBACtD,IAAI,IAAI,eAAe,YAAY,OAAO,OAAO,aAAa,CAAC;YAChE,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACzB;;;mBAGG;gBACH,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACvE,MAAM,IAAI,gBAAgB,CACzB,uBAAuB,YAAY,KAAK,OAAO,EAAE,EACjD,YAAY,EACZ,oDAAoD,CACpD,CAAC;YACH,CAAC;QACF,CAAC;IACF,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AACzB,CAAC"}
1
+ {"version":3,"file":"file-processor.js","sourceRoot":"","sources":["../../src/cli/file-processor.ts"],"names":[],"mappings":"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"}
@@ -1,69 +1,9 @@
1
- /**
2
- * Model List Formatter - Display available models with optional filtering
3
- *
4
- * Responsibilities:
5
- * - Retrieve available models from model registry
6
- * - Apply fuzzy search filtering
7
- * - Sort models by provider and ID
8
- * - Format model information in a readable table
9
- * - Display model capabilities (context, max output, thinking, images)
10
- *
11
- * Based on model listing patterns from indusagi-agent
12
- * Original: https://github.com/varunisrani/indusagi-ts/vendor/indusagi-agent
13
- *
14
- * Adapted to:
15
- * - Improve display formatting
16
- * - Add comprehensive documentation
17
- * - Add model filtering options
18
- * - Add model capability indicators
19
- * - Enhance UX with better sorting
20
- */
21
1
  import type { ModelRegistry } from "../core/model-registry.js";
22
- /**
23
- * Model filtering options
24
- *
25
- * @interface ModelFilterOptions
26
- * @property {string} [provider] - Filter by provider name
27
- * @property {boolean} [thinkingOnly] - Only show models with reasoning/thinking capability
28
- * @property {boolean} [imageSupport] - Only show models with image input support
29
- * @property {string} [searchPattern] - Fuzzy search pattern for model IDs and providers
30
- */
31
2
  export interface ModelFilterOptions {
32
3
  provider?: string;
33
4
  thinkingOnly?: boolean;
34
5
  imageSupport?: boolean;
35
6
  searchPattern?: string;
36
7
  }
37
- /**
38
- * List available models, optionally filtered by search pattern or criteria
39
- *
40
- * This function:
41
- * 1. Retrieves available models from the registry
42
- * 2. Applies any requested filters (provider, thinking, images, search)
43
- * 3. Sorts models by provider and ID
44
- * 4. Formats model information into a readable table
45
- * 5. Displays the table to stdout
46
- *
47
- * The table shows:
48
- * - Provider name
49
- * - Model ID
50
- * - Context window size
51
- * - Max output tokens
52
- * - Thinking/reasoning capability
53
- * - Image input support
54
- *
55
- * @param modelRegistry - Model registry instance
56
- * @param searchPattern - Optional fuzzy search pattern for model IDs/providers
57
- * @returns Promise that resolves when listing is complete
58
- *
59
- * @example
60
- * ```typescript
61
- * // List all models
62
- * await listModels(modelRegistry);
63
- *
64
- * // List models matching "sonnet"
65
- * await listModels(modelRegistry, "sonnet");
66
- * ```
67
- */
68
8
  export declare function listModels(modelRegistry: ModelRegistry, searchPattern?: string | ModelFilterOptions): Promise<void>;
69
9
  //# sourceMappingURL=list-models.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"list-models.d.ts","sourceRoot":"","sources":["../../src/cli/list-models.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAWH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAM/D;;;;;;;;GAQG;AACH,MAAM,WAAW,kBAAkB;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB;AAsID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAsB,UAAU,CAC/B,aAAa,EAAE,aAAa,EAC5B,aAAa,CAAC,EAAE,MAAM,GAAG,kBAAkB,GACzC,OAAO,CAAC,IAAI,CAAC,CA+Hf"}
1
+ {"version":3,"file":"list-models.d.ts","sourceRoot":"","sources":["../../src/cli/list-models.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAuCD,wBAAsB,UAAU,CAAC,aAAa,EAAE,aAAa,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAqDzH"}