@kaitranntt/ccs 7.43.0-dev.5 → 7.43.0-dev.6

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.
@@ -62,12 +62,19 @@ export declare class CursorExecutor {
62
62
  headers: Record<string, string>;
63
63
  transformedBody: ExecutorParams['body'];
64
64
  }>;
65
+ /**
66
+ * Execute a streaming request, piping HTTP/2 data events through
67
+ * StreamingFrameParser for incremental SSE output.
68
+ * Falls back to buffered transformProtobufToSSE when http2 is unavailable.
69
+ */
70
+ private executeStreaming;
65
71
  /**
66
72
  * Parse protobuf buffer into frames and extract text/toolcalls.
67
73
  * Shared logic between JSON and SSE transformers.
68
74
  */
69
75
  private parseProtobufFrames;
70
76
  transformProtobufToJSON(buffer: Buffer, model: string, _body: ExecutorParams['body']): Response;
77
+ /** @deprecated Use executeStreaming() for real-time SSE. Retained for fetch fallback. */
71
78
  transformProtobufToSSE(buffer: Buffer, model: string, _body: ExecutorParams['body']): Response;
72
79
  }
73
80
  export default CursorExecutor;
@@ -1 +1 @@
1
- {"version":3,"file":"cursor-executor.d.ts","sourceRoot":"","sources":["../../src/cursor/cursor-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cursor-executor.d.ts","sourceRoot":"","sources":["../../src/cursor/cursor-executor.ts"],"names":[],"mappings":"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"}
@@ -29,10 +29,9 @@ var __importStar = (this && this.__importStar) || function (mod) {
29
29
  Object.defineProperty(exports, "__esModule", { value: true });
30
30
  exports.CursorExecutor = void 0;
31
31
  const crypto = __importStar(require("crypto"));
32
- const zlib = __importStar(require("zlib"));
33
32
  const cursor_protobuf_js_1 = require("./cursor-protobuf.js");
34
33
  const cursor_translator_js_1 = require("./cursor-translator.js");
35
- const cursor_protobuf_schema_js_1 = require("./cursor-protobuf-schema.js");
34
+ const cursor_stream_parser_js_1 = require("./cursor-stream-parser.js");
36
35
  /** Lazy import http2 */
37
36
  let http2Module = null;
38
37
  async function getHttp2() {
@@ -49,40 +48,6 @@ async function getHttp2() {
49
48
  return null;
50
49
  }
51
50
  }
52
- /**
53
- * Decompress payload if needed
54
- * NOTE: Uses synchronous gzip for single-request CLI tool. Async not warranted for small payloads.
55
- */
56
- function decompressPayload(payload, flags) {
57
- // Check if payload is JSON error
58
- if (payload.length > 10 && payload[0] === 0x7b && payload[1] === 0x22) {
59
- try {
60
- const text = payload.toString('utf-8');
61
- if (text.startsWith('{"error"')) {
62
- return payload;
63
- }
64
- }
65
- catch (err) {
66
- if (process.env.CCS_DEBUG) {
67
- console.error('[cursor] JSON error detection failed:', err);
68
- }
69
- }
70
- }
71
- if (flags === cursor_protobuf_schema_js_1.COMPRESS_FLAG.GZIP ||
72
- flags === cursor_protobuf_schema_js_1.COMPRESS_FLAG.GZIP_ALT ||
73
- flags === cursor_protobuf_schema_js_1.COMPRESS_FLAG.GZIP_BOTH) {
74
- try {
75
- return zlib.gunzipSync(payload);
76
- }
77
- catch (err) {
78
- if (process.env.CCS_DEBUG) {
79
- console.error('[cursor] gzip decompression failed:', err);
80
- }
81
- return Buffer.alloc(0);
82
- }
83
- }
84
- return payload;
85
- }
86
51
  /**
87
52
  * Create error response from JSON error
88
53
  */
@@ -273,6 +238,12 @@ class CursorExecutor {
273
238
  const headers = this.buildHeaders(credentials);
274
239
  const transformedBody = this.transformRequest(model, body, stream, credentials);
275
240
  try {
241
+ // Streaming requests use incremental HTTP/2 → SSE pipeline
242
+ if (stream) {
243
+ const response = await this.executeStreaming(url, headers, transformedBody, model, body, signal);
244
+ return { response, url, headers, transformedBody: body };
245
+ }
246
+ // Non-streaming: buffer entire response then transform to JSON
276
247
  const http2 = await getHttp2();
277
248
  const response = http2
278
249
  ? await this.makeHttp2Request(url, headers, transformedBody, signal)
@@ -291,9 +262,7 @@ class CursorExecutor {
291
262
  });
292
263
  return { response: errorResponse, url, headers, transformedBody: body };
293
264
  }
294
- const transformedResponse = stream === true
295
- ? this.transformProtobufToSSE(response.body, model, body)
296
- : this.transformProtobufToJSON(response.body, model, body);
265
+ const transformedResponse = this.transformProtobufToJSON(response.body, model, body);
297
266
  return { response: transformedResponse, url, headers, transformedBody: body };
298
267
  }
299
268
  catch (error) {
@@ -310,6 +279,240 @@ class CursorExecutor {
310
279
  return { response: errorResponse, url, headers, transformedBody: body };
311
280
  }
312
281
  }
282
+ /**
283
+ * Execute a streaming request, piping HTTP/2 data events through
284
+ * StreamingFrameParser for incremental SSE output.
285
+ * Falls back to buffered transformProtobufToSSE when http2 is unavailable.
286
+ */
287
+ async executeStreaming(url, headers, body, model, requestBody, signal) {
288
+ const http2 = await getHttp2();
289
+ if (!http2) {
290
+ const response = await this.makeFetchRequest(url, headers, body, signal);
291
+ if (response.status !== 200) {
292
+ const errorText = response.body?.toString() || 'Unknown error';
293
+ return new Response(JSON.stringify({
294
+ error: {
295
+ message: `[${response.status}]: ${errorText}`,
296
+ type: response.status === 429 ? 'rate_limit_error' : 'invalid_request_error',
297
+ code: '',
298
+ },
299
+ }), { status: response.status, headers: { 'Content-Type': 'application/json' } });
300
+ }
301
+ return this.transformProtobufToSSE(response.body, model, requestBody);
302
+ }
303
+ const responseId = `chatcmpl-cursor-${Date.now()}`;
304
+ const created = Math.floor(Date.now() / 1000);
305
+ return new Promise((resolve, reject) => {
306
+ const urlObj = new URL(url);
307
+ const client = http2.connect(`https://${urlObj.host}`);
308
+ client.on('error', (err) => {
309
+ client.close();
310
+ reject(err);
311
+ });
312
+ const req = client.request({
313
+ ':method': 'POST',
314
+ ':path': urlObj.pathname,
315
+ ':authority': urlObj.host,
316
+ ':scheme': 'https',
317
+ ...headers,
318
+ });
319
+ // Register abort before response headers arrive so cancellation works at all stages
320
+ let streamClosed = false;
321
+ let streamController = null;
322
+ if (signal) {
323
+ const onAbort = () => {
324
+ streamClosed = true;
325
+ // Close the ReadableStream controller so consumers don't hang on reader.read()
326
+ if (streamController) {
327
+ try {
328
+ streamController.close();
329
+ }
330
+ catch {
331
+ /* already closed */
332
+ }
333
+ }
334
+ req.close();
335
+ client.close();
336
+ };
337
+ signal.addEventListener('abort', onAbort, { once: true });
338
+ const cleanup = () => signal.removeEventListener('abort', onAbort);
339
+ req.on('end', cleanup);
340
+ req.on('error', cleanup);
341
+ }
342
+ req.on('response', (hdrs) => {
343
+ const status = Number(hdrs[':status']) || 500;
344
+ if (status !== 200) {
345
+ const errorChunks = [];
346
+ req.on('data', (c) => errorChunks.push(c));
347
+ req.on('end', () => {
348
+ client.close();
349
+ const errorText = Buffer.concat(errorChunks).toString();
350
+ resolve(new Response(JSON.stringify({
351
+ error: {
352
+ message: `[${status}]: ${errorText}`,
353
+ type: 'invalid_request_error',
354
+ code: '',
355
+ },
356
+ }), { status, headers: { 'Content-Type': 'application/json' } }));
357
+ });
358
+ return;
359
+ }
360
+ // Status 200: set up incremental streaming pipeline
361
+ const parser = new cursor_stream_parser_js_1.StreamingFrameParser();
362
+ const enc = new TextEncoder();
363
+ const toolCallsMap = new Map();
364
+ let chunkCount = 0;
365
+ let toolCallCount = 0;
366
+ const readable = new ReadableStream({
367
+ start(controller) {
368
+ streamController = controller;
369
+ const emitSSE = (data) => {
370
+ if (streamClosed)
371
+ return;
372
+ controller.enqueue(enc.encode(`data: ${data}\n\n`));
373
+ };
374
+ const closeStream = () => {
375
+ if (streamClosed)
376
+ return;
377
+ streamClosed = true;
378
+ try {
379
+ controller.close();
380
+ }
381
+ catch {
382
+ /* already closed */
383
+ }
384
+ client.close();
385
+ };
386
+ const buildChunk = (delta, finishReason) => JSON.stringify({
387
+ id: responseId,
388
+ object: 'chat.completion.chunk',
389
+ created,
390
+ model,
391
+ choices: [{ index: 0, delta, finish_reason: finishReason }],
392
+ });
393
+ req.on('data', (chunk) => {
394
+ if (streamClosed)
395
+ return;
396
+ for (const frame of parser.push(chunk)) {
397
+ if (frame.type === 'error') {
398
+ emitSSE(JSON.stringify({
399
+ error: { message: frame.message, type: frame.errorType, code: '' },
400
+ }));
401
+ emitSSE('[DONE]');
402
+ closeStream();
403
+ return;
404
+ }
405
+ if (frame.type === 'toolCall') {
406
+ const tc = frame.toolCall;
407
+ // Emit role chunk on first content
408
+ if (chunkCount === 0) {
409
+ emitSSE(buildChunk({ role: 'assistant', content: '' }, null));
410
+ chunkCount++;
411
+ }
412
+ if (toolCallsMap.has(tc.id)) {
413
+ const existing = toolCallsMap.get(tc.id);
414
+ if (!existing)
415
+ continue;
416
+ existing.function.arguments += tc.function.arguments;
417
+ existing.isLast = tc.isLast;
418
+ if (tc.function.arguments) {
419
+ emitSSE(buildChunk({
420
+ tool_calls: [
421
+ {
422
+ index: existing.index,
423
+ id: tc.id,
424
+ type: 'function',
425
+ function: {
426
+ name: tc.function.name,
427
+ arguments: tc.function.arguments,
428
+ },
429
+ },
430
+ ],
431
+ }, null));
432
+ chunkCount++;
433
+ }
434
+ }
435
+ else {
436
+ const idx = toolCallCount++;
437
+ toolCallsMap.set(tc.id, { ...tc, index: idx });
438
+ emitSSE(buildChunk({
439
+ tool_calls: [
440
+ {
441
+ index: idx,
442
+ id: tc.id,
443
+ type: 'function',
444
+ function: {
445
+ name: tc.function.name,
446
+ arguments: tc.function.arguments,
447
+ },
448
+ },
449
+ ],
450
+ }, null));
451
+ chunkCount++;
452
+ }
453
+ }
454
+ if (frame.type === 'text') {
455
+ const delta = chunkCount === 0 && toolCallCount === 0
456
+ ? { role: 'assistant', content: frame.text }
457
+ : { content: frame.text };
458
+ emitSSE(buildChunk(delta, null));
459
+ chunkCount++;
460
+ }
461
+ }
462
+ });
463
+ req.on('end', () => {
464
+ if (streamClosed)
465
+ return;
466
+ if (chunkCount === 0 && toolCallCount === 0) {
467
+ emitSSE(buildChunk({ role: 'assistant', content: '' }, null));
468
+ }
469
+ emitSSE(JSON.stringify({
470
+ id: responseId,
471
+ object: 'chat.completion.chunk',
472
+ created,
473
+ model,
474
+ choices: [
475
+ {
476
+ index: 0,
477
+ delta: {},
478
+ finish_reason: toolCallCount > 0 ? 'tool_calls' : 'stop',
479
+ },
480
+ ],
481
+ usage: { prompt_tokens: 0, completion_tokens: 0, total_tokens: 0 },
482
+ }));
483
+ emitSSE('[DONE]');
484
+ closeStream();
485
+ });
486
+ req.on('error', (err) => {
487
+ if (!streamClosed) {
488
+ try {
489
+ controller.error(err);
490
+ }
491
+ catch {
492
+ /* already closed */
493
+ }
494
+ }
495
+ client.close();
496
+ });
497
+ },
498
+ });
499
+ resolve(new Response(readable, {
500
+ status: 200,
501
+ headers: {
502
+ 'Content-Type': 'text/event-stream',
503
+ 'Cache-Control': 'no-cache',
504
+ Connection: 'keep-alive',
505
+ },
506
+ }));
507
+ });
508
+ req.on('error', (err) => {
509
+ client.close();
510
+ reject(err);
511
+ });
512
+ req.write(body);
513
+ req.end();
514
+ });
515
+ }
313
516
  /**
314
517
  * Parse protobuf buffer into frames and extract text/toolcalls.
315
518
  * Shared logic between JSON and SSE transformers.
@@ -325,7 +528,7 @@ class CursorExecutor {
325
528
  break;
326
529
  let payload = buffer.slice(offset + 5, offset + 5 + length);
327
530
  offset += 5 + length;
328
- payload = decompressPayload(payload, flags);
531
+ payload = (0, cursor_stream_parser_js_1.decompressPayload)(payload, flags);
329
532
  // Check for JSON error format
330
533
  try {
331
534
  const text = payload.toString('utf-8');
@@ -458,11 +661,8 @@ class CursorExecutor {
458
661
  headers: { 'Content-Type': 'application/json' },
459
662
  });
460
663
  }
664
+ /** @deprecated Use executeStreaming() for real-time SSE. Retained for fetch fallback. */
461
665
  transformProtobufToSSE(buffer, model, _body) {
462
- // TODO(#531): Implement true streaming — currently buffers entire response before transforming.
463
- // This should pipe HTTP/2 data events through a TransformStream for incremental SSE output.
464
- // See: https://github.com/kaitranntt/ccs/issues/531
465
- // NOTE: Chunk boundary splits may emit duplicate SSE messages if a frame spans multiple chunks.
466
666
  const responseId = `chatcmpl-cursor-${Date.now()}`;
467
667
  const created = Math.floor(Date.now() / 1000);
468
668
  const chunks = [];
@@ -1 +1 @@
1
- {"version":3,"file":"cursor-executor.js","sourceRoot":"","sources":["../../src/cursor/cursor-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cursor-executor.js","sourceRoot":"","sources":["../../src/cursor/cursor-executor.ts"],"names":[],"mappings":"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"}
@@ -161,47 +161,47 @@ function extractToolCall(toolCallData) {
161
161
  let rawArgs = '';
162
162
  let isLast = false;
163
163
  // Extract tool call ID
164
- if (toolCall.has(cursor_protobuf_schema_js_1.FIELD.TOOL_ID)) {
165
- const idField = toolCall.get(cursor_protobuf_schema_js_1.FIELD.TOOL_ID);
164
+ if (toolCall.has(cursor_protobuf_schema_js_1.FIELD.ToolCall.ID)) {
165
+ const idField = toolCall.get(cursor_protobuf_schema_js_1.FIELD.ToolCall.ID);
166
166
  if (idField && idField[0]) {
167
167
  const fullId = new TextDecoder().decode(idField[0].value);
168
168
  toolCallId = fullId.split('\n')[0]; // Take first line
169
169
  }
170
170
  }
171
171
  // Extract tool name
172
- if (toolCall.has(cursor_protobuf_schema_js_1.FIELD.TOOL_NAME)) {
173
- const nameField = toolCall.get(cursor_protobuf_schema_js_1.FIELD.TOOL_NAME);
172
+ if (toolCall.has(cursor_protobuf_schema_js_1.FIELD.ToolCall.NAME)) {
173
+ const nameField = toolCall.get(cursor_protobuf_schema_js_1.FIELD.ToolCall.NAME);
174
174
  if (nameField && nameField[0]) {
175
175
  toolName = new TextDecoder().decode(nameField[0].value);
176
176
  }
177
177
  }
178
178
  // Extract is_last flag
179
- if (toolCall.has(cursor_protobuf_schema_js_1.FIELD.TOOL_IS_LAST)) {
180
- const lastField = toolCall.get(cursor_protobuf_schema_js_1.FIELD.TOOL_IS_LAST);
179
+ if (toolCall.has(cursor_protobuf_schema_js_1.FIELD.ToolCall.IS_LAST)) {
180
+ const lastField = toolCall.get(cursor_protobuf_schema_js_1.FIELD.ToolCall.IS_LAST);
181
181
  if (lastField && lastField[0]) {
182
182
  isLast = lastField[0].value !== 0;
183
183
  }
184
184
  }
185
185
  // Extract MCP params - nested real tool info
186
- if (toolCall.has(cursor_protobuf_schema_js_1.FIELD.TOOL_MCP_PARAMS)) {
186
+ if (toolCall.has(cursor_protobuf_schema_js_1.FIELD.ToolCall.MCP_PARAMS)) {
187
187
  try {
188
- const mcpField = toolCall.get(cursor_protobuf_schema_js_1.FIELD.TOOL_MCP_PARAMS);
188
+ const mcpField = toolCall.get(cursor_protobuf_schema_js_1.FIELD.ToolCall.MCP_PARAMS);
189
189
  if (!mcpField || !mcpField[0])
190
190
  return null;
191
191
  const mcpParams = decodeMessage(mcpField[0].value);
192
- if (mcpParams.has(cursor_protobuf_schema_js_1.FIELD.MCP_TOOLS_LIST)) {
193
- const toolsList = mcpParams.get(cursor_protobuf_schema_js_1.FIELD.MCP_TOOLS_LIST);
192
+ if (mcpParams.has(cursor_protobuf_schema_js_1.FIELD.McpParams.TOOLS_LIST)) {
193
+ const toolsList = mcpParams.get(cursor_protobuf_schema_js_1.FIELD.McpParams.TOOLS_LIST);
194
194
  if (!toolsList || !toolsList[0])
195
195
  return null;
196
196
  const tool = decodeMessage(toolsList[0].value);
197
- if (tool.has(cursor_protobuf_schema_js_1.FIELD.MCP_NESTED_NAME)) {
198
- const nestedName = tool.get(cursor_protobuf_schema_js_1.FIELD.MCP_NESTED_NAME);
197
+ if (tool.has(cursor_protobuf_schema_js_1.FIELD.McpNested.NAME)) {
198
+ const nestedName = tool.get(cursor_protobuf_schema_js_1.FIELD.McpNested.NAME);
199
199
  if (nestedName && nestedName[0]) {
200
200
  toolName = new TextDecoder().decode(nestedName[0].value);
201
201
  }
202
202
  }
203
- if (tool.has(cursor_protobuf_schema_js_1.FIELD.MCP_NESTED_PARAMS)) {
204
- const nestedParams = tool.get(cursor_protobuf_schema_js_1.FIELD.MCP_NESTED_PARAMS);
203
+ if (tool.has(cursor_protobuf_schema_js_1.FIELD.McpNested.PARAMS)) {
204
+ const nestedParams = tool.get(cursor_protobuf_schema_js_1.FIELD.McpNested.PARAMS);
205
205
  if (nestedParams && nestedParams[0]) {
206
206
  rawArgs = new TextDecoder().decode(nestedParams[0].value);
207
207
  }
@@ -216,8 +216,8 @@ function extractToolCall(toolCallData) {
216
216
  }
217
217
  }
218
218
  // Fallback to raw_args
219
- if (!rawArgs && toolCall.has(cursor_protobuf_schema_js_1.FIELD.TOOL_RAW_ARGS)) {
220
- const rawArgsField = toolCall.get(cursor_protobuf_schema_js_1.FIELD.TOOL_RAW_ARGS);
219
+ if (!rawArgs && toolCall.has(cursor_protobuf_schema_js_1.FIELD.ToolCall.RAW_ARGS)) {
220
+ const rawArgsField = toolCall.get(cursor_protobuf_schema_js_1.FIELD.ToolCall.RAW_ARGS);
221
221
  if (rawArgsField && rawArgsField[0]) {
222
222
  rawArgs = new TextDecoder().decode(rawArgsField[0].value);
223
223
  }
@@ -243,20 +243,20 @@ function extractTextAndThinking(responseData) {
243
243
  let text = null;
244
244
  let thinking = null;
245
245
  // Extract text
246
- if (nested.has(cursor_protobuf_schema_js_1.FIELD.RESPONSE_TEXT)) {
247
- const textField = nested.get(cursor_protobuf_schema_js_1.FIELD.RESPONSE_TEXT);
246
+ if (nested.has(cursor_protobuf_schema_js_1.FIELD.ChatResponse.TEXT)) {
247
+ const textField = nested.get(cursor_protobuf_schema_js_1.FIELD.ChatResponse.TEXT);
248
248
  if (textField && textField[0]) {
249
249
  text = new TextDecoder().decode(textField[0].value);
250
250
  }
251
251
  }
252
252
  // Extract thinking
253
- if (nested.has(cursor_protobuf_schema_js_1.FIELD.THINKING)) {
253
+ if (nested.has(cursor_protobuf_schema_js_1.FIELD.ChatResponse.THINKING)) {
254
254
  try {
255
- const thinkingField = nested.get(cursor_protobuf_schema_js_1.FIELD.THINKING);
255
+ const thinkingField = nested.get(cursor_protobuf_schema_js_1.FIELD.ChatResponse.THINKING);
256
256
  if (thinkingField && thinkingField[0]) {
257
257
  const thinkingMsg = decodeMessage(thinkingField[0].value);
258
- if (thinkingMsg.has(cursor_protobuf_schema_js_1.FIELD.THINKING_TEXT)) {
259
- const thinkingTextField = thinkingMsg.get(cursor_protobuf_schema_js_1.FIELD.THINKING_TEXT);
258
+ if (thinkingMsg.has(cursor_protobuf_schema_js_1.FIELD.Thinking.TEXT)) {
259
+ const thinkingTextField = thinkingMsg.get(cursor_protobuf_schema_js_1.FIELD.Thinking.TEXT);
260
260
  if (thinkingTextField && thinkingTextField[0]) {
261
261
  thinking = new TextDecoder().decode(thinkingTextField[0].value);
262
262
  }
@@ -279,8 +279,8 @@ function extractTextFromResponse(payload) {
279
279
  try {
280
280
  const fields = decodeMessage(payload);
281
281
  // Field 1: ClientSideToolV2Call
282
- if (fields.has(cursor_protobuf_schema_js_1.FIELD.TOOL_CALL)) {
283
- const toolCallField = fields.get(cursor_protobuf_schema_js_1.FIELD.TOOL_CALL);
282
+ if (fields.has(cursor_protobuf_schema_js_1.FIELD.Response.TOOL_CALL)) {
283
+ const toolCallField = fields.get(cursor_protobuf_schema_js_1.FIELD.Response.TOOL_CALL);
284
284
  if (toolCallField && toolCallField[0]) {
285
285
  const toolCall = extractToolCall(toolCallField[0].value);
286
286
  if (toolCall) {
@@ -289,8 +289,8 @@ function extractTextFromResponse(payload) {
289
289
  }
290
290
  }
291
291
  // Field 2: StreamUnifiedChatResponse
292
- if (fields.has(cursor_protobuf_schema_js_1.FIELD.RESPONSE)) {
293
- const responseField = fields.get(cursor_protobuf_schema_js_1.FIELD.RESPONSE);
292
+ if (fields.has(cursor_protobuf_schema_js_1.FIELD.Response.RESPONSE)) {
293
+ const responseField = fields.get(cursor_protobuf_schema_js_1.FIELD.Response.RESPONSE);
294
294
  if (responseField && responseField[0]) {
295
295
  const { text, thinking } = extractTextAndThinking(responseField[0].value);
296
296
  if (text || thinking) {