@vibesdotdev/integrations-together 0.0.0-stage → 1.0.0-rc.4

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 (54) hide show
  1. package/LICENSE +126 -0
  2. package/README.md +16 -2
  3. package/dist/ai/index.d.ts +3 -0
  4. package/dist/ai/index.d.ts.map +1 -0
  5. package/dist/ai/index.js +3 -0
  6. package/dist/ai/index.js.map +1 -0
  7. package/dist/ai/metadata/assets/assets/logos/providers/together-wordmark-dark.svg +30 -0
  8. package/dist/ai/metadata/assets/assets/logos/providers/together-wordmark.svg +22 -0
  9. package/dist/ai/metadata/assets/assets/logos/providers/together.svg +21 -0
  10. package/dist/ai/provider.plugin.d.ts +6 -0
  11. package/dist/ai/provider.plugin.d.ts.map +1 -0
  12. package/dist/ai/provider.plugin.js +103 -0
  13. package/dist/ai/provider.plugin.js.map +1 -0
  14. package/dist/ai/providers/cloud/api/together/config/config.together.descriptor.d.ts +4206 -0
  15. package/dist/ai/providers/cloud/api/together/config/config.together.descriptor.d.ts.map +1 -0
  16. package/dist/ai/providers/cloud/api/together/config/config.together.descriptor.js +43 -0
  17. package/dist/ai/providers/cloud/api/together/config/config.together.descriptor.js.map +1 -0
  18. package/dist/ai/providers/cloud/api/together/config/schemas/index.d.ts +13 -0
  19. package/dist/ai/providers/cloud/api/together/config/schemas/index.d.ts.map +1 -0
  20. package/dist/ai/providers/cloud/api/together/config/schemas/index.js +9 -0
  21. package/dist/ai/providers/cloud/api/together/config/schemas/index.js.map +1 -0
  22. package/dist/ai/providers/cloud/api/together/index.d.ts +3 -0
  23. package/dist/ai/providers/cloud/api/together/index.d.ts.map +1 -0
  24. package/dist/ai/providers/cloud/api/together/index.js +3 -0
  25. package/dist/ai/providers/cloud/api/together/index.js.map +1 -0
  26. package/dist/ai/providers/cloud/api/together/provider.together.descriptor.d.ts +183 -0
  27. package/dist/ai/providers/cloud/api/together/provider.together.descriptor.d.ts.map +1 -0
  28. package/dist/ai/providers/cloud/api/together/provider.together.descriptor.js +45 -0
  29. package/dist/ai/providers/cloud/api/together/provider.together.descriptor.js.map +1 -0
  30. package/dist/ai/providers/together/detection/index.d.ts +2 -0
  31. package/dist/ai/providers/together/detection/index.d.ts.map +1 -0
  32. package/dist/ai/providers/together/detection/index.js +2 -0
  33. package/dist/ai/providers/together/detection/index.js.map +1 -0
  34. package/dist/ai/providers/together/detection/system.d.ts +4 -0
  35. package/dist/ai/providers/together/detection/system.d.ts.map +1 -0
  36. package/dist/ai/providers/together/detection/system.js +16 -0
  37. package/dist/ai/providers/together/detection/system.js.map +1 -0
  38. package/dist/ai/providers/together/index.d.ts +4 -0
  39. package/dist/ai/providers/together/index.d.ts.map +1 -0
  40. package/dist/ai/providers/together/index.js +4 -0
  41. package/dist/ai/providers/together/index.js.map +1 -0
  42. package/dist/ai/providers/together/recommendations.d.ts +23 -0
  43. package/dist/ai/providers/together/recommendations.d.ts.map +1 -0
  44. package/dist/ai/providers/together/recommendations.js +29 -0
  45. package/dist/ai/providers/together/recommendations.js.map +1 -0
  46. package/dist/ai/providers/together/together.provider.impl.d.ts +18 -0
  47. package/dist/ai/providers/together/together.provider.impl.d.ts.map +1 -0
  48. package/dist/ai/providers/together/together.provider.impl.js +111 -0
  49. package/dist/ai/providers/together/together.provider.impl.js.map +1 -0
  50. package/dist/index.d.ts +2 -0
  51. package/dist/index.d.ts.map +1 -0
  52. package/dist/index.js +2 -0
  53. package/dist/index.js.map +1 -0
  54. package/package.json +98 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.together.descriptor.d.ts","sourceRoot":"","sources":["../../../../../../../src/ai/providers/cloud/api/together/config/config.together.descriptor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ import { createProviderConfigDescriptor } from '@vibesdotdev/ai/providers-runtime/core/config-descriptor';
