claude-scionos 4.3.1 → 4.3.3
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 +3 -1
- package/README.md +3 -1
- package/index.js +0 -4
- package/package.json +1 -1
- package/src/proxy.js +33 -0
- package/src/routerlab.js +10 -1
package/README.fr.md
CHANGED
|
@@ -54,6 +54,7 @@ npx claude-scionos auth login
|
|
|
54
54
|
npx claude-scionos auth login --service llm
|
|
55
55
|
npx claude-scionos auth test
|
|
56
56
|
npx claude-scionos --strategy aws
|
|
57
|
+
npx claude-scionos --service llm --strategy claude
|
|
57
58
|
npx claude-scionos --service llm --strategy claude-gpt
|
|
58
59
|
npx claude-scionos --strategy aws --no-prompt -p "Résume ce dépôt"
|
|
59
60
|
```
|
|
@@ -64,13 +65,14 @@ npx claude-scionos --strategy aws --no-prompt -p "Résume ce dépôt"
|
|
|
64
65
|
- `--service llm` bascule le lanceur vers `https://llm.routerlab.ch`
|
|
65
66
|
- `llm` est prévu pour un accès sur invitation
|
|
66
67
|
- les tokens enregistrés avec `auth login --service llm` sont stockés séparément du token RouterLab par défaut
|
|
67
|
-
- `llm` expose pour l'instant `claude-gpt`, `claude-qwen3.6-plus`, `claude-minimax-m2.7` et `claude-glm-5.1`
|
|
68
|
+
- `llm` expose pour l'instant `claude`, `claude-gpt`, `claude-qwen3.6-plus`, `claude-minimax-m2.7` et `claude-glm-5.1`
|
|
68
69
|
- `routerlab` expose aussi `claude-gpt`, `claude-minimax-m2.7` et `claude-glm-5.1`
|
|
69
70
|
|
|
70
71
|
## Stratégies
|
|
71
72
|
|
|
72
73
|
- `default` : utilise Claude Code normalement sans proxy local
|
|
73
74
|
- `aws` : remappe les familles de modèles Claude vers les variantes Claude AWS de RouterLab
|
|
75
|
+
- `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-6`
|
|
74
76
|
- `claude-gpt` : mappe les requêtes Claude vers la famille `claude-gpt`
|
|
75
77
|
`claude-gpt-5.5 ==> claude-opus-4.7`, `claude-gpt-5.4 ==> claude-sonnet-4.6`, `claude-gpt-5.4-mini ==> claude-gpt-5.4-mini`
|
|
76
78
|
- `claude-qwen3.6-plus` : force toutes les requêtes vers `claude-qwen3.6-plus`
|
package/README.md
CHANGED
|
@@ -54,6 +54,7 @@ npx claude-scionos auth login
|
|
|
54
54
|
npx claude-scionos auth login --service llm
|
|
55
55
|
npx claude-scionos auth test
|
|
56
56
|
npx claude-scionos --strategy aws
|
|
57
|
+
npx claude-scionos --service llm --strategy claude
|
|
57
58
|
npx claude-scionos --service llm --strategy claude-gpt
|
|
58
59
|
npx claude-scionos --strategy aws --no-prompt -p "Summarize this repo"
|
|
59
60
|
```
|
|
@@ -64,13 +65,14 @@ npx claude-scionos --strategy aws --no-prompt -p "Summarize this repo"
|
|
|
64
65
|
- `--service llm` switches the launcher to `https://llm.routerlab.ch`
|
|
65
66
|
- `llm` is intended for invitation-only access
|
|
66
67
|
- Tokens stored with `auth login --service llm` are kept separate from the default RouterLab token
|
|
67
|
-
- `llm` currently exposes `claude-gpt`, `claude-qwen3.6-plus`, `claude-minimax-m2.7`, and `claude-glm-5.1`
|
|
68
|
+
- `llm` currently exposes `claude`, `claude-gpt`, `claude-qwen3.6-plus`, `claude-minimax-m2.7`, and `claude-glm-5.1`
|
|
68
69
|
- `routerlab` also exposes `claude-gpt`, `claude-minimax-m2.7`, and `claude-glm-5.1`
|
|
69
70
|
|
|
70
71
|
## Strategies
|
|
71
72
|
|
|
72
73
|
- `default`: use Claude Code normally without the local proxy
|
|
73
74
|
- `aws`: remap Claude model families to RouterLab AWS-backed Claude variants
|
|
75
|
+
- `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-6`
|
|
74
76
|
- `claude-gpt`: map Claude requests to the `claude-gpt` family
|
|
75
77
|
`claude-gpt-5.5 ==> claude-opus-4.7`, `claude-gpt-5.4 ==> claude-sonnet-4.6`, `claude-gpt-5.4-mini ==> claude-gpt-5.4-mini`
|
|
76
78
|
- `claude-qwen3.6-plus`: force all requests to `claude-qwen3.6-plus`
|
package/index.js
CHANGED
|
@@ -163,10 +163,6 @@ function getStrategyMenuLabel(strategyValue) {
|
|
|
163
163
|
.concat(getServiceStrategies('llm'))
|
|
164
164
|
.find((entry) => entry.value === strategyValue || entry.aliases?.includes(strategyValue));
|
|
165
165
|
|
|
166
|
-
if (strategy?.value === 'aws') {
|
|
167
|
-
return '💰 aws 50%';
|
|
168
|
-
}
|
|
169
|
-
|
|
170
166
|
return strategy?.selectionName || strategy?.name || strategyValue;
|
|
171
167
|
}
|
|
172
168
|
|
package/package.json
CHANGED
package/src/proxy.js
CHANGED
|
@@ -64,7 +64,40 @@ function getPreferredClaudeGptModel(requestedModel = '') {
|
|
|
64
64
|
return 'claude-gpt-5.4';
|
|
65
65
|
}
|
|
66
66
|
|
|
67
|
+
function getPreferredClaudeModel(requestedModel = '') {
|
|
68
|
+
if (requestedModel.includes('haiku') || requestedModel.includes('mini')) {
|
|
69
|
+
return 'claude-haiku-4-5-20251001';
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
if (requestedModel.includes('opus')) {
|
|
73
|
+
return 'claude-opus-4-6';
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
return 'claude-sonnet-4-6';
|
|
77
|
+
}
|
|
78
|
+
|
|
67
79
|
function resolveMappedModel(targetModel, requestedModel = '', availableModels = []) {
|
|
80
|
+
if (targetModel === 'claude') {
|
|
81
|
+
const preferredModel = getPreferredClaudeModel(requestedModel);
|
|
82
|
+
const availableClaudeModels = Array.isArray(availableModels)
|
|
83
|
+
? availableModels.filter((model) => model.startsWith('claude-') && !model.startsWith('claude-gpt-'))
|
|
84
|
+
: [];
|
|
85
|
+
|
|
86
|
+
if (availableClaudeModels.length === 0) {
|
|
87
|
+
return preferredModel;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
if (availableClaudeModels.includes(preferredModel)) {
|
|
91
|
+
return preferredModel;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
return (
|
|
95
|
+
availableClaudeModels.find((model) => model === 'claude-sonnet-4-6')
|
|
96
|
+
?? availableClaudeModels[0]
|
|
97
|
+
?? preferredModel
|
|
98
|
+
);
|
|
99
|
+
}
|
|
100
|
+
|
|
68
101
|
if (targetModel !== 'aws') {
|
|
69
102
|
if (targetModel !== 'claude-gpt') {
|
|
70
103
|
return targetModel;
|
package/src/routerlab.js
CHANGED
|
@@ -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-gpt', 'claude-qwen3.6-plus', 'claude-minimax-m2.7', 'claude-glm-5.1'],
|
|
31
|
+
strategyValues: ['claude', 'claude-gpt', 'claude-qwen3.6-plus', 'claude-minimax-m2.7', 'claude-glm-5.1'],
|
|
32
32
|
},
|
|
33
33
|
};
|
|
34
34
|
const DEFAULT_SERVICE = 'routerlab';
|
|
@@ -84,6 +84,15 @@ const STRATEGIES = [
|
|
|
84
84
|
selectionDescription: 'Forces all requests to claude-minimax-m2.5.',
|
|
85
85
|
mappedModels: ['claude-minimax-m2.5'],
|
|
86
86
|
},
|
|
87
|
+
{
|
|
88
|
+
value: 'claude',
|
|
89
|
+
name: 'Claude',
|
|
90
|
+
description: 'Maps Claude requests to standard Claude variants via a local proxy.',
|
|
91
|
+
selectionName: 'Claude (Opus 4.6)',
|
|
92
|
+
selectionDescription: 'Map models to claude-haiku, claude-sonnet, claude-opus.',
|
|
93
|
+
requiredModels: DEFAULT_CLAUDE_MODELS,
|
|
94
|
+
mappedModels: DEFAULT_CLAUDE_MODELS,
|
|
95
|
+
},
|
|
87
96
|
{
|
|
88
97
|
value: 'claude-gpt',
|
|
89
98
|
name: 'OpenAI GPT',
|