omniroute 3.3.6 → 3.3.7

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 (156) hide show
  1. package/app/.next/BUILD_ID +1 -1
  2. package/app/.next/build-manifest.json +2 -2
  3. package/app/.next/prerender-manifest.json +3 -3
  4. package/app/.next/server/app/(dashboard)/dashboard/a2a/page_client-reference-manifest.js +1 -1
  5. package/app/.next/server/app/(dashboard)/dashboard/agents/page_client-reference-manifest.js +1 -1
  6. package/app/.next/server/app/(dashboard)/dashboard/analytics/page_client-reference-manifest.js +1 -1
  7. package/app/.next/server/app/(dashboard)/dashboard/api-manager/page_client-reference-manifest.js +1 -1
  8. package/app/.next/server/app/(dashboard)/dashboard/audit/page_client-reference-manifest.js +1 -1
  9. package/app/.next/server/app/(dashboard)/dashboard/audit-log/page_client-reference-manifest.js +1 -1
  10. package/app/.next/server/app/(dashboard)/dashboard/auto-combo/page_client-reference-manifest.js +1 -1
  11. package/app/.next/server/app/(dashboard)/dashboard/cache/page_client-reference-manifest.js +1 -1
  12. package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  13. package/app/.next/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  14. package/app/.next/server/app/(dashboard)/dashboard/costs/page_client-reference-manifest.js +1 -1
  15. package/app/.next/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  16. package/app/.next/server/app/(dashboard)/dashboard/health/page_client-reference-manifest.js +1 -1
  17. package/app/.next/server/app/(dashboard)/dashboard/limits/page_client-reference-manifest.js +1 -1
  18. package/app/.next/server/app/(dashboard)/dashboard/logs/page_client-reference-manifest.js +1 -1
  19. package/app/.next/server/app/(dashboard)/dashboard/mcp/page_client-reference-manifest.js +1 -1
  20. package/app/.next/server/app/(dashboard)/dashboard/media/page_client-reference-manifest.js +1 -1
  21. package/app/.next/server/app/(dashboard)/dashboard/onboarding/page_client-reference-manifest.js +1 -1
  22. package/app/.next/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  23. package/app/.next/server/app/(dashboard)/dashboard/playground/page_client-reference-manifest.js +1 -1
  24. package/app/.next/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  25. package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  26. package/app/.next/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  27. package/app/.next/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  28. package/app/.next/server/app/(dashboard)/dashboard/search-tools/page_client-reference-manifest.js +1 -1
  29. package/app/.next/server/app/(dashboard)/dashboard/settings/page_client-reference-manifest.js +1 -1
  30. package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  31. package/app/.next/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  32. package/app/.next/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  33. package/app/.next/server/app/400/page_client-reference-manifest.js +1 -1
  34. package/app/.next/server/app/401/page_client-reference-manifest.js +1 -1
  35. package/app/.next/server/app/403/page_client-reference-manifest.js +1 -1
  36. package/app/.next/server/app/408/page_client-reference-manifest.js +1 -1
  37. package/app/.next/server/app/429/page_client-reference-manifest.js +1 -1
  38. package/app/.next/server/app/500/page_client-reference-manifest.js +1 -1
  39. package/app/.next/server/app/502/page_client-reference-manifest.js +1 -1
  40. package/app/.next/server/app/503/page_client-reference-manifest.js +1 -1
  41. package/app/.next/server/app/_global-error.html +2 -2
  42. package/app/.next/server/app/_global-error.rsc +1 -1
  43. package/app/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  44. package/app/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  45. package/app/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  46. package/app/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  47. package/app/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  48. package/app/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  49. package/app/.next/server/app/api/system/version/route.js.nft.json +1 -1
  50. package/app/.next/server/app/callback/page_client-reference-manifest.js +1 -1
  51. package/app/.next/server/app/docs/page_client-reference-manifest.js +1 -1
  52. package/app/.next/server/app/forbidden/page_client-reference-manifest.js +1 -1
  53. package/app/.next/server/app/forgot-password/page_client-reference-manifest.js +1 -1
  54. package/app/.next/server/app/landing/page_client-reference-manifest.js +1 -1
  55. package/app/.next/server/app/login/page_client-reference-manifest.js +1 -1
  56. package/app/.next/server/app/maintenance/page_client-reference-manifest.js +1 -1
  57. package/app/.next/server/app/offline/page_client-reference-manifest.js +1 -1
  58. package/app/.next/server/app/page_client-reference-manifest.js +1 -1
  59. package/app/.next/server/app/privacy/page_client-reference-manifest.js +1 -1
  60. package/app/.next/server/app/status/page_client-reference-manifest.js +1 -1
  61. package/app/.next/server/app/terms/page_client-reference-manifest.js +1 -1
  62. package/app/.next/server/chunks/[root-of-the-server]__46e00e59._.js +1 -1
  63. package/app/.next/server/chunks/[root-of-the-server]__6e52619e._.js +1 -1
  64. package/app/.next/server/chunks/[root-of-the-server]__7ace0fcd._.js +1 -1
  65. package/app/.next/server/chunks/[root-of-the-server]__950558b8._.js +1 -1
  66. package/app/.next/server/chunks/[root-of-the-server]__9698d25e._.js +1 -1
  67. package/app/.next/server/chunks/[root-of-the-server]__a32d3818._.js +1 -1
  68. package/app/.next/server/chunks/[root-of-the-server]__bc251fbe._.js +1 -1
  69. package/app/.next/server/chunks/[root-of-the-server]__d5a064d5._.js +1 -1
  70. package/app/.next/server/chunks/_05c48915._.js +1 -1
  71. package/app/.next/server/chunks/_06515a8a._.js +1 -1
  72. package/app/.next/server/chunks/_2115d8de._.js +1 -1
  73. package/app/.next/server/chunks/_3ac953eb._.js +1 -1
  74. package/app/.next/server/chunks/_4b8fd853._.js +1 -1
  75. package/app/.next/server/chunks/_68683848._.js +1 -1
  76. package/app/.next/server/chunks/_ee9b677b._.js +1 -1
  77. package/app/.next/server/chunks/ssr/[root-of-the-server]__9ef96d20._.js +1 -1
  78. package/app/.next/server/chunks/ssr/[root-of-the-server]__a6942102._.js +1 -1
  79. package/app/.next/server/chunks/ssr/src_i18n_messages_ar_json_e1d5145b._.js +1 -1
  80. package/app/.next/server/chunks/ssr/src_i18n_messages_bg_json_34495a0f._.js +1 -1
  81. package/app/.next/server/chunks/ssr/src_i18n_messages_cs_json_db6f9ebc._.js +1 -1
  82. package/app/.next/server/chunks/ssr/src_i18n_messages_da_json_7500ed02._.js +1 -1
  83. package/app/.next/server/chunks/ssr/src_i18n_messages_de_json_b2a40318._.js +1 -1
  84. package/app/.next/server/chunks/ssr/src_i18n_messages_es_json_82775c4a._.js +1 -1
  85. package/app/.next/server/chunks/ssr/src_i18n_messages_fi_json_dcc6745e._.js +1 -1
  86. package/app/.next/server/chunks/ssr/src_i18n_messages_fr_json_fe904570._.js +1 -1
  87. package/app/.next/server/chunks/ssr/src_i18n_messages_he_json_3e3c1e1b._.js +1 -1
  88. package/app/.next/server/chunks/ssr/src_i18n_messages_hi_json_83a0b9e5._.js +1 -1
  89. package/app/.next/server/chunks/ssr/src_i18n_messages_hu_json_651e00d3._.js +1 -1
  90. package/app/.next/server/chunks/ssr/src_i18n_messages_id_json_725d4a34._.js +1 -1
  91. package/app/.next/server/chunks/ssr/src_i18n_messages_in_json_2d7cd177._.js +1 -1
  92. package/app/.next/server/chunks/ssr/src_i18n_messages_it_json_e23882ae._.js +1 -1
  93. package/app/.next/server/chunks/ssr/src_i18n_messages_ja_json_fc6af4d8._.js +1 -1
  94. package/app/.next/server/chunks/ssr/src_i18n_messages_ko_json_0ffdbdc6._.js +1 -1
  95. package/app/.next/server/chunks/ssr/src_i18n_messages_ms_json_610df819._.js +1 -1
  96. package/app/.next/server/chunks/ssr/src_i18n_messages_nl_json_55ad1507._.js +1 -1
  97. package/app/.next/server/chunks/ssr/src_i18n_messages_no_json_9f484a8c._.js +1 -1
  98. package/app/.next/server/chunks/ssr/src_i18n_messages_phi_json_871ece45._.js +1 -1
  99. package/app/.next/server/chunks/ssr/src_i18n_messages_pl_json_79d0be4b._.js +1 -1
  100. package/app/.next/server/chunks/ssr/src_i18n_messages_pt-BR_json_e7b9e8db._.js +1 -1
  101. package/app/.next/server/chunks/ssr/src_i18n_messages_pt_json_2fc13a82._.js +1 -1
  102. package/app/.next/server/chunks/ssr/src_i18n_messages_ro_json_d1a5f5ee._.js +1 -1
  103. package/app/.next/server/chunks/ssr/src_i18n_messages_ru_json_9d7a9dfe._.js +1 -1
  104. package/app/.next/server/chunks/ssr/src_i18n_messages_sk_json_1c5bff4a._.js +1 -1
  105. package/app/.next/server/chunks/ssr/src_i18n_messages_sv_json_e8ae9f28._.js +1 -1
  106. package/app/.next/server/chunks/ssr/src_i18n_messages_th_json_6ed546bd._.js +1 -1
  107. package/app/.next/server/chunks/ssr/src_i18n_messages_tr_json_c8d78b01._.js +1 -1
  108. package/app/.next/server/chunks/ssr/src_i18n_messages_uk-UA_json_c72cdf08._.js +1 -1
  109. package/app/.next/server/chunks/ssr/src_i18n_messages_vi_json_03ec9dfd._.js +1 -1
  110. package/app/.next/server/pages/500.html +2 -2
  111. package/app/.next/server/server-reference-manifest.js +1 -1
  112. package/app/.next/server/server-reference-manifest.json +1 -1
  113. package/app/.next/static/chunks/{b9999bd9d2b99bf6.js → d3c3a9266158d9b0.js} +1 -1
  114. package/app/CHANGELOG.md +19 -1
  115. package/app/docs/openapi.yaml +1 -1
  116. package/app/open-sse/handlers/responseTranslator.ts +1 -1
  117. package/app/open-sse/package.json +1 -1
  118. package/app/package-lock.json +3 -3
  119. package/app/package.json +1 -1
  120. package/app/src/i18n/messages/ar.json +2 -1
  121. package/app/src/i18n/messages/bg.json +2 -1
  122. package/app/src/i18n/messages/cs.json +2 -1
  123. package/app/src/i18n/messages/da.json +2 -1
  124. package/app/src/i18n/messages/de.json +2 -1
  125. package/app/src/i18n/messages/es.json +2 -1
  126. package/app/src/i18n/messages/fi.json +2 -1
  127. package/app/src/i18n/messages/fr.json +2 -1
  128. package/app/src/i18n/messages/he.json +2 -1
  129. package/app/src/i18n/messages/hi.json +2 -1
  130. package/app/src/i18n/messages/hu.json +2 -1
  131. package/app/src/i18n/messages/id.json +2 -1
  132. package/app/src/i18n/messages/in.json +2 -1
  133. package/app/src/i18n/messages/it.json +2 -1
  134. package/app/src/i18n/messages/ja.json +2 -1
  135. package/app/src/i18n/messages/ko.json +2 -1
  136. package/app/src/i18n/messages/ms.json +2 -1
  137. package/app/src/i18n/messages/nl.json +2 -1
  138. package/app/src/i18n/messages/no.json +2 -1
  139. package/app/src/i18n/messages/phi.json +2 -1
  140. package/app/src/i18n/messages/pl.json +2 -1
  141. package/app/src/i18n/messages/pt-BR.json +2 -1
  142. package/app/src/i18n/messages/pt.json +2 -1
  143. package/app/src/i18n/messages/ro.json +2 -1
  144. package/app/src/i18n/messages/ru.json +2 -1
  145. package/app/src/i18n/messages/sk.json +2 -1
  146. package/app/src/i18n/messages/sv.json +2 -1
  147. package/app/src/i18n/messages/th.json +2 -1
  148. package/app/src/i18n/messages/tr.json +2 -1
  149. package/app/src/i18n/messages/uk-UA.json +2 -1
  150. package/app/src/i18n/messages/vi.json +2 -1
  151. package/app/src/shared/services/opencodeConfig.ts +14 -13
  152. package/app/tests/unit/t40-opencode-cli-tools-integration.test.mjs +5 -5
  153. package/package.json +1 -1
  154. /package/app/.next/static/{1ny0VWnN2mDf-NnjRzXAY → NYBYaP3-LK80ViNPwi7dC}/_buildManifest.js +0 -0
  155. /package/app/.next/static/{1ny0VWnN2mDf-NnjRzXAY → NYBYaP3-LK80ViNPwi7dC}/_clientMiddlewareManifest.json +0 -0
  156. /package/app/.next/static/{1ny0VWnN2mDf-NnjRzXAY → NYBYaP3-LK80ViNPwi7dC}/_ssgManifest.js +0 -0