2
+ import togetherProviderDescriptor from "../provider.together.descriptor.js";
3
+ import { togetherConnectionSchema } from "./schemas/index.js";
4
+ export default createProviderConfigDescriptor({
5
+ provider: togetherProviderDescriptor,
6
+ schema: togetherConnectionSchema,
7
+ optionLabel: 'Together AI',
8
+ optionDescription: 'Together AI inference API',
9
+ optionIcon: '🤝',
10
+ fields: {
11
+ 'configuration.apiKey': {
12
+ ui: {
13
+ label: 'API Key',
14
+ description: 'Your Together AI API key',
15
+ placeholder: 'together-...',
16
+ component: 'secret',
17
+ group: 'connection',
18
+ order: 10
19
+ }
20
+ },
21
+ 'configuration.baseUrl': {
22
+ ui: {
23
+ label: 'Base URL',
24
+ description: 'API endpoint for custom deployments',
25
+ placeholder: 'https://api.together.xyz/v1',
26
+ component: 'input',
27
+ group: 'connection',
28
+ order: 11
29
+ }
30
+ },
31
+ 'configuration.timeout': {
32
+ ui: {
33
+ label: 'Timeout',
34
+ description: 'Request timeout in milliseconds',
35
+ placeholder: '60000',
36
+ component: 'number',
37
+ group: 'connection',
38
+ order: 12
39
+ }
40
+ }
41
+ }
42
+ });
43
+ //# sourceMappingURL=config.together.descriptor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.together.descriptor.js","sourceRoot":"","sources":["../../../../../../../src/ai/providers/cloud/api/together/config/config.together.descriptor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,MAAM,0DAA0D,CAAC;AAC1G,OAAO,0BAA0B,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,eAAe,8BAA8B,CAAC;IAC7C,QAAQ,EAAE,0BAA0B;IACpC,MAAM,EAAE,wBAAwB;IAChC,WAAW,EAAE,aAAa;IAC1B,iBAAiB,EAAE,2BAA2B;IAC9C,UAAU,EAAE,IAAI;IAChB,MAAM,EAAE;QACP,sBAAsB,EAAE;YACvB,EAAE,EAAE;gBACH,KAAK,EAAE,SAAS;gBAChB,WAAW,EAAE,0BAA0B;gBACvC,WAAW,EAAE,cAAc;gBAC3B,SAAS,EAAE,QAAQ;gBACnB,KAAK,EAAE,YAAY;gBACnB,KAAK,EAAE,EAAE;aACT;SACD;QACD,uBAAuB,EAAE;YACxB,EAAE,EAAE;gBACH,KAAK,EAAE,UAAU;gBACjB,WAAW,EAAE,qCAAqC;gBAClD,WAAW,EAAE,6BAA6B;gBAC1C,SAAS,EAAE,OAAO;gBAClB,KAAK,EAAE,YAAY;gBACnB,KAAK,EAAE,EAAE;aACT;SACD;QACD,uBAAuB,EAAE;YACxB,EAAE,EAAE;gBACH,KAAK,EAAE,SAAS;gBAChB,WAAW,EAAE,iCAAiC;gBAC9C,WAAW,EAAE,OAAO;gBACpB,SAAS,EAAE,QAAQ;gBACnB,KAAK,EAAE,YAAY;gBACnB,KAAK,EAAE,EAAE;aACT;SACD;KACD;CACD,CAAC,CAAC"}
@@ -0,0 +1,13 @@
1
+ import * as z from 'zod/v4';
2
+ export declare const togetherConnectionSchema: z.ZodObject<{
3
+ authMethod: z.ZodDefault<z.ZodLiteral<"api-key">>;
4
+ apiKey: z.ZodObject<{
5
+ source: z.ZodLiteral<"secret">;
6
+ key: z.ZodString;
7
+ store: z.ZodOptional<z.ZodString>;
8
+ }, z.core.$strict>;
9
+ baseUrl: z.ZodDefault<z.ZodString>;
10
+ timeout: z.ZodDefault<z.ZodNumber>;
11
+ }, z.core.$strip>;
12
+ export type TogetherConnection = z.infer<typeof togetherConnectionSchema>;
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ai/providers/cloud/api/together/config/schemas/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAG5B,eAAO,MAAM,wBAAwB;;;;;;;;;iBAKnC,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ import * as z from 'zod/v4';
2
+ import { SecretReferenceSchema } from '@vibesdotdev/ai/providers-runtime';
3
+ export const togetherConnectionSchema = z.object({
4
+ authMethod: z.literal('api-key').default('api-key'),
5
+ apiKey: SecretReferenceSchema,
6
+ baseUrl: z.string().url().default('https://api.together.xyz/v1'),
7
+ timeout: z.number().int().positive().default(60000)
8
+ });
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../src/ai/providers/cloud/api/together/config/schemas/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAE1E,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IACnD,MAAM,EAAE,qBAAqB;IAC7B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,6BAA6B,CAAC;IAChE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;CACnD,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { default as togetherProviderDescriptor } from './provider.together.descriptor.ts';
2
+ export { default as togetherConfigDescriptor } from './config/config.together.descriptor.ts';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/ai/providers/cloud/api/together/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAC1F,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,wCAAwC,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { default as togetherProviderDescriptor } from "./provider.together.descriptor.js";
2
+ export { default as togetherConfigDescriptor } from "./config/config.together.descriptor.js";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/ai/providers/cloud/api/together/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAC1F,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,wCAAwC,CAAC"}
@@ -0,0 +1,183 @@
1
+ declare const togetherProviderDescriptor: {
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?: "none" | "api_key" | "bearer" | "oauth" | "basic" | undefined;
16
+ authMethods?: {
17
+ [x: string]: unknown;
18
+ id: string;
19
+ type: "none" | "api_key" | "bearer" | "oauth" | "basic";
20
+ label: string;
21
+ credentialFields: string[];
22
+ enabled: boolean;
23
+ description?: string | undefined;
24
+ tokenSource?: "none" | "runtime" | "credential" | "oauth-browser" | "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 togetherProviderDescriptor;
183
+ //# sourceMappingURL=provider.together.descriptor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider.together.descriptor.d.ts","sourceRoot":"","sources":["../../../../../../src/ai/providers/cloud/api/together/provider.together.descriptor.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0C9B,CAAC;AAEH,eAAe,0BAA0B,CAAC"}
@@ -0,0 +1,45 @@
1
+ import { createAIProviderTypeDescriptor } from '@vibesdotdev/ai/providers-runtime/core/type-descriptor';
2
+ import { togetherConnectionSchema } from "./config/schemas/index.js";
3
+ const togetherProviderDescriptor = createAIProviderTypeDescriptor({
4
+ id: 'together',
5
+ version: '0.1.0-rc.0',
6
+ name: 'Together AI',
7
+ description: 'Together AI provides fast inference for open-source models (Llama, Mixtral, FLUX, Stable Diffusion).',
8
+ connectionSchema: togetherConnectionSchema,
9
+ defaults: {
10
+ baseUrl: 'https://api.together.xyz/v1',
11
+ timeout: 60000
12
+ },
13
+ capabilities: {
14
+ modalities: ['text', 'image'],
15
+ authType: 'bearer',
16
+ streaming: true,
17
+ tools: true,
18
+ vision: false,
19
+ jsonMode: true,
20
+ functionCalling: true
21
+ },
22
+ category: 'cloud',
23
+ hardware: ['consumer', 'cloud'],
24
+ icon: '🤝',
25
+ docsUrl: 'https://docs.together.ai',
26
+ priority: 100,
27
+ enabled: true,
28
+ tags: ['cloud', 'open-source', 'api', 'fast-inference'],
29
+ variants: [
30
+ {
31
+ id: 'chat',
32
+ label: 'Together OpenAI-compatible',
33
+ description: 'Text generation via Together /v1/chat/completions.',
34
+ transport: 'fetch',
35
+ specId: 'openai-chat',
36
+ endpoint: '{baseUrl}',
37
+ auth: { kind: 'bearer', token: { source: 'secret', key: 'TOGETHER_API_KEY' } },
38
+ modelIdRule: { kind: 'strip-prefix' },
39
+ priority: 10,
40
+ enabled: true
41
+ }
42
+ ]
43
+ });
44
+ export default togetherProviderDescriptor;
45
+ //# sourceMappingURL=provider.together.descriptor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider.together.descriptor.js","sourceRoot":"","sources":["../../../../../../src/ai/providers/cloud/api/together/provider.together.descriptor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,MAAM,wDAAwD,CAAC;AACxG,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAErE,MAAM,0BAA0B,GAAG,8BAA8B,CAAC;IACjE,EAAE,EAAE,UAAU;IACd,OAAO,EAAE,YAAY;IACrB,IAAI,EAAE,aAAa;IACnB,WAAW,EACV,sGAAsG;IACvG,gBAAgB,EAAE,wBAAwB;IAC1C,QAAQ,EAAE;QACT,OAAO,EAAE,6BAA6B;QACtC,OAAO,EAAE,KAAK;KACd;IACD,YAAY,EAAE;QACb,UAAU,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;QAC7B,QAAQ,EAAE,QAAQ;QAClB,SAAS,EAAE,IAAI;QACf,KAAK,EAAE,IAAI;QACX,MAAM,EAAE,KAAK;QACb,QAAQ,EAAE,IAAI;QACd,eAAe,EAAE,IAAI;KACrB;IACD,QAAQ,EAAE,OAAO;IACjB,QAAQ,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC;IAC/B,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,0BAA0B;IACnC,QAAQ,EAAE,GAAG;IACb,OAAO,EAAE,IAAI;IACb,IAAI,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,gBAAgB,CAAC;IAEvD,QAAQ,EAAE;QACT;YACC,EAAE,EAAE,MAAM;YACV,KAAK,EAAE,4BAA4B;YACnC,WAAW,EAAE,oDAAoD;YACjE,SAAS,EAAE,OAAO;YAClB,MAAM,EAAE,aAAa;YACrB,QAAQ,EAAE,WAAW;YACrB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,kBAAkB,EAAE,EAAE;YAC9E,WAAW,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE;YACrC,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,IAAI;SACb;KACD;CACD,CAAC,CAAC;AAEH,eAAe,0BAA0B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { detectTogetherSystem } from './system.ts';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/ai/providers/together/detection/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { detectTogetherSystem } from "./system.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/ai/providers/together/detection/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { RuntimeRef } from '@vibesdotdev/kernel';
2
+ import type { DetectedProvider } from '@vibesdotdev/ai/providers-runtime/client/types';
3
+ export declare function detectTogetherSystem(runtime: RuntimeRef): Promise<DetectedProvider | null>;
4
+ //# sourceMappingURL=system.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system.d.ts","sourceRoot":"","sources":["../../../../../src/ai/providers/together/detection/system.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gDAAgD,CAAC;AAEvF,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAahG"}
@@ -0,0 +1,16 @@
1
+ export async function detectTogetherSystem(runtime) {
2
+ const credential = await runtime.resolveCredential({ source: 'secret', key: 'TOGETHER_API_KEY' });
3
+ if (!credential.ok) {
4
+ if (credential.error.reason === 'credential-not-set')
5
+ return null;
6
+ throw credential.error;
7
+ }
8
+ if (!credential.value.trim())
9
+ return null;
10
+ return {
11
+ providerType: 'together', name: 'Together AI',
12
+ description: 'Credential reference available from TOGETHER_API_KEY', status: 'available',
13
+ configuration: { apiKey: { source: 'secret', key: 'TOGETHER_API_KEY' }, baseUrl: 'https://api.together.xyz/v1' }
14
+ };
15
+ }
16
+ //# sourceMappingURL=system.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system.js","sourceRoot":"","sources":["../../../../../src/ai/providers/together/detection/system.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,OAAmB;IAC7D,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,iBAAiB,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC;IAClG,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;QACpB,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,KAAK,oBAAoB;YAAE,OAAO,IAAI,CAAC;QAClE,MAAM,UAAU,CAAC,KAAK,CAAC;IACxB,CAAC;IACD,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE;QAAE,OAAO,IAAI,CAAC;IAE1C,OAAO;QACN,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,aAAa;QAC7C,WAAW,EAAE,sDAAsD,EAAE,MAAM,EAAE,WAAW;QACxF,aAAa,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,kBAAkB,EAAE,EAAE,OAAO,EAAE,6BAA6B,EAAE;KAChH,CAAC;AACH,CAAC"}
@@ -0,0 +1,4 @@
1
+ export { TogetherProviderType } from './together.provider.impl.ts';
2
+ export { detectTogetherSystem } from './detection/system.ts';
3
+ export { TogetherRecommendation } from './recommendations.ts';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ai/providers/together/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,4 @@
1
+ export { TogetherProviderType } from "./together.provider.impl.js";
2
+ export { detectTogetherSystem } from "./detection/system.js";
3
+ export { TogetherRecommendation } from "./recommendations.js";
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ai/providers/together/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { ProviderRecommendation, type ModelAdapter } from '@vibesdotdev/ai/recommendations/base';
2
+ import type { ModelRecommendation, RecommendationContext, SetupMethod, SetupStep, UseCase } from '@vibesdotdev/ai/recommendations/schemas';
3
+ export declare class TogetherRecommendation extends ProviderRecommendation {
4
+ readonly providerType = "together";
5
+ readonly displayName = "Together AI";
6
+ getUseCaseScore(useCase: UseCase): number;
7
+ getStageScore(stage: RecommendationContext['stage']): number;
8
+ getRequiredEnvironmentVariables(): string[];
9
+ getReason(useCase: UseCase): string;
10
+ getStrengths(): string[];
11
+ getWeaknesses(context: RecommendationContext): string[];
12
+ getSupportedSetupMethods(): SetupMethod[];
13
+ getSetupSteps(method: SetupMethod): Promise<SetupStep[]>;
14
+ recommendModels(_adapter: ModelAdapter | null, context: RecommendationContext): Promise<ModelRecommendation[]>;
15
+ getExecutionContext(): {
16
+ recommendModels: "server";
17
+ getSetupSteps: "both";
18
+ };
19
+ supportsOAuth(): boolean;
20
+ supportsLocal(): boolean;
21
+ requiresGPU(): boolean;
22
+ }
23
+ //# sourceMappingURL=recommendations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recommendations.d.ts","sourceRoot":"","sources":["../../../../src/ai/providers/together/recommendations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,KAAK,YAAY,EAAE,MAAM,sCAAsC,CAAC;AACjG,OAAO,KAAK,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,yCAAyC,CAAC;AAY3I,qBAAa,sBAAuB,SAAQ,sBAAsB;IACjE,QAAQ,CAAC,YAAY,cAAc;IAAC,QAAQ,CAAC,WAAW,iBAAiB;IACzE,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM;IACzC,aAAa,CAAC,KAAK,EAAE,qBAAqB,CAAC,OAAO,CAAC,GAAG,MAAM;IAC5D,+BAA+B,IAAI,MAAM,EAAE;IAC3C,SAAS,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM;IACnC,YAAY,IAAI,MAAM,EAAE;IACxB,aAAa,CAAC,OAAO,EAAE,qBAAqB,GAAG,MAAM,EAAE;IACvD,wBAAwB,IAAI,WAAW,EAAE;IACnC,aAAa,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IACxD,eAAe,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI,EAAE,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;IACpH,mBAAmB;;;;IACnB,aAAa,IAAI,OAAO;IAAmB,aAAa,IAAI,OAAO;IAAmB,WAAW,IAAI,OAAO;CAC5G"}
@@ -0,0 +1,29 @@
1
+ import { ProviderRecommendation } from '@vibesdotdev/ai/recommendations/base';
2
+ const USE_CASE_SCORES = {
3
+ chat: 45,
4
+ development: 47,
5
+ research: 43,
6
+ images: 20,
7
+ video: 0,
8
+ audio: 0,
9
+ organization: 40
10
+ };
11
+ export class TogetherRecommendation extends ProviderRecommendation {
12
+ providerType = 'together';
13
+ displayName = 'Together AI';
14
+ getUseCaseScore(useCase) { return USE_CASE_SCORES[useCase]; }
15
+ getStageScore(stage) { return stage === 'production' ? 15 : 0; }
16
+ getRequiredEnvironmentVariables() { return ['TOGETHER_API_KEY']; }
17
+ getReason(useCase) { return useCase === 'development' ? 'Fast inference for open-source models' : 'Open-source LLMs and image models with state-of-the-art performance'; }
18
+ getStrengths() { return ['Fast inference', 'Open-source model variety', 'OpenAI-compatible API']; }
19
+ getWeaknesses(context) { return context.requiresLocal ? ['No local inference deployment'] : []; }
20
+ getSupportedSetupMethods() { return ['api_key', 'env_var']; }
21
+ async getSetupSteps(method) { if (method === 'api_key')
22
+ return [{ step: 'Store Together AI API key', description: 'Create and store a Together AI key through the Vibes credential boundary.', action: 'https://api.together.xyz/' }]; return [{ step: 'Bind environment credential', description: 'Bind TOGETHER_API_KEY through the runtime environment.' }]; }
23
+ async recommendModels(_adapter, context) { return [{ modelId: 'meta-llama/Llama-3.3-70B-Instruct-Turbo', modelName: 'Llama 3.3 70B Instruct Turbo', score: context.useCase === 'development' ? 92 : 88, reason: 'High-performance open-source LLM via Together AI', contextWindow: 128_000, capabilities: ['chat', 'vision', 'tools'], isAvailable: true, requiresUpgrade: false, useCaseFit: context.useCase === 'development' ? 92 : 88 }]; }
24
+ getExecutionContext() { return { recommendModels: 'server', getSetupSteps: 'both' }; }
25
+ supportsOAuth() { return false; }
26
+ supportsLocal() { return false; }
27
+ requiresGPU() { return false; }
28
+ }
29
+ //# sourceMappingURL=recommendations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recommendations.js","sourceRoot":"","sources":["../../../../src/ai/providers/together/recommendations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAqB,MAAM,sCAAsC,CAAC;AAGjG,MAAM,eAAe,GAAG;IACvB,IAAI,EAAE,EAAE;IACR,WAAW,EAAE,EAAE;IACf,QAAQ,EAAE,EAAE;IACZ,MAAM,EAAE,EAAE;IACV,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;IACR,YAAY,EAAE,EAAE;CACkB,CAAC;AAEpC,MAAM,OAAO,sBAAuB,SAAQ,sBAAsB;IACxD,YAAY,GAAG,UAAU,CAAC;IAAU,WAAW,GAAG,aAAa,CAAC;IACzE,eAAe,CAAC,OAAgB,IAAY,OAAO,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC9E,aAAa,CAAC,KAAqC,IAAY,OAAO,KAAK,KAAK,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxG,+BAA+B,KAAe,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAC5E,SAAS,CAAC,OAAgB,IAAY,OAAO,OAAO,KAAK,aAAa,CAAC,CAAC,CAAC,uCAAuC,CAAC,CAAC,CAAC,qEAAqE,CAAC,CAAC,CAAC;IAC3L,YAAY,KAAe,OAAO,CAAC,gBAAgB,EAAE,2BAA2B,EAAE,uBAAuB,CAAC,CAAC,CAAC,CAAC;IAC7G,aAAa,CAAC,OAA8B,IAAc,OAAO,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAClI,wBAAwB,KAAoB,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;IAC5E,KAAK,CAAC,aAAa,CAAC,MAAmB,IAA0B,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,CAAC,EAAE,IAAI,EAAE,2BAA2B,EAAE,WAAW,EAAE,2EAA2E,EAAE,MAAM,EAAE,2BAA2B,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,6BAA6B,EAAE,WAAW,EAAE,wDAAwD,EAAE,CAAC,CAAC,CAAC,CAAC;IACpY,KAAK,CAAC,eAAe,CAAC,QAA6B,EAAE,OAA8B,IAAoC,OAAO,CAAC,EAAE,OAAO,EAAE,yCAAyC,EAAE,SAAS,EAAE,8BAA8B,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,KAAK,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,kDAAkD,EAAE,aAAa,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,OAAO,KAAK,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3f,mBAAmB,KAAK,OAAO,EAAE,eAAe,EAAE,QAAiB,EAAE,aAAa,EAAE,MAAe,EAAE,CAAC,CAAC,CAAC;IACxG,aAAa,KAAc,OAAO,KAAK,CAAC,CAAC,CAAC;IAAC,aAAa,KAAc,OAAO,KAAK,CAAC,CAAC,CAAC;IAAC,WAAW,KAAc,OAAO,KAAK,CAAC,CAAC,CAAC;CAC9H"}
@@ -0,0 +1,18 @@
1
+ import type { ProviderOperationOptions, AIProviderTypeContext, AIProviderTypeInterface, ConnectionValidationResult, DetectedProviderInstance, ModelRecommendation, ProviderGenerateOptions, ProviderGenerateResult, ProviderHealthCheckResult } from '@vibesdotdev/ai/interfaces/provider-type';
2
+ import type { GenerationRequest } from '@vibesdotdev/ai/interfaces/adapter';
3
+ import type { AIModelDescriptor, Modality } from '@vibesdotdev/ai/models/schemas';
4
+ import type { AIProviderDescriptor } from '@vibesdotdev/ai/providers-runtime/schemas/provider-descriptor';
5
+ import type { AIProviderTypeDescriptor } from '@vibesdotdev/ai/providers-runtime/schemas/type-descriptor';
6
+ export declare class TogetherProviderType implements AIProviderTypeInterface {
7
+ readonly descriptor: AIProviderTypeDescriptor;
8
+ private readonly context;
9
+ constructor(descriptor: AIProviderTypeDescriptor, context: AIProviderTypeContext);
10
+ generate<T extends Modality>(provider: AIProviderDescriptor, model: AIModelDescriptor, request: GenerationRequest<T>, options?: ProviderGenerateOptions): Promise<ProviderGenerateResult<T>>;
11
+ detectInstalled(): Promise<DetectedProviderInstance[]>;
12
+ recommendModels(): Promise<ModelRecommendation[]>;
13
+ private resolveCredential;
14
+ checkHealth(config: Parameters<AIProviderTypeInterface['checkHealth']>[0], options?: ProviderOperationOptions): Promise<ProviderHealthCheckResult>;
15
+ validateConnection(config: Parameters<AIProviderTypeInterface['validateConnection']>[0]): Promise<ConnectionValidationResult>;
16
+ dispose(): Promise<void>;
17
+ }
18
+ //# sourceMappingURL=together.provider.impl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"together.provider.impl.d.ts","sourceRoot":"","sources":["../../../../src/ai/providers/together/together.provider.impl.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACX,wBAAwB,EACxB,qBAAqB,EACrB,uBAAuB,EACvB,0BAA0B,EAC1B,wBAAwB,EACxB,mBAAmB,EACnB,uBAAuB,EACvB,sBAAsB,EACtB,yBAAyB,EACzB,MAAM,0CAA0C,CAAC;AAClD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAClF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+DAA+D,CAAC;AAC1G,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2DAA2D,CAAC;AAM1G,qBAAa,oBAAqB,YAAW,uBAAuB;IAElE,QAAQ,CAAC,UAAU,EAAE,wBAAwB;IAC7C,OAAO,CAAC,QAAQ,CAAC,OAAO;gBADf,UAAU,EAAE,wBAAwB,EAC5B,OAAO,EAAE,qBAAqB;IAEhD,QAAQ,CAAC,CAAC,SAAS,QAAQ,EAC1B,QAAQ,EAAE,oBAAoB,EAC9B,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAC7B,OAAO,CAAC,EAAE,uBAAuB,GAC/B,OAAO,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;IAuB/B,eAAe,IAAI,OAAO,CAAC,wBAAwB,EAAE,CAAC;IAItD,eAAe,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;YAazC,iBAAiB;IAQzB,WAAW,CAChB,MAAM,EAAE,UAAU,CAAC,uBAAuB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,EAC7D,OAAO,CAAC,EAAE,wBAAwB,GAChC,OAAO,CAAC,yBAAyB,CAAC;IAqD/B,kBAAkB,CAAC,MAAM,EAAE,UAAU,CAAC,uBAAuB,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,0BAA0B,CAAC;IAK7H,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAC9B"}
@@ -0,0 +1,111 @@
1
+ import { detectTogetherSystem } from "./detection/system.js";
2
+ import { assertNoPlaintextCredentials, resolveSecretReference } from '@vibesdotdev/ai/providers-runtime';
3
+ import { fetchAIProvider } from '@vibesdotdev/ai/providers-runtime/client';
4
+ import { AnyGenerationRequestSchema } from '@vibesdotdev/ai/generation/execution/schemas/request';
5
+ import { getVibesAIClient } from '@vibesdotdev/ai/client';
6
+ import { CapabilityError, settle } from '@vibesdotdev/kernel';
7
+ import { togetherConnectionSchema } from "../cloud/api/together/config/schemas/index.js";
8
+ export class TogetherProviderType {
9
+ descriptor;
10
+ context;
11
+ constructor(descriptor, context) {
12
+ this.descriptor = descriptor;
13
+ this.context = context;
14
+ }
15
+ async generate(provider, model, request, options) {
16
+ const client = await getVibesAIClient(this.context.runtime);
17
+ const response = await client.requestGeneration(AnyGenerationRequestSchema.parse({ ...request, modality: request.modality ?? model.modalities[0], providerId: provider.id, modelId: model.id }), {
18
+ ...options,
19
+ signal: request.signal,
20
+ metadata: {
21
+ ...options?.metadata,
22
+ scope: options?.scope,
23
+ specId: options?.specId,
24
+ capability: options?.capability
25
+ }
26
+ });
27
+ return { response, adapterId: 'ai', generationMethod: options?.generationMethod ?? 'runtime' };
28
+ }
29
+ async detectInstalled() {
30
+ const detected = await detectTogetherSystem(this.context.runtime);
31
+ return detected ? [{ name: detected.name, source: 'system', config: { authMethod: 'api-key', ...detected.configuration } }] : [];
32
+ }
33
+ async recommendModels() {
34
+ return [
35
+ {
36
+ modelId: 'together:meta-llama/Llama-3.3-70B-Instruct-Turbo',
37
+ modelName: 'Llama 3.3 70B Instruct Turbo',
38
+ score: 90,
39
+ reason: 'High-performance open-source LLM via Together AI',
40
+ capabilities: ['chat', 'vision', 'tools'],
41
+ contextWindow: 128_000,
42
+ useCaseFit: 90
43
+ }
44
+ ];
45
+ }
46
+ async resolveCredential(value, options) {
47
+ assertNoPlaintextCredentials({ apiKey: value });
48
+ if (options?.resolveCredential)
49
+ return options.resolveCredential(value);
50
+ return resolveSecretReference(value, this.context.runtime);
51
+ }
52
+ async checkHealth(config, options) {
53
+ const start = Date.now();
54
+ assertNoPlaintextCredentials(config);
55
+ const connection = togetherConnectionSchema.parse(config);
56
+ const apiKey = await this.resolveCredential(connection.apiKey, options);
57
+ if (!apiKey)
58
+ return {
59
+ healthy: false,
60
+ message: 'Together AI credential is unavailable',
61
+ error: {
62
+ code: 'MISSING_API_KEY',
63
+ message: 'Resolve apiKey through the runtime credential boundary'
64
+ },
65
+ checkedAt: new Date()
66
+ };
67
+ const baseUrl = connection.baseUrl.replace(/\/$/, '');
68
+ const outcome = await settle(() => this.context.runtime.lifecycle.wait((signal) => fetchAIProvider(this.context, `${baseUrl}/models`, {
69
+ headers: { authorization: `Bearer ${apiKey}` },
70
+ signal
71
+ }), {
72
+ timeoutMs: options?.timeout ?? connection.timeout,
73
+ reason: 'together health probe',
74
+ signal: options?.signal
75
+ }));
76
+ if (outcome.ok) {
77
+ const response = outcome.value;
78
+ return {
79
+ healthy: response.ok,
80
+ latencyMs: Date.now() - start,
81
+ message: response.ok
82
+ ? 'Together AI API connection successful'
83
+ : `Together AI API returned ${response.status}`,
84
+ error: response.ok ? undefined : { code: 'API_ERROR', message: response.statusText },
85
+ checkedAt: new Date(),
86
+ availableModalities: response.ok ? ['text', 'image'] : undefined
87
+ };
88
+ }
89
+ else {
90
+ const failure = CapabilityError.from(outcome.cause);
91
+ return {
92
+ healthy: false,
93
+ latencyMs: Date.now() - start,
94
+ message: 'Together AI connection failed',
95
+ error: {
96
+ code: 'CONNECTION_ERROR',
97
+ message: `Together AI request failed (${failure.code})`
98
+ },
99
+ checkedAt: new Date()
100
+ };
101
+ }
102
+ }
103
+ async validateConnection(config) {
104
+ const parsed = togetherConnectionSchema.safeParse(config);
105
+ if (parsed.success)
106
+ return { valid: true };
107
+ return { valid: false, errors: parsed.error.issues.map((issue) => `${issue.path.join('.')}: ${issue.message}`) };
108
+ }
109
+ async dispose() { }
110
+ }
111
+ //# sourceMappingURL=together.provider.impl.js.map