scalemax 0.1.42 → 0.1.43

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.
@@ -23,6 +23,14 @@ const customModelOptionDescriptionKey = 'ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTI
23
23
  const fableModelId = 'fable-5';
24
24
  const fableModelName = 'Fable 5';
25
25
  const fableModelDescription = 'Fable 5 via ScaleMax';
26
+ // Claude's picker exposes ONE custom model slot (shared with Auto). fable-5 keeps
27
+ // it whenever the key has fable-5, so re-running `update` never silently moves an
28
+ // existing user onto a different model and price; fable-5.1 takes the slot only
29
+ // when it is the Fable model this key can reach. Either id stays callable
30
+ // explicitly (e.g. `/model fable-5.1`).
31
+ const fable51ModelId = 'fable-5.1';
32
+ const fable51ModelName = 'Fable 5.1';
33
+ const fable51ModelDescription = 'Fable 5.1 via ScaleMax';
26
34
  const autoModelName = 'Auto';
27
35
  const autoModelDescription = 'Auto via ScaleMax';
28
36
  const verificationTimeoutMs = 60_000;
@@ -43,6 +51,9 @@ const managedCustomModelValues = new Set([
43
51
  fableModelId,
44
52
  fableModelName,
45
53
  fableModelDescription,
54
+ fable51ModelId,
55
+ fable51ModelName,
56
+ fable51ModelDescription,
46
57
  AUTO_MODEL_ID,
47
58
  autoModelName,
48
59
  autoModelDescription
@@ -57,11 +68,11 @@ function helperCommand(home, platform) {
57
68
  function asRecord(value) {
58
69
  return value && typeof value === 'object' && !Array.isArray(value) ? value : {};
59
70
  }
71
+ function hasModelId(ctx, ...ids) {
72
+ return (ctx.models || []).some(model => ids.includes(String(model.id || '').trim().toLowerCase()));
73
+ }
60
74
  function hasFableModel(ctx) {
61
- return (ctx.models || []).some(model => {
62
- const id = String(model.id || '').trim().toLowerCase();
63
- return id === fableModelId || id === 'claude-fable-5';
64
- });
75
+ return hasModelId(ctx, fableModelId, 'claude-fable-5');
65
76
  }
66
77
  function hasAutoModel(ctx) {
67
78
  return modelIds(ctx).some(id => id.trim().toLowerCase() === AUTO_MODEL_ID);
@@ -74,6 +85,13 @@ function managedCustomModel(ctx) {
74
85
  description: fableModelDescription
75
86
  };
76
87
  }
88
+ if (hasModelId(ctx, fable51ModelId)) {
89
+ return {
90
+ option: fable51ModelId,
91
+ name: fable51ModelName,
92
+ description: fable51ModelDescription
93
+ };
94
+ }
77
95
  if (hasAutoModel(ctx)) {
78
96
  return {
79
97
  option: AUTO_MODEL_ID,
@@ -11,7 +11,7 @@ export function jsonConfig(client, apiKey, baseUrl, extra = {}) {
11
11
  }, null, 2) + '\n';
12
12
  }
13
13
  export function continueConfig(apiKey, baseUrl) {
14
- const models = ['gpt-5.6-sol', 'gpt-5.6-terra', 'gpt-5.5', 'gpt-5.4', 'gpt-5.4-mini', 'gpt-5.3-codex', 'codex-auto-review', 'deepseek-v4-flash'];
14
+ const models = ['gpt-6-astra', 'gpt-5.6-sol', 'gpt-5.6-terra', 'gpt-5.5', 'gpt-5.4', 'gpt-5.4-mini', 'gpt-5.3-codex', 'codex-auto-review', 'deepseek-v4-flash'];
15
15
  return JSON.stringify({
16
16
  models: models.map(model => ({
17
17
  title: model === 'deepseek-v4-flash' ? 'ScaleMax DeepSeek V4 Flash' : `ScaleMax ${model}`,
package/dist/utils/api.js CHANGED
@@ -18,7 +18,9 @@ export const MODEL_PROBE_ENOUGH_WORKING = 8;
18
18
  export const MODEL_PROBE_MAX_MODELS = 16;
19
19
  // Keep only aliases that are no longer offered. Direct GPT-5.6 Sol is an
20
20
  // active Codex model and must remain available to all generated clients.
21
- export const RETIRED_MODEL_IDS = new Set(['fable-5-ultra', 'gpt-5.6-luna']);
21
+ // gpt-5.6-luna was removed from this list: the API revived it 2026-08-14
22
+ // (shared/constants/retired-models.ts), so hiding it here hid a model on sale.
23
+ export const RETIRED_MODEL_IDS = new Set(['fable-5-ultra']);
22
24
  export function isRetiredModelId(id) {
23
25
  return RETIRED_MODEL_IDS.has(id.trim());
24
26
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "scalemax",
3
- "version": "0.1.42",
3
+ "version": "0.1.43",
4
4
  "description": "Universal ScaleMax installer for AI coding clients",
5
5
  "type": "module",
6
6
  "bin": {