@vibesdotdev/integrations 0.0.0-stage → 1.0.0-rc.3

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 (242) hide show
  1. package/LICENSE +18 -0
  2. package/README.md +100 -2
  3. package/dist/ai/ai.cloud.plugin.d.ts +5 -0
  4. package/dist/ai/ai.cloud.plugin.d.ts.map +1 -0
  5. package/dist/ai/ai.cloud.plugin.js +67 -0
  6. package/dist/ai/ai.cloud.plugin.js.map +1 -0
  7. package/dist/ai/ai.plugin.d.ts +5 -0
  8. package/dist/ai/ai.plugin.d.ts.map +1 -0
  9. package/dist/ai/ai.plugin.js +97 -0
  10. package/dist/ai/ai.plugin.js.map +1 -0
  11. package/dist/base/base.plugin.d.ts +10 -0
  12. package/dist/base/base.plugin.d.ts.map +1 -0
  13. package/dist/base/base.plugin.js +23 -0
  14. package/dist/base/base.plugin.js.map +1 -0
  15. package/dist/base/index.d.ts +13 -0
  16. package/dist/base/index.d.ts.map +1 -0
  17. package/dist/base/index.js +15 -0
  18. package/dist/base/index.js.map +1 -0
  19. package/dist/base/resolver.d.ts +13 -0
  20. package/dist/base/resolver.d.ts.map +1 -0
  21. package/dist/base/resolver.js +30 -0
  22. package/dist/base/resolver.js.map +1 -0
  23. package/dist/base/schemas.d.ts +167 -0
  24. package/dist/base/schemas.d.ts.map +1 -0
  25. package/dist/base/schemas.js +48 -0
  26. package/dist/base/schemas.js.map +1 -0
  27. package/dist/catalog/index.d.ts +6 -0
  28. package/dist/catalog/index.d.ts.map +1 -0
  29. package/dist/catalog/index.js +6 -0
  30. package/dist/catalog/index.js.map +1 -0
  31. package/dist/catalog/integration-catalog.capability.d.ts +14 -0
  32. package/dist/catalog/integration-catalog.capability.d.ts.map +1 -0
  33. package/dist/catalog/integration-catalog.capability.js +23 -0
  34. package/dist/catalog/integration-catalog.capability.js.map +1 -0
  35. package/dist/catalog/integration-catalog.descriptor.d.ts +6 -0
  36. package/dist/catalog/integration-catalog.descriptor.d.ts.map +1 -0
  37. package/dist/catalog/integration-catalog.descriptor.js +11 -0
  38. package/dist/catalog/integration-catalog.descriptor.js.map +1 -0
  39. package/dist/catalog/integration-catalog.exposure.d.ts +62 -0
  40. package/dist/catalog/integration-catalog.exposure.d.ts.map +1 -0
  41. package/dist/catalog/integration-catalog.exposure.js +101 -0
  42. package/dist/catalog/integration-catalog.exposure.js.map +1 -0
  43. package/dist/catalog/integration-catalog.http.d.ts +9 -0
  44. package/dist/catalog/integration-catalog.http.d.ts.map +1 -0
  45. package/dist/catalog/integration-catalog.http.js +58 -0
  46. package/dist/catalog/integration-catalog.http.js.map +1 -0
  47. package/dist/catalog/integration-catalog.kind.d.ts +36 -0
  48. package/dist/catalog/integration-catalog.kind.d.ts.map +1 -0
  49. package/dist/catalog/integration-catalog.kind.js +14 -0
  50. package/dist/catalog/integration-catalog.kind.js.map +1 -0
  51. package/dist/catalog/queries.d.ts +6 -0
  52. package/dist/catalog/queries.d.ts.map +1 -0
  53. package/dist/catalog/queries.js +29 -0
  54. package/dist/catalog/queries.js.map +1 -0
  55. package/dist/client/helper.d.ts +5 -0
  56. package/dist/client/helper.d.ts.map +1 -0
  57. package/dist/client/helper.js +6 -0
  58. package/dist/client/helper.js.map +1 -0
  59. package/dist/client/index.d.ts +4 -0
  60. package/dist/client/index.d.ts.map +1 -0
  61. package/dist/client/index.js +3 -0
  62. package/dist/client/index.js.map +1 -0
  63. package/dist/client/integrations.runtime-client.browser.d.ts +10 -0
  64. package/dist/client/integrations.runtime-client.browser.d.ts.map +1 -0
  65. package/dist/client/integrations.runtime-client.browser.js +13 -0
  66. package/dist/client/integrations.runtime-client.browser.js.map +1 -0
  67. package/dist/client/integrations.runtime-client.d.ts +25 -0
  68. package/dist/client/integrations.runtime-client.d.ts.map +1 -0
  69. package/dist/client/integrations.runtime-client.descriptor.d.ts +4 -0
  70. package/dist/client/integrations.runtime-client.descriptor.d.ts.map +1 -0
  71. package/dist/client/integrations.runtime-client.descriptor.js +13 -0
  72. package/dist/client/integrations.runtime-client.descriptor.js.map +1 -0
  73. package/dist/client/integrations.runtime-client.js +41 -0
  74. package/dist/client/integrations.runtime-client.js.map +1 -0
  75. package/dist/docs/integrations.docs.descriptor.d.ts +4 -0
  76. package/dist/docs/integrations.docs.descriptor.d.ts.map +1 -0
  77. package/dist/docs/integrations.docs.descriptor.js +43 -0
  78. package/dist/docs/integrations.docs.descriptor.js.map +1 -0
  79. package/dist/docs/integrations.providers.docs.descriptor.d.ts +4 -0
  80. package/dist/docs/integrations.providers.docs.descriptor.d.ts.map +1 -0
  81. package/dist/docs/integrations.providers.docs.descriptor.js +32 -0
  82. package/dist/docs/integrations.providers.docs.descriptor.js.map +1 -0
  83. package/dist/http/fetch-with-retry.d.ts +27 -0
  84. package/dist/http/fetch-with-retry.d.ts.map +1 -0
  85. package/dist/http/fetch-with-retry.js +76 -0
  86. package/dist/http/fetch-with-retry.js.map +1 -0
  87. package/dist/index.d.ts +24 -0
  88. package/dist/index.d.ts.map +1 -0
  89. package/dist/index.js +16 -0
  90. package/dist/index.js.map +1 -0
  91. package/dist/integrations.browser.plugin.d.ts +11 -0
  92. package/dist/integrations.browser.plugin.d.ts.map +1 -0
  93. package/dist/integrations.browser.plugin.js +26 -0
  94. package/dist/integrations.browser.plugin.js.map +1 -0
  95. package/dist/integrations.consumer.plugin.d.ts +3 -0
  96. package/dist/integrations.consumer.plugin.d.ts.map +1 -0
  97. package/dist/integrations.consumer.plugin.js +12 -0
  98. package/dist/integrations.consumer.plugin.js.map +1 -0
  99. package/dist/integrations.plugin.d.ts +10 -0
  100. package/dist/integrations.plugin.d.ts.map +1 -0
  101. package/dist/integrations.plugin.js +67 -0
  102. package/dist/integrations.plugin.js.map +1 -0
  103. package/dist/kinds/integration-store.context.descriptor.d.ts +31 -0
  104. package/dist/kinds/integration-store.context.descriptor.d.ts.map +1 -0
  105. package/dist/kinds/integration-store.context.descriptor.js +8 -0
  106. package/dist/kinds/integration-store.context.descriptor.js.map +1 -0
  107. package/dist/kinds/integration.kind.d.ts +74 -0
  108. package/dist/kinds/integration.kind.d.ts.map +1 -0
  109. package/dist/kinds/integration.kind.js +542 -0
  110. package/dist/kinds/integration.kind.js.map +1 -0
  111. package/dist/kinds/integration.store.d.ts +30 -0
  112. package/dist/kinds/integration.store.d.ts.map +1 -0
  113. package/dist/kinds/integration.store.js +295 -0
  114. package/dist/kinds/integration.store.js.map +1 -0
  115. package/dist/schemas/boundary.d.ts +7 -0
  116. package/dist/schemas/boundary.d.ts.map +1 -0
  117. package/dist/schemas/boundary.js +16 -0
  118. package/dist/schemas/boundary.js.map +1 -0
  119. package/dist/schemas/catalog.d.ts +135 -0
  120. package/dist/schemas/catalog.d.ts.map +1 -0
  121. package/dist/schemas/catalog.js +13 -0
  122. package/dist/schemas/catalog.js.map +1 -0
  123. package/dist/schemas/credential-resolution.d.ts +35 -0
  124. package/dist/schemas/credential-resolution.d.ts.map +1 -0
  125. package/dist/schemas/credential-resolution.js +14 -0
  126. package/dist/schemas/credential-resolution.js.map +1 -0
  127. package/dist/schemas/http-retry.d.ts +9 -0
  128. package/dist/schemas/http-retry.d.ts.map +1 -0
  129. package/dist/schemas/http-retry.js +8 -0
  130. package/dist/schemas/http-retry.js.map +1 -0
  131. package/dist/schemas/integration-connection.d.ts +79 -0
  132. package/dist/schemas/integration-connection.d.ts.map +1 -0
  133. package/dist/schemas/integration-connection.js +55 -0
  134. package/dist/schemas/integration-connection.js.map +1 -0
  135. package/dist/schemas/integration-descriptor.d.ts +358 -0
  136. package/dist/schemas/integration-descriptor.d.ts.map +1 -0
  137. package/dist/schemas/integration-descriptor.js +153 -0
  138. package/dist/schemas/integration-descriptor.js.map +1 -0
  139. package/dist/schemas/oauth-state.d.ts +30 -0
  140. package/dist/schemas/oauth-state.d.ts.map +1 -0
  141. package/dist/schemas/oauth-state.js +26 -0
  142. package/dist/schemas/oauth-state.js.map +1 -0
  143. package/dist/schemas/settings.d.ts +9 -0
  144. package/dist/schemas/settings.d.ts.map +1 -0
  145. package/dist/schemas/settings.js +8 -0
  146. package/dist/schemas/settings.js.map +1 -0
  147. package/dist/schemas/store.d.ts +68 -0
  148. package/dist/schemas/store.d.ts.map +1 -0
  149. package/dist/schemas/store.js +31 -0
  150. package/dist/schemas/store.js.map +1 -0
  151. package/dist/server/defaults/system-defaults.kind.d.ts +8 -0
  152. package/dist/server/defaults/system-defaults.kind.d.ts.map +1 -0
  153. package/dist/server/defaults/system-defaults.kind.js +13 -0
  154. package/dist/server/defaults/system-defaults.kind.js.map +1 -0
  155. package/dist/server/integration-oauth.d.ts +44 -0
  156. package/dist/server/integration-oauth.d.ts.map +1 -0
  157. package/dist/server/integration-oauth.js +56 -0
  158. package/dist/server/integration-oauth.js.map +1 -0
  159. package/dist/server/integration-secrets.d.ts +11 -0
  160. package/dist/server/integration-secrets.d.ts.map +1 -0
  161. package/dist/server/integration-secrets.js +98 -0
  162. package/dist/server/integration-secrets.js.map +1 -0
  163. package/dist/server/oauth-state.d.ts +74 -0
  164. package/dist/server/oauth-state.d.ts.map +1 -0
  165. package/dist/server/oauth-state.js +208 -0
  166. package/dist/server/oauth-state.js.map +1 -0
  167. package/dist/server/schemas/integration-oauth.d.ts +32 -0
  168. package/dist/server/schemas/integration-oauth.d.ts.map +1 -0
  169. package/dist/server/schemas/integration-oauth.js +20 -0
  170. package/dist/server/schemas/integration-oauth.js.map +1 -0
  171. package/dist/server/schemas/integration-secrets.d.ts +165 -0
  172. package/dist/server/schemas/integration-secrets.d.ts.map +1 -0
  173. package/dist/server/schemas/integration-secrets.js +72 -0
  174. package/dist/server/schemas/integration-secrets.js.map +1 -0
  175. package/dist/server/schemas/system-defaults.d.ts +124 -0
  176. package/dist/server/schemas/system-defaults.d.ts.map +1 -0
  177. package/dist/server/schemas/system-defaults.js +48 -0
  178. package/dist/server/schemas/system-defaults.js.map +1 -0
  179. package/dist/server/system-defaults.d.ts +20 -0
  180. package/dist/server/system-defaults.d.ts.map +1 -0
  181. package/dist/server/system-defaults.js +58 -0
  182. package/dist/server/system-defaults.js.map +1 -0
  183. package/dist/settings/context.d.ts +11 -0
  184. package/dist/settings/context.d.ts.map +1 -0
  185. package/dist/settings/context.js +19 -0
  186. package/dist/settings/context.js.map +1 -0
  187. package/dist/settings/system-settings-reader.context.descriptor.d.ts +43 -0
  188. package/dist/settings/system-settings-reader.context.descriptor.d.ts.map +1 -0
  189. package/dist/settings/system-settings-reader.context.descriptor.js +23 -0
  190. package/dist/settings/system-settings-reader.context.descriptor.js.map +1 -0
  191. package/dist/status/integration-connect.availability.d.ts +16 -0
  192. package/dist/status/integration-connect.availability.d.ts.map +1 -0
  193. package/dist/status/integration-connect.availability.js +14 -0
  194. package/dist/status/integration-connect.availability.js.map +1 -0
  195. package/dist/status/integration-connection-status.d.ts +18 -0
  196. package/dist/status/integration-connection-status.d.ts.map +1 -0
  197. package/dist/status/integration-connection-status.js +17 -0
  198. package/dist/status/integration-connection-status.js.map +1 -0
  199. package/dist/status/integration-connection.capability.d.ts +19 -0
  200. package/dist/status/integration-connection.capability.d.ts.map +1 -0
  201. package/dist/status/integration-connection.capability.js +15 -0
  202. package/dist/status/integration-connection.capability.js.map +1 -0
  203. package/dist/status/integration-connection.kind.d.ts +55 -0
  204. package/dist/status/integration-connection.kind.d.ts.map +1 -0
  205. package/dist/status/integration-connection.kind.js +31 -0
  206. package/dist/status/integration-connection.kind.js.map +1 -0
  207. package/dist/status/integration-connection.queries.d.ts +25 -0
  208. package/dist/status/integration-connection.queries.d.ts.map +1 -0
  209. package/dist/status/integration-connection.queries.js +65 -0
  210. package/dist/status/integration-connection.queries.js.map +1 -0
  211. package/dist/svelte/components/IntegrationsCatalog.svelte +201 -0
  212. package/dist/svelte/components/IntegrationsCatalog.svelte.d.ts +5 -0
  213. package/dist/svelte/components/IntegrationsCatalog.svelte.d.ts.map +1 -0
  214. package/dist/svelte/components/IntegrationsLoader.svelte +46 -0
  215. package/dist/svelte/components/IntegrationsLoader.svelte.d.ts +12 -0
  216. package/dist/svelte/components/IntegrationsLoader.svelte.d.ts.map +1 -0
  217. package/dist/svelte/connect-action.d.ts +20 -0
  218. package/dist/svelte/connect-action.d.ts.map +1 -0
  219. package/dist/svelte/connect-action.js +40 -0
  220. package/dist/svelte/docs/integrations-svelte.catalog.docs.descriptor.d.ts +4 -0
  221. package/dist/svelte/docs/integrations-svelte.catalog.docs.descriptor.d.ts.map +1 -0
  222. package/dist/svelte/docs/integrations-svelte.catalog.docs.descriptor.js +30 -0
  223. package/dist/svelte/index.d.ts +12 -0
  224. package/dist/svelte/index.d.ts.map +1 -0
  225. package/dist/svelte/index.js +7 -0
  226. package/dist/svelte/integrations-svelte.plugin.d.ts +10 -0
  227. package/dist/svelte/integrations-svelte.plugin.d.ts.map +1 -0
  228. package/dist/svelte/integrations-svelte.plugin.js +16 -0
  229. package/dist/svelte/loaders.d.ts +17 -0
  230. package/dist/svelte/loaders.d.ts.map +1 -0
  231. package/dist/svelte/loaders.js +17 -0
  232. package/dist/svelte/runtime.d.ts +12 -0
  233. package/dist/svelte/runtime.d.ts.map +1 -0
  234. package/dist/svelte/runtime.js +11 -0
  235. package/dist/svelte/state.svelte.d.ts +30 -0
  236. package/dist/svelte/state.svelte.d.ts.map +1 -0
  237. package/dist/svelte/state.svelte.js +133 -0
  238. package/dist/svelte/styles.css +2 -0
  239. package/dist/svelte/types.d.ts +13 -0
  240. package/dist/svelte/types.d.ts.map +1 -0
  241. package/dist/svelte/types.js +1 -0
  242. package/package.json +223 -4
