context-lens 0.2.0 → 0.2.1

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 (79) hide show
  1. package/README.md +62 -17
  2. package/dist/cli-utils.d.ts +1 -1
  3. package/dist/cli-utils.d.ts.map +1 -1
  4. package/dist/cli-utils.js +28 -13
  5. package/dist/cli-utils.js.map +1 -1
  6. package/dist/cli.js +77 -65
  7. package/dist/cli.js.map +1 -1
  8. package/dist/core/conversation.d.ts +54 -0
  9. package/dist/core/conversation.d.ts.map +1 -0
  10. package/dist/core/conversation.js +188 -0
  11. package/dist/core/conversation.js.map +1 -0
  12. package/dist/core/models.d.ts +30 -0
  13. package/dist/core/models.d.ts.map +1 -0
  14. package/dist/core/models.js +96 -0
  15. package/dist/core/models.js.map +1 -0
  16. package/dist/core/parse.d.ts +17 -0
  17. package/dist/core/parse.d.ts.map +1 -0
  18. package/dist/core/parse.js +349 -0
  19. package/dist/core/parse.js.map +1 -0
  20. package/dist/core/routing.d.ts +47 -0
  21. package/dist/core/routing.d.ts.map +1 -0
  22. package/dist/core/routing.js +132 -0
  23. package/dist/core/routing.js.map +1 -0
  24. package/dist/core/source.d.ts +22 -0
  25. package/dist/core/source.d.ts.map +1 -0
  26. package/dist/core/source.js +56 -0
  27. package/dist/core/source.js.map +1 -0
  28. package/dist/core/tokens.d.ts +11 -0
  29. package/dist/core/tokens.d.ts.map +1 -0
  30. package/dist/core/tokens.js +16 -0
  31. package/dist/core/tokens.js.map +1 -0
  32. package/dist/core.d.ts +12 -22
  33. package/dist/core.d.ts.map +1 -1
  34. package/dist/core.js +12 -471
  35. package/dist/core.js.map +1 -1
  36. package/dist/http/headers.d.ts +25 -0
  37. package/dist/http/headers.d.ts.map +1 -0
  38. package/dist/http/headers.js +54 -0
  39. package/dist/http/headers.js.map +1 -0
  40. package/dist/lhar-types.generated.d.ts +1 -1
  41. package/dist/lhar.d.ts +4 -4
  42. package/dist/lhar.d.ts.map +1 -1
  43. package/dist/lhar.js +190 -106
  44. package/dist/lhar.js.map +1 -1
  45. package/dist/server/config.d.ts +12 -0
  46. package/dist/server/config.d.ts.map +1 -0
  47. package/dist/server/config.js +33 -0
  48. package/dist/server/config.js.map +1 -0
  49. package/dist/server/projection.d.ts +9 -0
  50. package/dist/server/projection.d.ts.map +1 -0
  51. package/dist/server/projection.js +39 -0
  52. package/dist/server/projection.js.map +1 -0
  53. package/dist/server/proxy.d.ts +13 -0
  54. package/dist/server/proxy.d.ts.map +1 -0
  55. package/dist/server/proxy.js +232 -0
  56. package/dist/server/proxy.js.map +1 -0
  57. package/dist/server/store.d.ts +33 -0
  58. package/dist/server/store.d.ts.map +1 -0
  59. package/dist/server/store.js +350 -0
  60. package/dist/server/store.js.map +1 -0
  61. package/dist/server/webui.d.ts +5 -0
  62. package/dist/server/webui.d.ts.map +1 -0
  63. package/dist/server/webui.js +170 -0
  64. package/dist/server/webui.js.map +1 -0
  65. package/dist/server-utils.d.ts +2 -2
  66. package/dist/server-utils.d.ts.map +1 -1
  67. package/dist/server-utils.js +12 -21
  68. package/dist/server-utils.js.map +1 -1
  69. package/dist/server.js +30 -697
  70. package/dist/server.js.map +1 -1
  71. package/dist/types.d.ts +50 -10
  72. package/dist/types.d.ts.map +1 -1
  73. package/dist/version.generated.d.ts +2 -0
  74. package/dist/version.generated.d.ts.map +1 -0
  75. package/dist/version.generated.js +2 -0
  76. package/dist/version.generated.js.map +1 -0
  77. package/package.json +18 -6
  78. package/public/index.html +39 -12
  79. package/schema/lhar.schema.json +1 -1
