indusagi-coding-agent 0.1.41 → 0.1.42

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 (950) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/dist/cli.d.ts.map +1 -1
  3. package/dist/cli.js.map +1 -1
  4. package/dist/command-line/args.d.ts +56 -0
  5. package/dist/command-line/args.d.ts.map +1 -0
  6. package/dist/command-line/args.js.map +1 -0
  7. package/dist/command-line/config-selector.d.ts +17 -0
  8. package/dist/command-line/config-selector.d.ts.map +1 -0
  9. package/dist/command-line/config-selector.js.map +1 -0
  10. package/dist/command-line/file-processor.d.ts.map +1 -0
  11. package/dist/command-line/file-processor.js.map +1 -0
  12. package/dist/command-line/list-models.d.ts +9 -0
  13. package/dist/command-line/list-models.d.ts.map +1 -0
  14. package/dist/command-line/list-models.js.map +1 -0
  15. package/dist/command-line/login-handler.d.ts.map +1 -0
  16. package/dist/command-line/login-handler.js +746 -0
  17. package/dist/command-line/login-handler.js.map +1 -0
  18. package/dist/command-line/session-picker.d.ts.map +1 -0
  19. package/dist/command-line/session-picker.js.map +1 -0
  20. package/dist/config.d.ts.map +1 -1
  21. package/dist/config.js +9 -5
  22. package/dist/config.js.map +1 -1
  23. package/dist/helpers/array.d.ts.map +1 -0
  24. package/dist/helpers/array.js.map +1 -0
  25. package/dist/helpers/changelog.d.ts.map +1 -0
  26. package/dist/helpers/changelog.js.map +1 -0
  27. package/dist/helpers/clipboard-image.d.ts.map +1 -0
  28. package/dist/helpers/clipboard-image.js.map +1 -0
  29. package/dist/helpers/clipboard.d.ts.map +1 -0
  30. package/dist/helpers/clipboard.js.map +1 -0
  31. package/dist/helpers/color-formatter.d.ts.map +1 -0
  32. package/dist/helpers/color-formatter.js.map +1 -0
  33. package/dist/helpers/data-transformer.d.ts.map +1 -0
  34. package/dist/helpers/data-transformer.js.map +1 -0
  35. package/dist/helpers/date-formatter.d.ts.map +1 -0
  36. package/dist/helpers/date-formatter.js.map +1 -0
  37. package/dist/helpers/error-handler.d.ts.map +1 -0
  38. package/dist/helpers/error-handler.js.map +1 -0
  39. package/dist/helpers/file-operations.d.ts.map +1 -0
  40. package/dist/helpers/file-operations.js.map +1 -0
  41. package/dist/helpers/frontmatter.d.ts.map +1 -0
  42. package/dist/helpers/frontmatter.js.map +1 -0
  43. package/dist/helpers/git.d.ts.map +1 -0
  44. package/dist/helpers/git.js.map +1 -0
  45. package/dist/helpers/image-convert.d.ts.map +1 -0
  46. package/dist/helpers/image-convert.js.map +1 -0
  47. package/dist/helpers/image-resize.d.ts.map +1 -0
  48. package/dist/helpers/image-resize.js.map +1 -0
  49. package/dist/helpers/json-formatter.d.ts.map +1 -0
  50. package/dist/helpers/json-formatter.js.map +1 -0
  51. package/dist/helpers/logger.d.ts.map +1 -0
  52. package/dist/helpers/logger.js.map +1 -0
  53. package/dist/helpers/markdown-formatter.d.ts.map +1 -0
  54. package/dist/helpers/markdown-formatter.js.map +1 -0
  55. package/dist/helpers/mime.d.ts.map +1 -0
  56. package/dist/helpers/mime.js.map +1 -0
  57. package/dist/helpers/path-validator.d.ts.map +1 -0
  58. package/dist/helpers/path-validator.js.map +1 -0
  59. package/dist/helpers/photon.d.ts.map +1 -0
  60. package/dist/helpers/photon.js.map +1 -0
  61. package/dist/helpers/shell.d.ts.map +1 -0
  62. package/dist/helpers/shell.js +142 -0
  63. package/dist/helpers/shell.js.map +1 -0
  64. package/dist/helpers/sleep.d.ts.map +1 -0
  65. package/dist/helpers/sleep.js.map +1 -0
  66. package/dist/helpers/string-formatter.d.ts.map +1 -0
  67. package/dist/helpers/string-formatter.js.map +1 -0
  68. package/dist/helpers/tools-manager.d.ts.map +1 -0
  69. package/dist/helpers/tools-manager.js.map +1 -0
  70. package/dist/helpers/type-guards.d.ts.map +1 -0
  71. package/dist/helpers/type-guards.js.map +1 -0
  72. package/dist/index.d.ts +34 -34
  73. package/dist/index.d.ts.map +1 -1
  74. package/dist/index.js +34 -34
  75. package/dist/index.js.map +1 -1
  76. package/dist/interfaces/index.d.ts +16 -0
  77. package/dist/interfaces/index.d.ts.map +1 -0
  78. package/dist/interfaces/index.js +14 -0
  79. package/dist/interfaces/index.js.map +1 -0
  80. package/dist/interfaces/print-mode.d.ts +561 -0
  81. package/dist/interfaces/print-mode.d.ts.map +1 -0
  82. package/dist/interfaces/print-mode.js.map +1 -0
  83. package/dist/interfaces/service-api/rpc-client.d.ts +1129 -0
  84. package/dist/interfaces/service-api/rpc-client.d.ts.map +1 -0
  85. package/dist/interfaces/service-api/rpc-client.js.map +1 -0
  86. package/dist/interfaces/service-api/rpc-mode.d.ts +813 -0
  87. package/dist/interfaces/service-api/rpc-mode.d.ts.map +1 -0
  88. package/dist/interfaces/service-api/rpc-mode.js +1229 -0
  89. package/dist/interfaces/service-api/rpc-mode.js.map +1 -0
  90. package/dist/interfaces/service-api/rpc-types.d.ts +392 -0
  91. package/dist/interfaces/service-api/rpc-types.d.ts.map +1 -0
  92. package/dist/interfaces/service-api/rpc-types.js.map +1 -0
  93. package/dist/interfaces/shared.d.ts.map +1 -0
  94. package/dist/interfaces/shared.js.map +1 -0
  95. package/dist/interfaces/terminal-ui/components/armin.d.ts.map +1 -0
  96. package/dist/interfaces/terminal-ui/components/armin.js.map +1 -0
  97. package/dist/interfaces/terminal-ui/components/assistant-message.d.ts.map +1 -0
  98. package/dist/interfaces/terminal-ui/components/assistant-message.js.map +1 -0
  99. package/dist/interfaces/terminal-ui/components/bash-execution.d.ts.map +1 -0
  100. package/dist/interfaces/terminal-ui/components/bash-execution.js.map +1 -0
  101. package/dist/interfaces/terminal-ui/components/bordered-loader.d.ts.map +1 -0
  102. package/dist/interfaces/terminal-ui/components/bordered-loader.js.map +1 -0
  103. package/dist/interfaces/terminal-ui/components/branch-summary-message.d.ts +16 -0
  104. package/dist/interfaces/terminal-ui/components/branch-summary-message.d.ts.map +1 -0
  105. package/dist/interfaces/terminal-ui/components/branch-summary-message.js.map +1 -0
  106. package/dist/interfaces/terminal-ui/components/compaction-summary-message.d.ts +16 -0
  107. package/dist/interfaces/terminal-ui/components/compaction-summary-message.d.ts.map +1 -0
  108. package/dist/interfaces/terminal-ui/components/compaction-summary-message.js.map +1 -0
  109. package/dist/interfaces/terminal-ui/components/config-selector.d.ts +71 -0
  110. package/dist/interfaces/terminal-ui/components/config-selector.d.ts.map +1 -0
  111. package/dist/interfaces/terminal-ui/components/config-selector.js.map +1 -0
  112. package/dist/interfaces/terminal-ui/components/countdown-timer.d.ts.map +1 -0
  113. package/dist/interfaces/terminal-ui/components/countdown-timer.js.map +1 -0
  114. package/dist/interfaces/terminal-ui/components/custom-editor.d.ts +17 -0
  115. package/dist/interfaces/terminal-ui/components/custom-editor.d.ts.map +1 -0
  116. package/dist/interfaces/terminal-ui/components/custom-editor.js.map +1 -0
  117. package/dist/interfaces/terminal-ui/components/custom-message.d.ts +19 -0
  118. package/dist/interfaces/terminal-ui/components/custom-message.d.ts.map +1 -0
  119. package/dist/interfaces/terminal-ui/components/custom-message.js.map +1 -0
  120. package/dist/interfaces/terminal-ui/components/diff.d.ts.map +1 -0
  121. package/dist/interfaces/terminal-ui/components/diff.js.map +1 -0
  122. package/dist/interfaces/terminal-ui/components/dynamic-border.d.ts.map +1 -0
  123. package/dist/interfaces/terminal-ui/components/dynamic-border.js.map +1 -0
  124. package/dist/interfaces/terminal-ui/components/extension-editor.d.ts +13 -0
  125. package/dist/interfaces/terminal-ui/components/extension-editor.d.ts.map +1 -0
  126. package/dist/interfaces/terminal-ui/components/extension-editor.js.map +1 -0
  127. package/dist/interfaces/terminal-ui/components/extension-input.d.ts.map +1 -0
  128. package/dist/interfaces/terminal-ui/components/extension-input.js.map +1 -0
  129. package/dist/interfaces/terminal-ui/components/extension-selector.d.ts.map +1 -0
  130. package/dist/interfaces/terminal-ui/components/extension-selector.js.map +1 -0
  131. package/dist/interfaces/terminal-ui/components/footer.d.ts +17 -0
  132. package/dist/interfaces/terminal-ui/components/footer.d.ts.map +1 -0
  133. package/dist/interfaces/terminal-ui/components/footer.js.map +1 -0
  134. package/dist/interfaces/terminal-ui/components/index.d.ts.map +1 -0
  135. package/dist/interfaces/terminal-ui/components/index.js.map +1 -0
  136. package/dist/interfaces/terminal-ui/components/keybinding-hints.d.ts +23 -0
  137. package/dist/interfaces/terminal-ui/components/keybinding-hints.d.ts.map +1 -0
  138. package/dist/interfaces/terminal-ui/components/keybinding-hints.js.map +1 -0
  139. package/dist/interfaces/terminal-ui/components/login-dialog.d.ts.map +1 -0
  140. package/dist/interfaces/terminal-ui/components/login-dialog.js.map +1 -0
  141. package/dist/interfaces/terminal-ui/components/model-selector.d.ts +43 -0
  142. package/dist/interfaces/terminal-ui/components/model-selector.d.ts.map +1 -0
  143. package/dist/interfaces/terminal-ui/components/model-selector.js.map +1 -0
  144. package/dist/interfaces/terminal-ui/components/oauth-selector.d.ts +75 -0
  145. package/dist/interfaces/terminal-ui/components/oauth-selector.d.ts.map +1 -0
  146. package/dist/interfaces/terminal-ui/components/oauth-selector.js.map +1 -0
  147. package/dist/interfaces/terminal-ui/components/scoped-models-selector.d.ts.map +1 -0
  148. package/dist/interfaces/terminal-ui/components/scoped-models-selector.js.map +1 -0
  149. package/dist/interfaces/terminal-ui/components/session-selector-search.d.ts +21 -0
  150. package/dist/interfaces/terminal-ui/components/session-selector-search.d.ts.map +1 -0
  151. package/dist/interfaces/terminal-ui/components/session-selector-search.js.map +1 -0
  152. package/dist/interfaces/terminal-ui/components/session-selector.d.ts +85 -0
  153. package/dist/interfaces/terminal-ui/components/session-selector.d.ts.map +1 -0
  154. package/dist/interfaces/terminal-ui/components/session-selector.js.map +1 -0
  155. package/dist/interfaces/terminal-ui/components/settings-selector.d.ts.map +1 -0
  156. package/dist/interfaces/terminal-ui/components/settings-selector.js.map +1 -0
  157. package/dist/interfaces/terminal-ui/components/show-images-selector.d.ts.map +1 -0
  158. package/dist/interfaces/terminal-ui/components/show-images-selector.js.map +1 -0
  159. package/dist/interfaces/terminal-ui/components/skill-invocation-message.d.ts +17 -0
  160. package/dist/interfaces/terminal-ui/components/skill-invocation-message.d.ts.map +1 -0
  161. package/dist/interfaces/terminal-ui/components/skill-invocation-message.js.map +1 -0
  162. package/dist/interfaces/terminal-ui/components/theme-selector.d.ts.map +1 -0
  163. package/dist/interfaces/terminal-ui/components/theme-selector.js.map +1 -0
  164. package/dist/interfaces/terminal-ui/components/thinking-selector.d.ts.map +1 -0
  165. package/dist/interfaces/terminal-ui/components/thinking-selector.js.map +1 -0
  166. package/dist/interfaces/terminal-ui/components/tool-execution.d.ts +72 -0
  167. package/dist/interfaces/terminal-ui/components/tool-execution.d.ts.map +1 -0
  168. package/dist/interfaces/terminal-ui/components/tool-execution.js +1001 -0
  169. package/dist/interfaces/terminal-ui/components/tool-execution.js.map +1 -0
  170. package/dist/interfaces/terminal-ui/components/tree-selector.d.ts +62 -0
  171. package/dist/interfaces/terminal-ui/components/tree-selector.d.ts.map +1 -0
  172. package/dist/interfaces/terminal-ui/components/tree-selector.js.map +1 -0
  173. package/dist/interfaces/terminal-ui/components/user-message-selector.d.ts.map +1 -0
  174. package/dist/interfaces/terminal-ui/components/user-message-selector.js.map +1 -0
  175. package/dist/interfaces/terminal-ui/components/user-message.d.ts.map +1 -0
  176. package/dist/interfaces/terminal-ui/components/user-message.js.map +1 -0
  177. package/dist/interfaces/terminal-ui/components/visual-truncate.d.ts.map +1 -0
  178. package/dist/interfaces/terminal-ui/components/visual-truncate.js.map +1 -0
  179. package/dist/interfaces/terminal-ui/interactive-mode.d.ts +1931 -0
  180. package/dist/interfaces/terminal-ui/interactive-mode.d.ts.map +1 -0
  181. package/dist/interfaces/terminal-ui/interactive-mode.js +5733 -0
  182. package/dist/interfaces/terminal-ui/interactive-mode.js.map +1 -0
  183. package/dist/interfaces/terminal-ui/theme/theme.d.ts.map +1 -0
  184. package/dist/interfaces/terminal-ui/theme/theme.js.map +1 -0
  185. package/dist/main.d.ts.map +1 -1
  186. package/dist/main.js +21 -21
  187. package/dist/main.js.map +1 -1
  188. package/dist/migrations.d.ts.map +1 -1
  189. package/dist/migrations.js.map +1 -1
  190. package/dist/runtime/agent-session.d.ts +936 -0
  191. package/dist/runtime/agent-session.d.ts.map +1 -0
  192. package/dist/runtime/agent-session.js +2737 -0
  193. package/dist/runtime/agent-session.js.map +1 -0
  194. package/dist/runtime/auth-storage.d.ts.map +1 -0
  195. package/dist/runtime/auth-storage.js.map +1 -0
  196. package/dist/runtime/bash-executor.d.ts.map +1 -0
  197. package/dist/runtime/bash-executor.js.map +1 -0
  198. package/dist/runtime/context-compression/branch-summarization.d.ts.map +1 -0
  199. package/dist/runtime/context-compression/branch-summarization.js.map +1 -0
  200. package/dist/runtime/context-compression/compaction.d.ts.map +1 -0
  201. package/dist/runtime/context-compression/compaction.js.map +1 -0
  202. package/dist/runtime/context-compression/index.d.ts.map +1 -0
  203. package/dist/runtime/context-compression/index.js.map +1 -0
  204. package/dist/runtime/context-compression/utils.d.ts.map +1 -0
  205. package/dist/runtime/context-compression/utils.js.map +1 -0
  206. package/dist/runtime/diagnostics.d.ts.map +1 -0
  207. package/dist/runtime/diagnostics.js.map +1 -0
  208. package/dist/runtime/discover-packages.d.ts.map +1 -0
  209. package/dist/runtime/discover-packages.js.map +1 -0
  210. package/dist/runtime/event-bus.d.ts.map +1 -0
  211. package/dist/runtime/event-bus.js.map +1 -0
  212. package/dist/runtime/exec.d.ts.map +1 -0
  213. package/dist/runtime/exec.js.map +1 -0
  214. package/dist/runtime/footer-data-provider.d.ts.map +1 -0
  215. package/dist/runtime/footer-data-provider.js.map +1 -0
  216. package/dist/runtime/html-export/ansi-to-html.d.ts.map +1 -0
  217. package/dist/runtime/html-export/ansi-to-html.js.map +1 -0
  218. package/dist/runtime/html-export/index.d.ts.map +1 -0
  219. package/dist/runtime/html-export/index.js +350 -0
  220. package/dist/runtime/html-export/index.js.map +1 -0
  221. package/dist/runtime/html-export/index.ts +433 -0
  222. package/dist/runtime/html-export/tool-renderer.d.ts +18 -0
  223. package/dist/runtime/html-export/tool-renderer.d.ts.map +1 -0
  224. package/dist/runtime/html-export/tool-renderer.js.map +1 -0
  225. package/dist/runtime/html-export/tool-renderer.ts +80 -0
  226. package/dist/runtime/index.d.ts +30 -0
  227. package/dist/runtime/index.d.ts.map +1 -0
  228. package/dist/runtime/index.js +30 -0
  229. package/dist/runtime/index.js.map +1 -0
  230. package/dist/runtime/keybindings.d.ts.map +1 -0
  231. package/dist/runtime/keybindings.js.map +1 -0
  232. package/dist/runtime/lifecycle/index.d.ts.map +1 -0
  233. package/dist/runtime/lifecycle/index.js.map +1 -0
  234. package/dist/runtime/lifecycle/loader.d.ts.map +1 -0
  235. package/dist/runtime/lifecycle/loader.js.map +1 -0
  236. package/dist/runtime/lifecycle/runner.d.ts.map +1 -0
  237. package/dist/runtime/lifecycle/runner.js.map +1 -0
  238. package/dist/runtime/lifecycle/types.d.ts.map +1 -0
  239. package/dist/runtime/lifecycle/types.js.map +1 -0
  240. package/dist/runtime/messages.d.ts.map +1 -0
  241. package/dist/runtime/messages.js.map +1 -0
  242. package/dist/runtime/model-registry.d.ts.map +1 -0
  243. package/dist/runtime/model-registry.js.map +1 -0
  244. package/dist/runtime/model-resolver.d.ts.map +1 -0
  245. package/dist/runtime/model-resolver.js +227 -0
  246. package/dist/runtime/model-resolver.js.map +1 -0
  247. package/dist/runtime/package-manager.d.ts.map +1 -0
  248. package/dist/runtime/package-manager.js.map +1 -0
  249. package/dist/runtime/plugins/index.d.ts.map +1 -0
  250. package/dist/runtime/plugins/index.js.map +1 -0
  251. package/dist/runtime/plugins/loader.d.ts.map +1 -0
  252. package/dist/runtime/plugins/loader.js.map +1 -0
  253. package/dist/runtime/plugins/runner.d.ts.map +1 -0
  254. package/dist/runtime/plugins/runner.js +468 -0
  255. package/dist/runtime/plugins/runner.js.map +1 -0
  256. package/dist/runtime/plugins/types.d.ts +859 -0
  257. package/dist/runtime/plugins/types.d.ts.map +1 -0
  258. package/dist/runtime/plugins/types.js.map +1 -0
  259. package/dist/runtime/plugins/wrapper.d.ts +29 -0
  260. package/dist/runtime/plugins/wrapper.d.ts.map +1 -0
  261. package/dist/runtime/plugins/wrapper.js.map +1 -0
  262. package/dist/runtime/prompt-templates.d.ts.map +1 -0
  263. package/dist/runtime/prompt-templates.js +203 -0
  264. package/dist/runtime/prompt-templates.js.map +1 -0
  265. package/dist/runtime/resource-loader.d.ts +180 -0
  266. package/dist/runtime/resource-loader.d.ts.map +1 -0
  267. package/dist/runtime/resource-loader.js +530 -0
  268. package/dist/runtime/resource-loader.js.map +1 -0
  269. package/dist/runtime/sdk.d.ts +49 -0
  270. package/dist/runtime/sdk.d.ts.map +1 -0
  271. package/dist/runtime/sdk.js +306 -0
  272. package/dist/runtime/sdk.js.map +1 -0
  273. package/dist/runtime/session-manager.d.ts.map +1 -0
  274. package/dist/runtime/session-manager.js.map +1 -0
  275. package/dist/runtime/settings-manager.d.ts.map +1 -0
  276. package/dist/runtime/settings-manager.js.map +1 -0
  277. package/dist/runtime/skills.d.ts.map +1 -0
  278. package/dist/runtime/skills.js +277 -0
  279. package/dist/runtime/skills.js.map +1 -0
  280. package/dist/runtime/subagents.d.ts.map +1 -0
  281. package/dist/runtime/subagents.js +163 -0
  282. package/dist/runtime/subagents.js.map +1 -0
  283. package/dist/runtime/system-prompt.d.ts.map +1 -0
  284. package/dist/runtime/system-prompt.js.map +1 -0
  285. package/dist/runtime/task-session-manager.d.ts.map +1 -0
  286. package/dist/runtime/task-session-manager.js.map +1 -0
  287. package/dist/runtime/timings.d.ts.map +1 -0
  288. package/dist/runtime/timings.js.map +1 -0
  289. package/dist/runtime/todo-store.d.ts.map +1 -0
  290. package/dist/runtime/todo-store.js.map +1 -0
  291. package/dist/runtime/tooling/bash.d.ts.map +1 -0
  292. package/dist/runtime/tooling/bash.js.map +1 -0
  293. package/dist/runtime/tooling/bg-process.d.ts.map +1 -0
  294. package/dist/runtime/tooling/bg-process.js.map +1 -0
  295. package/dist/runtime/tooling/edit-diff.d.ts.map +1 -0
  296. package/dist/runtime/tooling/edit-diff.js.map +1 -0
  297. package/dist/runtime/tooling/edit.d.ts.map +1 -0
  298. package/dist/runtime/tooling/edit.js.map +1 -0
  299. package/dist/runtime/tooling/find.d.ts.map +1 -0
  300. package/dist/runtime/tooling/find.js.map +1 -0
  301. package/dist/runtime/tooling/grep.d.ts.map +1 -0
  302. package/dist/runtime/tooling/grep.js.map +1 -0
  303. package/dist/runtime/tooling/index.d.ts +208 -0
  304. package/dist/runtime/tooling/index.d.ts.map +1 -0
  305. package/dist/runtime/tooling/index.js.map +1 -0
  306. package/dist/runtime/tooling/ls.d.ts.map +1 -0
  307. package/dist/runtime/tooling/ls.js.map +1 -0
  308. package/dist/runtime/tooling/memory.d.ts.map +1 -0
  309. package/dist/runtime/tooling/memory.js.map +1 -0
  310. package/dist/runtime/tooling/path-utils.d.ts.map +1 -0
  311. package/dist/runtime/tooling/path-utils.js.map +1 -0
  312. package/dist/runtime/tooling/read.d.ts.map +1 -0
  313. package/dist/runtime/tooling/read.js.map +1 -0
  314. package/dist/runtime/tooling/registry.d.ts.map +1 -0
  315. package/dist/runtime/tooling/registry.js.map +1 -0
  316. package/dist/runtime/tooling/task.d.ts.map +1 -0
  317. package/dist/runtime/tooling/task.js.map +1 -0
  318. package/dist/runtime/tooling/todo.d.ts.map +1 -0
  319. package/dist/runtime/tooling/todo.js.map +1 -0
  320. package/dist/runtime/tooling/truncate.d.ts.map +1 -0
  321. package/dist/runtime/tooling/truncate.js.map +1 -0
  322. package/dist/runtime/tooling/webfetch.d.ts.map +1 -0
  323. package/dist/runtime/tooling/webfetch.js.map +1 -0
  324. package/dist/runtime/tooling/websearch.d.ts.map +1 -0
  325. package/dist/runtime/tooling/websearch.js.map +1 -0
  326. package/dist/runtime/tooling/write.d.ts.map +1 -0
  327. package/dist/runtime/tooling/write.js.map +1 -0
  328. package/dist/telemetry/core/config.d.ts.map +1 -0
  329. package/dist/telemetry/core/config.js.map +1 -0
  330. package/dist/telemetry/core/event-bus.d.ts.map +1 -0
  331. package/dist/telemetry/core/event-bus.js.map +1 -0
  332. package/dist/telemetry/core/index.d.ts.map +1 -0
  333. package/dist/telemetry/core/index.js.map +1 -0
  334. package/dist/telemetry/core/observability.d.ts.map +1 -0
  335. package/dist/telemetry/core/observability.js.map +1 -0
  336. package/dist/telemetry/core/span.d.ts.map +1 -0
  337. package/dist/telemetry/core/span.js.map +1 -0
  338. package/dist/telemetry/core/tracer.d.ts.map +1 -0
  339. package/dist/telemetry/core/tracer.js.map +1 -0
  340. package/dist/telemetry/core/types.d.ts.map +1 -0
  341. package/dist/telemetry/core/types.js.map +1 -0
  342. package/dist/telemetry/exporters/base-exporter.d.ts.map +1 -0
  343. package/dist/telemetry/exporters/base-exporter.js.map +1 -0
  344. package/dist/telemetry/exporters/console-exporter.d.ts.map +1 -0
  345. package/dist/telemetry/exporters/console-exporter.js.map +1 -0
  346. package/dist/telemetry/exporters/file-exporter.d.ts.map +1 -0
  347. package/dist/telemetry/exporters/file-exporter.js.map +1 -0
  348. package/dist/telemetry/exporters/index.d.ts.map +1 -0
  349. package/dist/telemetry/exporters/index.js.map +1 -0
  350. package/dist/telemetry/exporters/langfuse-exporter.d.ts.map +1 -0
  351. package/dist/telemetry/exporters/langfuse-exporter.js.map +1 -0
  352. package/dist/telemetry/exporters/sentry-exporter.d.ts.map +1 -0
  353. package/dist/telemetry/exporters/sentry-exporter.js.map +1 -0
  354. package/dist/telemetry/index.d.ts.map +1 -0
  355. package/dist/telemetry/index.js.map +1 -0
  356. package/package.json +7 -7
  357. package/dist/cli/args.d.ts +0 -56
  358. package/dist/cli/args.d.ts.map +0 -1
  359. package/dist/cli/args.js.map +0 -1
  360. package/dist/cli/config-selector.d.ts +0 -17
  361. package/dist/cli/config-selector.d.ts.map +0 -1
  362. package/dist/cli/config-selector.js.map +0 -1
  363. package/dist/cli/file-processor.d.ts.map +0 -1
  364. package/dist/cli/file-processor.js.map +0 -1
  365. package/dist/cli/list-models.d.ts +0 -9
  366. package/dist/cli/list-models.d.ts.map +0 -1
  367. package/dist/cli/list-models.js.map +0 -1
  368. package/dist/cli/login-handler.d.ts.map +0 -1
  369. package/dist/cli/login-handler.js +0 -746
  370. package/dist/cli/login-handler.js.map +0 -1
  371. package/dist/cli/session-picker.d.ts.map +0 -1
  372. package/dist/cli/session-picker.js.map +0 -1
  373. package/dist/core/agent-session.d.ts +0 -936
  374. package/dist/core/agent-session.d.ts.map +0 -1
  375. package/dist/core/agent-session.js +0 -2737
  376. package/dist/core/agent-session.js.map +0 -1
  377. package/dist/core/auth-storage.d.ts.map +0 -1
  378. package/dist/core/auth-storage.js.map +0 -1
  379. package/dist/core/bash-executor.d.ts.map +0 -1
  380. package/dist/core/bash-executor.js.map +0 -1
  381. package/dist/core/compaction/branch-summarization.d.ts.map +0 -1
  382. package/dist/core/compaction/branch-summarization.js.map +0 -1
  383. package/dist/core/compaction/compaction.d.ts.map +0 -1
  384. package/dist/core/compaction/compaction.js.map +0 -1
  385. package/dist/core/compaction/index.d.ts.map +0 -1
  386. package/dist/core/compaction/index.js.map +0 -1
  387. package/dist/core/compaction/utils.d.ts.map +0 -1
  388. package/dist/core/compaction/utils.js.map +0 -1
  389. package/dist/core/diagnostics.d.ts.map +0 -1
  390. package/dist/core/diagnostics.js.map +0 -1
  391. package/dist/core/discover-packages.d.ts.map +0 -1
  392. package/dist/core/discover-packages.js.map +0 -1
  393. package/dist/core/event-bus.d.ts.map +0 -1
  394. package/dist/core/event-bus.js.map +0 -1
  395. package/dist/core/exec.d.ts.map +0 -1
  396. package/dist/core/exec.js.map +0 -1
  397. package/dist/core/export-html/ansi-to-html.d.ts.map +0 -1
  398. package/dist/core/export-html/ansi-to-html.js.map +0 -1
  399. package/dist/core/export-html/index.d.ts.map +0 -1
  400. package/dist/core/export-html/index.js +0 -350
  401. package/dist/core/export-html/index.js.map +0 -1
  402. package/dist/core/export-html/index.ts +0 -433
  403. package/dist/core/export-html/tool-renderer.d.ts +0 -18
  404. package/dist/core/export-html/tool-renderer.d.ts.map +0 -1
  405. package/dist/core/export-html/tool-renderer.js.map +0 -1
  406. package/dist/core/export-html/tool-renderer.ts +0 -80
  407. package/dist/core/extensions/index.d.ts.map +0 -1
  408. package/dist/core/extensions/index.js.map +0 -1
  409. package/dist/core/extensions/loader.d.ts.map +0 -1
  410. package/dist/core/extensions/loader.js.map +0 -1
  411. package/dist/core/extensions/runner.d.ts.map +0 -1
  412. package/dist/core/extensions/runner.js +0 -468
  413. package/dist/core/extensions/runner.js.map +0 -1
  414. package/dist/core/extensions/types.d.ts +0 -859
  415. package/dist/core/extensions/types.d.ts.map +0 -1
  416. package/dist/core/extensions/types.js.map +0 -1
  417. package/dist/core/extensions/wrapper.d.ts +0 -29
  418. package/dist/core/extensions/wrapper.d.ts.map +0 -1
  419. package/dist/core/extensions/wrapper.js.map +0 -1
  420. package/dist/core/footer-data-provider.d.ts.map +0 -1
  421. package/dist/core/footer-data-provider.js.map +0 -1
  422. package/dist/core/hooks/index.d.ts.map +0 -1
  423. package/dist/core/hooks/index.js.map +0 -1
  424. package/dist/core/hooks/loader.d.ts.map +0 -1
  425. package/dist/core/hooks/loader.js.map +0 -1
  426. package/dist/core/hooks/runner.d.ts.map +0 -1
  427. package/dist/core/hooks/runner.js.map +0 -1
  428. package/dist/core/hooks/types.d.ts.map +0 -1
  429. package/dist/core/hooks/types.js.map +0 -1
  430. package/dist/core/index.d.ts +0 -30
  431. package/dist/core/index.d.ts.map +0 -1
  432. package/dist/core/index.js +0 -30
  433. package/dist/core/index.js.map +0 -1
  434. package/dist/core/keybindings.d.ts.map +0 -1
  435. package/dist/core/keybindings.js.map +0 -1
  436. package/dist/core/messages.d.ts.map +0 -1
  437. package/dist/core/messages.js.map +0 -1
  438. package/dist/core/model-registry.d.ts.map +0 -1
  439. package/dist/core/model-registry.js.map +0 -1
  440. package/dist/core/model-resolver.d.ts.map +0 -1
  441. package/dist/core/model-resolver.js +0 -227
  442. package/dist/core/model-resolver.js.map +0 -1
  443. package/dist/core/package-manager.d.ts.map +0 -1
  444. package/dist/core/package-manager.js.map +0 -1
  445. package/dist/core/prompt-templates.d.ts.map +0 -1
  446. package/dist/core/prompt-templates.js +0 -203
  447. package/dist/core/prompt-templates.js.map +0 -1
  448. package/dist/core/resource-loader.d.ts +0 -180
  449. package/dist/core/resource-loader.d.ts.map +0 -1
  450. package/dist/core/resource-loader.js +0 -530
  451. package/dist/core/resource-loader.js.map +0 -1
  452. package/dist/core/sdk.d.ts +0 -49
  453. package/dist/core/sdk.d.ts.map +0 -1
  454. package/dist/core/sdk.js +0 -306
  455. package/dist/core/sdk.js.map +0 -1
  456. package/dist/core/session-manager.d.ts.map +0 -1
  457. package/dist/core/session-manager.js.map +0 -1
  458. package/dist/core/settings-manager.d.ts.map +0 -1
  459. package/dist/core/settings-manager.js.map +0 -1
  460. package/dist/core/skills.d.ts.map +0 -1
  461. package/dist/core/skills.js +0 -277
  462. package/dist/core/skills.js.map +0 -1
  463. package/dist/core/subagents.d.ts.map +0 -1
  464. package/dist/core/subagents.js +0 -163
  465. package/dist/core/subagents.js.map +0 -1
  466. package/dist/core/system-prompt.d.ts.map +0 -1
  467. package/dist/core/system-prompt.js.map +0 -1
  468. package/dist/core/task-session-manager.d.ts.map +0 -1
  469. package/dist/core/task-session-manager.js.map +0 -1
  470. package/dist/core/timings.d.ts.map +0 -1
  471. package/dist/core/timings.js.map +0 -1
  472. package/dist/core/todo-store.d.ts.map +0 -1
  473. package/dist/core/todo-store.js.map +0 -1
  474. package/dist/core/tools/bash.d.ts.map +0 -1
  475. package/dist/core/tools/bash.js.map +0 -1
  476. package/dist/core/tools/bg-process.d.ts.map +0 -1
  477. package/dist/core/tools/bg-process.js.map +0 -1
  478. package/dist/core/tools/edit-diff.d.ts.map +0 -1
  479. package/dist/core/tools/edit-diff.js.map +0 -1
  480. package/dist/core/tools/edit.d.ts.map +0 -1
  481. package/dist/core/tools/edit.js.map +0 -1
  482. package/dist/core/tools/find.d.ts.map +0 -1
  483. package/dist/core/tools/find.js.map +0 -1
  484. package/dist/core/tools/grep.d.ts.map +0 -1
  485. package/dist/core/tools/grep.js.map +0 -1
  486. package/dist/core/tools/index.d.ts +0 -208
  487. package/dist/core/tools/index.d.ts.map +0 -1
  488. package/dist/core/tools/index.js.map +0 -1
  489. package/dist/core/tools/ls.d.ts.map +0 -1
  490. package/dist/core/tools/ls.js.map +0 -1
  491. package/dist/core/tools/memory.d.ts.map +0 -1
  492. package/dist/core/tools/memory.js.map +0 -1
  493. package/dist/core/tools/path-utils.d.ts.map +0 -1
  494. package/dist/core/tools/path-utils.js.map +0 -1
  495. package/dist/core/tools/read.d.ts.map +0 -1
  496. package/dist/core/tools/read.js.map +0 -1
  497. package/dist/core/tools/registry.d.ts.map +0 -1
  498. package/dist/core/tools/registry.js.map +0 -1
  499. package/dist/core/tools/task.d.ts.map +0 -1
  500. package/dist/core/tools/task.js.map +0 -1
  501. package/dist/core/tools/todo.d.ts.map +0 -1
  502. package/dist/core/tools/todo.js.map +0 -1
  503. package/dist/core/tools/truncate.d.ts.map +0 -1
  504. package/dist/core/tools/truncate.js.map +0 -1
  505. package/dist/core/tools/webfetch.d.ts.map +0 -1
  506. package/dist/core/tools/webfetch.js.map +0 -1
  507. package/dist/core/tools/websearch.d.ts.map +0 -1
  508. package/dist/core/tools/websearch.js.map +0 -1
  509. package/dist/core/tools/write.d.ts.map +0 -1
  510. package/dist/core/tools/write.js.map +0 -1
  511. package/dist/modes/index.d.ts +0 -16
  512. package/dist/modes/index.d.ts.map +0 -1
  513. package/dist/modes/index.js +0 -14
  514. package/dist/modes/index.js.map +0 -1
  515. package/dist/modes/interactive/components/armin.d.ts.map +0 -1
  516. package/dist/modes/interactive/components/armin.js.map +0 -1
  517. package/dist/modes/interactive/components/assistant-message.d.ts.map +0 -1
  518. package/dist/modes/interactive/components/assistant-message.js.map +0 -1
  519. package/dist/modes/interactive/components/bash-execution.d.ts.map +0 -1
  520. package/dist/modes/interactive/components/bash-execution.js.map +0 -1
  521. package/dist/modes/interactive/components/bordered-loader.d.ts.map +0 -1
  522. package/dist/modes/interactive/components/bordered-loader.js.map +0 -1
  523. package/dist/modes/interactive/components/branch-summary-message.d.ts +0 -16
  524. package/dist/modes/interactive/components/branch-summary-message.d.ts.map +0 -1
  525. package/dist/modes/interactive/components/branch-summary-message.js.map +0 -1
  526. package/dist/modes/interactive/components/compaction-summary-message.d.ts +0 -16
  527. package/dist/modes/interactive/components/compaction-summary-message.d.ts.map +0 -1
  528. package/dist/modes/interactive/components/compaction-summary-message.js.map +0 -1
  529. package/dist/modes/interactive/components/config-selector.d.ts +0 -71
  530. package/dist/modes/interactive/components/config-selector.d.ts.map +0 -1
  531. package/dist/modes/interactive/components/config-selector.js.map +0 -1
  532. package/dist/modes/interactive/components/countdown-timer.d.ts.map +0 -1
  533. package/dist/modes/interactive/components/countdown-timer.js.map +0 -1
  534. package/dist/modes/interactive/components/custom-editor.d.ts +0 -17
  535. package/dist/modes/interactive/components/custom-editor.d.ts.map +0 -1
  536. package/dist/modes/interactive/components/custom-editor.js.map +0 -1
  537. package/dist/modes/interactive/components/custom-message.d.ts +0 -19
  538. package/dist/modes/interactive/components/custom-message.d.ts.map +0 -1
  539. package/dist/modes/interactive/components/custom-message.js.map +0 -1
  540. package/dist/modes/interactive/components/diff.d.ts.map +0 -1
  541. package/dist/modes/interactive/components/diff.js.map +0 -1
  542. package/dist/modes/interactive/components/dynamic-border.d.ts.map +0 -1
  543. package/dist/modes/interactive/components/dynamic-border.js.map +0 -1
  544. package/dist/modes/interactive/components/extension-editor.d.ts +0 -13
  545. package/dist/modes/interactive/components/extension-editor.d.ts.map +0 -1
  546. package/dist/modes/interactive/components/extension-editor.js.map +0 -1
  547. package/dist/modes/interactive/components/extension-input.d.ts.map +0 -1
  548. package/dist/modes/interactive/components/extension-input.js.map +0 -1
  549. package/dist/modes/interactive/components/extension-selector.d.ts.map +0 -1
  550. package/dist/modes/interactive/components/extension-selector.js.map +0 -1
  551. package/dist/modes/interactive/components/footer.d.ts +0 -17
  552. package/dist/modes/interactive/components/footer.d.ts.map +0 -1
  553. package/dist/modes/interactive/components/footer.js.map +0 -1
  554. package/dist/modes/interactive/components/index.d.ts.map +0 -1
  555. package/dist/modes/interactive/components/index.js.map +0 -1
  556. package/dist/modes/interactive/components/keybinding-hints.d.ts +0 -23
  557. package/dist/modes/interactive/components/keybinding-hints.d.ts.map +0 -1
  558. package/dist/modes/interactive/components/keybinding-hints.js.map +0 -1
  559. package/dist/modes/interactive/components/login-dialog.d.ts.map +0 -1
  560. package/dist/modes/interactive/components/login-dialog.js.map +0 -1
  561. package/dist/modes/interactive/components/model-selector.d.ts +0 -43
  562. package/dist/modes/interactive/components/model-selector.d.ts.map +0 -1
  563. package/dist/modes/interactive/components/model-selector.js.map +0 -1
  564. package/dist/modes/interactive/components/oauth-selector.d.ts +0 -75
  565. package/dist/modes/interactive/components/oauth-selector.d.ts.map +0 -1
  566. package/dist/modes/interactive/components/oauth-selector.js.map +0 -1
  567. package/dist/modes/interactive/components/scoped-models-selector.d.ts.map +0 -1
  568. package/dist/modes/interactive/components/scoped-models-selector.js.map +0 -1
  569. package/dist/modes/interactive/components/session-selector-search.d.ts +0 -21
  570. package/dist/modes/interactive/components/session-selector-search.d.ts.map +0 -1
  571. package/dist/modes/interactive/components/session-selector-search.js.map +0 -1
  572. package/dist/modes/interactive/components/session-selector.d.ts +0 -85
  573. package/dist/modes/interactive/components/session-selector.d.ts.map +0 -1
  574. package/dist/modes/interactive/components/session-selector.js.map +0 -1
  575. package/dist/modes/interactive/components/settings-selector.d.ts.map +0 -1
  576. package/dist/modes/interactive/components/settings-selector.js.map +0 -1
  577. package/dist/modes/interactive/components/show-images-selector.d.ts.map +0 -1
  578. package/dist/modes/interactive/components/show-images-selector.js.map +0 -1
  579. package/dist/modes/interactive/components/skill-invocation-message.d.ts +0 -17
  580. package/dist/modes/interactive/components/skill-invocation-message.d.ts.map +0 -1
  581. package/dist/modes/interactive/components/skill-invocation-message.js.map +0 -1
  582. package/dist/modes/interactive/components/theme-selector.d.ts.map +0 -1
  583. package/dist/modes/interactive/components/theme-selector.js.map +0 -1
  584. package/dist/modes/interactive/components/thinking-selector.d.ts.map +0 -1
  585. package/dist/modes/interactive/components/thinking-selector.js.map +0 -1
  586. package/dist/modes/interactive/components/tool-execution.d.ts +0 -72
  587. package/dist/modes/interactive/components/tool-execution.d.ts.map +0 -1
  588. package/dist/modes/interactive/components/tool-execution.js +0 -1001
  589. package/dist/modes/interactive/components/tool-execution.js.map +0 -1
  590. package/dist/modes/interactive/components/tree-selector.d.ts +0 -62
  591. package/dist/modes/interactive/components/tree-selector.d.ts.map +0 -1
  592. package/dist/modes/interactive/components/tree-selector.js.map +0 -1
  593. package/dist/modes/interactive/components/user-message-selector.d.ts.map +0 -1
  594. package/dist/modes/interactive/components/user-message-selector.js.map +0 -1
  595. package/dist/modes/interactive/components/user-message.d.ts.map +0 -1
  596. package/dist/modes/interactive/components/user-message.js.map +0 -1
  597. package/dist/modes/interactive/components/visual-truncate.d.ts.map +0 -1
  598. package/dist/modes/interactive/components/visual-truncate.js.map +0 -1
  599. package/dist/modes/interactive/interactive-mode.d.ts +0 -1931
  600. package/dist/modes/interactive/interactive-mode.d.ts.map +0 -1
  601. package/dist/modes/interactive/interactive-mode.js +0 -5733
  602. package/dist/modes/interactive/interactive-mode.js.map +0 -1
  603. package/dist/modes/interactive/theme/theme.d.ts.map +0 -1
  604. package/dist/modes/interactive/theme/theme.js.map +0 -1
  605. package/dist/modes/print-mode.d.ts +0 -561
  606. package/dist/modes/print-mode.d.ts.map +0 -1
  607. package/dist/modes/print-mode.js.map +0 -1
  608. package/dist/modes/rpc/rpc-client.d.ts +0 -1129
  609. package/dist/modes/rpc/rpc-client.d.ts.map +0 -1
  610. package/dist/modes/rpc/rpc-client.js.map +0 -1
  611. package/dist/modes/rpc/rpc-mode.d.ts +0 -813
  612. package/dist/modes/rpc/rpc-mode.d.ts.map +0 -1
  613. package/dist/modes/rpc/rpc-mode.js +0 -1229
  614. package/dist/modes/rpc/rpc-mode.js.map +0 -1
  615. package/dist/modes/rpc/rpc-types.d.ts +0 -392
  616. package/dist/modes/rpc/rpc-types.d.ts.map +0 -1
  617. package/dist/modes/rpc/rpc-types.js.map +0 -1
  618. package/dist/modes/shared.d.ts.map +0 -1
  619. package/dist/modes/shared.js.map +0 -1
  620. package/dist/observability/core/config.d.ts.map +0 -1
  621. package/dist/observability/core/config.js.map +0 -1
  622. package/dist/observability/core/event-bus.d.ts.map +0 -1
  623. package/dist/observability/core/event-bus.js.map +0 -1
  624. package/dist/observability/core/index.d.ts.map +0 -1
  625. package/dist/observability/core/index.js.map +0 -1
  626. package/dist/observability/core/observability.d.ts.map +0 -1
  627. package/dist/observability/core/observability.js.map +0 -1
  628. package/dist/observability/core/span.d.ts.map +0 -1
  629. package/dist/observability/core/span.js.map +0 -1
  630. package/dist/observability/core/tracer.d.ts.map +0 -1
  631. package/dist/observability/core/tracer.js.map +0 -1
  632. package/dist/observability/core/types.d.ts.map +0 -1
  633. package/dist/observability/core/types.js.map +0 -1
  634. package/dist/observability/exporters/base-exporter.d.ts.map +0 -1
  635. package/dist/observability/exporters/base-exporter.js.map +0 -1
  636. package/dist/observability/exporters/console-exporter.d.ts.map +0 -1
  637. package/dist/observability/exporters/console-exporter.js.map +0 -1
  638. package/dist/observability/exporters/file-exporter.d.ts.map +0 -1
  639. package/dist/observability/exporters/file-exporter.js.map +0 -1
  640. package/dist/observability/exporters/index.d.ts.map +0 -1
  641. package/dist/observability/exporters/index.js.map +0 -1
  642. package/dist/observability/exporters/langfuse-exporter.d.ts.map +0 -1
  643. package/dist/observability/exporters/langfuse-exporter.js.map +0 -1
  644. package/dist/observability/exporters/sentry-exporter.d.ts.map +0 -1
  645. package/dist/observability/exporters/sentry-exporter.js.map +0 -1
  646. package/dist/observability/index.d.ts.map +0 -1
  647. package/dist/observability/index.js.map +0 -1
  648. package/dist/utils/array.d.ts.map +0 -1
  649. package/dist/utils/array.js.map +0 -1
  650. package/dist/utils/changelog.d.ts.map +0 -1
  651. package/dist/utils/changelog.js.map +0 -1
  652. package/dist/utils/clipboard-image.d.ts.map +0 -1
  653. package/dist/utils/clipboard-image.js.map +0 -1
  654. package/dist/utils/clipboard.d.ts.map +0 -1
  655. package/dist/utils/clipboard.js.map +0 -1
  656. package/dist/utils/color-formatter.d.ts.map +0 -1
  657. package/dist/utils/color-formatter.js.map +0 -1
  658. package/dist/utils/data-transformer.d.ts.map +0 -1
  659. package/dist/utils/data-transformer.js.map +0 -1
  660. package/dist/utils/date-formatter.d.ts.map +0 -1
  661. package/dist/utils/date-formatter.js.map +0 -1
  662. package/dist/utils/error-handler.d.ts.map +0 -1
  663. package/dist/utils/error-handler.js.map +0 -1
  664. package/dist/utils/file-operations.d.ts.map +0 -1
  665. package/dist/utils/file-operations.js.map +0 -1
  666. package/dist/utils/frontmatter.d.ts.map +0 -1
  667. package/dist/utils/frontmatter.js.map +0 -1
  668. package/dist/utils/git.d.ts.map +0 -1
  669. package/dist/utils/git.js.map +0 -1
  670. package/dist/utils/image-convert.d.ts.map +0 -1
  671. package/dist/utils/image-convert.js.map +0 -1
  672. package/dist/utils/image-resize.d.ts.map +0 -1
  673. package/dist/utils/image-resize.js.map +0 -1
  674. package/dist/utils/json-formatter.d.ts.map +0 -1
  675. package/dist/utils/json-formatter.js.map +0 -1
  676. package/dist/utils/logger.d.ts.map +0 -1
  677. package/dist/utils/logger.js.map +0 -1
  678. package/dist/utils/markdown-formatter.d.ts.map +0 -1
  679. package/dist/utils/markdown-formatter.js.map +0 -1
  680. package/dist/utils/mime.d.ts.map +0 -1
  681. package/dist/utils/mime.js.map +0 -1
  682. package/dist/utils/path-validator.d.ts.map +0 -1
  683. package/dist/utils/path-validator.js.map +0 -1
  684. package/dist/utils/photon.d.ts.map +0 -1
  685. package/dist/utils/photon.js.map +0 -1
  686. package/dist/utils/shell.d.ts.map +0 -1
  687. package/dist/utils/shell.js +0 -142
  688. package/dist/utils/shell.js.map +0 -1
  689. package/dist/utils/sleep.d.ts.map +0 -1
  690. package/dist/utils/sleep.js.map +0 -1
  691. package/dist/utils/string-formatter.d.ts.map +0 -1
  692. package/dist/utils/string-formatter.js.map +0 -1
  693. package/dist/utils/tools-manager.d.ts.map +0 -1
  694. package/dist/utils/tools-manager.js.map +0 -1
  695. package/dist/utils/type-guards.d.ts.map +0 -1
  696. package/dist/utils/type-guards.js.map +0 -1
  697. /package/{examples → demos}/README.md +0 -0
  698. /package/dist/{cli → command-line}/args.js +0 -0
  699. /package/dist/{cli → command-line}/config-selector.js +0 -0
  700. /package/dist/{cli → command-line}/file-processor.d.ts +0 -0
  701. /package/dist/{cli → command-line}/file-processor.js +0 -0
  702. /package/dist/{cli → command-line}/list-models.js +0 -0
  703. /package/dist/{cli → command-line}/login-handler.d.ts +0 -0
  704. /package/dist/{cli → command-line}/session-picker.d.ts +0 -0
  705. /package/dist/{cli → command-line}/session-picker.js +0 -0
  706. /package/dist/{utils → helpers}/array.d.ts +0 -0
  707. /package/dist/{utils → helpers}/array.js +0 -0
  708. /package/dist/{utils → helpers}/changelog.d.ts +0 -0
  709. /package/dist/{utils → helpers}/changelog.js +0 -0
  710. /package/dist/{utils → helpers}/clipboard-image.d.ts +0 -0
  711. /package/dist/{utils → helpers}/clipboard-image.js +0 -0
  712. /package/dist/{utils → helpers}/clipboard.d.ts +0 -0
  713. /package/dist/{utils → helpers}/clipboard.js +0 -0
  714. /package/dist/{utils → helpers}/color-formatter.d.ts +0 -0
  715. /package/dist/{utils → helpers}/color-formatter.js +0 -0
  716. /package/dist/{utils → helpers}/data-transformer.d.ts +0 -0
  717. /package/dist/{utils → helpers}/data-transformer.js +0 -0
  718. /package/dist/{utils → helpers}/date-formatter.d.ts +0 -0
  719. /package/dist/{utils → helpers}/date-formatter.js +0 -0
  720. /package/dist/{utils → helpers}/error-handler.d.ts +0 -0
  721. /package/dist/{utils → helpers}/error-handler.js +0 -0
  722. /package/dist/{utils → helpers}/file-operations.d.ts +0 -0
  723. /package/dist/{utils → helpers}/file-operations.js +0 -0
  724. /package/dist/{utils → helpers}/frontmatter.d.ts +0 -0
  725. /package/dist/{utils → helpers}/frontmatter.js +0 -0
  726. /package/dist/{utils → helpers}/git.d.ts +0 -0
  727. /package/dist/{utils → helpers}/git.js +0 -0
  728. /package/dist/{utils → helpers}/image-convert.d.ts +0 -0
  729. /package/dist/{utils → helpers}/image-convert.js +0 -0
  730. /package/dist/{utils → helpers}/image-resize.d.ts +0 -0
  731. /package/dist/{utils → helpers}/image-resize.js +0 -0
  732. /package/dist/{utils → helpers}/json-formatter.d.ts +0 -0
  733. /package/dist/{utils → helpers}/json-formatter.js +0 -0
  734. /package/dist/{utils → helpers}/logger.d.ts +0 -0
  735. /package/dist/{utils → helpers}/logger.js +0 -0
  736. /package/dist/{utils → helpers}/markdown-formatter.d.ts +0 -0
  737. /package/dist/{utils → helpers}/markdown-formatter.js +0 -0
  738. /package/dist/{utils → helpers}/mime.d.ts +0 -0
  739. /package/dist/{utils → helpers}/mime.js +0 -0
  740. /package/dist/{utils → helpers}/path-validator.d.ts +0 -0
  741. /package/dist/{utils → helpers}/path-validator.js +0 -0
  742. /package/dist/{utils → helpers}/photon.d.ts +0 -0
  743. /package/dist/{utils → helpers}/photon.js +0 -0
  744. /package/dist/{utils → helpers}/shell.d.ts +0 -0
  745. /package/dist/{utils → helpers}/sleep.d.ts +0 -0
  746. /package/dist/{utils → helpers}/sleep.js +0 -0
  747. /package/dist/{utils → helpers}/string-formatter.d.ts +0 -0
  748. /package/dist/{utils → helpers}/string-formatter.js +0 -0
  749. /package/dist/{utils → helpers}/tools-manager.d.ts +0 -0
  750. /package/dist/{utils → helpers}/tools-manager.js +0 -0
  751. /package/dist/{utils → helpers}/type-guards.d.ts +0 -0
  752. /package/dist/{utils → helpers}/type-guards.js +0 -0
  753. /package/dist/{modes → interfaces}/print-mode.js +0 -0
  754. /package/dist/{modes/rpc → interfaces/service-api}/rpc-client.js +0 -0
  755. /package/dist/{modes/rpc → interfaces/service-api}/rpc-types.js +0 -0
  756. /package/dist/{modes → interfaces}/shared.d.ts +0 -0
  757. /package/dist/{modes → interfaces}/shared.js +0 -0
  758. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/armin.d.ts +0 -0
  759. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/armin.js +0 -0
  760. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/assistant-message.d.ts +0 -0
  761. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/assistant-message.js +0 -0
  762. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/bash-execution.d.ts +0 -0
  763. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/bash-execution.js +0 -0
  764. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/bordered-loader.d.ts +0 -0
  765. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/bordered-loader.js +0 -0
  766. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/branch-summary-message.js +0 -0
  767. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/compaction-summary-message.js +0 -0
  768. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/config-selector.js +0 -0
  769. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/countdown-timer.d.ts +0 -0
  770. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/countdown-timer.js +0 -0
  771. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/custom-editor.js +0 -0
  772. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/custom-message.js +0 -0
  773. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/diff.d.ts +0 -0
  774. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/diff.js +0 -0
  775. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/dynamic-border.d.ts +0 -0
  776. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/dynamic-border.js +0 -0
  777. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/extension-editor.js +0 -0
  778. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/extension-input.d.ts +0 -0
  779. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/extension-input.js +0 -0
  780. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/extension-selector.d.ts +0 -0
  781. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/extension-selector.js +0 -0
  782. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/footer.js +0 -0
  783. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/index.d.ts +0 -0
  784. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/index.js +0 -0
  785. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/keybinding-hints.js +0 -0
  786. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/login-dialog.d.ts +0 -0
  787. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/login-dialog.js +0 -0
  788. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/model-selector.js +0 -0
  789. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/oauth-selector.js +0 -0
  790. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/scoped-models-selector.d.ts +0 -0
  791. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/scoped-models-selector.js +0 -0
  792. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/session-selector-search.js +0 -0
  793. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/session-selector.js +0 -0
  794. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/settings-selector.d.ts +0 -0
  795. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/settings-selector.js +0 -0
  796. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/show-images-selector.d.ts +0 -0
  797. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/show-images-selector.js +0 -0
  798. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/skill-invocation-message.js +0 -0
  799. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/theme-selector.d.ts +0 -0
  800. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/theme-selector.js +0 -0
  801. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/thinking-selector.d.ts +0 -0
  802. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/thinking-selector.js +0 -0
  803. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/tree-selector.js +0 -0
  804. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/user-message-selector.d.ts +0 -0
  805. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/user-message-selector.js +0 -0
  806. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/user-message.d.ts +0 -0
  807. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/user-message.js +0 -0
  808. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/visual-truncate.d.ts +0 -0
  809. /package/dist/{modes/interactive → interfaces/terminal-ui}/components/visual-truncate.js +0 -0
  810. /package/dist/{modes/interactive → interfaces/terminal-ui}/theme/dark.json +0 -0
  811. /package/dist/{modes/interactive → interfaces/terminal-ui}/theme/light.json +0 -0
  812. /package/dist/{modes/interactive → interfaces/terminal-ui}/theme/theme-schema.json +0 -0
  813. /package/dist/{modes/interactive → interfaces/terminal-ui}/theme/theme.d.ts +0 -0
  814. /package/dist/{modes/interactive → interfaces/terminal-ui}/theme/theme.js +0 -0
  815. /package/dist/{core → runtime}/auth-storage.d.ts +0 -0
  816. /package/dist/{core → runtime}/auth-storage.js +0 -0
  817. /package/dist/{core → runtime}/bash-executor.d.ts +0 -0
  818. /package/dist/{core → runtime}/bash-executor.js +0 -0
  819. /package/dist/{core/compaction → runtime/context-compression}/branch-summarization.d.ts +0 -0
  820. /package/dist/{core/compaction → runtime/context-compression}/branch-summarization.js +0 -0
  821. /package/dist/{core/compaction → runtime/context-compression}/compaction.d.ts +0 -0
  822. /package/dist/{core/compaction → runtime/context-compression}/compaction.js +0 -0
  823. /package/dist/{core/compaction → runtime/context-compression}/index.d.ts +0 -0
  824. /package/dist/{core/compaction → runtime/context-compression}/index.js +0 -0
  825. /package/dist/{core/compaction → runtime/context-compression}/utils.d.ts +0 -0
  826. /package/dist/{core/compaction → runtime/context-compression}/utils.js +0 -0
  827. /package/dist/{core → runtime}/diagnostics.d.ts +0 -0
  828. /package/dist/{core → runtime}/diagnostics.js +0 -0
  829. /package/dist/{core → runtime}/discover-packages.d.ts +0 -0
  830. /package/dist/{core → runtime}/discover-packages.js +0 -0
  831. /package/dist/{core → runtime}/event-bus.d.ts +0 -0
  832. /package/dist/{core → runtime}/event-bus.js +0 -0
  833. /package/dist/{core → runtime}/exec.d.ts +0 -0
  834. /package/dist/{core → runtime}/exec.js +0 -0
  835. /package/dist/{core → runtime}/footer-data-provider.d.ts +0 -0
  836. /package/dist/{core → runtime}/footer-data-provider.js +0 -0
  837. /package/dist/{core/export-html → runtime/html-export}/ansi-to-html.d.ts +0 -0
  838. /package/dist/{core/export-html → runtime/html-export}/ansi-to-html.js +0 -0
  839. /package/dist/{core/export-html → runtime/html-export}/ansi-to-html.ts +0 -0
  840. /package/dist/{core/export-html → runtime/html-export}/index.d.ts +0 -0
  841. /package/dist/{core/export-html → runtime/html-export}/template.css +0 -0
  842. /package/dist/{core/export-html → runtime/html-export}/template.html +0 -0
  843. /package/dist/{core/export-html → runtime/html-export}/template.js +0 -0
  844. /package/dist/{core/export-html → runtime/html-export}/tool-renderer.js +0 -0
  845. /package/dist/{core/export-html → runtime/html-export}/vendor/highlight.min.js +0 -0
  846. /package/dist/{core/export-html → runtime/html-export}/vendor/marked.min.js +0 -0
  847. /package/dist/{core → runtime}/keybindings.d.ts +0 -0
  848. /package/dist/{core → runtime}/keybindings.js +0 -0
  849. /package/dist/{core/hooks → runtime/lifecycle}/index.d.ts +0 -0
  850. /package/dist/{core/hooks → runtime/lifecycle}/index.js +0 -0
  851. /package/dist/{core/hooks → runtime/lifecycle}/loader.d.ts +0 -0
  852. /package/dist/{core/hooks → runtime/lifecycle}/loader.js +0 -0
  853. /package/dist/{core/hooks → runtime/lifecycle}/runner.d.ts +0 -0
  854. /package/dist/{core/hooks → runtime/lifecycle}/runner.js +0 -0
  855. /package/dist/{core/hooks → runtime/lifecycle}/types.d.ts +0 -0
  856. /package/dist/{core/hooks → runtime/lifecycle}/types.js +0 -0
  857. /package/dist/{core → runtime}/messages.d.ts +0 -0
  858. /package/dist/{core → runtime}/messages.js +0 -0
  859. /package/dist/{core → runtime}/model-registry.d.ts +0 -0
  860. /package/dist/{core → runtime}/model-registry.js +0 -0
  861. /package/dist/{core → runtime}/model-resolver.d.ts +0 -0
  862. /package/dist/{core → runtime}/package-manager.d.ts +0 -0
  863. /package/dist/{core → runtime}/package-manager.js +0 -0
  864. /package/dist/{core/extensions → runtime/plugins}/index.d.ts +0 -0
  865. /package/dist/{core/extensions → runtime/plugins}/index.js +0 -0
  866. /package/dist/{core/extensions → runtime/plugins}/loader.d.ts +0 -0
  867. /package/dist/{core/extensions → runtime/plugins}/loader.js +0 -0
  868. /package/dist/{core/extensions → runtime/plugins}/runner.d.ts +0 -0
  869. /package/dist/{core/extensions → runtime/plugins}/types.js +0 -0
  870. /package/dist/{core/extensions → runtime/plugins}/wrapper.js +0 -0
  871. /package/dist/{core → runtime}/prompt-templates.d.ts +0 -0
  872. /package/dist/{core → runtime}/session-manager.d.ts +0 -0
  873. /package/dist/{core → runtime}/session-manager.js +0 -0
  874. /package/dist/{core → runtime}/settings-manager.d.ts +0 -0
  875. /package/dist/{core → runtime}/settings-manager.js +0 -0
  876. /package/dist/{core → runtime}/skills.d.ts +0 -0
  877. /package/dist/{core → runtime}/subagents.d.ts +0 -0
  878. /package/dist/{core → runtime}/system-prompt.d.ts +0 -0
  879. /package/dist/{core → runtime}/system-prompt.js +0 -0
  880. /package/dist/{core → runtime}/task-session-manager.d.ts +0 -0
  881. /package/dist/{core → runtime}/task-session-manager.js +0 -0
  882. /package/dist/{core → runtime}/timings.d.ts +0 -0
  883. /package/dist/{core → runtime}/timings.js +0 -0
  884. /package/dist/{core → runtime}/todo-store.d.ts +0 -0
  885. /package/dist/{core → runtime}/todo-store.js +0 -0
  886. /package/dist/{core/tools → runtime/tooling}/bash.d.ts +0 -0
  887. /package/dist/{core/tools → runtime/tooling}/bash.js +0 -0
  888. /package/dist/{core/tools → runtime/tooling}/bg-process.d.ts +0 -0
  889. /package/dist/{core/tools → runtime/tooling}/bg-process.js +0 -0
  890. /package/dist/{core/tools → runtime/tooling}/edit-diff.d.ts +0 -0
  891. /package/dist/{core/tools → runtime/tooling}/edit-diff.js +0 -0
  892. /package/dist/{core/tools → runtime/tooling}/edit.d.ts +0 -0
  893. /package/dist/{core/tools → runtime/tooling}/edit.js +0 -0
  894. /package/dist/{core/tools → runtime/tooling}/find.d.ts +0 -0
  895. /package/dist/{core/tools → runtime/tooling}/find.js +0 -0
  896. /package/dist/{core/tools → runtime/tooling}/grep.d.ts +0 -0
  897. /package/dist/{core/tools → runtime/tooling}/grep.js +0 -0
  898. /package/dist/{core/tools → runtime/tooling}/index.js +0 -0
  899. /package/dist/{core/tools → runtime/tooling}/ls.d.ts +0 -0
  900. /package/dist/{core/tools → runtime/tooling}/ls.js +0 -0
  901. /package/dist/{core/tools → runtime/tooling}/memory.d.ts +0 -0
  902. /package/dist/{core/tools → runtime/tooling}/memory.js +0 -0
  903. /package/dist/{core/tools → runtime/tooling}/path-utils.d.ts +0 -0
  904. /package/dist/{core/tools → runtime/tooling}/path-utils.js +0 -0
  905. /package/dist/{core/tools → runtime/tooling}/read.d.ts +0 -0
  906. /package/dist/{core/tools → runtime/tooling}/read.js +0 -0
  907. /package/dist/{core/tools → runtime/tooling}/registry.d.ts +0 -0
  908. /package/dist/{core/tools → runtime/tooling}/registry.js +0 -0
  909. /package/dist/{core/tools → runtime/tooling}/task.d.ts +0 -0
  910. /package/dist/{core/tools → runtime/tooling}/task.js +0 -0
  911. /package/dist/{core/tools → runtime/tooling}/todo.d.ts +0 -0
  912. /package/dist/{core/tools → runtime/tooling}/todo.js +0 -0
  913. /package/dist/{core/tools → runtime/tooling}/truncate.d.ts +0 -0
  914. /package/dist/{core/tools → runtime/tooling}/truncate.js +0 -0
  915. /package/dist/{core/tools → runtime/tooling}/webfetch.d.ts +0 -0
  916. /package/dist/{core/tools → runtime/tooling}/webfetch.js +0 -0
  917. /package/dist/{core/tools → runtime/tooling}/websearch.d.ts +0 -0
  918. /package/dist/{core/tools → runtime/tooling}/websearch.js +0 -0
  919. /package/dist/{core/tools → runtime/tooling}/write.d.ts +0 -0
  920. /package/dist/{core/tools → runtime/tooling}/write.js +0 -0
  921. /package/dist/{observability → telemetry}/core/config.d.ts +0 -0
  922. /package/dist/{observability → telemetry}/core/config.js +0 -0
  923. /package/dist/{observability → telemetry}/core/event-bus.d.ts +0 -0
  924. /package/dist/{observability → telemetry}/core/event-bus.js +0 -0
  925. /package/dist/{observability → telemetry}/core/index.d.ts +0 -0
  926. /package/dist/{observability → telemetry}/core/index.js +0 -0
  927. /package/dist/{observability → telemetry}/core/observability.d.ts +0 -0
  928. /package/dist/{observability → telemetry}/core/observability.js +0 -0
  929. /package/dist/{observability → telemetry}/core/span.d.ts +0 -0
  930. /package/dist/{observability → telemetry}/core/span.js +0 -0
  931. /package/dist/{observability → telemetry}/core/tracer.d.ts +0 -0
  932. /package/dist/{observability → telemetry}/core/tracer.js +0 -0
  933. /package/dist/{observability → telemetry}/core/types.d.ts +0 -0
  934. /package/dist/{observability → telemetry}/core/types.js +0 -0
  935. /package/dist/{observability → telemetry}/exporters/base-exporter.d.ts +0 -0
  936. /package/dist/{observability → telemetry}/exporters/base-exporter.js +0 -0
  937. /package/dist/{observability → telemetry}/exporters/console-exporter.d.ts +0 -0
  938. /package/dist/{observability → telemetry}/exporters/console-exporter.js +0 -0
  939. /package/dist/{observability → telemetry}/exporters/file-exporter.d.ts +0 -0
  940. /package/dist/{observability → telemetry}/exporters/file-exporter.js +0 -0
  941. /package/dist/{observability → telemetry}/exporters/index.d.ts +0 -0
  942. /package/dist/{observability → telemetry}/exporters/index.js +0 -0
  943. /package/dist/{observability → telemetry}/exporters/langfuse-exporter.d.ts +0 -0
  944. /package/dist/{observability → telemetry}/exporters/langfuse-exporter.js +0 -0
  945. /package/dist/{observability → telemetry}/exporters/sentry-exporter.d.ts +0 -0
  946. /package/dist/{observability → telemetry}/exporters/sentry-exporter.js +0 -0
  947. /package/dist/{observability → telemetry}/index.d.ts +0 -0
  948. /package/dist/{observability → telemetry}/index.js +0 -0
  949. /package/{docs → guides}/PI_MONO_MIT_REMOVAL_GUIDE.md +0 -0
  950. /package/{docs → guides}/SAME_TO_SAME_PARITY_REPORT.md +0 -0
