@theokit/sdk 4.13.1 → 4.14.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/{cron-C7catiH8.d.ts → cron-DY0uC1ng.d.ts} +7 -0
  3. package/dist/{cron-DK1WVZnI.d.cts → cron-ElTj1cSH.d.cts} +7 -0
  4. package/dist/cron.cjs +159 -21
  5. package/dist/cron.cjs.map +1 -1
  6. package/dist/cron.d.cts +1 -1
  7. package/dist/cron.d.ts +1 -1
  8. package/dist/cron.js +159 -21
  9. package/dist/cron.js.map +1 -1
  10. package/dist/eval.cjs +159 -21
  11. package/dist/eval.cjs.map +1 -1
  12. package/dist/eval.js +159 -21
  13. package/dist/eval.js.map +1 -1
  14. package/dist/index.cjs +162 -21
  15. package/dist/index.cjs.map +1 -1
  16. package/dist/index.d.cts +2 -2
  17. package/dist/index.d.ts +2 -2
  18. package/dist/index.js +162 -21
  19. package/dist/index.js.map +1 -1
  20. package/dist/internal/llm/openai.d.ts +29 -0
  21. package/dist/internal/providers/builtin/cerebras.d.ts +5 -0
  22. package/dist/internal/providers/builtin/cohere.d.ts +8 -0
  23. package/dist/internal/providers/builtin/deepinfra.d.ts +2 -0
  24. package/dist/internal/providers/builtin/google.d.ts +6 -0
  25. package/dist/internal/providers/builtin/groq.d.ts +2 -0
  26. package/dist/internal/providers/builtin/mistral.d.ts +2 -0
  27. package/dist/internal/providers/builtin/openai-compatible.d.ts +1 -0
  28. package/dist/internal/providers/builtin/perplexity.d.ts +5 -0
  29. package/dist/internal/providers/builtin/together.d.ts +2 -0
  30. package/dist/internal/providers/builtin/xai.d.ts +2 -0
  31. package/dist/models.cjs +124 -5
  32. package/dist/models.cjs.map +1 -1
  33. package/dist/models.js +124 -5
  34. package/dist/models.js.map +1 -1
  35. package/dist/types/provider-profile.d.ts +7 -0
  36. package/package.json +1 -1
package/dist/models.js CHANGED
@@ -379,7 +379,13 @@ var ANTHROPIC = {
379
379
  baseUrl: "https://api.anthropic.com",
380
380
  modelsUrl: "https://api.anthropic.com/v1/models",
381
381
  hostname: "api.anthropic.com",
382
- fallbackModels: ["claude-opus-4-7", "claude-sonnet-4-6", "claude-haiku-4-5-20251001"]
382
+ fallbackModels: ["claude-opus-4-7", "claude-sonnet-4-6", "claude-haiku-4-5-20251001"],
383
+ // M45 — the Anthropic beta-features header (interleaved thinking + fine-grained tool streaming). An
384
+ // Anthropic API constant, adapted verbatim from OpenCode's anthropic plugin (MIT © 2025 opencode). The
385
+ // SANCTIONED behavior delta of M45 (ADR D4) — consumed by the anthropic transport's extraHeaders wiring.
386
+ extraHeaders: {
387
+ "anthropic-beta": "interleaved-thinking-2025-05-14,fine-grained-tool-streaming-2025-05-14"
388
+ }
383
389
  };
384
390
 
385
391
  // src/internal/providers/builtin/bedrock.ts
@@ -398,6 +404,44 @@ var BEDROCK = {
398
404
  ]
399
405
  };
400
406
 
407
+ // src/internal/providers/builtin/openai-compatible.ts
408
+ function openAiCompatibleProfile(p) {
409
+ return {
410
+ apiMode: "chat_completions",
411
+ authType: "api_key",
412
+ fallbackModels: [],
413
+ ...p
414
+ };
415
+ }
416
+
417
+ // src/internal/providers/builtin/cerebras.ts
418
+ var CEREBRAS = openAiCompatibleProfile({
419
+ name: "cerebras",
420
+ baseUrl: "https://api.cerebras.ai/v1",
421
+ envVars: ["CEREBRAS_API_KEY"],
422
+ fallbackModels: ["gpt-oss-120b", "zai-glm-4.7"],
423
+ extraHeaders: { "X-Cerebras-3rd-Party-Integration": "theokit" },
424
+ hostname: "api.cerebras.ai"
425
+ });
426
+
427
+ // src/internal/providers/builtin/cohere.ts
428
+ var COHERE = openAiCompatibleProfile({
429
+ name: "cohere",
430
+ baseUrl: "https://api.cohere.ai/compatibility/v1",
431
+ envVars: ["COHERE_API_KEY", "CO_API_KEY"],
432
+ fallbackModels: ["command-a-03-2025"],
433
+ hostname: "api.cohere.ai"
434
+ });
435
+
436
+ // src/internal/providers/builtin/deepinfra.ts
437
+ var DEEPINFRA = openAiCompatibleProfile({
438
+ name: "deepinfra",
439
+ baseUrl: "https://api.deepinfra.com/v1/openai",
440
+ envVars: ["DEEPINFRA_API_KEY"],
441
+ fallbackModels: ["Qwen/Qwen3-32B"],
442
+ hostname: "api.deepinfra.com"
443
+ });
444
+
401
445
  // src/internal/providers/builtin/gemini.ts
