@hilbras/omnihilbras 0.6.4 → 0.7.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/dist/adapters/cline.js +1 -1
- package/dist/adapters/zen.d.ts +64 -0
- package/dist/adapters/zen.d.ts.map +1 -0
- package/dist/adapters/zen.js +307 -0
- package/dist/adapters/zen.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/transport.d.ts +0 -8
- package/dist/transport.d.ts.map +1 -1
- package/dist/transport.js +24 -6
- package/dist/transport.js.map +1 -1
- package/package.json +1 -1
package/dist/adapters/cline.js
CHANGED
|
@@ -35,7 +35,7 @@ export const CLINE_OAUTH = {
|
|
|
35
35
|
};
|
|
36
36
|
const defaultRefreshSkewMs = 60_000;
|
|
37
37
|
/** Reported to Cline as this client's version. */
|
|
38
|
-
const omnihilbrasVersion = '0.
|
|
38
|
+
const omnihilbrasVersion = '0.7.0';
|
|
39
39
|
/** Cline only accepts WorkOS JWTs with an explicit prefix. */
|
|
40
40
|
export function toClineAccessToken(token) {
|
|
41
41
|
const trimmed = token.trim();
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import type { HttpTransport } from '../transport.js';
|
|
2
|
+
import type { ChatChunk, ChatRequest, ChatResponse, CredentialValidation, Model, ProviderAdapter, ProviderCredential, ProviderRequestContext } from '../types.js';
|
|
3
|
+
/**
|
|
4
|
+
* OpenCode Zen serves one catalog through three different wire formats. Which
|
|
5
|
+
* format a model uses is a property of the model, not of the connection, so a
|
|
6
|
+
* single base URL can only ever serve part of the catalog. The published table
|
|
7
|
+
* at `opencode.ai/docs/zen` is the source for the routing below.
|
|
8
|
+
*
|
|
9
|
+
* Anything not listed is served from the chat lane, which is the format Zen
|
|
10
|
+
* documents for the remainder of the catalog.
|
|
11
|
+
*/
|
|
12
|
+
export declare const ZEN_BASE_URL = "https://opencode.ai/zen";
|
|
13
|
+
export declare const ZEN_LANES: {
|
|
14
|
+
readonly chat: "https://opencode.ai/zen/v1/chat/completions";
|
|
15
|
+
readonly messages: "https://opencode.ai/zen/v1/messages";
|
|
16
|
+
readonly responses: "https://opencode.ai/zen/v1/responses";
|
|
17
|
+
};
|
|
18
|
+
export type ZenLane = keyof typeof ZEN_LANES;
|
|
19
|
+
/** The lane a model is served from, and whether this adapter can speak it. */
|
|
20
|
+
export declare function zenLaneFor(model: string): {
|
|
21
|
+
lane: ZenLane;
|
|
22
|
+
supported: boolean;
|
|
23
|
+
};
|
|
24
|
+
export type ZenAdapterOptions = {
|
|
25
|
+
transport?: HttpTransport;
|
|
26
|
+
/** Overrides the model catalog endpoint, for tests. */
|
|
27
|
+
modelsUrl?: string;
|
|
28
|
+
};
|
|
29
|
+
export declare class ZenAdapter implements ProviderAdapter {
|
|
30
|
+
readonly id = "opencode";
|
|
31
|
+
readonly name = "OpenCode Zen";
|
|
32
|
+
readonly capabilities: {
|
|
33
|
+
readonly chat: true;
|
|
34
|
+
readonly streaming: false;
|
|
35
|
+
readonly models: true;
|
|
36
|
+
};
|
|
37
|
+
private readonly transport;
|
|
38
|
+
private readonly chatLane;
|
|
39
|
+
private readonly modelsUrl;
|
|
40
|
+
constructor(options?: ZenAdapterOptions);
|
|
41
|
+
listModels(context?: ProviderRequestContext): Promise<Model[]>;
|
|
42
|
+
/**
|
|
43
|
+
* The catalog is public, so a successful listing says nothing about a token.
|
|
44
|
+
* A signed-in probe would cost a billable request on every health poll, so the
|
|
45
|
+
* credential is checked for presence and shape only.
|
|
46
|
+
*/
|
|
47
|
+
validateCredential(credential: ProviderCredential | undefined): Promise<CredentialValidation>;
|
|
48
|
+
chat(request: ChatRequest, context?: ProviderRequestContext): Promise<ChatResponse>;
|
|
49
|
+
/**
|
|
50
|
+
* Streaming is not implemented for the messages or responses lanes. Saying so
|
|
51
|
+
* is better than silently answering without a stream, which would break a
|
|
52
|
+
* client that is waiting for one.
|
|
53
|
+
*/
|
|
54
|
+
streamChat(request: ChatRequest, context?: ProviderRequestContext): AsyncIterable<ChatChunk>;
|
|
55
|
+
healthCheck(context?: ProviderRequestContext): Promise<{
|
|
56
|
+
status: 'healthy' | 'degraded' | 'unavailable';
|
|
57
|
+
checkedAt: string;
|
|
58
|
+
message?: string;
|
|
59
|
+
}>;
|
|
60
|
+
/** The messages lane: raw key in `x-api-key`, plus the required version header. */
|
|
61
|
+
private apiKeyHeaders;
|
|
62
|
+
private authHeaders;
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=zen.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zen.d.ts","sourceRoot":"","sources":["../../src/adapters/zen.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD,OAAO,KAAK,EAAE,SAAS,EAAe,WAAW,EAAE,YAAY,EAAE,oBAAoB,EAAgB,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,sBAAsB,EAAc,MAAM,aAAa,CAAC;AAEzM;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY,4BAA4B,CAAC;AACtD,eAAO,MAAM,SAAS;;;;CAIZ,CAAC;AAEX,MAAM,MAAM,OAAO,GAAG,MAAM,OAAO,SAAS,CAAC;AAe7C,8EAA8E;AAC9E,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,CAM/E;AA0KD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,qBAAa,UAAW,YAAW,eAAe;IAChD,QAAQ,CAAC,EAAE,cAAc;IACzB,QAAQ,CAAC,IAAI,kBAAkB;IAC/B,QAAQ,CAAC,YAAY;;;;MAA2D;IAChF,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgB;IAC1C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA0B;IACnD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAEvB,OAAO,GAAE,iBAAsB;IASrC,UAAU,CAAC,OAAO,GAAE,sBAA2B,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAkBxE;;;;OAIG;IACG,kBAAkB,CAAC,UAAU,EAAE,kBAAkB,GAAG,SAAS,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAU7F,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,GAAE,sBAA2B,GAAG,OAAO,CAAC,YAAY,CAAC;IAgC7F;;;;OAIG;IACI,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,GAAE,sBAA2B,GAAG,aAAa,CAAC,SAAS,CAAC;IAajG,WAAW,CAAC,OAAO,GAAE,sBAA2B,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,aAAa,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAazJ,mFAAmF;IACnF,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,WAAW;CASpB"}
|
|
@@ -0,0 +1,307 @@
|
|
|
1
|
+
import { ProviderError } from '../errors.js';
|
|
2
|
+
import { FetchHttpTransport } from '../transport.js';
|
|
3
|
+
import { OpenAICompatibleAdapter } from './openai-compatible.js';
|
|
4
|
+
/**
|
|
5
|
+
* OpenCode Zen serves one catalog through three different wire formats. Which
|
|
6
|
+
* format a model uses is a property of the model, not of the connection, so a
|
|
7
|
+
* single base URL can only ever serve part of the catalog. The published table
|
|
8
|
+
* at `opencode.ai/docs/zen` is the source for the routing below.
|
|
9
|
+
*
|
|
10
|
+
* Anything not listed is served from the chat lane, which is the format Zen
|
|
11
|
+
* documents for the remainder of the catalog.
|
|
12
|
+
*/
|
|
13
|
+
export const ZEN_BASE_URL = 'https://opencode.ai/zen';
|
|
14
|
+
export const ZEN_LANES = {
|
|
15
|
+
chat: `${ZEN_BASE_URL}/v1/chat/completions`,
|
|
16
|
+
messages: `${ZEN_BASE_URL}/v1/messages`,
|
|
17
|
+
responses: `${ZEN_BASE_URL}/v1/responses`,
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Model families with a published non-chat endpoint. Matched by prefix so a new
|
|
21
|
+
* `claude-*` or `gpt-*` is routed correctly without a code change, and matched
|
|
22
|
+
* against the id after any vendor prefix.
|
|
23
|
+
*/
|
|
24
|
+
const messagesFamily = /^claude-/;
|
|
25
|
+
const messagesExact = new Set(['qwen3.8-flash', 'qwen3.7-max', 'qwen3.7-plus', 'qwen3.6-plus', 'qwen3.5-plus', 'union-alpha']);
|
|
26
|
+
const responsesFamily = /^(gpt-|grok-|muse-spark-)/;
|
|
27
|
+
/** Models Zen serves from an endpoint this adapter does not implement. */
|
|
28
|
+
const unsupported = new Set(['jev-1.13', 'jev-1.13-free']);
|
|
29
|
+
const unsupportedFamily = /^gemini-/;
|
|
30
|
+
/** The lane a model is served from, and whether this adapter can speak it. */
|
|
31
|
+
export function zenLaneFor(model) {
|
|
32
|
+
const id = model.includes('/') ? model.slice(model.lastIndexOf('/') + 1) : model;
|
|
33
|
+
if (unsupported.has(id) || unsupportedFamily.test(id))
|
|
34
|
+
return { lane: 'chat', supported: false };
|
|
35
|
+
if (messagesFamily.test(id) || messagesExact.has(id))
|
|
36
|
+
return { lane: 'messages', supported: true };
|
|
37
|
+
if (responsesFamily.test(id))
|
|
38
|
+
return { lane: 'responses', supported: true };
|
|
39
|
+
return { lane: 'chat', supported: true };
|
|
40
|
+
}
|
|
41
|
+
function unsupportedLane(model, id) {
|
|
42
|
+
const kind = unsupported.has(id) ? 'decision models on /zen/v1/systemone' : 'Gemini models on /zen/v1/models/{id}';
|
|
43
|
+
return new ProviderError('NOT_SUPPORTED', `OpenCode Zen serves ${kind}, which this gateway does not implement. Skipping ${model}.`, {
|
|
44
|
+
providerId: 'opencode',
|
|
45
|
+
publicMessage: `OpenCode Zen serves ${kind}, which this gateway does not implement yet.`,
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
/** Maps a message role onto the Responses input item role. */
|
|
49
|
+
function responsesRole(message) {
|
|
50
|
+
if (message.role === 'assistant')
|
|
51
|
+
return 'assistant';
|
|
52
|
+
if (message.role === 'tool')
|
|
53
|
+
return 'user';
|
|
54
|
+
return 'user';
|
|
55
|
+
}
|
|
56
|
+
/** The Responses API takes content as typed parts rather than a bare string. */
|
|
57
|
+
function toResponsesInput(messages) {
|
|
58
|
+
return messages.map((message) => ({
|
|
59
|
+
role: responsesRole(message),
|
|
60
|
+
content: [{ type: message.role === 'assistant' ? 'output_text' : 'input_text', text: messageText(message) }],
|
|
61
|
+
}));
|
|
62
|
+
}
|
|
63
|
+
function messageText(message) {
|
|
64
|
+
if (typeof message.content === 'string')
|
|
65
|
+
return message.content;
|
|
66
|
+
if (!Array.isArray(message.content))
|
|
67
|
+
return '';
|
|
68
|
+
return message.content
|
|
69
|
+
.map((part) => {
|
|
70
|
+
if (typeof part === 'string')
|
|
71
|
+
return part;
|
|
72
|
+
if (part && typeof part === 'object' && 'text' in part && typeof part.text === 'string')
|
|
73
|
+
return part.text;
|
|
74
|
+
return '';
|
|
75
|
+
})
|
|
76
|
+
.join('');
|
|
77
|
+
}
|
|
78
|
+
function toResponsesBody(request) {
|
|
79
|
+
const body = {
|
|
80
|
+
model: request.model,
|
|
81
|
+
input: toResponsesInput(request.messages),
|
|
82
|
+
stream: false,
|
|
83
|
+
};
|
|
84
|
+
if (request.maxOutputTokens !== undefined)
|
|
85
|
+
body.max_output_tokens = request.maxOutputTokens;
|
|
86
|
+
if (request.temperature !== undefined)
|
|
87
|
+
body.temperature = request.temperature;
|
|
88
|
+
if (request.topP !== undefined)
|
|
89
|
+
body.top_p = request.topP;
|
|
90
|
+
if (request.stop?.length)
|
|
91
|
+
body.stop = [...request.stop];
|
|
92
|
+
return body;
|
|
93
|
+
}
|
|
94
|
+
function responsesFinishReason(payload) {
|
|
95
|
+
if (payload.incomplete_details?.reason === 'max_output_tokens')
|
|
96
|
+
return 'length';
|
|
97
|
+
const last = payload.output?.[payload.output.length - 1];
|
|
98
|
+
if (last?.type === 'tool_call')
|
|
99
|
+
return 'tool_calls';
|
|
100
|
+
if (payload.status === 'incomplete')
|
|
101
|
+
return 'length';
|
|
102
|
+
return 'stop';
|
|
103
|
+
}
|
|
104
|
+
/** Concatenates the text parts of every output message. */
|
|
105
|
+
function responsesText(payload) {
|
|
106
|
+
if (typeof payload.output_text === 'string' && payload.output_text.trim())
|
|
107
|
+
return payload.output_text;
|
|
108
|
+
const parts = [];
|
|
109
|
+
for (const item of payload.output ?? []) {
|
|
110
|
+
if (item.type && item.type !== 'message')
|
|
111
|
+
continue;
|
|
112
|
+
for (const part of item.content ?? []) {
|
|
113
|
+
if (part.type === 'output_text' && typeof part.text === 'string')
|
|
114
|
+
parts.push(part.text);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
return parts.join('');
|
|
118
|
+
}
|
|
119
|
+
function toResponsesChatResponse(payload, requestedModel) {
|
|
120
|
+
const text = responsesText(payload);
|
|
121
|
+
return {
|
|
122
|
+
id: payload.id ?? `response-${requestedModel}`,
|
|
123
|
+
providerId: 'opencode',
|
|
124
|
+
model: payload.model ?? requestedModel,
|
|
125
|
+
createdAt: payload.created_at ? new Date(payload.created_at * 1000).toISOString() : new Date().toISOString(),
|
|
126
|
+
message: { role: 'assistant', content: text },
|
|
127
|
+
finishReason: responsesFinishReason(payload),
|
|
128
|
+
usage: responsesUsage(payload.usage),
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
function responsesUsage(usage) {
|
|
132
|
+
if (!usage)
|
|
133
|
+
return undefined;
|
|
134
|
+
return {
|
|
135
|
+
...(usage.input_tokens === undefined ? {} : { inputTokens: usage.input_tokens }),
|
|
136
|
+
...(usage.output_tokens === undefined ? {} : { outputTokens: usage.output_tokens }),
|
|
137
|
+
...(usage.total_tokens === undefined ? {} : { totalTokens: usage.total_tokens }),
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
function messagesFinishReason(reason) {
|
|
141
|
+
if (reason === 'max_tokens')
|
|
142
|
+
return 'length';
|
|
143
|
+
if (reason === 'tool_use')
|
|
144
|
+
return 'tool_calls';
|
|
145
|
+
return 'stop';
|
|
146
|
+
}
|
|
147
|
+
function toMessagesBody(request) {
|
|
148
|
+
const system = request.messages.filter((message) => message.role === 'system').map(messageText).filter(Boolean);
|
|
149
|
+
const messages = request.messages
|
|
150
|
+
.filter((message) => message.role !== 'system')
|
|
151
|
+
.map((message) => ({ role: message.role === 'assistant' ? 'assistant' : 'user', content: messageText(message) }));
|
|
152
|
+
const body = {
|
|
153
|
+
model: request.model,
|
|
154
|
+
messages,
|
|
155
|
+
max_tokens: request.maxOutputTokens ?? 1024,
|
|
156
|
+
stream: false,
|
|
157
|
+
};
|
|
158
|
+
if (system.length > 0)
|
|
159
|
+
body.system = system.join('\n\n');
|
|
160
|
+
if (request.temperature !== undefined)
|
|
161
|
+
body.temperature = request.temperature;
|
|
162
|
+
if (request.topP !== undefined)
|
|
163
|
+
body.top_p = request.topP;
|
|
164
|
+
if (request.stop?.length)
|
|
165
|
+
body.stop = [...request.stop];
|
|
166
|
+
return body;
|
|
167
|
+
}
|
|
168
|
+
function toMessagesChatResponse(payload, requestedModel) {
|
|
169
|
+
const text = (payload.content ?? []).filter((part) => part.type === 'text' && typeof part.text === 'string').map((part) => part.text).join('');
|
|
170
|
+
return {
|
|
171
|
+
id: payload.id ?? `msg-${requestedModel}`,
|
|
172
|
+
providerId: 'opencode',
|
|
173
|
+
model: payload.model ?? requestedModel,
|
|
174
|
+
createdAt: new Date().toISOString(),
|
|
175
|
+
message: { role: 'assistant', content: text },
|
|
176
|
+
finishReason: messagesFinishReason(payload.stop_reason),
|
|
177
|
+
usage: payload.usage
|
|
178
|
+
? { inputTokens: payload.usage.input_tokens, outputTokens: payload.usage.output_tokens }
|
|
179
|
+
: undefined,
|
|
180
|
+
};
|
|
181
|
+
}
|
|
182
|
+
export class ZenAdapter {
|
|
183
|
+
id = 'opencode';
|
|
184
|
+
name = 'OpenCode Zen';
|
|
185
|
+
capabilities = { chat: true, streaming: false, models: true };
|
|
186
|
+
transport;
|
|
187
|
+
chatLane;
|
|
188
|
+
modelsUrl;
|
|
189
|
+
constructor(options = {}) {
|
|
190
|
+
this.transport = options.transport ?? new FetchHttpTransport();
|
|
191
|
+
this.chatLane = new OpenAICompatibleAdapter({ id: 'opencode', name: 'OpenCode Zen', baseUrl: `${ZEN_BASE_URL}/v1`, auth: { header: 'Authorization', prefix: 'Bearer' } }, { transport: this.transport });
|
|
192
|
+
this.modelsUrl = options.modelsUrl ?? `${ZEN_BASE_URL}/v1/models`;
|
|
193
|
+
}
|
|
194
|
+
async listModels(context = {}) {
|
|
195
|
+
const response = await this.transport.request({
|
|
196
|
+
method: 'GET',
|
|
197
|
+
providerId: this.id,
|
|
198
|
+
url: this.modelsUrl,
|
|
199
|
+
headers: this.authHeaders(context.credential),
|
|
200
|
+
...(context.signal ? { signal: context.signal } : {}),
|
|
201
|
+
});
|
|
202
|
+
const data = response.data?.data;
|
|
203
|
+
if (!Array.isArray(data)) {
|
|
204
|
+
throw new ProviderError('INVALID_RESPONSE', 'The OpenCode Zen model list is missing data.', { providerId: this.id });
|
|
205
|
+
}
|
|
206
|
+
return data
|
|
207
|
+
.map((entry) => (typeof entry?.id === 'string' ? entry.id.trim() : ''))
|
|
208
|
+
.filter((id) => id.length > 0)
|
|
209
|
+
.map((id) => ({ id, providerId: this.id, displayName: id }));
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* The catalog is public, so a successful listing says nothing about a token.
|
|
213
|
+
* A signed-in probe would cost a billable request on every health poll, so the
|
|
214
|
+
* credential is checked for presence and shape only.
|
|
215
|
+
*/
|
|
216
|
+
async validateCredential(credential) {
|
|
217
|
+
if (credential?.type === 'none' || !credential?.value) {
|
|
218
|
+
throw new ProviderError('AUTHENTICATION_FAILED', 'An OpenCode Zen API key is required.', {
|
|
219
|
+
providerId: this.id,
|
|
220
|
+
publicMessage: 'An OpenCode Zen API key is required.',
|
|
221
|
+
});
|
|
222
|
+
}
|
|
223
|
+
return { status: 'valid', checkedAt: new Date().toISOString() };
|
|
224
|
+
}
|
|
225
|
+
async chat(request, context = {}) {
|
|
226
|
+
const { lane, supported } = zenLaneFor(request.model);
|
|
227
|
+
const id = request.model.includes('/') ? request.model.slice(request.model.lastIndexOf('/') + 1) : request.model;
|
|
228
|
+
if (!supported)
|
|
229
|
+
throw unsupportedLane(request.model, id);
|
|
230
|
+
if (lane === 'chat')
|
|
231
|
+
return this.chatLane.chat(request, context);
|
|
232
|
+
const isResponses = lane === 'responses';
|
|
233
|
+
const response = await this.transport.request({
|
|
234
|
+
method: 'POST',
|
|
235
|
+
providerId: this.id,
|
|
236
|
+
url: ZEN_LANES[lane],
|
|
237
|
+
// The messages lane does not take a bearer token. It takes the raw key in
|
|
238
|
+
// `x-api-key`, and sending `Authorization: Bearer` there is answered with a
|
|
239
|
+
// 401 even when the key is valid.
|
|
240
|
+
headers: isResponses
|
|
241
|
+
? this.authHeaders(context.credential)
|
|
242
|
+
: this.apiKeyHeaders(context.credential),
|
|
243
|
+
body: JSON.stringify(isResponses ? toResponsesBody(request) : toMessagesBody(request)),
|
|
244
|
+
...(context.signal ? { signal: context.signal } : {}),
|
|
245
|
+
});
|
|
246
|
+
const payload = response.data;
|
|
247
|
+
if (payload?.error) {
|
|
248
|
+
const reason = typeof payload.error === 'string' ? payload.error : payload.error.message;
|
|
249
|
+
throw new ProviderError('PROVIDER_REQUEST_FAILED', reason ? `OpenCode Zen rejected the request: ${reason}` : 'OpenCode Zen rejected the request.', {
|
|
250
|
+
providerId: this.id,
|
|
251
|
+
publicMessage: reason ? `OpenCode Zen rejected the request: ${reason}` : 'OpenCode Zen rejected the request.',
|
|
252
|
+
});
|
|
253
|
+
}
|
|
254
|
+
return isResponses ? toResponsesChatResponse(payload, request.model) : toMessagesChatResponse(payload, request.model);
|
|
255
|
+
}
|
|
256
|
+
/**
|
|
257
|
+
* Streaming is not implemented for the messages or responses lanes. Saying so
|
|
258
|
+
* is better than silently answering without a stream, which would break a
|
|
259
|
+
* client that is waiting for one.
|
|
260
|
+
*/
|
|
261
|
+
async *streamChat(request, context = {}) {
|
|
262
|
+
const { lane, supported } = zenLaneFor(request.model);
|
|
263
|
+
const id = request.model.includes('/') ? request.model.slice(request.model.lastIndexOf('/') + 1) : request.model;
|
|
264
|
+
if (!supported)
|
|
265
|
+
throw unsupportedLane(request.model, id);
|
|
266
|
+
if (lane !== 'chat') {
|
|
267
|
+
throw new ProviderError('NOT_SUPPORTED', `Streaming is not implemented for OpenCode Zen models on the ${lane} lane.`, {
|
|
268
|
+
providerId: this.id,
|
|
269
|
+
publicMessage: `Streaming is not implemented for this OpenCode Zen model. Use a non-streaming request.`,
|
|
270
|
+
});
|
|
271
|
+
}
|
|
272
|
+
yield* this.chatLane.streamChat(request, context);
|
|
273
|
+
}
|
|
274
|
+
async healthCheck(context = {}) {
|
|
275
|
+
try {
|
|
276
|
+
await this.listModels(context);
|
|
277
|
+
return { status: 'healthy', checkedAt: new Date().toISOString() };
|
|
278
|
+
}
|
|
279
|
+
catch (error) {
|
|
280
|
+
return {
|
|
281
|
+
status: 'unavailable',
|
|
282
|
+
checkedAt: new Date().toISOString(),
|
|
283
|
+
message: error instanceof Error ? error.message : 'The OpenCode Zen model list could not be read.',
|
|
284
|
+
};
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
/** The messages lane: raw key in `x-api-key`, plus the required version header. */
|
|
288
|
+
apiKeyHeaders(credential) {
|
|
289
|
+
const value = credential?.type === 'none' ? '' : credential?.value ?? '';
|
|
290
|
+
return {
|
|
291
|
+
accept: 'application/json',
|
|
292
|
+
'content-type': 'application/json',
|
|
293
|
+
'anthropic-version': '2023-06-01',
|
|
294
|
+
...(value ? { 'x-api-key': value } : {}),
|
|
295
|
+
};
|
|
296
|
+
}
|
|
297
|
+
authHeaders(credential, extra = {}) {
|
|
298
|
+
const value = credential?.type === 'none' ? '' : credential?.value ?? '';
|
|
299
|
+
return {
|
|
300
|
+
accept: 'application/json',
|
|
301
|
+
'content-type': 'application/json',
|
|
302
|
+
...extra,
|
|
303
|
+
...(value ? { Authorization: `Bearer ${value}` } : {}),
|
|
304
|
+
};
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
//# sourceMappingURL=zen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zen.js","sourceRoot":"","sources":["../../src/adapters/zen.ts"],"names":[],"mappings":"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"}
|
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,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iCAAiC,CAAC;AAChD,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iCAAiC,CAAC;AAChD,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,UAAU,CAAC"}
|
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iCAAiC,CAAC;AAChD,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iCAAiC,CAAC;AAChD,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,UAAU,CAAC"}
|
package/dist/transport.d.ts
CHANGED
|
@@ -41,13 +41,5 @@ export declare class FetchHttpTransport implements HttpTransport {
|
|
|
41
41
|
request<T>(request: HttpRequest): Promise<HttpResponse<T>>;
|
|
42
42
|
stream(request: HttpRequest): AsyncIterable<string>;
|
|
43
43
|
}
|
|
44
|
-
/**
|
|
45
|
-
* A short, safe excerpt of what the provider actually said.
|
|
46
|
-
*
|
|
47
|
-
* Without this a provider that answers 4xx is indistinguishable from one that
|
|
48
|
-
* answers 401, which makes an integration bug undebuggable: the only symptom is
|
|
49
|
-
* a generic "the provider rejected the request". Token-shaped strings are
|
|
50
|
-
* stripped so an error can be shown to a user or written to a log.
|
|
51
|
-
*/
|
|
52
44
|
export declare function providerErrorDetail(body: unknown): string | undefined;
|
|
53
45
|
//# sourceMappingURL=transport.d.ts.map
|
package/dist/transport.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;AAErE,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,UAAU,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,CAAC,CAAC;CACT,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,CAAC,KAAK,EAAE,WAAW,GAAG,GAAG,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAE5F;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;CACrD;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AAcF,qBAAa,kBAAmB,YAAW,aAAa;IACtD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;IACtC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAS;IAC7C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAS;gBAEjC,OAAO,GAAE,yBAA8B;IAc7C,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IA0BzD,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC;CAyD3D;
|
|
1
|
+
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;AAErE,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,UAAU,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,CAAC,CAAC;CACT,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,CAAC,KAAK,EAAE,WAAW,GAAG,GAAG,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAE5F;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;CACrD;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AAcF,qBAAa,kBAAmB,YAAW,aAAa;IACtD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;IACtC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAS;IAC7C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAS;gBAEjC,OAAO,GAAE,yBAA8B;IAc7C,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IA0BzD,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC;CAyD3D;AAqGD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAkCrE"}
|
package/dist/transport.js
CHANGED
|
@@ -205,6 +205,9 @@ async function readResponseText(response, maxBytes) {
|
|
|
205
205
|
* a generic "the provider rejected the request". Token-shaped strings are
|
|
206
206
|
* stripped so an error can be shown to a user or written to a log.
|
|
207
207
|
*/
|
|
208
|
+
function isRecord(value) {
|
|
209
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
210
|
+
}
|
|
208
211
|
export function providerErrorDetail(body) {
|
|
209
212
|
if (body === null || body === undefined)
|
|
210
213
|
return undefined;
|
|
@@ -213,20 +216,32 @@ export function providerErrorDetail(body) {
|
|
|
213
216
|
text = body;
|
|
214
217
|
else if (typeof body === 'object') {
|
|
215
218
|
const record = body;
|
|
216
|
-
for (const key of ['message', 'error_description', 'error', 'detail', 'reason', 'code']) {
|
|
219
|
+
for (const key of ['message', 'error_description', 'error', 'detail', 'reason', 'code', 'msg', 'title']) {
|
|
217
220
|
const value = record[key];
|
|
218
221
|
if (typeof value === 'string' && value.trim()) {
|
|
219
222
|
text = value.trim();
|
|
220
223
|
break;
|
|
221
224
|
}
|
|
222
225
|
if (value && typeof value === 'object') {
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
226
|
+
// `{"error":{"type":"AuthError","message":"..."}}` and the
|
|
227
|
+
// `{"error":{"type":"AuthError"}}` shape that carries only a type.
|
|
228
|
+
const nested = value;
|
|
229
|
+
for (const inner of ['message', 'description', 'detail', 'type']) {
|
|
230
|
+
if (typeof nested[inner] === 'string' && nested[inner].trim()) {
|
|
231
|
+
text = nested[inner].trim();
|
|
232
|
+
break;
|
|
233
|
+
}
|
|
227
234
|
}
|
|
235
|
+
if (text)
|
|
236
|
+
break;
|
|
228
237
|
}
|
|
229
238
|
}
|
|
239
|
+
// A validation-style list: `{"errors":[{"message":"..."}]}`.
|
|
240
|
+
if (!text && Array.isArray(record.errors)) {
|
|
241
|
+
const first = record.errors.find((entry) => isRecord(entry) && typeof entry.message === 'string');
|
|
242
|
+
if (first)
|
|
243
|
+
text = String(first.message).trim();
|
|
244
|
+
}
|
|
230
245
|
}
|
|
231
246
|
if (!text)
|
|
232
247
|
return undefined;
|
|
@@ -258,7 +273,10 @@ function providerErrorFromResponse(response, body, providerId) {
|
|
|
258
273
|
: code === 'PROVIDER_UNAVAILABLE'
|
|
259
274
|
? 'The provider is temporarily unavailable.'
|
|
260
275
|
: 'The provider rejected the request.';
|
|
261
|
-
|
|
276
|
+
// Say so when the provider refuses without saying why. A bare 403 with an
|
|
277
|
+
// empty body is the least actionable response there is, and silence reads as a
|
|
278
|
+
// gateway problem rather than a refusal that reached the provider.
|
|
279
|
+
const detail = providerErrorDetail(body) ?? `HTTP ${response.status} with an empty response body`;
|
|
262
280
|
return new ProviderError(code, message, {
|
|
263
281
|
providerId,
|
|
264
282
|
statusCode: response.status,
|
package/dist/transport.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hilbras/omnihilbras",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"description": "Typed provider SDK for the OmniHilbras gateway: normalized chat, streaming, model listing, and capability contracts for OpenAI, Anthropic, Gemini, and OpenAI-compatible providers.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Hilbras",
|