@vybestack/llxprt-code 0.3.4 → 0.4.1-nightly.250923.fc764b9f

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 (228) hide show
  1. package/README.md +3 -0
  2. package/dist/package.json +7 -6
  3. package/dist/src/auth/anthropic-oauth-provider.d.ts +4 -0
  4. package/dist/src/auth/anthropic-oauth-provider.js +14 -0
  5. package/dist/src/auth/anthropic-oauth-provider.js.map +1 -1
  6. package/dist/src/auth/gemini-oauth-provider.d.ts +7 -1
  7. package/dist/src/auth/gemini-oauth-provider.js +48 -9
  8. package/dist/src/auth/gemini-oauth-provider.js.map +1 -1
  9. package/dist/src/auth/qwen-oauth-provider.d.ts +5 -1
  10. package/dist/src/auth/qwen-oauth-provider.js +6 -0
  11. package/dist/src/auth/qwen-oauth-provider.js.map +1 -1
  12. package/dist/src/commands/extensions/examples/context/LLXPRT.md +8 -0
  13. package/dist/src/commands/extensions/examples/context/llxprt-extension.json +5 -0
  14. package/dist/src/commands/extensions/examples/custom-commands/commands/fs/grep-code.toml +6 -0
  15. package/dist/src/commands/extensions/examples/custom-commands/llxprt-extension.json +4 -0
  16. package/dist/src/commands/extensions/examples/exclude-tools/llxprt-extension.json +5 -0
  17. package/dist/src/commands/extensions/examples/mcp-server/example.d.ts +6 -0
  18. package/dist/src/commands/extensions/examples/mcp-server/example.js +46 -0
  19. package/dist/src/commands/extensions/examples/mcp-server/example.js.map +1 -0
  20. package/dist/src/commands/extensions/examples/mcp-server/example.ts +60 -0
  21. package/dist/src/commands/extensions/examples/mcp-server/llxprt-extension.json +10 -0
  22. package/dist/src/commands/extensions/install.js +35 -7
  23. package/dist/src/commands/extensions/install.js.map +1 -1
  24. package/dist/src/commands/extensions/install.test.js +20 -2
  25. package/dist/src/commands/extensions/install.test.js.map +1 -1
  26. package/dist/src/commands/extensions/link.d.ts +12 -0
  27. package/dist/src/commands/extensions/link.js +37 -0
  28. package/dist/src/commands/extensions/link.js.map +1 -0
  29. package/dist/src/commands/extensions/new.d.ts +7 -0
  30. package/dist/src/commands/extensions/new.js +70 -0
  31. package/dist/src/commands/extensions/new.js.map +1 -0
  32. package/dist/src/commands/extensions/new.test.d.ts +6 -0
  33. package/dist/src/commands/extensions/new.test.js +50 -0
  34. package/dist/src/commands/extensions/new.test.js.map +1 -0
  35. package/dist/src/commands/extensions/update.d.ts +2 -1
  36. package/dist/src/commands/extensions/update.js +40 -13
  37. package/dist/src/commands/extensions/update.js.map +1 -1
  38. package/dist/src/commands/extensions.js +4 -0
  39. package/dist/src/commands/extensions.js.map +1 -1
  40. package/dist/src/commands/mcp/add.js +1 -1
  41. package/dist/src/commands/mcp/add.js.map +1 -1
  42. package/dist/src/commands/mcp/list.js +2 -2
  43. package/dist/src/commands/mcp/list.js.map +1 -1
  44. package/dist/src/commands/mcp/remove.js +1 -1
  45. package/dist/src/commands/mcp/remove.js.map +1 -1
  46. package/dist/src/config/auth.d.ts +1 -1
  47. package/dist/src/config/auth.js +6 -13
  48. package/dist/src/config/auth.js.map +1 -1
  49. package/dist/src/config/auth.test.js +13 -7
  50. package/dist/src/config/auth.test.js.map +1 -1
  51. package/dist/src/config/config.d.ts +4 -1
  52. package/dist/src/config/config.js +47 -23
  53. package/dist/src/config/config.js.map +1 -1
  54. package/dist/src/config/extension.d.ts +8 -5
  55. package/dist/src/config/extension.js +76 -24
  56. package/dist/src/config/extension.js.map +1 -1
  57. package/dist/src/config/keyBindings.d.ts +1 -0
  58. package/dist/src/config/keyBindings.js +6 -25
  59. package/dist/src/config/keyBindings.js.map +1 -1
  60. package/dist/src/config/settings.d.ts +4 -4
  61. package/dist/src/config/settings.js +101 -68
  62. package/dist/src/config/settings.js.map +1 -1
  63. package/dist/src/config/settingsSchema.d.ts +252 -3
  64. package/dist/src/config/settingsSchema.js +248 -3
  65. package/dist/src/config/settingsSchema.js.map +1 -1
  66. package/dist/src/config/trustedFolders.d.ts +14 -3
  67. package/dist/src/config/trustedFolders.js +63 -37
  68. package/dist/src/config/trustedFolders.js.map +1 -1
  69. package/dist/src/config/trustedFolders.test.js +84 -9
  70. package/dist/src/config/trustedFolders.test.js.map +1 -1
  71. package/dist/src/gemini.js +74 -18
  72. package/dist/src/gemini.js.map +1 -1
  73. package/dist/src/gemini.test.js +7 -23
  74. package/dist/src/gemini.test.js.map +1 -1
  75. package/dist/src/generated/git-commit.d.ts +1 -1
  76. package/dist/src/generated/git-commit.js +1 -1
  77. package/dist/src/nonInteractiveCli.js +32 -2
  78. package/dist/src/nonInteractiveCli.js.map +1 -1
  79. package/dist/src/providers/providerManagerInstance.d.ts +2 -1
  80. package/dist/src/providers/providerManagerInstance.js +27 -5
  81. package/dist/src/providers/providerManagerInstance.js.map +1 -1
  82. package/dist/src/services/FileCommandLoader.d.ts +2 -0
  83. package/dist/src/services/FileCommandLoader.js +7 -0
  84. package/dist/src/services/FileCommandLoader.js.map +1 -1
  85. package/dist/src/ui/App.js +104 -52
  86. package/dist/src/ui/App.js.map +1 -1
  87. package/dist/src/ui/commands/directoryCommand.js +1 -1
  88. package/dist/src/ui/commands/directoryCommand.js.map +1 -1
  89. package/dist/src/ui/commands/memoryCommand.js +1 -1
  90. package/dist/src/ui/commands/memoryCommand.js.map +1 -1
  91. package/dist/src/ui/commands/providerCommand.js +21 -8
  92. package/dist/src/ui/commands/providerCommand.js.map +1 -1
  93. package/dist/src/ui/components/AuthDialog.test.js +13 -13
  94. package/dist/src/ui/components/AuthDialog.test.js.map +1 -1
  95. package/dist/src/ui/components/FolderTrustDialog.js +5 -3
  96. package/dist/src/ui/components/FolderTrustDialog.js.map +1 -1
  97. package/dist/src/ui/components/FolderTrustDialog.test.js +21 -6
  98. package/dist/src/ui/components/FolderTrustDialog.test.js.map +1 -1
  99. package/dist/src/ui/components/Footer.d.ts +3 -0
  100. package/dist/src/ui/components/Footer.js +4 -4
  101. package/dist/src/ui/components/Footer.js.map +1 -1
  102. package/dist/src/ui/components/GeminiRespondingSpinner.js +5 -3
  103. package/dist/src/ui/components/GeminiRespondingSpinner.js.map +1 -1
  104. package/dist/src/ui/components/InputPrompt.d.ts +2 -2
  105. package/dist/src/ui/components/InputPrompt.js +35 -25
  106. package/dist/src/ui/components/InputPrompt.js.map +1 -1
  107. package/dist/src/ui/components/MemoryUsageDisplay.js +1 -1
  108. package/dist/src/ui/components/MemoryUsageDisplay.js.map +1 -1
  109. package/dist/src/ui/components/ProQuotaDialog.d.ts +13 -0
  110. package/dist/src/ui/components/ProQuotaDialog.js +22 -0
  111. package/dist/src/ui/components/ProQuotaDialog.js.map +1 -0
  112. package/dist/src/ui/components/ProQuotaDialog.test.d.ts +6 -0
  113. package/dist/src/ui/components/ProQuotaDialog.test.js +57 -0
  114. package/dist/src/ui/components/ProQuotaDialog.test.js.map +1 -0
  115. package/dist/src/ui/components/SettingsDialog.js +4 -6
  116. package/dist/src/ui/components/SettingsDialog.js.map +1 -1
  117. package/dist/src/ui/components/SettingsDialog.test.js +2 -2
  118. package/dist/src/ui/components/SettingsDialog.test.js.map +1 -1
  119. package/dist/src/ui/components/ShellConfirmationDialog.js +7 -1
  120. package/dist/src/ui/components/ShellConfirmationDialog.js.map +1 -1
  121. package/dist/src/ui/components/TodoPanel.js +75 -10
  122. package/dist/src/ui/components/TodoPanel.js.map +1 -1
  123. package/dist/src/ui/components/messages/CompressionMessage.js +1 -1
  124. package/dist/src/ui/components/messages/CompressionMessage.js.map +1 -1
  125. package/dist/src/ui/components/messages/DiffRenderer.js +5 -1
  126. package/dist/src/ui/components/messages/DiffRenderer.js.map +1 -1
  127. package/dist/src/ui/components/messages/GeminiMessage.js +1 -1
  128. package/dist/src/ui/components/messages/GeminiMessage.js.map +1 -1
  129. package/dist/src/ui/components/messages/ToolConfirmationMessage.js +1 -1
  130. package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
  131. package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js +0 -8
  132. package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js.map +1 -1
  133. package/dist/src/ui/components/messages/ToolMessage.js +2 -1
  134. package/dist/src/ui/components/messages/ToolMessage.js.map +1 -1
  135. package/dist/src/ui/components/messages/UserMessage.js +1 -1
  136. package/dist/src/ui/components/messages/UserMessage.js.map +1 -1
  137. package/dist/src/ui/components/shared/MaxSizedBox.js.map +1 -1
  138. package/dist/src/ui/components/shared/RadioButtonSelect.js +1 -1
  139. package/dist/src/ui/components/shared/RadioButtonSelect.js.map +1 -1
  140. package/dist/src/ui/components/shared/RadioButtonSelect.test.js +2 -2
  141. package/dist/src/ui/components/shared/RadioButtonSelect.test.js.map +1 -1
  142. package/dist/src/ui/components/shared/text-buffer.js +35 -51
  143. package/dist/src/ui/components/shared/text-buffer.js.map +1 -1
  144. package/dist/src/ui/constants.d.ts +8 -2
  145. package/dist/src/ui/constants.js +9 -2
  146. package/dist/src/ui/constants.js.map +1 -1
  147. package/dist/src/ui/containers/SessionController.js +1 -1
  148. package/dist/src/ui/containers/SessionController.js.map +1 -1
  149. package/dist/src/ui/containers/SessionController.test.js +1 -0
  150. package/dist/src/ui/containers/SessionController.test.js.map +1 -1
  151. package/dist/src/ui/contexts/KeypressContext.js +255 -42
  152. package/dist/src/ui/contexts/KeypressContext.js.map +1 -1
  153. package/dist/src/ui/contexts/KeypressContext.test.js +115 -1
  154. package/dist/src/ui/contexts/KeypressContext.test.js.map +1 -1
  155. package/dist/src/ui/hooks/slashCommandProcessor.js +3 -1
  156. package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
  157. package/dist/src/ui/hooks/useFolderTrust.js +6 -3
  158. package/dist/src/ui/hooks/useFolderTrust.js.map +1 -1
  159. package/dist/src/ui/hooks/useGeminiStream.d.ts +2 -1
  160. package/dist/src/ui/hooks/useGeminiStream.integration.test.js +1 -1
  161. package/dist/src/ui/hooks/useGeminiStream.integration.test.js.map +1 -1
  162. package/dist/src/ui/hooks/useGeminiStream.js +170 -35
  163. package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
  164. package/dist/src/ui/hooks/useIdeTrustListener.d.ts +15 -0
  165. package/dist/src/ui/hooks/useIdeTrustListener.js +37 -0
  166. package/dist/src/ui/hooks/useIdeTrustListener.js.map +1 -0
  167. package/dist/src/ui/hooks/useInputHistoryStore.d.ts +19 -0
  168. package/dist/src/ui/hooks/useInputHistoryStore.js +81 -0
  169. package/dist/src/ui/hooks/useInputHistoryStore.js.map +1 -0
  170. package/dist/src/ui/hooks/useInputHistoryStore.test.d.ts +6 -0
  171. package/dist/src/ui/hooks/useInputHistoryStore.test.js +234 -0
  172. package/dist/src/ui/hooks/useInputHistoryStore.test.js.map +1 -0
  173. package/dist/src/ui/hooks/useLoadingIndicator.d.ts +1 -1
  174. package/dist/src/ui/hooks/useLoadingIndicator.js +2 -2
  175. package/dist/src/ui/hooks/useLoadingIndicator.js.map +1 -1
  176. package/dist/src/ui/hooks/useLoadingIndicator.test.d.ts +6 -0
  177. package/dist/src/ui/hooks/useLoadingIndicator.test.js +102 -0
  178. package/dist/src/ui/hooks/useLoadingIndicator.test.js.map +1 -0
  179. package/dist/src/ui/hooks/usePhraseCycler.d.ts +1 -1
  180. package/dist/src/ui/hooks/usePhraseCycler.js +25 -17
  181. package/dist/src/ui/hooks/usePhraseCycler.js.map +1 -1
  182. package/dist/src/ui/hooks/usePrivacySettings.d.ts +1 -1
  183. package/dist/src/ui/hooks/usePrivacySettings.js +20 -13
  184. package/dist/src/ui/hooks/usePrivacySettings.js.map +1 -1
  185. package/dist/src/ui/hooks/usePrivacySettings.test.js +52 -105
  186. package/dist/src/ui/hooks/usePrivacySettings.test.js.map +1 -1
  187. package/dist/src/ui/hooks/useTerminalSize.js +22 -8
  188. package/dist/src/ui/hooks/useTerminalSize.js.map +1 -1
  189. package/dist/src/ui/hooks/useToolScheduler.test.js +57 -70
  190. package/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -1
  191. package/dist/src/ui/keyMatchers.test.js +9 -0
  192. package/dist/src/ui/keyMatchers.test.js.map +1 -1
  193. package/dist/src/ui/textConstants.d.ts +9 -0
  194. package/dist/src/ui/textConstants.js +10 -0
  195. package/dist/src/ui/textConstants.js.map +1 -0
  196. package/dist/src/ui/utils/MarkdownDisplay.test.js +2 -2
  197. package/dist/src/ui/utils/MarkdownDisplay.test.js.map +1 -1
  198. package/dist/src/ui/utils/highlight.d.ts +10 -0
  199. package/dist/src/ui/utils/highlight.js +41 -0
  200. package/dist/src/ui/utils/highlight.js.map +1 -0
  201. package/dist/src/ui/utils/highlight.test.d.ts +6 -0
  202. package/dist/src/ui/utils/highlight.test.js +93 -0
  203. package/dist/src/ui/utils/highlight.test.js.map +1 -0
  204. package/dist/src/ui/utils/platformConstants.d.ts +24 -1
  205. package/dist/src/ui/utils/platformConstants.js +26 -1
  206. package/dist/src/ui/utils/platformConstants.js.map +1 -1
  207. package/dist/src/utils/envVarResolver.d.ts +39 -0
  208. package/dist/src/utils/envVarResolver.js +97 -0
  209. package/dist/src/utils/envVarResolver.js.map +1 -0
  210. package/dist/src/utils/envVarResolver.test.d.ts +6 -0
  211. package/dist/src/utils/envVarResolver.test.js +221 -0
  212. package/dist/src/utils/envVarResolver.test.js.map +1 -0
  213. package/dist/src/utils/errors.d.ts +9 -0
  214. package/dist/src/utils/errors.js +18 -0
  215. package/dist/src/utils/errors.js.map +1 -0
  216. package/dist/src/utils/settingsUtils.js +5 -7
  217. package/dist/src/utils/settingsUtils.js.map +1 -1
  218. package/dist/src/utils/singleSettingSaver.d.ts +7 -0
  219. package/dist/src/utils/singleSettingSaver.js +45 -0
  220. package/dist/src/utils/singleSettingSaver.js.map +1 -0
  221. package/dist/src/utils/userStartupWarnings.d.ts +1 -1
  222. package/dist/src/utils/userStartupWarnings.js +1 -1
  223. package/dist/src/utils/userStartupWarnings.js.map +1 -1
  224. package/dist/src/zed-integration/schema.d.ts +398 -398
  225. package/dist/src/zed-integration/zedIntegration.js +11 -7
  226. package/dist/src/zed-integration/zedIntegration.js.map +1 -1
  227. package/dist/tsconfig.tsbuildinfo +1 -1
  228. package/package.json +7 -6
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../../../../src/commands/extensions/install.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EACL,gBAAgB,GAEjB,MAAM,2BAA2B,CAAC;AAOnC,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAiB;IACnD,IAAI,CAAC;QACH,MAAM,eAAe,GAA6B;YAChD,MAAM,EAAE,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,CAAW;YAC5C,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO;SACpC,CAAC;QACF,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAAC,eAAe,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CACT,cAAc,aAAa,uCAAuC,CACnE,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAE,KAAe,CAAC,OAAO,CAAC,CAAC;QACxC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAkB;IAC3C,OAAO,EAAE,8BAA8B;IACvC,QAAQ,EAAE,8DAA8D;IACxE,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACjB,KAAK;SACF,MAAM,CAAC,QAAQ,EAAE;QAChB,QAAQ,EAAE,0CAA0C;QACpD,IAAI,EAAE,QAAQ;KACf,CAAC;SACD,MAAM,CAAC,MAAM,EAAE;QACd,QAAQ,EAAE,sCAAsC;QAChD,IAAI,EAAE,QAAQ;KACf,CAAC;SACD,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;SAC3B,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE;QACd,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CACb,yDAAyD,CAC1D,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IACN,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,aAAa,CAAC;YAClB,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAuB;YAC5C,IAAI,EAAE,IAAI,CAAC,MAAM,CAAuB;SACzC,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../../../src/commands/extensions/install.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EACL,gBAAgB,GAEjB,MAAM,2BAA2B,CAAC;AAOnC,MAAM,cAAc,GAAG,0BAA0B,CAAC;AAElD,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAiB;IACnD,IAAI,CAAC;QACH,IAAI,eAAyC,CAAC;QAE9C,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;YACxB,IACE,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC;gBAC5B,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC;gBAC7B,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,EACzB,CAAC;gBACD,eAAe,GAAG;oBAChB,MAAM;oBACN,IAAI,EAAE,KAAK;iBACZ,CAAC;YACJ,CAAC;iBAAM,IAAI,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBACvC,eAAe,GAAG;oBAChB,MAAM,EAAE,sBAAsB,MAAM,MAAM;oBAC1C,IAAI,EAAE,KAAK;iBACZ,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,KAAK,CACb,eAAe,MAAM,4CAA4C,CAClE,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACrB,eAAe,GAAG;gBAChB,MAAM,EAAE,IAAI,CAAC,IAAI;gBACjB,IAAI,EAAE,OAAO;aACd,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,qDAAqD;YACrD,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAAC,eAAe,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CACT,cAAc,aAAa,uCAAuC,CACnE,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAE,KAAe,CAAC,OAAO,CAAC,CAAC;QACxC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAkB;IAC3C,OAAO,EAAE,8BAA8B;IACvC,QAAQ,EACN,kFAAkF;IACpF,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACjB,KAAK;SACF,MAAM,CAAC,QAAQ,EAAE;QAChB,QAAQ,EAAE,wDAAwD;QAClE,IAAI,EAAE,QAAQ;KACf,CAAC;SACD,MAAM,CAAC,MAAM,EAAE;QACd,QAAQ,EAAE,sCAAsC;QAChD,IAAI,EAAE,QAAQ;KACf,CAAC;SACD,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;SAC3B,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE;QACd,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;QACjE,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IACN,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,aAAa,CAAC;YAClB,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAuB;YAC5C,IAAI,EAAE,IAAI,CAAC,MAAM,CAAuB;SACzC,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
@@ -4,16 +4,34 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { describe, it, expect } from 'vitest';
7
- import { installCommand } from './install.js';
7
+ import { installCommand, handleInstall } from './install.js';
8
8
  import yargs from 'yargs';
