claude-scionos 4.5.0 → 4.6.0
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.
- package/README.fr.md +4 -5
- package/README.md +4 -5
- package/package.json +1 -1
- package/src/proxy.js +23 -23
- package/src/routerlab.js +7 -14
package/README.fr.md
CHANGED
|
@@ -67,20 +67,19 @@ npx claude-scionos --strategy aws --no-prompt -p "Résume ce dépôt"
|
|
|
67
67
|
- `--service llm` bascule le lanceur vers `https://llm.routerlab.ch`
|
|
68
68
|
- `llm` est prévu pour un accès sur invitation
|
|
69
69
|
- les tokens enregistrés avec `auth login --service llm` sont stockés séparément du token RouterLab par défaut
|
|
70
|
-
- `llm` expose pour l'instant `claude`, `claude-gpt`, `claude-gpt-special`, `deepseek-v4-beta` et `claude-
|
|
71
|
-
- `routerlab` expose aussi `claude-gpt`, `
|
|
70
|
+
- `llm` expose pour l'instant `claude`, `claude-gpt`, `claude-gpt-special`, `deepseek-v4-beta` et `claude-glm-5.1`
|
|
71
|
+
- `routerlab` expose aussi `aws`, `claude-gpt`, `deepseek-v4-beta`, `claude-kimi-k2.6` et `claude-glm-5.1`
|
|
72
72
|
|
|
73
73
|
## Stratégies
|
|
74
74
|
|
|
75
75
|
- `default` : utilise Claude Code normalement sans proxy local
|
|
76
76
|
- `aws` : remappe les familles de modèles Claude vers les variantes Claude AWS de RouterLab
|
|
77
|
-
- `claude` : remappe les familles de modèles Claude sur `--service llm` vers les variantes Claude standard `claude-haiku-4-5-20251001`, `claude-sonnet-4-6` et `claude-opus-4-
|
|
77
|
+
- `claude` : remappe les familles de modèles Claude sur `--service llm` vers les variantes Claude standard `claude-haiku-4-5-20251001`, `claude-sonnet-4-6` et `claude-opus-4-7`
|
|
78
78
|
- `claude-gpt` : mappe les requêtes Claude vers la famille `claude-gpt`
|
|
79
79
|
les requêtes Opus sont mappées vers `claude-gpt-5.5`, les requêtes Sonnet vers `claude-gpt-5.4` et les requêtes Haiku vers `claude-gpt-5.4-mini`
|
|
80
80
|
- `claude-gpt-special` : sur `--service llm`, force toutes les requêtes vers `claude-gpt-5.4-sp`
|
|
81
|
-
- `deepseek-v4-beta` :
|
|
81
|
+
- `deepseek-v4-beta` : mappe les requêtes Claude vers `claude-deepseek-v4-pro` pour opus ou sonnet et `claude-deepseek-v4-flash` pour haiku
|
|
82
82
|
- `claude-kimi-k2.6` : force toutes les requêtes vers `claude-kimi-k2.6`
|
|
83
|
-
- `claude-minimax-m2.7` : force toutes les requêtes vers `claude-minimax-m2.7`
|
|
84
83
|
- `claude-glm-5.1` : force toutes les requêtes vers `claude-glm-5.1`
|
|
85
84
|
|
|
86
85
|
Utilise `--list-strategies` pour voir les stratégies disponibles pour le service choisi et leur disponibilité réelle quand un token est disponible.
|
package/README.md
CHANGED
|
@@ -67,20 +67,19 @@ npx claude-scionos --strategy aws --no-prompt -p "Summarize this repo"
|
|
|
67
67
|
- `--service llm` switches the launcher to `https://llm.routerlab.ch`
|
|
68
68
|
- `llm` is intended for invitation-only access
|
|
69
69
|
- Tokens stored with `auth login --service llm` are kept separate from the default RouterLab token
|
|
70
|
-
- `llm` currently exposes `claude`, `claude-gpt`, `claude-gpt-special`, `deepseek-v4-beta`, and `claude-
|
|
71
|
-
- `routerlab` also exposes `claude-gpt`, `
|
|
70
|
+
- `llm` currently exposes `claude`, `claude-gpt`, `claude-gpt-special`, `deepseek-v4-beta`, and `claude-glm-5.1`
|
|
71
|
+
- `routerlab` also exposes `aws`, `claude-gpt`, `deepseek-v4-beta`, `claude-kimi-k2.6`, and `claude-glm-5.1`
|
|
72
72
|
|
|
73
73
|
## Strategies
|
|
74
74
|
|
|
75
75
|
- `default`: use Claude Code normally without the local proxy
|
|
76
76
|
- `aws`: remap Claude model families to RouterLab AWS-backed Claude variants
|
|
77
|
-
- `claude`: remap Claude model families on `--service llm` to the standard Claude variants `claude-haiku-4-5-20251001`, `claude-sonnet-4-6`, and `claude-opus-4-
|
|
77
|
+
- `claude`: remap Claude model families on `--service llm` to the standard Claude variants `claude-haiku-4-5-20251001`, `claude-sonnet-4-6`, and `claude-opus-4-7`
|
|
78
78
|
- `claude-gpt`: map Claude requests to the `claude-gpt` family
|
|
79
79
|
Opus requests map to `claude-gpt-5.5`, Sonnet requests map to `claude-gpt-5.4`, and Haiku requests map to `claude-gpt-5.4-mini`
|
|
80
80
|
- `claude-gpt-special`: on `--service llm`, force all requests to `claude-gpt-5.4-sp`
|
|
81
|
-
- `deepseek-v4-beta`:
|
|
81
|
+
- `deepseek-v4-beta`: map Claude requests to `claude-deepseek-v4-pro` for opus or sonnet and `claude-deepseek-v4-flash` for haiku
|
|
82
82
|
- `claude-kimi-k2.6`: force all requests to `claude-kimi-k2.6`
|
|
83
|
-
- `claude-minimax-m2.7`: force all requests to `claude-minimax-m2.7`
|
|
84
83
|
- `claude-glm-5.1`: force all requests to `claude-glm-5.1`
|
|
85
84
|
|
|
86
85
|
Use `--list-strategies` to see the strategies available for the selected service and their live availability when a token is available.
|
package/package.json
CHANGED
package/src/proxy.js
CHANGED
|
@@ -130,17 +130,17 @@ function getPreferredClaudeGptModel(requestedModel = '') {
|
|
|
130
130
|
return 'claude-gpt-5.4';
|
|
131
131
|
}
|
|
132
132
|
|
|
133
|
-
function getPreferredClaudeModel(requestedModel = '') {
|
|
134
|
-
if (requestedModel.includes('haiku') || requestedModel.includes('mini')) {
|
|
135
|
-
return 'claude-haiku-4-5-20251001';
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
if (requestedModel.includes('opus')) {
|
|
139
|
-
return 'claude-opus-4-
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
return 'claude-sonnet-4-6';
|
|
143
|
-
}
|
|
133
|
+
function getPreferredClaudeModel(requestedModel = '') {
|
|
134
|
+
if (requestedModel.includes('haiku') || requestedModel.includes('mini')) {
|
|
135
|
+
return 'claude-haiku-4-5-20251001';
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
if (requestedModel.includes('opus')) {
|
|
139
|
+
return 'claude-opus-4-7';
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
return 'claude-sonnet-4-6';
|
|
143
|
+
}
|
|
144
144
|
|
|
145
145
|
function getPreferredDeepseekV4Model(requestedModel = '') {
|
|
146
146
|
if (requestedModel.includes('opus') || requestedModel.includes('sonnet')) {
|
|
@@ -161,15 +161,15 @@ function resolveMappedModel(targetModel, requestedModel = '', availableModels =
|
|
|
161
161
|
return preferredModel;
|
|
162
162
|
}
|
|
163
163
|
|
|
164
|
-
if (availableClaudeModels.includes(preferredModel)) {
|
|
165
|
-
return preferredModel;
|
|
166
|
-
}
|
|
167
|
-
|
|
168
|
-
return (
|
|
169
|
-
availableClaudeModels.find((model) => model === 'claude-sonnet-4-6')
|
|
170
|
-
?? availableClaudeModels[0]
|
|
171
|
-
?? preferredModel
|
|
172
|
-
);
|
|
164
|
+
if (availableClaudeModels.includes(preferredModel)) {
|
|
165
|
+
return preferredModel;
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
return (
|
|
169
|
+
availableClaudeModels.find((model) => model === 'claude-sonnet-4-6')
|
|
170
|
+
?? availableClaudeModels[0]
|
|
171
|
+
?? preferredModel
|
|
172
|
+
);
|
|
173
173
|
}
|
|
174
174
|
|
|
175
175
|
if (targetModel === 'claude-gpt-special') {
|
|
@@ -226,9 +226,9 @@ function resolveMappedModel(targetModel, requestedModel = '', availableModels =
|
|
|
226
226
|
return 'aws-claude-haiku-4-5-20251001';
|
|
227
227
|
}
|
|
228
228
|
|
|
229
|
-
if (requestedModel.includes('opus')) {
|
|
230
|
-
return 'aws-claude-opus-4-
|
|
231
|
-
}
|
|
229
|
+
if (requestedModel.includes('opus')) {
|
|
230
|
+
return 'aws-claude-opus-4-7';
|
|
231
|
+
}
|
|
232
232
|
|
|
233
233
|
return 'aws-claude-sonnet-4-6';
|
|
234
234
|
}
|
package/src/routerlab.js
CHANGED
|
@@ -15,7 +15,7 @@ const SERVICES = {
|
|
|
15
15
|
secureStorageAccount: 'routerlab-token',
|
|
16
16
|
secureStorageLabel: 'RouterLab Token',
|
|
17
17
|
secureStorageFileName: 'routerlab-token.secure.txt',
|
|
18
|
-
strategyValues: ['default', 'aws', 'claude-gpt', '
|
|
18
|
+
strategyValues: ['default', 'aws', 'claude-gpt', 'deepseek-v4-beta', 'claude-kimi-k2.6', 'claude-glm-5.1'],
|
|
19
19
|
},
|
|
20
20
|
llm: {
|
|
21
21
|
value: 'llm',
|
|
@@ -28,7 +28,7 @@ const SERVICES = {
|
|
|
28
28
|
secureStorageAccount: 'routerlab-llm-token',
|
|
29
29
|
secureStorageLabel: 'RouterLab LLM Token',
|
|
30
30
|
secureStorageFileName: 'routerlab-llm-token.secure.txt',
|
|
31
|
-
strategyValues: ['claude', 'claude-gpt', 'claude-gpt-special', 'deepseek-v4-beta', 'claude-
|
|
31
|
+
strategyValues: ['claude', 'claude-gpt', 'claude-gpt-special', 'deepseek-v4-beta', 'claude-glm-5.1'],
|
|
32
32
|
},
|
|
33
33
|
};
|
|
34
34
|
const DEFAULT_SERVICE = 'routerlab';
|
|
@@ -44,12 +44,12 @@ const SECURE_STORAGE_ACCOUNT = SERVICES[DEFAULT_SERVICE].secureStorageAccount;
|
|
|
44
44
|
const DEFAULT_CLAUDE_MODELS = [
|
|
45
45
|
'claude-haiku-4-5-20251001',
|
|
46
46
|
'claude-sonnet-4-6',
|
|
47
|
-
'claude-opus-4-
|
|
47
|
+
'claude-opus-4-7',
|
|
48
48
|
];
|
|
49
49
|
const AWS_CLAUDE_MODELS = [
|
|
50
50
|
'aws-claude-haiku-4-5-20251001',
|
|
51
51
|
'aws-claude-sonnet-4-6',
|
|
52
|
-
'aws-claude-opus-4-
|
|
52
|
+
'aws-claude-opus-4-7',
|
|
53
53
|
];
|
|
54
54
|
|
|
55
55
|
const STRATEGIES = [
|
|
@@ -57,7 +57,7 @@ const STRATEGIES = [
|
|
|
57
57
|
value: 'default',
|
|
58
58
|
name: 'Claude Native',
|
|
59
59
|
description: 'Uses Claude natively without a local proxy.',
|
|
60
|
-
selectionName: 'Claude Native
|
|
60
|
+
selectionName: 'Claude Native',
|
|
61
61
|
selectionDescription: 'Standard behavior. Claude decides which model to use.',
|
|
62
62
|
requiredModels: DEFAULT_CLAUDE_MODELS,
|
|
63
63
|
},
|
|
@@ -65,7 +65,7 @@ const STRATEGIES = [
|
|
|
65
65
|
value: 'aws',
|
|
66
66
|
name: 'Claude via AWS',
|
|
67
67
|
description: 'Maps Claude requests to AWS-backed Claude variants.',
|
|
68
|
-
selectionName: 'Claude via AWS (
|
|
68
|
+
selectionName: '💸 Claude via AWS (-50%)',
|
|
69
69
|
selectionDescription: 'Map models to aws-claude-haiku, aws-claude-sonnet, aws-claude-opus.',
|
|
70
70
|
requiredModels: AWS_CLAUDE_MODELS,
|
|
71
71
|
mappedModels: AWS_CLAUDE_MODELS,
|
|
@@ -88,7 +88,7 @@ const STRATEGIES = [
|
|
|
88
88
|
value: 'claude',
|
|
89
89
|
name: 'Claude',
|
|
90
90
|
description: 'Maps Claude requests to standard Claude variants via a local proxy.',
|
|
91
|
-
selectionName: 'Claude
|
|
91
|
+
selectionName: 'Claude',
|
|
92
92
|
selectionDescription: 'Map models to claude-haiku, claude-sonnet, claude-opus.',
|
|
93
93
|
requiredModels: DEFAULT_CLAUDE_MODELS,
|
|
94
94
|
mappedModels: DEFAULT_CLAUDE_MODELS,
|
|
@@ -132,13 +132,6 @@ const STRATEGIES = [
|
|
|
132
132
|
selectionDescription: 'Forces all requests to claude-kimi-k2.6.',
|
|
133
133
|
mappedModels: ['claude-kimi-k2.6'],
|
|
134
134
|
},
|
|
135
|
-
{
|
|
136
|
-
value: 'claude-minimax-m2.7',
|
|
137
|
-
name: 'MiniMax M2.7',
|
|
138
|
-
description: 'Forces all requests to claude-minimax-m2.7.',
|
|
139
|
-
selectionDescription: 'Forces all requests to claude-minimax-m2.7.',
|
|
140
|
-
mappedModels: ['claude-minimax-m2.7'],
|
|
141
|
-
},
|
|
142
135
|
{
|
|
143
136
|
value: 'claude-glm-5.1',
|
|
144
137
|
name: 'GLM-5.1',
|