@@ -4,14 +4,6 @@ type OpenCodeConfigInput = {
4
4
  model?: string;
5
5
  };
6
6
 
7
- type OpenCodeProviderConfig = {
8
- name: string;
9
- api: "openai";
10
- baseURL: string;
11
- apiKey: string;
12
- models: string[];
13
- };
14
-
15
7
  const OPENCODE_DEFAULT_MODELS = [
16
8
  "claude-opus-4-5-thinking",
17
9
  "claude-sonnet-4-5-thinking",
@@ -28,7 +20,7 @@ export const buildOpenCodeProviderConfig = ({
28
20
  baseUrl,
29
21
  apiKey,
30
22
  model,
31
- }: OpenCodeConfigInput): OpenCodeProviderConfig => {
23
+ }: OpenCodeConfigInput): Record<string, any> => {
32
24
  const normalizedBaseUrl = String(baseUrl || "")
33
25
  .trim()
34
26
  .replace(/\/+$/, "");
@@ -36,12 +28,21 @@ export const buildOpenCodeProviderConfig = ({
36
28
 
37
29
  const uniqueModels = [...new Set([normalizedModel, ...OPENCODE_DEFAULT_MODELS].filter(Boolean))];
38
30
 
31
+ const modelsRecord: Record<string, { name: string }> = {};
32
+ for (const m of uniqueModels) {
33
+ if (m) {
34
+ modelsRecord[m] = { name: m };
35
+ }
36
+ }
37
+
39
38
  return {
39
+ npm: "@ai-sdk/openai-compatible",
40
40
  name: "OmniRoute",
41
- api: "openai",
42
- baseURL: normalizedBaseUrl,
43
- apiKey: apiKey || "sk_omniroute",
44
- models: uniqueModels,
41
+ options: {
42
+ baseURL: normalizedBaseUrl,
43
+ apiKey: apiKey || "sk_omniroute",
44
+ },
45
+ models: modelsRecord,
45
46
  };
46
47
  };
47
48
 
@@ -49,9 +49,9 @@ test("T40: OpenCode config generator includes endpoint and selected API key", ()
49
49
  apiKey: "sk_test_opencode",
50
50
  model: "claude-sonnet-4-5-thinking",
51
51
  });
52
- assert.equal(providerConfig.baseURL, "http://localhost:20128/v1");
53
- assert.equal(providerConfig.apiKey, "sk_test_opencode");
54
- assert.ok(providerConfig.models.includes("claude-sonnet-4-5-thinking"));
52
+ assert.equal(providerConfig.options.baseURL, "http://localhost:20128/v1");
53
+ assert.equal(providerConfig.options.apiKey, "sk_test_opencode");
54
+ assert.ok(providerConfig.models["claude-sonnet-4-5-thinking"]);
55
55
 
56
56
  const mergedConfig = mergeOpenCodeConfig(
57
57
  { provider: { custom: { name: "Custom Provider" } } },
@@ -62,8 +62,8 @@ test("T40: OpenCode config generator includes endpoint and selected API key", ()
62
62
  }
63
63
  );
64
64
  assert.ok(mergedConfig.provider.custom);
65
- assert.equal(mergedConfig.provider.omniroute.baseURL, "http://localhost:20128/v1");
66
- assert.equal(mergedConfig.provider.omniroute.apiKey, "sk_test_opencode");
65
+ assert.equal(mergedConfig.provider.omniroute.options.baseURL, "http://localhost:20128/v1");
66
+ assert.equal(mergedConfig.provider.omniroute.options.apiKey, "sk_test_opencode");
67
67
  });
68
68
 
69
69
  test("T40: Windsurf card documents current official limitations honestly", () => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "omniroute",
3
- "version": "3.3.6",
3
+ "version": "3.3.7",
4
4
  "description": "Smart AI Router with auto fallback — route to FREE & cheap models, zero downtime. Works with Cursor, Cline, Claude Desktop, Codex, and any OpenAI-compatible tool.",
5
5
  "type": "module",
6
6
  "bin": {