package/dist/lhar.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"lhar.js","sourceRoot":"","sources":["../src/lhar.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lhar.js","sourceRoot":"","sources":["../src/lhar.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import type { Upstreams } from "../types.js";
2
+ export interface ServerConfig {
3
+ upstreams: Upstreams;
4
+ bindHost: string;
5
+ allowTargetOverride: boolean;
6
+ dataDir: string;
7
+ stateFile: string;
8
+ maxSessions: number;
9
+ maxCompactMessages: number;
10
+ }
11
+ export declare function loadServerConfig(baseDir: string): ServerConfig;
12
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/server/config.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,SAAS,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAuC9D"}
@@ -0,0 +1,33 @@
1
+ import path from "node:path";
2
+ export function loadServerConfig(baseDir) {
3
+ // Upstream targets, configurable via env vars
4
+ const UPSTREAM_OPENAI_URL = process.env.UPSTREAM_OPENAI_URL || "https://api.openai.com/v1";
5
+ const UPSTREAM_ANTHROPIC_URL = process.env.UPSTREAM_ANTHROPIC_URL || "https://api.anthropic.com";
6
+ const UPSTREAM_CHATGPT_URL = process.env.UPSTREAM_CHATGPT_URL || "https://chatgpt.com";
7
+ const UPSTREAM_GEMINI_URL = process.env.UPSTREAM_GEMINI_URL ||
8
+ "https://generativelanguage.googleapis.com";
9
+ const UPSTREAM_GEMINI_CODE_ASSIST_URL = process.env.UPSTREAM_GEMINI_CODE_ASSIST_URL ||
10
+ "https://cloudcode-pa.googleapis.com";
11
+ // Safety defaults:
12
+ // - Bind only to localhost unless explicitly overridden.
13
+ // - Do not honor `x-target-url` unless explicitly enabled (prevents accidental open-proxy/SSRF).
14
+ const bindHost = process.env.CONTEXT_LENS_BIND_HOST || "127.0.0.1";
15
+ const allowTargetOverride = process.env.CONTEXT_LENS_ALLOW_TARGET_OVERRIDE === "1";
16
+ const dataDir = path.join(baseDir, "..", "data");
17
+ return {
18
+ upstreams: {
19
+ openai: UPSTREAM_OPENAI_URL,
20
+ anthropic: UPSTREAM_ANTHROPIC_URL,
21
+ chatgpt: UPSTREAM_CHATGPT_URL,
22
+ gemini: UPSTREAM_GEMINI_URL,
23
+ geminiCodeAssist: UPSTREAM_GEMINI_CODE_ASSIST_URL,
24
+ },
25
+ bindHost,
26
+ allowTargetOverride,
27
+ dataDir,
28
+ stateFile: path.join(dataDir, "state.jsonl"),
29
+ maxSessions: 10,
30
+ maxCompactMessages: 60,
31
+ };
32
+ }
33
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/server/config.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAc7B,MAAM,UAAU,gBAAgB,CAAC,OAAe;IAC9C,8CAA8C;IAC9C,MAAM,mBAAmB,GACvB,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,2BAA2B,CAAC;IACjE,MAAM,sBAAsB,GAC1B,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,2BAA2B,CAAC;IACpE,MAAM,oBAAoB,GACxB,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,qBAAqB,CAAC;IAC5D,MAAM,mBAAmB,GACvB,OAAO,CAAC,GAAG,CAAC,mBAAmB;QAC/B,2CAA2C,CAAC;IAC9C,MAAM,+BAA+B,GACnC,OAAO,CAAC,GAAG,CAAC,+BAA+B;QAC3C,qCAAqC,CAAC;IAExC,mBAAmB;IACnB,yDAAyD;IACzD,iGAAiG;IACjG,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,WAAW,CAAC;IACnE,MAAM,mBAAmB,GACvB,OAAO,CAAC,GAAG,CAAC,kCAAkC,KAAK,GAAG,CAAC;IAEzD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IAEjD,OAAO;QACL,SAAS,EAAE;YACT,MAAM,EAAE,mBAAmB;YAC3B,SAAS,EAAE,sBAAsB;YACjC,OAAO,EAAE,oBAAoB;YAC7B,MAAM,EAAE,mBAAmB;YAC3B,gBAAgB,EAAE,+BAA+B;SAClD;QACD,QAAQ;QACR,mBAAmB;QACnB,OAAO;QACP,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC;QAC5C,WAAW,EAAE,EAAE;QACf,kBAAkB,EAAE,EAAE;KACvB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { CapturedEntry, ContextInfo, ProjectedEntry } from "../types.js";
2
+ /**
3
+ * Create a lightweight entry projection for APIs / persistence.
4
+ *
5
+ * `contextInfo` can be either the raw `ContextInfo` or a compacted projection.
6
+ * This avoids duplicating the same mapping logic across store + web UI.
7
+ */
8
+ export declare function projectEntry(e: CapturedEntry, contextInfo: ContextInfo): ProjectedEntry;
9
+ //# sourceMappingURL=projection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projection.d.ts","sourceRoot":"","sources":["../../src/server/projection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE9E;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,CAAC,EAAE,aAAa,EAChB,WAAW,EAAE,WAAW,GACvB,cAAc,CA+BhB"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Create a lightweight entry projection for APIs / persistence.
3
+ *
4
+ * `contextInfo` can be either the raw `ContextInfo` or a compacted projection.
5
+ * This avoids duplicating the same mapping logic across store + web UI.
6
+ */
7
+ export function projectEntry(e, contextInfo) {
8
+ const resp = e.response;
9
+ const usage = resp?.usage;
10
+ return {
11
+ id: e.id,
12
+ timestamp: e.timestamp,
13
+ contextInfo,
14
+ response: e.response,
15
+ contextLimit: e.contextLimit,
16
+ source: e.source,
17
+ conversationId: e.conversationId,
18
+ agentKey: e.agentKey,
19
+ agentLabel: e.agentLabel,
20
+ httpStatus: e.httpStatus,
21
+ timings: e.timings,
22
+ requestBytes: e.requestBytes,
23
+ responseBytes: e.responseBytes,
24
+ targetUrl: e.targetUrl,
25
+ composition: e.composition,
26
+ costUsd: e.costUsd,
27
+ usage: usage
28
+ ? {
29
+ inputTokens: usage.input_tokens || 0,
30
+ outputTokens: usage.output_tokens || 0,
31
+ cacheReadTokens: usage.cache_read_input_tokens || 0,
32
+ cacheWriteTokens: usage.cache_creation_input_tokens || 0,
33
+ }
34
+ : null,
35
+ responseModel: resp?.model || null,
36
+ stopReason: resp?.stop_reason || null,
37
+ };
38
+ }
39
+ //# sourceMappingURL=projection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projection.js","sourceRoot":"","sources":["../../src/server/projection.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAC1B,CAAgB,EAChB,WAAwB;IAExB,MAAM,IAAI,GAAG,CAAC,CAAC,QAA+C,CAAC;IAC/D,MAAM,KAAK,GAAG,IAAI,EAAE,KAA2C,CAAC;IAChE,OAAO;QACL,EAAE,EAAE,CAAC,CAAC,EAAE;QACR,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,WAAW;QACX,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,YAAY,EAAE,CAAC,CAAC,YAAY;QAC5B,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,cAAc,EAAE,CAAC,CAAC,cAAc;QAChC,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,UAAU,EAAE,CAAC,CAAC,UAAU;QACxB,UAAU,EAAE,CAAC,CAAC,UAAU;QACxB,OAAO,EAAE,CAAC,CAAC,OAAO;QAClB,YAAY,EAAE,CAAC,CAAC,YAAY;QAC5B,aAAa,EAAE,CAAC,CAAC,aAAa;QAC9B,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,OAAO,EAAE,CAAC,CAAC,OAAO;QAClB,KAAK,EAAE,KAAK;YACV,CAAC,CAAC;gBACE,WAAW,EAAE,KAAK,CAAC,YAAY,IAAI,CAAC;gBACpC,YAAY,EAAE,KAAK,CAAC,aAAa,IAAI,CAAC;gBACtC,eAAe,EAAE,KAAK,CAAC,uBAAuB,IAAI,CAAC;gBACnD,gBAAgB,EAAE,KAAK,CAAC,2BAA2B,IAAI,CAAC;aACzD;YACH,CAAC,CAAC,IAAI;QACR,aAAa,EAAG,IAAI,EAAE,KAAgB,IAAI,IAAI;QAC9C,UAAU,EAAG,IAAI,EAAE,WAAsB,IAAI,IAAI;KAClD,CAAC;AACJ,CAAC"}
@@ -0,0 +1,13 @@
1
+ import http from "node:http";
2
+ import url from "node:url";
3
+ import type { Upstreams } from "../types.js";
4
+ import type { Store } from "./store.js";
5
+ export declare function forwardRequest(req: http.IncomingMessage, res: http.ServerResponse, parsedUrl: url.UrlWithStringQuery, body: Buffer | null, opts: {
6
+ upstreams: Upstreams;
7
+ allowTargetOverride: boolean;
8
+ }): void;
9
+ export declare function createProxyHandler(store: Store, opts: {
10
+ upstreams: Upstreams;
11
+ allowTargetOverride: boolean;
12
+ }): (req: http.IncomingMessage, res: http.ServerResponse) => void;
13
+ //# sourceMappingURL=proxy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../../src/server/proxy.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,GAAG,MAAM,UAAU,CAAC;AAS3B,OAAO,KAAK,EAA4B,SAAS,EAAE,MAAM,aAAa,CAAC;AACvE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAExC,wBAAgB,cAAc,CAC5B,GAAG,EAAE,IAAI,CAAC,eAAe,EACzB,GAAG,EAAE,IAAI,CAAC,cAAc,EACxB,SAAS,EAAE,GAAG,CAAC,kBAAkB,EACjC,IAAI,EAAE,MAAM,GAAG,IAAI,EACnB,IAAI,EAAE;IAAE,SAAS,EAAE,SAAS,CAAC;IAAC,mBAAmB,EAAE,OAAO,CAAA;CAAE,GAC3D,IAAI,CA8DN;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE;IAAE,SAAS,EAAE,SAAS,CAAC;IAAC,mBAAmB,EAAE,OAAO,CAAA;CAAE,GAC3D,CAAC,GAAG,EAAE,IAAI,CAAC,eAAe,EAAE,GAAG,EAAE,IAAI,CAAC,cAAc,KAAK,IAAI,CAkP/D"}
@@ -0,0 +1,232 @@
1
+ import http from "node:http";
2
+ import https from "node:https";
3
+ import url from "node:url";
4
+ import { detectApiFormat, estimateTokens, extractSource, parseContextInfo, resolveTargetUrl, } from "../core.js";
5
+ import { headersForResolution, selectHeaders } from "../server-utils.js";
6
+ export function forwardRequest(req, res, parsedUrl, body, opts) {
7
+ const { targetUrl } = resolveTargetUrl({ pathname: parsedUrl.pathname, search: parsedUrl.search }, headersForResolution(req.headers, req.socket.remoteAddress, opts.allowTargetOverride), opts.upstreams);
8
+ const targetParsed = url.parse(targetUrl);
9
+ const forwardHeaders = { ...req.headers };
10
+ delete forwardHeaders["x-target-url"];
11
+ delete forwardHeaders.host;
12
+ forwardHeaders.host = targetParsed.host;
13
+ // When we buffer the body, replace chunked encoding with exact content-length
14
+ if (body) {
15
+ delete forwardHeaders["transfer-encoding"];
16
+ forwardHeaders["content-length"] = body.length;
17
+ }
18
+ const protocol = targetParsed.protocol === "https:" ? https : http;
19
+ const proxyReq = protocol.request({
20
+ hostname: targetParsed.hostname,
21
+ port: targetParsed.port,
22
+ path: targetParsed.path,
23
+ method: req.method,
24
+ headers: forwardHeaders,
25
+ }, (proxyRes) => {
26
+ if (!res.headersSent)
27
+ res.writeHead(proxyRes.statusCode, proxyRes.headers);
28
+ proxyRes.pipe(res);
29
+ proxyRes.on("error", (err) => {
30
+ console.error("Upstream response error (forward):", err.message);
31
+ if (!res.destroyed)
32
+ res.end();
33
+ });
34
+ });
35
+ // Abort upstream request if client disconnects
36
+ res.on("close", () => {
37
+ if (!proxyReq.destroyed)
38
+ proxyReq.destroy();
39
+ });
40
+ proxyReq.on("error", (err) => {
41
+ // Suppress errors from client-initiated disconnects
42
+ if (res.destroyed)
43
+ return;
44
+ const detail = err.message || ("code" in err ? err.code : "unknown");
45
+ console.error("Proxy error:", detail);
46
+ if (!res.headersSent) {
47
+ res.writeHead(502, { "Content-Type": "application/json" });
48
+ }
49
+ if (!res.destroyed) {
50
+ res.end(JSON.stringify({ error: "Proxy error", details: err.message }));
51
+ }
52
+ });
53
+ if (body)
54
+ proxyReq.write(body);
55
+ proxyReq.end();
56
+ }
57
+ export function createProxyHandler(store, opts) {
58
+ return function handleProxy(req, res) {
59
+ const parsedUrl = url.parse(req.url);
60
+ const { source, cleanPath } = extractSource(parsedUrl.pathname);
61
+ // Use clean path (without source prefix) for routing
62
+ const cleanUrl = { ...parsedUrl, pathname: cleanPath };
63
+ const { targetUrl, provider } = resolveTargetUrl({ pathname: cleanPath, search: parsedUrl.search }, headersForResolution(req.headers, req.socket.remoteAddress, opts.allowTargetOverride), opts.upstreams);
64
+ const hasAuth = !!req.headers.authorization;
65
+ const sourceTag = source ? `[${source}]` : "";
66
+ console.log(`${req.method} ${req.url} → ${targetUrl} [${provider}] ${sourceTag} auth=${hasAuth}`);
67
+ // For non-POST requests (GET /v1/models, OPTIONS, etc.), pass through directly
68
+ if (req.method !== "POST") {
69
+ forwardRequest(req, res, cleanUrl, null, opts);
70
+ return;
71
+ }
72
+ // Collect body as raw Buffers to avoid corrupting multi-byte UTF-8 at chunk boundaries
73
+ const chunks = [];
74
+ let clientAborted = false;
75
+ req.on("data", (chunk) => {
76
+ chunks.push(chunk);
77
+ });
78
+ req.on("error", () => {
79
+ clientAborted = true;
80
+ });
81
+ req.on("end", () => {
82
+ if (clientAborted)
83
+ return;
84
+ const bodyBuffer = Buffer.concat(chunks);
85
+ const body = bodyBuffer.toString("utf8");
86
+ let bodyData;
87
+ try {
88
+ bodyData = JSON.parse(body);
89
+ }
90
+ catch (_e) {
91
+ console.log(` ⚠ Body is not JSON (${bodyBuffer.length} bytes), capturing raw`);
92
+ // Still capture the raw request even if body isn't JSON
93
+ const rawInfo = {
94
+ provider,
95
+ apiFormat: "raw",
96
+ model: "unknown",
97
+ systemTokens: 0,
98
+ toolsTokens: 0,
99
+ messagesTokens: estimateTokens(body),
100
+ totalTokens: estimateTokens(body),
101
+ systemPrompts: [],
102
+ tools: [],
103
+ messages: [
104
+ {
105
+ role: "raw",
106
+ content: body.substring(0, 2000),
107
+ tokens: estimateTokens(body),
108
+ },
109
+ ],
110
+ };
111
+ store.storeRequest(rawInfo, { raw: true }, source, undefined, undefined, selectHeaders(req.headers));
112
+ forwardRequest(req, res, cleanUrl, bodyBuffer, opts);
113
+ return;
114
+ }
115
+ console.log(` ✓ Parsed JSON body (${Object.keys(bodyData).join(", ")})`);
116
+ const apiFormat = detectApiFormat(cleanPath);
117
+ // Gemini: model is in the URL path, not in the body
118
+ if (apiFormat === "gemini" && !bodyData.model) {
119
+ const modelMatch = cleanPath.match(/\/models\/([^/:]+)/);
120
+ if (modelMatch)
121
+ bodyData.model = modelMatch[1];
122
+ }
123
+ const contextInfo = parseContextInfo(provider, bodyData, apiFormat);
124
+ // Skip capturing utility endpoints (count_tokens, etc.). Not real conversation turns
125
+ const isUtilityEndpoint = /\/count_tokens\b|:countTokens\b|:loadCodeAssist\b|:retrieveUserQuota\b|:listExperiments\b|:onboardUser\b|:fetchAdminControls\b|:recordCodeAssistMetrics\b/.test(cleanPath);
126
+ const targetParsed = url.parse(targetUrl);
127
+ // Forward headers (remove proxy-specific ones)
128
+ const forwardHeaders = { ...req.headers };
129
+ delete forwardHeaders["x-target-url"];
130
+ delete forwardHeaders.host;
131
+ delete forwardHeaders["transfer-encoding"];
132
+ forwardHeaders.host = targetParsed.host;
133
+ // Ensure content-length matches the exact bytes we forward
134
+ forwardHeaders["content-length"] = bodyBuffer.length;
135
+ // Make request to actual API
136
+ const protocol = targetParsed.protocol === "https:" ? https : http;
137
+ const startTime = performance.now();
138
+ let firstByteTime = 0;
139
+ const reqBytes = bodyBuffer.length;
140
+ const proxyReq = protocol.request({
141
+ hostname: targetParsed.hostname,
142
+ port: targetParsed.port,
143
+ path: targetParsed.path,
144
+ method: req.method,
145
+ headers: forwardHeaders,
146
+ }, (proxyRes) => {
147
+ console.log(` ← ${proxyRes.statusCode} ${proxyRes.statusMessage}`);
148
+ // Forward response headers
149
+ res.writeHead(proxyRes.statusCode, proxyRes.headers);
150
+ const httpStatus = proxyRes.statusCode || 0;
151
+ // Handle streaming vs non-streaming
152
+ const isStreaming = proxyRes.headers["content-type"]?.includes("text/event-stream");
153
+ let respBytes = 0;
154
+ const capturedReqHeaders = selectHeaders(req.headers);
155
+ const capturedResHeaders = selectHeaders(proxyRes.headers);
156
+ // Collect response as Buffer[] to avoid corrupting multi-byte UTF-8 at chunk boundaries
157
+ const respChunks = [];
158
+ proxyRes.on("data", (chunk) => {
159
+ if (!firstByteTime)
160
+ firstByteTime = performance.now();
161
+ respBytes += chunk.length;
162
+ respChunks.push(chunk);
163
+ if (!res.destroyed)
164
+ res.write(chunk);
165
+ });
166
+ proxyRes.on("end", () => {
167
+ const endTime = performance.now();
168
+ if (!firstByteTime)
169
+ firstByteTime = endTime;
170
+ const meta = {
171
+ httpStatus,
172
+ timings: {
173
+ send_ms: Math.round(firstByteTime - startTime),
174
+ wait_ms: Math.round(firstByteTime - startTime),
175
+ receive_ms: Math.round(endTime - firstByteTime),
176
+ total_ms: Math.round(endTime - startTime),
177
+ tokens_per_second: null,
178
+ },
179
+ requestBytes: reqBytes,
180
+ responseBytes: respBytes,
181
+ targetUrl,
182
+ requestHeaders: capturedReqHeaders,
183
+ responseHeaders: capturedResHeaders,
184
+ };
185
+ const respBody = Buffer.concat(respChunks).toString("utf8");
186
+ if (!isUtilityEndpoint) {
187
+ if (isStreaming) {
188
+ store.storeRequest(contextInfo, { streaming: true, chunks: respBody }, source, bodyData, meta, capturedReqHeaders);
189
+ }
190
+ else {
191
+ try {
192
+ const responseData = JSON.parse(respBody);
193
+ store.storeRequest(contextInfo, responseData, source, bodyData, meta, capturedReqHeaders);
194
+ }
195
+ catch (_e) {
196
+ store.storeRequest(contextInfo, { raw: respBody }, source, bodyData, meta, capturedReqHeaders);
197
+ }
198
+ }
199
+ }
200
+ if (!res.destroyed)
201
+ res.end();
202
+ });
203
+ proxyRes.on("error", (err) => {
204
+ console.error("Upstream response error:", err.message);
205
+ if (!res.destroyed)
206
+ res.end();
207
+ });
208
+ });
209
+ // Abort upstream request if client disconnects
210
+ res.on("close", () => {
211
+ if (!proxyReq.destroyed)
212
+ proxyReq.destroy();
213
+ });
214
+ proxyReq.on("error", (err) => {
215
+ // Suppress errors from client-initiated disconnects
216
+ if (res.destroyed)
217
+ return;
218
+ const detail = err.message || ("code" in err ? err.code : "unknown");
219
+ console.error("Proxy error:", detail);
220
+ if (!res.headersSent) {
221
+ res.writeHead(502, { "Content-Type": "application/json" });
222
+ }
223
+ if (!res.destroyed) {
224
+ res.end(JSON.stringify({ error: "Proxy error", details: err.message }));
225
+ }
226
+ });
227
+ proxyReq.write(bodyBuffer);
228
+ proxyReq.end();
229
+ });
230
+ };
231
+ }
232
+ //# sourceMappingURL=proxy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../src/server/proxy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ import type { CapturedEntry, ContextInfo, Conversation, RequestMeta, ResponseData } from "../types.js";
2
+ export declare class Store {
3
+ private readonly dataDir;
4
+ private readonly stateFile;
5
+ private readonly maxSessions;
6
+ private readonly maxCompactMessages;
7
+ private capturedRequests;
8
+ private conversations;
9
+ private responseIdToConvo;
10
+ private diskSessionsWritten;
11
+ private dataRevision;
12
+ private nextEntryId;
13
+ constructor(opts: {
14
+ dataDir: string;
15
+ stateFile: string;
16
+ maxSessions: number;
17
+ maxCompactMessages: number;
18
+ });
19
+ getRevision(): number;
20
+ getCapturedRequests(): CapturedEntry[];
21
+ getConversations(): Map<string, Conversation>;
22
+ loadState(): void;
23
+ storeRequest(contextInfo: ContextInfo, responseData: ResponseData, source: string | null, rawBody?: Record<string, any>, meta?: RequestMeta, requestHeaders?: Record<string, string>): CapturedEntry;
24
+ deleteConversation(convoId: string): void;
25
+ resetAll(): void;
26
+ private logToDisk;
27
+ private compactBlock;
28
+ private compactMessages;
29
+ private compactContextInfo;
30
+ private compactEntry;
31
+ private saveState;
32
+ }
33
+ //# sourceMappingURL=store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/server/store.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EACV,aAAa,EAEb,WAAW,EACX,YAAY,EACZ,WAAW,EACX,YAAY,EACb,MAAM,aAAa,CAAC;AAGrB,qBAAa,KAAK;IAChB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAS;IAE5C,OAAO,CAAC,gBAAgB,CAAuB;IAC/C,OAAO,CAAC,aAAa,CAAmC;IACxD,OAAO,CAAC,iBAAiB,CAA6B;IACtD,OAAO,CAAC,mBAAmB,CAAqB;IAEhD,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,WAAW,CAAK;gBAEZ,IAAI,EAAE;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,kBAAkB,EAAE,MAAM,CAAC;KAC5B;IAaD,WAAW,IAAI,MAAM;IAIrB,mBAAmB,IAAI,aAAa,EAAE;IAItC,gBAAgB,IAAI,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC;IAI7C,SAAS,IAAI,IAAI;IAiDjB,YAAY,CACV,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC7B,IAAI,CAAC,EAAE,WAAW,EAClB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACtC,aAAa;IA6HhB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAczC,QAAQ,IAAI,IAAI;IAYhB,OAAO,CAAC,SAAS;IA2CjB,OAAO,CAAC,YAAY;IAkCpB,OAAO,CAAC,eAAe;IAgBvB,OAAO,CAAC,kBAAkB;IAgB1B,OAAO,CAAC,YAAY;IA0BpB,OAAO,CAAC,SAAS;CAoBlB"}