9
+ import * as extension from '../../config/extension.js';
10
+ vi.mock('../../config/extension.js', () => ({
11
+ installExtension: vi.fn(),
12
+ }));
9
13
  describe('extensions install command', () => {
10
14
  it('should fail if no source is provided', () => {
11
15
  const validationParser = yargs([]).command(installCommand).fail(false);
12
- expect(() => validationParser.parse('install')).toThrow('Either a git URL --source or a --path must be provided.');
16
+ expect(() => validationParser.parse('install')).toThrow('Either --source or --path must be provided.');
13
17
  });
14
18
  it('should fail if both git source and local path are provided', () => {
15
19
  const validationParser = yargs([]).command(installCommand).fail(false);
16
20
  expect(() => validationParser.parse('install --source some-url --path /some/path')).toThrow('Arguments source and path are mutually exclusive');
17
21
  });
18
22
  });
23
+ describe('extensions install with org/repo', () => {
24
+ it('should call installExtension with the correct git URL', async () => {
25
+ const consoleLogSpy = vi.spyOn(console, 'log').mockImplementation(() => { });
26
+ const installExtensionSpy = vi
27
+ .spyOn(extension, 'installExtension')
28
+ .mockResolvedValue('test-extension');
29
+ await handleInstall({ source: 'test-org/test-repo' });
30
+ expect(installExtensionSpy).toHaveBeenCalledWith({
31
+ source: 'https://github.com/test-org/test-repo.git',
32
+ type: 'git',
33
+ });
34
+ expect(consoleLogSpy).toHaveBeenCalledWith('Extension "test-extension" installed successfully and enabled.');
35
+ });
36
+ });
19
37
  //# sourceMappingURL=install.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"install.test.js","sourceRoot":"","sources":["../../../../src/commands/extensions/install.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;IAC1C,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,MAAM,gBAAgB,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CACrD,yDAAyD,CAC1D,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACpE,MAAM,gBAAgB,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,CAAC,GAAG,EAAE,CACV,gBAAgB,CAAC,KAAK,CAAC,6CAA6C,CAAC,CACtE,CAAC,OAAO,CAAC,kDAAkD,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"install.test.js","sourceRoot":"","sources":["../../../../src/commands/extensions/install.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,SAAS,MAAM,2BAA2B,CAAC;AAEvD,EAAE,CAAC,IAAI,CAAC,2BAA2B,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,gBAAgB,EAAE,EAAE,CAAC,EAAE,EAAE;CAC1B,CAAC,CAAC,CAAC;AAEJ,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;IAC1C,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,MAAM,gBAAgB,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CACrD,6CAA6C,CAC9C,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACpE,MAAM,gBAAgB,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,CAAC,GAAG,EAAE,CACV,gBAAgB,CAAC,KAAK,CAAC,6CAA6C,CAAC,CACtE,CAAC,OAAO,CAAC,kDAAkD,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,kCAAkC,EAAE,GAAG,EAAE;IAChD,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;QACrE,MAAM,aAAa,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAC5E,MAAM,mBAAmB,GAAG,EAAE;aAC3B,KAAK,CAAC,SAAS,EAAE,kBAAkB,CAAC;aACpC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;QAEvC,MAAM,aAAa,CAAC,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC,CAAC;QAEtD,MAAM,CAAC,mBAAmB,CAAC,CAAC,oBAAoB,CAAC;YAC/C,MAAM,EAAE,2CAA2C;YACnD,IAAI,EAAE,KAAK;SACZ,CAAC,CAAC;QACH,MAAM,CAAC,aAAa,CAAC,CAAC,oBAAoB,CACxC,gEAAgE,CACjE,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { CommandModule } from 'yargs';
