@revojs/ai 0.2.21 → 0.2.22

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.
@@ -1,4 +1,4 @@
1
- import { defineProvider } from "../index.js";
1
+ import { defineProvider, modelsDevProtocol, useModelsDev } from "../index.js";
2
2
  import { messagesGenerateProtocol, messagesStreamProtocol } from "../protocols/anthropic-messages.js";
3
3
  import { chatCompletionsGenerateProtocol, chatCompletionsStreamProtocol } from "../protocols/openai-chat-completions.js";
4
4
  import { responsesGenerateProtocol, responsesStreamProtocol } from "../protocols/openai-responses.js";
@@ -10,174 +10,28 @@ var opencode_default = defineProvider({ setup: (scope) => {
10
10
  baseURL: "https://opencode.ai/zen/v1",
11
11
  apiKey: useVariables(scope).opencodeApiKey
12
12
  };
13
- const chatCompletionsGenerate = chatCompletionsGenerateProtocol(config);
14
- const chatCompletionsStream = chatCompletionsStreamProtocol(config);
15
- const responsesGenerate = responsesGenerateProtocol(config);
16
- const responsesStream = responsesStreamProtocol(config);
17
- const messagesGenerate = messagesGenerateProtocol(config);
18
- const messagesStream = messagesStreamProtocol(config);
19
- const geminiGenerate = geminiGenerateProtocol(config);
20
- const geminiStream = geminiStreamProtocol(config);
21
- return {
22
- textGenerate: {
23
- "big-pickle": chatCompletionsGenerate,
24
- "kimi-k3": chatCompletionsGenerate,
25
- "kimi-k2.7-code": chatCompletionsGenerate,
26
- "kimi-k2.6": chatCompletionsGenerate,
27
- "glm-5.2": chatCompletionsGenerate,
28
- "glm-5.1": chatCompletionsGenerate,
29
- "minimax-m3": chatCompletionsGenerate,
30
- "minimax-m2.7": chatCompletionsGenerate,
31
- "deepseek-v4-pro": chatCompletionsGenerate,
32
- "deepseek-v4-flash": chatCompletionsGenerate,
33
- "grok-code": chatCompletionsGenerate,
34
- "mimo-v2.5-free": chatCompletionsGenerate,
35
- "mimo-v2-pro-free": chatCompletionsGenerate,
36
- "mimo-v2-omni-free": chatCompletionsGenerate,
37
- "mimo-v2-flash-free": chatCompletionsGenerate,
38
- "hy3-free": chatCompletionsGenerate,
39
- "hy3-preview-free": chatCompletionsGenerate,
40
- "ling-3.0-flash-fin-free": chatCompletionsGenerate,
41
- "ling-3.0-flash-free": chatCompletionsGenerate,
42
- "ling-3.0-tiny-free": chatCompletionsGenerate,
43
- "ling-2.6-flash-free": chatCompletionsGenerate,
44
- "nemotron-3-ultra-free": chatCompletionsGenerate,
45
- "nemotron-3-super-free": chatCompletionsGenerate,
46
- "nemotron-3.5-lightning-free": chatCompletionsGenerate,
47
- "deepseek-v4-flash-free": chatCompletionsGenerate,
48
- "minimax-m3-free": chatCompletionsGenerate,
49
- "minimax-m2.5-free": chatCompletionsGenerate,
50
- "minimax-m2.1-free": chatCompletionsGenerate,
51
- "glm-5-free": chatCompletionsGenerate,
52
- "glm-4.7-free": chatCompletionsGenerate,
53
- "kimi-k2.5-free": chatCompletionsGenerate,
54
- "north-mini-code-free": chatCompletionsGenerate,
55
- "ring-2.6-1t-free": chatCompletionsGenerate,
56
- "laguna-s-2.1-free": chatCompletionsGenerate,
57
- "longcat-2.0-free": chatCompletionsGenerate,
58
- "trinity-large-preview-free": chatCompletionsGenerate,
59
- "x-preview-f-free": chatCompletionsGenerate,
60
- "gpt-5.6-sol": responsesGenerate,
61
- "gpt-5.6-terra": responsesGenerate,
62
- "gpt-5.6-luna": responsesGenerate,
63
- "gpt-5.5": responsesGenerate,
64
- "gpt-5.5-pro": responsesGenerate,
65
- "gpt-5.4": responsesGenerate,
66
- "gpt-5.4-pro": responsesGenerate,
67
- "gpt-5.4-mini": responsesGenerate,
68
- "gpt-5.4-nano": responsesGenerate,
69
- "gpt-5.3-codex": responsesGenerate,
70
- "gpt-5.3-codex-spark": responsesGenerate,
71
- "gpt-5.2": responsesGenerate,
72
- "gpt-5.1": responsesGenerate,
73
- "gpt-5": responsesGenerate,
74
- "gpt-5-nano": responsesGenerate,
75
- "grok-4.6": responsesGenerate,
76
- "grok-4.5": responsesGenerate,
77
- "grok-build-0.1": responsesGenerate,
78
- "muse-spark-1.2": responsesGenerate,
79
- "muse-spark-1.2-contributor-free": responsesGenerate,
80
- "claude-fable-5": messagesGenerate,
81
- "claude-opus-5": messagesGenerate,
82
- "claude-opus-4-8": messagesGenerate,
83
- "claude-opus-4-7": messagesGenerate,
84
- "claude-opus-4-6": messagesGenerate,
85
- "claude-opus-4-5": messagesGenerate,
86
- "claude-sonnet-5": messagesGenerate,
87
- "claude-sonnet-4-6": messagesGenerate,
88
- "claude-sonnet-4-5": messagesGenerate,
89
- "claude-haiku-4-5": messagesGenerate,
90
- "qwen3.7-max": messagesGenerate,
91
- "qwen3.7-plus": messagesGenerate,
92
- "qwen3.6-plus": messagesGenerate,
93
- "qwen3.5-plus": messagesGenerate,
94
- "gemini-3.7-flash": geminiGenerate,
95
- "gemini-3.6-flash": geminiGenerate,
96
- "gemini-3.5-flash": geminiGenerate,
97
- "gemini-3.5-flash-lite": geminiGenerate,
98
- "gemini-3.1-pro": geminiGenerate,
99
- "gemini-3-flash": geminiGenerate
13
+ const protocols = {
14
+ "chat-completions": {
15
+ textGenerate: chatCompletionsGenerateProtocol(config),
16
+ textStream: chatCompletionsStreamProtocol(config)
100
17
  },
101
- textStream: {
102
- "big-pickle": chatCompletionsStream,
103
- "kimi-k3": chatCompletionsStream,
104
- "kimi-k2.7-code": chatCompletionsStream,
105
- "kimi-k2.6": chatCompletionsStream,
106
- "glm-5.2": chatCompletionsStream,
107
- "glm-5.1": chatCompletionsStream,
108
- "minimax-m3": chatCompletionsStream,
109
- "minimax-m2.7": chatCompletionsStream,
110
- "deepseek-v4-pro": chatCompletionsStream,
111
- "deepseek-v4-flash": chatCompletionsStream,
112
- "grok-code": chatCompletionsStream,
113
- "mimo-v2.5-free": chatCompletionsStream,
114
- "mimo-v2-pro-free": chatCompletionsStream,
115
- "mimo-v2-omni-free": chatCompletionsStream,
116
- "mimo-v2-flash-free": chatCompletionsStream,
117
- "hy3-free": chatCompletionsStream,
118
- "hy3-preview-free": chatCompletionsStream,
119
- "ling-3.0-flash-fin-free": chatCompletionsStream,
120
- "ling-3.0-flash-free": chatCompletionsStream,
121
- "ling-3.0-tiny-free": chatCompletionsStream,
122
- "ling-2.6-flash-free": chatCompletionsStream,
123
- "nemotron-3-ultra-free": chatCompletionsStream,
124
- "nemotron-3-super-free": chatCompletionsStream,
125
- "nemotron-3.5-lightning-free": chatCompletionsStream,
126
- "deepseek-v4-flash-free": chatCompletionsStream,
127
- "minimax-m3-free": chatCompletionsStream,
128
- "minimax-m2.5-free": chatCompletionsStream,
129
- "minimax-m2.1-free": chatCompletionsStream,
130
- "glm-5-free": chatCompletionsStream,
131
- "glm-4.7-free": chatCompletionsStream,
132
- "kimi-k2.5-free": chatCompletionsStream,
133
- "north-mini-code-free": chatCompletionsStream,
134
- "ring-2.6-1t-free": chatCompletionsStream,
135
- "laguna-s-2.1-free": chatCompletionsStream,
136
- "longcat-2.0-free": chatCompletionsStream,
137
- "trinity-large-preview-free": chatCompletionsStream,
138
- "x-preview-f-free": chatCompletionsStream,
139
- "gpt-5.6-sol": responsesStream,
140
- "gpt-5.6-terra": responsesStream,
141
- "gpt-5.6-luna": responsesStream,
142
- "gpt-5.5": responsesStream,
143
- "gpt-5.5-pro": responsesStream,
144
- "gpt-5.4": responsesStream,
145
- "gpt-5.4-pro": responsesStream,
146
- "gpt-5.4-mini": responsesStream,
147
- "gpt-5.4-nano": responsesStream,
148
- "gpt-5.3-codex": responsesStream,
149
- "gpt-5.3-codex-spark": responsesStream,
150
- "gpt-5.2": responsesStream,
151
- "gpt-5.1": responsesStream,
152
- "gpt-5": responsesStream,
153
- "gpt-5-nano": responsesStream,
154
- "grok-4.6": responsesStream,
155
- "grok-4.5": responsesStream,
156
- "grok-build-0.1": responsesStream,
157
- "muse-spark-1.2": responsesStream,
158
- "muse-spark-1.2-contributor-free": responsesStream,
159
- "claude-fable-5": messagesStream,
160
- "claude-opus-5": messagesStream,
161
- "claude-opus-4-8": messagesStream,
162
- "claude-opus-4-7": messagesStream,
163
- "claude-opus-4-6": messagesStream,
164
- "claude-opus-4-5": messagesStream,
165
- "claude-sonnet-5": messagesStream,
166
- "claude-sonnet-4-6": messagesStream,
167
- "claude-sonnet-4-5": messagesStream,
168
- "claude-haiku-4-5": messagesStream,
169
- "qwen3.7-max": messagesStream,
170
- "qwen3.7-plus": messagesStream,
171
- "qwen3.6-plus": messagesStream,
172
- "qwen3.5-plus": messagesStream,
173
- "gemini-3.7-flash": geminiStream,
174
- "gemini-3.6-flash": geminiStream,
175
- "gemini-3.5-flash": geminiStream,
176
- "gemini-3.5-flash-lite": geminiStream,
177
- "gemini-3.1-pro": geminiStream,
178
- "gemini-3-flash": geminiStream
18
+ responses: {
19
+ textGenerate: responsesGenerateProtocol(config),
20
+ textStream: responsesStreamProtocol(config)
21
+ },
22
+ messages: {
23
+ textGenerate: messagesGenerateProtocol(config),
24
+ textStream: messagesStreamProtocol(config)
25
+ },
26
+ "google-models": {
27
+ textGenerate: geminiGenerateProtocol(config),
28
+ textStream: geminiStreamProtocol(config)
179
29
  }
180
30
  };
31
+ return useModelsDev("opencode", (model, provider) => {
32
+ const protocol = modelsDevProtocol(model, provider);
33
+ return protocol === void 0 ? void 0 : protocols[protocol];
34
+ });
181
35
  } });
182
36
  //#endregion
183
37
  export { opencode_default as default };
@@ -1,17 +1,8 @@
1
1
  declare const _default: {
2
- setup: (scope: import("revojs").Scope) => {
3
- textGenerate: {
4
- "grok-4.6": import("../index").Protocol<import("../index").LanguageModelCallOptions<string>, import("../index").LanguageModelGenerateResult>;
5
- "grok-4.5": import("../index").Protocol<import("../index").LanguageModelCallOptions<string>, import("../index").LanguageModelGenerateResult>;
6
- "grok-4.3": import("../index").Protocol<import("../index").LanguageModelCallOptions<string>, import("../index").LanguageModelGenerateResult>;
7
- "grok-build-0.1": import("../index").Protocol<import("../index").LanguageModelCallOptions<string>, import("../index").LanguageModelGenerateResult>;
8
- };
9
- textStream: {
10
- "grok-4.6": import("../index").Protocol<import("../index").LanguageModelCallOptions<string>, import("../index").LanguageModelStreamResult>;
11
- "grok-4.5": import("../index").Protocol<import("../index").LanguageModelCallOptions<string>, import("../index").LanguageModelStreamResult>;
12
- "grok-4.3": import("../index").Protocol<import("../index").LanguageModelCallOptions<string>, import("../index").LanguageModelStreamResult>;
13
- "grok-build-0.1": import("../index").Protocol<import("../index").LanguageModelCallOptions<string>, import("../index").LanguageModelStreamResult>;
14
- };
15
- };
2
+ setup: (scope: import("revojs").Scope) => Promise<{
3
+ models: () => Promise<import("../index").Description[]>;
4
+ textGenerate: Record<string, import("../index").Protocol<import("../index").LanguageModelCallOptions<string>, import("../index").LanguageModelGenerateResult>>;
5
+ textStream: Record<string, import("../index").Protocol<import("../index").LanguageModelCallOptions<string>, import("../index").LanguageModelStreamResult>>;
6
+ }>;
16
7
  };
17
8
  export default _default;
@@ -1,4 +1,4 @@
1
- import { defineProvider } from "../index.js";
1
+ import { defineProvider, useModelsDev } from "../index.js";
2
2
  import { chatCompletionsGenerateProtocol, chatCompletionsStreamProtocol } from "../protocols/openai-chat-completions.js";
3
3
  import { useVariables } from "revojs";
4
4
  //#region src/providers/xai.ts
@@ -7,22 +7,11 @@ var xai_default = defineProvider({ setup: (scope) => {
7
7
  baseURL: "https://api.x.ai/v1",
8
8
  apiKey: useVariables(scope).xaiApiKey
9
9
  };
10
- const chatCompletionsGenerate = chatCompletionsGenerateProtocol(config);
11
- const chatCompletionsStream = chatCompletionsStreamProtocol(config);
12
- return {
13
- textGenerate: {
14
- "grok-4.6": chatCompletionsGenerate,
15
- "grok-4.5": chatCompletionsGenerate,
16
- "grok-4.3": chatCompletionsGenerate,
17
- "grok-build-0.1": chatCompletionsGenerate
18
- },
19
- textStream: {
20
- "grok-4.6": chatCompletionsStream,
21
- "grok-4.5": chatCompletionsStream,
22
- "grok-4.3": chatCompletionsStream,
23
- "grok-build-0.1": chatCompletionsStream
24
- }
10
+ const protocols = {
11
+ textGenerate: chatCompletionsGenerateProtocol(config),
12
+ textStream: chatCompletionsStreamProtocol(config)
25
13
  };
14
+ return useModelsDev("xai", () => protocols);
26
15
  } });
27
16
  //#endregion
28
17
  export { xai_default as default };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@revojs/ai",
3
- "version": "0.2.21",
3
+ "version": "0.2.22",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",