@vibesdotdev/integrations-grok 0.0.0-stage → 1.0.0-rc.1

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 (201) hide show
  1. package/LICENSE +126 -0
  2. package/README.md +43 -2
  3. package/dist/ai/index.d.ts +5 -0
  4. package/dist/ai/index.d.ts.map +1 -0
  5. package/dist/ai/index.js +5 -0
  6. package/dist/ai/index.js.map +1 -0
  7. package/dist/ai/metadata/provider-models/grok/grok-grok-3-mini.json +18 -0
  8. package/dist/ai/metadata/provider-models/grok/grok-grok-3.json +18 -0
  9. package/dist/ai/metadata/provider-models/grok/grok-grok-4-5.json +18 -0
  10. package/dist/ai/metadata/provider-models/grok/grok-grok-4-6.json +18 -0
  11. package/dist/ai/metadata/provider-models/grok/grok-grok-4-7.json +18 -0
  12. package/dist/ai/metadata/provider-models/grok/grok-grok-4-fast.json +18 -0
  13. package/dist/ai/metadata/provider-models/grok/grok-grok-4.json +18 -0
  14. package/dist/ai/metadata/provider-models/grok/grok-grok-code-fast.json +18 -0
  15. package/dist/ai/metadata/provider-models/grok/grok-grok-composer-2-5-fast.json +18 -0
  16. package/dist/ai/metadata/providers/grok.json +8 -0
  17. package/dist/ai/provider.consumer.plugin.d.ts +11 -0
  18. package/dist/ai/provider.consumer.plugin.d.ts.map +1 -0
  19. package/dist/ai/provider.consumer.plugin.js +43 -0
  20. package/dist/ai/provider.consumer.plugin.js.map +1 -0
  21. package/dist/ai/provider.plugin.d.ts +3 -0
  22. package/dist/ai/provider.plugin.d.ts.map +1 -0
  23. package/dist/ai/provider.plugin.js +3 -0
  24. package/dist/ai/provider.plugin.js.map +1 -0
  25. package/dist/ai/provider.shared.plugin.d.ts +6 -0
  26. package/dist/ai/provider.shared.plugin.d.ts.map +1 -0
  27. package/dist/ai/provider.shared.plugin.js +118 -0
  28. package/dist/ai/provider.shared.plugin.js.map +1 -0
  29. package/dist/ai/providers/cloud/frontier/grok/config/config.grok.descriptor.d.ts +4194 -0
  30. package/dist/ai/providers/cloud/frontier/grok/config/config.grok.descriptor.d.ts.map +1 -0
  31. package/dist/ai/providers/cloud/frontier/grok/config/config.grok.descriptor.js +15 -0
  32. package/dist/ai/providers/cloud/frontier/grok/config/config.grok.descriptor.js.map +1 -0
  33. package/dist/ai/providers/cloud/frontier/grok/config/schemas/index.d.ts +67 -0
  34. package/dist/ai/providers/cloud/frontier/grok/config/schemas/index.d.ts.map +1 -0
  35. package/dist/ai/providers/cloud/frontier/grok/config/schemas/index.js +70 -0
  36. package/dist/ai/providers/cloud/frontier/grok/config/schemas/index.js.map +1 -0
  37. package/dist/ai/providers/cloud/frontier/grok/index.d.ts +5 -0
  38. package/dist/ai/providers/cloud/frontier/grok/index.d.ts.map +1 -0
  39. package/dist/ai/providers/cloud/frontier/grok/index.js +4 -0
  40. package/dist/ai/providers/cloud/frontier/grok/index.js.map +1 -0
  41. package/dist/ai/providers/cloud/frontier/grok/provider.grok.descriptor.d.ts +183 -0
  42. package/dist/ai/providers/cloud/frontier/grok/provider.grok.descriptor.d.ts.map +1 -0
  43. package/dist/ai/providers/cloud/frontier/grok/provider.grok.descriptor.js +114 -0
  44. package/dist/ai/providers/cloud/frontier/grok/provider.grok.descriptor.js.map +1 -0
  45. package/dist/ai/providers/grok/detection/index.d.ts +2 -0
  46. package/dist/ai/providers/grok/detection/index.d.ts.map +1 -0
  47. package/dist/ai/providers/grok/detection/index.js +2 -0
  48. package/dist/ai/providers/grok/detection/index.js.map +1 -0
  49. package/dist/ai/providers/grok/detection/system.d.ts +11 -0
  50. package/dist/ai/providers/grok/detection/system.d.ts.map +1 -0
  51. package/dist/ai/providers/grok/detection/system.js +78 -0
  52. package/dist/ai/providers/grok/detection/system.js.map +1 -0
  53. package/dist/ai/providers/grok/docs/ai.providers.grok.docs.descriptor.d.ts +4 -0
  54. package/dist/ai/providers/grok/docs/ai.providers.grok.docs.descriptor.d.ts.map +1 -0
  55. package/dist/ai/providers/grok/docs/ai.providers.grok.docs.descriptor.js +21 -0
  56. package/dist/ai/providers/grok/docs/ai.providers.grok.docs.descriptor.js.map +1 -0
  57. package/dist/ai/providers/grok/grok-agent/budget.d.ts +14 -0
  58. package/dist/ai/providers/grok/grok-agent/budget.d.ts.map +1 -0
  59. package/dist/ai/providers/grok/grok-agent/budget.js +23 -0
  60. package/dist/ai/providers/grok/grok-agent/budget.js.map +1 -0
  61. package/dist/ai/providers/grok/grok-agent/connection.d.ts +36 -0
  62. package/dist/ai/providers/grok/grok-agent/connection.d.ts.map +1 -0
  63. package/dist/ai/providers/grok/grok-agent/connection.js +137 -0
  64. package/dist/ai/providers/grok/grok-agent/connection.js.map +1 -0
  65. package/dist/ai/providers/grok/grok-agent/failures.d.ts +12 -0
  66. package/dist/ai/providers/grok/grok-agent/failures.d.ts.map +1 -0
  67. package/dist/ai/providers/grok/grok-agent/failures.js +47 -0
  68. package/dist/ai/providers/grok/grok-agent/failures.js.map +1 -0
  69. package/dist/ai/providers/grok/grok-agent/grok-agent.spec.descriptor.d.ts +29 -0
  70. package/dist/ai/providers/grok/grok-agent/grok-agent.spec.descriptor.d.ts.map +1 -0
  71. package/dist/ai/providers/grok/grok-agent/grok-agent.spec.descriptor.js +18 -0
  72. package/dist/ai/providers/grok/grok-agent/grok-agent.spec.descriptor.js.map +1 -0
  73. package/dist/ai/providers/grok/grok-agent/grok-agent.spec.impl.d.ts +32 -0
  74. package/dist/ai/providers/grok/grok-agent/grok-agent.spec.impl.d.ts.map +1 -0
  75. package/dist/ai/providers/grok/grok-agent/grok-agent.spec.impl.js +113 -0
  76. package/dist/ai/providers/grok/grok-agent/grok-agent.spec.impl.js.map +1 -0
  77. package/dist/ai/providers/grok/grok-agent/grok-agent.transport.descriptor.d.ts +13 -0
  78. package/dist/ai/providers/grok/grok-agent/grok-agent.transport.descriptor.d.ts.map +1 -0
  79. package/dist/ai/providers/grok/grok-agent/grok-agent.transport.descriptor.js +11 -0
  80. package/dist/ai/providers/grok/grok-agent/grok-agent.transport.descriptor.js.map +1 -0
  81. package/dist/ai/providers/grok/grok-agent/grok-agent.transport.impl.consumer.d.ts +39 -0
  82. package/dist/ai/providers/grok/grok-agent/grok-agent.transport.impl.consumer.d.ts.map +1 -0
  83. package/dist/ai/providers/grok/grok-agent/grok-agent.transport.impl.consumer.js +79 -0
  84. package/dist/ai/providers/grok/grok-agent/grok-agent.transport.impl.consumer.js.map +1 -0
  85. package/dist/ai/providers/grok/grok-agent/protocol.d.ts +117 -0
  86. package/dist/ai/providers/grok/grok-agent/protocol.d.ts.map +1 -0
  87. package/dist/ai/providers/grok/grok-agent/protocol.js +84 -0
  88. package/dist/ai/providers/grok/grok-agent/protocol.js.map +1 -0
  89. package/dist/ai/providers/grok/grok-agent/runtime-execution.d.ts +14 -0
  90. package/dist/ai/providers/grok/grok-agent/runtime-execution.d.ts.map +1 -0
  91. package/dist/ai/providers/grok/grok-agent/runtime-execution.js +42 -0
  92. package/dist/ai/providers/grok/grok-agent/runtime-execution.js.map +1 -0
  93. package/dist/ai/providers/grok/grok-agent/session.d.ts +12 -0
  94. package/dist/ai/providers/grok/grok-agent/session.d.ts.map +1 -0
  95. package/dist/ai/providers/grok/grok-agent/session.js +140 -0
  96. package/dist/ai/providers/grok/grok-agent/session.js.map +1 -0
  97. package/dist/ai/providers/grok/grok-build.request.d.ts +7 -0
  98. package/dist/ai/providers/grok/grok-build.request.d.ts.map +1 -0
  99. package/dist/ai/providers/grok/grok-build.request.js +11 -0
  100. package/dist/ai/providers/grok/grok-build.request.js.map +1 -0
  101. package/dist/ai/providers/grok/grok-build.transport.descriptor.d.ts +13 -0
  102. package/dist/ai/providers/grok/grok-build.transport.descriptor.d.ts.map +1 -0
  103. package/dist/ai/providers/grok/grok-build.transport.descriptor.js +11 -0
  104. package/dist/ai/providers/grok/grok-build.transport.descriptor.js.map +1 -0
  105. package/dist/ai/providers/grok/grok-build.transport.impl.consumer.d.ts +23 -0
  106. package/dist/ai/providers/grok/grok-build.transport.impl.consumer.d.ts.map +1 -0
  107. package/dist/ai/providers/grok/grok-build.transport.impl.consumer.js +115 -0
  108. package/dist/ai/providers/grok/grok-build.transport.impl.consumer.js.map +1 -0
  109. package/dist/ai/providers/grok/grok-prompt-file.d.ts +16 -0
  110. package/dist/ai/providers/grok/grok-prompt-file.d.ts.map +1 -0
  111. package/dist/ai/providers/grok/grok-prompt-file.js +43 -0
  112. package/dist/ai/providers/grok/grok-prompt-file.js.map +1 -0
  113. package/dist/ai/providers/grok/grok-refusals.d.ts +149 -0
  114. package/dist/ai/providers/grok/grok-refusals.d.ts.map +1 -0
  115. package/dist/ai/providers/grok/grok-refusals.js +159 -0
  116. package/dist/ai/providers/grok/grok-refusals.js.map +1 -0
  117. package/dist/ai/providers/grok/grok-sandbox-signal.d.ts +30 -0
  118. package/dist/ai/providers/grok/grok-sandbox-signal.d.ts.map +1 -0
  119. package/dist/ai/providers/grok/grok-sandbox-signal.js +46 -0
  120. package/dist/ai/providers/grok/grok-sandbox-signal.js.map +1 -0
  121. package/dist/ai/providers/grok/grok-subscription.d.ts +116 -0
  122. package/dist/ai/providers/grok/grok-subscription.d.ts.map +1 -0
  123. package/dist/ai/providers/grok/grok-subscription.js +473 -0
  124. package/dist/ai/providers/grok/grok-subscription.js.map +1 -0
  125. package/dist/ai/providers/grok/grok.provider.impl.d.ts +47 -0
  126. package/dist/ai/providers/grok/grok.provider.impl.d.ts.map +1 -0
  127. package/dist/ai/providers/grok/grok.provider.impl.js +202 -0
  128. package/dist/ai/providers/grok/grok.provider.impl.js.map +1 -0
  129. package/dist/ai/providers/grok/index.d.ts +3 -0
  130. package/dist/ai/providers/grok/index.d.ts.map +1 -0
  131. package/dist/ai/providers/grok/index.js +3 -0
  132. package/dist/ai/providers/grok/index.js.map +1 -0
  133. package/dist/ai/providers/grok/recommendations.d.ts +23 -0
  134. package/dist/ai/providers/grok/recommendations.d.ts.map +1 -0
  135. package/dist/ai/providers/grok/recommendations.js +21 -0
  136. package/dist/ai/providers/grok/recommendations.js.map +1 -0
  137. package/dist/ai/specs/grok-build-exec/grok-build-exec.spec.descriptor.d.ts +32 -0
  138. package/dist/ai/specs/grok-build-exec/grok-build-exec.spec.descriptor.d.ts.map +1 -0
  139. package/dist/ai/specs/grok-build-exec/grok-build-exec.spec.descriptor.js +21 -0
  140. package/dist/ai/specs/grok-build-exec/grok-build-exec.spec.descriptor.js.map +1 -0
  141. package/dist/ai/specs/grok-build-exec/grok-build-exec.spec.impl.d.ts +36 -0
  142. package/dist/ai/specs/grok-build-exec/grok-build-exec.spec.impl.d.ts.map +1 -0
  143. package/dist/ai/specs/grok-build-exec/grok-build-exec.spec.impl.js +78 -0
  144. package/dist/ai/specs/grok-build-exec/grok-build-exec.spec.impl.js.map +1 -0
  145. package/dist/ai/specs/grok-messages.d.ts +20 -0
  146. package/dist/ai/specs/grok-messages.d.ts.map +1 -0
  147. package/dist/ai/specs/grok-messages.js +79 -0
  148. package/dist/ai/specs/grok-messages.js.map +1 -0
  149. package/dist/external/external.plugin.d.ts +3 -0
  150. package/dist/external/external.plugin.d.ts.map +1 -0
  151. package/dist/external/external.plugin.js +23 -0
  152. package/dist/external/external.plugin.js.map +1 -0
  153. package/dist/external/grok-build/index.d.ts +162 -0
  154. package/dist/external/grok-build/index.d.ts.map +1 -0
  155. package/dist/external/grok-build/index.js +7 -0
  156. package/dist/external/grok-build/index.js.map +1 -0
  157. package/dist/external/grok-build/manifest.d.ts +6 -0
  158. package/dist/external/grok-build/manifest.d.ts.map +1 -0
  159. package/dist/external/grok-build/manifest.js +91 -0
  160. package/dist/external/grok-build/manifest.js.map +1 -0
  161. package/dist/external/grok-build-presets.d.ts +210 -0
  162. package/dist/external/grok-build-presets.d.ts.map +1 -0
  163. package/dist/external/grok-build-presets.js +46 -0
  164. package/dist/external/grok-build-presets.js.map +1 -0
  165. package/dist/external/grok-subscription.operation.descriptors.d.ts +57 -0
  166. package/dist/external/grok-subscription.operation.descriptors.d.ts.map +1 -0
  167. package/dist/external/grok-subscription.operation.descriptors.js +22 -0
  168. package/dist/external/grok-subscription.operation.descriptors.js.map +1 -0
  169. package/dist/external/grok-subscription.operations.d.ts +4 -0
  170. package/dist/external/grok-subscription.operations.d.ts.map +1 -0
  171. package/dist/external/grok-subscription.operations.js +73 -0
  172. package/dist/external/grok-subscription.operations.js.map +1 -0
  173. package/dist/external/index.d.ts +3 -0
  174. package/dist/external/index.d.ts.map +1 -0
  175. package/dist/external/index.js +3 -0
  176. package/dist/external/index.js.map +1 -0
  177. package/dist/index.d.ts +2 -0
  178. package/dist/index.d.ts.map +1 -0
  179. package/dist/index.js +2 -0
  180. package/dist/index.js.map +1 -0
  181. package/dist/outcome.d.ts +9 -0
  182. package/dist/outcome.d.ts.map +1 -0
  183. package/dist/outcome.js +8 -0
  184. package/dist/outcome.js.map +1 -0
  185. package/dist/schemas/health.d.ts +20 -0
  186. package/dist/schemas/health.d.ts.map +1 -0
  187. package/dist/schemas/health.js +17 -0
  188. package/dist/schemas/health.js.map +1 -0
  189. package/dist/schemas/output.d.ts +8 -0
  190. package/dist/schemas/output.d.ts.map +1 -0
  191. package/dist/schemas/output.js +10 -0
  192. package/dist/schemas/output.js.map +1 -0
  193. package/dist/schemas/refusal.d.ts +6 -0
  194. package/dist/schemas/refusal.d.ts.map +1 -0
  195. package/dist/schemas/refusal.js +6 -0
  196. package/dist/schemas/refusal.js.map +1 -0
  197. package/dist/schemas/subscription.d.ts +42 -0
  198. package/dist/schemas/subscription.d.ts.map +1 -0
  199. package/dist/schemas/subscription.js +36 -0
  200. package/dist/schemas/subscription.js.map +1 -0
  201. package/package.json +104 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.grok.descriptor.d.ts","sourceRoot":"","sources":["../../../../../../../src/ai/providers/cloud/frontier/grok/config/config.grok.descriptor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { createProviderConfigDescriptor } from '@vibesdotdev/ai/providers-runtime/core';
