opencode-blablador 0.1.2 → 0.1.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.md +9 -5
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +49 -16
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -54,9 +54,11 @@ the credential with `/connect` re-runs discovery without a restart.
|
|
|
54
54
|
|
|
55
55
|
## Use
|
|
56
56
|
|
|
57
|
-
Select **Blablador** in the model picker.
|
|
58
|
-
|
|
59
|
-
|
|
57
|
+
Select **Blablador** in the model picker. Rows read `<deployment> (<alias>)` so the aliases of one
|
|
58
|
+
model sort together: `alias-large` and `alias-qwen3.8-flash-next` both serve
|
|
59
|
+
`nvidia/Qwen3.8-Flash-Next-NVFP4` and show up side by side. Models that reason expose variants such
|
|
60
|
+
as `low`, `medium`, `high`, and `xhigh`. Picking no variant leaves the field unset, so the backend
|
|
61
|
+
default applies.
|
|
60
62
|
|
|
61
63
|
The output cap is 16,384 tokens, including reasoning tokens.
|
|
62
64
|
|
|
@@ -82,6 +84,7 @@ know returns HTTP 400, so the plugin maps OpenCode's levels per family:
|
|
|
82
84
|
| Kimi | `alias-kimi-k3-1m` | `none`, `low`, `high`, `max` |
|
|
83
85
|
| DeepSeek | `alias-deepseek-*`, `deepseek-v4.1-flash-at-hzdr` | `none`, `low`, `high`, `xhigh`, `max` |
|
|
84
86
|
| Muse | `alias-muse-spark` | `low`, `medium`, `high`, `xhigh` |
|
|
87
|
+
| Mistral | `alias-mistral-large` | `low`, `medium`, `high`, `xhigh`, `max` |
|
|
85
88
|
| Generic | unlisted aliases | `none`, `minimal`, `low`, `medium`, `high`, `xhigh`, `max` |
|
|
86
89
|
| None | Apertus, Eve, OCR | the field is never sent |
|
|
87
90
|
|
|
@@ -101,13 +104,14 @@ At startup the plugin:
|
|
|
101
104
|
3. Fills missing roots and context windows from the bundled catalog.
|
|
102
105
|
4. Replaces the fallback list only if at least five chat models remain.
|
|
103
106
|
|
|
104
|
-
Discovery runs at startup
|
|
107
|
+
Discovery runs at startup, whenever the Blablador credential changes, and on a ten-minute timer;
|
|
108
|
+
the provider is republished only when the alias list actually moved. The output cap
|
|
105
109
|
shrinks below 16,384 for any model whose live window is smaller than the gateway ceiling, so the
|
|
106
110
|
prompt always keeps room inside the window.
|
|
107
111
|
|
|
108
112
|
## Limitations
|
|
109
113
|
|
|
110
|
-
- The live catalog is
|
|
114
|
+
- The live catalog is refreshed every ten minutes, not on every model-picker open.
|
|
111
115
|
- Vision support is a fixed allowlist because `/v1/models` does not report modalities.
|
|
112
116
|
- Blablador returns no prompt-cache accounting, so the plugin does not configure caching.
|
|
113
117
|
- Blablador is a shared research service; rate limits and alias availability are controlled by JSC.
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,MAAM,EAAY,MAAM,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,MAAM,EAAY,MAAM,kBAAkB,CAAC;AA0BxE,eAAO,MAAM,cAAc,QAAiB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -4,11 +4,22 @@ const PACKAGE = "@opencode/ai/providers/openai-compatible";
|
|
|
4
4
|
const PROVIDER_ID = Provider.ID.make("blablador");
|
|
5
5
|
const INTEGRATION_ID = Integration.ID.make("blablador");
|
|
6
6
|
const FETCH_TIMEOUT_MS = 10_000;
|
|
7
|
+
// Re-discovery TTL. A TUI outlives its startup conditions: the alias set moves, a failed fetch has to
|
|
8
|
+
// heal, and a token exported after launch has to start working. Matches pi's REFRESH_TTL_MS.
|
|
9
|
+
export const REFRESH_TTL_MS = 10 * 60 * 1000;
|
|
10
|
+
/** Order-insensitive identity of a catalog: what a republish would actually change. */
|
|
11
|
+
function catalogSignature(models) {
|
|
12
|
+
return models
|
|
13
|
+
.map((model) => `${model.id}|${model.root ?? ""}|${model.contextWindow}`)
|
|
14
|
+
.sort()
|
|
15
|
+
.join("\n");
|
|
16
|
+
}
|
|
7
17
|
function modelInfo(model) {
|
|
8
18
|
const base = Model.Info.default(PROVIDER_ID, Model.ID.make(model.id));
|
|
9
19
|
return {
|
|
10
20
|
...base,
|
|
11
|
-
|
|
21
|
+
// Root first: the aliases of one deployment (alias-large, alias-qwen3.8-flash-next) sort together.
|
|
22
|
+
name: displayName(model, true),
|
|
12
23
|
capabilities: {
|
|
13
24
|
...base.capabilities,
|
|
14
25
|
input: VISION.has(model.id) ? ["text", "image"] : ["text"],
|
|
@@ -56,18 +67,28 @@ export default Plugin.define({
|
|
|
56
67
|
: undefined;
|
|
57
68
|
return resolveToken(credential, process.env[TOKEN_ENV]);
|
|
58
69
|
}
|
|
70
|
+
let lastError = "";
|
|
59
71
|
async function discover() {
|
|
60
72
|
const token = await currentToken();
|
|
61
73
|
if (!token)
|
|
62
|
-
return;
|
|
74
|
+
return false;
|
|
63
75
|
try {
|
|
64
76
|
const models = await fetchLiveModels(token, AbortSignal.timeout(FETCH_TIMEOUT_MS));
|
|
77
|
+
lastError = "";
|
|
78
|
+
if (catalogSignature(models) === catalogSignature(catalog.models))
|
|
79
|
+
return false;
|
|
65
80
|
catalog.models = models;
|
|
66
81
|
catalog.roots = new Map(models.map((model) => [model.id, model.root]));
|
|
82
|
+
return true;
|
|
67
83
|
}
|
|
68
84
|
catch (error) {
|
|
69
85
|
const message = error instanceof Error ? error.message : String(error);
|
|
70
|
-
|
|
86
|
+
// One line per distinct failure: an offline TUI would otherwise log the same error every tick.
|
|
87
|
+
if (message !== lastError) {
|
|
88
|
+
lastError = message;
|
|
89
|
+
console.warn(`blablador: keeping the ${catalog.models.length}-model catalog; ${message}`);
|
|
90
|
+
}
|
|
91
|
+
return false;
|
|
71
92
|
}
|
|
72
93
|
}
|
|
73
94
|
await discover();
|
|
@@ -122,11 +143,27 @@ export default Plugin.define({
|
|
|
122
143
|
ctx.session.hook("title", sanitize, { providerID: PROVIDER_ID }),
|
|
123
144
|
ctx.session.hook("http.request", trimAuth, { providerID: PROVIDER_ID }),
|
|
124
145
|
]);
|
|
125
|
-
// /connect or a credential switch changes the key and the reachable aliases
|
|
126
|
-
//
|
|
127
|
-
//
|
|
146
|
+
// /connect or a credential switch changes the key and the reachable aliases, and the alias set
|
|
147
|
+
// moves under a long-running TUI anyway: re-discover on either and reload only if the catalog
|
|
148
|
+
// actually moved. Switched is what `credential create` emits when a new key becomes active; a
|
|
149
|
+
// bad key just keeps the last good catalog with a warning.
|
|
128
150
|
const watch = new AbortController();
|
|
129
151
|
let refreshing = false;
|
|
152
|
+
async function refreshCatalog() {
|
|
153
|
+
if (refreshing)
|
|
154
|
+
return;
|
|
155
|
+
refreshing = true;
|
|
156
|
+
try {
|
|
157
|
+
if (await discover())
|
|
158
|
+
await ctx.provider.reload();
|
|
159
|
+
}
|
|
160
|
+
catch (error) {
|
|
161
|
+
console.warn("blablador: catalog refresh failed", error);
|
|
162
|
+
}
|
|
163
|
+
finally {
|
|
164
|
+
refreshing = false;
|
|
165
|
+
}
|
|
166
|
+
}
|
|
130
167
|
void (async () => {
|
|
131
168
|
try {
|
|
132
169
|
for await (const event of ctx.event.subscribe({ signal: watch.signal })) {
|
|
@@ -134,16 +171,7 @@ export default Plugin.define({
|
|
|
134
171
|
continue;
|
|
135
172
|
if (event.data.integrationID !== INTEGRATION_ID)
|
|
136
173
|
continue;
|
|
137
|
-
|
|
138
|
-
continue;
|
|
139
|
-
refreshing = true;
|
|
140
|
-
try {
|
|
141
|
-
await discover();
|
|
142
|
-
await ctx.provider.reload();
|
|
143
|
-
}
|
|
144
|
-
finally {
|
|
145
|
-
refreshing = false;
|
|
146
|
-
}
|
|
174
|
+
await refreshCatalog();
|
|
147
175
|
}
|
|
148
176
|
}
|
|
149
177
|
catch (error) {
|
|
@@ -151,7 +179,12 @@ export default Plugin.define({
|
|
|
151
179
|
console.warn("blablador: credential watch stopped", error);
|
|
152
180
|
}
|
|
153
181
|
})();
|
|
182
|
+
// unref: a pending refresh must not hold the process open, or a one-shot CLI command hangs for
|
|
183
|
+
// ten minutes after it has printed its models.
|
|
184
|
+
const refresh = setInterval(() => void refreshCatalog(), REFRESH_TTL_MS);
|
|
185
|
+
refresh.unref?.();
|
|
154
186
|
return async () => {
|
|
187
|
+
clearInterval(refresh);
|
|
155
188
|
watch.abort();
|
|
156
189
|
await Promise.all(registrations.map((registration) => registration.dispose()));
|
|
157
190
|
};
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAGxE,OAAO,EACL,QAAQ,EACR,MAAM,EACN,eAAe,EACf,SAAS,EACT,MAAM,EACN,WAAW,EACX,QAAQ,EACR,eAAe,EACf,SAAS,EACT,YAAY,EACZ,WAAW,GAGZ,MAAM,cAAc,CAAC;AAEtB,MAAM,OAAO,GAAG,0CAA0C,CAAC;AAC3D,MAAM,WAAW,GAAG,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AAClD,MAAM,cAAc,GAAG,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AACxD,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAEhC,SAAS,SAAS,CAAC,KAAmB;IACpC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IACtE,OAAO;QACL,GAAG,IAAI;QACP,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "opencode-blablador",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.3",
|
|
4
4
|
"description": "Blablador (Helmholtz / JSC) provider plugin for OpenCode: measured context windows, live catalog, and reasoning effort mapping",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
"@opencode/plugin": ">=2.1.4"
|
|
40
40
|
},
|
|
41
41
|
"dependencies": {
|
|
42
|
-
"blablador-core": "0.1.
|
|
42
|
+
"blablador-core": "0.1.3"
|
|
43
43
|
},
|
|
44
44
|
"devDependencies": {
|
|
45
45
|
"@opencode/plugin": "2.1.4",
|