7
+ interface InstallArgs {
8
+ path: string;
9
+ }
10
+ export declare function handleLink(args: InstallArgs): Promise<void>;
11
+ export declare const linkCommand: CommandModule;
12
+ export {};
@@ -0,0 +1,37 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { installExtension, } from '../../config/extension.js';
7
+ import { getErrorMessage } from '../../utils/errors.js';
8
+ export async function handleLink(args) {
9
+ try {
10
+ const installMetadata = {
11
+ source: args.path,
12
+ type: 'link',
13
+ };
14
+ const extensionName = await installExtension(installMetadata);
15
+ console.log(`Extension "${extensionName}" linked successfully and enabled.`);
16
+ }
17
+ catch (error) {
18
+ console.error(getErrorMessage(error));
19
+ process.exit(1);
20
+ }
21
+ }
22
+ export const linkCommand = {
23
+ command: 'link <path>',
24
+ describe: 'Links an extension from a local path. Updates made to the local path will always be reflected.',
25
+ builder: (yargs) => yargs
26
+ .positional('path', {
27
+ describe: 'The name of the extension to link.',
28
+ type: 'string',
29
+ })
30
+ .check((_) => true),
31
+ handler: async (argv) => {
32
+ await handleLink({
33
+ path: argv['path'],
34
+ });
35
+ },
36
+ };
37
+ //# sourceMappingURL=link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"link.js","sourceRoot":"","sources":["../../../../src/commands/extensions/link.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EACL,gBAAgB,GAEjB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAMxD,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,IAAiB;IAChD,IAAI,CAAC;QACH,MAAM,eAAe,GAA6B;YAChD,MAAM,EAAE,IAAI,CAAC,IAAI;YACjB,IAAI,EAAE,MAAM;SACb,CAAC;QACF,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAAC,eAAe,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CACT,cAAc,aAAa,oCAAoC,CAChE,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;QACtC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAkB;IACxC,OAAO,EAAE,aAAa;IACtB,QAAQ,EACN,gGAAgG;IAClG,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACjB,KAAK;SACF,UAAU,CAAC,MAAM,EAAE;QAClB,QAAQ,EAAE,oCAAoC;QAC9C,IAAI,EAAE,QAAQ;KACf,CAAC;SACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC;IACvB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,UAAU,CAAC;YACf,IAAI,EAAE,IAAI,CAAC,MAAM,CAAW;SAC7B,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { CommandModule } from 'yargs';
7
+ export declare const newCommand: CommandModule;
@@ -0,0 +1,70 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { access, cp, mkdir, readdir } from 'node:fs/promises';
7
+ import { join, dirname } from 'node:path';
8
+ import { fileURLToPath } from 'node:url';
9
+ import { getErrorMessage } from '../../utils/errors.js';
10
+ const __filename = fileURLToPath(import.meta.url);
11
+ const __dirname = dirname(__filename);
12
+ const EXAMPLES_PATH = join(__dirname, 'examples');
13
+ async function pathExists(path) {
14
+ try {
15
+ await access(path);
16
+ return true;
17
+ }
18
+ catch (_e) {
19
+ return false;
20
+ }
21
+ }
22
+ async function copyDirectory(template, path) {
23
+ if (await pathExists(path)) {
24
+ throw new Error(`Path already exists: ${path}`);
25
+ }
26
+ const examplePath = join(EXAMPLES_PATH, template);
27
+ await mkdir(path, { recursive: true });
28
+ await cp(examplePath, path, { recursive: true });
29
+ }
30
+ async function handleNew(args) {
31
+ try {
32
+ await copyDirectory(args.template, args.path);
33
+ console.log(`Successfully created new extension from template "${args.template}" at ${args.path}.`);
34
+ console.log(`You can install this using "llxprt extensions link ${args.path}" to test it out.`);
35
+ }
36
+ catch (error) {
37
+ console.error(getErrorMessage(error));
38
+ throw error;
39
+ }
40
+ }
41
+ async function getBoilerplateChoices() {
42
+ const entries = await readdir(EXAMPLES_PATH, { withFileTypes: true });
43
+ return entries
44
+ .filter((entry) => entry.isDirectory())
45
+ .map((entry) => entry.name);
46
+ }
47
+ export const newCommand = {
48
+ command: 'new <path> <template>',
49
+ describe: 'Create a new extension from a boilerplate example.',
50
+ builder: async (yargs) => {
51
+ const choices = await getBoilerplateChoices();
52
+ return yargs
53
+ .positional('path', {
54
+ describe: 'The path to create the extension in.',
55
+ type: 'string',
56
+ })
57
+ .positional('template', {
58
+ describe: 'The boilerplate template to use.',
59
+ type: 'string',
60
+ choices,
61
+ });
62
+ },
63
+ handler: async (args) => {
64
+ await handleNew({
65
+ path: args['path'],
66
+ template: args['template'],
67
+ });
68
+ },
69
+ };
70
+ //# sourceMappingURL=new.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"new.js","sourceRoot":"","sources":["../../../../src/commands/extensions/new.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ export {};
@@ -0,0 +1,50 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { describe, it, expect, vi, beforeEach } from 'vitest';
7
+ import { newCommand } from './new.js';
8
+ import yargs from 'yargs';
9
+ import * as fsPromises from 'node:fs/promises';
10
+ vi.mock('node:fs/promises');
11
+ const mockedFs = vi.mocked(fsPromises);
12
+ describe('extensions new command', () => {
13
+ beforeEach(() => {
14
+ vi.resetAllMocks();
15
+ const fakeFiles = [
16
+ { name: 'context', isDirectory: () => true },
17
+ { name: 'custom-commands', isDirectory: () => true },
18
+ { name: 'mcp-server', isDirectory: () => true },
19
+ ];
20
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
21
+ mockedFs.readdir.mockResolvedValue(fakeFiles);
22
+ });
23
+ it('should fail if no path is provided', async () => {
24
+ const parser = yargs([]).command(newCommand).fail(false);
25
+ await expect(parser.parseAsync('new')).rejects.toThrow('Not enough non-option arguments: got 0, need at least 2');
26
+ });
27
+ it('should fail if no template is provided', async () => {
28
+ const parser = yargs([]).command(newCommand).fail(false);
29
+ await expect(parser.parseAsync('new /some/path')).rejects.toThrow('Not enough non-option arguments: got 1, need at least 2');
30
+ });
31
+ it('should create directory and copy files when path does not exist', async () => {
32
+ mockedFs.access.mockRejectedValue(new Error('ENOENT'));
33
+ mockedFs.mkdir.mockResolvedValue(undefined);
34
+ mockedFs.cp.mockResolvedValue(undefined);
35
+ const parser = yargs([]).command(newCommand).fail(false);
36
+ await parser.parseAsync('new /some/path context');
37
+ expect(mockedFs.mkdir).toHaveBeenCalledWith('/some/path', {
38
+ recursive: true,
39
+ });
40
+ expect(mockedFs.cp).toHaveBeenCalledWith(expect.stringContaining('context'), '/some/path', { recursive: true });
41
+ });
42
+ it('should throw an error if the path already exists', async () => {
43
+ mockedFs.access.mockResolvedValue(undefined);
44
+ const parser = yargs([]).command(newCommand).fail(false);
45
+ await expect(parser.parseAsync('new /some/path context')).rejects.toThrow('Path already exists: /some/path');
46
+ expect(mockedFs.mkdir).not.toHaveBeenCalled();
47
+ expect(mockedFs.cp).not.toHaveBeenCalled();
48
+ });
49
+ });
50
+ //# sourceMappingURL=new.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"new.test.js","sourceRoot":"","sources":["../../../../src/commands/extensions/new.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,UAAU,MAAM,kBAAkB,CAAC;AAE/C,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;AAE5B,MAAM,QAAQ,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AAEvC,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;IACtC,UAAU,CAAC,GAAG,EAAE;QACd,EAAE,CAAC,aAAa,EAAE,CAAC;QAEnB,MAAM,SAAS,GAAG;YAChB,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE;YAC5C,EAAE,IAAI,EAAE,iBAAiB,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE;YACpD,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE;SAChD,CAAC;QACF,8DAA8D;QAC9D,QAAQ,CAAC,OAAO,CAAC,iBAAiB,CAAC,SAAgB,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;QAClD,MAAM,MAAM,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzD,MAAM,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CACpD,yDAAyD,CAC1D,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;QACtD,MAAM,MAAM,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzD,MAAM,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAC/D,yDAAyD,CAC1D,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;QAC/E,QAAQ,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;QACvD,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAC5C,QAAQ,CAAC,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAEzC,MAAM,MAAM,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEzD,MAAM,MAAM,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAC;QAElD,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,oBAAoB,CAAC,YAAY,EAAE;YACxD,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;QACH,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,oBAAoB,CACtC,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAClC,YAAY,EACZ,EAAE,SAAS,EAAE,IAAI,EAAE,CACpB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;QAChE,QAAQ,CAAC,MAAM,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAC7C,MAAM,MAAM,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEzD,MAAM,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CACvE,iCAAiC,CAClC,CAAC;QAEF,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC9C,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;IAC7C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -5,7 +5,8 @@
5
5
  */
