@alexnetrebskii/hive-agent 2.35.0 → 2.37.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 (38) hide show
  1. package/README.md +1 -1
  2. package/dist/executor.d.ts.map +1 -1
  3. package/dist/executor.js +7 -3
  4. package/dist/executor.js.map +1 -1
  5. package/dist/index.d.ts +2 -1
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +2 -1
  8. package/dist/index.js.map +1 -1
  9. package/dist/providers/llm/fallback.d.ts +55 -0
  10. package/dist/providers/llm/fallback.d.ts.map +1 -0
  11. package/dist/providers/llm/fallback.js +123 -0
  12. package/dist/providers/llm/fallback.js.map +1 -0
  13. package/dist/providers/llm/fallback.test.d.ts +2 -0
  14. package/dist/providers/llm/fallback.test.d.ts.map +1 -0
  15. package/dist/providers/llm/fallback.test.js +175 -0
  16. package/dist/providers/llm/fallback.test.js.map +1 -0
  17. package/dist/providers/llm/openrouter.d.ts +39 -0
  18. package/dist/providers/llm/openrouter.d.ts.map +1 -1
  19. package/dist/providers/llm/openrouter.js +40 -9
  20. package/dist/providers/llm/openrouter.js.map +1 -1
  21. package/dist/providers/llm/openrouter.test.js +35 -0
  22. package/dist/providers/llm/openrouter.test.js.map +1 -1
  23. package/dist/tools/ask-user.d.ts.map +1 -1
  24. package/dist/tools/ask-user.js +20 -1
  25. package/dist/tools/ask-user.js.map +1 -1
  26. package/dist/trace/index.d.ts +2 -0
  27. package/dist/trace/index.d.ts.map +1 -1
  28. package/dist/trace/index.js +1 -0
  29. package/dist/trace/index.js.map +1 -1
  30. package/dist/trace/langfuse.d.ts +96 -0
  31. package/dist/trace/langfuse.d.ts.map +1 -0
  32. package/dist/trace/langfuse.js +317 -0
  33. package/dist/trace/langfuse.js.map +1 -0
  34. package/dist/types.d.ts +16 -6
  35. package/dist/types.d.ts.map +1 -1
  36. package/dist/workspace.d.ts.map +1 -1
  37. package/dist/workspace.js.map +1 -1
  38. package/package.json +1 -1
@@ -71,6 +71,44 @@ export interface OpenRouterProviderConfig {
71
71
  * want to render the reasoning stream themselves.
72
72
  */
73
73
  sanitizeOutput?: boolean;
74
+ /**
75
+ * Optional hook fired once per HTTP exchange with the OpenRouter
76
+ * chat-completions endpoint. Receives the exact request body sent
77
+ * (including `cache_control`, `provider`, `tools`, etc.) and the raw
78
+ * response body — letting the host app decide how to persist or display
79
+ * it (write to disk, post to a logger, redact and forward, ignore).
80
+ *
81
+ * Designed for cache-debugging: run the same scenario twice, capture
82
+ * both entries, diff the two request bodies, and you'll see exactly what
83
+ * changed in the prefix — a single byte difference in the system prompt
84
+ * or tools list is enough to bust prompt caching.
85
+ *
86
+ * The hook runs after the response arrives (success or error). Errors
87
+ * thrown from the hook are caught and ignored so logging cannot break
88
+ * the request path. The hook is *not* invoked for fuzzy retries, only
89
+ * for the final attempt that succeeded or threw — call it on every
90
+ * attempt by changing the `requestOnce` wrapper if needed.
91
+ */
92
+ onRequestLog?: (entry: OpenRouterLogEntry) => void;
93
+ }
94
+ /**
95
+ * Payload passed to {@link OpenRouterProviderConfig.onRequestLog}.
96
+ * The request body matches what was POSTed to `/chat/completions`; the
97
+ * response body is the parsed JSON if available, or the raw text if the
98
+ * server returned non-JSON.
99
+ */
100
+ export interface OpenRouterLogEntry {
101
+ timestamp: number;
102
+ url: string;
103
+ request: Record<string, unknown>;
104
+ response: {
105
+ status: number;
106
+ ok: boolean;
107
+ body: unknown;
108
+ rawBody: string;
109
+ };
110
+ durationMs: number;
111
+ error?: string;
74
112
  }
