@introspection-sdk/introspection-node 0.4.2 → 0.4.4

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 (219) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/dist/client.d.ts +42 -132
  3. package/dist/client.d.ts.map +1 -1
  4. package/dist/client.js +67 -366
  5. package/dist/client.js.map +1 -0
  6. package/dist/converters/claude.d.ts +4 -0
  7. package/dist/converters/claude.d.ts.map +1 -1
  8. package/dist/converters/claude.js +7 -0
  9. package/dist/converters/claude.js.map +1 -0
  10. package/dist/converters/gemini.d.ts +90 -0
  11. package/dist/converters/gemini.d.ts.map +1 -0
  12. package/dist/converters/gemini.js +171 -0
  13. package/dist/converters/gemini.js.map +1 -0
  14. package/dist/converters/index.d.ts +1 -1
  15. package/dist/converters/index.d.ts.map +1 -1
  16. package/dist/converters/index.js +2 -1
  17. package/dist/converters/index.js.map +1 -0
  18. package/dist/converters/openai.js +1 -0
  19. package/dist/converters/openai.js.map +1 -0
  20. package/dist/converters/openinference.js +1 -0
  21. package/dist/converters/openinference.js.map +1 -0
  22. package/dist/converters/vercel.d.ts.map +1 -1
  23. package/dist/converters/vercel.js +31 -3
  24. package/dist/converters/vercel.js.map +1 -0
  25. package/dist/http.d.ts +36 -0
  26. package/dist/http.d.ts.map +1 -0
  27. package/dist/http.js +145 -0
  28. package/dist/http.js.map +1 -0
  29. package/dist/index.d.ts +24 -27
  30. package/dist/index.d.ts.map +1 -1
  31. package/dist/index.js +22 -32
  32. package/dist/index.js.map +1 -0
  33. package/dist/{anthropic.d.ts → otel/anthropic.d.ts} +23 -13
  34. package/dist/otel/anthropic.d.ts.map +1 -0
  35. package/dist/{anthropic.js → otel/anthropic.js} +132 -40
  36. package/dist/otel/anthropic.js.map +1 -0
  37. package/dist/{claude-hooks.d.ts → otel/claude-hooks.d.ts} +19 -1
  38. package/dist/otel/claude-hooks.d.ts.map +1 -0
  39. package/dist/{claude-hooks.js → otel/claude-hooks.js} +94 -20
  40. package/dist/otel/claude-hooks.js.map +1 -0
  41. package/dist/otel/claude-wrapper.d.ts.map +1 -0
  42. package/dist/{claude-wrapper.js → otel/claude-wrapper.js} +2 -1
  43. package/dist/otel/claude-wrapper.js.map +1 -0
  44. package/dist/otel/gemini.d.ts +56 -0
  45. package/dist/otel/gemini.d.ts.map +1 -0
  46. package/dist/otel/gemini.js +348 -0
  47. package/dist/otel/gemini.js.map +1 -0
  48. package/dist/otel/index.d.ts +32 -0
  49. package/dist/otel/index.d.ts.map +1 -0
  50. package/dist/otel/index.js +41 -0
  51. package/dist/otel/index.js.map +1 -0
  52. package/dist/otel/init.d.ts +126 -0
  53. package/dist/otel/init.d.ts.map +1 -0
  54. package/dist/otel/init.js +259 -0
  55. package/dist/otel/init.js.map +1 -0
  56. package/dist/otel/integrations/anthropic.d.ts +10 -0
  57. package/dist/otel/integrations/anthropic.d.ts.map +1 -0
  58. package/dist/otel/integrations/anthropic.js +22 -0
  59. package/dist/otel/integrations/anthropic.js.map +1 -0
  60. package/dist/otel/integrations/base.d.ts +83 -0
  61. package/dist/otel/integrations/base.d.ts.map +1 -0
  62. package/dist/otel/integrations/base.js +23 -0
  63. package/dist/otel/integrations/base.js.map +1 -0
  64. package/dist/otel/integrations/claude-agent.d.ts +13 -0
  65. package/dist/otel/integrations/claude-agent.d.ts.map +1 -0
  66. package/dist/otel/integrations/claude-agent.js +27 -0
  67. package/dist/otel/integrations/claude-agent.js.map +1 -0
  68. package/dist/otel/integrations/gemini.d.ts +11 -0
  69. package/dist/otel/integrations/gemini.d.ts.map +1 -0
  70. package/dist/otel/integrations/gemini.js +21 -0
  71. package/dist/otel/integrations/gemini.js.map +1 -0
  72. package/dist/otel/integrations/index.d.ts +39 -0
  73. package/dist/otel/integrations/index.d.ts.map +1 -0
  74. package/dist/otel/integrations/index.js +131 -0
  75. package/dist/otel/integrations/index.js.map +1 -0
  76. package/dist/otel/integrations/langchain.d.ts +16 -0
  77. package/dist/otel/integrations/langchain.d.ts.map +1 -0
  78. package/dist/otel/integrations/langchain.js +41 -0
  79. package/dist/otel/integrations/langchain.js.map +1 -0
  80. package/dist/otel/integrations/mastra.d.ts +14 -0
  81. package/dist/otel/integrations/mastra.d.ts.map +1 -0
  82. package/dist/otel/integrations/mastra.js +27 -0
  83. package/dist/otel/integrations/mastra.js.map +1 -0
  84. package/dist/otel/integrations/openai-agents.d.ts +11 -0
  85. package/dist/otel/integrations/openai-agents.d.ts.map +1 -0
  86. package/dist/otel/integrations/openai-agents.js +25 -0
  87. package/dist/otel/integrations/openai-agents.js.map +1 -0
  88. package/dist/otel/integrations/pi.d.ts +12 -0
  89. package/dist/otel/integrations/pi.d.ts.map +1 -0
  90. package/dist/otel/integrations/pi.js +20 -0
  91. package/dist/otel/integrations/pi.js.map +1 -0
  92. package/dist/otel/integrations/vercel.d.ts +15 -0
  93. package/dist/otel/integrations/vercel.d.ts.map +1 -0
  94. package/dist/otel/integrations/vercel.js +20 -0
  95. package/dist/otel/integrations/vercel.js.map +1 -0
  96. package/dist/{langchain-handler.d.ts → otel/langchain-handler.d.ts} +10 -1
  97. package/dist/otel/langchain-handler.d.ts.map +1 -0
  98. package/dist/{langchain-handler.js → otel/langchain-handler.js} +43 -6
  99. package/dist/otel/langchain-handler.js.map +1 -0
  100. package/dist/otel/logs.d.ts +82 -0
  101. package/dist/otel/logs.d.ts.map +1 -0
  102. package/dist/otel/logs.js +271 -0
  103. package/dist/otel/logs.js.map +1 -0
  104. package/dist/{mastra-exporter.d.ts → otel/mastra-exporter.d.ts} +3 -1
  105. package/dist/otel/mastra-exporter.d.ts.map +1 -0
  106. package/dist/{mastra-exporter.js → otel/mastra-exporter.js} +71 -17
  107. package/dist/otel/mastra-exporter.js.map +1 -0
  108. package/dist/otel/pi.d.ts +59 -0
  109. package/dist/otel/pi.d.ts.map +1 -0
  110. package/dist/otel/pi.js +67 -0
  111. package/dist/otel/pi.js.map +1 -0
  112. package/dist/otel/register.d.ts +8 -0
  113. package/dist/otel/register.d.ts.map +1 -0
  114. package/dist/otel/register.js +48 -0
  115. package/dist/otel/register.js.map +1 -0
  116. package/dist/otel/setup.d.ts +52 -0
  117. package/dist/otel/setup.d.ts.map +1 -0
  118. package/dist/otel/setup.js +146 -0
  119. package/dist/otel/setup.js.map +1 -0
  120. package/dist/{span-processor.d.ts → otel/span-processor.d.ts} +1 -1
  121. package/dist/otel/span-processor.d.ts.map +1 -0
  122. package/dist/{span-processor.js → otel/span-processor.js} +11 -5
  123. package/dist/otel/span-processor.js.map +1 -0
  124. package/dist/{tracing-processor.d.ts → otel/tracing-processor.d.ts} +4 -1
  125. package/dist/otel/tracing-processor.d.ts.map +1 -0
  126. package/dist/{tracing-processor.js → otel/tracing-processor.js} +64 -14
  127. package/dist/otel/tracing-processor.js.map +1 -0
  128. package/dist/resources/experiments.d.ts +31 -0
  129. package/dist/resources/experiments.d.ts.map +1 -0
  130. package/dist/resources/experiments.js +133 -0
  131. package/dist/resources/experiments.js.map +1 -0
  132. package/dist/resources/recipes.d.ts +22 -0
  133. package/dist/resources/recipes.d.ts.map +1 -0
  134. package/dist/resources/recipes.js +61 -0
  135. package/dist/resources/recipes.js.map +1 -0
  136. package/dist/resources/runtimes.d.ts +76 -0
  137. package/dist/resources/runtimes.d.ts.map +1 -0
  138. package/dist/resources/runtimes.js +179 -0
  139. package/dist/resources/runtimes.js.map +1 -0
  140. package/dist/runner-resources/files.d.ts +35 -0
  141. package/dist/runner-resources/files.d.ts.map +1 -0
  142. package/dist/runner-resources/files.js +131 -0
  143. package/dist/runner-resources/files.js.map +1 -0
  144. package/dist/runner-resources/tasks.d.ts +39 -0
  145. package/dist/runner-resources/tasks.d.ts.map +1 -0
  146. package/dist/runner-resources/tasks.js +129 -0
  147. package/dist/runner-resources/tasks.js.map +1 -0
  148. package/dist/runner.d.ts +80 -0
  149. package/dist/runner.d.ts.map +1 -0
  150. package/dist/runner.js +159 -0
  151. package/dist/runner.js.map +1 -0
  152. package/dist/streaming.d.ts +8 -0
  153. package/dist/streaming.d.ts.map +1 -0
  154. package/dist/streaming.js +67 -0
  155. package/dist/streaming.js.map +1 -0
  156. package/dist/types.js +1 -0
  157. package/dist/types.js.map +1 -0
  158. package/dist/utils.d.ts +10 -0
  159. package/dist/utils.d.ts.map +1 -1
  160. package/dist/utils.js +13 -4
  161. package/dist/utils.js.map +1 -0
  162. package/dist/version.js +1 -0
  163. package/dist/version.js.map +1 -0
  164. package/package.json +91 -22
  165. package/src/client.ts +76 -473
  166. package/src/converters/claude.ts +10 -0
  167. package/src/converters/gemini.ts +243 -0
  168. package/src/converters/index.ts +13 -7
  169. package/src/converters/vercel.ts +41 -3
  170. package/src/http.ts +163 -0
  171. package/src/index.ts +110 -75
  172. package/src/{anthropic.ts → otel/anthropic.ts} +206 -54
  173. package/src/{claude-hooks.ts → otel/claude-hooks.ts} +119 -20
  174. package/src/{claude-wrapper.ts → otel/claude-wrapper.ts} +1 -1
  175. package/src/otel/gemini.ts +491 -0
  176. package/src/otel/index.ts +121 -0
  177. package/src/otel/init.ts +411 -0
  178. package/src/otel/integrations/anthropic.ts +26 -0
  179. package/src/otel/integrations/base.ts +95 -0
  180. package/src/otel/integrations/claude-agent.ts +32 -0
  181. package/src/otel/integrations/gemini.ts +25 -0
  182. package/src/otel/integrations/index.ts +151 -0
  183. package/src/otel/integrations/langchain.ts +45 -0
  184. package/src/otel/integrations/mastra.ts +30 -0
  185. package/src/otel/integrations/openai-agents.ts +31 -0
  186. package/src/otel/integrations/pi.ts +24 -0
  187. package/src/otel/integrations/vercel.ts +24 -0
  188. package/src/{langchain-handler.ts → otel/langchain-handler.ts} +53 -6
  189. package/src/otel/logs.ts +394 -0
  190. package/src/{mastra-exporter.ts → otel/mastra-exporter.ts} +83 -22
  191. package/src/otel/pi.ts +88 -0
  192. package/src/otel/register.ts +50 -0
  193. package/src/otel/setup.ts +215 -0
  194. package/src/{span-processor.ts → otel/span-processor.ts} +11 -6
  195. package/src/{tracing-processor.ts → otel/tracing-processor.ts} +94 -19
  196. package/src/resources/experiments.ts +170 -0
  197. package/src/resources/recipes.ts +73 -0
  198. package/src/resources/runtimes.ts +231 -0
  199. package/src/runner-resources/files.ts +163 -0
  200. package/src/runner-resources/tasks.ts +156 -0
  201. package/src/runner.ts +194 -0
  202. package/src/streaming.ts +57 -0
  203. package/src/utils.ts +12 -5
  204. package/dist/ai-sdk-integration.d.ts +0 -123
  205. package/dist/ai-sdk-integration.d.ts.map +0 -1
  206. package/dist/ai-sdk-integration.js +0 -475
  207. package/dist/anthropic.d.ts.map +0 -1
  208. package/dist/claude-hooks.d.ts.map +0 -1
  209. package/dist/claude-wrapper.d.ts.map +0 -1
  210. package/dist/converters/ai-sdk.d.ts +0 -65
  211. package/dist/converters/ai-sdk.d.ts.map +0 -1
  212. package/dist/converters/ai-sdk.js +0 -261
  213. package/dist/langchain-handler.d.ts.map +0 -1
  214. package/dist/mastra-exporter.d.ts.map +0 -1
  215. package/dist/span-processor.d.ts.map +0 -1
  216. package/dist/tracing-processor.d.ts.map +0 -1
  217. package/src/ai-sdk-integration.ts +0 -691
  218. package/src/converters/ai-sdk.ts +0 -323
  219. /package/dist/{claude-wrapper.d.ts → otel/claude-wrapper.d.ts} +0 -0