402
446
  var GEMINI = {
403
447
  name: "gemini",
@@ -409,6 +453,24 @@ var GEMINI = {
409
453
  fallbackModels: ["google/gemini-2.0-flash-001"]
410
454
  };
411
455
 
456
+ // src/internal/providers/builtin/google.ts
457
+ var GOOGLE = openAiCompatibleProfile({
458
+ name: "google",
459
+ baseUrl: "https://generativelanguage.googleapis.com/v1beta/openai",
460
+ envVars: ["GOOGLE_API_KEY", "GEMINI_API_KEY", "GOOGLE_GENERATIVE_AI_API_KEY"],
461
+ fallbackModels: ["gemini-2.5-pro", "gemini-2.5-flash"],
462
+ hostname: "generativelanguage.googleapis.com"
463
+ });
464
+
465
+ // src/internal/providers/builtin/groq.ts
466
+ var GROQ = openAiCompatibleProfile({
467
+ name: "groq",
468
+ baseUrl: "https://api.groq.com/openai/v1",
469
+ envVars: ["GROQ_API_KEY"],
470
+ fallbackModels: ["llama-3.3-70b-versatile", "llama-3.1-8b-instant"],
471
+ hostname: "api.groq.com"
472
+ });
473
+
412
474
  // src/internal/providers/builtin/llamacpp.ts
413
475
  var LLAMACPP = {
414
476
  name: "llamacpp",
@@ -435,6 +497,15 @@ var LMSTUDIO = {
435
497
  fallbackModels: ["loaded-model"]
436
498
  };
437
499
 
500
+ // src/internal/providers/builtin/mistral.ts
501
+ var MISTRAL = openAiCompatibleProfile({
502
+ name: "mistral",
503
+ baseUrl: "https://api.mistral.ai/v1",
504
+ envVars: ["MISTRAL_API_KEY"],
505
+ fallbackModels: ["mistral-large-latest", "codestral-latest"],
506
+ hostname: "api.mistral.ai"
507
+ });
508
+
438
509
  // src/internal/providers/builtin/ollama.ts
439
510
  var OLLAMA = {
440
511
  name: "ollama",
@@ -822,9 +893,33 @@ var OPENROUTER = {
822
893
  baseUrl: "https://openrouter.ai/api",
823
894
  modelsUrl: "https://openrouter.ai/api/v1/models",
824
895
  hostname: "openrouter.ai",
825
- fallbackModels: ["openai/gpt-4o-mini", "anthropic/claude-3-haiku"]
896
+ // M45 — models refreshed (claude-3-haiku retired upstream).
897
+ fallbackModels: ["openai/gpt-4o-mini", "anthropic/claude-haiku-4-5"],
898
+ // M45 — OpenRouter app-attribution headers (mechanism from OpenCode's openrouter plugin, MIT; VALUES are
899
+ // theokit's own — copying another app's referer would misattribute traffic).
900
+ extraHeaders: { "HTTP-Referer": "https://usetheo.dev", "X-Title": "theokit" }
826
901
  };
827
902
 
903
+ // src/internal/providers/builtin/perplexity.ts
904
+ var PERPLEXITY = openAiCompatibleProfile({
905
+ name: "perplexity",
906
+ baseUrl: "https://api.perplexity.ai",
907
+ chatCompletionsPath: "/chat/completions",
908
+ envVars: ["PERPLEXITY_API_KEY"],
909
+ fallbackModels: ["sonar-pro", "sonar"],
910
+ hostname: "api.perplexity.ai"
911
+ });
912
+
913
+ // src/internal/providers/builtin/together.ts
914
+ var TOGETHER = openAiCompatibleProfile({
915
+ name: "together",
916
+ aliases: ["togetherai"],
917
+ baseUrl: "https://api.together.xyz/v1",
918
+ envVars: ["TOGETHER_API_KEY"],
919
+ fallbackModels: ["Qwen/Qwen2.5-7B-Instruct-Turbo"],
920
+ hostname: "api.together.xyz"
921
+ });
922
+
828
923
  // src/internal/providers/builtin/vertex.ts
829
924
  var VERTEX = {
830
925
  name: "vertex",
@@ -841,11 +936,26 @@ var VERTEX = {
841
936
  ]
842
937
  };
843
938
 
939
+ // src/internal/providers/builtin/xai.ts
940
+ var XAI = openAiCompatibleProfile({
941
+ name: "xai",
942
+ aliases: ["grok"],
943
+ baseUrl: "https://api.x.ai/v1",
944
+ envVars: ["XAI_API_KEY"],
945
+ fallbackModels: ["grok-4.5", "grok-4.3"],
946
+ hostname: "api.x.ai"
947
+ });
948
+
844
949
  // src/internal/providers/builtin/index.ts
845
- var registered = false;
950
+ var _registeredState = (() => {
951
+ const g = globalThis;
952
+ const sym = /* @__PURE__ */ Symbol.for("theokit-sdk.providers.builtins-registered");
953
+ if (g[sym] === void 0) g[sym] = { done: false };
954
+ return g[sym];
955
+ })();
846
956
  function registerBuiltins() {
847
- if (registered) return;
848
- registered = true;
957
+ if (_registeredState.done) return;
958
+ _registeredState.done = true;
849
959
  registerProvider(ANTHROPIC);
850
960
  registerProvider(OPENAI);
851
961
  registerProvider(OPENAI_CHATGPT);
@@ -856,6 +966,15 @@ function registerBuiltins() {
856
966
  registerProvider(LLAMACPP);
857
967
  registerProvider(BEDROCK);
858
968
  registerProvider(VERTEX);
969
+ registerProvider(GOOGLE);
970
+ registerProvider(MISTRAL);
971
+ registerProvider(GROQ);
972
+ registerProvider(COHERE);
973
+ registerProvider(DEEPINFRA);
974
+ registerProvider(TOGETHER);
975
+ registerProvider(XAI);
976
+ registerProvider(PERPLEXITY);
977
+ registerProvider(CEREBRAS);
859
978
  registerCatalogProviders();
860
979
  }
861
980