75
113
  /**
76
114
  * A response is "fuzzy" if it has no tool calls AND one of:
@@ -99,6 +137,7 @@ export declare class OpenRouterProvider implements LLMProvider {
99
137
  private throwOnFuzzyExhaustion;
100
138
  private providerPreferences?;
101
139
  private sanitizeOutput;
140
+ private onRequestLog?;
102
141
  constructor(config?: OpenRouterProviderConfig);
103
142
  get supportsNativeTools(): boolean;
104
143
  chat(systemPrompt: string, messages: Message[], tools: ToolSchema[], options?: LLMOptions): Promise<LLMResponse>;
@@ -1 +1 @@
1
- {"version":3,"file":"openrouter.d.ts","sourceRoot":"","sources":["../../../src/providers/llm/openrouter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,WAAW,EACX,UAAU,EACV,OAAO,EACP,UAAU,EAIX,MAAM,gBAAgB,CAAA;AAGvB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAExD,MAAM,WAAW,wBAAwB;IACvC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd;;;;;;;;;;;;;;;OAeG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB;;;;;;;;;OASG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClC;;;;;;;OAOG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;CACzB;AAcD;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAClC,YAAY,EAAE,OAAO,EACrB,IAAI,CAAC,EAAE;IAAE,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE,OAAO,CAAA;CAAE,GACzD,OAAO,CAKT;AAqED,qBAAa,kBAAmB,YAAW,WAAW;IACpD,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,OAAO,CAAC,CAAQ;IACxB,OAAO,CAAC,KAAK,CAAC,CAAQ;IACtB,OAAO,CAAC,oBAAoB,CAAS;IACrC,OAAO,CAAC,eAAe,CAAQ;IAC/B,OAAO,CAAC,sBAAsB,CAAS;IACvC,OAAO,CAAC,mBAAmB,CAAC,CAAyB;IACrD,OAAO,CAAC,cAAc,CAAS;gBAEnB,MAAM,GAAE,wBAA6B;IAkBjD,IAAI,mBAAmB,IAAI,OAAO,CAEjC;IAEK,IAAI,CACR,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,OAAO,EAAE,EACnB,KAAK,EAAE,UAAU,EAAE,EACnB,OAAO,GAAE,UAAe,GACvB,OAAO,CAAC,WAAW,CAAC;YAyFT,WAAW;IAuDzB,OAAO,CAAC,eAAe;IA2DvB,OAAO,CAAC,wBAAwB;IAOhC,OAAO,CAAC,4BAA4B;IAkEpC,OAAO,CAAC,YAAY;IAoBpB,OAAO,CAAC,eAAe;IAiEvB,UAAU,IAAI,MAAM;IAIpB;;;;;;OAMG;WACU,iBAAiB,CAC5B,OAAO,SAAiC,GACvC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;CAkCzC"}
1
+ {"version":3,"file":"openrouter.d.ts","sourceRoot":"","sources":["../../../src/providers/llm/openrouter.ts"],"names":[],"mappings":"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"}
@@ -61,6 +61,7 @@ export class OpenRouterProvider {
61
61
  throwOnFuzzyExhaustion;
62
62
  providerPreferences;
63
63
  sanitizeOutput;
64
+ onRequestLog;
64
65
  constructor(config = {}) {
65
66
  this.apiKey = config.apiKey || process.env.OPENROUTER_API_KEY || '';
66
67
  this.model = config.model || 'anthropic/claude-sonnet-4';
@@ -73,6 +74,7 @@ export class OpenRouterProvider {
73
74
  this.throwOnFuzzyExhaustion = config.throwOnFuzzyExhaustion !== false;
74
75
  this.providerPreferences = config.provider;
75
76
  this.sanitizeOutput = config.sanitizeOutput !== false;
77
+ this.onRequestLog = config.onRequestLog;
76
78
  if (!this.apiKey) {
77
79
  throw new Error('OpenRouter API key is required');
78
80
  }
@@ -153,7 +155,9 @@ export class OpenRouterProvider {
153
155
  };
154
156
  }
155
157
  async requestOnce(requestBody, headers) {
156
- const response = await fetch(`${this.baseURL}/chat/completions`, {
158
+ const url = `${this.baseURL}/chat/completions`;
159
+ const startedAt = Date.now();
160
+ const response = await fetch(url, {
157
161
  method: 'POST',
158
162
  headers,
159
163
  body: JSON.stringify(requestBody)
@@ -164,27 +168,54 @@ export class OpenRouterProvider {
164
168
  // the raw body in the thrown message, callers have no way to diagnose.
165
169
  const rawBody = await response.text();
166
170
  const data = safeParseJson(rawBody);
171
+ const emitLog = (errorMessage) => {
172
+ if (!this.onRequestLog)
173
+ return;
174
+ try {
175
+ this.onRequestLog({
176
+ timestamp: startedAt,
177
+ url,
178
+ request: requestBody,
179
+ response: {
180
+ status: response.status,
181
+ ok: response.ok,
182
+ body: data,
183
+ rawBody
184
+ },
185
+ durationMs: Date.now() - startedAt,
186
+ error: errorMessage
187
+ });
188
+ }
189
+ catch {
190
+ // Swallow hook errors — logging must never break the request path.
191
+ }
192
+ };
167
193
  if (!response.ok) {
168
194
  const upstream = data?.error?.message || response.statusText;
169
- throw new Error(`OpenRouter API error (HTTP ${response.status}): ${upstream} — ` +
170
- `body: ${truncate(rawBody, 500)}`);
195
+ const message = `OpenRouter API error (HTTP ${response.status}): ${upstream} — body: ${truncate(rawBody, 500)}`;
196
+ emitLog(message);
197
+ throw new Error(message);
171
198
  }
172
199
  if (!data) {
173
- throw new Error(`OpenRouter API error: response was not valid JSON — ` +
174
- `body: ${truncate(rawBody, 500)}`);
200
+ const message = `OpenRouter API error: response was not valid JSON — body: ${truncate(rawBody, 500)}`;
201
+ emitLog(message);
202
+ throw new Error(message);
175
203
  }
176
204
  // OpenRouter can return 200 OK with an error body (e.g. provider timeout).
177
205
  // Include the full error object since `.message` is often a generic
178
206
  // placeholder ("Provider returned error") while the real detail lives in
179
207
  // `.code` or `.metadata`.
180
208
  if (data.error) {
181
- throw new Error(`OpenRouter API error: ${data.error.message || 'provider returned an error'} — ` +
182
- `detail: ${truncate(JSON.stringify(data.error), 500)}`);
209
+ const message = `OpenRouter API error: ${data.error.message || 'provider returned an error'} — detail: ${truncate(JSON.stringify(data.error), 500)}`;
210
+ emitLog(message);
211
+ throw new Error(message);
183
212
  }
184
213
  if (!data.choices?.[0]?.message) {
185
- throw new Error(`OpenRouter API error: empty response (no choices returned) — ` +
186
- `body: ${truncate(rawBody, 500)}`);
214
+ const message = `OpenRouter API error: empty response (no choices returned) — body: ${truncate(rawBody, 500)}`;
215
+ emitLog(message);
216
+ throw new Error(message);
187
217
  }
218
+ emitLog();
188
219
  return data;
189
220
  }
190
221
  convertMessages(systemPrompt, messages, useCache) {
@@ -1 +1 @@
1
- {"version":3,"file":"openrouter.js","sourceRoot":"","sources":["../../../src/providers/llm/openrouter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openrouter.js","sourceRoot":"","sources":["../../../src/providers/llm/openrouter.ts"],"names":[],"mappings":"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"}
@@ -249,6 +249,41 @@ describe('OpenRouterProvider fuzzy-response retries', () => {
249
249
  const body = JSON.parse(fetchMock.mock.calls[0][1].body);
250
250
  expect(body).not.toHaveProperty('provider');
251
251
  });
252
+ it('invokes onRequestLog with request and response on success', async () => {
253
+ const fetchMock = vi.mocked(fetch);
254
+ fetchMock.mockResolvedValueOnce(jsonResponse(okChoice({ content: 'ok', prompt_tokens: 7, completion_tokens: 3 })));
255
+ const entries = [];
256
+ const provider = new OpenRouterProvider({
257
+ apiKey: 'k',
258
+ onRequestLog: (entry) => entries.push(entry)
259
+ });
260
+ await provider.chat('sys', [{ role: 'user', content: 'hi' }], []);
261
+ expect(entries).toHaveLength(1);
262
+ const entry = entries[0];
263
+ expect(entry.url).toMatch(/\/chat\/completions$/);
264
+ expect(entry.response.ok).toBe(true);
265
+ expect(entry.response.status).toBe(200);
266
+ expect(entry.error).toBeUndefined();
267
+ expect(entry.request.messages).toEqual([
268
+ { role: 'system', content: 'sys' },
269
+ { role: 'user', content: 'hi' }
270
+ ]);
271
+ });
272
+ it('invokes onRequestLog with the error message when the upstream fails', async () => {
273
+ const fetchMock = vi.mocked(fetch);
274
+ fetchMock.mockResolvedValueOnce(jsonResponse({ error: { message: 'Provider returned error', code: 503 } }, 503));
275
+ const entries = [];
276
+ const provider = new OpenRouterProvider({
277
+ apiKey: 'k',
278
+ maxFuzzyRetries: 0,
279
+ onRequestLog: (entry) => entries.push(entry)
280
+ });
281
+ await expect(provider.chat('sys', [{ role: 'user', content: 'hi' }], [])).rejects.toThrow(/HTTP 503/);
282
+ expect(entries).toHaveLength(1);
283
+ expect(entries[0].response.ok).toBe(false);
284
+ expect(entries[0].response.status).toBe(503);
285
+ expect(entries[0].error).toMatch(/HTTP 503/);
286
+ });
252
287
  it('omits cache_control entirely by default (explicitCacheControl is off)', async () => {
253
288
  const fetchMock = vi.mocked(fetch);
254
289
  fetchMock.mockResolvedValueOnce(jsonResponse(okChoice({ content: 'ok' })));
@@ -1 +1 @@
1
- {"version":3,"file":"openrouter.test.js","sourceRoot":"","sources":["../../../src/providers/llm/openrouter.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openrouter.test.js","sourceRoot":"","sources":["../../../src/providers/llm/openrouter.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ask-user.d.ts","sourceRoot":"","sources":["../../src/tools/ask-user.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAExC;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CA0BxC"}
1
+ {"version":3,"file":"ask-user.d.ts","sourceRoot":"","sources":["../../src/tools/ask-user.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAExC;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CA6CxC"}
@@ -21,7 +21,26 @@ Example: ${toolName}({ "questions": [{"question": "What is your goal?", "header"
21
21
  properties: {
22
22
  questions: {
23
23
  type: "array",
24
- description: "Array of 1-4 questions. Each item has: question (string, required), header (short label, optional), options (array of {label, description}, optional)",
24
+ description: "Array of 1-4 questions. Each item has: question (string, required), header (short label, optional), options (array of strings, optional).",
25
+ items: {
26
+ type: "object",
27
+ properties: {
28
+ question: {
29
+ type: "string",
30
+ description: "The complete question to ask the user.",
31
+ },
32
+ header: {
33
+ type: "string",
34
+ description: "Short label (max 12 chars), e.g. 'Goal', 'Budget'.",
35
+ },
36
+ options: {
37
+ type: "array",
38
+ description: "Suggested answers shown as quick-pick chips.",
39
+ items: { type: "string" },
40
+ },
41
+ },
42
+ required: ["question"],
43
+ },
25
44
  },
26
45
  },
27
46
  required: ["questions"],
@@ -1 +1 @@
1
- {"version":3,"file":"ask-user.js","sourceRoot":"","sources":["../../src/tools/ask-user.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAC/B,MAAM,QAAQ,GAAG,cAAc,CAAC;IAChC,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE;;;;WAIN,QAAQ;CAClB;QACG,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE;oBACT,IAAI,EAAE,OAAO;oBACb,WAAW,EACT,uJAAuJ;iBAC1J;aACF;YACD,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;QACD,OAAO,EAAE,KAAK,IAAI,EAAE;YAClB,iDAAiD;YACjD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC;QAC1D,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"ask-user.js","sourceRoot":"","sources":["../../src/tools/ask-user.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAC/B,MAAM,QAAQ,GAAG,cAAc,CAAC;IAChC,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE;;;;WAIN,QAAQ;CAClB;QACG,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE;oBACT,IAAI,EAAE,OAAO;oBACb,WAAW,EACT,2IAA2I;oBAC7I,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,QAAQ,EAAE;gCACR,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,wCAAwC;6BACtD;4BACD,MAAM,EAAE;gCACN,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,oDAAoD;6BAClE;4BACD,OAAO,EAAE;gCACP,IAAI,EAAE,OAAO;gCACb,WAAW,EAAE,8CAA8C;gCAC3D,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;6BAC1B;yBACF;wBACD,QAAQ,EAAE,CAAC,UAAU,CAAC;qBACvB;iBACF;aACF;YACD,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;QACD,OAAO,EAAE,KAAK,IAAI,EAAE;YAClB,iDAAiD;YACjD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC;QAC1D,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -8,4 +8,6 @@ export { OPENROUTER_MODEL_PRICING } from './openrouter-pricing.js';
8
8
  export { TraceBuilder } from './builder.js';
9
9
  export type { ConsoleTraceConfig } from './console.js';
10
10
  export { ConsoleTraceProvider } from './console.js';
11
+ export type { LangfuseTraceConfig } from './langfuse.js';
12
+ export { LangfuseTraceProvider } from './langfuse.js';
11
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/trace/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,YAAY,EACV,OAAO,EACP,MAAM,EACN,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,UAAU,EACV,SAAS,EACT,KAAK,EACL,YAAY,EACZ,aAAa,EACb,UAAU,EACX,MAAM,YAAY,CAAA;AAEnB,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAG5D,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAA;AAGlE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAG3C,YAAY,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/trace/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,YAAY,EACV,OAAO,EACP,MAAM,EACN,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,UAAU,EACV,SAAS,EACT,KAAK,EACL,YAAY,EACZ,aAAa,EACb,UAAU,EACX,MAAM,YAAY,CAAA;AAEnB,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAG5D,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAA;AAGlE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAG3C,YAAY,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAGnD,YAAY,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA"}
@@ -8,4 +8,5 @@ export { OPENROUTER_MODEL_PRICING } from './openrouter-pricing.js';
8
8
  // Builder
9
9
  export { TraceBuilder } from './builder.js';
10
10
  export { ConsoleTraceProvider } from './console.js';
11
+ export { LangfuseTraceProvider } from './langfuse.js';
11
12
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/trace/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAiBH,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAE5D,UAAU;AACV,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAA;AAElE,UAAU;AACV,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAI3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/trace/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAiBH,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAE5D,UAAU;AACV,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAA;AAElE,UAAU;AACV,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAI3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAInD,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA"}
@@ -0,0 +1,96 @@
1
+ /**
2
+ * Langfuse Trace Provider — native (no dependencies)
3
+ *
4
+ * Posts directly to Langfuse's ingestion API
5
+ * (`POST {baseUrl}/api/public/ingestion`) using Node 20+ built-in fetch.
6
+ * The user only needs credentials — no OpenTelemetry SDK required.
7
+ *
8
+ * const trace = new LangfuseTraceProvider() // reads LANGFUSE_* env vars
9
+ *
10
+ * Env vars (any of):
11
+ * LANGFUSE_PUBLIC_KEY (required)
12
+ * LANGFUSE_SECRET_KEY (required)
13
+ * LANGFUSE_BASE_URL | LANGFUSE_BASEURL | LANGFUSE_HOST
14
+ * (default: https://cloud.langfuse.com)
15
+ */
16
+ import type { Trace, TraceProvider, AgentSpan, LLMCallEvent, ToolCallEvent, ModelPricing } from './types.js';
17
+ export interface LangfuseTraceConfig {
18
+ /** Langfuse public key. Defaults to env LANGFUSE_PUBLIC_KEY. */
19
+ publicKey?: string;
20
+ /** Langfuse secret key. Defaults to env LANGFUSE_SECRET_KEY. */
21
+ secretKey?: string;
22
+ /** Langfuse base URL. Defaults to env LANGFUSE_BASE_URL / LANGFUSE_BASEURL / LANGFUSE_HOST or https://cloud.langfuse.com. */
23
+ baseUrl?: string;
24
+ /** Number of events to buffer before flushing. Default: 20. */
25
+ flushAt?: number;
26
+ /** Max time (ms) to hold buffered events before flushing. Default: 3000. */
27
+ flushIntervalMs?: number;
28
+ /** Network timeout (ms) per ingest request. Default: 10_000. */
29
+ requestTimeoutMs?: number;
30
+ /** Group runs into a Langfuse session. */
31
+ sessionId?: string;
32
+ /** Attach a Langfuse user id. */
33
+ userId?: string;
34
+ /** Tags applied to the trace. */
35
+ tags?: string[];
36
+ /** Free-form metadata applied to the trace. */
37
+ metadata?: Record<string, unknown>;
38
+ /** App release identifier (e.g. git sha). */
39
+ release?: string;
40
+ /** App version. */
41
+ version?: string;
42
+ /** Capture LLM messages/responses (default: true). Disable for sensitive data. */
43
+ captureMessages?: boolean;
44
+ /** Capture tool inputs/outputs (default: true). */
45
+ captureToolIO?: boolean;
46
+ /** Truncate captured payloads to this many characters. Default: 32_768. */
47
+ maxPayloadChars?: number;
48
+ /** Print ingestion errors to console (default: true). */
49
+ debug?: boolean;
50
+ /** Print a one-time confirmation line on first successful flush (default: false). */
51
+ verbose?: boolean;
52
+ /** Custom model pricing forwarded to the trace builder. */
53
+ modelPricing?: Record<string, ModelPricing>;
54
+ }
55
+ /**
56
+ * Sends tuplet trace events to Langfuse via the ingestion HTTP API.
57
+ */
58
+ export declare class LangfuseTraceProvider implements TraceProvider {
59
+ readonly modelPricing?: Record<string, ModelPricing>;
60
+ private readonly endpoint;
61
+ private readonly auth;
62
+ private readonly flushAt;
63
+ private readonly flushIntervalMs;
64
+ private readonly requestTimeoutMs;
65
+ private readonly sessionId?;
66
+ private readonly userId?;
67
+ private readonly tags?;
68
+ private readonly metadata?;
69
+ private readonly release?;
70
+ private readonly version?;
71
+ private readonly captureMessages;
72
+ private readonly captureToolIO;
73
+ private readonly maxPayloadChars;
74
+ private readonly debug;
75
+ private readonly verbose;
76
+ private queue;
77
+ private flushTimer?;
78
+ private inFlight;
79
+ private firstSendLogged;
80
+ constructor(config?: LangfuseTraceConfig);
81
+ onTraceStart(trace: Trace): void;
82
+ onTraceEnd(trace: Trace): void;
83
+ onAgentStart(span: AgentSpan, trace: Trace): void;
84
+ onAgentEnd(span: AgentSpan, trace: Trace): void;
85
+ onLLMCall(event: LLMCallEvent, span: AgentSpan, trace: Trace): void;
86
+ onToolCall(event: ToolCallEvent, span: AgentSpan, trace: Trace): void;
87
+ /** Force-send any buffered events. Awaits the in-flight request too. */
88
+ flush(): Promise<void>;
89
+ /** Flush remaining events. Call before process exit. */
90
+ shutdown(): Promise<void>;
91
+ private observationParent;
92
+ private enqueue;
93
+ private send;
94
+ private cap;
95
+ }
96
+ //# sourceMappingURL=langfuse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"langfuse.d.ts","sourceRoot":"","sources":["../../src/trace/langfuse.ts"],"names":[],"mappings":"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"}