@@ -6,14 +6,14 @@
6
6
  *
7
7
  * @see https://platform.claude.com/docs/en/agent-sdk/typescript
8
8
  */
9
- import { context as otelContext, trace as otelTrace, SpanKind, SpanStatusCode, } from "@opentelemetry/api";
9
+ import { context as otelContext, propagation, trace as otelTrace, SpanKind, SpanStatusCode, } from "@opentelemetry/api";
10
10
  import { BasicTracerProvider, BatchSpanProcessor, SimpleSpanProcessor, } from "@opentelemetry/sdk-trace-base";
11
11
  import { OTLPTraceExporter } from "@opentelemetry/exporter-trace-otlp-proto";
12
12
  import { resourceFromAttributes, defaultResource, } from "@opentelemetry/resources";
13
13
  import { ATTR_SERVICE_NAME } from "@opentelemetry/semantic-conventions";
14
- import { logger, withOtlpHttpsProxy } from "./utils.js";
15
- import { VERSION } from "./version.js";
16
- import { convertClaudeSessionToOtelAttributes, } from "./converters/claude.js";
14
+ import { logger, withOtlpHttpsProxy } from "../utils.js";
15
+ import { VERSION } from "../version.js";
16
+ import { convertClaudeSessionToOtelAttributes, } from "../converters/claude.js";
17
17
  /**
18
18
  * Provides instrumented hooks for Claude Agent SDK.
19
19
  *
@@ -50,6 +50,8 @@ export class IntrospectionClaudeHooks {
50
50
  _tracerProvider;
51
51
  _tracer;
52
52
  _agentName;
53
+ _agentId;
54
+ _conversationId;
53
55
  _sessionSpans = new Map();
54
56
  _toolSpans = new Map();
55
57
  _subagentSpans = new Map();
@@ -58,6 +60,8 @@ export class IntrospectionClaudeHooks {
58
60
  const advanced = options.advanced;
59
61
  const serviceName = options.serviceName || "claude-agent";
60
62
  this._agentName = options.agentName || serviceName;
63
+ this._agentId = options.agentId;
64
+ this._conversationId = options.conversationId;
61
65
  const resource = defaultResource().merge(resourceFromAttributes({ [ATTR_SERVICE_NAME]: serviceName }));
62
66
  if (!advanced?.spanExporter) {
63
67
  const token = options.token || process.env.INTROSPECTION_TOKEN;
@@ -65,7 +69,7 @@ export class IntrospectionClaudeHooks {
65
69
  throw new Error("INTROSPECTION_TOKEN is required");
66
70
  }
67
71
  const baseUrl = options.baseUrl ||
68
- process.env.INTROSPECTION_BASE_URL ||
72
+ process.env.INTROSPECTION_BASE_OTEL_URL ||
69
73
  "https://otel.introspection.dev";
70
74
  const headers = {
71
75
  "User-Agent": `introspection-sdk/${VERSION}`,
@@ -148,6 +152,26 @@ export class IntrospectionClaudeHooks {
148
152
  ],
149
153
  };
150
154
  }
155
+ /**
156
+ * Resolve effective agent / conversation identity for a session, in order
157
+ * of precedence: OTel baggage on the active context > constructor option >
158
+ * the Claude session ID. Lets callers override identity per-invocation via
159
+ * `IntrospectionClient.withAgent()` / `.withConversation()` without
160
+ * having to construct a new hooks instance per call.
161
+ *
162
+ * Requires an active context manager — see {@link setupTracing}.
163
+ */
164
+ _resolveIdentity(sessionId) {
165
+ const baggage = propagation.getBaggage(otelContext.active());
166
+ const baggageAgentName = baggage?.getEntry("gen_ai.agent.name")?.value;
167
+ const baggageAgentId = baggage?.getEntry("gen_ai.agent.id")?.value;
168
+ const baggageConvId = baggage?.getEntry("gen_ai.conversation.id")?.value;
169
+ return {
170
+ agentName: baggageAgentName || this._agentName,
171
+ agentId: baggageAgentId || this._agentId,
172
+ conversationId: baggageConvId || this._conversationId || sessionId,
173
+ };
174
+ }
151
175
  /**
152
176
  * Set the input prompt for a session so it appears as
153
177
  * `gen_ai.input.messages` on the session span.
@@ -163,6 +187,8 @@ export class IntrospectionClaudeHooks {
163
187
  const existing = this._sessionUsage.get(sessionId) || {
164
188
  input: 0,
165
189
  output: 0,
190
+ cacheRead: 0,
191
+ cacheCreation: 0,
166
192
  };
167
193
  existing.inputPrompt = prompt;
168
194
  this._sessionUsage.set(sessionId, existing);
@@ -188,6 +214,8 @@ export class IntrospectionClaudeHooks {
188
214
  const existing = this._sessionUsage.get(sessionId) || {
189
215
  input: 0,
190
216
  output: 0,
217
+ cacheRead: 0,
218
+ cacheCreation: 0,
191
219
  };
192
220
  existing.systemInstructions = instructions;
193
221
  this._sessionUsage.set(sessionId, existing);
@@ -195,6 +223,7 @@ export class IntrospectionClaudeHooks {
195
223
  else {
196
224
  this._pendingSystemInstructions = instructions;
197
225
  }
226
+ logger.info(`System instructions set (${instructions.length} chars)${sessionId ? ` for session ${sessionId}` : " (pending)"}`);
198
227
  }
199
228
  _pendingSystemInstructions;
200
229
  /**
@@ -219,12 +248,16 @@ export class IntrospectionClaudeHooks {
219
248
  const existing = this._sessionUsage.get(sessionId) || {
220
249
  input: 0,
221
250
  output: 0,
251
+ cacheRead: 0,
252
+ cacheCreation: 0,
222
253
  };
223
254
  // Track usage
224
255
  const usage = assistantMsg.message?.usage;
225
256
  if (usage) {
226
257
  existing.input += usage.input_tokens || 0;
227
258
  existing.output += usage.output_tokens || 0;
259
+ existing.cacheRead += usage.cache_read_input_tokens || 0;
260
+ existing.cacheCreation += usage.cache_creation_input_tokens || 0;
228
261
  if (assistantMsg.message?.model) {
229
262
  existing.model = assistantMsg.message.model;
230
263
  }
@@ -259,11 +292,28 @@ export class IntrospectionClaudeHooks {
259
292
  const existing = this._sessionUsage.get(sessionId) || {
260
293
  input: 0,
261
294
  output: 0,
295
+ cacheRead: 0,
296
+ cacheCreation: 0,
262
297
  };
263
298
  if (resultMsg.usage) {
264
299
  // Result message has final totals
265
300
  existing.input = resultMsg.usage.input_tokens || existing.input;
266
301
  existing.output = resultMsg.usage.output_tokens || existing.output;
302
+ if (resultMsg.usage.cache_read_input_tokens != null) {
303
+ existing.cacheRead = resultMsg.usage.cache_read_input_tokens;
304
+ }
305
+ if (resultMsg.usage.cache_creation_input_tokens != null) {
306
+ existing.cacheCreation = resultMsg.usage.cache_creation_input_tokens;
307
+ }
308
+ }
309
+ // Fallback: aggregate cache tokens from per-model breakdown when top-level usage omits them
310
+ if (resultMsg.modelUsage &&
311
+ existing.cacheRead === 0 &&
312
+ existing.cacheCreation === 0) {
313
+ for (const modelData of Object.values(resultMsg.modelUsage)) {
314
+ existing.cacheRead += modelData.cacheReadInputTokens || 0;
315
+ existing.cacheCreation += modelData.cacheCreationInputTokens || 0;
316
+ }
267
317
  }
268
318
  if (resultMsg.total_cost_usd !== undefined) {
269
319
  existing.cost = resultMsg.total_cost_usd;
@@ -290,15 +340,21 @@ export class IntrospectionClaudeHooks {
290
340
  return;
291
341
  }
292
342
  logger.debug(`Starting session span from init message: ${sessionId}`);
343
+ const ids = this._resolveIdentity(sessionId);
344
+ const attrs = {
345
+ "gen_ai.system": "anthropic",
346
+ "gen_ai.operation.name": "chat",
347
+ "gen_ai.agent.name": ids.agentName,
348
+ "gen_ai.conversation.id": ids.conversationId,
349
+ "claude.session_id": sessionId,
350
+ "claude.source": "message",
351
+ };
352
+ if (ids.agentId) {
353
+ attrs["gen_ai.agent.id"] = ids.agentId;
354
+ }
293
355
  const span = this._tracer.startSpan("claude.session", {
294
356
  kind: SpanKind.CLIENT,
295
- attributes: {
296
- "gen_ai.system": "anthropic",
297
- "gen_ai.operation.name": "chat",
298
- "gen_ai.agent.name": this._agentName,
299
- "claude.session_id": sessionId,
300
- "claude.source": "message",
301
- },
357
+ attributes: attrs,
302
358
  });
303
359
  // Add model if present in init message
304
360
  const model = msg.model;
@@ -313,7 +369,7 @@ export class IntrospectionClaudeHooks {
313
369
  }
314
370
  this._sessionSpans.set(sessionId, span);
315
371
  // Initialize session usage, including any pending input prompt and system instructions
316
- const sessionData = { input: 0, output: 0, model };
372
+ const sessionData = { input: 0, output: 0, cacheRead: 0, cacheCreation: 0, model };
317
373
  if (tools && tools.length > 0) {
318
374
  sessionData.toolNames = tools;
319
375
  }
@@ -348,6 +404,8 @@ export class IntrospectionClaudeHooks {
348
404
  model: usage?.model,
349
405
  inputTokens: usage?.input,
350
406
  outputTokens: usage?.output,
407
+ cacheReadInputTokens: usage?.cacheRead || undefined,
408
+ cacheCreationInputTokens: usage?.cacheCreation || undefined,
351
409
  costUsd: usage?.cost,
352
410
  stopReason: usage?.stopReason,
353
411
  responseId: usage?.responseId,
@@ -385,15 +443,26 @@ export class IntrospectionClaudeHooks {
385
443
  void _options;
386
444
  const sessionInput = input;
387
445
  logger.debug(`SessionStart hook: ${sessionInput.session_id}`);
446
+ // Resolve identity via _resolveIdentity so baggage on the active context
447
+ // takes precedence over constructor defaults, matching the message-init
448
+ // path in _startSessionFromMessage. Without this, the SessionStart hook
449
+ // would always stamp the constructor-time agentName / sessionId even
450
+ // when the caller wrapped the query in withAgent() / withConversation().
451
+ const ids = this._resolveIdentity(sessionInput.session_id);
452
+ const attrs = {
453
+ "gen_ai.system": "anthropic",
454
+ "gen_ai.operation.name": "chat",
455
+ "gen_ai.agent.name": ids.agentName,
456
+ "gen_ai.conversation.id": ids.conversationId,
457
+ "claude.session_id": sessionInput.session_id,
458
+ "claude.source": sessionInput.source,
459
+ };
460
+ if (ids.agentId) {
461
+ attrs["gen_ai.agent.id"] = ids.agentId;
462
+ }
388
463
  const span = this._tracer.startSpan("claude.session", {
389
464
  kind: SpanKind.CLIENT,
390
- attributes: {
391
- "gen_ai.system": "anthropic",
392
- "gen_ai.operation.name": "chat",
393
- "gen_ai.agent.name": this._agentName,
394
- "claude.session_id": sessionInput.session_id,
395
- "claude.source": sessionInput.source,
396
- },
465
+ attributes: attrs,
397
466
  });
398
467
  if (sessionInput.model) {
399
468
  span.setAttribute("gen_ai.request.model", sessionInput.model);
@@ -406,6 +475,8 @@ export class IntrospectionClaudeHooks {
406
475
  const sessionUsage = {
407
476
  input: 0,
408
477
  output: 0,
478
+ cacheRead: 0,
479
+ cacheCreation: 0,
409
480
  };
410
481
  if (this._pendingInputPrompt) {
411
482
  sessionUsage.inputPrompt = this._pendingInputPrompt;
@@ -436,6 +507,8 @@ export class IntrospectionClaudeHooks {
436
507
  model: usage.model,
437
508
  inputTokens: usage.input,
438
509
  outputTokens: usage.output,
510
+ cacheReadInputTokens: usage.cacheRead || undefined,
511
+ cacheCreationInputTokens: usage.cacheCreation || undefined,
439
512
  costUsd: usage.cost,
440
513
  stopReason: usage.stopReason,
441
514
  responseId: usage.responseId,
@@ -569,3 +642,4 @@ export class IntrospectionClaudeHooks {
569
642
  await this._tracerProvider.shutdown();
570
643
  }
571
644
  }
645
+ //# sourceMappingURL=claude-hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-hooks.js","sourceRoot":"","sources":["../../src/otel/claude-hooks.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-wrapper.d.ts","sourceRoot":"","sources":["../../src/otel/claude-wrapper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EACL,wBAAwB,EACxB,KAAK,+BAA+B,EAGrC,MAAM,mBAAmB,CAAC;AAK3B;;;;GAIG;AACH,MAAM,MAAM,wBAAwB,GAAG,+BAA+B,CAAC;AAEvE;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IAEnC,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IAC/B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;;GAIG;AACH,MAAM,WAAW,0BAA0B;IACzC,uEAAuE;IAEvE,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IAC/B;;;;OAIG;IACH,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1B,mFAAmF;IACnF,QAAQ,CAAC,KAAK,EAAE,wBAAwB,CAAC;IACzC,oDAAoD;IACpD,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAID;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,oBAAoB,EACzB,OAAO,CAAC,EAAE,wBAAwB,GACjC,0BAA0B,CAyC5B"}
@@ -20,7 +20,7 @@
20
20
  * ```
21
21
  */
