claudebox 0.1.0 → 0.2.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.
Files changed (47) hide show
  1. package/README.md +10 -2
  2. package/dist/background-update.d.ts +2 -0
  3. package/dist/background-update.d.ts.map +1 -0
  4. package/dist/background-update.js +48 -0
  5. package/dist/background-update.js.map +1 -0
  6. package/dist/cli.js +58 -50
  7. package/dist/cli.js.map +1 -1
  8. package/dist/config.d.ts +1 -3
  9. package/dist/config.d.ts.map +1 -1
  10. package/dist/config.js +69 -47
  11. package/dist/config.js.map +1 -1
  12. package/dist/configure.d.ts +2 -0
  13. package/dist/configure.d.ts.map +1 -0
  14. package/dist/configure.js +121 -0
  15. package/dist/configure.js.map +1 -0
  16. package/dist/converter.d.ts.map +1 -1
  17. package/dist/converter.js +42 -33
  18. package/dist/converter.js.map +1 -1
  19. package/dist/logger.d.ts +1 -1
  20. package/dist/logger.d.ts.map +1 -1
  21. package/dist/logger.js +20 -16
  22. package/dist/logger.js.map +1 -1
  23. package/dist/providers/gemini.d.ts +2 -2
  24. package/dist/providers/gemini.d.ts.map +1 -1
  25. package/dist/providers/gemini.js +14 -11
  26. package/dist/providers/gemini.js.map +1 -1
  27. package/dist/providers/index.d.ts +3 -3
  28. package/dist/providers/index.js +3 -3
  29. package/dist/providers/ollama.d.ts +2 -2
  30. package/dist/providers/ollama.d.ts.map +1 -1
  31. package/dist/providers/ollama.js +14 -11
  32. package/dist/providers/ollama.js.map +1 -1
  33. package/dist/providers/openai.d.ts +2 -2
  34. package/dist/providers/openai.d.ts.map +1 -1
  35. package/dist/providers/openai.js +10 -10
  36. package/dist/providers/openai.js.map +1 -1
  37. package/dist/server.js +20 -20
  38. package/dist/translator.d.ts +1 -1
  39. package/dist/translator.d.ts.map +1 -1
  40. package/dist/translator.js +40 -42
  41. package/dist/translator.js.map +1 -1
  42. package/dist/types.d.ts +14 -14
  43. package/dist/update-checker.d.ts +4 -0
  44. package/dist/update-checker.d.ts.map +1 -0
  45. package/dist/update-checker.js +96 -0
  46. package/dist/update-checker.js.map +1 -0
  47. package/package.json +12 -4