@@ -1,746 +0,0 @@
1
- /**
2
- * Login Handler - AI provider authentication and credential management
3
- *
4
- * Responsibilities:
5
- * - Handle login and logout commands for AI providers
6
- * - Support OAuth and API key-based authentication
7
- * - Manage multi-account support per provider
8
- * - Store and retrieve credentials securely
9
- * - Validate credentials before storage
10
- * - Display available providers and saved accounts
11
- *
12
- * SECURITY CONSIDERATIONS:
13
- * - Credentials are stored in ~/.indusagi/agent/auth.json with restricted file permissions
14
- * - API keys are never logged or printed to console
15
- * - OAuth tokens are stored with expiration times
16
- * - Environment variables are checked before prompting for input
17
- * - Credentials are validated before being saved
18
- *
19
- * MULTI-ACCOUNT SUPPORT:
20
- * - Each provider can have multiple named accounts
21
- * - Default account can be set for each provider
22
- * - Users can switch between accounts using --account flag
23
- *
24
- * Based on login/logout patterns from openclaw
25
- * Original: https://github.com/varunisrani/indusagi-ts/vendor/indusagi-agent
26
- *
27
- * Adapted to:
28
- * - Improve error messages
29
- * - Add comprehensive documentation
30
- * - Add security-focused comments
31
- * - Add credential validation
32
- * - Enhance UX with better prompts
33
- */
34
- // ============================================================================
35
- // IMPORTS
36
- // ============================================================================
37
- // External dependencies
38
- import { getEnvApiKey, getOAuthProviders } from "indusagi/ai";
39
- import chalk from "chalk";
40
- import { createInterface } from "readline";
41
- // Local module imports
42
- import { AuthStorage } from "../core/auth-storage.js";
43
- import { getAgentDir } from "../config.js";
44
- // ============================================================================
45
- // CUSTOM ERROR CLASSES
46
- // ============================================================================
47
- /**
48
- * Login/authentication error with helpful suggestions
49
- *
50
- * @class LoginError
51
- * @extends {Error}
52
- */
53
- export class LoginError extends Error {
54
- constructor(message, code, suggestion) {
55
- super(message);
56
- this.code = code;
57
- this.suggestion = suggestion;
58
- this.name = "LoginError";
59
- }
60
- }
61
- /**
62
- * Credential validation error
63
- *
64
- * @class CredentialValidationError
65
- * @extends {Error}
66
- */
67
- export class CredentialValidationError extends Error {
68
- constructor(message, code, suggestion) {
69
- super(message);
70
- this.code = code;
71
- this.suggestion = suggestion;
72
- this.name = "CredentialValidationError";
73
- }
74
- }
75
- // ============================================================================
76
- // VALIDATION FUNCTIONS
77
- // ============================================================================
78
- /**
79
- * Validate API key format
80
- *
81
- * Checks for common API key patterns and basic format validation
82
- * Note: This is a basic check; actual validation happens when the key is used
83
- *
84
- * @param apiKey - The API key to validate
85
- * @param provider - Provider name for error messages
86
- * @throws {CredentialValidationError} If key format appears invalid
87
- */
88
- function validateApiKey(apiKey, provider) {
89
- if (!apiKey || apiKey.trim().length === 0) {
90
- throw new CredentialValidationError("API key cannot be empty", "EMPTY_API_KEY");
91
- }
92
- const trimmedKey = apiKey.trim();
93
- // Basic length check (most API keys are at least 20 characters)
94
- if (trimmedKey.length < 20) {
95
- throw new CredentialValidationError(`API key appears too short (${trimmedKey.length} characters). Most API keys are 20+ characters.`, "API_KEY_TOO_SHORT");
96
- }
97
- // Check for obvious placeholder values
98
- const lowerKey = trimmedKey.toLowerCase();
99
- const placeholders = ["your-api-key", "api-key", "enter-key", "paste-key"];
100
- if (placeholders.some((p) => lowerKey.includes(p))) {
101
- throw new CredentialValidationError("API key appears to be a placeholder. Please enter your actual API key.", "PLACEHOLDER_API_KEY");
102
- }
103
- }
104
- /**
105
- * Validate account name format
106
- *
107
- * @param accountName - Account name to validate
108
- * @throws {CredentialValidationError} If account name is invalid
109
- */
110
- function validateAccountName(accountName) {
111
- if (!accountName || accountName.trim().length === 0) {
112
- throw new CredentialValidationError("Account name cannot be empty", "EMPTY_ACCOUNT_NAME");
113
- }
114
- const trimmed = accountName.trim();
115
- // Check length limit
116
- if (trimmed.length > 50) {
117
- throw new CredentialValidationError("Account name must be 50 characters or less", "ACCOUNT_NAME_TOO_LONG");
118
- }
119
- // Check for invalid characters
120
- if (!/^[a-zA-Z0-9_-]+$/.test(trimmed)) {
121
- throw new CredentialValidationError("Account name can only contain letters, numbers, hyphens, and underscores", "INVALID_ACCOUNT_NAME");
122
- }
123
- }
124
- /**
125
- * Validate provider ID
126
- *
127
- * @param provider - Provider ID to validate
128
- * @returns True if provider is valid
129
- */
130
- function isValidProvider(provider) {
131
- const validProviders = [
132
- "kimi",
133
- "kimi-coding",
134
- "anthropic",
135
- "openai",
136
- "google",
137
- "groq",
138
- "cerebras",
139
- "xai",
140
- "openrouter",
141
- "vercel-ai-gateway",
142
- "zai",
143
- "mistral",
144
- "minimax",
145
- "minimax-cn",
146
- "opencode",
147
- ];
148
- return validProviders.includes(provider);
149
- }
150
- // ============================================================================
151
- // PARSER FUNCTIONS
152
- // ============================================================================
153
- /**
154
- * Parse login/logout command arguments
155
- *
156
- * Extracts options from command line arguments
157
- *
158
- * @param args - Array of command line arguments
159
- * @returns LoginOptions object or undefined if not a login/logout command
160
- */
161
- function parseLoginCommand(args) {
162
- const [command, ...rest] = args;
163
- // Check if this is a login or logout command
164
- if (command !== "login" && command !== "logout") {
165
- return undefined;
166
- }
167
- const options = {};
168
- const isLogout = command === "logout";
169
- // Parse command options
170
- for (let i = 0; i < rest.length; i++) {
171
- const arg = rest[i];
172
- if (arg === "--provider" && i + 1 < rest.length) {
173
- options.provider = rest[++i];
174
- }
175
- else if (arg === "--account" && i + 1 < rest.length) {
176
- options.account = rest[++i];
177
- }
178
- else if (arg === "--list") {
179
- options.list = true;
180
- }
181
- else if (arg === "--all" && isLogout) {
182
- options.all = true;
183
- }
184
- }
185
- return options;
186
- }
187
- // ============================================================================
188
- // MAIN HANDLER FUNCTIONS
189
- // ============================================================================
190
- /**
191
- * Handle login/logout commands
192
- *
193
- * Entry point for the login/logout command flow:
194
- * 1. Parse command options
195
- * 2. Initialize auth storage
196
- * 3. Route to appropriate handler (list, logout, login)
197
- *
198
- * @param args - Command line arguments
199
- * @returns Promise resolving to true if command was handled
200
- *
201
- * @throws {LoginError} If command fails
202
- *
203
- * @example
204
- * ```typescript
205
- * // Handle login command
206
- * await handleLoginCommand(["login", "--provider", "openai"]);
207
- *
208
- * // Handle logout command
209
- * await handleLoginCommand(["logout", "--provider", "openai"]);
210
- * ```
211
- */
212
- export async function handleLoginCommand(args) {
213
- const options = parseLoginCommand(args);
214
- // Return false if not a login/logout command
215
- if (!options) {
216
- return false;
217
- }
218
- // Initialize auth storage with agent directory
219
- const agentDir = getAgentDir();
220
- const authStorage = new AuthStorage(agentDir);
221
- // Handle --list flag: show saved accounts
222
- if (options.list) {
223
- await listAccounts(authStorage);
224
- return true;
225
- }
226
- // If provider not specified, show provider selection
227
- if (!options.provider) {
228
- await showProviderSelection(authStorage);
229
- return true;
230
- }
231
- // Validate provider
232
- if (!isValidProvider(options.provider)) {
233
- throw new LoginError(`Unknown provider: ${options.provider}`, "UNKNOWN_PROVIDER", "Run with --list to see available providers");
234
- }
235
- // Handle logout command
236
- if (args[0] === "logout") {
237
- await logoutFromProvider(authStorage, options.provider, options.account, options.all);
238
- return true;
239
- }
240
- // Login to specific provider
241
- await loginToProvider(authStorage, options.provider, options.account);
242
- return true;
243
- }
244
- // ============================================================================
245
- // LIST ACCOUNTS
246
- // ============================================================================
247
- /**
248
- * List all saved accounts across all providers
249
- *
250
- * Displays:
251
- * - Provider name and account count
252
- * - Each account with name and type
253
- * - Default account indicator
254
- * - Credential status (valid/expired)
255
- *
256
- * @param authStorage - Auth storage instance
257
- */
258
- async function listAccounts(authStorage) {
259
- console.log(chalk.bold("\n🔐 Saved Accounts:\n"));
260
- const providers = authStorage.list();
261
- if (providers.length === 0) {
262
- console.log(chalk.dim("No saved accounts. Use 'indusagi login --provider <provider>' to add accounts.\n"));
263
- return;
264
- }
265
- // Display each provider and its accounts
266
- for (const provider of providers) {
267
- const accounts = authStorage.getAccounts(provider);
268
- const defaultAccount = authStorage.getDefaultAccount(provider);
269
- console.log(chalk.cyan(`${provider} (${accounts.length} account${accounts.length !== 1 ? "s" : ""}):`));
270
- for (const { accountId, credential } of accounts) {
271
- const isDefault = accountId === defaultAccount;
272
- const defaultMarker = isDefault ? chalk.green(" [default]") : "";
273
- const type = credential.type === "oauth" ? "OAuth" : "API key";
274
- const name = credential.accountName || accountId;
275
- let status = "✓";
276
- if (credential.type === "oauth") {
277
- // Check if OAuth token is expired
278
- const expired = Date.now() >= credential.expires;
279
- status = expired ? chalk.yellow("⚠ expired") : chalk.green("✓");
280
- }
281
- console.log(` ${status} ${name}${defaultMarker} (${type})`);
282
- }
283
- console.log();
284
- }
285
- }
286
- // ============================================================================
287
- // PROVIDER SELECTION
288
- // ============================================================================
289
- /**
290
- * Show interactive provider selection and help
291
- *
292
- * Displays:
293
- * - List of OAuth providers with account counts
294
- * - List of API key providers with account counts
295
- * - Usage examples
296
- *
297
- * @param authStorage - Auth storage instance
298
- */
299
- async function showProviderSelection(authStorage) {
300
- // Get OAuth providers from indusagi/ai
301
- const oauthProviders = getOAuthProviders().map((p) => ({
302
- id: p.id,
303
- name: p.name,
304
- auth: "OAuth",
305
- }));
306
- // Define API key providers
307
- const apiKeyProviders = [
308
- { id: "kimi", name: "Kimi (Moonshot AI)", auth: "API key" },
309
- { id: "kimi-coding", name: "Kimi Code (Moonshot - Subscription)", auth: "API key" },
310
- { id: "anthropic", name: "Anthropic (Claude)", auth: "API key" },
311
- { id: "openai", name: "OpenAI", auth: "API key" },
312
- { id: "google", name: "Google (Gemini)", auth: "API key" },
313
- { id: "groq", name: "Groq", auth: "API key" },
314
- { id: "cerebras", name: "Cerebras", auth: "API key" },
315
- { id: "xai", name: "xAI (Grok)", auth: "API key" },
316
- { id: "openrouter", name: "OpenRouter", auth: "API key" },
317
- { id: "vercel-ai-gateway", name: "Vercel AI Gateway", auth: "API key" },
318
- { id: "zai", name: "Z.AI (GLM)", auth: "API key" },
319
- { id: "mistral", name: "Mistral", auth: "API key" },
320
- { id: "minimax", name: "MiniMax", auth: "API key" },
321
- { id: "minimax-cn", name: "MiniMax (China)", auth: "API key" },
322
- { id: "opencode", name: "OpenCode Zen", auth: "API key" },
323
- ];
324
- console.log(chalk.bold("\n🔐 Available Providers for Authentication\n"));
325
- // Display OAuth providers
326
- console.log(chalk.dim("OAuth Providers:"));
327
- oauthProviders.forEach((p, idx) => {
328
- const accountCount = authStorage.getAccounts(p.id).length;
329
- const accountInfo = accountCount > 0 ? chalk.green(` (${accountCount} saved)`) : "";
330
- console.log(` ${idx + 1}. ${p.name} ${chalk.dim(`(${p.auth})`)}${accountInfo}`);
331
- });
332
- // Display API key providers
333
- console.log(chalk.dim("\nAPI Key Providers:"));
334
- apiKeyProviders.forEach((p, idx) => {
335
- const accountCount = authStorage.getAccounts(p.id).length;
336
- const accountInfo = accountCount > 0 ? chalk.green(` (${accountCount} saved)`) : "";
337
- console.log(` ${oauthProviders.length + idx + 1}. ${p.name} ${chalk.dim(`(${p.auth})`)}${accountInfo}`);
338
- });
339
- console.log("\n" + chalk.dim("Run: indusagi login --provider <provider-id> [--account <name>]"));
340
- console.log(chalk.dim("Example: indusagi login --provider minimax --account production\n"));
341
- // Show examples
342
- console.log(chalk.bold("Examples:"));
343
- console.log(` ${chalk.cyan("indusagi login --provider anthropic --account personal")} ${chalk.dim("# Login to Claude (personal)")}`);
344
- console.log(` ${chalk.cyan("indusagi login --provider anthropic --account work")} ${chalk.dim("# Login to Claude (work)")}`);
345
- console.log(` ${chalk.cyan("indusagi login --provider minimax --account prod")} ${chalk.dim("# Add MiniMax API key (prod)")}`);
346
- console.log(` ${chalk.cyan("indusagi login --provider minimax --account dev")} ${chalk.dim("# Add MiniMax API key (dev)")}`);
347
- console.log(` ${chalk.cyan("indusagi login --list")} ${chalk.dim("# List all saved accounts")}`);
348
- console.log(` ${chalk.cyan("indusagi logout --provider minimax --account dev")} ${chalk.dim("# Logout specific account")}\n`);
349
- }
350
- // ============================================================================
351
- // LOGIN FLOW
352
- // ============================================================================
353
- /**
354
- * Handle login to a specific provider
355
- *
356
- * Flow:
357
- * 1. Check if provider supports OAuth
358
- * 2. If accounts exist, ask to use existing or add new
359
- * 3. For OAuth: start OAuth flow with browser
360
- * 4. For API key: prompt for key and validate
361
- * 5. Save credentials securely
362
- * 6. Set as default if first account
363
- *
364
- * @param authStorage - Auth storage instance
365
- * @param provider - Provider ID
366
- * @param accountId - Optional account name (defaults to "default")
367
- *
368
- * @throws {LoginError} If login fails
369
- */
370
- async function loginToProvider(authStorage, provider, accountId) {
371
- // Check if this is an OAuth provider
372
- const oauthProviders = getOAuthProviders();
373
- const oauthProvider = oauthProviders.find((p) => p.id === provider);
374
- // Generate or validate account name
375
- let targetAccountId = accountId || "default";
376
- const existingAccounts = authStorage.getAccounts(provider);
377
- // If no account specified and accounts exist, ask user what to do
378
- if (!accountId && existingAccounts.length > 0) {
379
- console.log(chalk.yellow(`\n⚠️ Provider '${provider}' already has ${existingAccounts.length} saved account(s):`));
380
- for (const { accountId: id, credential } of existingAccounts) {
381
- const name = credential.accountName || id;
382
- const isDefault = id === authStorage.getDefaultAccount(provider);
383
- console.log(` - ${name}${isDefault ? " [default]" : ""}`);
384
- }
385
- const choice = await promptChoice("What would you like to do?", ["Use existing account", "Add new account"]);
386
- if (choice === "Use existing account") {
387
- // Select existing account
388
- const selected = await promptChoice("Select account:", existingAccounts.map((a) => a.credential.accountName || a.accountId));
389
- const selectedAccount = existingAccounts.find((a) => (a.credential.accountName || a.accountId) === selected);
390
- if (selectedAccount) {
391
- authStorage.setDefaultAccount(provider, selectedAccount.accountId);
392
- console.log(chalk.green.bold(`\n✅ Switched to account: ${selected}\n`));
393
- }
394
- return;
395
- }
396
- // User wants to add new account - prompt for name
397
- const newName = await promptInput("Enter new account name (e.g., 'work', 'personal'):");
398
- if (!newName || newName.trim() === "") {
399
- throw new LoginError("Account name is required", "ACCOUNT_NAME_REQUIRED", "Provide a descriptive account name");
400
- }
401
- // Validate account name
402
- try {
403
- validateAccountName(newName.trim());
404
- }
405
- catch (error) {
406
- if (error instanceof CredentialValidationError) {
407
- throw new LoginError(error.message, error.code, "Use letters, numbers, hyphens, and underscores only");
408
- }
409
- throw error;
410
- }
411
- // Check if name already exists
412
- const nameExists = existingAccounts.some((a) => (a.credential.accountName || a.accountId) === newName.trim());
413
- if (nameExists) {
414
- throw new LoginError(`Account '${newName}' already exists for ${provider}`, "ACCOUNT_EXISTS", "Choose a different account name");
415
- }
416
- accountId = newName.trim();
417
- }
418
- // Ensure accountId is set (default to targetAccountId if not explicitly set)
419
- const finalAccountId = accountId || targetAccountId;
420
- console.log(chalk.bold(`\n🔐 Logging in to ${provider}${finalAccountId ? ` [${finalAccountId}]` : ""}...\n`));
421
- // Handle OAuth login
422
- if (oauthProvider) {
423
- await handleOAuthLogin(authStorage, provider, oauthProvider.name, targetAccountId, finalAccountId);
424
- return;
425
- }
426
- // Handle API key login
427
- await handleApiKeyLogin(authStorage, provider, targetAccountId, finalAccountId);
428
- }
429
- /**
430
- * Handle OAuth login flow
431
- *
432
- * @param authStorage - Auth storage instance
433
- * @param provider - Provider ID
434
- * @param providerName - Human-readable provider name
435
- * @param targetAccountId - Account ID to use
436
- * @param displayAccountId - Account name for display
437
- */
438
- async function handleOAuthLogin(authStorage, provider, providerName, targetAccountId, displayAccountId) {
439
- console.log(chalk.dim(`Starting OAuth flow for ${providerName}...`));
440
- console.log(chalk.dim("A browser window should open. Complete login to finish.\n"));
441
- try {
442
- // Execute OAuth login
443
- await authStorage.login(provider, {
444
- // Called when auth URL is available
445
- onAuth: (info) => {
446
- console.log(chalk.dim(`Opening: ${info.url}`));
447
- if (info.instructions) {
448
- console.log(chalk.dim(info.instructions));
449
- }
450
- },
451
- // Called when user input is needed during OAuth
452
- onPrompt: async (prompt) => {
453
- return promptInput(prompt.message);
454
- },
455
- // Called for progress updates
456
- onProgress: (msg) => {
457
- console.log(chalk.dim(msg));
458
- },
459
- }, targetAccountId, displayAccountId);
460
- console.log(chalk.green.bold(`\n✅ Login successful! Account: ${displayAccountId || "default"}\n`));
461
- console.log(chalk.dim(`Use: indusagi --provider ${provider} --account ${displayAccountId || "default"} [options]\n`));
462
- }
463
- catch (error) {
464
- throw new LoginError(`Login failed: ${error instanceof Error ? error.message : error}`, "OAUTH_LOGIN_FAILED", "Try again or check your internet connection");
465
- }
466
- }
467
- /**
468
- * Handle API key login flow
469
- *
470
- * @param authStorage - Auth storage instance
471
- * @param provider - Provider ID
472
- * @param targetAccountId - Account ID to use
473
- * @param displayAccountId - Account name for display
474
- */
475
- async function handleApiKeyLogin(authStorage, provider, targetAccountId, displayAccountId) {
476
- // Check for existing environment variable
477
- const envKey = getEnvApiKey(provider);
478
- // Get provider info for help message
479
- const providerInfo = getProviderInfo(provider);
480
- if (!providerInfo) {
481
- throw new LoginError(`Unknown provider: ${provider}`, "UNKNOWN_PROVIDER");
482
- }
483
- // Show help message with API key URL
484
- if (providerInfo.helpUrl) {
485
- prompter.note(`Get your ${providerInfo.name} API key at:\n${providerInfo.helpUrl}`, providerInfo.name);
486
- }
487
- // Check for existing env variable
488
- if (envKey) {
489
- const useExisting = await promptChoice(`Use existing ${providerInfo.envVar} (from environment)?`, ["Yes", "No, enter a new key"]);
490
- if (useExisting === "Yes") {
491
- // Validate environment variable API key
492
- try {
493
- validateApiKey(envKey, provider);
494
- }
495
- catch (error) {
496
- if (error instanceof CredentialValidationError) {
497
- throw new LoginError(error.message, error.code, error.suggestion);
498
- }
499
- throw error;
500
- }
501
- // Save using environment variable
502
- authStorage.set(provider, targetAccountId, {
503
- type: "api_key",
504
- key: envKey,
505
- accountId: targetAccountId,
506
- accountName: displayAccountId || "Default",
507
- });
508
- console.log(chalk.green.bold(`\n✅ Login successful! Account: ${displayAccountId || "default"}\n`));
509
- console.log(chalk.dim(`Using ${providerInfo.envVar} from environment`));
510
- console.log(chalk.dim(`Use: indusagi --provider ${provider} --account ${displayAccountId || "default"} [options]\n`));
511
- return;
512
- }
513
- }
514
- // Prompt for API key
515
- const apiKey = await promptInput(`Enter ${providerInfo.name} API key:`);
516
- if (!apiKey || apiKey.trim() === "") {
517
- throw new LoginError("API key is required", "API_KEY_REQUIRED", "Provide your API key to continue");
518
- }
519
- // Validate API key
520
- try {
521
- validateApiKey(apiKey.trim(), provider);
522
- }
523
- catch (error) {
524
- if (error instanceof CredentialValidationError) {
525
- throw new LoginError(error.message, error.code, error.suggestion);
526
- }
527
- throw error;
528
- }
529
- // Save API key securely
530
- authStorage.set(provider, targetAccountId, {
531
- type: "api_key",
532
- key: apiKey.trim(),
533
- accountId: targetAccountId,
534
- accountName: displayAccountId || "Default",
535
- });
536
- console.log(chalk.green.bold(`\n✅ Login successful! Account: ${displayAccountId || "default"}\n`));
537
- console.log(chalk.dim(`API key saved for ${provider}/${displayAccountId || "default"}`));
538
- console.log(chalk.dim(`Use: indusagi --provider ${provider} --account ${displayAccountId || "default"} [options]\n`));
539
- }
540
- // ============================================================================
541
- // LOGOUT FLOW
542
- // ============================================================================
543
- /**
544
- * Handle logout from provider
545
- *
546
- * @param authStorage - Auth storage instance
547
- * @param provider - Provider ID
548
- * @param accountId - Optional account ID to logout
549
- * @param all - If true, logout all accounts for provider
550
- */
551
- async function logoutFromProvider(authStorage, provider, accountId, all) {
552
- // Logout all accounts if --all flag is set
553
- if (all) {
554
- authStorage.logout(provider);
555
- console.log(chalk.green.bold(`\n✅ Logged out all accounts for: ${provider}\n`));
556
- return;
557
- }
558
- const accounts = authStorage.getAccounts(provider);
559
- // Check if any accounts exist
560
- if (accounts.length === 0) {
561
- console.log(chalk.yellow(`\n⚠️ No accounts found for: ${provider}\n`));
562
- return;
563
- }
564
- // If specific account provided, logout it
565
- if (accountId) {
566
- authStorage.logout(provider, accountId);
567
- console.log(chalk.green.bold(`\n✅ Logged out: ${provider}/${accountId}\n`));
568
- return;
569
- }
570
- // If multiple accounts exist, ask which one to logout
571
- if (accounts.length > 1) {
572
- const selected = await promptChoice("Select account to logout:", [...accounts.map((a) => a.credential.accountName || a.accountId), "All accounts"]);
573
- if (selected === "All accounts") {
574
- authStorage.logout(provider);
575
- console.log(chalk.green.bold(`\n✅ Logged out all accounts for: ${provider}\n`));
576
- }
577
- else {
578
- const selectedAccount = accounts.find((a) => (a.credential.accountName || a.accountId) === selected);
579
- if (selectedAccount) {
580
- authStorage.logout(provider, selectedAccount.accountId);
581
- console.log(chalk.green.bold(`\n✅ Logged out: ${provider}/${selected}\n`));
582
- }
583
- }
584
- return;
585
- }
586
- // Single account - logout it
587
- const singleAccount = accounts[0];
588
- authStorage.logout(provider, singleAccount.accountId);
589
- console.log(chalk.green.bold(`\n✅ Logged out: ${provider}/${singleAccount.credential.accountName || singleAccount.accountId}\n`));
590
- }
591
- // ============================================================================
592
- // PROVIDER INFO
593
- // ============================================================================
594
- /**
595
- * Get provider information for help messages
596
- *
597
- * @param provider - Provider ID
598
- * @returns Provider info or undefined if provider not found
599
- */
600
- function getProviderInfo(provider) {
601
- const providers = {
602
- kimi: {
603
- name: "Kimi (Moonshot AI)",
604
- envVar: "MOONSHOT_API_KEY",
605
- helpUrl: "https://www.moonshot.cn/",
606
- },
607
- "kimi-coding": {
608
- name: "Kimi Code (Moonshot - Subscription)",
609
- envVar: "KIMI_API_KEY",
610
- helpUrl: "https://www.kimi.com/code/en",
611
- },
612
- moonshot: {
613
- name: "Moonshot AI (Kimi)",
614
- envVar: "MOONSHOT_API_KEY",
615
- helpUrl: "https://www.moonshot.cn/",
616
- },
617
- anthropic: {
618
- name: "Anthropic (Claude)",
619
- envVar: "ANTHROPIC_API_KEY",
620
- helpUrl: "https://console.anthropic.com/",
621
- },
622
- openai: {
623
- name: "OpenAI",
624
- envVar: "OPENAI_API_KEY",
625
- helpUrl: "https://platform.openai.com/api-keys",
626
- },
627
- google: {
628
- name: "Google (Gemini)",
629
- envVar: "GEMINI_API_KEY",
630
- helpUrl: "https://aistudio.google.com/app/apikey",
631
- },
632
- groq: {
633
- name: "Groq",
634
- envVar: "GROQ_API_KEY",
635
- helpUrl: "https://console.groq.com/keys",
636
- },
637
- cerebras: {
638
- name: "Cerebras",
639
- envVar: "CEREBRAS_API_KEY",
640
- helpUrl: "https://cloud.cerebras.ai/",
641
- },
642
- xai: {
643
- name: "xAI (Grok)",
644
- envVar: "XAI_API_KEY",
645
- helpUrl: "https://x.ai/api",
646
- },
647
- openrouter: {
648
- name: "OpenRouter",
649
- envVar: "OPENROUTER_API_KEY",
650
- helpUrl: "https://openrouter.ai/keys",
651
- },
652
- "vercel-ai-gateway": {
653
- name: "Vercel AI Gateway",
654
- envVar: "AI_GATEWAY_API_KEY",
655
- helpUrl: "https://vercel.com/docs/ai-gateway",
656
- },
657
- zai: {
658
- name: "Z.AI (GLM)",
659
- envVar: "ZAI_API_KEY",
660
- helpUrl: "https://api.z.ai/",
661
- },
662
- mistral: {
663
- name: "Mistral",
664
- envVar: "MISTRAL_API_KEY",
665
- helpUrl: "https://console.mistral.ai/",
666
- },
667
- minimax: {
668
- name: "MiniMax",
669
- envVar: "MINIMAX_API_KEY",
670
- helpUrl: "https://www.minimaxi.com/",
671
- },
672
- "minimax-cn": {
673
- name: "MiniMax (China)",
674
- envVar: "MINIMAX_CN_API_KEY",
675
- helpUrl: "https://www.minimaxi.com/",
676
- },
677
- opencode: {
678
- name: "OpenCode Zen",
679
- envVar: "OPENCODE_API_KEY",
680
- helpUrl: "https://opencode.ai/",
681
- },
682
- };
683
- return providers[provider];
684
- }
685
- // ============================================================================
686
- // PROMPT UTILITIES
687
- // ============================================================================
688
- /**
689
- * Prompter object with helper methods
690
- * Provides consistent formatting for user prompts
691
- */
692
- const prompter = {
693
- /**
694
- * Display a note/info message to user
695
- *
696
- * @param message - The message to display
697
- * @param title - Title for the note
698
- */
699
- note(message, title) {
700
- console.log(`\n${chalk.bold(title)}`);
701
- console.log(chalk.dim(message) + "\n");
702
- },
703
- };
704
- /**
705
- * Prompt user to select from a list of options
706
- *
707
- * @param question - The question to ask
708
- * @param options - Array of option strings
709
- * @returns Promise resolving to selected option
710
- */
711
- function promptChoice(question, options) {
712
- return new Promise((resolve) => {
713
- const rl = createInterface({
714
- input: process.stdin,
715
- output: process.stdout,
716
- });
717
- console.log(chalk.bold(`\n? ${question}`));
718
- options.forEach((opt, idx) => {
719
- console.log(` ${idx + 1}. ${opt}`);
720
- });
721
- rl.question(chalk.bold("Select (1-" + options.length + "): "), (answer) => {
722
- rl.close();
723
- const idx = parseInt(answer, 10) - 1;
724
- resolve(options[idx] || options[0]);
725
- });
726
- });
727
- }
728
- /**
729
- * Prompt user for text input
730
- *
731
- * @param question - The question to ask
732
- * @returns Promise resolving to user's input
733
- */
734
- function promptInput(question) {
735
- return new Promise((resolve) => {
736
- const rl = createInterface({
737
- input: process.stdin,
738
- output: process.stdout,
739
- });
740
- rl.question(chalk.bold(`\n? ${question}: `), (answer) => {
741
- rl.close();
742
- resolve(answer.trim());
743
- });
744
- });
745
- }
746
- //# sourceMappingURL=login-handler.js.map