22
22
  import { IntrospectionClaudeHooks, } from "./claude-hooks.js";
23
- import { logger } from "./utils.js";
23
+ import { logger } from "../utils.js";
24
24
  // --- Implementation ---
25
25
  /**
26
26
  * Wrap the Claude Agent SDK module to automatically instrument every
@@ -152,3 +152,4 @@ function wrapQueryResult(originalQuery, hooks) {
152
152
  },
153
153
  });
154
154
  }
155
+ //# sourceMappingURL=claude-wrapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-wrapper.js","sourceRoot":"","sources":["../../src/otel/claude-wrapper.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * Lightweight Google Gemini (`@google/genai`) instrumentor for Introspection SDK.
3
+ *
4
+ * Captures the full Gemini response including per-part `thoughtSignature`
5
+ * payloads (Gemini 3.x extended thinking) as gen_ai `thinking` parts with
6
+ * `signature` set — mirroring how the {@link AnthropicInstrumentor} captures
7
+ * Anthropic thinking blocks.
8
+ *
9
+ * Supports both non-streaming (`client.models.generateContent`) and streaming
10
+ * (`client.models.generateContentStream`) calls.
11
+ *
12
+ * @example
13
+ * ```ts
14
+ * import { GoogleGenAI } from "@google/genai";
15
+ * import { GeminiInstrumentor } from "@introspection-sdk/introspection-node";
16
+ *
17
+ * const client = new GoogleGenAI({ apiKey: process.env.GEMINI_API_KEY });
18
+ * new GeminiInstrumentor().instrument({ tracerProvider: provider, client });
19
+ * // All client.models.generateContent / generateContentStream calls are now traced
20
+ * ```
21
+ *
22
+ * @see https://ai.google.dev/gemini-api/docs/thought-signatures
23
+ */
24
+ import type { BasicTracerProvider } from "@opentelemetry/sdk-trace-base";
25
+ export declare class GeminiInstrumentor {
26
+ private tracer;
27
+ private restores;
28
+ private conversationId;
29
+ instrument(opts: {
30
+ tracerProvider?: BasicTracerProvider;
31
+ /** A `@google/genai` `GoogleGenAI` client instance. */
32
+ client: any;
33
+ /**
34
+ * Conversation ID shared across all spans produced by this instrumentor.
35
+ * Defaults to a random UUID generated at `instrument()` time.
36
+ */
37
+ conversationId?: string;
38
+ }): void;
39
+ /**
40
+ * Patch `Models.prototype.generateContentInternal` / `…StreamInternal` so
41
+ * **every** `GoogleGenAI` client is traced — the one-liner path used by
42
+ * `introspection.init()`. The public `generateContent` /
43
+ * `generateContentStream` are per-instance bound class fields that delegate
44
+ * to these prototype methods, so patching the prototype covers all clients.
45
+ * Idempotent: a second call is a no-op.
46
+ *
47
+ * @param opts.genai The `@google/genai` module (must expose `Models`).
48
+ */
49
+ instrumentClass(opts: {
50
+ genai: any;
51
+ tracerProvider?: BasicTracerProvider;
52
+ conversationId?: string;
53
+ }): void;
54
+ uninstrument(): void;
55
+ }
56
+ //# sourceMappingURL=gemini.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gemini.d.ts","sourceRoot":"","sources":["../../src/otel/gemini.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAIH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AA0VzE,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,cAAc,CAAqB;IAE3C,UAAU,CAAC,IAAI,EAAE;QACf,cAAc,CAAC,EAAE,mBAAmB,CAAC;QACrC,uDAAuD;QAEvD,MAAM,EAAE,GAAG,CAAC;QACZ;;;WAGG;QACH,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,GAAG,IAAI;IAwCR;;;;;;;;;OASG;IACH,eAAe,CAAC,IAAI,EAAE;QAEpB,KAAK,EAAE,GAAG,CAAC;QACX,cAAc,CAAC,EAAE,mBAAmB,CAAC;QACrC,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,GAAG,IAAI;IA2CR,YAAY,IAAI,IAAI;CAKrB"}