@@ -0,0 +1,121 @@
1
+ import { select, confirm, input, password } from '@inquirer/prompts';
2
+ import { config } from './config.js';
3
+ export async function runConfigure() {
4
+ console.log('Current Configuration:');
5
+ console.log(JSON.stringify(config.summary(), null, 2));
6
+ console.log('\n---');
7
+ const proceed = await confirm({
8
+ message: 'Do you want to update this configuration interactively?',
9
+ default: true,
10
+ });
11
+ if (!proceed) {
12
+ console.log('Configuration unchanged.');
13
+ return;
14
+ }
15
+ const preferredProvider = await select({
16
+ message: 'Select your preferred provider:',
17
+ choices: [
18
+ { name: 'Ollama', value: 'ollama' },
19
+ { name: 'OpenAI', value: 'openai' },
20
+ { name: 'Gemini', value: 'gemini' },
21
+ ],
22
+ default: 'ollama',
23
+ });
24
+ const updates = {
25
+ preferredProvider,
26
+ providers: {},
27
+ };
28
+ if (preferredProvider === 'ollama') {
29
+ let models = [];
30
+ const apiBase = config.providers.ollama.apiBase || 'http://localhost:11434';
31
+ console.log('\nšŸ’” Tip: To use cloud models (like kimi-k2.5:cloud), pull them first using `ollama pull <model>`.');
32
+ console.log(' Search for available cloud models at: https://ollama.com/search?c=cloud\n');
33
+ let bigModel = '';
34
+ let smallModel = '';
35
+ while (true) {
36
+ let models = [];
37
+ try {
38
+ const res = await fetch(`${apiBase}/api/tags`);
39
+ if (res.ok) {
40
+ const data = await res.json();
41
+ models = data.models?.map((m) => m.name) || [];
42
+ }
43
+ }
44
+ catch (e) {
45
+ // Silently ignore or warn below
46
+ }
47
+ if (models.length > 0) {
48
+ const choices = [
49
+ { name: 'šŸ”„ Refresh list...', value: 'refresh_list_flag' },
50
+ ...models.map((m) => ({ name: m, value: m })),
51
+ ];
52
+ bigModel = await select({
53
+ message: 'Select a large model for complex reasoning:',
54
+ choices,
55
+ });
56
+ if (bigModel === 'refresh_list_flag') {
57
+ console.log('\nRefreshing models...');
58
+ continue;
59
+ }
60
+ smallModel = await select({
61
+ message: 'Select a small model for fast responses:',
62
+ choices,
63
+ });
64
+ if (smallModel === 'refresh_list_flag') {
65
+ console.log('\nRefreshing models...');
66
+ continue;
67
+ }
68
+ break;
69
+ }
70
+ else {
71
+ console.log(`\nCould not fetch local models from ${apiBase}. Is Ollama running?`);
72
+ const action = await select({
73
+ message: 'No models found.',
74
+ choices: [
75
+ { name: 'šŸ”„ Refresh list', value: 'refresh_list_flag' },
76
+ { name: 'āŒ Cancel configuration', value: 'cancel' },
77
+ ],
78
+ });
79
+ if (action === 'refresh_list_flag') {
80
+ console.log('\nRefreshing models...');
81
+ continue;
82
+ }
83
+ else {
84
+ return; // Exit configuration entirely
85
+ }
86
+ }
87
+ }
88
+ updates.providers.ollama = {
89
+ bigModel,
90
+ smallModel,
91
+ };
92
+ }
93
+ else {
94
+ // For OpenAI or Gemini
95
+ const apiKey = await password({
96
+ message: `Enter your ${preferredProvider} API key (leave blank to keep current):`,
97
+ mask: '*',
98
+ });
99
+ if (!updates.providers[preferredProvider]) {
100
+ updates.providers[preferredProvider] = {};
101
+ }
102
+ if (apiKey) {
103
+ updates.providers[preferredProvider].apiKey = apiKey;
104
+ }
105
+ const bigModel = await input({
106
+ message: `Enter the big model for ${preferredProvider}:`,
107
+ default: config.providers[preferredProvider]?.bigModel || '',
108
+ });
109
+ const smallModel = await input({
110
+ message: `Enter the small model for ${preferredProvider}:`,
111
+ default: config.providers[preferredProvider]?.smallModel || '',
112
+ });
113
+ updates.providers[preferredProvider].bigModel = bigModel;
114
+ updates.providers[preferredProvider].smallModel = smallModel;
115
+ }
116
+ config.save(updates);
117
+ console.log('\nāœ… Configuration updated successfully!');
118
+ console.log('Current Configuration Summary:');
119
+ console.log(JSON.stringify(config.summary(), null, 2));
120
+ }
121
+ //# sourceMappingURL=configure.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configure.js","sourceRoot":"","sources":["../src/configure.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"converter.d.ts","sourceRoot":"","sources":["../src/converter.ts"],"names":[],"mappings":"AAAA,wBAAgB,mBAAmB,CAAC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,WAAW,EAAE,MAAM;;;;;cAK7D,MAAM;eAAS,MAAM;aAAO,MAAM;eAAS,MAAM;gBAAU,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;;;;;;EAwChH;AAcD,wBAAuB,aAAa,CAClC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,EAC7B,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,GACZ,cAAc,CAAC,MAAM,CAAC,CAoHxB"}
1
+ {"version":3,"file":"converter.d.ts","sourceRoot":"","sources":["../src/converter.ts"],"names":[],"mappings":"AAAA,wBAAgB,mBAAmB,CAAC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,WAAW,EAAE,MAAM;;;;;cAMlF,MAAM;eACL,MAAM;aACR,MAAM;eACJ,MAAM;gBACL,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;;;;;;EAyClC;AAmBD,wBAAuB,aAAa,CAClC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,EAC7B,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,GACZ,cAAc,CAAC,MAAM,CAAC,CAwHxB"}
package/dist/converter.js CHANGED
@@ -1,24 +1,24 @@
1
1
  export function convertNonStreaming(openAIResponse, claudeModel) {
2
2
  const choice = openAIResponse.choices?.[0];
3
3
  if (!choice)
4
- throw new Error("No choices in response");
4
+ throw new Error('No choices in response');
5
5
  const msg = choice.message;
6
6
  const content = [];
7
7
  if (msg.content) {
8
- content.push({ type: "text", text: msg.content });
8
+ content.push({ type: 'text', text: msg.content });
9
9
  }
10
10
  if (msg.tool_calls?.length) {
11
11
  for (const tc of msg.tool_calls) {
12
12
  let parsedInput = {};
13
13
  try {
14
- parsedInput = JSON.parse(tc.function.arguments || "{}");
14
+ parsedInput = JSON.parse(tc.function.arguments || '{}');
15
15
  }
16
16
  catch {
17
17
  // IMP: Provider returned malformed tool-call JSON, falling back to empty input
18
18
  parsedInput = {};
19
19
  }
20
20
  content.push({
21
- type: "tool_use",
21
+ type: 'tool_use',
22
22
  id: tc.id,
23
23
  name: tc.function.name,
24
24
  input: parsedInput,
@@ -29,8 +29,8 @@ export function convertNonStreaming(openAIResponse, claudeModel) {
29
29
  const usage = openAIResponse.usage;
30
30
  return {
31
31
  id: openAIResponse.id ?? `msg_${Date.now()}`,
32
- type: "message",
33
- role: "assistant",
32
+ type: 'message',
33
+ role: 'assistant',
34
34
  content,
35
35
  model: claudeModel,
36
36
  stop_reason: stopReason,
@@ -43,11 +43,16 @@ export function convertNonStreaming(openAIResponse, claudeModel) {
43
43
  }
44
44
  function mapStopReason(finishReason) {
45
45
  switch (finishReason) {
46
- case "stop": return "end_turn";
47
- case "length": return "max_tokens";
48
- case "tool_calls": return "tool_use";
49
- case "content_filter": return "end_turn";
50
- default: return "end_turn";
46
+ case 'stop':
47
+ return 'end_turn';
48
+ case 'length':
49
+ return 'max_tokens';
50
+ case 'tool_calls':
51
+ return 'tool_use';
52
+ case 'content_filter':
53
+ return 'end_turn';
54
+ default:
55
+ return 'end_turn';
51
56
  }
52
57
  }
53
58
  // ─── Streaming ────────────────────────────────────────────────────────────────
@@ -55,11 +60,11 @@ export async function* convertStream(stream, claudeModel, msgId) {
55
60
  const id = msgId || `msg_${Date.now()}`;
56
61
  // message_start
57
62
  yield `event: message_start\ndata: ${JSON.stringify({
58
- type: "message_start",
63
+ type: 'message_start',
59
64
  message: {
60
65
  id,
61
- type: "message",
62
- role: "assistant",
66
+ type: 'message',
67
+ role: 'assistant',
63
68
  content: [],
64
69
  model: claudeModel,
65
70
  stop_reason: null,
@@ -73,10 +78,10 @@ export async function* convertStream(stream, claudeModel, msgId) {
73
78
  let inputTokens = 0;
74
79
  let outputTokens = 0;
75
80
  for await (const line of stream) {
76
- if (!line.startsWith("data: "))
81
+ if (!line.startsWith('data: '))
77
82
  continue;
78
83
  const data = line.slice(6).trim();
79
- if (data === "[DONE]")
84
+ if (data === '[DONE]')
80
85
  break;
81
86
  let chunk;
82
87
  try {
@@ -96,22 +101,22 @@ export async function* convertStream(stream, claudeModel, msgId) {
96
101
  }
97
102
  // Text delta
98
103
  if (delta?.content !== undefined && delta.content !== null) {
99
- if (currentBlockType !== "text") {
104
+ if (currentBlockType !== 'text') {
100
105
  if (currentBlockType !== null) {
101
- yield `event: content_block_stop\ndata: ${JSON.stringify({ type: "content_block_stop", index: blockIndex })}\n\n`;
106
+ yield `event: content_block_stop\ndata: ${JSON.stringify({ type: 'content_block_stop', index: blockIndex })}\n\n`;
102
107
  blockIndex++;
103
108
  }
104
- currentBlockType = "text";
109
+ currentBlockType = 'text';
105
110
  yield `event: content_block_start\ndata: ${JSON.stringify({
106
- type: "content_block_start",
111
+ type: 'content_block_start',
107
112
  index: blockIndex,
108
- content_block: { type: "text", text: "" },
113
+ content_block: { type: 'text', text: '' },
109
114
  })}\n\n`;
110
115
  }
111
116
  yield `event: content_block_delta\ndata: ${JSON.stringify({
112
- type: "content_block_delta",
117
+ type: 'content_block_delta',
113
118
  index: blockIndex,
114
- delta: { type: "text_delta", text: delta.content },
119
+ delta: { type: 'text_delta', text: delta.content },
115
120
  })}\n\n`;
116
121
  }
117
122
  // Tool call deltas
@@ -121,23 +126,27 @@ export async function* convertStream(stream, claudeModel, msgId) {
121
126
  if (!toolCallAccumulators[tcIdx]) {
122
127
  // New tool call block
123
128
  if (currentBlockType !== null) {
124
- yield `event: content_block_stop\ndata: ${JSON.stringify({ type: "content_block_stop", index: blockIndex })}\n\n`;
129
+ yield `event: content_block_stop\ndata: ${JSON.stringify({ type: 'content_block_stop', index: blockIndex })}\n\n`;
125
130
  blockIndex++;
126
131
  }
127
- toolCallAccumulators[tcIdx] = { id: tc.id ?? "", name: tc.function?.name ?? "", args: "" };
128
- currentBlockType = "tool_use";
132
+ toolCallAccumulators[tcIdx] = {
133
+ id: tc.id ?? '',
134
+ name: tc.function?.name ?? '',
135
+ args: '',
136
+ };
137
+ currentBlockType = 'tool_use';
129
138
  yield `event: content_block_start\ndata: ${JSON.stringify({
130
- type: "content_block_start",
139
+ type: 'content_block_start',
131
140
  index: blockIndex,
132
- content_block: { type: "tool_use", id: tc.id, name: tc.function?.name, input: {} },
141
+ content_block: { type: 'tool_use', id: tc.id, name: tc.function?.name, input: {} },
133
142
  })}\n\n`;
134
143
  }
135
144
  if (tc.function?.arguments) {
136
145
  toolCallAccumulators[tcIdx].args += tc.function.arguments;
137
146
  yield `event: content_block_delta\ndata: ${JSON.stringify({
138
- type: "content_block_delta",
147
+ type: 'content_block_delta',
139
148
  index: blockIndex,
140
- delta: { type: "input_json_delta", partial_json: tc.function.arguments },
149
+ delta: { type: 'input_json_delta', partial_json: tc.function.arguments },
141
150
  })}\n\n`;
142
151
  }
143
152
  }
@@ -145,14 +154,14 @@ export async function* convertStream(stream, claudeModel, msgId) {
145
154
  // Finish
146
155
  if (choice.finish_reason) {
147
156
  if (currentBlockType !== null) {
148
- yield `event: content_block_stop\ndata: ${JSON.stringify({ type: "content_block_stop", index: blockIndex })}\n\n`;
157
+ yield `event: content_block_stop\ndata: ${JSON.stringify({ type: 'content_block_stop', index: blockIndex })}\n\n`;
149
158
  }
150
159
  yield `event: message_delta\ndata: ${JSON.stringify({
151
- type: "message_delta",
160
+ type: 'message_delta',
152
161
  delta: { stop_reason: mapStopReason(choice.finish_reason), stop_sequence: null },
153
162
  usage: { output_tokens: outputTokens },
154
163
  })}\n\n`;
155
- yield `event: message_stop\ndata: ${JSON.stringify({ type: "message_stop" })}\n\n`;
164
+ yield `event: message_stop\ndata: ${JSON.stringify({ type: 'message_stop' })}\n\n`;
156
165
  }
157
166
  }
158
167
  }
@@ -1 +1 @@
1
- {"version":3,"file":"converter.js","sourceRoot":"","sources":["../src/converter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"converter.js","sourceRoot":"","sources":["../src/converter.ts"],"names":[],"mappings":"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"}
package/dist/logger.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export declare function logRequestStart(requestId: string, claudeModel: string, targetModel: string, provider: string, numMessages: number, numTools: number): void;
2
2
  export declare function logRequest(requestId: string, claudeModel: string, targetModel: string, provider: string, numMessages: number, numTools: number, statusCode: number, durationMs: number): void;
3
- export declare function logVerbose(requestId: string, type: "PROMPT" | "RESPONSE", data: any): void;
3
+ export declare function logVerbose(requestId: string, type: 'PROMPT' | 'RESPONSE', data: any): void;
4
4
  export declare function logInfo(requestId: string, message: string): void;
5
5
  //# sourceMappingURL=logger.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AA+CA,wBAAgB,eAAe,CAC7B,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,QAYjB;AAED,wBAAgB,UAAU,CACxB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,QAgBnB;AAED,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,UAAU,EAAE,IAAI,EAAE,GAAG,QAWnF;AAED,wBAAgB,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,QAQzD"}
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAqDA,wBAAgB,eAAe,CAC7B,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,QAcjB;AAED,wBAAgB,UAAU,CACxB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,QAyBnB;AAED,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,UAAU,EAAE,IAAI,EAAE,GAAG,QAWnF;AAED,wBAAgB,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,QAQzD"}
package/dist/logger.js CHANGED
@@ -1,13 +1,13 @@
1
- import { config } from "./config.js";
2
- const RESET = "\x1b[0m";
3
- const BOLD = "\x1b[1m";
4
- const DIM = "\x1b[2m";
5
- const CYAN = "\x1b[36m";
6
- const GREEN = "\x1b[32m";
7
- const YELLOW = "\x1b[33m";
8
- const MAGENTA = "\x1b[35m";
9
- const BLUE = "\x1b[34m";
10
- const RED = "\x1b[31m";
1
+ import { config } from './config.js';
2
+ const RESET = '\x1b[0m';
3
+ const BOLD = '\x1b[1m';
4
+ const DIM = '\x1b[2m';
5
+ const CYAN = '\x1b[36m';
6
+ const GREEN = '\x1b[32m';
7
+ const YELLOW = '\x1b[33m';
8
+ const MAGENTA = '\x1b[35m';
9
+ const BLUE = '\x1b[34m';
10
+ const RED = '\x1b[31m';
11
11
  const PROVIDER_COLORS = {
12
12
  openai: GREEN,
13
13
  gemini: BLUE,
@@ -17,10 +17,14 @@ function getLogLine(requestId, claudeModel, targetModel, provider, numMessages,
17
17
  const providerColor = PROVIDER_COLORS[provider] ?? CYAN;
18
18
  const statusStr = statusCode === undefined
19
19
  ? `${YELLOW}processing...${RESET}`
20
- : (statusCode >= 400 ? `${RED}${statusCode}${RESET}` : `${GREEN}${statusCode}${RESET}`);
20
+ : statusCode >= 400
21
+ ? `${RED}${statusCode}${RESET}`
22
+ : `${GREEN}${statusCode}${RESET}`;
21
23
  const durationStr = durationMs === undefined
22
- ? ""
23
- : (durationMs > 2000 ? `${YELLOW}${durationMs}ms${RESET}` : `${DIM}${durationMs}ms${RESET}`);
24
+ ? ''
25
+ : durationMs > 2000
26
+ ? `${YELLOW}${durationMs}ms${RESET}`
27
+ : `${DIM}${durationMs}ms${RESET}`;
24
28
  return (`${DIM}[${new Date().toISOString()}]${RESET} ` +
25
29
  `${BOLD}${requestId}${RESET} ` +
26
30
  `${CYAN}${claudeModel}${RESET} ${DIM}→${RESET} ` +
@@ -36,7 +40,7 @@ export function logRequestStart(requestId, claudeModel, targetModel, provider, n
36
40
  `${CYAN}${claudeModel}${RESET} → ${BOLD}${provider}/${targetModel}${RESET}`);
37
41
  return;
38
42
  }
39
- process.stdout.write(getLogLine(requestId, claudeModel, targetModel, provider, numMessages, numTools) + "\r");
43
+ process.stdout.write(getLogLine(requestId, claudeModel, targetModel, provider, numMessages, numTools) + '\r');
40
44
  }
41
45
  export function logRequest(requestId, claudeModel, targetModel, provider, numMessages, numTools, statusCode, durationMs) {
42
46
  const line = getLogLine(requestId, claudeModel, targetModel, provider, numMessages, numTools, statusCode, durationMs);
@@ -50,14 +54,14 @@ export function logRequest(requestId, claudeModel, targetModel, provider, numMes
50
54
  }
51
55
  else {
52
56
  // Clear line and write final
53
- process.stdout.write("\x1b[2K\r" + line + "\n");
57
+ process.stdout.write('\x1b[2K\r' + line + '\n');
54
58
  }
55
59
  }
56
60
  export function logVerbose(requestId, type, data) {
57
61
  // Only log JSON if verbose level is 2
58
62
  if (config.verbose < 2)
59
63
  return;
60
- const color = type === "PROMPT" ? YELLOW : GREEN;
64
+ const color = type === 'PROMPT' ? YELLOW : GREEN;
61
65
  console.log(`${DIM}[${new Date().toISOString()}]${RESET} ` +
62
66
  `${BOLD}${requestId}${RESET} ` +
63
67
  `${color}${BOLD}[${type} JSON]${RESET}`);
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import type { OpenAIRequest } from "../types.js";
2
- import type { FastifyReply } from "fastify";
1
+ import type { OpenAIRequest } from '../types.js';
2
+ import type { FastifyReply } from 'fastify';
3
3
  export declare function forwardToGemini(req: OpenAIRequest, model: string, reply: FastifyReply, requestId?: string): Promise<{
4
4
  id: any;
5
5
  type: string;
@@ -1 +1 @@
1
- {"version":3,"file":"gemini.d.ts","sourceRoot":"","sources":["../../src/providers/gemini.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAe5C,wBAAsB,eAAe,CAAC,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,CAAC,EAAE,MAAM;;;;;;;;;;;;;;;;;;GAkC/G"}
1
+ {"version":3,"file":"gemini.d.ts","sourceRoot":"","sources":["../../src/providers/gemini.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAe5C,wBAAsB,eAAe,CACnC,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,YAAY,EACnB,SAAS,CAAC,EAAE,MAAM;;;;;;;;;;;;;;;;;;GAsCnB"}
@@ -1,13 +1,13 @@
1
- import OpenAI from "openai";
2
- import { config } from "../config.js";
3
- import { convertNonStreaming, convertStream } from "../converter.js";
4
- import { logVerbose } from "../logger.js";
1
+ import OpenAI from 'openai';
2
+ import { config } from '../config.js';
3
+ import { convertNonStreaming, convertStream } from '../converter.js';
4
+ import { logVerbose } from '../logger.js';
5
5
  let client = null;
6
6
  function getClient() {
7
7
  if (!client) {
8
8
  client = new OpenAI({
9
9
  apiKey: config.geminiApiKey,
10
- baseURL: "https://generativelanguage.googleapis.com/v1beta/openai/",
10
+ baseURL: 'https://generativelanguage.googleapis.com/v1beta/openai/',
11
11
  });
12
12
  }
13
13
  return client;
@@ -19,18 +19,21 @@ export async function forwardToGemini(req, model, reply, requestId) {
19
19
  if (cleanReq.top_p === 1)
20
20
  delete cleanReq.top_p;
21
21
  if (cleanReq.stream) {
22
- reply.raw.setHeader("Content-Type", "text/event-stream");
23
- reply.raw.setHeader("Cache-Control", "no-cache");
24
- reply.raw.setHeader("Connection", "keep-alive");
25
- const stream = await client.chat.completions.create({ ...cleanReq, stream: true });
22
+ reply.raw.setHeader('Content-Type', 'text/event-stream');
23
+ reply.raw.setHeader('Cache-Control', 'no-cache');
24
+ reply.raw.setHeader('Connection', 'keep-alive');
25
+ const stream = (await client.chat.completions.create({
26
+ ...cleanReq,
27
+ stream: true,
28
+ }));
26
29
  async function* lines() {
27
30
  for await (const chunk of stream) {
28
31
  if (config.verbose >= 2 && requestId) {
29
- logVerbose(requestId, "RESPONSE", chunk);
32
+ logVerbose(requestId, 'RESPONSE', chunk);
30
33
  }
31
34
  yield `data: ${JSON.stringify(chunk)}\n`;
32
35
  }
33
- yield "data: [DONE]\n";
36
+ yield 'data: [DONE]\n';
34
37
  }
35
38
  const msgId = `msg_${Date.now()}`;
36
39
  for await (const sseEvent of convertStream(lines(), model, msgId)) {
@@ -1 +1 @@
1
- {"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../src/providers/gemini.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGrE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,IAAI,MAAM,GAAkB,IAAI,CAAC;AAEjC,SAAS,SAAS;IAChB,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,GAAG,IAAI,MAAM,CAAC;YAClB,MAAM,EAAE,MAAM,CAAC,YAAY;YAC3B,OAAO,EAAE,0DAA0D;SACpE,CAAC,CAAC;IACL,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,GAAkB,EAAE,KAAa,EAAE,KAAmB,EAAE,SAAkB;IAC9G,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,8DAA8D;IAC9D,MAAM,QAAQ,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;IAC5B,IAAI,QAAQ,CAAC,KAAK,KAAK,CAAC;QAAE,OAAO,QAAQ,CAAC,KAAK,CAAC;IAEhD,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QACpB,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAC;QACzD,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;QACjD,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;QAEhD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAS,CAAQ,CAAC;QAEjG,KAAK,SAAS,CAAC,CAAC,KAAK;YACnB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBACjC,IAAI,MAAM,CAAC,OAAO,IAAI,CAAC,IAAI,SAAS,EAAE,CAAC;oBACrC,UAAU,CAAC,SAAS,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;gBAC3C,CAAC;gBACD,MAAM,SAAS,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC;YAC3C,CAAC;YACD,MAAM,gBAAgB,CAAC;QACzB,CAAC;QAED,MAAM,KAAK,GAAG,OAAO,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QAClC,IAAI,KAAK,EAAE,MAAM,QAAQ,IAAI,aAAa,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;YAClE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC5B,CAAC;QACD,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;QAChB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAS,CAAC,CAAC;IAC7F,OAAO,mBAAmB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;AAC9C,CAAC"}
1
+ {"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../src/providers/gemini.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGrE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,IAAI,MAAM,GAAkB,IAAI,CAAC;AAEjC,SAAS,SAAS;IAChB,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,GAAG,IAAI,MAAM,CAAC;YAClB,MAAM,EAAE,MAAM,CAAC,YAAY;YAC3B,OAAO,EAAE,0DAA0D;SACpE,CAAC,CAAC;IACL,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,GAAkB,EAClB,KAAa,EACb,KAAmB,EACnB,SAAkB;IAElB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,8DAA8D;IAC9D,MAAM,QAAQ,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;IAC5B,IAAI,QAAQ,CAAC,KAAK,KAAK,CAAC;QAAE,OAAO,QAAQ,CAAC,KAAK,CAAC;IAEhD,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QACpB,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAC;QACzD,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;QACjD,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;QAEhD,MAAM,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;YACnD,GAAG,QAAQ;YACX,MAAM,EAAE,IAAI;SACN,CAAC,CAAQ,CAAC;QAElB,KAAK,SAAS,CAAC,CAAC,KAAK;YACnB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBACjC,IAAI,MAAM,CAAC,OAAO,IAAI,CAAC,IAAI,SAAS,EAAE,CAAC;oBACrC,UAAU,CAAC,SAAS,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;gBAC3C,CAAC;gBACD,MAAM,SAAS,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC;YAC3C,CAAC;YACD,MAAM,gBAAgB,CAAC;QACzB,CAAC;QAED,MAAM,KAAK,GAAG,OAAO,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QAClC,IAAI,KAAK,EAAE,MAAM,QAAQ,IAAI,aAAa,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;YAClE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC5B,CAAC;QACD,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;QAChB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAS,CAAC,CAAC;IAC7F,OAAO,mBAAmB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;AAC9C,CAAC"}
@@ -1,4 +1,4 @@
1
- export { forwardToOpenAI } from "./openai.js";
2
- export { forwardToGemini } from "./gemini.js";
3
- export { forwardToOllama } from "./ollama.js";
1
+ export { forwardToOpenAI } from './openai.js';
2
+ export { forwardToGemini } from './gemini.js';
3
+ export { forwardToOllama } from './ollama.js';
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1,4 +1,4 @@
1
- export { forwardToOpenAI } from "./openai.js";
2
- export { forwardToGemini } from "./gemini.js";
3
- export { forwardToOllama } from "./ollama.js";
1
+ export { forwardToOpenAI } from './openai.js';
2
+ export { forwardToGemini } from './gemini.js';
3
+ export { forwardToOllama } from './ollama.js';
4
4
  //# sourceMappingURL=index.js.map
@@ -1,5 +1,5 @@
1
- import type { OpenAIRequest } from "../types.js";
2
- import type { FastifyReply } from "fastify";
1
+ import type { OpenAIRequest } from '../types.js';
2
+ import type { FastifyReply } from 'fastify';
3
3
  export declare function forwardToOllama(req: OpenAIRequest, model: string, reply: FastifyReply, requestId?: string): Promise<{
4
4
  id: any;
5
5
  type: string;
@@ -1 +1 @@
1
- {"version":3,"file":"ollama.d.ts","sourceRoot":"","sources":["../../src/providers/ollama.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAe5C,wBAAsB,eAAe,CAAC,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,CAAC,EAAE,MAAM;;;;;;;;;;;;;;;;;;GAkC/G"}
1
+ {"version":3,"file":"ollama.d.ts","sourceRoot":"","sources":["../../src/providers/ollama.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAe5C,wBAAsB,eAAe,CACnC,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,YAAY,EACnB,SAAS,CAAC,EAAE,MAAM;;;;;;;;;;;;;;;;;;GAsCnB"}
@@ -1,12 +1,12 @@
1
- import OpenAI from "openai";
2
- import { config } from "../config.js";
3
- import { convertNonStreaming, convertStream } from "../converter.js";
4
- import { logVerbose } from "../logger.js";
1
+ import OpenAI from 'openai';
2
+ import { config } from '../config.js';
3
+ import { convertNonStreaming, convertStream } from '../converter.js';
4
+ import { logVerbose } from '../logger.js';
5
5
  let client = null;
6
6
  function getClient() {
7
7
  if (!client) {
8
8
  client = new OpenAI({
9
- apiKey: "ollama", // Ollama doesn't require a real key
9
+ apiKey: 'ollama', // Ollama doesn't require a real key
10
10
  baseURL: `${config.ollamaApiBase}/v1`,
11
11
  });
12
12
  }
@@ -18,18 +18,21 @@ export async function forwardToOllama(req, model, reply, requestId) {
18
18
  // IMP: Ollama doesn't support parallel_tool_calls — consider adding this to OpenAIRequest type instead of any-cast
19
19
  delete cleanReq.parallel_tool_calls;
20
20
  if (cleanReq.stream) {
21
- reply.raw.setHeader("Content-Type", "text/event-stream");
22
- reply.raw.setHeader("Cache-Control", "no-cache");
23
- reply.raw.setHeader("Connection", "keep-alive");
24
- const stream = await client.chat.completions.create({ ...cleanReq, stream: true });
21
+ reply.raw.setHeader('Content-Type', 'text/event-stream');
22
+ reply.raw.setHeader('Cache-Control', 'no-cache');
23
+ reply.raw.setHeader('Connection', 'keep-alive');
24
+ const stream = (await client.chat.completions.create({
25
+ ...cleanReq,
26
+ stream: true,
27
+ }));
25
28
  async function* lines() {
26
29
  for await (const chunk of stream) {
27
30
  if (config.verbose >= 2 && requestId) {
28
- logVerbose(requestId, "RESPONSE", chunk);
31
+ logVerbose(requestId, 'RESPONSE', chunk);
29
32
  }
30
33
  yield `data: ${JSON.stringify(chunk)}\n`;
31
34
  }
32
- yield "data: [DONE]\n";
35
+ yield 'data: [DONE]\n';
33
36
  }
34
37
  const msgId = `msg_${Date.now()}`;
35
38
  for await (const sseEvent of convertStream(lines(), model, msgId)) {
@@ -1 +1 @@
1
- {"version":3,"file":"ollama.js","sourceRoot":"","sources":["../../src/providers/ollama.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGrE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,IAAI,MAAM,GAAkB,IAAI,CAAC;AAEjC,SAAS,SAAS;IAChB,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,GAAG,IAAI,MAAM,CAAC;YAClB,MAAM,EAAE,QAAQ,EAAE,oCAAoC;YACtD,OAAO,EAAE,GAAG,MAAM,CAAC,aAAa,KAAK;SACtC,CAAC,CAAC;IACL,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,GAAkB,EAAE,KAAa,EAAE,KAAmB,EAAE,SAAkB;IAC9G,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,MAAM,QAAQ,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;IAC5B,mHAAmH;IACnH,OAAQ,QAAgB,CAAC,mBAAmB,CAAC;IAE7C,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QACpB,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAC;QACzD,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;QACjD,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;QAEhD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAS,CAAQ,CAAC;QAEjG,KAAK,SAAS,CAAC,CAAC,KAAK;YACnB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBACjC,IAAI,MAAM,CAAC,OAAO,IAAI,CAAC,IAAI,SAAS,EAAE,CAAC;oBACrC,UAAU,CAAC,SAAS,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;gBAC3C,CAAC;gBACD,MAAM,SAAS,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC;YAC3C,CAAC;YACD,MAAM,gBAAgB,CAAC;QACzB,CAAC;QAED,MAAM,KAAK,GAAG,OAAO,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QAClC,IAAI,KAAK,EAAE,MAAM,QAAQ,IAAI,aAAa,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;YAClE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC5B,CAAC;QACD,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;QAChB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAS,CAAC,CAAC;IAC7F,OAAO,mBAAmB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;AAC9C,CAAC"}
1
+ {"version":3,"file":"ollama.js","sourceRoot":"","sources":["../../src/providers/ollama.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGrE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,IAAI,MAAM,GAAkB,IAAI,CAAC;AAEjC,SAAS,SAAS;IAChB,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,GAAG,IAAI,MAAM,CAAC;YAClB,MAAM,EAAE,QAAQ,EAAE,oCAAoC;YACtD,OAAO,EAAE,GAAG,MAAM,CAAC,aAAa,KAAK;SACtC,CAAC,CAAC;IACL,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,GAAkB,EAClB,KAAa,EACb,KAAmB,EACnB,SAAkB;IAElB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,MAAM,QAAQ,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;IAC5B,mHAAmH;IACnH,OAAQ,QAAgB,CAAC,mBAAmB,CAAC;IAE7C,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QACpB,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAC;QACzD,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;QACjD,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;QAEhD,MAAM,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;YACnD,GAAG,QAAQ;YACX,MAAM,EAAE,IAAI;SACN,CAAC,CAAQ,CAAC;QAElB,KAAK,SAAS,CAAC,CAAC,KAAK;YACnB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBACjC,IAAI,MAAM,CAAC,OAAO,IAAI,CAAC,IAAI,SAAS,EAAE,CAAC;oBACrC,UAAU,CAAC,SAAS,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;gBAC3C,CAAC;gBACD,MAAM,SAAS,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC;YAC3C,CAAC;YACD,MAAM,gBAAgB,CAAC;QACzB,CAAC;QAED,MAAM,KAAK,GAAG,OAAO,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QAClC,IAAI,KAAK,EAAE,MAAM,QAAQ,IAAI,aAAa,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;YAClE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC5B,CAAC;QACD,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;QAChB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAS,CAAC,CAAC;IAC7F,OAAO,mBAAmB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;AAC9C,CAAC"}
@@ -1,5 +1,5 @@
1
- import type { OpenAIRequest } from "../types.js";
2
- import type { FastifyReply } from "fastify";
1
+ import type { OpenAIRequest } from '../types.js';
2
+ import type { FastifyReply } from 'fastify';
3
3
  export declare function forwardToOpenAI(req: OpenAIRequest, model: string, reply: FastifyReply, requestId?: string): Promise<{
4
4
  id: any;
5
5
  type: string;
@@ -1 +1 @@
1
- {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../src/providers/openai.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAY5C,wBAAsB,eAAe,CAAC,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,CAAC,EAAE,MAAM;;;;;;;;;;;;;;;;;;GA8B/G"}
1
+ {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../src/providers/openai.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAY5C,wBAAsB,eAAe,CACnC,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,YAAY,EACnB,SAAS,CAAC,EAAE,MAAM;;;;;;;;;;;;;;;;;;GA+BnB"}