package/LICENSE ADDED
@@ -0,0 +1,18 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 VIBES DEV LLC
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and
6
+ associated documentation files (the "Software"), to deal in the Software without restriction, including
7
+ without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8
+ copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the
9
+ following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be included in all copies or substantial
12
+ portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
15
+ LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO
16
+ EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
17
+ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
18
+ USE OR OTHER DEALINGS IN THE SOFTWARE.
package/README.md CHANGED
@@ -1,3 +1,101 @@
1
- # Temporary Holding Version
1
+ # @vibesdotdev/integrations
2
2
 
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.
3
+ Runtime contracts and catalog for third-party connectors. Provider implementations
4
+ ship from their connector packages. See [SPEC.md](./SPEC.md) for the full contract.
5
+
6
+ ## Compose the runtime
7
+
8
+ Compose logging, storage, and `@vibesdotdev/integrations/plugin`. Consumer
9
+ daemons also compose `@vibesdotdev/integrations/consumer.plugin`; renderers
10
+ compose `@vibesdotdev/integrations/browser.plugin` and mount the owner catalog
11
+ through kernel federation or the HTTP catalog adapter.
12
+
13
+ ```ts
14
+ import { getVibesIntegrationsClient } from '@vibesdotdev/integrations/client';
15
+
16
+ const client = await getVibesIntegrationsClient(runtime);
17
+ const providers = await client.providers.list({ category: 'crm' });
18
+ const provider = await runtime.query('integration/provider').withId(providerId).resolve();
19
+ ```
20
+
21
+ The root exports the provider kind, schemas, runtime client, catalog APIs, and
22
+ host-declared connection/default contracts. Vendor subclasses extend
23
+ `BaseIntegrationProvider` through `@vibesdotdev/integrations/kinds/integration`;
24
+ the package root does not export that concrete implementation.
25
+
26
+ ## Credentials, connections, and defaults
27
+
28
+ Credential values resolve through `runtime.resolveCredential`. Managed
29
+ credential metadata and writes belong to the secrets runtime client.
30
+ Settings-backed credential entries must contain a kernel
31
+ `CredentialReference`, never a raw credential value. Managed reads and writes
32
+ require explicit user/org/project/platform scope; organization credentials use
33
+ the current request organization and descriptor scope. Host references remain
34
+ read-only.
35
+
36
+ Selected accounts use an explicit `connectionId`. The provider authorizes that
37
+ connection for the authenticated user or verified delegation; it does not pick
38
+ the latest row across organizations.
39
+
40
+ Providers declare authentication and connection support in their descriptor or
41
+ an `integration/connection` descriptor. A renderer offers Connect only when
42
+ this runtime resolves the provider's connection implementation. Catalog
43
+ metadata alone does not grant authority. The implementation retains host
44
+ authorization and returns an accepted result or a typed refusal.
45
+
46
+ The generic core ships no vendor default list. Hosts declare
47
+ `integration/provider-defaults` descriptors with explicit scope and
48
+ definitions; `integrationProviderDefaultIds`, `seedIntegrationProviderServices`,
49
+ and `cleanIntegrationProviderServices` operate on those declarations.
50
+
51
+ AI aggregation belongs to `@vibesdotdev/integrations-connectors`: import
52
+ `@vibesdotdev/integrations-connectors/ai/plugin`, or compose that owner's
53
+ `./ai/cloud.plugin` on a cloud host.
54
+
55
+ The catalog renderer projection keeps labels, availability, and declared
56
+ connection metadata while removing configuration, credential references, OAuth
57
+ endpoints, base URLs, and operations. Catalog presence does not claim connection
58
+ state.
59
+
60
+ ## OAuth and failures
61
+
62
+ Use `@vibesdotdev/integrations/server/oauth-state` for cookie-backed or
63
+ signed-payload OAuth state. Signed state requires callback-side authorization
64
+ and safe redirect validation. Refusals use kernel `CapabilityError` codes and
65
+ reasons; original failures remain causes.
66
+
67
+ Credential use in an OAuth flow stays with the credential owners.
68
+ `@vibesdotdev/integrations/server/oauth` exchanges authorization codes and stored
69
+ refresh tokens through Secrets using ordered credential candidates. Descriptors can
70
+ select basic or form authentication, form or JSON bodies, provider headers and
71
+ additional non-secret grant fields. `startAuthorization` asks Secrets to resolve the
72
+ public OAuth `client_id` into the browser redirect; `client_secret` stays out of the
73
+ URL, provider configuration and callback. Callback routing fields remain allowlisted,
74
+ and token persistence retains provider expiry data. A provider sends API calls with
75
+ `getCredentialCandidates(key)` and hands those candidates to
76
+ `sendIntegrationAuthenticatedRequest`.
77
+
78
+ ```ts
79
+ import { exchangeIntegrationAuthorizationCode } from '@vibesdotdev/integrations/server/oauth';
80
+
81
+ const tokens = await exchangeIntegrationAuthorizationCode(runtime, {
82
+ tokenEndpoint: oauth.tokenEndpoint,
83
+ code,
84
+ redirectUri,
85
+ clientId: await provider.getCredentialCandidates('clientId'),
86
+ clientSecret: await provider.getCredentialCandidates('clientSecret'),
87
+ });
88
+ ```
89
+
90
+ ## Checks
91
+
92
+ From this directory:
93
+
94
+ ```sh
95
+ bun run check
96
+ bun run test
97
+ bun run build
98
+ node ../../node_modules/@vibesdotdev/internal-oxlint-toolchain/ratchet.mjs .
99
+ ```
100
+
101
+ Also run `workspace-rules` with this package directory.
@@ -0,0 +1,5 @@
1
+ import { type RuntimePlugin } from '@vibesdotdev/kernel';
2
+ /** Cloud AI composition. Provider packages arrive only as completed plugins. */
3
+ export declare const integrationsAICloudPlugin: RuntimePlugin;
4
+ export default integrationsAICloudPlugin;
5
+ //# sourceMappingURL=ai.cloud.plugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai.cloud.plugin.d.ts","sourceRoot":"","sources":["../../src/ai/ai.cloud.plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAuD9E,gFAAgF;AAChF,eAAO,MAAM,yBAAyB,EAAE,aAStC,CAAC;AAEH,eAAe,yBAAyB,CAAC"}
@@ -0,0 +1,67 @@
1
+ import { createRuntimePlugin } from '@vibesdotdev/kernel';
2
+ import aiCloudProvidersPlugin from '@vibesdotdev/ai/ai.cloud.plugin';
3
+ import aiRouterPlugin from '@vibesdotdev/ai/router/plugin';
4
+ import anthropicAIPlugin from '@vibesdotdev/integrations-anthropic/ai/plugin';
5
+ import cloudflareAIPlugin from '@vibesdotdev/integrations-cloudflare/ai/plugin';
6
+ import cohereAIPlugin from '@vibesdotdev/integrations-cohere/ai/plugin';
7
+ import civitaiAIPlugin from '@vibesdotdev/integrations-civitai/ai/plugin';
8
+ import customAIPlugin from '@vibesdotdev/integrations-custom/ai/plugin';
9
+ import deepgramAIPlugin from '@vibesdotdev/integrations-deepgram/ai/plugin';
10
+ import digitaloceanAIPlugin from '@vibesdotdev/integrations-digitalocean/ai/plugin';
11
+ import elevenlabsAIPlugin from '@vibesdotdev/integrations-elevenlabs/ai/plugin';
12
+ import falAIPlugin from '@vibesdotdev/integrations-fal/ai/plugin';
13
+ import fireworksAIPlugin from '@vibesdotdev/integrations-fireworks/ai/plugin';
14
+ import geminiAIPlugin from '@vibesdotdev/integrations-gemini/ai/plugin';
15
+ import grokAIPlugin from '@vibesdotdev/integrations-grok/ai/plugin';
16
+ import groqAIPlugin from '@vibesdotdev/integrations-groq/ai/plugin';
17
+ import huggingfaceAIPlugin from '@vibesdotdev/integrations-huggingface/ai/plugin';
18
+ import metaAIPlugin from '@vibesdotdev/integrations-meta/ai/plugin';
19
+ import mistralAIPlugin from '@vibesdotdev/integrations-mistral/ai/plugin';
20
+ import openAIAIPlugin from '@vibesdotdev/integrations-openai/cloud.plugin';
21
+ import openAITranscriptionAIPlugin from '@vibesdotdev/integrations-openai/ai/transcription/plugin';
22
+ import openAITtsAIPlugin from '@vibesdotdev/integrations-openai/ai/tts/plugin';
23
+ import openrouterAIPlugin from '@vibesdotdev/integrations-openrouter/ai/plugin';
24
+ import replicateAIPlugin from '@vibesdotdev/integrations-replicate/ai/plugin';
25
+ import togetherAIPlugin from '@vibesdotdev/integrations-together/ai/plugin';
26
+ import whisperAIPlugin from '@vibesdotdev/integrations-whisper/ai/plugin';
27
+ import zaiAIPlugin from '@vibesdotdev/integrations-zai/ai/plugin';
28
+ const cloudProviderPlugins = [
29
+ anthropicAIPlugin,
30
+ cloudflareAIPlugin,
31
+ civitaiAIPlugin,
32
+ cohereAIPlugin,
33
+ customAIPlugin,
34
+ deepgramAIPlugin,
35
+ digitaloceanAIPlugin,
36
+ elevenlabsAIPlugin,
37
+ falAIPlugin,
38
+ fireworksAIPlugin,
39
+ geminiAIPlugin,
40
+ grokAIPlugin,
41
+ groqAIPlugin,
42
+ huggingfaceAIPlugin,
43
+ metaAIPlugin,
44
+ mistralAIPlugin,
45
+ openAITranscriptionAIPlugin,
46
+ openAITtsAIPlugin,
47
+ openAIAIPlugin,
48
+ openrouterAIPlugin,
49
+ replicateAIPlugin,
50
+ togetherAIPlugin,
51
+ whisperAIPlugin,
52
+ zaiAIPlugin
53
+ ];
54
+ /** Cloud AI composition. Provider packages arrive only as completed plugins. */
55
+ export const integrationsAICloudPlugin = createRuntimePlugin({
56
+ id: 'integrations-ai.cloud',
57
+ name: 'Vibes AI with cloud integration providers',
58
+ description: 'Composes cloud-safe Framework AI with integration-owned provider plugins',
59
+ async onRegister(runtime) {
60
+ await runtime.registerPlugin(aiCloudProvidersPlugin);
61
+ await runtime.registerPlugin(aiRouterPlugin);
62
+ for (const plugin of cloudProviderPlugins)
63
+ await runtime.registerPlugin(plugin);
64
+ }
65
+ });
66
+ export default integrationsAICloudPlugin;
67
+ //# sourceMappingURL=ai.cloud.plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai.cloud.plugin.js","sourceRoot":"","sources":["../../src/ai/ai.cloud.plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAsB,MAAM,qBAAqB,CAAC;AAC9E,OAAO,sBAAsB,MAAM,iCAAiC,CAAC;AACrE,OAAO,cAAc,MAAM,+BAA+B,CAAC;AAC3D,OAAO,iBAAiB,MAAM,+CAA+C,CAAC;AAC9E,OAAO,kBAAkB,MAAM,gDAAgD,CAAC;AAChF,OAAO,cAAc,MAAM,4CAA4C,CAAC;AACxE,OAAO,eAAe,MAAM,6CAA6C,CAAC;AAC1E,OAAO,cAAc,MAAM,4CAA4C,CAAC;AACxE,OAAO,gBAAgB,MAAM,8CAA8C,CAAC;AAC5E,OAAO,oBAAoB,MAAM,kDAAkD,CAAC;AACpF,OAAO,kBAAkB,MAAM,gDAAgD,CAAC;AAChF,OAAO,WAAW,MAAM,yCAAyC,CAAC;AAClE,OAAO,iBAAiB,MAAM,+CAA+C,CAAC;AAC9E,OAAO,cAAc,MAAM,4CAA4C,CAAC;AACxE,OAAO,YAAY,MAAM,0CAA0C,CAAC;AACpE,OAAO,YAAY,MAAM,0CAA0C,CAAC;AACpE,OAAO,mBAAmB,MAAM,iDAAiD,CAAC;AAClF,OAAO,YAAY,MAAM,0CAA0C,CAAC;AACpE,OAAO,eAAe,MAAM,6CAA6C,CAAC;AAC1E,OAAO,cAAc,MAAM,+CAA+C,CAAC;AAC3E,OAAO,2BAA2B,MAAM,0DAA0D,CAAC;AACnG,OAAO,iBAAiB,MAAM,gDAAgD,CAAC;AAC/E,OAAO,kBAAkB,MAAM,gDAAgD,CAAC;AAChF,OAAO,iBAAiB,MAAM,+CAA+C,CAAC;AAC9E,OAAO,gBAAgB,MAAM,8CAA8C,CAAC;AAC5E,OAAO,eAAe,MAAM,6CAA6C,CAAC;AAC1E,OAAO,WAAW,MAAM,yCAAyC,CAAC;AAElE,MAAM,oBAAoB,GAA6B;IACtD,iBAAiB;IACjB,kBAAkB;IAClB,eAAe;IACf,cAAc;IACd,cAAc;IACd,gBAAgB;IAChB,oBAAoB;IACpB,kBAAkB;IAClB,WAAW;IACX,iBAAiB;IACjB,cAAc;IACd,YAAY;IACZ,YAAY;IACZ,mBAAmB;IACnB,YAAY;IACZ,eAAe;IACf,2BAA2B;IAC3B,iBAAiB;IACjB,cAAc;IACd,kBAAkB;IAClB,iBAAiB;IACjB,gBAAgB;IAChB,eAAe;IACf,WAAW;CACX,CAAC;AAEF,gFAAgF;AAChF,MAAM,CAAC,MAAM,yBAAyB,GAAkB,mBAAmB,CAAC;IAC3E,EAAE,EAAE,uBAAuB;IAC3B,IAAI,EAAE,2CAA2C;IACjD,WAAW,EAAE,0EAA0E;IACvF,KAAK,CAAC,UAAU,CAAC,OAAO;QACvB,MAAM,OAAO,CAAC,cAAc,CAAC,sBAAsB,CAAC,CAAC;QACrD,MAAM,OAAO,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;QAC7C,KAAK,MAAM,MAAM,IAAI,oBAAoB;YAAE,MAAM,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IACjF,CAAC;CACD,CAAC,CAAC;AAEH,eAAe,yBAAyB,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { type RuntimePlugin } from '@vibesdotdev/kernel';
2
+ /** Consumer AI composition. Provider packages arrive only as completed plugins. */
3
+ export declare const integrationsAIPlugin: RuntimePlugin;
4
+ export default integrationsAIPlugin;
5
+ //# sourceMappingURL=ai.plugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai.plugin.d.ts","sourceRoot":"","sources":["../../src/ai/ai.plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAqF9E,mFAAmF;AACnF,eAAO,MAAM,oBAAoB,EAAE,aASjC,CAAC;AAEH,eAAe,oBAAoB,CAAC"}
@@ -0,0 +1,97 @@
1
+ import { createRuntimePlugin } from '@vibesdotdev/kernel';
2
+ import aiPlugin from '@vibesdotdev/ai/ai.plugin';
3
+ import aiRouterPlugin from '@vibesdotdev/ai/router/plugin';
4
+ import anthropicAIPlugin from '@vibesdotdev/integrations-anthropic/ai/plugin';
5
+ import audioldmAIPlugin from '@vibesdotdev/integrations-audioldm/ai/plugin';
6
+ import automatic1111AIPlugin from '@vibesdotdev/integrations-automatic1111/ai/plugin';
7
+ import barkAIPlugin from '@vibesdotdev/integrations-bark/ai/plugin';
8
+ import cloudflareAIPlugin from '@vibesdotdev/integrations-cloudflare/ai/plugin';
9
+ import cohereAIPlugin from '@vibesdotdev/integrations-cohere/ai/plugin';
10
+ import civitaiAIPlugin from '@vibesdotdev/integrations-civitai/ai/plugin';
11
+ import comfyuiAIPlugin from '@vibesdotdev/integrations-comfyui/ai/plugin';
12
+ import coquiTtsAIPlugin from '@vibesdotdev/integrations-coqui-tts/ai/plugin';
13
+ import customAIPlugin from '@vibesdotdev/integrations-custom/ai/plugin';
14
+ import deepgramAIPlugin from '@vibesdotdev/integrations-deepgram/ai/plugin';
15
+ import diffusersAIPlugin from '@vibesdotdev/integrations-diffusers/ai/plugin';
16
+ import digitaloceanAIPlugin from '@vibesdotdev/integrations-digitalocean/ai/plugin';
17
+ import elevenlabsAIPlugin from '@vibesdotdev/integrations-elevenlabs/ai/plugin';
18
+ import falAIPlugin from '@vibesdotdev/integrations-fal/ai/plugin';
19
+ import fasterWhisperAIPlugin from '@vibesdotdev/integrations-faster-whisper/ai/plugin';
20
+ import fireworksAIPlugin from '@vibesdotdev/integrations-fireworks/ai/plugin';
21
+ import geminiAIPlugin from '@vibesdotdev/integrations-gemini/ai/plugin';
22
+ import grokAIPlugin from '@vibesdotdev/integrations-grok/ai/plugin';
23
+ import groqAIPlugin from '@vibesdotdev/integrations-groq/ai/plugin';
24
+ import huggingfaceAIPlugin from '@vibesdotdev/integrations-huggingface/ai/plugin';
25
+ import lmstudioAIPlugin from '@vibesdotdev/integrations-lmstudio/ai/plugin';
26
+ import metaAIPlugin from '@vibesdotdev/integrations-meta/ai/plugin';
27
+ import mistralAIPlugin from '@vibesdotdev/integrations-mistral/ai/plugin';
28
+ import mlxAIPlugin from '@vibesdotdev/integrations-mlx/ai/plugin';
29
+ import musicgenAIPlugin from '@vibesdotdev/integrations-musicgen/ai/plugin';
30
+ import ollamaAIPlugin from '@vibesdotdev/integrations-ollama/ai/plugin';
31
+ import omlxAIPlugin from '@vibesdotdev/integrations-omlx/ai/plugin';
32
+ import openAIAIPlugin from '@vibesdotdev/integrations-openai/ai/plugin';
33
+ import openAITranscriptionAIPlugin from '@vibesdotdev/integrations-openai/ai/transcription/plugin';
34
+ import openAITtsAIPlugin from '@vibesdotdev/integrations-openai/ai/tts/plugin';
35
+ import openrouterAIPlugin from '@vibesdotdev/integrations-openrouter/ai/plugin';
36
+ import replicateAIPlugin from '@vibesdotdev/integrations-replicate/ai/plugin';
37
+ import speecht5AIPlugin from '@vibesdotdev/integrations-speecht5/ai/plugin';
38
+ import togetherAIPlugin from '@vibesdotdev/integrations-together/ai/plugin';
39
+ import tortoiseAIPlugin from '@vibesdotdev/integrations-tortoise/ai/plugin';
40
+ import whisperCppAIPlugin from '@vibesdotdev/integrations-whisper-cpp/ai/plugin';
41
+ import whisperAIPlugin from '@vibesdotdev/integrations-whisper/ai/plugin';
42
+ import zaiAIPlugin from '@vibesdotdev/integrations-zai/ai/plugin';
43
+ const providerPlugins = [
44
+ anthropicAIPlugin,
45
+ audioldmAIPlugin,
46
+ automatic1111AIPlugin,
47
+ barkAIPlugin,
48
+ cloudflareAIPlugin,
49
+ civitaiAIPlugin,
50
+ cohereAIPlugin,
51
+ comfyuiAIPlugin,
52
+ coquiTtsAIPlugin,
53
+ customAIPlugin,
54
+ deepgramAIPlugin,
55
+ diffusersAIPlugin,
56
+ digitaloceanAIPlugin,
57
+ elevenlabsAIPlugin,
58
+ falAIPlugin,
59
+ fasterWhisperAIPlugin,
60
+ fireworksAIPlugin,
61
+ geminiAIPlugin,
62
+ grokAIPlugin,
63
+ groqAIPlugin,
64
+ huggingfaceAIPlugin,
65
+ lmstudioAIPlugin,
66
+ metaAIPlugin,
67
+ mistralAIPlugin,
68
+ mlxAIPlugin,
69
+ musicgenAIPlugin,
70
+ ollamaAIPlugin,
71
+ omlxAIPlugin,
72
+ openAITranscriptionAIPlugin,
73
+ openAITtsAIPlugin,
74
+ openAIAIPlugin,
75
+ openrouterAIPlugin,
76
+ replicateAIPlugin,
77
+ speecht5AIPlugin,
78
+ togetherAIPlugin,
79
+ tortoiseAIPlugin,
80
+ whisperCppAIPlugin,
81
+ whisperAIPlugin,
82
+ zaiAIPlugin
83
+ ];
84
+ /** Consumer AI composition. Provider packages arrive only as completed plugins. */
85
+ export const integrationsAIPlugin = createRuntimePlugin({
86
+ id: 'integrations-ai',
87
+ name: 'Vibes AI with integration providers',
88
+ description: 'Composes Framework AI with integration-owned provider plugins',
89
+ async onRegister(runtime) {
90
+ await runtime.registerPlugin(aiPlugin);
91
+ await runtime.registerPlugin(aiRouterPlugin);
92
+ for (const plugin of providerPlugins)
93
+ await runtime.registerPlugin(plugin);
94
+ }
95
+ });
96
+ export default integrationsAIPlugin;
97
+ //# sourceMappingURL=ai.plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai.plugin.js","sourceRoot":"","sources":["../../src/ai/ai.plugin.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Connector Base Plugin
3
+ *
4
+ * Registers the integration substrate extension kind.
5
+ * Individual provider packages (connector-aws, connector-azure, …) register
6
+ * concrete descriptors against these kinds.
7
+ */
8
+ export declare const basePlugin: import("@vibesdotdev/kernel").RuntimePlugin;
9
+ export default basePlugin;
10
+ //# sourceMappingURL=base.plugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.plugin.d.ts","sourceRoot":"","sources":["../../src/base/base.plugin.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,eAAO,MAAM,UAAU,6CAcrB,CAAC;AAEH,eAAe,UAAU,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Connector Base Plugin
3
+ *
4
+ * Registers the integration substrate extension kind.
5
+ * Individual provider packages (connector-aws, connector-azure, …) register
6
+ * concrete descriptors against these kinds.
7
+ */
8
+ import { createRuntimePlugin, createRuntimeKind } from '@vibesdotdev/kernel';
9
+ import { IntegrationSubstrateDescriptorSchema } from "./schemas.js";
10
+ export const basePlugin = createRuntimePlugin({
11
+ id: 'integrations/base',
12
+ name: 'Integrations Base',
13
+ description: 'Base substrate and provider kinds for platform integrations.',
14
+ dependencies: ['integrations'],
15
+ onRegister: async (runtime) => {
16
+ runtime.registerKind(createRuntimeKind({
17
+ id: 'integration/substrate',
18
+ descriptorSchema: IntegrationSubstrateDescriptorSchema,
19
+ }));
20
+ },
21
+ });
22
+ export default basePlugin;
23
+ //# sourceMappingURL=base.plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.plugin.js","sourceRoot":"","sources":["../../src/base/base.plugin.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7E,OAAO,EAAE,oCAAoC,EAAE,MAAM,cAAc,CAAC;AAEpE,MAAM,CAAC,MAAM,UAAU,GAAG,mBAAmB,CAAC;IAC7C,EAAE,EAAE,mBAAmB;IACvB,IAAI,EAAE,mBAAmB;IACzB,WAAW,EAAE,8DAA8D;IAC3E,YAAY,EAAE,CAAC,cAAc,CAAC;IAE9B,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QAC7B,OAAO,CAAC,YAAY,CACnB,iBAAiB,CAAC;YACjB,EAAE,EAAE,uBAAuB;YAC3B,gBAAgB,EAAE,oCAAoC;SACtD,CAAC,CACF,CAAC;IACH,CAAC;CACD,CAAC,CAAC;AAEH,eAAe,UAAU,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Connector Base
3
+ *
4
+ * Base contracts, schemas, and interfaces for platform connector packages.
5
+ * Owned by integrations/core as the base contract subpath.
6
+ *
7
+ * Does NOT contain provider-specific implementations.
8
+ * Use @vibesdotdev/integrations-aws for AWS sub-connectors,
9
+ * @vibesdotdev/integrations-azure for Azure, etc.
10
+ */
11
+ export { IntegrationSubstrateDescriptorSchema, IntegrationProviderDescriptorSchema, CredentialReferenceSchema, AwsCredentialsSchema, type IntegrationSubstrateDescriptor, type IntegrationProviderDescriptor, type CredentialReference, type AwsCredentials, } from './schemas.ts';
12
+ export { resolveCredentialReference, resolveAwsCredentials, resolveConfigValue, type ResolutionOptions, } from './resolver.ts';
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/base/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EACN,oCAAoC,EACpC,mCAAmC,EACnC,yBAAyB,EACzB,oBAAoB,EACpB,KAAK,8BAA8B,EACnC,KAAK,6BAA6B,EAClC,KAAK,mBAAmB,EACxB,KAAK,cAAc,GACnB,MAAM,cAAc,CAAC;AAGtB,OAAO,EACN,0BAA0B,EAC1B,qBAAqB,EACrB,kBAAkB,EAClB,KAAK,iBAAiB,GACtB,MAAM,eAAe,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Connector Base
3
+ *
4
+ * Base contracts, schemas, and interfaces for platform connector packages.
5
+ * Owned by integrations/core as the base contract subpath.
6
+ *
7
+ * Does NOT contain provider-specific implementations.
8
+ * Use @vibesdotdev/integrations-aws for AWS sub-connectors,
9
+ * @vibesdotdev/integrations-azure for Azure, etc.
10
+ */
11
+ // Descriptor schemas
12
+ export { IntegrationSubstrateDescriptorSchema, IntegrationProviderDescriptorSchema, CredentialReferenceSchema, AwsCredentialsSchema, } from "./schemas.js";
13
+ // Resolvers (credential resolution, config hydration)
14
+ export { resolveCredentialReference, resolveAwsCredentials, resolveConfigValue, } from "./resolver.js";
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/base/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,qBAAqB;AACrB,OAAO,EACN,oCAAoC,EACpC,mCAAmC,EACnC,yBAAyB,EACzB,oBAAoB,GAKpB,MAAM,cAAc,CAAC;AAEtB,sDAAsD;AACtD,OAAO,EACN,0BAA0B,EAC1B,qBAAqB,EACrB,kBAAkB,GAElB,MAAM,eAAe,CAAC"}
@@ -0,0 +1,13 @@
1
+ /** Credential and config resolution through the composed runtime. */
2
+ import type { CredentialReference } from '@vibesdotdev/kernel/credentials';
3
+ import { type AwsCredentials } from './schemas.ts';
4
+ import { type ResolutionOptions } from '../schemas/credential-resolution.ts';
5
+ export type { ResolutionOptions } from '../schemas/credential-resolution.ts';
6
+ export declare function resolveCredentialReference(_field: string, ref: CredentialReference, opts: ResolutionOptions): Promise<string>;
7
+ export declare function resolveAwsCredentials(creds: AwsCredentials, opts: ResolutionOptions): Promise<{
8
+ accessKeyId: string;
9
+ secretAccessKey: string;
10
+ sessionToken: string | undefined;
11
+ }>;
12
+ export declare function resolveConfigValue(value: string | CredentialReference, field: string, opts: ResolutionOptions): Promise<string>;
13
+ //# sourceMappingURL=resolver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../src/base/resolver.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAE3E,OAAO,EAAwB,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AACzE,OAAO,EAAwD,KAAK,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAGnI,YAAY,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAE7E,wBAAsB,0BAA0B,CAC/C,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,mBAAmB,EACxB,IAAI,EAAE,iBAAiB,GACrB,OAAO,CAAC,MAAM,CAAC,CAMjB;AAED,wBAAsB,qBAAqB,CAAC,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,iBAAiB;;;;GAWzF;AAED,wBAAsB,kBAAkB,CACvC,KAAK,EAAE,MAAM,GAAG,mBAAmB,EACnC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,iBAAiB,GACrB,OAAO,CAAC,MAAM,CAAC,CAMjB"}
@@ -0,0 +1,30 @@
1
+ import { CredentialReferenceSchema } from '@vibesdotdev/kernel/credentials';
2
+ import { AwsCredentialsSchema } from "./schemas.js";
3
+ import { ResolutionOptionsSchema, ResolvableConfigValueSchema } from "../schemas/credential-resolution.js";
4
+ import { IntegrationRequiredCredentialValueSchema, parseIntegrationBoundary } from "../schemas/boundary.js";
5
+ export async function resolveCredentialReference(_field, ref, opts) {
6
+ const reference = parseIntegrationBoundary(CredentialReferenceSchema, ref);
7
+ const options = parseIntegrationBoundary(ResolutionOptionsSchema, opts);
8
+ const result = await options.runtime.resolveCredential(reference);
9
+ if (!result.ok)
10
+ throw result.error;
11
+ return parseIntegrationBoundary(IntegrationRequiredCredentialValueSchema, result.value);
12
+ }
13
+ export async function resolveAwsCredentials(creds, opts) {
14
+ const credentials = parseIntegrationBoundary(AwsCredentialsSchema, creds);
15
+ parseIntegrationBoundary(ResolutionOptionsSchema, opts);
16
+ const accessKeyId = await resolveConfigValue(credentials.accessKeyId, 'accessKeyId', opts);
17
+ const secretAccessKey = await resolveConfigValue(credentials.secretAccessKey, 'secretAccessKey', opts);
18
+ const sessionToken = credentials.sessionToken === undefined
19
+ ? undefined
20
+ : await resolveConfigValue(credentials.sessionToken, 'sessionToken', opts);
21
+ return { accessKeyId, secretAccessKey, sessionToken };
22
+ }
23
+ export async function resolveConfigValue(value, field, opts) {
24
+ const parsed = parseIntegrationBoundary(ResolvableConfigValueSchema, value);
25
+ parseIntegrationBoundary(ResolutionOptionsSchema, opts);
26
+ if (parsed.kind === 'inline')
27
+ return parsed.value;
28
+ return resolveCredentialReference(field, parsed.reference, opts);
29
+ }
30
+ //# sourceMappingURL=resolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../src/base/resolver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAuB,MAAM,cAAc,CAAC;AACzE,OAAO,EAAE,uBAAuB,EAAE,2BAA2B,EAA0B,MAAM,qCAAqC,CAAC;AACnI,OAAO,EAAE,wCAAwC,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAI5G,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC/C,MAAc,EACd,GAAwB,EACxB,IAAuB;IAEvB,MAAM,SAAS,GAAG,wBAAwB,CAAC,yBAAyB,EAAE,GAAG,CAAC,CAAC;IAC3E,MAAM,OAAO,GAAG,wBAAwB,CAAC,uBAAuB,EAAE,IAAI,CAAC,CAAC;IACxE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAClE,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,MAAM,MAAM,CAAC,KAAK,CAAC;IACnC,OAAO,wBAAwB,CAAC,wCAAwC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;AACzF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,KAAqB,EAAE,IAAuB;IACzF,MAAM,WAAW,GAAG,wBAAwB,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;IAC1E,wBAAwB,CAAC,uBAAuB,EAAE,IAAI,CAAC,CAAC;IAExD,MAAM,WAAW,GAAG,MAAM,kBAAkB,CAAC,WAAW,CAAC,WAAW,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;IAC3F,MAAM,eAAe,GAAG,MAAM,kBAAkB,CAAC,WAAW,CAAC,eAAe,EAAE,iBAAiB,EAAE,IAAI,CAAC,CAAC;IACvG,MAAM,YAAY,GAAG,WAAW,CAAC,YAAY,KAAK,SAAS;QAC1D,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,MAAM,kBAAkB,CAAC,WAAW,CAAC,YAAY,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAE5E,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,YAAY,EAAE,CAAC;AACvD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACvC,KAAmC,EACnC,KAAa,EACb,IAAuB;IAEvB,MAAM,MAAM,GAAG,wBAAwB,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;IAC5E,wBAAwB,CAAC,uBAAuB,EAAE,IAAI,CAAC,CAAC;IAExD,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC,KAAK,CAAC;IAClD,OAAO,0BAA0B,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AAClE,CAAC"}
@@ -0,0 +1,167 @@
1
+ /**
2
+ * Integrations Base Schemas
3
+ *
4
+ * Owned by integrations/core as the base schema subpath.
5
+ * Descriptor schemas for integration substrate and provider variants.
6
+ */
7
+ import * as z from 'zod/v4';
8
+ export { CredentialReferenceSchema, type CredentialReference } from '@vibesdotdev/kernel/credentials';
9
+ /**
10
+ * AWS-style credentials block (used by S3, SecretsManager, etc).
11
+ */
12
+ export declare const AwsCredentialsSchema: z.ZodObject<{
13
+ accessKeyId: z.ZodUnion<readonly [z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
14
+ source: z.ZodLiteral<"secret">;
15
+ key: z.ZodString;
16
+ store: z.ZodOptional<z.ZodString>;
17
+ operation: z.ZodOptional<z.ZodCustom<object, object>>;
18
+ }, z.core.$strict>], "source">]>;
19
+ secretAccessKey: z.ZodUnion<readonly [z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
20
+ source: z.ZodLiteral<"secret">;
21
+ key: z.ZodString;
22
+ store: z.ZodOptional<z.ZodString>;
23
+ operation: z.ZodOptional<z.ZodCustom<object, object>>;
24
+ }, z.core.$strict>], "source">]>;
25
+ sessionToken: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
26
+ source: z.ZodLiteral<"secret">;
27
+ key: z.ZodString;
28
+ store: z.ZodOptional<z.ZodString>;
29
+ operation: z.ZodOptional<z.ZodCustom<object, object>>;
30
+ }, z.core.$strict>], "source">]>>;
31
+ }, z.core.$strip>;
32
+ export type AwsCredentials = z.infer<typeof AwsCredentialsSchema>;
33
+ /**
34
+ * Base descriptor schema for integration/substrate runtime kind.
35
+ *
36
+ * A substrate is a platform-level integration that provides one or more
37
+ * sub-connectors (e.g., S3, SecretsManager, CloudFront).
38
+ */
39
+ export declare const IntegrationSubstrateDescriptorSchema: z.ZodObject<{
40
+ id: z.ZodString;
41
+ kind: z.ZodLiteral<"integration/substrate">;
42
+ name: z.ZodOptional<z.ZodString>;
43
+ description: z.ZodOptional<z.ZodString>;
44
+ provider: z.ZodString;
45
+ subConnectors: z.ZodOptional<z.ZodArray<z.ZodString>>;
46
+ hardware: z.ZodOptional<z.ZodArray<z.ZodEnum<{
47
+ consumer: "consumer";
48
+ cloud: "cloud";
49
+ server: "server";
50
+ }>>>;
51
+ enabled: z.ZodDefault<z.ZodBoolean>;
52
+ }, z.core.$strip>;
53
+ export type IntegrationSubstrateDescriptor = z.infer<typeof IntegrationSubstrateDescriptorSchema>;
54
+ /**
55
+ * Descriptor for a sub-connector within a substrate.
56
+ * Sub-connectors are the actual service clients (e.g., S3, SecretsManager).
57
+ */
58
+ export declare const IntegrationProviderDescriptorSchema: z.ZodObject<{
59
+ id: z.ZodString;
60
+ name: z.ZodOptional<z.ZodString>;
61
+ description: z.ZodOptional<z.ZodString>;
62
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
63
+ hardware: z.ZodOptional<z.ZodArray<z.ZodString>>;
64
+ enabled: z.ZodOptional<z.ZodBoolean>;
65
+ capabilityId: z.ZodOptional<z.ZodString>;
66
+ retention: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
67
+ maxAgeDays: z.ZodOptional<z.ZodNumber>;
68
+ maxEntries: z.ZodOptional<z.ZodNumber>;
69
+ maxBytes: z.ZodOptional<z.ZodNumber>;
70
+ cascadeFrom: z.ZodOptional<z.ZodString>;
71
+ ageField: z.ZodOptional<z.ZodString>;
72
+ reason: z.ZodString;
73
+ enforcedBy: z.ZodOptional<z.ZodString>;
74
+ }, z.core.$strip>]>>;
75
+ kind: z.ZodLiteral<"integration/provider">;
76
+ requiredContext: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
77
+ optionalContext: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
78
+ provider: z.ZodDefault<z.ZodString>;
79
+ category: z.ZodDefault<z.ZodEnum<{
80
+ webhook: "webhook";
81
+ accounting: "accounting";
82
+ vcs: "vcs";
83
+ "issue-tracker": "issue-tracker";
84
+ productivity: "productivity";
85
+ ocr: "ocr";
86
+ email: "email";
87
+ messaging: "messaging";
88
+ sms: "sms";
89
+ push: "push";
90
+ storage: "storage";
91
+ analytics: "analytics";
92
+ observability: "observability";
93
+ crm: "crm";
94
+ calendar: "calendar";
95
+ other: "other";
96
+ }>>;
97
+ priority: z.ZodDefault<z.ZodNumber>;
98
+ baseUrl: z.ZodOptional<z.ZodURL>;
99
+ config: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodType<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue, z.core.$ZodTypeInternals<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue>>>>;
100
+ protectedConfigKeys: z.ZodDefault<z.ZodArray<z.ZodString>>;
101
+ configurationSource: z.ZodOptional<z.ZodEnum<{
102
+ account: "account";
103
+ host: "host";
104
+ }>>;
105
+ configSettingKey: z.ZodOptional<z.ZodString>;
106
+ credentials: z.ZodDefault<z.ZodArray<z.ZodObject<{
107
+ key: z.ZodString;
108
+ source: z.ZodEnum<{
109
+ secret: "secret";
110
+ setting: "setting";
111
+ }>;
112
+ reference: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
113
+ source: z.ZodLiteral<"secret">;
114
+ key: z.ZodString;
115
+ store: z.ZodOptional<z.ZodString>;
116
+ operation: z.ZodOptional<z.ZodCustom<object, object>>;
117
+ }, z.core.$strict>], "source">>;
118
+ providerType: z.ZodOptional<z.ZodString>;
119
+ scope: z.ZodOptional<z.ZodEnum<{
120
+ user: "user";
121
+ platform: "platform";
122
+ project: "project";
123
+ org: "org";
124
+ }>>;
125
+ scopeId: z.ZodOptional<z.ZodString>;
126
+ settingKey: z.ZodOptional<z.ZodString>;
127
+ required: z.ZodDefault<z.ZodBoolean>;
128
+ }, z.core.$strip>>>;
129
+ oauth: z.ZodOptional<z.ZodObject<{
130
+ authorizationEndpoint: z.ZodURL;
131
+ tokenEndpoint: z.ZodURL;
132
+ scopes: z.ZodDefault<z.ZodArray<z.ZodString>>;
133
+ authorizationParams: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
134
+ configFromCallback: z.ZodDefault<z.ZodArray<z.ZodString>>;
135
+ clientAuthentication: z.ZodDefault<z.ZodEnum<{
136
+ form: "form";
137
+ basic: "basic";
138
+ }>>;
139
+ bodyEncoding: z.ZodDefault<z.ZodEnum<{
140
+ json: "json";
141
+ form: "form";
142
+ }>>;
143
+ headers: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
144
+ scopeIdCallbackParam: z.ZodOptional<z.ZodString>;
145
+ }, z.core.$strip>>;
146
+ operations: z.ZodDefault<z.ZodArray<z.ZodObject<{
147
+ id: z.ZodString;
148
+ name: z.ZodString;
149
+ description: z.ZodOptional<z.ZodString>;
150
+ requiresOrg: z.ZodDefault<z.ZodBoolean>;
151
+ }, z.core.$strip>>>;
152
+ connection: z.ZodOptional<z.ZodObject<{
153
+ authMode: z.ZodOptional<z.ZodEnum<{
154
+ oauth: "oauth";
155
+ delegated: "delegated";
156
+ "system-config": "system-config";
157
+ webhook: "webhook";
158
+ }>>;
159
+ connectable: z.ZodDefault<z.ZodBoolean>;
160
+ checkable: z.ZodDefault<z.ZodBoolean>;
161
+ requiresProviderAdmin: z.ZodDefault<z.ZodBoolean>;
162
+ }, z.core.$strip>>;
163
+ substrateId: z.ZodString;
164
+ service: z.ZodString;
165
+ }, z.core.$strip>;
166
+ export type IntegrationProviderDescriptor = z.infer<typeof IntegrationProviderDescriptorSchema>;
167
+ //# sourceMappingURL=schemas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/base/schemas.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAM5B,OAAO,EAAE,yBAAyB,EAAE,KAAK,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAEtG;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;iBAI/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;;;;GAKG;AACH,eAAO,MAAM,oCAAoC;;;;;;;;;;;;;iBAY/C,CAAC;AAEH,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAC;AAElG;;;GAGG;AACH,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAK9C,CAAC;AAEH,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mCAAmC,CAAC,CAAC"}