6
6
  import { type CommandModule } from 'yargs';
7
7
  interface UpdateArgs {
8
- name: string;
8
+ name?: string;
9
+ all?: boolean;
9
10
  }
10
11
  export declare function handleUpdate(args: UpdateArgs): Promise<void>;
11
12
  export declare const updateCommand: CommandModule;
@@ -4,33 +4,60 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { FatalConfigError, getErrorMessage } from '@vybestack/llxprt-code-core';
7
- import { updateExtension } from '../../config/extension.js';
7
+ import { updateExtensionByName, updateAllUpdatableExtensions, } from '../../config/extension.js';
8
+ const updateOutput = (info) => `Extension "${info.name}" successfully updated: ${info.originalVersion} → ${info.updatedVersion}.`;
8
9
  export async function handleUpdate(args) {
9
- try {
10
- const result = await updateExtension(args.name);
11
- if (result) {
12
- console.log(`Extension "${args.name}" successfully updated from version ${result.originalVersion} to ${result.updatedVersion}.`);
10
+ if (args.all) {
11
+ try {
12
+ const updateInfos = await updateAllUpdatableExtensions();
13
+ if (updateInfos.length === 0) {
14
+ console.log('No extensions to update.');
15
+ return;
16
+ }
17
+ console.log(updateInfos.map((info) => updateOutput(info)).join('\n'));
13
18
  }
14
- else {
15
- console.log(`Extension "${args.name}" is already up to date.`);
19
+ catch (error) {
20
+ throw new FatalConfigError(getErrorMessage(error));
16
21
  }
17
22
  }
18
- catch (error) {
19
- throw new FatalConfigError(getErrorMessage(error));
20
- }
23
+ if (args.name)
24
+ try {
25
+ // TODO(chrstnb): we should list extensions if the requested extension is not installed.
26
+ const updatedExtensionInfo = await updateExtensionByName(args.name);
27
+ if (updatedExtensionInfo) {
28
+ console.log(updateOutput(updatedExtensionInfo));
29
+ }
30
+ else {
31
+ console.log(`Extension "${args.name}" is already up to date.`);
32
+ }
33
+ }
34
+ catch (error) {
35
+ throw new FatalConfigError(getErrorMessage(error));
36
+ }
21
37
  }
22
38
  export const updateCommand = {
23
- command: 'update <name>',
24
- describe: 'Updates an extension to the latest version.',
39
+ command: 'update [--all] [name]',
40
+ describe: 'Updates all extensions or a named extension to the latest version.',
25
41
  builder: (yargs) => yargs
26
42
  .positional('name', {
27
43
  describe: 'The name of the extension to update.',
28
44
  type: 'string',
29
45
  })
30
- .check((_argv) => true),
46
+ .option('all', {
47
+ describe: 'Update all extensions.',
48
+ type: 'boolean',
49
+ })
50
+ .conflicts('name', 'all')
51
+ .check((argv) => {
52
+ if (!argv.all && !argv.name) {
53
+ throw new Error('Either an extension name or --all must be provided');
54
+ }
55
+ return true;
56
+ }),
31
57
  handler: async (argv) => {
32
58
  await handleUpdate({
33
59
  name: argv['name'],
60
+ all: argv['all'],
34
61
  });
35
62
  },
36
63
  };
@@ -1 +1 @@
1
- {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/commands/extensions/update.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAM5D,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAgB;IACjD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChD,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,GAAG,CACT,cAAc,IAAI,CAAC,IAAI,uCAAuC,MAAM,CAAC,eAAe,OAAO,MAAM,CAAC,cAAc,GAAG,CACpH,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,IAAI,0BAA0B,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,gBAAgB,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;IACrD,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,aAAa,GAAkB;IAC1C,OAAO,EAAE,eAAe;IACxB,QAAQ,EAAE,6CAA6C;IACvD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACjB,KAAK;SACF,UAAU,CAAC,MAAM,EAAE;QAClB,QAAQ,EAAE,sCAAsC;QAChD,IAAI,EAAE,QAAQ;KACf,CAAC;SACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC;IAC3B,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,YAAY,CAAC;YACjB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAW;SAC7B,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/commands/extensions/update.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAChF,OAAO,EACL,qBAAqB,EACrB,4BAA4B,GAE7B,MAAM,2BAA2B,CAAC;AAOnC,MAAM,YAAY,GAAG,CAAC,IAAyB,EAAE,EAAE,CACjD,cAAc,IAAI,CAAC,IAAI,2BAA2B,IAAI,CAAC,eAAe,MAAM,IAAI,CAAC,cAAc,GAAG,CAAC;AAErG,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAgB;IACjD,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;QACb,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,4BAA4B,EAAE,CAAC;YACzD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC7B,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;gBACxC,OAAO;YACT,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACxE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,gBAAgB,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IACD,IAAI,IAAI,CAAC,IAAI;QACX,IAAI,CAAC;YACH,wFAAwF;YACxF,MAAM,oBAAoB,GAAG,MAAM,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpE,IAAI,oBAAoB,EAAE,CAAC;gBACzB,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,oBAAoB,CAAC,CAAC,CAAC;YAClD,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,IAAI,0BAA0B,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,gBAAgB,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;QACrD,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,aAAa,GAAkB;IAC1C,OAAO,EAAE,uBAAuB;IAChC,QAAQ,EACN,oEAAoE;IACtE,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACjB,KAAK;SACF,UAAU,CAAC,MAAM,EAAE;QAClB,QAAQ,EAAE,sCAAsC;QAChD,IAAI,EAAE,QAAQ;KACf,CAAC;SACD,MAAM,CAAC,KAAK,EAAE;QACb,QAAQ,EAAE,wBAAwB;QAClC,IAAI,EAAE,SAAS;KAChB,CAAC;SACD,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC;SACxB,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE;QACd,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IACN,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,YAAY,CAAC;YACjB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAuB;YACxC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAwB;SACxC,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
@@ -9,6 +9,8 @@ import { listCommand } from './extensions/list.js';
9
9
  import { updateCommand } from './extensions/update.js';
10
10
  import { disableCommand } from './extensions/disable.js';
11
11
  import { enableCommand } from './extensions/enable.js';
12
+ import { linkCommand } from './extensions/link.js';
13
+ import { newCommand } from './extensions/new.js';
12
14
  export const extensionsCommand = {
13
15
  command: 'extensions <command>',
14
16
  describe: 'Manage Gemini CLI extensions.',
@@ -19,6 +21,8 @@ export const extensionsCommand = {
19
21
  .command(updateCommand)
20
22
  .command(disableCommand)
21
23
  .command(enableCommand)
24
+ .command(linkCommand)
25
+ .command(newCommand)
22
26
  .demandCommand(1, 'You need at least one command before continuing.')
23
27
  .version(false),
24
28
  handler: () => {
@@ -1 +1 @@
1
- {"version":3,"file":"extensions.js","sourceRoot":"","sources":["../../../src/commands/extensions.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,MAAM,CAAC,MAAM,iBAAiB,GAAkB;IAC9C,OAAO,EAAE,sBAAsB;IAC/B,QAAQ,EAAE,+BAA+B;IACzC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACjB,KAAK;SACF,OAAO,CAAC,cAAc,CAAC;SACvB,OAAO,CAAC,gBAAgB,CAAC;SACzB,OAAO,CAAC,WAAW,CAAC;SACpB,OAAO,CAAC,aAAa,CAAC;SACtB,OAAO,CAAC,cAAc,CAAC;SACvB,OAAO,CAAC,aAAa,CAAC;SACtB,aAAa,CAAC,CAAC,EAAE,kDAAkD,CAAC;SACpE,OAAO,CAAC,KAAK,CAAC;IACnB,OAAO,EAAE,GAAG,EAAE;QACZ,4DAA4D;QAC5D,iCAAiC;IACnC,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"extensions.js","sourceRoot":"","sources":["../../../src/commands/extensions.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,MAAM,CAAC,MAAM,iBAAiB,GAAkB;IAC9C,OAAO,EAAE,sBAAsB;IAC/B,QAAQ,EAAE,+BAA+B;IACzC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACjB,KAAK;SACF,OAAO,CAAC,cAAc,CAAC;SACvB,OAAO,CAAC,gBAAgB,CAAC;SACzB,OAAO,CAAC,WAAW,CAAC;SACpB,OAAO,CAAC,aAAa,CAAC;SACtB,OAAO,CAAC,cAAc,CAAC;SACvB,OAAO,CAAC,aAAa,CAAC;SACtB,OAAO,CAAC,WAAW,CAAC;SACpB,OAAO,CAAC,UAAU,CAAC;SACnB,aAAa,CAAC,CAAC,EAAE,kDAAkD,CAAC;SACpE,OAAO,CAAC,KAAK,CAAC;IACnB,OAAO,EAAE,GAAG,EAAE;QACZ,4DAA4D;QAC5D,iCAAiC;IACnC,CAAC;CACF,CAAC"}
@@ -7,7 +7,7 @@ import { loadSettings, SettingScope } from '../../config/settings.js';
7
7
  async function addMcpServer(name, commandOrUrl, args, options) {
8
8
  const { scope, transport, env, header, timeout, trust, description, includeTools, excludeTools, } = options;
9
9
  const settingsScope = scope === 'user' ? SettingScope.User : SettingScope.Workspace;
10
- const settings = loadSettings(process.cwd());
10
+ const settings = loadSettings();
11
11
  let newServer = {};
12
12
  const headers = header?.reduce((acc, curr) => {
13
13
  const [key, ...valueParts] = curr.split(':');
@@ -1 +1 @@
1
- {"version":3,"file":"add.js","sourceRoot":"","sources":["../../../../src/commands/mcp/add.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"add.js","sourceRoot":"","sources":["../../../../src/commands/mcp/add.ts"],"names":[],"mappings":"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"}
@@ -12,8 +12,8 @@ const COLOR_YELLOW = '\u001b[33m';
12
12
  const COLOR_RED = '\u001b[31m';
13
13
  const RESET_COLOR = '\u001b[0m';
14
14
  async function getMcpServersFromConfig() {
15
- const settings = loadSettings(process.cwd());
16
- const extensions = loadExtensions(process.cwd());
15
+ const settings = loadSettings();
16
+ const extensions = loadExtensions();
17
17
  const mcpServers = { ...(settings.merged.mcpServers || {}) };
18
18
  for (const extension of extensions) {
19
19
  Object.entries(extension.config.mcpServers || {}).forEach(([key, server]) => {
@@ -1 +1 @@
1
- {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../src/commands/mcp/list.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../src/commands/mcp/list.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ import { loadSettings, SettingScope } from '../../config/settings.js';
7
7
  async function removeMcpServer(name, options) {
8
8
  const { scope } = options;
9
9
  const settingsScope = scope === 'user' ? SettingScope.User : SettingScope.Workspace;
10
- const settings = loadSettings(process.cwd());
10
+ const settings = loadSettings();
11
11
  const existingSettings = settings.forScope(settingsScope).settings;
12
12
  const mcpServers = existingSettings.mcpServers || {};
13
13
  if (!mcpServers[name]) {
@@ -1 +1 @@
1
- {"version":3,"file":"remove.js","sourceRoot":"","sources":["../../../../src/commands/mcp/remove.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAEtE,KAAK,UAAU,eAAe,CAC5B,IAAY,EACZ,OAEC;IAED,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IAC1B,MAAM,aAAa,GACjB,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC;IAChE,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAE7C,MAAM,gBAAgB,GAAG,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC;IACnE,MAAM,UAAU,GAAG,gBAAgB,CAAC,UAAU,IAAI,EAAE,CAAC;IAErD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,kBAAkB,KAAK,YAAY,CAAC,CAAC;QAChE,OAAO;IACT,CAAC;IAED,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC;IAExB,QAAQ,CAAC,QAAQ,CAAC,aAAa,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;IAE3D,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,kBAAkB,KAAK,YAAY,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,CAAC,MAAM,aAAa,GAAkB;IAC1C,OAAO,EAAE,eAAe;IACxB,QAAQ,EAAE,iBAAiB;IAC3B,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACjB,KAAK;SACF,KAAK,CAAC,2CAA2C,CAAC;SAClD,UAAU,CAAC,MAAM,EAAE;QAClB,QAAQ,EAAE,oBAAoB;QAC9B,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,IAAI;KACnB,CAAC;SACD,MAAM,CAAC,OAAO,EAAE;QACf,KAAK,EAAE,GAAG;QACV,QAAQ,EAAE,uCAAuC;QACjD,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC;KAC7B,CAAC;IACN,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,eAAe,CAAC,IAAI,CAAC,IAAc,EAAE;YACzC,KAAK,EAAE,IAAI,CAAC,KAAe;SAC5B,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"remove.js","sourceRoot":"","sources":["../../../../src/commands/mcp/remove.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAEtE,KAAK,UAAU,eAAe,CAC5B,IAAY,EACZ,OAEC;IAED,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IAC1B,MAAM,aAAa,GACjB,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC;IAChE,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;IAEhC,MAAM,gBAAgB,GAAG,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC;IACnE,MAAM,UAAU,GAAG,gBAAgB,CAAC,UAAU,IAAI,EAAE,CAAC;IAErD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,kBAAkB,KAAK,YAAY,CAAC,CAAC;QAChE,OAAO;IACT,CAAC;IAED,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC;IAExB,QAAQ,CAAC,QAAQ,CAAC,aAAa,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;IAE3D,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,kBAAkB,KAAK,YAAY,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,CAAC,MAAM,aAAa,GAAkB;IAC1C,OAAO,EAAE,eAAe;IACxB,QAAQ,EAAE,iBAAiB;IAC3B,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACjB,KAAK;SACF,KAAK,CAAC,2CAA2C,CAAC;SAClD,UAAU,CAAC,MAAM,EAAE;QAClB,QAAQ,EAAE,oBAAoB;QAC9B,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,IAAI;KACnB,CAAC;SACD,MAAM,CAAC,OAAO,EAAE;QACf,KAAK,EAAE,GAAG;QACV,QAAQ,EAAE,uCAAuC;QACjD,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC;KAC7B,CAAC;IACN,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,eAAe,CAAC,IAAI,CAAC,IAAc,EAAE;YACzC,KAAK,EAAE,IAAI,CAAC,KAAe;SAC5B,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
@@ -3,4 +3,4 @@
3
3
  * Copyright 2025 Vybestack LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- export declare const validateAuthMethod: (authMethod: string) => string | null;
6
+ export declare function validateAuthMethod(authMethod: string): string | null;
@@ -4,23 +4,16 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { AuthType } from '@vybestack/llxprt-code-core';
7
- import { loadEnvironment } from './settings.js';
8
- export const validateAuthMethod = (authMethod) => {
9
- loadEnvironment();
10
- // Handle OAuth provider selections
7
+ import { loadEnvironment, loadSettings } from './settings.js';
8
+ export function validateAuthMethod(authMethod) {
9
+ loadEnvironment(loadSettings().merged);
11
10
  if (authMethod === 'oauth_gemini' ||
11
+ authMethod === 'oauth-gemini' ||
12
12
  authMethod === 'oauth_qwen' ||
13
13
  authMethod === 'oauth_anthropic') {
14
- return null; // OAuth providers are always valid
15
- }
16
- if (authMethod === AuthType.USE_PROVIDER) {
17
- // Provider-specific auth is handled by the provider itself
18
- // No validation needed at this level
19
14
  return null;
20
15
  }
21
- // Handle legacy auth types for backward compatibility
22
- if (authMethod === 'oauth_gemini' || authMethod === 'oauth-gemini') {
23
- // Map to LOGIN_WITH_GOOGLE for backward compatibility
16
+ if (authMethod === AuthType.USE_PROVIDER) {
24
17
  return null;
25
18
  }
26
19
  if (authMethod === AuthType.LOGIN_WITH_GOOGLE ||
@@ -49,5 +42,5 @@ export const validateAuthMethod = (authMethod) => {
49
42
  return null;
50
43
  }
51
44
  return 'Invalid auth method selected.';
52
- };
45
+ }
53
46
  //# sourceMappingURL=auth.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/config/auth.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,UAAkB,EAAiB,EAAE;IACtE,eAAe,EAAE,CAAC;IAElB,mCAAmC;IACnC,IACE,UAAU,KAAK,cAAc;QAC7B,UAAU,KAAK,YAAY;QAC3B,UAAU,KAAK,iBAAiB,EAChC,CAAC;QACD,OAAO,IAAI,CAAC,CAAC,mCAAmC;IAClD,CAAC;IAED,IAAI,UAAU,KAAK,QAAQ,CAAC,YAAY,EAAE,CAAC;QACzC,2DAA2D;QAC3D,qCAAqC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,sDAAsD;IACtD,IAAI,UAAU,KAAK,cAAc,IAAI,UAAU,KAAK,cAAc,EAAE,CAAC;QACnE,sDAAsD;QACtD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IACE,UAAU,KAAK,QAAQ,CAAC,iBAAiB;QACzC,UAAU,KAAK,QAAQ,CAAC,WAAW,EACnC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,UAAU,KAAK,QAAQ,CAAC,UAAU,EAAE,CAAC;QACvC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;YAChC,OAAO,6HAA6H,CAAC;QACvI,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,UAAU,KAAK,QAAQ,CAAC,aAAa,EAAE,CAAC;QAC1C,MAAM,8BAA8B,GAClC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;QAC5E,MAAM,eAAe,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;QACrD,IAAI,CAAC,8BAA8B,IAAI,CAAC,eAAe,EAAE,CAAC;YACxD,OAAO,CACL,kDAAkD;gBAClD,2EAA2E;gBAC3E,kEAAkE;gBAClE,yEAAyE,CAC1E,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,UAAU,KAAK,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACrC,0EAA0E;QAC1E,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,+BAA+B,CAAC;AACzC,CAAC,CAAC"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/config/auth.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE9D,MAAM,UAAU,kBAAkB,CAAC,UAAkB;IACnD,eAAe,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,CAAC;IAEvC,IACE,UAAU,KAAK,cAAc;QAC7B,UAAU,KAAK,cAAc;QAC7B,UAAU,KAAK,YAAY;QAC3B,UAAU,KAAK,iBAAiB,EAChC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,UAAU,KAAK,QAAQ,CAAC,YAAY,EAAE,CAAC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IACE,UAAU,KAAK,QAAQ,CAAC,iBAAiB;QACzC,UAAU,KAAK,QAAQ,CAAC,WAAW,EACnC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,UAAU,KAAK,QAAQ,CAAC,UAAU,EAAE,CAAC;QACvC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;YAChC,OAAO,6HAA6H,CAAC;QACvI,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,UAAU,KAAK,QAAQ,CAAC,aAAa,EAAE,CAAC;QAC1C,MAAM,8BAA8B,GAClC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;QAC5E,MAAM,eAAe,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;QACrD,IAAI,CAAC,8BAA8B,IAAI,CAAC,eAAe,EAAE,CAAC;YACxD,OAAO,CACL,kDAAkD;gBAClD,2EAA2E;gBAC3E,kEAAkE;gBAClE,yEAAyE,CAC1E,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,UAAU,KAAK,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACrC,0EAA0E;QAC1E,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,+BAA+B,CAAC;AACzC,CAAC"}
@@ -8,15 +8,20 @@ import { vi } from 'vitest';
8
8
  import { validateAuthMethod } from './auth.js';
9
9
  vi.mock('./settings.js', () => ({
10
10
  loadEnvironment: vi.fn(),
11
+ loadSettings: vi.fn().mockReturnValue({
12
+ merged: {},
13
+ }),
11
14
  }));
12
15
  describe('validateAuthMethod', () => {
13
- const originalEnv = process.env;
14
16
  beforeEach(() => {
15
17
  vi.resetModules();
16
- process.env = {};
18
+ vi.stubEnv('GEMINI_API_KEY', undefined);
19
+ vi.stubEnv('GOOGLE_CLOUD_PROJECT', undefined);
20
+ vi.stubEnv('GOOGLE_CLOUD_LOCATION', undefined);
21
+ vi.stubEnv('GOOGLE_API_KEY', undefined);
17
22
  });
18
23
  afterEach(() => {
19
- process.env = originalEnv;
24
+ vi.unstubAllEnvs();
20
25
  });
21
26
  it('should return null for LOGIN_WITH_GOOGLE', () => {
22
27
  expect(validateAuthMethod(AuthType.LOGIN_WITH_GOOGLE)).toBeNull();
@@ -26,21 +31,22 @@ describe('validateAuthMethod', () => {
26
31
  });
27
32
  describe('USE_GEMINI', () => {
28
33
  it('should return null if GEMINI_API_KEY is set', () => {
29
- process.env.GEMINI_API_KEY = 'test-key';
34
+ vi.stubEnv('GEMINI_API_KEY', 'test-key');
30
35
  expect(validateAuthMethod(AuthType.USE_GEMINI)).toBeNull();
31
36
  });
32
37
  it('should return an error message if GEMINI_API_KEY is not set', () => {
38
+ vi.stubEnv('GEMINI_API_KEY', '');
33
39
  expect(validateAuthMethod(AuthType.USE_GEMINI)).toBe('GEMINI_API_KEY environment variable not found. Add that to your environment and try again (no reload needed if using .env)!');
34
40
  });
35
41
  });
36
42
  describe('USE_VERTEX_AI', () => {
37
43
  it('should return null if GOOGLE_CLOUD_PROJECT and GOOGLE_CLOUD_LOCATION are set', () => {
38
- process.env.GOOGLE_CLOUD_PROJECT = 'test-project';
39
- process.env.GOOGLE_CLOUD_LOCATION = 'test-location';
44
+ vi.stubEnv('GOOGLE_CLOUD_PROJECT', 'test-project');
45
+ vi.stubEnv('GOOGLE_CLOUD_LOCATION', 'test-location');
40
46
  expect(validateAuthMethod(AuthType.USE_VERTEX_AI)).toBeNull();
41
47
  });
42
48
  it('should return null if GOOGLE_API_KEY is set', () => {
43
- process.env.GOOGLE_API_KEY = 'test-api-key';
49
+ vi.stubEnv('GOOGLE_API_KEY', 'test-api-key');
44
50
  expect(validateAuthMethod(AuthType.USE_VERTEX_AI)).toBeNull();
45
51
  });
46
52
  it('should return an error message if no required environment variables are set', () => {
@@ -1 +1 @@
1
- {"version":3,"file":"auth.test.js","sourceRoot":"","sources":["../../../src/config/auth.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAE/C,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,EAAE,CAAC,CAAC;IAC9B,eAAe,EAAE,EAAE,CAAC,EAAE,EAAE;CACzB,CAAC,CAAC,CAAC;AAEJ,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC;IAEhC,UAAU,CAAC,GAAG,EAAE;QACd,EAAE,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,CAAC,GAAG,GAAG,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,CAAC,GAAG,GAAG,WAAW,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;QAClD,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IACpE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC5C,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC9D,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;QAC1B,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;YACrD,OAAO,CAAC,GAAG,CAAC,cAAc,GAAG,UAAU,CAAC;YACxC,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6DAA6D,EAAE,GAAG,EAAE;YACrE,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAClD,6HAA6H,CAC9H,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;QAC7B,EAAE,CAAC,8EAA8E,EAAE,GAAG,EAAE;YACtF,OAAO,CAAC,GAAG,CAAC,oBAAoB,GAAG,cAAc,CAAC;YAClD,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,eAAe,CAAC;YACpD,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QAChE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;YACrD,OAAO,CAAC,GAAG,CAAC,cAAc,GAAG,cAAc,CAAC;YAC5C,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QAChE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6EAA6E,EAAE,GAAG,EAAE;YACrF,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CACrD,kDAAkD;gBAChD,2EAA2E;gBAC3E,kEAAkE;gBAClE,yEAAyE,CAC5E,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACnE,MAAM,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAC/C,+BAA+B,CAChC,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"auth.test.js","sourceRoot":"","sources":["../../../src/config/auth.test.ts"],"names":[],"mappings":"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"}
@@ -38,9 +38,12 @@ export interface CliArgs {
38
38
  loadMemoryFromIncludeDirectories: boolean | undefined;
39
39
  ideMode: string | undefined;
40
40
  screenReader: boolean | undefined;
41
+ useSmartEdit: boolean | undefined;
42
+ sessionSummary: string | undefined;
43
+ promptWords: string[] | undefined;
41
44
  }
42
45
  export declare function parseArguments(settings: Settings): Promise<CliArgs>;
43
- export declare function loadHierarchicalLlxprtMemory(currentWorkingDirectory: string, includeDirectoriesToReadGemini: readonly string[] | undefined, debugMode: boolean, fileService: FileDiscoveryService, settings: Settings, extensionContextFilePaths?: string[], memoryImportFormat?: 'flat' | 'tree', fileFilteringOptions?: FileFilteringOptions): Promise<{
46
+ export declare function loadHierarchicalLlxprtMemory(currentWorkingDirectory: string, includeDirectoriesToReadGemini: readonly string[] | undefined, debugMode: boolean, fileService: FileDiscoveryService, settings: Settings, extensionContextFilePaths: string[] | undefined, folderTrust: boolean, memoryImportFormat?: 'flat' | 'tree', fileFilteringOptions?: FileFilteringOptions): Promise<{
44
47
  memoryContent: string;
45
48
  fileCount: number;
46
49
  }>;