llmpt 1.2.1 → 1.2.3

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/index.js CHANGED
@@ -8,6 +8,7 @@ import path from 'node:path';
8
8
  import fs from 'node:fs';
9
9
  import os from 'node:os';
10
10
  import { fileURLToPath } from 'node:url';
11
+ import { spawn } from 'node:child_process';
11
12
  const __dirname = path.dirname(fileURLToPath(import.meta.url));
12
13
  /**
13
14
  * 返回 AppData 目录:
@@ -61,7 +62,49 @@ function resolveConfigPath(cwd) {
61
62
  const appDataDir = getAppDataDir();
62
63
  return path.join(appDataDir, 'lpt.config.yaml');
63
64
  }
65
+ /**
66
+ * llmpt claude [...args]
67
+ * 用临时 settings 文件覆盖 ANTHROPIC_BASE_URL,让 Claude Code 流量过 LPT 代理。
68
+ * Claude Code 的 settings.json 里的 env 字段会覆盖进程环境变量,
69
+ * 因此必须通过 --settings 注入,而不是仅靠环境变量。
70
+ */
71
+ function runClaude(args, port) {
72
+ // 写临时 settings 文件,覆盖 ANTHROPIC_BASE_URL
73
+ const settingsPath = path.join(os.tmpdir(), 'lpt-claude-settings.json');
74
+ const settings = { env: { ANTHROPIC_BASE_URL: `http://localhost:${port}` } };
75
+ fs.writeFileSync(settingsPath, JSON.stringify(settings), 'utf-8');
76
+ // 若用户已经传了 --settings,不重复注入(尊重用户的配置)
77
+ const hasSettings = args.some(a => a === '--settings');
78
+ const claudeArgs = hasSettings ? args : ['--settings', settingsPath, ...args];
79
+ const child = spawn('claude', claudeArgs, {
80
+ stdio: 'inherit',
81
+ // Windows 下 claude 是 .exe,不需要 shell;shell:true 在 Windows 上会产生安全警告
82
+ windowsVerbatimArguments: false,
83
+ });
84
+ child.on('error', (err) => {
85
+ console.error('❌ 启动 claude 失败:', err.message);
86
+ console.error(' 请确保已安装 Claude Code:https://claude.ai/code');
87
+ process.exit(1);
88
+ });
89
+ child.on('exit', (code) => {
90
+ process.exit(code ?? 0);
91
+ });
92
+ }
64
93
  async function main() {
94
+ const args = process.argv.slice(2);
95
+ // ── 子命令:llmpt claude [...claude args] ──
96
+ if (args[0] === 'claude') {
97
+ const claudeArgs = args.slice(1);
98
+ const cwd = process.cwd();
99
+ const envPath = resolveEnvPath(cwd);
100
+ const configPath = resolveConfigPath(cwd);
101
+ const config = loadConfig(configPath, envPath);
102
+ const port = config.proxy.port;
103
+ console.log(`🔍 LPT 代理:http://localhost:${port} → claude ${claudeArgs.join(' ') || '(interactive)'}`);
104
+ runClaude(claudeArgs, port);
105
+ return;
106
+ }
107
+ // ── 默认:启动 LPT 服务 ──
65
108
  console.log('🚀 LPT 启动中...');
66
109
  const cwd = process.cwd();
67
110
  const appDataDir = getAppDataDir();
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import type { ProviderConfig } from '../types.js';
3
3
  export declare class AnthropicProvider extends Provider {
4
4
  constructor(config: ProviderConfig);
5
5
  getUpstreamUrl(requestPath: string): string;
6
- getUpstreamHeaders(): Record<string, string>;
6
+ getUpstreamHeaders(incomingHeaders?: Record<string, string>): Record<string, string>;
7
7
  matchesPath(path: string): boolean;
8
8
  }
9
9
  //# sourceMappingURL=anthropic.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../../src/server/providers/anthropic.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,qBAAa,iBAAkB,SAAQ,QAAQ;gBACjC,MAAM,EAAE,cAAc;IAIlC,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAM3C,kBAAkB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAU5C,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;CAGnC"}
1
+ {"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../../src/server/providers/anthropic.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,qBAAa,iBAAkB,SAAQ,QAAQ;gBACjC,MAAM,EAAE,cAAc;IAIlC,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAM3C,kBAAkB,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAwBpF,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;CAGnC"}
@@ -11,13 +11,30 @@ export class AnthropicProvider extends Provider {
11
11
  const base = this.config.baseUrl.replace(/\/+$/, '');
12
12
  return `${base}/${cleanPath}`;
13
13
  }
14
- getUpstreamHeaders() {
14
+ getUpstreamHeaders(incomingHeaders) {
15
15
  const headers = {
16
16
  'Content-Type': 'application/json',
17
17
  'anthropic-version': '2023-06-01',
18
18
  };
19
- if (this.config.apiKey)
19
+ if (this.config.apiKey) {
20
+ // Configured key takes priority
20
21
  headers['x-api-key'] = this.config.apiKey;
22
+ }
23
+ else if (incomingHeaders) {
24
+ // Pass-through auth from the incoming request
25
+ if (incomingHeaders['x-api-key'])
26
+ headers['x-api-key'] = incomingHeaders['x-api-key'];
27
+ if (incomingHeaders['authorization'])
28
+ headers['authorization'] = incomingHeaders['authorization'];
29
+ }
30
+ // Always pass through anthropic-specific headers from the client
31
+ if (incomingHeaders) {
32
+ for (const [k, v] of Object.entries(incomingHeaders)) {
33
+ const kl = k.toLowerCase();
34
+ if (kl.startsWith('anthropic-') && kl !== 'anthropic-version')
35
+ headers[k] = v;
36
+ }
37
+ }
21
38
  if (this.config.headers)
22
39
  Object.assign(headers, this.config.headers);
23
40
  return headers;
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../../src/server/providers/anthropic.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,6BAA6B;AAC7B,+DAA+D;AAE/D,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAGrC,MAAM,OAAO,iBAAkB,SAAQ,QAAQ;IAC7C,YAAY,MAAsB;QAChC,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IAC7B,CAAC;IAED,cAAc,CAAC,WAAmB;QAChC,MAAM,SAAS,GAAG,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;QACnF,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACrD,OAAO,GAAG,IAAI,IAAI,SAAS,EAAE,CAAC;IAChC,CAAC;IAED,kBAAkB;QAChB,MAAM,OAAO,GAA2B;YACtC,cAAc,EAAE,kBAAkB;YAClC,mBAAmB,EAAE,YAAY;SAClC,CAAC;QACF,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM;YAAE,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;QAClE,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACrE,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,WAAW,CAAC,IAAY;QACtB,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACpC,CAAC;CACF"}
1
+ {"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../../src/server/providers/anthropic.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,6BAA6B;AAC7B,+DAA+D;AAE/D,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAGrC,MAAM,OAAO,iBAAkB,SAAQ,QAAQ;IAC7C,YAAY,MAAsB;QAChC,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IAC7B,CAAC;IAED,cAAc,CAAC,WAAmB;QAChC,MAAM,SAAS,GAAG,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;QACnF,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACrD,OAAO,GAAG,IAAI,IAAI,SAAS,EAAE,CAAC;IAChC,CAAC;IAED,kBAAkB,CAAC,eAAwC;QACzD,MAAM,OAAO,GAA2B;YACtC,cAAc,EAAE,kBAAkB;YAClC,mBAAmB,EAAE,YAAY;SAClC,CAAC;QACF,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACvB,gCAAgC;YAChC,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;QAC5C,CAAC;aAAM,IAAI,eAAe,EAAE,CAAC;YAC3B,8CAA8C;YAC9C,IAAI,eAAe,CAAC,WAAW,CAAC;gBAAE,OAAO,CAAC,WAAW,CAAC,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;YACtF,IAAI,eAAe,CAAC,eAAe,CAAC;gBAAE,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAAC,eAAe,CAAC,CAAC;QACpG,CAAC;QACD,iEAAiE;QACjE,IAAI,eAAe,EAAE,CAAC;YACpB,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;gBACrD,MAAM,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;gBAC3B,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,mBAAmB;oBAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YAChF,CAAC;QACH,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACrE,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,WAAW,CAAC,IAAY;QACtB,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACpC,CAAC;CACF"}
@@ -5,8 +5,10 @@ export declare abstract class Provider {
5
5
  constructor(type: string, config: ProviderConfig);
6
6
  /** Build the upstream URL for a given request path */
7
7
  abstract getUpstreamUrl(requestPath: string): string;
8
- /** Build headers to send to the upstream provider */
9
- abstract getUpstreamHeaders(): Record<string, string>;
8
+ /** Build headers to send to the upstream provider.
9
+ * @param incomingHeaders Original request headers — used to pass-through auth when provider has no apiKey configured.
10
+ */
11
+ abstract getUpstreamHeaders(incomingHeaders?: Record<string, string>): Record<string, string>;
10
12
  /** Check if this provider handles the given request path */
11
13
  abstract matchesPath(path: string): boolean;
12
14
  get baseUrl(): string;
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/server/providers/base.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,8BAAsB,QAAQ;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;gBAEpB,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc;IAKhD,sDAAsD;IACtD,QAAQ,CAAC,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAEpD,qDAAqD;IACrD,QAAQ,CAAC,kBAAkB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAErD,4DAA4D;IAC5D,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAE3C,IAAI,OAAO,IAAI,MAAM,CAEpB;CACF"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/server/providers/base.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,8BAAsB,QAAQ;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;gBAEpB,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc;IAKhD,sDAAsD;IACtD,QAAQ,CAAC,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAEpD;;OAEG;IACH,QAAQ,CAAC,kBAAkB,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAE7F,4DAA4D;IAC5D,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAE3C,IAAI,OAAO,IAAI,MAAM,CAEpB;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/server/providers/base.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,2BAA2B;AAC3B,+DAA+D;AAI/D,MAAM,OAAgB,QAAQ;IACnB,IAAI,CAAS;IACb,MAAM,CAAiB;IAEhC,YAAY,IAAY,EAAE,MAAsB;QAC9C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAWD,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;IAC7B,CAAC;CACF"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/server/providers/base.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,2BAA2B;AAC3B,+DAA+D;AAI/D,MAAM,OAAgB,QAAQ;IACnB,IAAI,CAAS;IACb,MAAM,CAAiB;IAEhC,YAAY,IAAY,EAAE,MAAsB;QAC9C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAaD,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;IAC7B,CAAC;CACF"}
@@ -3,7 +3,7 @@ import type { ProviderConfig } from '../types.js';
3
3
  export declare class OllamaProvider extends Provider {
4
4
  constructor(config: ProviderConfig);
5
5
  getUpstreamUrl(requestPath: string): string;
6
- getUpstreamHeaders(): Record<string, string>;
6
+ getUpstreamHeaders(incomingHeaders?: Record<string, string>): Record<string, string>;
7
7
  matchesPath(path: string): boolean;
8
8
  }
9
9
  //# sourceMappingURL=ollama.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ollama.d.ts","sourceRoot":"","sources":["../../../src/server/providers/ollama.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,qBAAa,cAAe,SAAQ,QAAQ;gBAC9B,MAAM,EAAE,cAAc;IAIlC,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAM3C,kBAAkB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAM5C,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;CAGnC"}
1
+ {"version":3,"file":"ollama.d.ts","sourceRoot":"","sources":["../../../src/server/providers/ollama.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,qBAAa,cAAe,SAAQ,QAAQ;gBAC9B,MAAM,EAAE,cAAc;IAIlC,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAM3C,kBAAkB,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAMpF,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;CAGnC"}
@@ -11,7 +11,7 @@ export class OllamaProvider extends Provider {
11
11
  const base = this.config.baseUrl.replace(/\/+$/, '');
12
12
  return `${base}/${cleanPath}`;
13
13
  }
14
- getUpstreamHeaders() {
14
+ getUpstreamHeaders(incomingHeaders) {
15
15
  const headers = { 'Content-Type': 'application/json' };
16
16
  if (this.config.headers)
17
17
  Object.assign(headers, this.config.headers);
@@ -1 +1 @@
1
- {"version":3,"file":"ollama.js","sourceRoot":"","sources":["../../../src/server/providers/ollama.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,0BAA0B;AAC1B,+DAA+D;AAE/D,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAGrC,MAAM,OAAO,cAAe,SAAQ,QAAQ;IAC1C,YAAY,MAAsB;QAChC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC1B,CAAC;IAED,cAAc,CAAC,WAAmB;QAChC,MAAM,SAAS,GAAG,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;QACnF,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACrD,OAAO,GAAG,IAAI,IAAI,SAAS,EAAE,CAAC;IAChC,CAAC;IAED,kBAAkB;QAChB,MAAM,OAAO,GAA2B,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;QAC/E,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACrE,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,WAAW,CAAC,IAAY;QACtB,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAC7D,CAAC;CACF"}
1
+ {"version":3,"file":"ollama.js","sourceRoot":"","sources":["../../../src/server/providers/ollama.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,0BAA0B;AAC1B,+DAA+D;AAE/D,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAGrC,MAAM,OAAO,cAAe,SAAQ,QAAQ;IAC1C,YAAY,MAAsB;QAChC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC1B,CAAC;IAED,cAAc,CAAC,WAAmB;QAChC,MAAM,SAAS,GAAG,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;QACnF,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACrD,OAAO,GAAG,IAAI,IAAI,SAAS,EAAE,CAAC;IAChC,CAAC;IAED,kBAAkB,CAAC,eAAwC;QACzD,MAAM,OAAO,GAA2B,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;QAC/E,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACrE,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,WAAW,CAAC,IAAY;QACtB,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAC7D,CAAC;CACF"}
@@ -3,7 +3,7 @@ import type { ProviderConfig } from '../types.js';
3
3
  export declare class OpenAIProvider extends Provider {
4
4
  constructor(config: ProviderConfig);
5
5
  getUpstreamUrl(requestPath: string): string;
6
- getUpstreamHeaders(): Record<string, string>;
6
+ getUpstreamHeaders(incomingHeaders?: Record<string, string>): Record<string, string>;
7
7
  matchesPath(path: string): boolean;
8
8
  }
9
9
  //# sourceMappingURL=openai.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../../src/server/providers/openai.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,qBAAa,cAAe,SAAQ,QAAQ;gBAC9B,MAAM,EAAE,cAAc;IAIlC,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAU3C,kBAAkB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAO5C,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;CAKnC"}
1
+ {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../../src/server/providers/openai.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,qBAAa,cAAe,SAAQ,QAAQ;gBAC9B,MAAM,EAAE,cAAc;IAIlC,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAU3C,kBAAkB,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAWpF,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;CAKnC"}
@@ -15,10 +15,14 @@ export class OpenAIProvider extends Provider {
15
15
  }
16
16
  return `${base}/v1/${cleanPath}`;
17
17
  }
18
- getUpstreamHeaders() {
18
+ getUpstreamHeaders(incomingHeaders) {
19
19
  const headers = { 'Content-Type': 'application/json' };
20
- if (this.config.apiKey)
20
+ if (this.config.apiKey) {
21
21
  headers['Authorization'] = `Bearer ${this.config.apiKey}`;
22
+ }
23
+ else if (incomingHeaders?.['authorization']) {
24
+ headers['Authorization'] = incomingHeaders['authorization'];
25
+ }
22
26
  if (this.config.headers)
23
27
  Object.assign(headers, this.config.headers);
24
28
  return headers;
@@ -1 +1 @@
1
- {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../../src/server/providers/openai.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,0BAA0B;AAC1B,+DAA+D;AAE/D,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAGrC,MAAM,OAAO,cAAe,SAAQ,QAAQ;IAC1C,YAAY,MAAsB;QAChC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC1B,CAAC;IAED,cAAc,CAAC,WAAmB;QAChC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACrD,MAAM,SAAS,GAAG,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;QACnF,uDAAuD;QACvD,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACxD,OAAO,GAAG,IAAI,IAAI,SAAS,EAAE,CAAC;QAChC,CAAC;QACD,OAAO,GAAG,IAAI,OAAO,SAAS,EAAE,CAAC;IACnC,CAAC;IAED,kBAAkB;QAChB,MAAM,OAAO,GAA2B,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;QAC/E,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM;YAAE,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QAClF,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACrE,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,WAAW,CAAC,IAAY;QACtB,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;YACjD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC;YAC5D,IAAI,KAAK,SAAS,CAAC;IAC5B,CAAC;CACF"}
1
+ {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../../src/server/providers/openai.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,0BAA0B;AAC1B,+DAA+D;AAE/D,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAGrC,MAAM,OAAO,cAAe,SAAQ,QAAQ;IAC1C,YAAY,MAAsB;QAChC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC1B,CAAC;IAED,cAAc,CAAC,WAAmB;QAChC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACrD,MAAM,SAAS,GAAG,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;QACnF,uDAAuD;QACvD,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACxD,OAAO,GAAG,IAAI,IAAI,SAAS,EAAE,CAAC;QAChC,CAAC;QACD,OAAO,GAAG,IAAI,OAAO,SAAS,EAAE,CAAC;IACnC,CAAC;IAED,kBAAkB,CAAC,eAAwC;QACzD,MAAM,OAAO,GAA2B,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;QAC/E,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACvB,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QAC5D,CAAC;aAAM,IAAI,eAAe,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC;YAC9C,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAAC,eAAe,CAAC,CAAC;QAC9D,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACrE,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,WAAW,CAAC,IAAY;QACtB,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;YACjD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC;YAC5D,IAAI,KAAK,SAAS,CAAC;IAC5B,CAAC;CACF"}
@@ -38,7 +38,7 @@ export async function handleProxy(c, registry, collector, ws) {
38
38
  collector.setProvider(trace.id, provider.type);
39
39
  // Build upstream request
40
40
  const upstreamUrl = provider.getUpstreamUrl(path);
41
- const upstreamHeaders = provider.getUpstreamHeaders();
41
+ const upstreamHeaders = provider.getUpstreamHeaders(reqHeaders);
42
42
  const isStream = body.stream === true;
43
43
  try {
44
44
  // Forward request to upstream
@@ -1 +1 @@
1
- {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/server/proxy/handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/server/proxy/handler.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "llmpt",
3
- "version": "1.2.1",
3
+ "version": "1.2.3",
4
4
  "description": "LLM Proxy Trace - local LLM proxy that captures full traces with real-time Web dashboard",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",