openai-ws-opencode 0.1.13 → 0.1.14

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.
@@ -1 +1 @@
1
- {"version":3,"file":"bun-websocket.d.ts","sourceRoot":"","sources":["../../src/transport/bun-websocket.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,aAAa,GAAG;IAC1B,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI,CAAA;IAC5D,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3C,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,IAAI,CAAC,EAAE,MAAM,IAAI,CAAA;IACjB,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,OAAO,CAAA;IAC/D,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,OAAO,CAAA;IAChE,gBAAgB,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,OAAO,CAAA;IAC7E,mBAAmB,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,OAAO,CAAA;CACjF,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG,KACjC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE;IACP,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/B,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,KAAK,OAAO,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,KAAK,IAAI,CAAA;CACjI,KACE,aAAa,CAAA;AAkClB,wBAAgB,+BAA+B,IAAI,oBAAoB,CAGtE"}
1
+ {"version":3,"file":"bun-websocket.d.ts","sourceRoot":"","sources":["../../src/transport/bun-websocket.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,aAAa,GAAG;IAC1B,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI,CAAA;IAC5D,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3C,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,IAAI,CAAC,EAAE,MAAM,IAAI,CAAA;IACjB,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,OAAO,CAAA;IAC/D,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,OAAO,CAAA;IAChE,gBAAgB,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,OAAO,CAAA;IAC7E,mBAAmB,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,OAAO,CAAA;CACjF,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG,KACjC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE;IACP,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/B,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,KAAK,OAAO,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,KAAK,IAAI,CAAA;CACjI,KACE,aAAa,CAAA;AAElB,wBAAgB,+BAA+B,IAAI,oBAAoB,CAEtE"}
@@ -1,291 +1,5 @@
1
- import crypto from "node:crypto";
2
- import { EventEmitter } from "node:events";
3
1
  import WebSocket from "ws";
4
- const CONNECTING = 0;
5
- const OPEN = 1;
6
- const CLOSING = 2;
7
- const CLOSED = 3;
8
2
  export function loadDefaultWebSocketConstructor() {
9
- const connect = globalThis.Bun?.connect;
10
- return typeof connect === "function" ? BunWebSocket : WebSocket;
11
- }
12
- class BunWebSocket extends EventEmitter {
13
- url;
14
- options;
15
- readyState = CONNECTING;
16
- #socket = null;
17
- #handshakeBuffer = Buffer.alloc(0);
18
- #frameBuffer = Buffer.alloc(0);
19
- #fragments = [];
20
- #fragmentOpcode = null;
21
- #closed = false;
22
- constructor(url, options) {
23
- super();
24
- this.url = url;
25
- this.options = options;
26
- void this.#connect();
27
- }
28
- send(data, callback) {
29
- if (this.readyState !== OPEN || !this.#socket)
30
- throw new Error("WebSocket is not open");
31
- try {
32
- this.#socket.write(encodeClientFrame(0x1, Buffer.from(data, "utf8")));
33
- if (callback)
34
- queueMicrotask(() => callback());
35
- }
36
- catch (error) {
37
- if (callback)
38
- callback(error instanceof Error ? error : new Error(String(error)));
39
- else
40
- throw error;
41
- }
42
- }
43
- ping() {
44
- if (this.readyState !== OPEN || !this.#socket)
45
- return;
46
- this.#socket.write(encodeClientFrame(0x9));
47
- }
48
- close(code = 1000, reason = "") {
49
- if (this.readyState === CLOSED || this.readyState === CLOSING)
50
- return;
51
- this.readyState = CLOSING;
52
- if (this.#socket) {
53
- const payload = Buffer.alloc(2 + Buffer.byteLength(reason));
54
- payload.writeUInt16BE(code, 0);
55
- payload.write(reason, 2);
56
- try {
57
- this.#socket.write(encodeClientFrame(0x8, payload));
58
- }
59
- catch { }
60
- this.#endSocket();
61
- }
62
- else {
63
- this.#finishClose(code, reason);
64
- }
65
- }
66
- terminate() {
67
- this.#endSocket();
68
- this.readyState = CLOSED;
69
- }
70
- async #connect() {
71
- const parsed = new URL(this.url);
72
- const connect = globalThis.Bun?.connect;
73
- if (typeof connect !== "function") {
74
- this.#emitError(new Error("Bun.connect is unavailable"));
75
- return;
76
- }
77
- try {
78
- this.#socket = await connect({
79
- hostname: parsed.hostname,
80
- port: Number(parsed.port || (parsed.protocol === "wss:" ? 443 : 80)),
81
- tls: parsed.protocol === "wss:",
82
- socket: {
83
- open: (socket) => {
84
- this.#socket = socket;
85
- queueMicrotask(() => socket.write(this.#handshakeRequest(parsed)));
86
- },
87
- data: (_socket, data) => this.#handleData(Buffer.from(data)),
88
- close: (_socket, error) => {
89
- if (error)
90
- this.#emitError(error);
91
- this.#finishClose();
92
- },
93
- error: (_socket, error) => this.#emitError(error),
94
- connectError: (_socket, error) => this.#emitError(error),
95
- end: () => this.#finishClose(),
96
- timeout: () => this.#emitError(new Error("WebSocket socket timed out")),
97
- },
98
- });
99
- }
100
- catch (error) {
101
- this.#emitError(error instanceof Error ? error : new Error(String(error)));
102
- }
103
- }
104
- #handshakeRequest(parsed) {
105
- const key = crypto.randomBytes(16).toString("base64");
106
- const path = `${parsed.pathname || "/"}${parsed.search}`;
107
- const host = parsed.port ? `${parsed.hostname}:${parsed.port}` : parsed.hostname;
108
- const headers = {
109
- Host: host,
110
- Upgrade: "websocket",
111
- Connection: "Upgrade",
112
- "Sec-WebSocket-Key": key,
113
- "Sec-WebSocket-Version": "13",
114
- ...this.options.headers,
115
- };
116
- return `GET ${path} HTTP/1.1\r\n${Object.entries(headers)
117
- .map(([name, value]) => `${name}: ${value}`)
118
- .join("\r\n")}\r\n\r\n`;
119
- }
120
- #handleData(data) {
121
- if (this.readyState === CONNECTING) {
122
- this.#handshakeBuffer = Buffer.concat([this.#handshakeBuffer, data]);
123
- const split = this.#handshakeBuffer.indexOf("\r\n\r\n");
124
- if (split < 0)
125
- return;
126
- const head = this.#handshakeBuffer.subarray(0, split).toString("utf8");
127
- const rest = this.#handshakeBuffer.subarray(split + 4);
128
- this.#handshakeBuffer = Buffer.alloc(0);
129
- const response = parseHandshake(head);
130
- if (response.status !== 101) {
131
- this.#emitError(new Error(`WebSocket upgrade failed with HTTP ${response.status}`));
132
- this.#endSocket();
133
- return;
134
- }
135
- this.readyState = OPEN;
136
- this.emit("upgrade", { headers: response.headers });
137
- this.emit("open");
138
- if (rest.length)
139
- this.#handleFrames(rest);
140
- return;
141
- }
142
- this.#handleFrames(data);
143
- }
144
- #handleFrames(data) {
145
- this.#frameBuffer = Buffer.concat([this.#frameBuffer, data]);
146
- while (this.#frameBuffer.length >= 2) {
147
- const first = this.#frameBuffer[0];
148
- const second = this.#frameBuffer[1];
149
- const fin = (first & 0x80) !== 0;
150
- let length = second & 0x7f;
151
- let offset = 2;
152
- if (length === 126) {
153
- if (this.#frameBuffer.length < offset + 2)
154
- return;
155
- length = this.#frameBuffer.readUInt16BE(offset);
156
- offset += 2;
157
- }
158
- else if (length === 127) {
159
- if (this.#frameBuffer.length < offset + 8)
160
- return;
161
- const bigLength = this.#frameBuffer.readBigUInt64BE(offset);
162
- if (bigLength > BigInt(Number.MAX_SAFE_INTEGER)) {
163
- this.#emitError(new Error("WebSocket frame is too large"));
164
- this.#endSocket();
165
- return;
166
- }
167
- length = Number(bigLength);
168
- offset += 8;
169
- }
170
- const masked = (second & 0x80) !== 0;
171
- const maskOffset = offset;
172
- if (masked)
173
- offset += 4;
174
- if (this.#frameBuffer.length < offset + length)
175
- return;
176
- let payload = Buffer.from(this.#frameBuffer.subarray(offset, offset + length));
177
- if (masked)
178
- payload = unmask(payload, this.#frameBuffer.subarray(maskOffset, maskOffset + 4));
179
- this.#frameBuffer = this.#frameBuffer.subarray(offset + length);
180
- this.#handleFrame(first & 0x0f, fin, payload);
181
- }
182
- }
183
- #handleFrame(opcode, fin, payload) {
184
- if (opcode === 0x8) {
185
- const code = payload.length >= 2 ? payload.readUInt16BE(0) : undefined;
186
- const reason = payload.length > 2 ? payload.subarray(2).toString("utf8") : undefined;
187
- this.#endSocket();
188
- this.#finishClose(code, reason);
189
- return;
190
- }
191
- if (opcode === 0x9) {
192
- this.#socket?.write(encodeClientFrame(0xa, payload));
193
- return;
194
- }
195
- if (opcode === 0xa) {
196
- this.emit("pong");
197
- return;
198
- }
199
- if (opcode === 0x0) {
200
- this.#fragments.push(payload);
201
- if (fin)
202
- this.#emitMessage(this.#fragmentOpcode ?? 0x1, Buffer.concat(this.#fragments));
203
- if (fin)
204
- this.#resetFragments();
205
- return;
206
- }
207
- if (opcode !== 0x1 && opcode !== 0x2)
208
- return;
209
- if (!fin) {
210
- this.#fragmentOpcode = opcode;
211
- this.#fragments = [payload];
212
- return;
213
- }
214
- this.#emitMessage(opcode, payload);
215
- }
216
- #emitMessage(opcode, payload) {
217
- if (opcode === 0x1)
218
- this.emit("message", payload.toString("utf8"), false);
219
- else
220
- this.emit("message", payload, true);
221
- }
222
- #resetFragments() {
223
- this.#fragmentOpcode = null;
224
- this.#fragments = [];
225
- }
226
- #emitError(error) {
227
- queueMicrotask(() => this.emit("error", error));
228
- }
229
- #endSocket() {
230
- try {
231
- this.#socket?.end?.();
232
- }
233
- catch {
234
- try {
235
- this.#socket?.close?.();
236
- }
237
- catch { }
238
- }
239
- }
240
- #finishClose(code, reason) {
241
- if (this.#closed)
242
- return;
243
- this.#closed = true;
244
- this.readyState = CLOSED;
245
- this.emit("close", code, reason);
246
- }
247
- }
248
- function parseHandshake(text) {
249
- const lines = text.split(/\r?\n/);
250
- const status = Number(lines[0]?.match(/\s(\d{3})\s/)?.[1] ?? 0);
251
- const headers = new Headers();
252
- for (const line of lines.slice(1)) {
253
- const index = line.indexOf(":");
254
- if (index <= 0)
255
- continue;
256
- headers.append(line.slice(0, index).trim(), line.slice(index + 1).trim());
257
- }
258
- return { status, headers };
259
- }
260
- function encodeClientFrame(opcode, payload = Buffer.alloc(0)) {
261
- const length = payload.length;
262
- const lengthBytes = length < 126 ? 0 : length <= 0xffff ? 2 : 8;
263
- const frame = Buffer.alloc(2 + lengthBytes + 4 + length);
264
- frame[0] = 0x80 | opcode;
265
- if (length < 126) {
266
- frame[1] = 0x80 | length;
267
- }
268
- else if (length <= 0xffff) {
269
- frame[1] = 0x80 | 126;
270
- frame.writeUInt16BE(length, 2);
271
- }
272
- else {
273
- frame[1] = 0x80 | 127;
274
- frame.writeBigUInt64BE(BigInt(length), 2);
275
- }
276
- const maskOffset = 2 + lengthBytes;
277
- const dataOffset = maskOffset + 4;
278
- const mask = crypto.randomBytes(4);
279
- mask.copy(frame, maskOffset);
280
- for (let index = 0; index < payload.length; index++) {
281
- frame[dataOffset + index] = payload[index] ^ mask[index % 4];
282
- }
283
- return frame;
284
- }
285
- function unmask(payload, mask) {
286
- const output = Buffer.alloc(payload.length);
287
- for (let index = 0; index < payload.length; index++)
288
- output[index] = payload[index] ^ mask[index % 4];
289
- return output;
3
+ return WebSocket;
290
4
  }
291
5
  //# sourceMappingURL=bun-websocket.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bun-websocket.js","sourceRoot":"","sources":["../../src/transport/bun-websocket.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bun-websocket.js","sourceRoot":"","sources":["../../src/transport/bun-websocket.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,IAAI,CAAA;AAuB1B,MAAM,UAAU,+BAA+B;IAC7C,OAAO,SAA4C,CAAA;AACrD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "openai-ws-opencode",
3
- "version": "0.1.13",
3
+ "version": "0.1.14",
4
4
  "description": "OpenCode plugin for OpenAI Responses WebSocket transport.",
5
5
  "type": "module",
6
6
  "license": "MIT",