2
+ import grokProviderDescriptor from "../provider.grok.descriptor.js";
3
+ import { grokConnectionSchema } from "./schemas/index.js";
4
+ export default createProviderConfigDescriptor({
5
+ provider: grokProviderDescriptor, schema: grokConnectionSchema,
6
+ optionLabel: 'Grok (xAI)', optionDescription: 'Grok Build CLI or xAI API credential', optionIcon: '𝕏',
7
+ fields: {
8
+ 'configuration.authMethod': { ui: { label: 'Authentication', description: 'Use Grok Build state or an API credential reference', component: 'select', group: 'connection', order: 1 } },
9
+ 'configuration.tokenSource': { ui: { label: 'Token source', description: 'Runtime owner of the selected credential', component: 'select', group: 'connection', order: 2 } },
10
+ 'configuration.apiKey': { ui: { label: 'API key', description: 'Credential reference, never raw key material', placeholder: 'XAI_API_KEY', component: 'secret', group: 'connection', order: 10 } },
11
+ 'configuration.baseUrl': { ui: { label: 'Base URL', description: 'xAI API base', placeholder: 'https://api.x.ai/v1', component: 'input', group: 'connection', order: 11 } },
12
+ 'configuration.timeout': { ui: { label: 'Timeout', description: 'Request timeout in milliseconds', placeholder: '60000', component: 'number', group: 'connection', order: 12 } }
13
+ }
14
+ });
15
+ //# sourceMappingURL=config.grok.descriptor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.grok.descriptor.js","sourceRoot":"","sources":["../../../../../../../src/ai/providers/cloud/frontier/grok/config/config.grok.descriptor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAC;AACxF,OAAO,sBAAsB,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D,eAAe,8BAA8B,CAAC;IAC7C,QAAQ,EAAE,sBAAsB,EAAE,MAAM,EAAE,oBAAoB;IAC9D,WAAW,EAAE,YAAY,EAAE,iBAAiB,EAAE,sCAAsC,EAAE,UAAU,EAAE,IAAI;IACtG,MAAM,EAAE;QACP,0BAA0B,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,qDAAqD,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACvL,2BAA2B,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,0CAA0C,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC3K,sBAAsB,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,8CAA8C,EAAE,WAAW,EAAE,aAAa,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;QAClM,uBAAuB,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,cAAc,EAAE,WAAW,EAAE,qBAAqB,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;QAC3K,uBAAuB,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,iCAAiC,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;KAChL;CACD,CAAC,CAAC"}
@@ -0,0 +1,67 @@
1
+ import * as z from 'zod/v4';
2
+ import type { AIProviderTypeInterface } from '@vibesdotdev/ai/interfaces/provider-type';
3
+ /** The base URL a connection without one uses. */
4
+ export declare const GROK_DEFAULT_BASE_URL = "https://api.x.ai/v1";
5
+ /**
6
+ * How a connection authenticates. The default is the family's declared
7
+ * `defaults.authMethod` (`grok-cli`), and this one schema is what the connection
8
+ * form, `checkHealth`, `authenticate` and `validateConnection` all read, so a
9
+ * connection that names no method means the same thing to every one of them.
10
+ */
11
+ export declare const grokAuthMethodSchema: z.ZodDefault<z.ZodEnum<{
12
+ "grok-cli": "grok-cli";
13
+ "api-key": "api-key";
14
+ }>>;
15
+ export declare const grokConnectionSchema: z.ZodObject<{
16
+ authMethod: z.ZodDefault<z.ZodEnum<{
17
+ "grok-cli": "grok-cli";
18
+ "api-key": "api-key";
19
+ }>>;
20
+ authType: z.ZodOptional<z.ZodEnum<{
21
+ oauth: "oauth";
22
+ bearer: "bearer";
23
+ }>>;
24
+ tokenSource: z.ZodDefault<z.ZodEnum<{
25
+ "oauth-browser": "oauth-browser";
26
+ "grok-cli-auth": "grok-cli-auth";
27
+ credential: "credential";
28
+ }>>;
29
+ apiKey: z.ZodOptional<z.ZodObject<{
30
+ source: z.ZodLiteral<"secret">;
31
+ key: z.ZodString;
32
+ store: z.ZodOptional<z.ZodString>;
33
+ }, z.core.$strict>>;
34
+ baseUrl: z.ZodDefault<z.ZodString>;
35
+ timeout: z.ZodDefault<z.ZodNumber>;
36
+ }, z.core.$strip>;
37
+ export type GrokConnection = z.infer<typeof grokConnectionSchema>;
38
+ /** The configuration the provider-type interface hands to health, authentication and validation: whatever the caller stored, read here by the schemas. */
39
+ export type GrokConnectionConfig = Parameters<AIProviderTypeInterface['validateConnection']>[0];
40
+ /**
41
+ * Subscription sign-in is the CLI's: a copied access or refresh token is never
42
+ * accepted, in either method. The connection form has no such fields, so they
43
+ * are declared here, as fields that can only be absent.
44
+ */
45
+ export declare const grokCopiedCredentialsSchema: z.ZodObject<{
46
+ accessToken: z.ZodOptional<z.ZodNever>;
47
+ refreshToken: z.ZodOptional<z.ZodNever>;
48
+ }, z.core.$strip>;
49
+ export interface GrokConnectionIssue {
50
+ readonly path: string;
51
+ readonly message: string;
52
+ }
53
+ export type GrokConnectionReading = {
54
+ readonly valid: true;
55
+ readonly connection: GrokConnection;
56
+ } | {
57
+ readonly valid: false;
58
+ readonly issues: readonly GrokConnectionIssue[];
59
+ readonly authMethodInvalid: boolean;
60
+ };
61
+ /**
62
+ * Read a connection configuration with the schemas above. Issues carry the
63
+ * schema's own fixed sentences, never the value that failed; an `apiKey` that
64
+ * is not a credential reference is always the one sentence naming that rule.
65
+ */
66
+ export declare function readGrokConnection(config: GrokConnectionConfig): GrokConnectionReading;
67
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ai/providers/cloud/frontier/grok/config/schemas/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAE5B,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AAMxF,kDAAkD;AAClD,eAAO,MAAM,qBAAqB,wBAAwB,CAAC;AAE3D;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB;;;GAEZ,CAAC;AAEtB,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;iBAyB9B,CAAC;AAEJ,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,0JAA0J;AAC1J,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC,uBAAuB,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAEhG;;;;GAIG;AACH,eAAO,MAAM,2BAA2B;;;iBAGtC,CAAC;AAEH,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,MAAM,qBAAqB,GAC9B;IAAE,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAA;CAAE,GAC7D;IAAE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,mBAAmB,EAAE,CAAC;IAAC,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAA;CAAE,CAAC;AAEnH;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,oBAAoB,GAAG,qBAAqB,CAatF"}
@@ -0,0 +1,70 @@
1
+ import * as z from 'zod/v4';
2
+ import { SecretReferenceSchema } from '@vibesdotdev/ai/providers-runtime';
3
+ const credentialReferenceSchema = SecretReferenceSchema;
4
+ const credentialFieldSchema = credentialReferenceSchema;
5
+ /** The base URL a connection without one uses. */
6
+ export const GROK_DEFAULT_BASE_URL = 'https://api.x.ai/v1';
7
+ /**
8
+ * How a connection authenticates. The default is the family's declared
9
+ * `defaults.authMethod` (`grok-cli`), and this one schema is what the connection
10
+ * form, `checkHealth`, `authenticate` and `validateConnection` all read, so a
11
+ * connection that names no method means the same thing to every one of them.
12
+ */
13
+ export const grokAuthMethodSchema = z
14
+ .enum(['grok-cli', 'api-key'], { error: 'authMethod must be grok-cli or api-key' })
15
+ .default('grok-cli');
16
+ export const grokConnectionSchema = z
17
+ .object({
18
+ authMethod: grokAuthMethodSchema,
19
+ authType: z.enum(['oauth', 'bearer']).optional(),
20
+ tokenSource: z.enum(['oauth-browser', 'grok-cli-auth', 'credential']).default('oauth-browser'),
21
+ apiKey: credentialFieldSchema.optional(),
22
+ baseUrl: z.string().url({ error: 'baseUrl must be a valid URL' }).default(GROK_DEFAULT_BASE_URL),
23
+ timeout: z.number().default(60000)
24
+ })
25
+ .superRefine((value, ctx) => {
26
+ if (value.authMethod === 'grok-cli' && (value.tokenSource === 'credential' || value.apiKey)) {
27
+ ctx.addIssue({
28
+ code: z.ZodIssueCode.custom,
29
+ path: ['authMethod'],
30
+ message: 'Grok subscription authentication stays in Grok Build; choose API key for separately billed API usage.'
31
+ });
32
+ }
33
+ if (value.authMethod === 'api-key' && !value.apiKey) {
34
+ ctx.addIssue({
35
+ code: z.ZodIssueCode.custom,
36
+ path: ['apiKey'],
37
+ message: 'API key is required when Grok auth method is xAI API key.'
38
+ });
39
+ }
40
+ });
41
+ /**
42
+ * Subscription sign-in is the CLI's: a copied access or refresh token is never
43
+ * accepted, in either method. The connection form has no such fields, so they
44
+ * are declared here, as fields that can only be absent.
45
+ */
46
+ export const grokCopiedCredentialsSchema = z.object({
47
+ accessToken: z.never({ error: 'Grok subscription sign-in is managed by Grok Build; copied credentials are not accepted' }).optional(),
48
+ refreshToken: z.never({ error: 'Grok subscription sign-in is managed by Grok Build; copied credentials are not accepted' }).optional()
49
+ });
50
+ /**
51
+ * Read a connection configuration with the schemas above. Issues carry the
52
+ * schema's own fixed sentences, never the value that failed; an `apiKey` that
53
+ * is not a credential reference is always the one sentence naming that rule.
54
+ */
55
+ export function readGrokConnection(config) {
56
+ const connection = grokConnectionSchema.safeParse(config);
57
+ const copied = grokCopiedCredentialsSchema.safeParse(config);
58
+ if (connection.success && copied.success)
59
+ return { valid: true, connection: connection.data };
60
+ const issues = [];
61
+ for (const issue of [...(connection.success ? [] : connection.error.issues), ...(copied.success ? [] : copied.error.issues)]) {
62
+ const path = issue.path.map(String).join('.');
63
+ const message = issue.path[0] === 'apiKey' && issue.code !== 'custom' ? 'apiKey must be a CredentialReference' : issue.message;
64
+ issues.push({ path, message });
65
+ }
66
+ // The `custom` issue on `authMethod` is the subscription-with-copied-credentials rule; any other issue there is the value itself.
67
+ const authMethodInvalid = !connection.success && connection.error.issues.some((issue) => issue.path[0] === 'authMethod' && issue.code !== 'custom');
68
+ return { valid: false, issues, authMethodInvalid };
69
+ }
70
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../src/ai/providers/cloud/frontier/grok/config/schemas/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export { default as grokProviderDescriptor } from './provider.grok.descriptor.ts';
2
+ export { default as grokProviderConfigDescriptor } from './config/config.grok.descriptor.ts';
3
+ export { grokConnectionSchema } from './config/schemas/index.ts';
4
+ export type { GrokConnection } from './config/schemas/index.ts';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/ai/providers/cloud/frontier/grok/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAClF,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,oCAAoC,CAAC;AAC7F,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,YAAY,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC"}
@@ -0,0 +1,4 @@
1
+ export { default as grokProviderDescriptor } from "./provider.grok.descriptor.js";
2
+ export { default as grokProviderConfigDescriptor } from "./config/config.grok.descriptor.js";
3
+ export { grokConnectionSchema } from "./config/schemas/index.js";
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/ai/providers/cloud/frontier/grok/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAClF,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,oCAAoC,CAAC;AAC7F,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC"}
@@ -0,0 +1,183 @@
1
+ declare const _default: {
2
+ id: string;
3
+ kind: "ai/provider";
4
+ name: string;
5
+ version: string;
6
+ connectionSchema: unknown;
7
+ priority: number;
8
+ enabled: boolean;
9
+ description?: string | undefined;
10
+ defaults?: Record<string, unknown> | undefined;
11
+ baseUrlTemplate?: string | undefined;
12
+ capabilities?: {
13
+ [x: string]: unknown;
14
+ modalities?: ("vision" | "image" | "text" | "audio" | "video" | "embedding" | "transcription" | "evaluation")[] | undefined;
15
+ authType?: "oauth" | "bearer" | "none" | "api_key" | "basic" | undefined;
16
+ authMethods?: {
17
+ [x: string]: unknown;
18
+ id: string;
19
+ type: "oauth" | "bearer" | "none" | "api_key" | "basic";
20
+ label: string;
21
+ credentialFields: string[];
22
+ enabled: boolean;
23
+ description?: string | undefined;
24
+ tokenSource?: "oauth-browser" | "credential" | "none" | "runtime" | "oauth-device-code" | undefined;
25
+ recommended?: boolean | undefined;
26
+ docsUrl?: string | undefined;
27
+ scopes?: string[] | undefined;
28
+ execution?: {
29
+ credentialCustodies: ("consumer" | "server")[];
30
+ billingOwners: ("user" | "organization" | "platform")[];
31
+ } | undefined;
32
+ }[] | undefined;
33
+ streaming?: boolean | undefined;
34
+ tools?: boolean | undefined;
35
+ vision?: boolean | undefined;
36
+ jsonMode?: boolean | undefined;
37
+ functionCalling?: boolean | undefined;
38
+ contextWindow?: number | undefined;
39
+ maxOutputTokens?: number | undefined;
40
+ } | undefined;
41
+ category?: "cloud" | "local" | "hybrid" | undefined;
42
+ hardware?: ("cloud" | "consumer")[] | undefined;
43
+ icon?: string | undefined;
44
+ branding?: {
45
+ [x: string]: unknown;
46
+ logo?: {
47
+ [x: string]: unknown;
48
+ kind: "wordmark" | "mark" | "lockup" | "badge";
49
+ format: "svg";
50
+ path: string;
51
+ sourceUrl: string;
52
+ sourcePageUrl: string;
53
+ source: "official-brand-page" | "official-brand-kit" | "official-homepage-inline" | "official-cdn" | "official-github";
54
+ theme: "any" | "light" | "dark";
55
+ usageNotes?: string | undefined;
56
+ licenseNotes?: string | undefined;
57
+ } | undefined;
58
+ darkLogo?: {
59
+ [x: string]: unknown;
60
+ kind: "wordmark" | "mark" | "lockup" | "badge";
61
+ format: "svg";
62
+ path: string;
63
+ sourceUrl: string;
64
+ sourcePageUrl: string;
65
+ source: "official-brand-page" | "official-brand-kit" | "official-homepage-inline" | "official-cdn" | "official-github";
66
+ theme: "any" | "light" | "dark";
67
+ usageNotes?: string | undefined;
68
+ licenseNotes?: string | undefined;
69
+ } | undefined;
70
+ wordmark?: {
71
+ [x: string]: unknown;
72
+ kind: "wordmark" | "mark" | "lockup" | "badge";
73
+ format: "svg";
74
+ path: string;
75
+ sourceUrl: string;
76
+ sourcePageUrl: string;
77
+ source: "official-brand-page" | "official-brand-kit" | "official-homepage-inline" | "official-cdn" | "official-github";
78
+ theme: "any" | "light" | "dark";
79
+ usageNotes?: string | undefined;
80
+ licenseNotes?: string | undefined;
81
+ } | undefined;
82
+ darkWordmark?: {
83
+ [x: string]: unknown;
84
+ kind: "wordmark" | "mark" | "lockup" | "badge";
85
+ format: "svg";
86
+ path: string;
87
+ sourceUrl: string;
88
+ sourcePageUrl: string;
89
+ source: "official-brand-page" | "official-brand-kit" | "official-homepage-inline" | "official-cdn" | "official-github";
90
+ theme: "any" | "light" | "dark";
91
+ usageNotes?: string | undefined;
92
+ licenseNotes?: string | undefined;
93
+ } | undefined;
94
+ sourcePageUrl?: string | undefined;
95
+ usageNotes?: string | undefined;
96
+ } | undefined;
97
+ docsUrl?: string | undefined;
98
+ tags?: string[] | undefined;
99
+ variants?: {
100
+ id: string;
101
+ label: string;
102
+ transport: string;
103
+ specId: string;
104
+ endpoint: string;
105
+ auth: {
106
+ kind: "none";
107
+ } | {
108
+ kind: "bearer";
109
+ token: string | {
110
+ source: "secret";
111
+ key: string;
112
+ store?: string | undefined;
113
+ };
114
+ scheme?: string | undefined;
115
+ } | {
116
+ kind: "api-key-header";
117
+ header: string;
118
+ value: string | {
119
+ source: "secret";
120
+ key: string;
121
+ store?: string | undefined;
122
+ };
123
+ } | {
124
+ kind: "basic";
125
+ username: string;
126
+ password: string | {
127
+ source: "secret";
128
+ key: string;
129
+ store?: string | undefined;
130
+ };
131
+ } | {
132
+ kind: "cf-binding";
133
+ bindingName: string;
134
+ };
135
+ modelIdRule: {
136
+ kind: "strip-prefix";
137
+ } | {
138
+ kind: "passthrough";
139
+ } | {
140
+ kind: "explicit";
141
+ modelMap: Record<string, string>;
142
+ };
143
+ priority: number;
144
+ enabled: boolean;
145
+ description?: string | undefined;
146
+ modalities?: ("image" | "text" | "audio" | "video" | "embedding" | "transcription" | "evaluation" | "speech" | "ocr")[] | undefined;
147
+ inheritEnv?: string[] | undefined;
148
+ requiredConfiguration?: string[] | undefined;
149
+ authMethodId?: string | undefined;
150
+ execution?: {
151
+ generationLocations: ("consumer" | "server")[];
152
+ headless: boolean;
153
+ } | undefined;
154
+ tags?: string[] | undefined;
155
+ models?: {
156
+ tags?: string[] | undefined;
157
+ } | undefined;
158
+ additionalHeaders?: Record<string, string> | undefined;
159
+ capabilities?: {
160
+ supportsToolChoiceRequired?: boolean | undefined;
161
+ } | undefined;
162
+ }[] | undefined;
163
+ localDiscovery?: {
164
+ defaultRootDir: string;
165
+ modelGlob: string;
166
+ descriptorFilename?: string | undefined;
167
+ } | undefined;
168
+ loadedModels?: {
169
+ path: string;
170
+ listPath: string;
171
+ idField: string;
172
+ loadedField: string;
173
+ loginPath?: string | undefined;
174
+ loginKeyField?: string | undefined;
175
+ } | undefined;
176
+ cloudStorageDiscovery?: {
177
+ requiredCapabilities: string[];
178
+ modelGlob?: string | undefined;
179
+ descriptorFilename?: string | undefined;
180
+ } | undefined;
181
+ };
182
+ export default _default;
183
+ //# sourceMappingURL=provider.grok.descriptor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider.grok.descriptor.d.ts","sourceRoot":"","sources":["../../../../../../src/ai/providers/cloud/frontier/grok/provider.grok.descriptor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,wBAkHG"}
@@ -0,0 +1,114 @@
1
+ import { createAIProviderTypeDescriptor } from '@vibesdotdev/ai/providers-runtime/core';
2
+ import { grokConnectionSchema } from "./config/schemas/index.js";
3
+ export default createAIProviderTypeDescriptor({
4
+ id: 'grok',
5
+ name: 'Grok (xAI)',
6
+ version: '0.1.0-rc.0',
7
+ description: 'xAI Grok frontier models through API credentials or a Grok Build subscription session.',
8
+ connectionSchema: grokConnectionSchema,
9
+ defaults: {
10
+ authMethod: 'grok-cli',
11
+ authType: 'oauth',
12
+ tokenSource: 'oauth-browser',
13
+ baseUrl: 'https://api.x.ai/v1',
14
+ timeout: 60000
15
+ },
16
+ capabilities: {
17
+ modalities: ['text', 'vision'],
18
+ authType: 'oauth',
19
+ authMethods: [
20
+ {
21
+ id: 'grok-cli',
22
+ type: 'oauth',
23
+ label: 'Grok subscription',
24
+ description: 'Sign in through Grok Build on this device. Inference uses that CLI session. X sign-in does not grant inference access.',
25
+ tokenSource: 'oauth-browser',
26
+ credentialFields: [],
27
+ recommended: true,
28
+ enabled: true,
29
+ execution: { credentialCustodies: ['consumer'], billingOwners: ['user'] },
30
+ docsUrl: 'https://docs.x.ai/build/enterprise#authentication'
31
+ },
32
+ {
33
+ id: 'api-key',
34
+ type: 'bearer',
35
+ label: 'xAI API key',
36
+ description: 'Use a credential reference for separately billed xAI API usage.',
37
+ tokenSource: 'credential',
38
+ credentialFields: ['apiKey'],
39
+ recommended: false,
40
+ enabled: true,
41
+ execution: {
42
+ credentialCustodies: ['consumer', 'server'],
43
+ billingOwners: ['user', 'organization']
44
+ },
45
+ docsUrl: 'https://docs.x.ai/developers/quickstart'
46
+ }
47
+ ],
48
+ streaming: true,
49
+ tools: true,
50
+ vision: true,
51
+ jsonMode: true,
52
+ functionCalling: true
53
+ },
54
+ category: 'cloud',
55
+ hardware: ['consumer', 'cloud'],
56
+ icon: '𝕏',
57
+ docsUrl: 'https://docs.x.ai/developers',
58
+ priority: 100,
59
+ enabled: true,
60
+ tags: ['cloud', 'agentic', 'api'],
61
+ variants: [
62
+ {
63
+ id: 'grok-agent',
64
+ label: 'Grok subscription',
65
+ description: 'Consumer subscription session through `grok agent stdio`. Grok Build keeps the login.',
66
+ transport: 'grok-agent',
67
+ specId: 'grok-agent',
68
+ modalities: ['text'],
69
+ endpoint: 'grok agent stdio',
70
+ auth: { kind: 'none' },
71
+ authMethodId: 'grok-cli',
72
+ execution: { generationLocations: ['consumer'], headless: true },
73
+ modelIdRule: { kind: 'strip-prefix' },
74
+ priority: 200,
75
+ enabled: true,
76
+ // Declared by this owner, because the framework reads tags only: the agent flattens a conversation to
77
+ // text (it cannot carry images) and runs its own tool loop (it cannot honour Vibes native tools).
78
+ tags: ['auth:grok-cli', 'subscription', 'consumer-only', 'external-agent-harness']
79
+ },
80
+ {
81
+ id: 'grok-build-cli',
82
+ label: 'Grok Build CLI',
83
+ description: 'Consumer-only text generation through a verified subscription-only Grok profile.',
84
+ transport: 'grok-build',
85
+ specId: 'grok-build-exec',
86
+ modalities: ['text'],
87
+ endpoint: 'grok',
88
+ auth: { kind: 'none' },
89
+ authMethodId: 'grok-cli',
90
+ execution: { generationLocations: ['consumer'], headless: true },
91
+ modelIdRule: { kind: 'strip-prefix' },
92
+ priority: 100,
93
+ enabled: true,
94
+ tags: ['auth:grok-cli', 'subscription', 'consumer-only', 'external-agent-harness']
95
+ },
96
+ {
97
+ id: 'chat',
98
+ label: 'Grok OpenAI-compatible',
99
+ description: 'xAI chat generation through its OpenAI-compatible endpoint.',
100
+ transport: 'fetch',
101
+ specId: 'openai-chat',
102
+ modalities: ['text'],
103
+ endpoint: '{baseUrl}',
104
+ auth: { kind: 'bearer', token: { source: 'secret', key: 'XAI_API_KEY' } },
105
+ authMethodId: 'api-key',
106
+ execution: { generationLocations: ['consumer', 'server'], headless: true },
107
+ modelIdRule: { kind: 'strip-prefix' },
108
+ priority: 10,
109
+ enabled: true,
110
+ tags: ['auth:api-key']
111
+ }
112
+ ]
113
+ });
114
+ //# sourceMappingURL=provider.grok.descriptor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider.grok.descriptor.js","sourceRoot":"","sources":["../../../../../../src/ai/providers/cloud/frontier/grok/provider.grok.descriptor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { detectGrokSystem } from './system.ts';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/ai/providers/grok/detection/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { detectGrokSystem } from "./system.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/ai/providers/grok/detection/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,11 @@
1
+ import type { DetectedProvider } from '@vibesdotdev/ai/providers-runtime/client/types';
2
+ import { type RuntimeRef } from '@vibesdotdev/kernel';
3
+ /**
4
+ * The first secret-store key holding a non-blank xAI credential, or undefined
5
+ * when none is set. A store failure other than "not set" propagates.
6
+ */
7
+ export declare function findGrokCredentialKey(runtime: RuntimeRef): Promise<string | undefined>;
8
+ export declare function detectGrokSystem(runtime: RuntimeRef): Promise<DetectedProvider | null>;
9
+ /** A profile signed in under the Vibes-owned Grok home is available; only the native CLI's own check decides. */
10
+ export declare function detectGrokSubscription(runtime: RuntimeRef, timeout?: number): Promise<DetectedProvider | null>;
11
+ //# sourceMappingURL=system.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system.d.ts","sourceRoot":"","sources":["../../../../../src/ai/providers/grok/detection/system.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gDAAgD,CAAC;AACvF,OAAO,EAAmB,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAYvE;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAU5F;AAED,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAmB5F;AAED,iHAAiH;AACjH,wBAAsB,sBAAsB,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,SAAQ,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAmCnH"}
@@ -0,0 +1,78 @@
1
+ import { getLogger } from '@vibesdotdev/logging';
2
+ import { CapabilityError } from '@vibesdotdev/kernel';
3
+ import { GROK_SUBSCRIPTION_ABSENCE, GROK_SUBSCRIPTION_KIND, checkGrokSubscription, grokSubscriptionCode, prepareGrokSubscription } from "../grok-subscription.js";
4
+ /** Secret-store keys that may hold an xAI credential, in preference order. */
5
+ const CREDENTIAL_KEYS = ['XAI_API_KEY', 'GROK_API_KEY'];
6
+ /**
7
+ * The first secret-store key holding a non-blank xAI credential, or undefined
8
+ * when none is set. A store failure other than "not set" propagates.
9
+ */
10
+ export async function findGrokCredentialKey(runtime) {
11
+ for (const key of CREDENTIAL_KEYS) {
12
+ const credential = await runtime.resolveCredential({ source: 'secret', key });
13
+ if (!credential.ok) {
14
+ if (credential.error.reason === 'credential-not-set')
15
+ continue;
16
+ throw credential.error;
17
+ }
18
+ if (credential.value.trim())
19
+ return key;
20
+ }
21
+ return undefined;
22
+ }
23
+ export async function detectGrokSystem(runtime) {
24
+ const key = await findGrokCredentialKey(runtime);
25
+ if (key) {
26
+ return {
27
+ providerType: 'grok',
28
+ name: 'Grok (xAI)',
29
+ description: `Credential reference available from ${key}`,
30
+ status: 'available',
31
+ models: [],
32
+ configuration: {
33
+ authMethod: 'api-key',
34
+ tokenSource: 'credential',
35
+ apiKey: { source: 'secret', key },
36
+ baseUrl: 'https://api.x.ai/v1',
37
+ timeout: 60000
38
+ }
39
+ };
40
+ }
41
+ return detectGrokSubscription(runtime);
42
+ }
43
+ /** A profile signed in under the Vibes-owned Grok home is available; only the native CLI's own check decides. */
44
+ export async function detectGrokSubscription(runtime, timeout = 5_000) {
45
+ try {
46
+ const session = await prepareGrokSubscription(runtime);
47
+ if (!(await checkGrokSubscription(session, timeout)))
48
+ return null;
49
+ }
50
+ catch (error) {
51
+ // Confirmed absences of the subscription on this host: a cloud host, no Grok
52
+ // Build binary, or a profile route the owner refuses to trust. Anything else
53
+ // (an unavailable runtime path service, a timed-out check, an execution
54
+ // adapter failure) is an unavailable owner and reaches the caller.
55
+ if (error instanceof Error && (CapabilityError.isAbsenceOf(error, GROK_SUBSCRIPTION_KIND, GROK_SUBSCRIPTION_ABSENCE.consumerRuntime) ||
56
+ CapabilityError.isAbsenceOf(error, GROK_SUBSCRIPTION_KIND, GROK_SUBSCRIPTION_ABSENCE.cli) ||
57
+ CapabilityError.isAbsenceOf(error, GROK_SUBSCRIPTION_KIND, GROK_SUBSCRIPTION_ABSENCE.route))) {
58
+ getLogger('integrations-grok', runtime).debug('Grok subscription is not offered on this host', { code: error instanceof Error ? grokSubscriptionCode(error) : undefined });
59
+ return null;
60
+ }
61
+ throw error;
62
+ }
63
+ return {
64
+ providerType: 'grok',
65
+ name: 'Grok subscription (Grok Build)',
66
+ description: 'Signed in under the Vibes-owned Grok Build profile',
67
+ status: 'available',
68
+ models: [],
69
+ configuration: {
70
+ authMethod: 'grok-cli',
71
+ authType: 'oauth',
72
+ tokenSource: 'oauth-browser',
73
+ baseUrl: 'https://api.x.ai/v1',
74
+ timeout: 60000
75
+ }
76
+ };
77
+ }
78
+ //# sourceMappingURL=system.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system.js","sourceRoot":"","sources":["../../../../../src/ai/providers/grok/detection/system.ts"],"names":[],"mappings":"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"}