nexus-ai-pro 0.8.0 → 0.8.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.
@@ -1,7 +1,7 @@
1
1
  export type Modality = 'text' | 'vision' | 'audio' | 'video' | 'image' | 'pdf';
2
2
  export type ModelStatus = 'stable' | 'preview' | 'latest' | 'deprecated';
3
3
  export type ModelEndpoint = 'chat' | 'responses' | 'messages' | 'generateContent' | 'realtime';
4
- export type ReasoningEffort = 'none' | 'minimal' | 'low' | 'medium' | 'high' | 'xhigh';
4
+ export type ReasoningEffort = 'none' | 'minimal' | 'low' | 'medium' | 'high' | 'xhigh' | 'max';
5
5
  export type RoutingModelPreference = string | {
6
6
  model: string;
7
7
  weight?: number;
@@ -2,7 +2,7 @@ function model(capabilities) {
2
2
  return capabilities;
3
3
  }
4
4
  const openaiReasoning = {
5
- efforts: ['none', 'low', 'medium', 'high', 'xhigh'],
5
+ efforts: ['none', 'low', 'medium', 'high', 'xhigh', 'max'],
6
6
  };
7
7
  const gpt5 = (family, maxContextTokens, inputPerMillion, outputPerMillion, qualityScore, speedScore, release, knowledgeCutoff) => model({
8
8
  provider: 'openai',
@@ -105,7 +105,23 @@ const cohere = (family, modalities, maxContextTokens, maxOutputTokens, qualitySc
105
105
  notes: notes || 'Cohere pricing is deployment/plan dependent; override costs in models.registry for exact estimates.',
106
106
  });
107
107
  export const KNOWN_MODELS = {
108
- // OpenAI - current GPT-5 family
108
+ // OpenAI - current GPT-5.6 family
109
+ 'gpt-5.6-sol': {
110
+ ...gpt5('gpt-5.6', 1050000, 5, 30, 100, 78, '2026-07', '2026-02-16'),
111
+ endpoints: ['responses'],
112
+ notes: 'OpenAI flagship model for complex reasoning and coding.',
113
+ },
114
+ 'gpt-5.6-terra': {
115
+ ...gpt5('gpt-5.6', 1050000, 2.5, 15, 98, 86, '2026-07', '2026-02-16'),
116
+ endpoints: ['responses'],
117
+ notes: 'OpenAI GPT-5.6 model balanced for intelligence and cost.',
118
+ },
119
+ 'gpt-5.6-luna': {
120
+ ...gpt5('gpt-5.6', 1050000, 1, 6, 94, 96, '2026-07', '2026-02-16'),
121
+ endpoints: ['responses'],
122
+ notes: 'OpenAI GPT-5.6 model optimized for cost-sensitive, high-volume workloads.',
123
+ },
124
+ // OpenAI - GPT-5 family
109
125
  'gpt-5.5': gpt5('gpt-5.5', 1000000, 5, 30, 99, 82, '2026', '2025-12-01'),
110
126
  'gpt-5.5-pro': {
111
127
  ...gpt5('gpt-5.5', 1050000, 30, 180, 100, 55, '2026', '2025-12-01'),
@@ -145,6 +161,62 @@ export const KNOWN_MODELS = {
145
161
  status: 'latest',
146
162
  },
147
163
  // OpenAI - GPT-4 / reasoning legacy still commonly deployed
164
+ 'gpt-4.5-preview': model({
165
+ provider: 'openai',
166
+ family: 'gpt-4.5',
167
+ modalities: ['text', 'vision'],
168
+ streaming: true,
169
+ toolCalling: true,
170
+ structuredOutputs: true,
171
+ jsonMode: true,
172
+ maxContextTokens: 128000,
173
+ maxOutputTokens: 16384,
174
+ costPer1kInput: 0.075,
175
+ costPer1kOutput: 0.150,
176
+ qualityScore: 92,
177
+ speedScore: 78,
178
+ release: '2025',
179
+ status: 'preview',
180
+ endpoints: ['chat', 'responses'],
181
+ }),
182
+ 'o1': model({
183
+ provider: 'openai',
184
+ family: 'o-series',
185
+ modalities: ['text', 'vision'],
186
+ streaming: true,
187
+ toolCalling: true,
188
+ structuredOutputs: true,
189
+ jsonMode: true,
190
+ reasoning: { efforts: ['low', 'medium', 'high'] },
191
+ maxContextTokens: 200000,
192
+ maxOutputTokens: 100000,
193
+ costPer1kInput: 0.015,
194
+ costPer1kOutput: 0.060,
195
+ qualityScore: 88,
196
+ speedScore: 60,
197
+ release: '2024',
198
+ status: 'stable',
199
+ endpoints: ['chat', 'responses'],
200
+ }),
201
+ 'o1-mini': model({
202
+ provider: 'openai',
203
+ family: 'o-series',
204
+ modalities: ['text'],
205
+ streaming: true,
206
+ toolCalling: true,
207
+ structuredOutputs: true,
208
+ jsonMode: true,
209
+ reasoning: { efforts: ['low', 'medium', 'high'] },
210
+ maxContextTokens: 128000,
211
+ maxOutputTokens: 65536,
212
+ costPer1kInput: 0.003,
213
+ costPer1kOutput: 0.012,
214
+ qualityScore: 82,
215
+ speedScore: 80,
216
+ release: '2024',
217
+ status: 'stable',
218
+ endpoints: ['chat', 'responses'],
219
+ }),
148
220
  'gpt-4.1': model({
149
221
  provider: 'openai',
150
222
  family: 'gpt-4.1',
@@ -325,6 +397,10 @@ export const KNOWN_MODELS = {
325
397
  endpoints: [],
326
398
  }),
327
399
  // Anthropic
400
+ 'claude-sonnet-5-0': claude('claude-sonnet-5.0', 3, 15, 96, 88, 64000, '2026', '2026-06', 200000),
401
+ 'claude-haiku-5-0': claude('claude-haiku-5.0', 1, 5, 88, 98, 64000, '2026', '2026-06', 200000),
402
+ 'claude-opus-4-8': claude('claude-opus-4.8', 5, 25, 99, 74, 128000, '2026', '2026-06', 1000000),
403
+ 'claude-fable-5-0': claude('claude-fable-5.0', 3, 15, 96, 92, 64000, '2026', '2026-06', 1000000),
328
404
  'claude-opus-4-7': claude('claude-opus-4.7', 5, 25, 99, 72, 128000, '2026', '2026-01', 1000000),
329
405
  'claude-opus-4-6': {
330
406
  ...claude('claude-opus-4.6', 5, 25, 98, 72, 128000, '2026', '2026-01', 1000000),
@@ -345,6 +421,8 @@ export const KNOWN_MODELS = {
345
421
  'claude-3-5-haiku-20241022': claude('claude-haiku-3.5', 0.8, 4, 78, 96, 8192, '2024-10-22', '2024-07'),
346
422
  'claude-3-haiku-20240307': claude('claude-haiku-3', 0.25, 1.25, 68, 94, 4096, '2024-03-07', '2023-08'),
347
423
  // Google Gemini
424
+ 'gemini-3.5-pro': gemini('gemini-3.5', 2000000, 1.25, 5, 98, 76, '2026', '2025-10', 'stable'),
425
+ 'gemini-3.5-flash': gemini('gemini-3.5', 1048576, 0.1, 0.4, 90, 96, '2026', '2025-10', 'stable'),
348
426
  'gemini-3.1-pro-preview': gemini('gemini-3.1', 1048576, 2, 12, 97, 76, '2026-02', '2025-01', 'preview'),
349
427
  'gemini-3.1-pro-preview-customtools': gemini('gemini-3.1', 1048576, 2, 12, 97, 74, '2026-02', '2025-01', 'preview'),
350
428
  'gemini-3.1-flash-lite-preview': gemini('gemini-3.1', 1048576, 0.1, 0.4, 86, 98, '2026', '2025-01', 'preview'),
@@ -385,6 +463,10 @@ export const KNOWN_MODELS = {
385
463
  'groq/meta-llama/llama-prompt-guard-2-22m': openAiCompatible('groq', 'prompt-guard', ['text'], 512, 512, 0.03, 0.03, 55, 100, '2026', 'preview'),
386
464
  'groq/meta-llama/llama-prompt-guard-2-86m': openAiCompatible('groq', 'prompt-guard', ['text'], 512, 512, 0.04, 0.04, 58, 100, '2026', 'preview'),
387
465
  // Mistral AI
466
+ 'mistral/ministral-3b': openAiCompatible('mistral', 'ministral-3b', ['text'], 128000, 8192, 0.04, 0.04, 75, 96, '2024-10', 'stable', 'Pricing varies by deployment; override costs in models.registry if needed.'),
467
+ 'mistral/ministral-8b': openAiCompatible('mistral', 'ministral-8b', ['text'], 128000, 8192, 0.1, 0.1, 80, 94, '2024-10', 'stable', 'Pricing varies by deployment; override costs in models.registry if needed.'),
468
+ 'mistral/pixtral-12b': openAiCompatible('mistral', 'pixtral-12b', ['text', 'vision'], 128000, 8192, 0.15, 0.15, 82, 92, '2024-09', 'stable', 'Pricing varies by deployment; override costs in models.registry if needed.'),
469
+ 'mistral/pixtral-large-2411': openAiCompatible('mistral', 'pixtral-large-2411', ['text', 'vision'], 128000, 8192, 2, 6, 88, 76, '2024-11', 'stable', 'Pricing varies by deployment; override costs in models.registry if needed.'),
388
470
  'mistral/mistral-medium-3-5': openAiCompatible('mistral', 'mistral-medium-3.5', ['text', 'vision', 'pdf'], 256000, 8192, 1.5, 7.5, 90, 78, '2026-04'),
389
471
  'mistral/mistral-small-2603': openAiCompatible('mistral', 'mistral-small-4', ['text', 'vision'], 256000, 8192, 0.2, 0.6, 82, 92, '2026-03', 'stable', 'Pricing varies by deployment; override costs in models.registry if needed.'),
390
472
  'mistral/mistral-large-2512': openAiCompatible('mistral', 'mistral-large-3', ['text', 'vision'], 256000, 8192, 2, 6, 88, 76, '2025-12', 'stable', 'Pricing varies by deployment; override costs in models.registry if needed.'),
@@ -393,6 +475,11 @@ export const KNOWN_MODELS = {
393
475
  'mistral/magistral-medium-2509': openAiCompatible('mistral', 'magistral-medium-1.2', ['text', 'vision'], 128000, 8192, 2, 5, 88, 70, '2025-09', 'stable', 'Reasoning model. Pricing varies by deployment; override costs in models.registry if needed.'),
394
476
  'mistral/mistral-moderation-2603': openAiCompatible('mistral', 'moderation', ['text'], 128000, 4096, 0, 0, 70, 92, '2026-03', 'stable', 'Moderation model, not intended for normal chat completions.'),
395
477
  // DeepSeek
478
+ 'deepseek/deepseek-v3': openAiCompatible('deepseek', 'deepseek-v3', ['text'], 64000, 8192, 0.14, 0.28, 88, 86, 'stable', 'stable', 'Pricing and limits vary by DeepSeek account; override costs in models.registry for exact estimates.'),
479
+ 'deepseek/deepseek-r1': {
480
+ ...openAiCompatible('deepseek', 'deepseek-r1', ['text'], 64000, 8192, 0.55, 2.19, 90, 72, 'stable', 'stable', 'Reasoning model. Override costs in models.registry for exact estimates.'),
481
+ reasoning: true,
482
+ },
396
483
  'deepseek/deepseek-chat': openAiCompatible('deepseek', 'deepseek-chat', ['text'], 64000, 8192, 0, 0, 82, 84, 'stable', 'stable', 'Pricing and limits vary by DeepSeek account; override costs in models.registry for exact estimates.'),
397
484
  'deepseek/deepseek-reasoner': {
398
485
  ...openAiCompatible('deepseek', 'deepseek-reasoner', ['text'], 64000, 8192, 0, 0, 86, 70, 'stable', 'stable', 'Reasoning model. Override costs in models.registry for exact estimates.'),
@@ -402,6 +489,8 @@ export const KNOWN_MODELS = {
402
489
  'lmstudio/local-model': openAiCompatible('lmstudio', 'local', ['text'], 8192, 4096, 0, 0, 65, 75, 'local', 'stable', 'Placeholder for LM Studio. Use an explicit lmstudio/<loaded-model> name for direct routing.'),
403
490
  'llamacpp/local-model': openAiCompatible('llamacpp', 'local', ['text'], 8192, 4096, 0, 0, 65, 75, 'local', 'stable', 'Placeholder for llama.cpp OpenAI-compatible server. Use an explicit llamacpp/<loaded-model> name for direct routing.'),
404
491
  // Cohere
492
+ 'cohere/command-r-plus': cohere('command-r-plus', ['text'], 128000, 4000, 84, 82, '2024'),
493
+ 'cohere/command-r': cohere('command-r', ['text'], 128000, 4000, 78, 92, '2024'),
405
494
  'cohere/command-a-03-2025': cohere('command-a', ['text'], 256000, 8000, 86, 80, '2025-03'),
406
495
  'cohere/command-a-reasoning-08-2025': cohere('command-a-reasoning', ['text'], 256000, 32000, 88, 68, '2025-08'),
407
496
  'cohere/command-a-vision-07-2025': cohere('command-a-vision', ['text', 'vision'], 128000, 8000, 84, 78, '2025-07'),
@@ -412,28 +501,29 @@ export const KNOWN_MODELS = {
412
501
  'cohere/tiny-aya-global': cohere('tiny-aya', ['text'], 8000, 8000, 62, 98, '2026'),
413
502
  };
414
503
  export const MODEL_ALIASES = {
415
- 'openai/best': 'gpt-5.5',
504
+ 'gpt-5.6': 'gpt-5.6-sol',
505
+ 'openai/best': 'gpt-5.6-sol',
416
506
  'openai/pro': 'gpt-5.5-pro',
417
- 'openai/balanced': 'gpt-5.4',
418
- 'openai/fast': 'gpt-5.4-mini',
419
- 'openai/cheap': 'gpt-5.4-nano',
420
- 'openai/coding': 'gpt-5.5',
507
+ 'openai/balanced': 'gpt-5.6-terra',
508
+ 'openai/fast': 'gpt-5.6-luna',
509
+ 'openai/cheap': 'gpt-5.6-luna',
510
+ 'openai/coding': 'gpt-5.6-sol',
421
511
  'openai/codex': 'gpt-5-codex',
422
- 'anthropic/best': 'claude-opus-4-7',
423
- 'anthropic/balanced': 'claude-sonnet-4-6',
424
- 'anthropic/fast': 'claude-haiku-4-5-20251001',
425
- 'google/best': 'gemini-3.1-pro-preview',
426
- 'google/balanced': 'gemini-2.5-pro',
427
- 'google/fast': 'gemini-3-flash-preview',
428
- 'google/cheap': 'gemini-2.5-flash-lite',
512
+ 'anthropic/best': 'claude-opus-4-8',
513
+ 'anthropic/balanced': 'claude-sonnet-5-0',
514
+ 'anthropic/fast': 'claude-haiku-5-0',
515
+ 'google/best': 'gemini-3.5-pro',
516
+ 'google/balanced': 'gemini-3.5-pro',
517
+ 'google/fast': 'gemini-3.5-flash',
518
+ 'google/cheap': 'gemini-3.5-flash',
429
519
  'groq/best': 'groq/openai/gpt-oss-120b',
430
520
  'groq/fast': 'groq/openai/gpt-oss-20b',
431
521
  'groq/cheap': 'groq/llama-3.1-8b-instant',
432
522
  'groq/compound': 'groq/groq/compound',
433
- 'mistral/best': 'mistral/mistral-medium-3-5',
434
- 'mistral/balanced': 'mistral/mistral-large-2512',
435
- 'mistral/fast': 'mistral/mistral-small-2603',
436
- 'mistral/coding': 'mistral/devstral-2512',
523
+ 'mistral/best': 'mistral/pixtral-large-2411',
524
+ 'mistral/balanced': 'mistral/ministral-8b',
525
+ 'mistral/fast': 'mistral/ministral-3b',
526
+ 'mistral/coding': 'mistral/pixtral-12b',
437
527
  'mistral/mistral-small-4': 'mistral/mistral-small-2603',
438
528
  'mistral/mistral-large-3': 'mistral/mistral-large-2512',
439
529
  'mistral/devstral-2': 'mistral/devstral-2512',
@@ -444,6 +534,9 @@ export const MODEL_ALIASES = {
444
534
  'cohere/reasoning': 'cohere/command-a-reasoning-08-2025',
445
535
  'cohere/vision': 'cohere/command-a-vision-07-2025',
446
536
  'cohere/fast': 'cohere/command-r7b-12-2024',
537
+ 'claude-opus-4.8': 'claude-opus-4-8',
538
+ 'claude-fable-5.0': 'claude-fable-5-0',
539
+ 'claude-fable-5': 'claude-fable-5-0',
447
540
  'claude-opus-4.7': 'claude-opus-4-7',
448
541
  'claude-opus-4-7-latest': 'claude-opus-4-7',
449
542
  'claude-opus-4.6': 'claude-opus-4-6',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nexus-ai-pro",
3
- "version": "0.8.0",
3
+ "version": "0.8.1",
4
4
  "description": "The Universal AI Pipeline for Node.js - one package, every model, every modality, with guardrails built in",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -130,11 +130,19 @@
130
130
  "ai",
131
131
  "llm",
132
132
  "openai",
133
+ "gpt-5",
134
+ "gpt-5.6",
135
+ "openai-responses",
136
+ "reasoning-models",
133
137
  "anthropic",
134
138
  "claude",
135
139
  "ollama",
140
+ "ai-agents",
141
+ "model-router",
136
142
  "router",
137
143
  "streaming",
144
+ "function-calling",
145
+ "vision",
138
146
  "multi-model",
139
147
  "security",
140
148
  "typescript",
@@ -146,14 +154,12 @@
146
154
  "api-keys",
147
155
  "token-scanner",
148
156
  "credentials",
149
- "security",
150
157
  "github-security",
151
158
  "git-secrets",
152
159
  "pii",
153
160
  "prompt-injection",
154
161
  "ai-security",
155
162
  "llm-security",
156
- "typescript",
157
163
  "cli",
158
164
  "devtools"
159
165
  ],