@s-berdia/opencode-router 0.0.0-stage → 1.0.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.
- package/LICENSE +21 -0
- package/README.md +202 -2
- package/USAGE.md +513 -0
- package/dist/bin.js +2951 -0
- package/dist/bin.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +2010 -0
- package/dist/index.js.map +1 -0
- package/model-scores.json +181 -0
- package/package.json +71 -4
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$comment": "Committed default score table for opencode-router. Safe to edit; user config (router.config.json) overrides these values.",
|
|
3
|
+
"version": 1,
|
|
4
|
+
"updated": "2026-10-18",
|
|
5
|
+
"roles": {
|
|
6
|
+
"plan": {
|
|
7
|
+
"weights": { "intelligence": 0.65, "speed": 0.1, "endurance": 0.25 },
|
|
8
|
+
"variant": "high",
|
|
9
|
+
"chainDepth": 4,
|
|
10
|
+
"requires": { "toolCall": true, "minContext": 200000 },
|
|
11
|
+
"diversifyFamily": true
|
|
12
|
+
},
|
|
13
|
+
"build": {
|
|
14
|
+
"weights": { "intelligence": 0.4, "speed": 0.25, "endurance": 0.35 },
|
|
15
|
+
"variant": "medium",
|
|
16
|
+
"chainDepth": 4,
|
|
17
|
+
"requires": { "toolCall": true, "minContext": 200000 },
|
|
18
|
+
"diversifyFamily": true
|
|
19
|
+
},
|
|
20
|
+
"general": {
|
|
21
|
+
"weights": { "intelligence": 0.35, "speed": 0.25, "endurance": 0.4 },
|
|
22
|
+
"variant": "medium",
|
|
23
|
+
"chainDepth": 4,
|
|
24
|
+
"requires": { "toolCall": true, "minContext": 200000 },
|
|
25
|
+
"diversifyFamily": true
|
|
26
|
+
},
|
|
27
|
+
"explore": {
|
|
28
|
+
"weights": { "intelligence": 0.15, "speed": 0.45, "endurance": 0.4 },
|
|
29
|
+
"variant": "low",
|
|
30
|
+
"chainDepth": 4,
|
|
31
|
+
"requires": { "toolCall": true, "minContext": 128000 },
|
|
32
|
+
"preferFree": true
|
|
33
|
+
},
|
|
34
|
+
"small_model": {
|
|
35
|
+
"weights": { "intelligence": 0.05, "speed": 0.55, "endurance": 0.4 },
|
|
36
|
+
"variant": "low",
|
|
37
|
+
"chainDepth": 3,
|
|
38
|
+
"requires": { "toolCall": true, "minContext": 100000 },
|
|
39
|
+
"preferFree": true
|
|
40
|
+
},
|
|
41
|
+
"title": {
|
|
42
|
+
"weights": { "intelligence": 0.05, "speed": 0.55, "endurance": 0.4 },
|
|
43
|
+
"variant": "low",
|
|
44
|
+
"chainDepth": 3,
|
|
45
|
+
"requires": { "toolCall": true, "minContext": 100000 },
|
|
46
|
+
"preferFree": true
|
|
47
|
+
},
|
|
48
|
+
"summary": {
|
|
49
|
+
"weights": { "intelligence": 0.3, "speed": 0.3, "endurance": 0.4 },
|
|
50
|
+
"variant": "low",
|
|
51
|
+
"chainDepth": 3,
|
|
52
|
+
"requires": { "toolCall": true, "minContext": 200000 },
|
|
53
|
+
"preferFree": true
|
|
54
|
+
},
|
|
55
|
+
"compaction": {
|
|
56
|
+
"weights": { "intelligence": 0.3, "speed": 0.2, "endurance": 0.5 },
|
|
57
|
+
"variant": "none",
|
|
58
|
+
"chainDepth": 3,
|
|
59
|
+
"requires": { "toolCall": true, "minContext": 1000000 },
|
|
60
|
+
"preferFree": true
|
|
61
|
+
}
|
|
62
|
+
},
|
|
63
|
+
"models": {
|
|
64
|
+
"opencode-go/gemini-4-argon-contributor": { "intelligence": 95, "speed": 25 },
|
|
65
|
+
"opencode-go/kimi-k3": { "intelligence": 93, "speed": 20 },
|
|
66
|
+
"opencode-go/qwen3.8-max": { "intelligence": 92, "speed": 35 },
|
|
67
|
+
"opencode-go/grok-4.7": { "intelligence": 91, "speed": 40 },
|
|
68
|
+
"opencode-go/deepseek-v4-pro": { "intelligence": 90, "speed": 30 },
|
|
69
|
+
"opencode-go/glm-5.3": { "intelligence": 90, "speed": 45 },
|
|
70
|
+
"opencode-go/glm-5.2": { "intelligence": 88, "speed": 45 },
|
|
71
|
+
"opencode-go/step-5-preview": { "intelligence": 87, "speed": 40 },
|
|
72
|
+
"opencode-go/qwen3.7-plus": { "intelligence": 86, "speed": 45 },
|
|
73
|
+
"opencode-go/kimi-k2.7-code": { "intelligence": 85, "speed": 50 },
|
|
74
|
+
"opencode-go/gpt-6-luna": { "intelligence": 85, "speed": 55 },
|
|
75
|
+
"opencode-go/gpt-5.6-luna": { "intelligence": 84, "speed": 55 },
|
|
76
|
+
"opencode-go/minimax-m3": { "intelligence": 84, "speed": 55 },
|
|
77
|
+
"opencode-go/hy4-preview": { "intelligence": 82, "speed": 40 },
|
|
78
|
+
"opencode-go/qwen3.8-flash": { "intelligence": 80, "speed": 70 },
|
|
79
|
+
"opencode-go/deepseek-v4.1-flash": { "intelligence": 80, "speed": 65 },
|
|
80
|
+
"opencode-go/space-bunny": { "intelligence": 79, "speed": 60 },
|
|
81
|
+
"opencode-go/glm-5.3-flash": { "intelligence": 78, "speed": 72 },
|
|
82
|
+
"opencode-go/mimo-v2.6-pro": { "intelligence": 78, "speed": 58 },
|
|
83
|
+
"opencode-go/muse-spark-1.3-contributor": { "intelligence": 77, "speed": 62 },
|
|
84
|
+
"opencode-go/mimo-v2.5-pro": { "intelligence": 76, "speed": 58 },
|
|
85
|
+
"opencode-go/longcat-2.0": { "intelligence": 76, "speed": 55 },
|
|
86
|
+
"opencode-go/muse-spark-1.2-contributor": { "intelligence": 75, "speed": 62 },
|
|
87
|
+
"opencode-go/longcat-2.5-preview-free": { "intelligence": 75, "speed": 60 },
|
|
88
|
+
"opencode-go/hy3": { "intelligence": 74, "speed": 60 },
|
|
89
|
+
"opencode-go/claude-haiku-5-5": { "intelligence": 74, "speed": 78 },
|
|
90
|
+
"opencode-go/mimo-v2.6-flash": { "intelligence": 73, "speed": 75 },
|
|
91
|
+
"opencode-go/mimo-v2.5": { "intelligence": 72, "speed": 72 },
|
|
92
|
+
"opencode-go/beam-free": { "intelligence": 72, "speed": 80 },
|
|
93
|
+
|
|
94
|
+
"opencode/deepseek-v4.1-flash-free": { "intelligence": 80, "speed": 65 },
|
|
95
|
+
"opencode/space-bunny-free": { "intelligence": 79, "speed": 60 },
|
|
96
|
+
"opencode/glm-5.3-flash-free": { "intelligence": 78, "speed": 72 },
|
|
97
|
+
"opencode/longcat-2.5-preview-free": { "intelligence": 75, "speed": 60 },
|
|
98
|
+
"opencode/nemotron-3-ultra-free": { "intelligence": 74, "speed": 62 },
|
|
99
|
+
"opencode/mimo-v2.6-flash-free": { "intelligence": 73, "speed": 75 },
|
|
100
|
+
"opencode/beam-free": { "intelligence": 72, "speed": 80 },
|
|
101
|
+
"opencode/nemotron-3.5-super-vl-free": { "intelligence": 72, "speed": 70 },
|
|
102
|
+
"opencode/nemotron-3.5-lightning-free": { "intelligence": 68, "speed": 88 },
|
|
103
|
+
"opencode/big-pickle": { "intelligence": 66, "speed": 70 }
|
|
104
|
+
},
|
|
105
|
+
"heuristics": {
|
|
106
|
+
"patterns": [
|
|
107
|
+
{ "match": "gemini-4-argon", "intelligence": 95, "speed": 25 },
|
|
108
|
+
{ "match": "kimi-k3", "intelligence": 93, "speed": 20 },
|
|
109
|
+
{ "match": "qwen3.8-max", "intelligence": 92, "speed": 35 },
|
|
110
|
+
{ "match": "opus", "intelligence": 94, "speed": 30 },
|
|
111
|
+
{ "match": "grok", "intelligence": 91, "speed": 40 },
|
|
112
|
+
{ "match": "deepseek-v4-pro", "intelligence": 90, "speed": 30 },
|
|
113
|
+
{ "match": "sonnet", "intelligence": 88, "speed": 50 },
|
|
114
|
+
{ "match": "step-5", "intelligence": 87, "speed": 40 },
|
|
115
|
+
{ "match": "gpt-6", "intelligence": 85, "speed": 55 },
|
|
116
|
+
{ "match": "kimi", "intelligence": 85, "speed": 45 },
|
|
117
|
+
{ "match": "gpt-5", "intelligence": 84, "speed": 55 },
|
|
118
|
+
{ "match": "minimax", "intelligence": 84, "speed": 55 },
|
|
119
|
+
{ "match": "hy4", "intelligence": 82, "speed": 40 },
|
|
120
|
+
{ "match": "claude", "intelligence": 82, "speed": 60 },
|
|
121
|
+
{ "match": "gpt", "intelligence": 82, "speed": 55 },
|
|
122
|
+
{ "match": "qwen", "intelligence": 80, "speed": 55 },
|
|
123
|
+
{ "match": "deepseek", "intelligence": 80, "speed": 65 },
|
|
124
|
+
{ "match": "glm", "intelligence": 80, "speed": 55 },
|
|
125
|
+
{ "match": "space-bunny", "intelligence": 79, "speed": 60 },
|
|
126
|
+
{ "match": "muse", "intelligence": 77, "speed": 62 },
|
|
127
|
+
{ "match": "longcat", "intelligence": 76, "speed": 58 },
|
|
128
|
+
{ "match": "hy3", "intelligence": 74, "speed": 60 },
|
|
129
|
+
{ "match": "haiku", "intelligence": 74, "speed": 78 },
|
|
130
|
+
{ "match": "mimo", "intelligence": 74, "speed": 72 },
|
|
131
|
+
{ "match": "nemotron", "intelligence": 72, "speed": 75 },
|
|
132
|
+
{ "match": "big-pickle", "intelligence": 66, "speed": 70 },
|
|
133
|
+
{ "match": "-max", "intelligence": 90, "speed": 35 },
|
|
134
|
+
{ "match": "-pro", "intelligence": 88, "speed": 42 },
|
|
135
|
+
{ "match": "-flash", "intelligence": 78, "speed": 74 },
|
|
136
|
+
{ "match": "-mini", "intelligence": 74, "speed": 80 },
|
|
137
|
+
{ "match": "-lite", "intelligence": 70, "speed": 84 },
|
|
138
|
+
{ "match": "-free", "intelligence": 72, "speed": 70 },
|
|
139
|
+
{ "match": "contributor", "intelligence": 74, "speed": 62 }
|
|
140
|
+
],
|
|
141
|
+
"defaultIntelligence": 60,
|
|
142
|
+
"defaultSpeed": 60,
|
|
143
|
+
"unvettedPenalty": 8
|
|
144
|
+
},
|
|
145
|
+
"classPreference": {
|
|
146
|
+
"go": { "subscription": 0, "paid": -6, "free": -12 },
|
|
147
|
+
"go-plus": { "subscription": 0, "paid": -6, "free": -12 },
|
|
148
|
+
"free": { "subscription": 0, "paid": 0, "free": 0 }
|
|
149
|
+
},
|
|
150
|
+
"monthlyCaps": {
|
|
151
|
+
"opencode-go/longcat-2.5-preview-free": { "go": null, "goPlus": null },
|
|
152
|
+
"opencode-go/beam-free": { "go": null, "goPlus": null },
|
|
153
|
+
"opencode-go/deepseek-v4.1-flash": { "go": 80, "goPlus": 160 },
|
|
154
|
+
"opencode-go/longcat-2.0": { "go": 60, "goPlus": 240 },
|
|
155
|
+
"opencode-go/hy3": { "go": 60, "goPlus": 240 },
|
|
156
|
+
"opencode-go/step-5-preview": { "go": 60, "goPlus": 240 },
|
|
157
|
+
"opencode-go/gemini-4-argon-contributor": { "go": 60, "goPlus": 240 },
|
|
158
|
+
"opencode-go/glm-5.3-flash": { "go": 60, "goPlus": 180 },
|
|
159
|
+
"opencode-go/glm-5.2": { "go": 60, "goPlus": 180 },
|
|
160
|
+
"opencode-go/kimi-k2.7-code": { "go": 60, "goPlus": 180 },
|
|
161
|
+
"opencode-go/minimax-m3": { "go": 60, "goPlus": 180 },
|
|
162
|
+
"opencode-go/qwen3.7-plus": { "go": 60, "goPlus": 180 },
|
|
163
|
+
"opencode-go/mimo-v2.6-flash": { "go": 60, "goPlus": 120 },
|
|
164
|
+
"opencode-go/mimo-v2.5": { "go": 60, "goPlus": 120 },
|
|
165
|
+
"opencode-go/muse-spark-1.3-contributor": { "go": 60, "goPlus": 120 },
|
|
166
|
+
"opencode-go/muse-spark-1.2-contributor": { "go": 60, "goPlus": 120 },
|
|
167
|
+
"opencode-go/hy4-preview": { "go": 30, "goPlus": 120 },
|
|
168
|
+
"opencode-go/space-bunny": { "go": 30, "goPlus": 120 },
|
|
169
|
+
"opencode-go/qwen3.8-flash": { "go": 30, "goPlus": 90 },
|
|
170
|
+
"opencode-go/glm-5.3": { "go": 15, "goPlus": 120 },
|
|
171
|
+
"opencode-go/kimi-k3": { "go": 15, "goPlus": 60 },
|
|
172
|
+
"opencode-go/mimo-v2.6-pro": { "go": 15, "goPlus": 60 },
|
|
173
|
+
"opencode-go/mimo-v2.5-pro": { "go": 15, "goPlus": 60 },
|
|
174
|
+
"opencode-go/qwen3.8-max": { "go": 15, "goPlus": 60 },
|
|
175
|
+
"opencode-go/deepseek-v4-pro": { "go": 15, "goPlus": 60 },
|
|
176
|
+
"opencode-go/grok-4.7": { "go": 15, "goPlus": 60 },
|
|
177
|
+
"opencode-go/gpt-6-luna": { "go": 15, "goPlus": 60 },
|
|
178
|
+
"opencode-go/gpt-5.6-luna": { "go": 15, "goPlus": 60 },
|
|
179
|
+
"opencode-go/claude-haiku-5-5": { "go": 15, "goPlus": 60 }
|
|
180
|
+
}
|
|
181
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,73 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@s-berdia/opencode-router",
|
|
3
|
-
"version": "
|
|
4
|
-
"
|
|
5
|
-
"
|
|
6
|
-
|
|
3
|
+
"version": "1.0.1",
|
|
4
|
+
"description": "Dynamic model routing for OpenCode Go / Go Plus / Free. Picks the best value-for-money model per agent (plan, build, general, explore) and rotates automatically so a 24/7 build plan never runs out.",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"author": "s-berdia",
|
|
8
|
+
"repository": {
|
|
9
|
+
"type": "git",
|
|
10
|
+
"url": "git+https://github.com/s-berdia/Opencode_router.git"
|
|
11
|
+
},
|
|
12
|
+
"homepage": "https://github.com/s-berdia/Opencode_router#readme",
|
|
13
|
+
"bugs": {
|
|
14
|
+
"url": "https://github.com/s-berdia/Opencode_router/issues"
|
|
15
|
+
},
|
|
16
|
+
"keywords": [
|
|
17
|
+
"opencode",
|
|
18
|
+
"opencode-plugin",
|
|
19
|
+
"router",
|
|
20
|
+
"model-routing",
|
|
21
|
+
"llm"
|
|
22
|
+
],
|
|
23
|
+
"main": "./dist/index.js",
|
|
24
|
+
"types": "./dist/index.d.ts",
|
|
25
|
+
"exports": {
|
|
26
|
+
".": {
|
|
27
|
+
"types": "./dist/index.d.ts",
|
|
28
|
+
"import": "./dist/index.js"
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
"bin": {
|
|
32
|
+
"opencode-router": "dist/bin.js"
|
|
33
|
+
},
|
|
34
|
+
"files": [
|
|
35
|
+
"dist",
|
|
36
|
+
"model-scores.json",
|
|
37
|
+
"README.md",
|
|
38
|
+
"USAGE.md",
|
|
39
|
+
"LICENSE"
|
|
40
|
+
],
|
|
41
|
+
"publishConfig": {
|
|
42
|
+
"access": "public"
|
|
43
|
+
},
|
|
44
|
+
"scripts": {
|
|
45
|
+
"build": "tsup",
|
|
46
|
+
"dev": "tsup --watch",
|
|
47
|
+
"typecheck": "tsc --noEmit",
|
|
48
|
+
"test": "vitest run",
|
|
49
|
+
"test:watch": "vitest",
|
|
50
|
+
"prepublishOnly": "npm run typecheck && npm test && npm run build",
|
|
51
|
+
"refresh": "node dist/bin.js refresh",
|
|
52
|
+
"status": "node dist/bin.js status"
|
|
53
|
+
},
|
|
54
|
+
"peerDependencies": {
|
|
55
|
+
"@opencode-ai/plugin": ">=1.0.0"
|
|
56
|
+
},
|
|
57
|
+
"peerDependenciesMeta": {
|
|
58
|
+
"@opencode-ai/plugin": {
|
|
59
|
+
"optional": true
|
|
60
|
+
}
|
|
61
|
+
},
|
|
62
|
+
"devDependencies": {
|
|
63
|
+
"@opencode-ai/plugin": "^1.18.23",
|
|
64
|
+
"@types/node": "^22.10.2",
|
|
65
|
+
"jsonc-parser": "^3.3.1",
|
|
66
|
+
"tsup": "^8.3.5",
|
|
67
|
+
"typescript": "^5.7.2",
|
|
68
|
+
"vitest": "^2.1.8"
|
|
69
|
+
},
|
|
70
|
+
"engines": {
|
|
71
|
+
"node": ">=20"
|
|
72
|
+
}
|
|
73
|
+
}
|