@dexto/core 1.6.21 → 1.6.24

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 (78) hide show
  1. package/dist/agent/DextoAgent.cjs +159 -51
  2. package/dist/agent/DextoAgent.d.ts +3 -1
  3. package/dist/agent/DextoAgent.d.ts.map +1 -1
  4. package/dist/agent/DextoAgent.js +162 -53
  5. package/dist/agent/types.d.ts +2 -0
  6. package/dist/agent/types.d.ts.map +1 -1
  7. package/dist/context/manager.cjs +147 -35
  8. package/dist/context/manager.d.ts +6 -0
  9. package/dist/context/manager.d.ts.map +1 -1
  10. package/dist/context/manager.js +149 -36
  11. package/dist/context/types.cjs +5 -0
  12. package/dist/context/types.d.ts +24 -1
  13. package/dist/context/types.d.ts.map +1 -1
  14. package/dist/context/types.js +4 -0
  15. package/dist/context/utils.cjs +85 -25
  16. package/dist/context/utils.d.ts +5 -3
  17. package/dist/context/utils.d.ts.map +1 -1
  18. package/dist/context/utils.js +84 -25
  19. package/dist/events/index.d.ts +14 -0
  20. package/dist/events/index.d.ts.map +1 -1
  21. package/dist/index.browser.d.ts +1 -0
  22. package/dist/index.browser.d.ts.map +1 -1
  23. package/dist/llm/executor/stream-processor.cjs +38 -6
  24. package/dist/llm/executor/stream-processor.d.ts +2 -0
  25. package/dist/llm/executor/stream-processor.d.ts.map +1 -1
  26. package/dist/llm/executor/stream-processor.js +38 -6
  27. package/dist/llm/executor/turn-executor.cjs +5 -2
  28. package/dist/llm/executor/turn-executor.d.ts +1 -1
  29. package/dist/llm/executor/turn-executor.d.ts.map +1 -1
  30. package/dist/llm/executor/turn-executor.js +5 -2
  31. package/dist/llm/formatters/vercel.cjs +3 -1
  32. package/dist/llm/formatters/vercel.d.ts.map +1 -1
  33. package/dist/llm/formatters/vercel.js +3 -1
  34. package/dist/llm/providers/local/schemas.d.ts +2 -2
  35. package/dist/llm/registry/index.cjs +44 -13
  36. package/dist/llm/registry/index.d.ts.map +1 -1
  37. package/dist/llm/registry/index.js +44 -13
  38. package/dist/llm/registry/models.generated.cjs +1270 -1324
  39. package/dist/llm/registry/models.generated.d.ts +617 -210
  40. package/dist/llm/registry/models.generated.d.ts.map +1 -1
  41. package/dist/llm/registry/models.generated.js +1270 -1324
  42. package/dist/llm/registry/sync.cjs +5 -0
  43. package/dist/llm/registry/sync.d.ts.map +1 -1
  44. package/dist/llm/registry/sync.js +5 -0
  45. package/dist/llm/schemas.d.ts +50 -50
  46. package/dist/llm/services/factory.cjs +19 -1
  47. package/dist/llm/services/factory.d.ts.map +1 -1
  48. package/dist/llm/services/factory.js +19 -1
  49. package/dist/llm/types.cjs +1 -1
  50. package/dist/llm/types.d.ts +1 -1
  51. package/dist/llm/types.d.ts.map +1 -1
  52. package/dist/llm/types.js +1 -1
  53. package/dist/llm/usage-metadata.cjs +4 -2
  54. package/dist/llm/usage-metadata.d.ts +2 -0
  55. package/dist/llm/usage-metadata.d.ts.map +1 -1
  56. package/dist/llm/usage-metadata.js +8 -3
  57. package/dist/resources/handlers/filesystem-handler.cjs +55 -9
  58. package/dist/resources/handlers/filesystem-handler.d.ts.map +1 -1
  59. package/dist/resources/handlers/filesystem-handler.js +55 -9
  60. package/dist/resources/reference-parser.cjs +47 -12
  61. package/dist/resources/reference-parser.d.ts +6 -3
  62. package/dist/resources/reference-parser.d.ts.map +1 -1
  63. package/dist/resources/reference-parser.js +47 -12
  64. package/dist/tools/index.d.ts +1 -0
  65. package/dist/tools/index.d.ts.map +1 -1
  66. package/dist/tools/tool-call-metadata.cjs +1 -1
  67. package/dist/tools/tool-call-metadata.d.ts +1 -1
  68. package/dist/tools/tool-call-metadata.d.ts.map +1 -1
  69. package/dist/tools/tool-call-metadata.js +1 -1
  70. package/dist/tools/tool-manager.cjs +3 -0
  71. package/dist/tools/tool-manager.d.ts.map +1 -1
  72. package/dist/tools/tool-manager.js +7 -1
  73. package/dist/tools/types.d.ts +2 -0
  74. package/dist/tools/types.d.ts.map +1 -1
  75. package/dist/utils/api-key-resolver.cjs +25 -0
  76. package/dist/utils/api-key-resolver.d.ts.map +1 -1
  77. package/dist/utils/api-key-resolver.js +25 -0
  78. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"turn-executor.d.ts","sourceRoot":"","sources":["../../../src/llm/executor/turn-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"turn-executor.d.ts","sourceRoot":"","sources":["../../../src/llm/executor/turn-executor.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,aAAa,EAMb,KAAK,YAAY,EAEpB,MAAM,IAAI,CAAC;AAEZ,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAQ1D,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAK1D,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,KAAK,EAER,kBAAkB,EAClB,UAAU,EAGb,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAEvD,OAAO,KAAK,EAAE,eAAe,EAAmB,MAAM,uBAAuB,CAAC;AAC9E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAExE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAQ1E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAexE;;;;;;;;;;;GAWG;AACH,qBAAa,YAAY;IAuBjB,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,MAAM;IASd,OAAO,CAAC,UAAU;IAElB,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,WAAW,CAAC;IACpB,OAAO,CAAC,cAAc,CAAC;IAzC3B,OAAO,CAAC,MAAM,CAAS;IACvB;;;OAGG;IACH,OAAO,CAAC,mBAAmB,CAAkB;IAC7C,OAAO,CAAC,kBAAkB,CAAmC;IAC7D;;;OAGG;IACH,OAAO,CAAC,gBAAgB,CAQpB;gBAGQ,KAAK,EAAE,aAAa,EACpB,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,cAAc,CAAC,YAAY,CAAC,EAC5C,QAAQ,EAAE,eAAe,EACzB,eAAe,EAAE,eAAe,EAChC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE;QACZ,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QAC9B,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QACrC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QACjC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QAC7B,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QAElC,SAAS,CAAC,EAAE,kBAAkB,GAAG,SAAS,CAAC;KAC9C,EACO,UAAU,EAAE,UAAU,EAC9B,MAAM,EAAE,MAAM,EACN,YAAY,EAAE,mBAAmB,EACjC,WAAW,CAAC,EAAE,WAAW,YAAA,EACzB,cAAc,CAAC,EAAE,WAAW,YAAA,EACpC,kBAAkB,GAAE,kBAAkB,GAAG,IAAW;IAcxD;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IAoBhC;;;;;;OAMG;IACG,OAAO,CACT,kBAAkB,EAAE,yBAAyB,EAC7C,SAAS,GAAE,OAAc,GAC1B,OAAO,CAAC,cAAc,CAAC;IAsV1B;;;OAGG;IACH,KAAK,IAAI,IAAI;IAIb;;;OAGG;YACW,oBAAoB;IAmBlC;;;;;;;;OAQG;YACW,mBAAmB;IAkFjC;;;;;;;OAOG;YACW,WAAW;IAqIzB;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IAuF9B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAyBxB;;OAEG;IACH,OAAO,CAAC,eAAe;IAavB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAS5B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAU;IAC/C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAU;IAE/C;;;;;;;;;;;OAWG;YACW,mBAAmB;IAkDjC;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;IAgB1B;;;OAGG;IACH,OAAO,CAAC,OAAO;IAYf;;;;;;OAMG;IACH,OAAO,CAAC,aAAa;IAOrB;;;;;;OAMG;IACH,OAAO,CAAC,uBAAuB;IAO/B;;;;;;;;;;;OAWG;YACW,cAAc;IAwF5B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAoB9B,OAAO,CAAC,qBAAqB;IAK7B;;OAEG;IACH,OAAO,CAAC,gBAAgB;CAyF3B"}
@@ -471,6 +471,9 @@ class TurnExecutor {
471
471
  if (executionResult.presentationSnapshot !== void 0) {
472
472
  meta.presentationSnapshot = executionResult.presentationSnapshot;
473
473
  }
474
+ if (executionResult.meta !== void 0) {
475
+ meta.meta = executionResult.meta;
476
+ }
474
477
  if (executionResult.requireApproval !== void 0) {
475
478
  meta.requireApproval = executionResult.requireApproval;
476
479
  if (executionResult.approvalStatus !== void 0) {
@@ -663,7 +666,7 @@ class TurnExecutor {
663
666
  * Estimates tokens for tool message content using simple heuristic (length/4).
664
667
  * Used for pruning decisions only - actual token counts come from API.
665
668
  *
666
- * Tool message content is always Array<TextPart | ImagePart | FilePart | UIResourcePart>
669
+ * Tool message content is always Array<TextPart | ImagePart | FilePart | ResourcePart | UIResourcePart>
667
670
  * after sanitization via SanitizedToolResult.
668
671
  */
669
672
  estimateToolTokens(content) {
@@ -671,7 +674,7 @@ class TurnExecutor {
671
674
  if (part.type === "text") {
672
675
  return sum + Math.ceil(part.text.length / 4);
673
676
  }
674
- if (part.type === "image" || part.type === "file") {
677
+ if (part.type === "image" || part.type === "file" || part.type === "resource") {
675
678
  return sum + 1e3;
676
679
  }
677
680
  return sum;
@@ -77,7 +77,9 @@ class VercelMessageFormatter {
77
77
  switch (msg.role) {
78
78
  case "user":
79
79
  if (msg.content !== null) {
80
- const content = typeof msg.content === "string" ? msg.content : msg.content.filter((part) => part.type !== "ui-resource").map((part) => {
80
+ const content = typeof msg.content === "string" ? msg.content : msg.content.filter(
81
+ (part) => part.type !== "ui-resource" && part.type !== "resource"
82
+ ).map((part) => {
81
83
  if (part.type === "file") {
82
84
  return {
83
85
  type: "file",
@@ -1 +1 @@
1
- {"version":3,"file":"vercel.d.ts","sourceRoot":"","sources":["../../../src/llm/formatters/vercel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAiD,MAAM,IAAI,CAAC;AACtF,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,eAAe,EAAiC,MAAM,wBAAwB,CAAC;AAE7F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAmBvD;;;;;;;;;;GAUG;AACH,qBAAa,sBAAsB;IAC/B,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,EAAE,MAAM;IAG1B;;;;;;OAMG;IACH,MAAM,CACF,OAAO,EAAE,QAAQ,CAAC,eAAe,EAAE,CAAC,EACpC,OAAO,EAAE,UAAU,EACnB,YAAY,EAAE,MAAM,GAAG,IAAI,GAC5B,YAAY,EAAE;IA8JjB;;;;;;OAMG;IACH,kBAAkB,IAAI,IAAI;IAI1B,OAAO,CAAC,wBAAwB;IAUhC,OAAO,CAAC,sBAAsB;IAmG9B,OAAO,CAAC,iBAAiB;CAoE5B"}
1
+ {"version":3,"file":"vercel.d.ts","sourceRoot":"","sources":["../../../src/llm/formatters/vercel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAiD,MAAM,IAAI,CAAC;AACtF,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,eAAe,EAAiC,MAAM,wBAAwB,CAAC;AAE7F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAmBvD;;;;;;;;;;GAUG;AACH,qBAAa,sBAAsB;IAC/B,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,EAAE,MAAM;IAG1B;;;;;;OAMG;IACH,MAAM,CACF,OAAO,EAAE,QAAQ,CAAC,eAAe,EAAE,CAAC,EACpC,OAAO,EAAE,UAAU,EACnB,YAAY,EAAE,MAAM,GAAG,IAAI,GAC5B,YAAY,EAAE;IAkKjB;;;;;;OAMG;IACH,kBAAkB,IAAI,IAAI;IAI1B,OAAO,CAAC,wBAAwB;IAUhC,OAAO,CAAC,sBAAsB;IAmG9B,OAAO,CAAC,iBAAiB;CAoE5B"}
@@ -55,7 +55,9 @@ class VercelMessageFormatter {
55
55
  switch (msg.role) {
56
56
  case "user":
57
57
  if (msg.content !== null) {
58
- const content = typeof msg.content === "string" ? msg.content : msg.content.filter((part) => part.type !== "ui-resource").map((part) => {
58
+ const content = typeof msg.content === "string" ? msg.content : msg.content.filter(
59
+ (part) => part.type !== "ui-resource" && part.type !== "resource"
60
+ ).map((part) => {
59
61
  if (part.type === "file") {
60
62
  return {
61
63
  type: "file",
@@ -51,7 +51,7 @@ export declare const LocalModelInfoSchema: z.ZodObject<{
51
51
  quantization: "Q2_K" | "Q3_K_S" | "Q3_K_M" | "Q3_K_L" | "Q4_0" | "Q4_K_S" | "Q4_K_M" | "Q5_0" | "Q5_K_S" | "Q5_K_M" | "Q6_K" | "Q8_0" | "F16" | "F32";
52
52
  sizeBytes: number;
53
53
  contextLength: number;
54
- categories: ("small" | "reasoning" | "general" | "coding" | "vision")[];
54
+ categories: ("reasoning" | "small" | "general" | "coding" | "vision")[];
55
55
  license?: string | undefined;
56
56
  supportsVision?: boolean | undefined;
57
57
  supportsTools?: boolean | undefined;
@@ -68,7 +68,7 @@ export declare const LocalModelInfoSchema: z.ZodObject<{
68
68
  quantization: "Q2_K" | "Q3_K_S" | "Q3_K_M" | "Q3_K_L" | "Q4_0" | "Q4_K_S" | "Q4_K_M" | "Q5_0" | "Q5_K_S" | "Q5_K_M" | "Q6_K" | "Q8_0" | "F16" | "F32";
69
69
  sizeBytes: number;
70
70
  contextLength: number;
71
- categories: ("small" | "reasoning" | "general" | "coding" | "vision")[];
71
+ categories: ("reasoning" | "small" | "general" | "coding" | "vision")[];
72
72
  license?: string | undefined;
73
73
  supportsVision?: boolean | undefined;
74
74
  supportsTools?: boolean | undefined;
@@ -102,13 +102,44 @@ const MIME_TYPE_TO_FILE_TYPE = {
102
102
  "audio/ogg": "audio",
103
103
  "audio/m4a": "audio",
104
104
  "audio/aac": "audio",
105
+ "video/mp4": "video",
106
+ "video/webm": "video",
107
+ "video/ogg": "video",
108
+ "video/quicktime": "video",
109
+ "video/x-msvideo": "video",
110
+ "video/x-matroska": "video",
105
111
  // Common image MIME types
106
112
  "image/jpeg": "image",
107
113
  "image/jpg": "image",
108
114
  "image/png": "image",
109
115
  "image/webp": "image",
110
- "image/gif": "image"
116
+ "image/gif": "image",
117
+ // Common document, presentation, and spreadsheet MIME types
118
+ "text/plain": "document",
119
+ "text/markdown": "document",
120
+ "text/html": "document",
121
+ "text/xml": "document",
122
+ "text/csv": "document",
123
+ "text/tab-separated-values": "document",
124
+ "application/json": "document",
125
+ "application/xml": "document",
126
+ "application/msword": "document",
127
+ "application/rtf": "document",
128
+ "text/rtf": "document",
129
+ "application/vnd.oasis.opendocument.text": "document",
130
+ "application/vnd.ms-powerpoint": "document",
131
+ "application/vnd.openxmlformats-officedocument.presentationml.presentation": "document",
132
+ "application/vnd.ms-excel": "document",
133
+ "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": "document",
134
+ "application/vnd.openxmlformats-officedocument.wordprocessingml.document": "document"
111
135
  };
136
+ const GENERIC_UPLOAD_FILE_TYPES = [
137
+ "pdf",
138
+ "image",
139
+ "audio",
140
+ "video",
141
+ "document"
142
+ ];
112
143
  function getAllowedMimeTypes() {
113
144
  return Object.keys(MIME_TYPE_TO_FILE_TYPE);
114
145
  }
@@ -125,8 +156,8 @@ const LLM_REGISTRY = {
125
156
  models: [],
126
157
  // Empty - accepts any model name for custom endpoints
127
158
  baseURLSupport: "required",
128
- supportedFileTypes: ["pdf", "image", "audio"],
129
- // Allow all types for custom endpoints
159
+ supportedFileTypes: GENERIC_UPLOAD_FILE_TYPES,
160
+ // Allow all generic file categories for custom endpoints
130
161
  supportsCustomModels: true
131
162
  },
132
163
  anthropic: {
@@ -193,8 +224,8 @@ const LLM_REGISTRY = {
193
224
  models: import_models_generated.MODELS_BY_PROVIDER.openrouter,
194
225
  baseURLSupport: "none",
195
226
  // Fixed endpoint - baseURL auto-injected in resolver, no user override allowed
196
- supportedFileTypes: ["pdf", "image", "audio"],
197
- // Allow all types - user assumes responsibility
227
+ supportedFileTypes: GENERIC_UPLOAD_FILE_TYPES,
228
+ // Allow all generic file categories - user assumes responsibility
198
229
  supportsCustomModels: true,
199
230
  supportsAllRegistryModels: true,
200
231
  // Can serve models from all other providers
@@ -206,7 +237,7 @@ const LLM_REGISTRY = {
206
237
  litellm: {
207
238
  models: [],
208
239
  baseURLSupport: "required",
209
- supportedFileTypes: ["pdf", "image", "audio"],
240
+ supportedFileTypes: GENERIC_UPLOAD_FILE_TYPES,
210
241
  supportsCustomModels: true
211
242
  },
212
243
  // https://glama.ai/
@@ -215,7 +246,7 @@ const LLM_REGISTRY = {
215
246
  glama: {
216
247
  models: [],
217
248
  baseURLSupport: "none",
218
- supportedFileTypes: ["pdf", "image", "audio"],
249
+ supportedFileTypes: GENERIC_UPLOAD_FILE_TYPES,
219
250
  supportsCustomModels: true
220
251
  },
221
252
  // https://cloud.google.com/vertex-ai
@@ -307,7 +338,7 @@ const LLM_REGISTRY = {
307
338
  name: "openai/gpt-5.2",
308
339
  displayName: "GPT-5.2",
309
340
  maxInputTokens: 4e5,
310
- supportedFileTypes: ["pdf", "image"],
341
+ supportedFileTypes: ["pdf", "image", "document"],
311
342
  pricing: {
312
343
  inputPerM: 1.75,
313
344
  outputPerM: 14,
@@ -320,7 +351,7 @@ const LLM_REGISTRY = {
320
351
  name: "openai/gpt-5.2-codex",
321
352
  displayName: "GPT-5.2 Codex",
322
353
  maxInputTokens: 4e5,
323
- supportedFileTypes: ["pdf", "image"],
354
+ supportedFileTypes: ["pdf", "image", "document"],
324
355
  pricing: {
325
356
  inputPerM: 1.75,
326
357
  outputPerM: 14,
@@ -334,13 +365,13 @@ const LLM_REGISTRY = {
334
365
  name: "google/gemini-3-pro-preview",
335
366
  displayName: "Gemini 3 Pro",
336
367
  maxInputTokens: 1048576,
337
- supportedFileTypes: ["pdf", "image", "audio"]
368
+ supportedFileTypes: ["pdf", "image", "audio", "video", "document"]
338
369
  },
339
370
  {
340
371
  name: "google/gemini-3-flash-preview",
341
372
  displayName: "Gemini 3 Flash",
342
373
  maxInputTokens: 1048576,
343
- supportedFileTypes: ["pdf", "image", "audio"]
374
+ supportedFileTypes: ["pdf", "image", "audio", "video", "document"]
344
375
  },
345
376
  // Free models (via OpenRouter)
346
377
  {
@@ -393,8 +424,8 @@ const LLM_REGISTRY = {
393
424
  }
394
425
  }
395
426
  ],
396
- baseURLSupport: "none",
397
- supportedFileTypes: ["pdf", "image", "audio"],
427
+ baseURLSupport: "optional",
428
+ supportedFileTypes: GENERIC_UPLOAD_FILE_TYPES,
398
429
  supportsCustomModels: true,
399
430
  supportsAllRegistryModels: true
400
431
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/llm/registry/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/llm/registry/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAI1C,OAAO,EAEH,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,UAAU,EAClB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAoDvD;;;GAGG;AACH,MAAM,WAAW,YAAY;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,QAAQ,CAAC,EAAE,KAAK,CAAC;IACjB,IAAI,CAAC,EAAE,oBAAoB,CAAC;CAC/B;AAED,MAAM,WAAW,uBAAuB;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,GAAG,KAAK,CAAC;AAEzE,MAAM,WAAW,eAAe;IAC5B,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,MAAM,EAAE,aAAa,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,qBAAqB;IAClC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,wBAAwB;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,SAAS;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kBAAkB,EAAE,iBAAiB,EAAE,CAAC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;IACzC,WAAW,CAAC,EAAE,IAAI,GAAG,wBAAwB,CAAC;IAE9C,OAAO,CAAC,EAAE,YAAY,CAAC;CAC1B;AAED,MAAM,WAAW,yBAAyB;IACtC,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;CAChB;AAOD,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAyCpE,CAAC;AAWF,wBAAgB,mBAAmB,IAAI,MAAM,EAAE,CAE9C;AAED,MAAM,WAAW,YAAY;IACzB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,cAAc,EAAE,MAAM,GAAG,UAAU,GAAG,UAAU,CAAC;IACjD,kBAAkB,EAAE,iBAAiB,EAAE,CAAC;IACxC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,SAAS,CAAC,EAAE,yBAAyB,CAAC;IACtC;;;;OAIG;IACH,yBAAyB,CAAC,EAAE,OAAO,CAAC;CACvC;AAED,sEAAsE;AACtE,eAAO,MAAM,wBAAwB,SAAS,CAAC;AAI/C;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,WAAW,EAAE,YAAY,CA4Q1D,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAQ9D;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI,CAQ/E;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,IAAI,WAAW,EAAE,CAErD;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,WAAW,GAAG,MAAM,EAAE,CAGlE;AAED;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CACrC,QAAQ,EAAE,WAAW,EACrB,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,MAAM,GAChB,MAAM,CAwBR;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAIlF;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,CAe/D;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,EAAE,CAEhD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,WAAW,GAAG,OAAO,CAG9D;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,WAAW,GAAG,OAAO,CAG9D;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,WAAW,GAAG,OAAO,CAG9D;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,WAAW,GAAG,OAAO,CAGnE;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,WAAW,GAAG,OAAO,CAG1E;AAoBD,wBAAgB,8BAA8B,CAC1C,KAAK,EAAE,MAAM,EACb,gBAAgB,EAAE,WAAW,GAC9B,MAAM,EAAE,CAwBV;AAuID;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACnC,QAAQ,EAAE,WAAW,GACtB,KAAK,CAAC,SAAS,GAAG;IAAE,gBAAgB,CAAC,EAAE,WAAW,CAAA;CAAE,CAAC,CAmCvD;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,6BAA6B,CACzC,KAAK,EAAE,MAAM,EACb,gBAAgB,EAAE,WAAW,EAC7B,cAAc,EAAE,WAAW,GAC5B,MAAM,CAoBR;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAyBrF;AAmBD;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,WAAW,GAAG,OAAO,CAE7D;AAED;;;;;;;GAOG;AACH,wBAAgB,6BAA6B,CACzC,QAAQ,EAAE,WAAW,EACrB,KAAK,EAAE,MAAM,GACd,iBAAiB,EAAE,CAmBrB;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACjC,QAAQ,EAAE,WAAW,EACrB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,iBAAiB,GAC5B,OAAO,CAGT;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACpC,QAAQ,EAAE,WAAW,EACrB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,GACjB;IACC,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB,CAkCA;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAyGpF;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAQ9F;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,WAAW,GAAG,MAAM,CAmBjF;AAED;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,WAAW,GAAG,OAAO,CAkDtF;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,GAAG,MAAM,CAE9E;AAED,wBAAgB,sBAAsB,CAClC,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,YAAY,GACtB,uBAAuB,CAuBzB"}
@@ -60,13 +60,44 @@ const MIME_TYPE_TO_FILE_TYPE = {
60
60
  "audio/ogg": "audio",
61
61
  "audio/m4a": "audio",
62
62
  "audio/aac": "audio",
63
+ "video/mp4": "video",
64
+ "video/webm": "video",
65
+ "video/ogg": "video",
66
+ "video/quicktime": "video",
67
+ "video/x-msvideo": "video",
68
+ "video/x-matroska": "video",
63
69
  // Common image MIME types
64
70
  "image/jpeg": "image",
65
71
  "image/jpg": "image",
66
72
  "image/png": "image",
67
73
  "image/webp": "image",
68
- "image/gif": "image"
74
+ "image/gif": "image",
75
+ // Common document, presentation, and spreadsheet MIME types
76
+ "text/plain": "document",
77
+ "text/markdown": "document",
78
+ "text/html": "document",
79
+ "text/xml": "document",
80
+ "text/csv": "document",
81
+ "text/tab-separated-values": "document",
82
+ "application/json": "document",
83
+ "application/xml": "document",
84
+ "application/msword": "document",
85
+ "application/rtf": "document",
86
+ "text/rtf": "document",
87
+ "application/vnd.oasis.opendocument.text": "document",
88
+ "application/vnd.ms-powerpoint": "document",
89
+ "application/vnd.openxmlformats-officedocument.presentationml.presentation": "document",
90
+ "application/vnd.ms-excel": "document",
91
+ "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": "document",
92
+ "application/vnd.openxmlformats-officedocument.wordprocessingml.document": "document"
69
93
  };
94
+ const GENERIC_UPLOAD_FILE_TYPES = [
95
+ "pdf",
96
+ "image",
97
+ "audio",
98
+ "video",
99
+ "document"
100
+ ];
70
101
  function getAllowedMimeTypes() {
71
102
  return Object.keys(MIME_TYPE_TO_FILE_TYPE);
72
103
  }
@@ -83,8 +114,8 @@ const LLM_REGISTRY = {
83
114
  models: [],
84
115
  // Empty - accepts any model name for custom endpoints
85
116
  baseURLSupport: "required",
86
- supportedFileTypes: ["pdf", "image", "audio"],
87
- // Allow all types for custom endpoints
117
+ supportedFileTypes: GENERIC_UPLOAD_FILE_TYPES,
118
+ // Allow all generic file categories for custom endpoints
88
119
  supportsCustomModels: true
89
120
  },
90
121
  anthropic: {
@@ -151,8 +182,8 @@ const LLM_REGISTRY = {
151
182
  models: MODELS_BY_PROVIDER.openrouter,
152
183
  baseURLSupport: "none",
153
184
  // Fixed endpoint - baseURL auto-injected in resolver, no user override allowed
154
- supportedFileTypes: ["pdf", "image", "audio"],
155
- // Allow all types - user assumes responsibility
185
+ supportedFileTypes: GENERIC_UPLOAD_FILE_TYPES,
186
+ // Allow all generic file categories - user assumes responsibility
156
187
  supportsCustomModels: true,
157
188
  supportsAllRegistryModels: true,
158
189
  // Can serve models from all other providers
@@ -164,7 +195,7 @@ const LLM_REGISTRY = {
164
195
  litellm: {
165
196
  models: [],
166
197
  baseURLSupport: "required",
167
- supportedFileTypes: ["pdf", "image", "audio"],
198
+ supportedFileTypes: GENERIC_UPLOAD_FILE_TYPES,
168
199
  supportsCustomModels: true
169
200
  },
170
201
  // https://glama.ai/
@@ -173,7 +204,7 @@ const LLM_REGISTRY = {
173
204
  glama: {
174
205
  models: [],
175
206
  baseURLSupport: "none",
176
- supportedFileTypes: ["pdf", "image", "audio"],
207
+ supportedFileTypes: GENERIC_UPLOAD_FILE_TYPES,
177
208
  supportsCustomModels: true
178
209
  },
179
210
  // https://cloud.google.com/vertex-ai
@@ -265,7 +296,7 @@ const LLM_REGISTRY = {
265
296
  name: "openai/gpt-5.2",
266
297
  displayName: "GPT-5.2",
267
298
  maxInputTokens: 4e5,
268
- supportedFileTypes: ["pdf", "image"],
299
+ supportedFileTypes: ["pdf", "image", "document"],
269
300
  pricing: {
270
301
  inputPerM: 1.75,
271
302
  outputPerM: 14,
@@ -278,7 +309,7 @@ const LLM_REGISTRY = {
278
309
  name: "openai/gpt-5.2-codex",
279
310
  displayName: "GPT-5.2 Codex",
280
311
  maxInputTokens: 4e5,
281
- supportedFileTypes: ["pdf", "image"],
312
+ supportedFileTypes: ["pdf", "image", "document"],
282
313
  pricing: {
283
314
  inputPerM: 1.75,
284
315
  outputPerM: 14,
@@ -292,13 +323,13 @@ const LLM_REGISTRY = {
292
323
  name: "google/gemini-3-pro-preview",
293
324
  displayName: "Gemini 3 Pro",
294
325
  maxInputTokens: 1048576,
295
- supportedFileTypes: ["pdf", "image", "audio"]
326
+ supportedFileTypes: ["pdf", "image", "audio", "video", "document"]
296
327
  },
297
328
  {
298
329
  name: "google/gemini-3-flash-preview",
299
330
  displayName: "Gemini 3 Flash",
300
331
  maxInputTokens: 1048576,
301
- supportedFileTypes: ["pdf", "image", "audio"]
332
+ supportedFileTypes: ["pdf", "image", "audio", "video", "document"]
302
333
  },
303
334
  // Free models (via OpenRouter)
304
335
  {
@@ -351,8 +382,8 @@ const LLM_REGISTRY = {
351
382
  }
352
383
  }
353
384
  ],
354
- baseURLSupport: "none",
355
- supportedFileTypes: ["pdf", "image", "audio"],
385
+ baseURLSupport: "optional",
386
+ supportedFileTypes: GENERIC_UPLOAD_FILE_TYPES,
356
387
  supportsCustomModels: true,
357
388
  supportsAllRegistryModels: true
358
389
  }