@hilbras/omnihilbras 1.71.0 → 1.75.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.
@@ -143,15 +143,36 @@ export class KimiCodeAdapter {
143
143
  * rather than a denial because it is Kimi asking for a slower poll, not refusing the grant.
144
144
  */
145
145
  async pollSignIn(deviceCode, signal, deviceId = crypto.randomUUID()) {
146
- // Same form encoding, for the same measured reason.
147
- const { data } = await this.postForm(KIMI_CODE.deviceTokenPath, {
146
+ // Same form encoding, for the same measured reason — **and the status is the reason this had to be
147
+ // written differently.**
148
+ //
149
+ // `postForm` runs the request through the shared transport, which turns any non-2xx into a thrown
150
+ // `ProviderError` — the correct behaviour for an inference call. But Kimi's *token* endpoint answers
151
+ // a pending poll with **HTTP 400** and `{"error":"authorization_pending"}` in the body, so the throw
152
+ // happened before the body could be read and the flow reported a failure for a sign-in that was
153
+ // simply waiting. Measured against the live host:
154
+ //
155
+ // ```
156
+ // POST /api/oauth/token grant_type=device_code -> 400 {"error":"authorization_pending"} (still waiting)
157
+ // ```
158
+ //
159
+ // So the poll goes out raw and reads the status itself. The inference paths keep using `postForm`,
160
+ // where the transport's classification is exactly right.
161
+ const { data, status } = await this.postFormAllowingRefusal(KIMI_CODE.deviceTokenPath, {
148
162
  grant_type: KIMI_CODE.grantType,
149
163
  device_code: deviceCode,
150
164
  client_id: KIMI_CODE.clientId,
151
165
  }, this.kimiHeaders(deviceId), signal);
152
166
  const error = typeof data.error === 'string' ? data.error : '';
153
- if (error === 'authorization_pending' || error === 'slow_down')
167
+ // Read from the body whatever the status. The status is asserted as well, because a body carrying
168
+ // `authorization_pending` on a 200 would be a different provider's convention and should not be
169
+ // trusted silently — but the status alone is not enough either, since this endpoint answers 400.
170
+ if (error === 'authorization_pending' || error === 'slow_down') {
171
+ if (status !== 400 && status !== 200) {
172
+ return { status: 'denied', error: `Kimi answered ${status} for a poll that should still be waiting.` };
173
+ }
154
174
  return { status: 'pending' };
175
+ }
155
176
  if (error) {
156
177
  const description = typeof data.error_description === 'string' ? data.error_description : '';
157
178
  return {
@@ -337,18 +358,14 @@ export class KimiCodeAdapter {
337
358
  const memo = this.renewed.get(replaced);
338
359
  if (memo)
339
360
  return memo;
340
- const { data } = await this.transport.request({
341
- method: 'POST',
342
- providerId: this.id,
343
- url: `${KIMI_CODE.authOrigin}${KIMI_CODE.deviceTokenPath}`,
344
- headers: { accept: 'application/json', 'content-type': 'application/x-www-form-urlencoded' },
345
- body: new URLSearchParams({
346
- grant_type: KIMI_CODE.refreshGrantType,
347
- refresh_token: refresh,
348
- client_id: KIMI_CODE.clientId,
349
- }).toString(),
350
- ...(context.signal ? { signal: context.signal } : {}),
351
- });
361
+ // Read the body whatever the status, for the same measured reason as the poll: a dead refresh token
362
+ // comes back as a 4xx whose `error_description` is the only place Kimi says *why*, and throwing on the
363
+ // status would replace that with the transport's own generic refusal.
364
+ const { data } = await this.postFormAllowingRefusal(KIMI_CODE.deviceTokenPath, {
365
+ grant_type: KIMI_CODE.refreshGrantType,
366
+ refresh_token: refresh,
367
+ client_id: KIMI_CODE.clientId,
368
+ }, { accept: 'application/json', 'content-type': 'application/x-www-form-urlencoded' }, context.signal);
352
369
  const access = typeof data.access_token === 'string' ? data.access_token : '';
353
370
  if (!access) {
354
371
  const description = typeof data.error_description === 'string' ? data.error_description : '';
@@ -445,6 +462,28 @@ export class KimiCodeAdapter {
445
462
  * rather than splitting the body — which on a token endpoint means a client id that arrives
446
463
  * truncated, with no error to point at.
447
464
  */
465
+ /**
466
+ * Posts a form body and returns the parsed body **whatever the status**.
467
+ *
468
+ * Only for an endpoint whose 4xx carries a meaningful body — an OAuth token exchange, where `400
469
+ * authorization_pending` is an expected answer rather than a failure. Everywhere else the shared
470
+ * transport's classification is right and this must not be used: a 401 here would be read as data
471
+ * instead of an authentication failure.
472
+ */
473
+ async postFormAllowingRefusal(path, fields, headers, signal) {
474
+ const response = await this.transport.request({
475
+ method: 'POST',
476
+ providerId: this.id,
477
+ url: `${KIMI_CODE.authOrigin}${path}`,
478
+ headers: { accept: 'application/json', ...headers },
479
+ body: new URLSearchParams(fields).toString(),
480
+ // The flag that reaches the transport: without it the 400 is thrown before this method runs, which
481
+ // was the whole defect — the first fix lived here and could not work, because the throw is upstream.
482
+ tolerateRefusalBody: true,
483
+ ...(signal ? { signal } : {}),
484
+ });
485
+ return { data: (response.data ?? {}), status: response.status };
486
+ }
448
487
  async postForm(path, fields, headers, signal) {
449
488
  const response = await this.transport.request({
450
489
  method: 'POST',
@@ -1 +1 @@
1
- {"version":3,"file":"kimi-code.js","sourceRoot":"","sources":["../../src/adapters/kimi-code.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kimi-code.js","sourceRoot":"","sources":["../../src/adapters/kimi-code.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,201 @@
1
+ import type { ChatMessage, ChatRequest, ChatResponse, CredentialValidation, Model, ProviderAdapter, ProviderCredential, ProviderHealth, ProviderId, ProviderRequestContext } from '../types.js';
2
+ /**
3
+ * Token Harbor Web — the chat application at tokenharbor.ai, driven by the Supabase session
4
+ * cookie a signed-in browser already holds.
5
+ *
6
+ * ## Read this before building on it
7
+ *
8
+ * Token Harbor's terms **prohibit** what this adapter does. Their product is itself a gateway,
9
+ * and the metered API key is its architectural guardrail; driving the web chat with a harvested
10
+ * session cookie routes around that guardrail. The two clauses that name it:
11
+ *
12
+ * > **Proxy Reselling:** Utilize the Service to construct a direct, white-labeled proxy
13
+ * > alternative to Token Harbor without adding substantive unique value or without prior written
14
+ * > enterprise authorization.
15
+ * >
16
+ * > ...designed to compromise the security, stability, or **architectural guardrails of the
17
+ * > Token Harbor gateway**.
18
+ *
19
+ * There is a legitimate path — `https://tokenharbor.ai/v1` with a Bearer key, OpenAI-compatible,
20
+ * documented, and free on the `:free` models — and it is the card beside this one. This adapter
21
+ * exists because the operator asked for the session-cookie route with that trade stated, and it
22
+ * carries the same warning in the dashboard catalog (`riskSeverity: 'high'`) so a user meets it
23
+ * before pasting a credential. It is the same shape as the Kiro notice: the vendor's terms and
24
+ * the gateway's behaviour are both on the card, and using it is the user's decision to make.
25
+ *
26
+ * ## What the credential is
27
+ *
28
+ * Auth is Supabase (`auth.tokenharbor.ai`), so the browser cookie is `sb-<ref>-auth-token`,
29
+ * where `<ref>` is the first label of the Supabase host — `auth`, giving `sb-auth-auth-token`.
30
+ * Above Supabase's size limit the value is split into `sb-...-auth-token.0`, `.1`, ... and the
31
+ * chunks are reassembled in order. It is written with `document.cookie`, so unlike ChatGPT Web's
32
+ * `HttpOnly` session it can be read from the Application panel or the Network tab's Cookie
33
+ * header — which is why the guide offers both.
34
+ *
35
+ * ## The wire format is not OpenAI's, and that is the whole adapter
36
+ *
37
+ * A turn is two requests and a decode:
38
+ *
39
+ * 1. `POST /api/direct-chat/sessions` with `{ model, temporary: true }` → `{ session: { id } }`.
40
+ * `temporary` is sent so a stateless gateway does not litter the user's sidebar with a
41
+ * conversation per request.
42
+ * 2. `POST /api/direct-chat/stream` with `{ sessionId, content, model, webSearch, tz }` → an SSE
43
+ * body whose events are **named**, not OpenAI's `choices[].delta`:
44
+ * `chunk` (the answer text in `delta`), `thinking` (reasoning in `delta`), `tool_use`,
45
+ * `citation`, `image`, `file`, `miniapp`, and `done`. `error` carries `{ code, message }`.
46
+ *
47
+ * Only `chunk`, `thinking`, `done` and `error` are consumed. The others are attachments and
48
+ * citations for a UI, and inventing an OpenAI shape for them here would be guessing at a
49
+ * contract this adapter cannot test without the session.
50
+ *
51
+ * ## What is not claimed
52
+ *
53
+ * `capabilities.streaming` is false and no `streamChat` is implemented: the transport is SSE,
54
+ * but the gateway consumes the whole body and returns one completion. A streaming surface would
55
+ * need the chunk boundary semantics verified against a live session first.
56
+ *
57
+ * `healthCheck` reports `verified: 'credential'`. It reads `/api/me/profile`, which proves the
58
+ * session cookie is accepted and nothing more — the same distinction the type exists to force.
59
+ */
60
+ export declare const tokenHarborWebProviderId: ProviderId;
61
+ export declare const TOKENHARBOR_WEB: {
62
+ readonly origin: "https://tokenharbor.ai";
63
+ readonly apiBase: "https://tokenharbor.ai/api";
64
+ readonly profileUrl: "https://tokenharbor.ai/api/me/profile";
65
+ readonly sessionsUrl: "https://tokenharbor.ai/api/direct-chat/sessions";
66
+ readonly streamUrl: "https://tokenharbor.ai/api/direct-chat/stream";
67
+ readonly cookiePrefix: "sb-auth-auth-token";
68
+ readonly defaultModel: "th-rudder:free";
69
+ /** The page a user signs in on and copies the cookie from. */
70
+ readonly signInUrl: "https://tokenharbor.ai/login";
71
+ };
72
+ /**
73
+ * The catalog, read from `https://tokenharbor.ai/models` on 2026-10-07.
74
+ *
75
+ * A dated snapshot rather than a promise: the page is the live list and this is what it showed.
76
+ * Prices are per 1M tokens, which is the unit the SDK normalises to and the unit the page itself
77
+ * prints. The two `:free` ids are the ones that bill nothing.
78
+ *
79
+ * No context window is claimed because the page publishes none.
80
+ */
81
+ export declare const TOKENHARBOR_WEB_MODELS: ReadonlyArray<{
82
+ id: string;
83
+ label: string;
84
+ family: string;
85
+ inputPer1M: number;
86
+ outputPer1M: number;
87
+ }>;
88
+ export declare function allTokenHarborWebModels(): string[];
89
+ /**
90
+ * Reads the Supabase session cookie out of whatever the user pasted.
91
+ *
92
+ * Two pastes are accepted, because both are things the guide tells people to copy:
93
+ *
94
+ * - the whole `Cookie:` request header (space for the Cloudflare clearance and the other cookies
95
+ * the SSR layer reads), and
96
+ * - just the `sb-auth-auth-token` value or the `sb-auth-auth-token=...` pair, from the
97
+ * Application panel.
98
+ *
99
+ * The chunks are **joined in numeric order**, which is not the order they appear in a header:
100
+ * a large token is stored as `.0`, `.1`, ... and a header that happens to list `.1` before `.0`
101
+ * would otherwise reassemble to a garbage session that fails later as an unexplained refusal.
102
+ */
103
+ export declare function parseTokenHarborCookieHeader(raw: string): string;
104
+ /**
105
+ * Decodes the session cookie and reports what is wrong with it, or `undefined` when it is intact.
106
+ *
107
+ * Returns a sentence rather than a boolean because the two failures need different instructions: a
108
+ * value that does not decode is a **truncated paste**, and a value that decodes but carries no
109
+ * access token is a **shape this adapter does not recognise**. "Sign in again" is wrong for the
110
+ * first — the session is fine, the paste was short.
111
+ */
112
+ export declare function sessionValueProblem(session: string): string | undefined;
113
+ /** The `expires_at` epoch seconds inside the session, when it is one this adapter can read.
114
+ *
115
+ * Accepts either the bare value or a whole Cookie header, because the two callers have different
116
+ * shapes in hand: the parser has the value, the refusal path has the assembled header.
117
+ */
118
+ export declare function sessionExpiresAt(sessionOrCookie: string): number | undefined;
119
+ export declare function tokenHarborWebCredential(raw: string): ProviderCredential;
120
+ export declare function tokenHarborWebCookieFromCredential(credential: ProviderCredential | undefined): string;
121
+ export declare class TokenHarborWebAdapter implements ProviderAdapter {
122
+ readonly id: string;
123
+ readonly name = "Token Harbor Web";
124
+ readonly capabilities: {
125
+ readonly chat: true;
126
+ readonly models: true;
127
+ };
128
+ private readonly now;
129
+ private readonly fetchImpl;
130
+ constructor(options?: {
131
+ now?: () => number;
132
+ fetch?: typeof fetch;
133
+ });
134
+ /**
135
+ * The dated catalog above, not a request.
136
+ *
137
+ * Token Harbor publishes no public models JSON — the live list is rendered into the `/models`
138
+ * page — so there is nothing to read without a session, and an authenticated read per call
139
+ * would be a cost for a list that changes weekly. The snapshot is what the page showed on the
140
+ * date beside it, and the free-only policy narrows it the way the dialog's checkbox promises.
141
+ */
142
+ listModels(context?: ProviderRequestContext): Promise<Model[]>;
143
+ /**
144
+ * A real round trip to `/api/me/profile`, which answers `{ ok: false }` with a 401 to a session
145
+ * it does not recognise. That is the cheapest endpoint that proves the cookie is accepted, and
146
+ * it is the whole of what this establishes — see `healthCheck`.
147
+ */
148
+ validateCredential(credential: ProviderCredential | undefined, context?: ProviderRequestContext): Promise<CredentialValidation>;
149
+ /**
150
+ * `verified: 'credential'` — deliberately.
151
+ *
152
+ * Reading the profile proves the cookie is live; it says nothing about whether a model can
153
+ * answer. Claiming `inference` would need a real turn on every 60-second poll, which is a real
154
+ * request against someone else's service on a timer, and the type exists precisely so this
155
+ * distinction is stated rather than implied.
156
+ */
157
+ healthCheck(context?: ProviderRequestContext): Promise<ProviderHealth>;
158
+ chat(request: ChatRequest, context?: ProviderRequestContext): Promise<ChatResponse>;
159
+ private createSession;
160
+ private request;
161
+ }
162
+ /**
163
+ * Flattens the message list into the single `content` string the endpoint takes.
164
+ *
165
+ * Labelled rather than concatenated: a bare join of `["You are terse.", "2+2?"]` loses which was
166
+ * which, and the model then answers as if the instruction were part of the question.
167
+ */
168
+ export declare function flattenMessages(messages: readonly ChatMessage[]): string;
169
+ /**
170
+ * Reads a completed answer out of Token Harbor's named-event SSE body.
171
+ *
172
+ * The client's own parser is the source of truth for the shapes, and it is not OpenAI's:
173
+ *
174
+ * ```text
175
+ * event: chunk
176
+ * data: {"delta":"working"}
177
+ *
178
+ * event: thinking
179
+ * data: {"delta":"..."}
180
+ *
181
+ * event: done
182
+ * data: {}
183
+ * ```
184
+ *
185
+ * `chunk` is the answer text and `thinking` is the reasoning, split into their own events — so a
186
+ * model that thinks before answering does not have its reasoning read as the reply. `error`
187
+ * carries `{ code, message }` and is returned rather than thrown so the caller can name the code.
188
+ *
189
+ * **`done` is what makes a truncated body detectable.** A stream that closes without it was cut
190
+ * off, and the caller reports that instead of handing back half an answer labelled complete.
191
+ */
192
+ export declare function decodeTokenHarborStream(body: string): {
193
+ content: string;
194
+ reasoning: string;
195
+ finished: boolean;
196
+ error?: {
197
+ code: string;
198
+ message: string;
199
+ };
200
+ };
201
+ //# sourceMappingURL=tokenharbor-web.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokenharbor-web.d.ts","sourceRoot":"","sources":["../../src/adapters/tokenharbor-web.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,oBAAoB,EAAgB,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,cAAc,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAE9M;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyDG;AAEH,eAAO,MAAM,wBAAwB,EAAE,UAA8B,CAAC;AA6BtE,eAAO,MAAM,eAAe;;;;;;;;IAQ1B,8DAA8D;;CAEtD,CAAC;AAEX;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,EAAE,aAAa,CAAC;IACjD,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB,CAuBA,CAAC;AAEF,wBAAgB,uBAAuB,IAAI,MAAM,EAAE,CAElD;AAgBD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CA2EhE;AAwBD;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAuBvE;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAW5E;AAUD,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,CAExE;AAED,wBAAgB,kCAAkC,CAAC,UAAU,EAAE,kBAAkB,GAAG,SAAS,GAAG,MAAM,CAOrG;AA2BD,qBAAa,qBAAsB,YAAW,eAAe;IAC3D,QAAQ,CAAC,EAAE,SAA4B;IACvC,QAAQ,CAAC,IAAI,sBAAsB;IACnC,QAAQ,CAAC,YAAY;;;MAAyC;IAE9D,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAe;IACnC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAe;gBAE7B,OAAO,GAAE;QAAE,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,KAAK,CAAA;KAAO;IAKtE;;;;;;;OAOG;IACH,UAAU,CAAC,OAAO,GAAE,sBAA2B,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAalE;;;;OAIG;IACG,kBAAkB,CAAC,UAAU,EAAE,kBAAkB,GAAG,SAAS,EAAE,OAAO,GAAE,sBAA2B,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAQzI;;;;;;;OAOG;IACG,WAAW,CAAC,OAAO,GAAE,sBAA2B,GAAG,OAAO,CAAC,cAAc,CAAC;IAc1E,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,GAAE,sBAA2B,GAAG,OAAO,CAAC,YAAY,CAAC;YAkE/E,aAAa;IAgB3B,OAAO,CAAC,OAAO;CAYhB;AAsBD;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,SAAS,WAAW,EAAE,GAAG,MAAM,CAYxE;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAyC1J"}